re: EnumWeapon_EX5.tbl adds exactly one weapon; a tutorial expectation refuted
Diffed S28's bespoke weapon table against the common one. The disc has exactly
three weapon tables, and each is a single EnumWeapon record whose FIELD NAMES
are the weapons - the Enumerate-style declaration shape again:
EnumWeapon_Test.tbl 126 names
EnumWeapon_EX5.tbl 127 names = the same 126, same order, plus one
EnumWeapon_Tutorial.tbl 9 names = a strict subset of Test
union 127
The whole of S28's bespoke table is one extra weapon,
Weapon_TCAF_Ship_AAGun_EX5. Zero removals, identical order on the shared 126.
That explains one of weapon-struct-runtime's five "never instantiated" disc
records: the AA-gun variant is declared by EnumWeapon_EX5.tbl only, and that
table belongs to S28 alone, which the captured save was not playing.
It also refutes that document's expectation that "running the tutorial should
instantiate the _Ttrl pair". It will not: EnumWeapon_Tutorial.tbl's nine names
are Weapon_NULL, Weapon_ADAN_Puppy_NoseGun, Weapon_DSaber_P_wep_{01_Beam,
02_Missile,58_Laser} and Weapon_TCAF_DeltaSaber_{Beam,Cannon,Missile,
ASMissile} - neither _Ttrl weapon is among them. Four of the five
uninstantiated records are declared by no weapon table on the disc at all.
EX is still not identified but narrowed hard: the entire content of S28's own
weapon table is a single _EX5 AA-gun variant, and the only other _EX5 name on
the disc is UN_f001_TCAF_DeltaSaber_T_EX5.
All fifteen artefacts byte-identical.
This commit is contained in:
@@ -262,8 +262,26 @@ whole `…Ratio` family that blocked Route B is simply "no penalty".
|
||||
objects; the 5 with no runtime object are context variants that this save
|
||||
never loads — `Weapon_TCAF_DeltaSaber_NoseGun_Ttrl` / `_Laser_Ttrl`
|
||||
(tutorial), `_NoseGun_None`, `Weapon_TCAF_Ship_AAGun_EX5`,
|
||||
`Weapon_ADAN_Attacker_S_GunTurret`. Running the tutorial should instantiate
|
||||
the `_Ttrl` pair. No runtime object lacked a disc record.
|
||||
`Weapon_ADAN_Attacker_S_GunTurret`. No runtime object lacked a disc record.
|
||||
|
||||
✅🔴 **Followed up statically 2026-08-28 — and "running the tutorial should
|
||||
instantiate the `_Ttrl` pair" is refuted.** The disc has exactly **three**
|
||||
weapon tables, and each is a single `EnumWeapon` record whose *field names* are
|
||||
the weapons: `EnumWeapon_Test.tbl` (126), `EnumWeapon_EX5.tbl` (**127 — the
|
||||
same 126 plus one**), `EnumWeapon_Tutorial.tbl` (**9, a strict subset of
|
||||
Test**). Union: **127**.
|
||||
|
||||
| of the five | declared by |
|
||||
|---|---|
|
||||
| `Weapon_TCAF_Ship_AAGun_EX5` | **`EnumWeapon_EX5.tbl` only** — and that table belongs to **S28 alone** ([[stage-numbering-and-player-craft]]) |
|
||||
| `_NoseGun_Ttrl`, `_Laser_Ttrl`, `_NoseGun_None`, `Weapon_ADAN_Attacker_S_GunTurret` | **no weapon table at all** |
|
||||
|
||||
So one of the five is explained — it loads only in Stage 28 — and the other
|
||||
four are **declared by nothing on the disc**, tutorial included: the nine names
|
||||
in `EnumWeapon_Tutorial.tbl` are `Weapon_NULL`, `Weapon_ADAN_Puppy_NoseGun`,
|
||||
`Weapon_DSaber_P_wep_{01_Beam,02_Missile,58_Laser}` and
|
||||
`Weapon_TCAF_DeltaSaber_{Beam,Cannon,Missile,ASMissile}` — **neither `_Ttrl`
|
||||
weapon is among them.** Running the tutorial will not instantiate them.
|
||||
- Defaulted `Power` values vary per weapon (1, 10, 100, 300, 500, 1000), so they
|
||||
are **not** one constructor constant. Where they come from — the IDXD's
|
||||
undecoded binary node/index region, or per-type code defaults — is **not
|
||||
|
||||
Reference in New Issue
Block a user