mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-05-11 03:23:51 +00:00
feat(editor): add WMVC (Movie Credits Roll) — 112th open format
Novel replacement for the embedded credit-roll text vanilla WoW carried inside the cinematic-renderer blob (the post-cinematic credits that scroll up the screen after each expansion intro). Each entry binds one credits category (Production / Music / Voice Acting / etc.) for one cinematic to its ordered list of credit lines. First catalog with a variable-length STRING array payload — previous variable-length formats used int arrays (WCMR waypoints / WCMG mutex spells / WPTT rank-spells / WBAB rank chains / WRPR unlocked items + recipes). The lines[] field serializes as count + (length + bytes)* per line, mirroring how strings work elsewhere in the catalog set just lifted into a per- entry array. Seven category enum values cover the full credit taxonomy: Production / Music / Audio / Engineering / Art / Voice / Special. Three preset emitters: makeWotLKIntro (5 blocks for the WotLK Arthas/Terenas cinematic with the actual canonical music credits — Brower/Duke/Stafford/Hayes), makeQuestCinema (3-block template for per-quest cinematics), makeStarterRoll (4-block generic template). orderHint sorts blocks within a single cinematic so the renderer can render Production -> Direction -> Music -> Voice -> Special Thanks in canonical order without depending on entry order in the binary. Validator's most novel checks combine string + grouping constraints unique to credit rolls: per-cinematic orderHint slot uniqueness — two blocks at the same (cinematicId, orderHint) would render in non- deterministic order due to the std::sort being stable but content-order undefined. Per-line: empty lines warn (would render as blank, intentional spacers should use a placeholder character), lines >80 chars warn (text-buffer wrap at the canonical 80-char credit-renderer width). Format count 111 -> 112. CLI flag count 1206 -> 1211.
This commit is contained in:
parent
9a0309818e
commit
46213baea0
10 changed files with 769 additions and 0 deletions
|
|
@ -344,6 +344,8 @@ const char* const kArgRequired[] = {
|
|||
"--gen-pcr", "--gen-pcr-stable", "--gen-pcr-warlock",
|
||||
"--info-wpcr", "--validate-wpcr",
|
||||
"--export-wpcr-json", "--import-wpcr-json",
|
||||
"--gen-mvc", "--gen-mvc-quest", "--gen-mvc-starter",
|
||||
"--info-wmvc", "--validate-wmvc",
|
||||
"--gen-weather-temperate", "--gen-weather-arctic",
|
||||
"--gen-weather-desert", "--gen-weather-stormy",
|
||||
"--gen-zone-atmosphere",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue