re: index + backlog rows for the cue table and the cutscene message table

This commit is contained in:
Sylpheed RE agent
2026-08-26 03:24:30 +00:00
parent b5fa88c0a2
commit 511bfee410
2 changed files with 11 additions and 3 deletions

View File

@@ -21,9 +21,15 @@ had nothing to resolve to, which is why the item sat open.
Write-up + tool: [`structures/isl-message-dialogue-link.md`](structures/isl-message-dialogue-link.md),
`tools/re-capture/isl_dialogue.py`.
**Still open from this**: which *recording* plays for a line (the voice-bank
binding is unresolved and a generic take is known to play against a specific
subtitle); the other five languages; and play order, since the tool prints
**Answered the same day**: what drives `MSG_DEMO_*` (its own IDXD tables in the
language packs — see [`structures/cutscene-message-table.md`](structures/cutscene-message-table.md)),
and which bank voices a line (`tables.pak`'s cue index — see
[`structures/sound-cue-table.md`](structures/sound-cue-table.md); 1 326 of 1 338
script message ids resolve to a `.slb`).
**Still open from this**: the known wrong-recording case, which the cue table
does *not* explain — every cue id is distinct, so bank sharing must happen
inside the bank layer; the other five languages; and play order, since the tool prints
script order without resolving phases or branches. Multi-page captions were
settled the same day — and in doing so refuted the first version of the tool,
which truncated 356 of the 1338 names to their opening utterance.

View File

@@ -94,6 +94,8 @@ files, which is how the same ground got covered twice.
| [`idxd-legacy-reader-audit.md`](idxd-legacy-reader-audit.md) | The legacy IDXD string-pool reader vs the real field table — what the old numbers got wrong | 🟡 shape CONFIRMED by hand (`FCSRange`, `ShieldRatio`, hangar `Model`); disc-wide rates are single-source |
| [`structures/idxd-container.md`](structures/idxd-container.md) | The IDXD/IXUD container — record/field table, and the two beliefs it withdraws | ✅ CONFIRMED disc-wide, 7 750/7 750 objects and 1 271 462/1 271 462 named fields, zero failures |
| [`structures/hud-glyph-quad.md`](structures/hud-glyph-quad.md) | The HUD's glyph quad — vtable `0x820B2A64` | ✅ CONFIRMED for the object layout and the atlas size, read live off |
| [`structures/sound-cue-table.md`](structures/sound-cue-table.md) | The cue index in `tables.pak` — message id -> cue -> sound id -> `.slb` bank | ✅ CONFIRMED, 1 326/1 338 script message ids bind to a bank; SOUNDS and FILES agree on the same 12 absentees, 0 orphan files |
| [`structures/cutscene-message-table.md`](structures/cutscene-message-table.md) | Cutscene dialogue — speaker, portrait, on-screen seconds, audio cue per page | ✅ CONFIRMED, field count = 9·PageCount+2 for all 7 PageCounts, 1 252/1 252 caption keys match, 138 ids close both ways |
| [`structures/isl-message-dialogue-link.md`](structures/isl-message-dialogue-link.md) | Mission scripts as dialogue — built-in 64 -> message id -> caption text | ✅ CONFIRMED total, 2 683/2 683 call sites across all 28 stages resolve, no residue |
| [`structures/mission-objective-counter.md`](structures/mission-objective-counter.md) | `REMAINING OB` — the mission's own objective counter, in RAM | ✅ CONFIRMED for one Stage 02 run: a big-endian u32 whose value |
| [`structures/movie-subtitles.md`](structures/movie-subtitles.md) | Movie subtitles & the movie ↔ mission ↔ text chain | — |