feat(editor): add WVOX JSON round-trip (--export/--import-wvox-json)

Dual encoding for both WVOX enums via the readEnumField
template: eventKind (int 0..8 OR token "greeting"/
"aggro"/"death"/"queststart"/"questprogress"/
"questcomplete"/"goodbye"/"special"/"phase") and
genderHint (int 0..2 OR token "male"/"female"/"both").
volumeDb serializes as signed int8 since boss-call
clips use +5dB above ambient and quiet whisper clips
can use -10dB or lower.

transcript serializes as a plain JSON string —
operators editing the JSON sidecar can rewrite voice
transcripts for accessibility (TTS engines and chat-
bubble subtitles) without binary tooling.

All 3 presets (questgiver/boss/vendor) byte-identical
roundtrip OK. CLI flag count 1225 -> 1227.
This commit is contained in:
Kelsi 2026-05-10 02:27:03 -07:00
parent 78555a79b0
commit 65c51a272f
3 changed files with 189 additions and 0 deletions

View file

@ -352,6 +352,7 @@ const char* const kArgRequired[] = {
"--export-wspv-json", "--import-wspv-json",
"--gen-vox", "--gen-vox-boss", "--gen-vox-vendor",
"--info-wvox", "--validate-wvox",
"--export-wvox-json", "--import-wvox-json",
"--gen-weather-temperate", "--gen-weather-arctic",
"--gen-weather-desert", "--gen-weather-stormy",
"--gen-zone-atmosphere",