rrt/docs/rehost-queue/tier2-selector-byte-sources-2026-04-21.md

69 lines
2.5 KiB
Markdown
Raw Normal View History

# Tier2 Selector-Byte Sources (2026-04-21)
This note preserves the stock selector-byte evidence behind the current Tier-2 queue head, so the
short queue does not have to restate the `BuildingTypes` side every time.
## Checked Export
- `artifacts/exports/rt3-1.06/building-type-sources.json`
## Stock `.bca` Selector Bytes
The checked export keeps the raw `0xb8..0xbb` selector-byte window explicit for every `.bca` file:
- `bca_file_count = 77`
- `bca_selector_pattern_count = 8`
- only one checked `.bca` pattern is nonzero at all:
- `MachineShop.bca`
- `byte_0xb8 = 0x00`
- `byte_0xb9 = 0x80`
- `byte_0xba = 0x3f`
- `byte_0xbb = 0x00`
Everything else in the shipped `.bca` selector-byte corpus stays zero at `0xb8..0xbb`.
## Nonzero `.bty` Alias Family
The checked recovered-table summaries keep the nonzero `.bty` alias family explicit too:
- `nonzero_bty_header_alias_selector_summaries`
- `17` grouped selector summaries
- `22` files total
- the strongest same-root family is the `TextileMill` alias-root group:
- `dword_0xbb = 0x000001f4`
- `byte_0xba = 0x00`
- `byte_0xbb = 0x00`
- `9` files
- sample files include `Port.bty`, `Warehouse.bty`, `ConcretePlant.bty`,
`ConstructionFirm.bty`, and `ElectronicsPlant.bty`
The next smaller nonzero alias-root groups are:
- `LumberMill`
- `4` files
- `MeatPackingPlant`
- `4` files
- `Distillery`
- `2` files
- `Toolndie`
- `2` files
## Immediate Reading
This keeps the Tier-2 source side narrower than a generic “stock assets might hide selector bytes”
claim:
- the shipped `.bca` selector-byte corpus is almost entirely zero
- the one checked nonzero `.bca` outlier is `MachineShop.bca`
- the broader stock-side nonzero signal sits instead in the `.bty` alias-root family with
`dword_0xbb = 0x000001f4`, especially the `TextileMill` branch that already covers `Port.bty`
and `Warehouse.bty`
2026-04-21 19:11:47 -07:00
- the low source-record decoder `0x00414490` is already more than a passive copier:
it imports `[record+0xb8/+0xb9/+0xba/+0xbb]`, derives the optional-plane byte count from
`[record+0xb8] * [record+0xb9] << 5`, and then uses the high nibble of `[record+0xba]` while
materializing the four optional plane buffers at `[record+0xcf/+0xd3/+0xd7/+0xdb]`
So the remaining Tier-2 question is still not “do the stock source files carry any selector-byte
signal at all?” It is which earlier seed or projection seam lifts that narrow stock-side signal
2026-04-21 19:11:47 -07:00
and already-decoded optional-plane state into the live candidate bank bytes `[candidate+0xba/+0xbb]`
before `0x00412d70` and `0x00419230` consume it.