Files
Sylpheed/docs/re/structures/leaderboard-screen.md
Claude (auto) 1903bf4c37 re: the leaderboard screen, and a Detail_* prefix trap
sub_8219E560 r11, censused against tables.pak exactly like the result screens.
444 instructions, one call site (sub_821A2A80), 100 % of its names are tables.pak
names.

The 18 names partition exactly: 13 record names + 5 field-only names.  The 13 are
the 12 Detail_* panel elements plus MISSIONS -- a 0-field record already owned by
isl-condition-builtins.md and challenge-mission-gate.md, so not new.  The five
field-only names are the screen's parameters: DETAIL_TITLE, one field in each of
six mode records (ScoreAttack, TimeAttack, Extra01..Extra04), and
Detail_Board_{Permanent,Monthly,Friend,Self}, four fields of CHIPS -- the board
scopes.

All 12 Detail_* record names are in the code block, zero residual -- the opposite
of the boss motions, where the block was a 25-of-55 subset.  The panel is Rank,
GamerTag, Main_{Time,Points}_{Self,Live}, Warships, Warplanes,
Weapon_{Nose,Main1,Main2,Main3}: your figure against the selected entry's, plus
that pilot's kills and four weapon slots.  _Live, GamerTag and the Friend/Monthly
boards make it the Xbox Live detail view.

The trap worth keeping: tables.pak has 12 Detail* RECORD names and 12 Detail*
FIELD names, and they are DISJOINT (0 overlap).  The fields are a different axis
-- 4 board scopes + 6 modes + Detail_Window_{Known,Unknown}.  A Detail_* name
means nothing until you say whether it is a record or a field.

Not settled: what Detail_Window_Known/_Unknown switch between, and whether
Extra01..04 map onto the four challenge missions.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PMRJjbxLqZtsb5Vb7KunPE
2026-08-27 23:58:13 +00:00

2.6 KiB

The leaderboard screen — sub_8219E560, and a Detail_* prefix trap

  • Key list: sub_8219E560 r11, base 0x820A0000, 18 names, 100 % of them tables.pak names; 444 instructions, one call site (sub_821A2A80).
  • Related: result-screens (the same compiled-key-list shape), savegame-format (where that shape was first documented).

The 18 partition exactly

tables.pak record names 13
field-only names 5

13 + 5 = 18. The 13 are the 12 Detail_* panel elements plus MISSIONS — a 0-field record already owned by isl-condition-builtins and challenge-mission-gate as an IDXD record key, not a new thing.

The five field-only names say how the screen is parameterised:

  • DETAIL_TITLE — one field in each of six mode records: ScoreAttack, TimeAttack, Extra01, Extra02, Extra03, Extra04.
  • Detail_Board_{Permanent, Monthly, Friend, Self} — four fields of CHIPS, the four board scopes.

And all 12 Detail_* record names are in the code block — zero residual. That is worth stating because the boss motions went the other way: there the block was a 25-of-55 subset. Here the code names the whole population.

The detail panel — 12 elements

Detail_Rank            Detail_GamerTag
Detail_Main_Time_Self  Detail_Main_Time_Live
Detail_Main_Points_Self  Detail_Main_Points_Live
Detail_Warships        Detail_Warplanes
Detail_Weapon_Nose     Detail_Weapon_Main1/Main2/Main3

_Self beside _Live for both time and points, GamerTag, and Friend/Monthly boards — this is the Xbox Live leaderboard detail view: your own figure against the selected entry's, plus that pilot's kill counts and the four weapon slots they flew.

🔑 The trap: two disjoint 12-element Detail* populations

tables.pak has 12 Detail* record names and 12 Detail* field names, and they do not overlap at all (0 of 12). The fields are a different axis entirely:

Detail_Board_{Permanent,Monthly,Friend,Self}      the four scopes
Detail_{ScoreAttack,TimeAttack,Extra01..Extra04}  the six modes
Detail_Window_{Known,Unknown}                     two window states

A Detail_* name means nothing until you say whether it is a record or a field — the same prefix indexes the panel's elements on one side and the screen's mode/scope selectors on the other. Counting "24 Detail_* things" would be counting two unrelated tables together.

🟡 Not settled: what Detail_Window_Known / _Unknown switch between, and whether Extra01…04 map onto the four challenge missions the corpus knows.