re: DEMO_* in a message's voice slot is not a sound bank
An open question from the game_data migration: 132 dialogue lines carry an
unprefixed DEMO_* token where a VOICE_* one is expected, and whether DEMO_*
names a bank was untested. It does not.
VOICE_* 4443 distinct, 4175 resolve in sound.pak
(2360 eng\Voice\, 1815 eng\etc\)
DEMO_* 296 distinct, 0 resolve
Zero resolve under any of the three directories, and looking them up through
the convention -- VOICE_DEMO_nnn -- resolves 0 of 296 as well. So the slot is
not "the voice bank"; it can hold either a bank reference or a demo one.
The tokens run DEMO_000 to DEMO_310, 287 distinct in [0, 310] -- a dense
sequential id space, which is the shape of the demo id this file already uses
in MSG_DEMO_<demo>_<page>_<line> caption keys. I did NOT confirm the overlap
and say so: those keys live in IXUD wide-string blocks while my scan walked
IDXD objects only, so it found 0 of them. That needs an IXUD-aware sweep.
Incidental and left open: 268 of the 4443 VOICE_* tokens do not resolve
either. That is a separate gap and the DEMO_* finding does not explain it.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PMRJjbxLqZtsb5Vb7KunPE
This commit is contained in:
@@ -176,3 +176,27 @@ data** (mission scripts / `GP_MAIN_GAME` IDXD tables), not in the text pack. Whe
|
||||
reversing mission data, look for demo-id references there to bind dialogue to
|
||||
events; the IDXD "Message" schema records also carry `Character` (speaker) and
|
||||
`Face` (portrait) per line.
|
||||
|
||||
## ✅ `DEMO_*` in a message's voice slot is NOT a sound bank
|
||||
|
||||
The dialogue message tables put a token in what reads as a voice slot, and 296
|
||||
distinct ones are spelled `DEMO_*` rather than `VOICE_*`. They do not name audio:
|
||||
|
||||
| token family | distinct | resolve in `sound.pak` |
|
||||
|---|---|---|
|
||||
| `VOICE_*` | 4443 | **4175** — 2360 under `eng\Voice\`, 1815 under `eng\etc\` |
|
||||
| `DEMO_*` | 296 | **0** |
|
||||
|
||||
Zero resolve under any of the three directories (`Movie`, `etc`, `Voice`), and
|
||||
prefixing the convention — looking up `VOICE_DEMO_nnn` — resolves **0 of 296**
|
||||
too. So the slot is not "the voice bank" but something that can hold either a
|
||||
bank reference or a demo reference.
|
||||
|
||||
🟡 The tokens run `DEMO_000` … `DEMO_310`, **287 distinct in [0, 310]** — a dense
|
||||
sequential id space, which is the shape of the demo id this file already uses in
|
||||
`MSG_DEMO_<demo>_<page>_<line>` caption keys. **I did not confirm the overlap**:
|
||||
those keys live in the IXUD wide-string blocks and the scan above only walked
|
||||
IDXD objects, so it found 0 of them. Confirming it needs an IXUD-aware sweep.
|
||||
|
||||
❔ **268 of the 4443 `VOICE_*` tokens do not resolve either.** That is a separate
|
||||
gap and is not explained by the `DEMO_*` finding.
|
||||
|
||||
Reference in New Issue
Block a user