diff --git a/context/gauges-hud.md b/context/gauges-hud.md index e9dc3cb..7225b7c 100644 --- a/context/gauges-hud.md +++ b/context/gauges-hud.md @@ -304,6 +304,13 @@ screen paint over the shared Eng plane, pinning it on the highest screen). Pixel `BT_PRESET_TEST=`, `BT_CTRLMAP_LOG`. ## pilotList (Comm KILLS/DEATHS) row semantics + the −1 [T1/T2] +**BUG (Gitea #43, 2026-07-24, rig-reproduced): in LIVE MP only the LOCAL row renders — remote +players never get a row.** The "2-player MP = 2 rows" below is decomp row SEMANTICS [T1], not a +verified MP observation (the audit's live evidence was solo-only). Suspect: +`BuildPilotArray`'s count loop (mechmppr.cpp:1133) sizes the roster via the binary's RAW +`entry+0x29 & 0x40` spectator-flag read on our compiled objects (databinding trap; the fill +loop's same check was already TODO-removed) → pilotCount latches 1 (build-once latch), +`GetPilot(1)` bounds-rejects the remote. Fix + MP re-verify pending — see the issue. One ROW PER PILOT in the mission (2-player MP = 2 rows — not duplicate displays). KILLS = `killCount` (the victim's ScoreMessageHandler credits the shooter cross-player, works for both rows); DEATHS = `Player::deathCount`: engine-inits to **−2** (PLAYER.cpp:759), the LOCAL