mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-05-10 19:13:52 +00:00
feat(editor): add WBOS (Boss Encounter Definition) open catalog format
Open replacement for AzerothCore's instance_encounter SQL table
plus the per-boss script bindings. Defines raid boss encounter
metadata: which creature is the boss, which map and difficulty
variant it lives in, how many phases the encounter has, the
soft-enrage timer and berserk spell, recommended group size, and
item level.
One entry per (boss × difficulty) combination. Lord Marrowgar in
10-Normal ICC is one entry; Lord Marrowgar in 25-Heroic ICC is a
separate entry with a higher recommendedItemLevel and a different
difficultyId pointing into WCDF.
This format ties together five other catalogs into a coherent
encounter description:
- WCRT for the boss creature template
- WMS for the instance map
- WCDF for difficulty routing (10/25/H10/H25 variants)
- WSPL for the berserk spell that fires at enrage
- WACR for achievement criteria like "kill The Lich King in
25-Heroic" that point back via KillCreature targetId
findByMap(mapId) returns all encounters in one raid instance,
sorted by their catalog order — used by the Encounter Journal
UI and instance lockout logic. findByBossCreature(bossId)
returns all difficulty variants of one boss.
Three preset emitters: --gen-bos (3 5-man dungeon bosses with
no soft-enrage), --gen-bos-raid10 (4 ICC 10-Normal bosses
including 5-phase Lich King with 15min hard enrage via Fury of
Frostmourne 72546), --gen-bos-world (2 outdoor world bosses
with 25-player size + no difficulty).
Validation enforces id+name+boss+map+phases+size presence, no
duplicate ids; warns on:
- non-standard requiredPartySize (canonical sizes are
5/10/25/40)
- berserkSpellId set without enrageTimerMs (spell never fires)
- enrageTimerMs > 30 minutes (sanity check)
Wired through the cross-format table; WBOS appears in all 18
cross-format utilities. Format count 90 -> 91; CLI flag count
1055 -> 1060.
This commit is contained in:
parent
5a12f5d183
commit
acaef78696
10 changed files with 677 additions and 0 deletions
|
|
@ -135,6 +135,7 @@
|
|||
#include "cli_token_rewards_catalog.hpp"
|
||||
#include "cli_spell_procs_catalog.hpp"
|
||||
#include "cli_creature_patrols_catalog.hpp"
|
||||
#include "cli_boss_encounters_catalog.hpp"
|
||||
#include "cli_quest_objective.hpp"
|
||||
#include "cli_quest_reward.hpp"
|
||||
#include "cli_clone.hpp"
|
||||
|
|
@ -311,6 +312,7 @@ constexpr DispatchFn kDispatchTable[] = {
|
|||
handleTokenRewardsCatalog,
|
||||
handleSpellProcsCatalog,
|
||||
handleCreaturePatrolsCatalog,
|
||||
handleBossEncountersCatalog,
|
||||
handleQuestObjective,
|
||||
handleQuestReward,
|
||||
handleClone,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue