From 62fc8409b6c80dc755d6dcb798a570918c041421 Mon Sep 17 00:00:00 2001 From: Joe DiPrima Date: Fri, 31 Jul 2026 11:00:31 -0500 Subject: [PATCH] seek-4 verification harness (BT_FORCE_SEEK) + the full supercharge/overheat arc measured live BT_FORCE_SEEK= pins the seek gear in MyomersSimulation (env-gated bench; the eng-page toggle stays the authentic path) -- the supercharge loop was unreachable on a headless rig. Measured (Black Hawk, WALLTEST, full autodrive at gear 4): - cold: drive=1.42843 (exactly 0.9999/0.7), demand 87.85, actual run speed 53.7 u/s = 193 kph -- SUPERCHARGE (Oracle's pod figure: 182 for a 75-tonner; the 60t Black Hawk runs faster); - heat at ratio^2 = 2.04: myomer T 531 -> 1765 (deep past the 1000 degradation line); - heatFactor governor: drive 1.43 -> 1.10 -> 0.62 (the supercharged mech slows BELOW normal while cooked), coolant pulls T back (1765 -> 740), drive recovers to ~0.77, oscillates -- the mech self-settles into a thermally-limited cruise: 'top speed for less than a minute' exactly; - the hard freeze (drive -> 0: demand AND turn zeroed) is the same code path past failure temp, reachable when the coolant loop is compromised. Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_019Zh7PTkFy4KwTzVighLR9J --- game/reconstructed/myomers.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/game/reconstructed/myomers.cpp b/game/reconstructed/myomers.cpp index 8536a65..659b32a 100644 --- a/game/reconstructed/myomers.cpp +++ b/game/reconstructed/myomers.cpp @@ -516,6 +516,21 @@ void Myomers::MyomersSimulation(Scalar time_slice) // so the resulting state is identical to the binary's once-at-assembly. RegisterMaxOutput(); // @004b8ef0 + // BENCH (BT_FORCE_SEEK=): pin the seek gear without the eng-page + // button -- the seek-4 supercharge/overheat loop is otherwise unreachable + // on a headless rig. Env-gated, off by default; the toggle handler stays + // the authentic path. + { + static int s_forceSeek = -2; + if (s_forceSeek == -2) + { + const char *e = getenv("BT_FORCE_SEEK"); + s_forceSeek = (e != 0 && *e != '\0') ? atoi(e) : -1; + } + if (s_forceSeek >= 0 && s_forceSeek <= maxSeekVoltageIndex) + currentSeekVoltageIndex = s_forceSeek; + } + // 1. @004b8bab -- the base electrical state machine. MUST come first, and // must precede any heat-model gate: OwnerAdvancedDamage() is off below // veteran, so gating ahead of this denied the machine to most pilots.