Files
TeslaRel410/restoration/source410/BT
CydandClaude Fable 5 114ad9345e BT410 5.3.122: the pilot can punch out of the fire -- RealMaxSpeed, SetBurningState and ClearBurningState join the roster, and two more modes get names
Three of the six authentic Mech message handlers land, decomp-verified:

- RealMaxSpeed (@0049f604): adopt the streamed real-max-speed (+0x7a0,
  the 5-notch throttle quantizer base) only while our own is unknown
  (+0x7a4); wire payload at +0x1c, sender stamped by Entity's network
  send @0041f640.  The master-perf head's one-shot send stays staged
  with the EntityManager stream path.
- SetBurningState (@0049f674): the burning wreck parks in a per-host
  off-field slot -- x = localHostID x 10000, y = localHostID x -1000
  (data words @0049f6fc/@0049f6f8; the id is HostManager::
  GetLocalHostID, the same accessor the entity-instance dispatch
  compares against ownerID) -- and the mode alarm drops to 2: BURNING,
  the second InDeathTransition state, whose writer was the last missing
  piece of that predicate.  ForceUpdate(1) + AlwaysExecute (the
  binary's `flags &= ~2` IS DontExecuteFlag clearing).
- ClearBurningState (@0049f700): mode 0, same dirty/execute pair.

Decoded and recorded for the next sitting (MECH4.NOTES.md): BalanceCoolant
(@0049f728 mark + @0049f788 redistribute-with-gauge-blip; blocked on the
mech tail chain triple +0x7ac/+0x7bc/+0x7cc identity), and EjectPilot
(@0049f854, read end-to-end): the ejection gate is mech+0x414 -- the
combat-effectiveness census's consumer, found -- you can only punch out
of a CRIPPLED mech; ejection is mode 10 (why IsMechDestroyed tests >= 9)
plus a self-dispatched type-2 TakeDamage whose amount reads through the
mapper's +0x208 binding.

Soak: duck cycles green on the new build (7 volume swaps, crash-sig 0).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-06 19:36:42 -05:00
..