re: EnumLODSet_test.tbl is the story campaign's live LOD table; S25 premise withdrawn

The question was why S25 is absent from the DefTables +-path families. The
premise is withdrawn: it was an artifact of listing DISTINCT values of
LodEnumTable. S25 is not missing anything - it shares EnumLODSet_test.tbl with
the sixteen story stages, and test is in the list. Counting distinct values
hides who uses them; join per user.

The per-stage join: EnumLODSet_test.tbl / EnumGameModel_test.tbl serve 17
stages - all of S01-S16 plus S25. The five challenge stages S24, S26, S27, S28,
S29 have bespoke tables. Hangar.xpr has no pair at all. 17 + 5 + 1 = 23 objects
carrying a StageResource.

So the test-named table is the live LOD and model table for the whole story
campaign - the strongest case yet of "a test_-named table can be live", serving
17 of the 22 missions.

Eight shipped tables that nothing references: the family covers only 11 tags
(S01, S02, S16, S24, S26-S29, Tutorial, test, Test) and is NOT per stage -
S03-S15, S17-S23 and S25 have none. Seven tags are referenced; S01, S02, S16 and
Test are present in DefTables.pak with zero references disc-wide, i.e. 8 orphan
tables. "Early per-stage LOD sets, abandoned when the campaign was pointed at
the shared test table" is a reading, not a measurement.

Scope note recorded so the family is not mistaken for a stage one:
EnumLODSet/EnumGameModel is overwhelmingly an EQUIPMENT family - 116 of the 130
referenced values are bare Equip_EnumGameModel_wep_NN.tbl names reached from
PlayerLOD, WingmanLOD, PlayerMotion and WingmanMotion (58 distinct each); only
the 14 stage-tagged values use the + path form.

All fifteen artefacts byte-identical.
This commit is contained in:
Sylpheed RE agent
2026-08-28 07:00:34 +00:00
parent 9be52cb2e9
commit 0536e287b5
2 changed files with 75 additions and 0 deletions

View File

@@ -6468,3 +6468,34 @@ test` in `DefTables.pak`.
❔ Unexplained: both `DefTables` families are seven names with **S25 absent** and
no story stage at all.
---
## ✅❌ 2026-08-28 — `EnumLODSet_test.tbl` is the story campaign's live LOD table
Item (a): why is S25 absent from the `DefTables` `+`-path families?
**The premise is withdrawn — it was an artifact of listing distinct values.**
S25 is not missing anything: it shares `EnumLODSet_test.tbl` with the sixteen
story stages, and `test` *is* in the list. **Counting distinct values hides who
uses them — join per user.**
**The per-stage join:** `EnumLODSet_test.tbl` / `EnumGameModel_test.tbl` serve
**17 stages** — all of S01S16 plus S25; the five challenge stages S24, S26, S27,
S28, S29 have bespoke tables; `Hangar.xpr` has no pair. 17 + 5 + 1 = 23 objects
carrying a `StageResource`.
🔑 **The `test`-named table is the live LOD/model table for the whole story
campaign** — the strongest case yet of "a `test_`-named table can be live",
serving 17 of 22 missions.
🟡 **Eight shipped tables nothing references.** The family covers only 11 tags
(S01, S02, S16, S24, S26S29, Tutorial, test, Test) — S03S15, S17S23 and S25
have none at all. Seven tags are referenced; **S01, S02, S16 and `Test` are
present with zero references disc-wide = 8 orphan tables**. "Early per-stage LOD
sets, abandoned for the shared `test` table" is a reading, not a measurement.
⚠️ Scope: `EnumLODSet`/`EnumGameModel` is overwhelmingly an **equipment** family —
116 of 130 referenced values are bare `Equip_EnumGameModel_wep_NN.tbl` names from
`PlayerLOD`/`WingmanLOD`/`PlayerMotion`/`WingmanMotion` (58 distinct each); only
the 14 stage-tagged values use the `+` form.

View File

@@ -278,3 +278,47 @@ field set above, so the loader names the whole schema and nothing else.
* The `UnitGroup` record key and its member field `n` remain ❔ from
[unit-group-table.md](unit-group-table.md). `n` is now a little more
suspicious: routes are per-squadron, so `n` is unlikely to be a spawn count.
## ✅ `EnumLODSet_test.tbl` is the LOD table for the entire story campaign
[[stage-settings-table]] records that a stage object carries `LodResource` and
`MotionResource` beside `StageResource`, and the example above shows their values
in the `DefTables.pak+…` form. What neither says is **who uses which** — and the
per-stage join is the finding.
| `LodEnumTable` / `MotionEnumTable` | stages |
|---|---|
| **`EnumLODSet_test.tbl` / `EnumGameModel_test.tbl`** | **17** — every story stage S01S16 **and S25** |
| `…_S24`, `_S26`, `_S27`, `_S28`, `_S29` | one each — five challenge stages |
| (none at all) | `Hangar.xpr` |
23 objects carry a `StageResource`; 22 have a Lod/Motion pair and the hangar does
not. **17 + 5 + 1 = 23.**
🔑 **So the `test`-named table is not a leftover — it is the live LOD and model
table for the whole story campaign.** This is the strongest instance yet of the
rule that a `test_`-named table can be live (cf. `test_s8p1_asteroid.tbl` in
[[asteroid-fields]]): here one such table serves **17 of the 22 missions**.
**"S25 is absent from the `DefTables` `+`-path families" — withdrawn.** That was
an artifact of listing the *distinct* values of `LodEnumTable`: S25 is not
missing anything, it simply shares `EnumLODSet_test.tbl` with the sixteen story
stages, and `test` is in the list. **Counting distinct values hides who uses
them — join per user.**
### 🟡 Eight shipped tables that nothing references
The family exists for only **11 tags** — S01, S02, S16, S24, S26, S27, S28, S29,
Tutorial, test, Test — **not** per stage: S03S15, S17S23 and S25 have no
`EnumLODSet_<tag>`/`EnumGameModel_<tag>` in `DefTables.pak` at all. Of the 11,
seven are referenced (the five challenge stages, `Tutorial`, `test`), and the
remaining four — **S01, S02, S16 and `Test`** — are present in the archive with
**zero references disc-wide**, i.e. **8 orphan tables**. Presumably early
per-stage LOD sets, abandoned when the story campaign was pointed at the shared
`test` table; that reading is **not measured**.
⚠️ Scope note: `EnumLODSet`/`EnumGameModel` names are overwhelmingly an
**equipment** family, not a stage one — 116 of the 130 referenced values are
bare `Equip_EnumGameModel_wep_NN.tbl`-style names reached from `PlayerLOD`,
`WingmanLOD`, `PlayerMotion` and `WingmanMotion` (58 distinct each). Only the 14
stage-tagged values use the `+` path form.