rows + encoded DBSS count |
file +0 count, then variable rows |
array retained in physical order; count omitted |
base-dialogue row sequence |
Certain |
Certain |
Certain (structural) |
The count drives complete sequential decoding to EOF in both captures; client 2923 has 58,537 retained rows, and a count + 1 mutation rejects |
Closed |
dialogKey |
row +0, u32 |
retained losslessly |
packed (dialogId << 16) | npcId identity |
Certain |
Certain |
Certain |
Every key agrees with the companion and detail_dialog; 20,215 archived (Npc, DialogIndex) pairs overlap, and representative packed key 2,425,414 decomposes to 582/37 |
Closed |
speakerLabel length |
row +4 then variable per row, u32 UTF-16 code-unit count |
consumed to size the string; omitted |
string framing |
Certain |
Certain |
Certain (structural) |
Independent raw scan reaches the next field exactly for every row |
Closed |
speakerLabel reserved word |
after its length, u32 == 0 |
validated and omitted |
reserved serializer word |
Certain |
Certain |
Certain (reserved) |
All applicable words are zero in both captures; a nonzero mutation rejects |
Closed |
speakerLabel |
counted UTF-16LE code units |
decoded and retained |
speaker role or name |
Certain |
Certain |
High |
20,113/20,186 exact archived Dialog_Table.Name root matches; 73 recognizable historical/localization drifts; BDOCodex identifies representative Andro 582/37 |
Closed |
lines + encoded count |
after speakerLabel, u32 then variable strings |
ordered array retained; count omitted |
generic-line list and its physical length |
Certain |
Certain |
Certain (structural) |
The counted elements plus footer end at the independently addressed boundary for all 58,537 rows |
Closed |
lines[] length |
each line +0, u32 UTF-16 code-unit count |
consumed and omitted |
line-string framing |
Certain |
Certain |
Certain (structural) |
Independent raw scan covers every line without gaps or overrun |
Closed |
lines[] reserved word |
each line +4, u32 == 0 |
validated and omitted |
reserved serializer word |
Certain |
Certain |
Certain (reserved) |
Together with the speaker fields, all 68,702 current string-control words are zero; a line mutation rejects |
Closed |
lines[] |
counted UTF-16LE code units |
decoded and retained in order |
generic dialogue text |
Certain |
Certain |
High |
20,131/20,186 exact archived Dialog_Table.Bubble1..Bubble10 lists; 55 recognizable historical text drifts |
Closed |
row footer |
final 5 bytes |
required zeros; omitted |
reserved row terminator |
Certain |
Certain |
Certain (reserved) |
Every row ends with five zeros at the companion-confirmed boundary; a targeted mutation rejects |
Closed |
derived npcId |
no additional bytes; low 16 bits of dialogKey |
retained alongside the physical key |
NPC identifier |
Certain |
Certain |
Certain |
Exact bit identity for every row, cross-table equality, archived Dialog_Table.Npc, and BDOCodex 582/37 |
Closed |
derived dialogId |
no additional bytes; high 16 bits of dialogKey |
retained alongside the physical key |
dialogue variant/index |
Certain |
Certain |
Certain |
Exact bit identity for every row, cross-table equality, archived Dialog_Table.DialogIndex, and BDOCodex 582/37 |
Closed |