re: find the mission wave data — stage records and the UnitGroup squadron roster
Sweeping the 811 unnamed IDXD objects in GP_MAIN_GAME_E.pak by schema turned up
schema 3c9ae32e: the per-stage definition record. 23 of them, one per stage,
each naming its background, resource package, collision set, message set,
nameplates, MapMesh/MapPath and EnumerateSquadron = UnitGroup_S<NN>.tbl.
That resolves two open threads at once:
- MapPath = test.rgn hashes to 0x3506e972, a REGN object in MiscBin.pak, and
MapMesh = test.col to 0x2cf7eb47, an MCOL object. REGN is a stage's map
path data; MCOL is its collision mesh.
- stage\UnitGroup_S02.tbl (0x019fd129, in all six language paks) is the
Stage 02 squadron roster: 112 records, 112 squadron IDs, and a field
vocabulary of FormationID / AIID / SideID / Count / DisableInterval, plus
the unit model (UN_e010_ADAN_Attacker_S and friends, which match the XBG7
mesh names we already decode), the MessageSet and the pilot character.
DisableInterval is the first direct evidence of the arrival-timing knob, which
is what the user's reframing predicted: the mission has a schedule with
parameters, not a fixed roster.
Container layout is only partly read. The 112x16 entry array was confirmed by
its boundary — keys increase for exactly 112 entries and break at 0x708, where
the next section header sits — not assumed. pak dump mislabels this file's
first key as its schema.
Refuted and recorded: the 16-byte record key is not the squadron ID's name
hash. name_hash("TCN001") = 0xd639f1a4 but the keys start 0x659aff47; 0 of 112
match.
Still open: the per-record payload fields, the meaning of the key, where the
interval values actually live, and the missing S17-S23 stage records.
This commit is contained in:
@@ -130,3 +130,16 @@ thing is indexed *by*.
|
||||
🔴 **But nothing here shows spawn parameters yet.** The header is a spatial
|
||||
partition and no more; the sections are unread. Treat this as the location of the
|
||||
world's spatial data, not as the wave table.
|
||||
|
||||
## ✅ Update: `REGN` is a stage's **MapPath**
|
||||
|
||||
The per-stage definition record (see
|
||||
[stage-definition-table.md](stage-definition-table.md)) has a field
|
||||
`MapPath = test.rgn`, and `name_hash("test.rgn") = 0x3506e972`, which is one of
|
||||
the `REGN` objects in `MiscBin.pak`. The sibling field `MapMesh = test.col`
|
||||
hashes to `0x2cf7eb47`, an `MCOL` object in the same pak.
|
||||
|
||||
So `.rgn`/`REGN` is stage navigation/path data referenced by the stage record,
|
||||
and `.col`/`MCOL` is the stage collision mesh. This does not by itself validate
|
||||
either of the two refuted cell-payload readings recorded above, but it does
|
||||
explain why the payload looks like a grid of route data.
|
||||
|
||||
Reference in New Issue
Block a user