docs(gauge): scoring feed done (KILLS/SCORE track combat)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
34aaa7dda4
commit
99e2078b83
+15
-3
@@ -553,9 +553,21 @@ a prose-only vtable slot AVs on first call).
|
||||
msg-handler @4ae464 (the reconstructed @4afbe0 is MISLABELED = the MechControlsMapper) so a player valve
|
||||
toggle moves the slider AND changes heat flow. Add the Condenser OWN table (ValveSetting→coolantFlowScale) +
|
||||
#if 0 the heat.cpp Condenser dup-ctor stubs (the real heatfamily_reslice def currently wins by link order).
|
||||
- **Combat SCORING feed** (KILLS/SCORE/RANK): bring-up combat delivers Entity::TakeDamageMessage without
|
||||
posting BTPlayer ScoreMessages (ScoreInflicted @004c0200, ScoreMessageHandler @004c02e4, VehicleDead
|
||||
@004c012c) → killCount@0x27c/currentScore@0x278/playerRanking stay 0. Wire the weapon-death→ScoreMessage path.
|
||||
- ✅ **Combat SCORING feed** (KILLS/SCORE) — DONE (commit 34aaa7d; scoring-feed-decode workflow). The
|
||||
scoreboard read 0 for 4 reasons (none was handler logic — the ScoreMessage/VehicleDead/ScoreInflicted
|
||||
handlers were already reconstructed): (1) no producer — added the posts (per-hit ScoreInflicted at the
|
||||
beam/projectile dispatch; KillScore at the TARGET-DESTROYED edge; senderMechID = the VICTIM so the local
|
||||
player is credited via the !=our-mech branch; dispatched to GetMissionPlayer()); (2) cross-family Mech
|
||||
offsets → GetPlayerLink() + tonnage/bias stubs; (3) NULL scenarioRole → CalcInflictedScore returns the
|
||||
neutral (damage+bias); (4) ownerless-dummy null-guards. Plus the **databinding**: the PilotList read
|
||||
KILLS/DEATHS at raw offsets → repointed to the compiled members via BTPilotKills/BTPilotDeaths bridges.
|
||||
**⚠ ROOT-CAUSE of the empty scoreboard: the PilotList SELECT-TARGET highlight did a raw-offset deref
|
||||
(`*(local+0x284)` then `*(tgt+0x190)`) that AV'd on our layout — caught silently by the SEH GuardedExecute,
|
||||
aborting Execute BEFORE the KILLS/DEATHS draw. Replaced with BTPilotIsSelected (accessors).** And the
|
||||
10s console flush now only zeros currentScore when a console host exists (solo keeps the running score).
|
||||
**Verified: SCORE climbs +5.83/hit → 164; on the kill the Comm roster shows KILLS=1.** Follow-ups: DEATHS=1
|
||||
is a pre-existing spawn/respawn-handshake artifact (not the producers); RANK=-1 is CalcRanking's non-scoring
|
||||
mark (Plasma serial surface, invisible on dev); MP VehicleDead + tonnage/role registry remain. Env: BT_SCORE_LOG.
|
||||
- **duckState** writer (button-4 crouch lamp; only ctor-zeroed today).
|
||||
|
||||
### Phase 4 — DEEP/DEFERRED
|
||||
|
||||
Reference in New Issue
Block a user