SLBossSpawner
A powerful scheduled boss spawner with MythicMobs integration, player performance tracking, and a tiered reward system.
Plugin triệu hồi Boss theo lịch, tích hợp MythicMobs, theo dõi đóng góp người chơi và chia thưởng theo bảng xếp hạng.
OverviewTổng quan
Scheduled Spawning
Triệu hồi theo giờ
Spawn bosses at exact times with timezone support. Auto-expire after configurable duration.
Boss xuất hiện đúng giờ đã hẹn, hỗ trợ múi giờ Việt Nam. Hết thời gian sẽ tự biến mất.
3-Category Tracking
Theo dõi 3 hạng mục
Tracks Damage dealt, Damage tanked, and Support effects applied to bosses.
Ghi nhận sát thương gây ra, sát thương chịu đựng, và hiệu ứng hỗ trợ lên Boss.
Tiered Rewards
Thưởng theo hạng
Rank-based rewards with multipliers, commands, items, and drop tables per category.
Thưởng theo thứ hạng, có hệ số nhân, chạy lệnh, trao vật phẩm và bảng loot riêng.
Smart Broadcasts
Thông báo tự động
Countdown warnings via chat, title, and bossbar. Death announcements with killer info.
Đếm ngược qua chat, title và bossbar trước khi Boss xuất hiện. Thông báo khi Boss bị hạ kèm tên người chơi.
Item Protection
Bảo vệ vật phẩm
Dropped rewards are locked to their owner. Configurable expiry: public or despawn.
Vật phẩm rơi ra chỉ chủ nhân mới nhặt được. Hết hạn có thể cho công khai hoặc xoá luôn.
Full Persistence
Lưu trữ đầy đủ
Boss state + offline rewards survive server restarts. Queued rewards delivered on join.
Trạng thái Boss và phần thưởng offline giữ nguyên qua restart. Vào lại server là nhận thưởng.
InstallationCài đặt
- + Use Paper 1.21.11 / Java 21 and install MythicMobs 5.13.0
- + Place
SLBossSpawner-3.1.0.jarintoplugins/ - + Restart the server — config files are generated automatically
- + Edit configs in
plugins/SLBossSpawner/ - + Run
/slboss reloadto apply changes
- + Dùng Paper 1.21.11 / Java 21 và cài MythicMobs 5.13.0
- + Bỏ file
SLBossSpawner-3.1.0.jarvào thư mụcplugins/ - + Restart server — các file config sẽ được tạo tự động
- + Chỉnh cấu hình trong
plugins/SLBossSpawner/ - + Gõ
/slboss reloadđể áp dụng
config.yml
# SLBossSpawner Configuration prefix: "&#FF6B6B[&#FFD93DSLBossSpawner&#FF6B6B] " debug: false language: "vi" # "en" = English, "vi" = Tieng Viet
| Key | Khoá | Description | Mô tả | Default | Mặc định |
|---|---|---|---|---|---|
prefix |
Chat prefix with hex color support | Tiền tố chat, hỗ trợ mã màu hex | FF6B6B[...] |
||
debug |
Enable debug logging | Bật log chi tiết để debug | false |
||
language |
Message language file | File ngôn ngữ cho các thông báo | vi |
schedules.yml
Each top-level key defines a boss with its MythicMob, schedule, location, and broadcast settings.
Mỗi khoá cấp cao nhất là một Boss, gồm thông tin MythicMob, lịch spawn, vị trí và cài đặt thông báo.
boss: # Boss ID (must match reward.yml) mythicmob: SkeletonKing # MythicMobs internal name expire: 3600 # Despawn after 3600s (1 hour) clearOnExpire: true # Remove entity when expired time-settings: zone: Asia/Ho_Chi_Minh # IANA timezone time: - "12:00" # Spawn at noon - "18:00" # Spawn at 6 PM - "21:00" # Spawn at 9 PM location: x: 100 y: 64 z: -200 world: bossworld leashRadius: 10 # Max wander distance (0 = no limit) loadChunks: true # Force-load spawn chunk broadcast: death: chat: true title: true spawn-warning: chat: true title: true bossbar: true intervals: [30, 15, 5, 1] # Warning at X minutes before spawn
Schedule Field Reference
Bảng tra cứu các trường
| Field | Description | Mô tả | Type |
|---|---|---|---|
mythicmob | MythicMobs mob ID | ID mob trong MythicMobs | String |
expire | Seconds until auto-despawn | Số giây trước khi tự biến mất | Integer |
clearOnExpire | Remove entity on expire | Xoá entity khi hết thời gian | Boolean |
time-settings.zone | IANA timezone | Múi giờ theo chuẩn IANA | String |
time-settings.time | Spawn times (HH:mm) | Giờ triệu hồi (HH:mm) | List |
location.* | Spawn coordinates + world | Toạ độ spawn + world | Number/String |
leashRadius | Max distance from spawn | Khoảng cách tối đa Boss đi được tính từ điểm spawn | Integer |
loadChunks | true loads and holds the spawn chunk with a plugin ticket until boss cleanup; false requires it to be loaded already | true tải và giữ chunk bằng plugin ticket tới khi dọn boss; false yêu cầu chunk đã được tải sẵn | Boolean |
broadcast.* | Toggle chat/title/bossbar | Bật/tắt chat, title, bossbar | Boolean |
intervals | Warning minutes before spawn | Số phút cảnh báo trước khi spawn | List<Integer> |
loadChunks: false, the spawn chunk must already be loaded and may unload later. Use loadChunks: true for a remote arena. The plugin checks the spawned entity after one second and logs its actual world and coordinates or why it disappeared. A MythicMobs skill can also move or remove a mob after a successful spawn call.
Nếu loadChunks: false, chunk spawn phải được tải sẵn và có thể bị dỡ tải sau đó. Dùng loadChunks: true cho arena ở xa. Plugin kiểm tra entity sau một giây rồi ghi thế giới, tọa độ thực tế hoặc lý do nó biến mất. Skill MythicMobs cũng có thể di chuyển hoặc xoá mob sau khi lệnh spawn thành công.
reward.yml
Reward configuration per boss. Each boss has 3 categories: damage, tank, support — each with configurable tiers.
Cấu hình phần thưởng cho từng Boss. Mỗi Boss có 3 hạng mục: sát thương, chịu đòn, hỗ trợ — mỗi hạng mục chia thành nhiều bậc thưởng khác nhau.
boss: # Must match schedules.yml ID enabled: true item-protection: enabled: true duration: 60 # Seconds before expiry expire-action: public # "public" or "despawn" last-hit-bonus: multiplier: 1.5 # Bonus for the killing blow global-multiplier: 1.0 # Multiply all item amounts damage: # Damage category enabled: true tiers: 1: # Rank #1 multiplier: 3.0 commands: - "eco give {player} 5000" drop-tables: - "BossLootTable" items: - type: vanilla material: DIAMOND amount: 5 display-name: "&#FFD93D&lTop 1 Damage"
Five damage ranks with CMI command rewards
Ví dụ thưởng lệnh CMI cho 5 hạng sát thương
boss2:
enabled: true
damage:
enabled: true
tiers:
1:
multiplier: 1.0
commands:
- "cmi saveditems get ruinbladeboss -t:{player}"
- "cmi money give {player} 10000"
2:
multiplier: 1.0
commands:
- "cmi saveditems get ruinbladeboss -t:{player}"
- "cmi money give {player} 5000"
3:
multiplier: 1.0
commands:
- "cmi saveditems get ruinbladeboss -t:{player}"
- "cmi money give {player} 2500"
4:
multiplier: 1.0
commands:
- "cmi saveditems get ruinbladeboss -t:{player}"
- "cmi money give {player} 1000"
5:
multiplier: 1.0
commands:
- "cmi saveditems get ruinbladeboss -t:{player}"
- "cmi money give {player} 500"
Use the same tiers structure under tank for tank rewards. Ranks 1–5 receive their matching tier only when five players have tracked contribution in that category. Set debug: true in config.yml to log the ranked participant count, loaded tier count, and each rewarded or skipped rank.
Dùng cấu trúc tiers tương tự dưới tank để thưởng hạng chịu đòn. Hạng 1–5 chỉ nhận bậc tương ứng khi có năm người được ghi nhận đóng góp trong hạng mục đó. Bật debug: true trong config.yml để xem số người xếp hạng, số bậc đã tải, và hạng nào được thưởng hoặc bỏ qua.
{player} is the player's exact current name, including Floodgate's default . prefix and digits. CMI's -t:{player} syntax passes that name to saveditems get. Names must contain only letters, digits, underscores, periods, or hyphens. Other custom Floodgate prefix characters are rejected and logged.
{player} là tên hiện tại chính xác, gồm dấu . mặc định của Floodgate và chữ số. Cú pháp CMI -t:{player} truyền tên đó cho saveditems get. Tên chỉ được chứa chữ cái, chữ số, dấu gạch dưới, dấu chấm hoặc dấu gạch ngang. Tiền tố Floodgate tuỳ chỉnh dùng ký tự khác sẽ bị từ chối và ghi log.
Optional random loot within a rank tier
Thưởng ngẫu nhiên tuỳ chọn trong mỗi bậc
# Place under boss2.damage.tiers.1 (or another category/rank)
random-loot:
enabled: true
rolls: 1
entries:
- type: vanilla
material: NETHERITE_INGOT
amount: 1
weight: 5
chance: 25
- type: command
command: "cmi money give {player} 10000"
weight: 1
chance: 10
With rolls > 0, each roll selects one entry by weight, then checks its chance (0 or omitted means guaranteed after selection). With rolls: 0, each entry rolls its own chance once. Entries also support type: droptable with drop-table.
Với rolls > 0, mỗi lượt chọn một mục theo weight, rồi kiểm tra chance (0 hoặc bỏ trống sẽ nhận chắc chắn sau khi được chọn). Với rolls: 0, mỗi mục tự quay chance một lần. Có thể dùng type: droptable cùng drop-table.
Item Type Examples (Vanilla / MMOItems / MythicMobs)
Ví dụ các loại vật phẩm (Vanilla / MMOItems / MythicMobs)
# Vanilla Minecraft item - type: vanilla material: DIAMOND amount: 5 display-name: "&#FFD93D&lCustom Name" # MMOItems item (requires MMOItems plugin) - type: mmoitems material: SWORD # MMOItems type id: "CUSTOM_SWORD" # MMOItems ID amount: 1 # MythicMobs item (built-in) - type: mythicmobs material: "CustomItem" # MythicMobs internal name amount: 1
Reward Field Reference
Bảng tra cứu phần thưởng
| Field | Description | Mô tả |
|---|---|---|
enabled | Enable/disable rewards for this boss | Bật/tắt thưởng cho boss này |
item-protection.duration | Seconds before item becomes public/despawns | Số giây trước khi vật phẩm thành công khai hoặc biến mất |
item-protection.expire-action | public = anyone picks up, despawn = removed | public = ai nhặt cũng được, despawn = xoá khỏi thế giới |
last-hit-bonus.multiplier | Item amount multiplier for killing blow | Hệ số nhân cho người ra đòn kết liễu |
global-multiplier | Multiply all item amounts globally | Hệ số nhân áp dụng cho tất cả vật phẩm |
tiers.N.multiplier | Item amount multiplier for rank N | Hệ số nhân vật phẩm cho người xếp hạng N |
tiers.N.commands | Console commands ({player} placeholder) | Lệnh console (dùng {player} thay tên người chơi) |
tiers.N.drop-tables | MythicMobs drop tables to execute | Bảng loot MythicMobs sẽ được chạy |
tiers.N.items | Item rewards (vanilla/mmoitems/mythicmobs) | Vật phẩm thưởng (vanilla, MMOItems hoặc MythicMobs) |
tiers.N.random-loot | Optional weighted or independent-chance item, command, and drop-table rewards | Thưởng vật phẩm, lệnh và bảng loot ngẫu nhiên theo trọng số hoặc tỉ lệ độc lập |
Player TrackingTheo dõi người chơi
SLBossSpawner tracks player contributions in 3 independent categories during boss fights:
Trong mỗi trận đánh Boss, plugin sẽ theo dõi đóng góp của người chơi qua 3 hạng mục riêng biệt:
Damage
Total damage dealt to the boss. Direct hits, arrows, pets, TNT, area effects.
Tổng sát thương gây lên Boss. Tính cả đánh tay, bắn tên, thú cưng, TNT, hiệu ứng diện rộng.
Tank
Total damage received from the boss. Rewards players who absorb hits for the team.
Tổng sát thương chịu từ Boss. Ai đứng chắn đỡ đòn cho đồng đội sẽ được ghi nhận.
Support
Harmful potion effects applied to the boss. 16 supported debuff types tracked.
Hiệu ứng debuff áp lên Boss. Plugin theo dõi 16 loại hiệu ứng có hại.
Damage Attribution Details
Chi tiết quy kết sát thương
| Source | Nguồn | Attributed To | Quy cho |
|---|---|---|---|
| Direct melee hit | Đánh trực tiếp | Attacker | Người tấn công |
| Arrow / Trident | Tên / Đinh ba | Shooter | Người bắn |
| Tamed wolf/pet | Thú cưng đã thuần | Pet owner | Chủ thú cưng |
| TNT | TNT igniter | Người kích nổ | |
| Area Effect Cloud | Đám mây hiệu ứng | Cloud source | Nguồn tạo đám mây |
Tracked Support Effects (16 types)
Các hiệu ứng hỗ trợ được theo dõi (16 loại)
POISON WITHER SLOW WEAKNESS MINING_FATIGUE BLINDNESS HUNGER NAUSEA LEVITATION GLOWING BAD_OMEN DARKNESS WIND_CHARGED WEAVING OOZING INFESTED
Reward SystemHệ thống phần thưởng
How It Works
Cách hoạt động
- Boss dies — MythicMobDeathEvent triggers reward distribution
- Rankings built — Players sorted by contribution per category
- Tier matching — Rank #1 gets tier 1 rewards, rank #2 gets tier 2, etc.
- Multipliers applied —
tier x global x last-hit-bonus(if applicable) - Rewards delivered — Commands executed, items given (or dropped with protection)
- Offline queue — If player is offline, rewards are saved and delivered on next join
- Boss chết — MythicMobDeathEvent kích hoạt việc chia thưởng
- Lập bảng xếp hạng — Người chơi được xếp theo đóng góp ở mỗi hạng mục
- Ghép bậc thưởng — Hạng 1 nhận thưởng bậc 1, hạng 2 nhận bậc 2, v.v.
- Áp hệ số nhân —
bậc x toàn cục x thưởng đòn kết liễu(nếu có) - Phát thưởng — Chạy lệnh, trao đồ vào túi (hoặc rơi ra kèm bảo vệ nếu túi đầy)
- Hàng đợi offline — Người chơi đang offline sẽ nhận thưởng khi đăng nhập lại
Pending rewards are created only for recipients who are offline when the boss dies. For online recipients, command output and warnings appear in the server console; CMI can still reject a player name after Bukkit accepts the dispatch. If fewer than five players were tracked, only those ranked players can receive tiers 1–5. The reported two-of-five case has no confirmed cause without these server logs.
Chỉ người đang offline lúc boss chết mới có phần thưởng chờ. Với người online, kết quả và cảnh báo lệnh nằm trong console; CMI vẫn có thể từ chối tên sau khi Bukkit nhận lệnh. Nếu chỉ ghi nhận dưới năm người, chỉ các hạng thực tế trong số 1–5 được nhận thưởng. Cần log server để xác định nguyên nhân thật của trường hợp chỉ nhận hai trên năm phần thưởng.
BroadcastsThông báo
Spawn Warnings
Cảnh báo trước khi spawn
Countdown warnings are sent at configured intervals (in minutes) before boss spawn. Channels: chat, title, bossbar — each independently toggleable.
Thông báo đếm ngược được gửi theo các mốc thời gian (tính bằng phút) trước khi Boss xuất hiện. Có 3 kênh: chat, title, bossbar — mỗi kênh bật/tắt riêng.
Death Announcements
Thông báo khi Boss bị hạ
When a boss dies, announcements show the killer's name. Ranking leaderboards display the top contributors per category.
Khi Boss bị tiêu diệt, hệ thống sẽ thông báo tên người hạ gục. Bảng xếp hạng hiển thị top người đóng góp theo từng hạng mục.
Item ProtectionBảo vệ vật phẩm
When a player's inventory is full, reward items drop on the ground with owner-only pickup protection.
Khi túi đồ người chơi đầy, vật phẩm thưởng sẽ rơi xuống đất và được khoá cho chủ nhân — chỉ người đó mới nhặt được.
- Item dropped → tagged with owner UUID via
PersistentDataContainer - Other players cannot pick up — shown actionbar denial message
- After
durationseconds, based onexpire-action:public— Protection removed, anyone can pick updespawn— Item removed from the world
- Vật phẩm rơi ra → được gắn UUID chủ nhân qua
PersistentDataContainer - Người khác nhặt sẽ bị từ chối, kèm thông báo trên actionbar
- Sau
durationgiây, tuỳ theoexpire-action:public— Bỏ khoá, ai nhặt cũng đượcdespawn— Vật phẩm biến mất
PersistenceLưu trữ dữ liệu
Boss State
Trạng thái Boss
Active bosses are saved to boss-state.yml and restored on server restart. An expired boss is removed and rescheduled after its saved entity is verified. If an old state row has no saved location and cannot be verified, scheduled spawns pause. After checking that the old mob is gone, an operator can run /slboss state forget <bossId> to release it.
Boss đang hoạt động được lưu vào boss-state.yml và phục hồi sau restart. Boss hết hạn được xóa và lên lịch mới sau khi xác minh entity cũ. Nếu trạng thái cũ không có vị trí và không thể xác minh, lượt spawn theo lịch sẽ tạm dừng. Sau khi kiểm tra boss cũ đã biến mất, quản trị viên dùng /slboss state forget <bossId> để mở lại.
Offline Rewards
Phần thưởng khi offline
Rewards for offline players are saved to pending-rewards.yml and automatically delivered when the player joins (2-second delay for safe loading).
Nếu người chơi offline lúc nhận thưởng, phần thưởng sẽ được lưu vào pending-rewards.yml. Khi họ vào lại server, hệ thống tự động trao sau 2 giây (chờ load xong cho chắc).
Legacy pending CMI saveditems/money and Mythic drop-table commands with stripped Bedrock names are repaired when the known player target matches the joining player's UUID. Review other custom pending commands before affected players join.
Lệnh CMI saveditems/money và Mythic drop-table cũ có tên Bedrock bị mất tiền tố sẽ được sửa khi xác định đúng mục tiêu theo UUID người đăng nhập. Hãy kiểm tra các lệnh tuỳ chỉnh cũ trong hàng đợi trước khi người chơi liên quan đăng nhập.
Statistics & LeaderboardThống kê & Bảng xếp hạng
config.yml → statistics.enabled: true. The store loads asynchronously from statistics.yml and writes debounced atomic snapshots.
Bật trong config.yml → statistics.enabled: true. Hệ thống tải bất đồng bộ từ statistics.yml và ghi snapshot nguyên tử theo lô.
Tracked Metrics
Chỉ số theo dõi
| Metric | Description | Mô tả |
|---|---|---|
damage | Total damage dealt | Tổng sát thương gây ra |
kills | Final hit kills | Số lần hạ gục (đòn cuối) |
participations | Boss fights participated in | Số trận boss tham gia |
tank | Total damage taken | Tổng sát thương chịu |
support | Support score (healing, buffs) | Điểm hỗ trợ (hồi máu, buff) |
top1 | #1 damage count | Số lần top 1 sát thương |
top2 | #2 damage count | Số lần top 2 sát thương |
top3 | #3 damage count | Số lần top 3 sát thương |
top1tank | #1 tank count | Số lần top 1 chịu đòn |
top1support | #1 support count | Số lần top 1 hỗ trợ |
bestdamage | Highest single-fight damage | Sát thương cao nhất trong 1 trận |
Period Types
Loại kỳ
Statistics are tracked across 7 period types: daily, weekly, monthly, quarterly, seasonal, yearly, alltime. Period rows stay in the YAML snapshot so history remains available without an archive job.
Thống kê được theo dõi qua 7 loại kỳ: daily, weekly, monthly, quarterly, seasonal, yearly, alltime. Các dòng kỳ được giữ trong snapshot YAML để không cần job lưu trữ.
In-memory leaderboard
Bảng xếp hạng trong bộ nhớ
Leaderboard reads sort the in-memory YAML aggregates and do not run a repeating database query. Configure the flush delay and result limit with statistics.flush-seconds and statistics.leaderboard-size.
Bảng xếp hạng sắp xếp aggregate YAML trong bộ nhớ và không chạy truy vấn database lặp lại. Cấu hình thời gian ghi và giới hạn kết quả bằng statistics.flush-seconds và statistics.leaderboard-size.
Statistics Configuration
Cấu hình thống kê
statistics:
enabled: true
flush-seconds: 2
leaderboard-size: 100
Existing external SQL data files are left untouched and are not imported automatically. If an old statistics.database section is still present, it is ignored and a migration warning is logged.
File dữ liệu SQL bên ngoài cũ được giữ nguyên và không tự động nhập. Nếu còn mục statistics.database, plugin sẽ bỏ qua và ghi cảnh báo migration.
CommandsLệnh
/slboss | Alias:Viết tắt: /slbs
| Command | Lệnh | Permission | Quyền | Description | Mô tả |
|---|---|---|---|---|---|
/slboss |
slboss.use |
Show help menu | Hiện bảng trợ giúp | ||
/slboss reload |
slboss.reload |
Reload all config files | Tải lại tất cả file cấu hình | ||
/slboss state forget <bossId> |
slboss.state |
Release unverified saved state after checking the old mob | Xóa trạng thái chưa xác minh sau khi kiểm tra boss cũ | ||
/slboss spawn [id] |
slboss.spawn |
Force spawn boss (all if no id) | Triệu hồi Boss ngay (không ghi id thì spawn hết) | ||
/slboss despawn [id] |
slboss.despawn |
Despawn boss (all if no id) | Xoá Boss (không ghi id thì xoá hết) | ||
/slboss info |
slboss.info |
Detailed status of all bosses | Xem trạng thái chi tiết tất cả Boss | ||
/slboss list |
slboss.info |
List all configured bosses | Liệt kê các Boss đã cấu hình | ||
/slboss validate [bossId] |
slboss.validate |
Check worlds, locations, schedules, mob pools, and rewards | Kiểm tra world, vị trí, lịch, mob pool và phần thưởng | ||
/slboss stats [player] |
slboss.stats |
View player statistics (all-time) | Xem thống kê người chơi (toàn thời gian) | ||
/slboss top <metric> [period] [boss] |
slboss.top |
View leaderboard (tab-completable) | Xem bảng xếp hạng (có tab-complete) |
Placeholders
Requires PlaceholderAPI. Prefix: %slbs_<bossId>.<key>%
Cần cài PlaceholderAPI. Cú pháp: %slbs_<bossId>.<key>%
Boss Placeholders
Placeholder Boss
| Placeholder | Output | Kết quả | Example | Ví dụ |
|---|---|---|---|---|
%slbs_boss.status% |
"Alive" or "Dead" | "Alive" hoặc "Dead" | Alive |
|
%slbs_boss.current% |
Current MythicMob name | Tên MythicMob đang hoạt động | SkeletonKing |
|
%slbs_boss.mob% |
MythicMob ID | ID MythicMob | SkeletonKing |
|
%slbs_boss.next% |
Time until next spawn (M:SS) | Thời gian còn lại đến lần spawn tiếp (M:SS) | 15:30 |
|
%slbs_boss.next_formatted% |
Next spawn time (HH:mm) | Giờ spawn tiếp theo (HH:mm) | 18:00 |
|
%slbs_boss.expire% |
Time until despawn (M:SS) | Thời gian trước khi Boss biến mất (M:SS) | 45:20 |
|
%slbs_count% |
Total boss count | Tổng số Boss | 3 |
Leaderboard Placeholders
Placeholder bảng xếp hạng
Reads from in-memory cache (non-blocking). Returns --- if rank not available.
Đọc từ bộ nhớ đệm (không gây lag). Trả về --- nếu hạng không có.
%slbs_top_<metric>_<rank>_<name|value>% → all-time (default)%slbs_top_<period>_<metric>_<rank>_<name|value>% → specific period
%slbs_top_<metric>_<rank>_<name|value>% → toàn thời gian (mặc định)%slbs_top_<period>_<metric>_<rank>_<name|value>% → theo kỳ cụ thể
Periods: alltime, daily, weekly/week, monthly/month, quarterly/quarter, seasonal/season, yearly/year
Các kỳ: alltime, daily, weekly/week, monthly/month, quarterly/quarter, seasonal/season, yearly/year
| Placeholder | Output | Kết quả | Example | Ví dụ |
|---|---|---|---|---|
%slbs_top_damage_1_name% |
Top 1 damage all-time player name | Tên người chơi top 1 sát thương (toàn thời gian) | Steve |
|
%slbs_top_damage_1_value% |
Top 1 damage all-time value | Giá trị sát thương top 1 (toàn thời gian) | 15420 |
|
%slbs_top_monthly_damage_1_name% |
Top 1 damage this month player name | Tên người chơi top 1 sát thương tháng này | Alex |
|
%slbs_top_weekly_kills_3_value% |
Top 3 kills this week value | Giá trị hạ gục top 3 tuần này | 7 |
|
%slbs_top_daily_tank_1_name% |
Top 1 tank today player name | Tên người chơi top 1 chịu đòn hôm nay | Tank_Player |
Player Stats Placeholders
Placeholder thống kê người chơi
Shows requesting player's value from cache. Returns 0 if player not in top N.
Hiện giá trị của người chơi từ cache. Trả về 0 nếu không trong top N.
| Placeholder | Output | Kết quả | Example | Ví dụ |
|---|---|---|---|---|
%slbs_stats_damage% |
Player's all-time damage | Sát thương toàn thời gian | 8500 |
|
%slbs_stats_kills_daily% |
Player's daily kills | Số hạ gục hôm nay | 2 |
PermissionsQuyền
| Permission | Quyền | Description | Mô tả | Default | Mặc định |
|---|---|---|---|---|---|
slboss.use |
Access /slboss help | Xem trợ giúp /slboss | true |
||
slboss.info |
View boss info & list | Xem thông tin và danh sách Boss | true |
||
slboss.spawn |
Force spawn bosses | Triệu hồi Boss bằng lệnh | op |
||
slboss.despawn |
Despawn bosses | Xoá Boss bằng lệnh | op |
||
slboss.reload |
Reload configs | Tải lại cấu hình | op |
||
slboss.state |
Forget unresolved saved boss state | Xóa trạng thái boss chưa khôi phục | op |
||
slboss.stats |
View player statistics | Xem thống kê người chơi | true |
||
slboss.top |
View leaderboard | Xem bảng xếp hạng | true |
ChangelogNhật ký thay đổi
v3.1.0 (2026-10-09)
Statistics and diagnostics
Thống kê và kiểm tra cấu hình
- Replace SQL/JDBC statistics storage with asynchronously loaded, debounced atomic
statistics.ymlsnapshots - Thay lưu thống kê SQL/JDBC bằng snapshot
statistics.ymltải bất đồng bộ, gộp ghi và thay file nguyên tử - Keep
/slboss stats,/slboss top, and statistics/top PlaceholderAPI expansions on the YAML store - Giữ
/slboss stats,/slboss topvà PlaceholderAPI thống kê/top trên kho YAML - Add
/slboss validate [bossId]for world, coordinate, schedule, mob-pool, and reward diagnostics - Thêm
/slboss validate [bossId]để kiểm tra world, tọa độ, lịch, mob pool và phần thưởng - Leave legacy external SQL data files untouched; no automatic import is performed
- Giữ nguyên file dữ liệu SQL bên ngoài cũ; không tự động nhập dữ liệu
v3.0.1 (2026-09-29)
Fixed
Sửa lỗi
- Keep remote spawn chunks loaded with a plugin ticket when
loadChunks: true; reject an unloaded chunk when disabled - Giữ chunk spawn bằng plugin ticket khi
loadChunks: true; từ chối spawn vào chunk chưa tải khi tắt - Verify the MythicMobs entity after one second and log its actual position or disappearance
- Kiểm tra entity MythicMobs sau một giây và ghi vị trí thực tế hoặc việc nó biến mất
- Record each boss's last known position and serialize state-file writes to prevent update races
- Ghi vị trí cuối cùng đã biết của boss và ghi file trạng thái theo thứ tự để tránh ghi đè lẫn nhau
- Keep live bosses and fight rankings through
/slboss reload; preserve entities and state on plugin disable - Giữ boss và bảng xếp hạng trận đấu khi chạy
/slboss reload; giữ entity và trạng thái khi tắt plugin - Reserve unresolved saved boss slots, with
/slboss state forget <bossId>for checked legacy state - Giữ chỗ cho boss chưa khôi phục và thêm
/slboss state forget <bossId>cho trạng thái cũ đã kiểm tra - Warn and skip invalid rank keys; valid tiers 1–5 still match ranked players, with new participant and tier debug counts
- Cảnh báo và bỏ qua khoá hạng sai; bậc hợp lệ 1–5 vẫn ghép người xếp hạng, kèm log số người và số bậc
- Track skill damage and tanking through the final damage event's causing entity where available
- Ghi nhận sát thương skill và chịu đòn qua nguồn gây sát thương ở sự kiện cuối khi server cung cấp
- Preserve exact player names, including Floodgate's default dot prefix and digits, in CMI command rewards and offline delivery
- Giữ nguyên tên người chơi, gồm dấu chấm mặc định của Floodgate và chữ số, khi chạy lệnh CMI và trả thưởng offline
- Repair known CMI and Mythic drop-table commands queued by older releases when their stripped target matches the joining player
- Sửa lệnh CMI và Mythic drop-table cũ trong hàng đợi khi tên đã bỏ tiền tố khớp người đăng nhập
- Repair shaded SQLite JDBC driver discovery and native loading
- Sửa việc tìm driver và tải thư viện native của SQLite JDBC trong file plugin đã đóng gói
- Bundle MySQL Connector/J 8.2.0 and merge both JDBC driver registrations for MySQL and SQLite
- Đóng gói MySQL Connector/J 8.2.0 và gộp đăng ký driver JDBC cho MySQL và SQLite
- Recheck MySQL index metadata when concurrent initializers create the same index
- Kiểm tra lại metadata chỉ mục MySQL khi nhiều tiến trình cùng tạo một chỉ mục
- Widen MySQL statistics player-name columns for Floodgate-prefixed gamertags
- Mở rộng cột tên người chơi trong thống kê MySQL cho gamertag có tiền tố Floodgate
- Write pending rewards in order after a one-tick debounce, preventing stale file snapshots
- Ghi thưởng chờ theo thứ tự sau một tick gộp thay đổi, tránh dữ liệu file cũ ghi đè
Updated APIs
Cập nhật API
- Add optional weighted or independent-chance
random-lootentries within reward tiers - Thêm
random-loottuỳ chọn theo trọng số hoặc tỉ lệ độc lập trong mỗi bậc thưởng - Make base
/slbosshelp available to all players while keeping admin actions permission-guarded - Cho mọi người xem trợ giúp
/slbossnhưng vẫn giữ quyền riêng cho lệnh quản trị - Target Paper 1.21.11 / Java 21; compile against MythicMobs 5.13.0, PlaceholderAPI 2.12.3, and MMOItems 6.10.1-SNAPSHOT
- Chuyển sang Paper 1.21.11 / Java 21; biên dịch với MythicMobs 5.13.0, PlaceholderAPI 2.12.3 và MMOItems 6.10.1-SNAPSHOT
v3.0.0 (2026-02-27)
Added
Thêm mới
- SQLite/MySQL database for persistent player statistics
- Cơ sở dữ liệu SQLite/MySQL để lưu thống kê người chơi
- 11 tracked metrics across 7 period types (daily → all-time)
- 11 chỉ số theo dõi qua 7 loại kỳ (hàng ngày → toàn thời gian)
/slboss stats [player]— view player statistics/slboss stats [player]— xem thống kê người chơi/slboss top <metric> [period] [boss]— leaderboard with tab completion/slboss top <metric> [period] [boss]— bảng xếp hạng có tab-complete- Leaderboard & stats PlaceholderAPI expansions (with period support: daily, weekly, monthly, etc.)
- Placeholder PlaceholderAPI cho bảng xếp hạng & thống kê (hỗ trợ theo kỳ: ngày, tuần, tháng, v.v.)
- In-memory leaderboard cache with async refresh
- Bộ nhớ đệm bảng xếp hạng với làm mới bất đồng bộ
- Automatic period archival (daily, weekly, monthly, etc.)
- Tự động lưu trữ kỳ cũ (ngày, tuần, tháng, v.v.)
- Code architecture improvements: AbstractBossTracker, CommandValidator, ItemFactory
- Cải thiện kiến trúc code: AbstractBossTracker, CommandValidator, ItemFactory
Fixed
Sửa lỗi
- Reload-safe flag to suppress death-event processing during reload
- Cờ an toàn khi reload để bỏ qua sự kiện chết trong lúc reload
- Delayed state restore by 2 ticks to ensure worlds are loaded
- Trì hoãn khôi phục trạng thái 2 tick để đảm bảo thế giới đã tải
- Only send spawn success if boss actually spawned
- Chỉ gửi thông báo thành công nếu boss thực sự xuất hiện
v2.0.1 (2026-02-11)
Security
Bảo mật
- Drop table name sanitization to prevent command injection
- Khử độc tên bảng drop để ngăn chặn command injection
- Command validation to block shell metacharacters
- Xác thực lệnh để chặn metacharacter shell
Fixed
Sửa lỗi
- Duplicate stopTracking() calls, volatile bossScheduler, YAML parsing, forceSpawn reschedule
- Gọi stopTracking() trùng, volatile bossScheduler, phân tích YAML, lên lịch lại forceSpawn
v2.0.0 (2026-02-11)
Initial release with scheduled spawning, damage/tank/support tracking, tiered rewards, persistence, PlaceholderAPI, and multi-language support.
Bản phát hành đầu tiên với spawn theo lịch, theo dõi sát thương/chịu đòn/hỗ trợ, phần thưởng theo bậc, lưu trữ, PlaceholderAPI, và hỗ trợ đa ngôn ngữ.