mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-05-10 11:03:51 +00:00
feat(editor): add WTBR JSON round-trip (--export/--import-wtbr-json)
Closes the editing loop on the token-reward catalog: dump a
.wtbr to JSON, hand-edit rewardKind / rewardId / spent token
counts / faction gates (e.g. raise T10 helm cost from 95 to 100
Emblems, swap a server-custom mount reward to a Pet kind, lower
an Argent Tournament reward standing from Exalted to Honored),
re-import to a byte-identical binary.
Two dual-encoded fields:
- rewardKind: int 0..7 OR "item" / "spell" / "title" /
"mount" / "pet" / "currency" / "heirloom" / "cosmetic"
- requiredFactionStanding: int 0..7 OR "hated" / "hostile" /
"unfriendly" / "neutral" / "friendly" / "honored" /
"revered" / "exalted"
Verified byte-identical round-trip on all three presets
(raid / pvp / faction). CLI flag count 1039 -> 1041.
This commit is contained in:
parent
c1c4b8fa12
commit
28becba00e
3 changed files with 184 additions and 0 deletions
|
|
@ -1995,6 +1995,10 @@ void printUsage(const char* argv0) {
|
|||
std::printf(" Print WTBR entries (id / spent token x count / reward kind / rewardId / faction@standing gate / name)\n");
|
||||
std::printf(" --validate-wtbr <wtbr-base> [--json]\n");
|
||||
std::printf(" Static checks: id+name+spentTokenItemId+count required, rewardKind 0..7, requiredFactionStanding 0..7, no duplicate ids; warns on rewardId=0 (no actual reward), standing>Neutral with factionId=0, Currency conversion item->itself\n");
|
||||
std::printf(" --export-wtbr-json <wtbr-base> [out.json]\n");
|
||||
std::printf(" Export binary .wtbr to a human-editable JSON sidecar (defaults to <base>.wtbr.json)\n");
|
||||
std::printf(" --import-wtbr-json <json-path> [out-base]\n");
|
||||
std::printf(" Import a .wtbr.json sidecar back into binary .wtbr (accepts rewardKind/requiredFactionStanding int OR name)\n");
|
||||
std::printf(" --gen-weather-temperate <wow-base> [zoneName]\n");
|
||||
std::printf(" Emit .wow weather schedule: clear-dominant + occasional rain + fog (forest / grassland)\n");
|
||||
std::printf(" --gen-weather-arctic <wow-base> [zoneName]\n");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue