This website requires JavaScript.
Explore
Help
Register
Sign In
vwemirror
/
BT411
Watch
1
Star
0
Fork
0
Code
Issues
Pull Requests
Actions
Packages
Projects
Releases
Wiki
Activity
Files
25ed1ca6271e60a04bd22776ea362e2f05160f59
BT411
/
game
T
History
Joe DiPrima
25ed1ca627
#21
closed at the true root + 'arcade shipped a brick' RETRACTED (era witnesses 6-0): _DAT_004ba830 is a DOUBLE 1.0, not float 0.0 -- the entire brick claim was a constant-width misread (dword read of a qword; the low half of 1.0's mantissa is zeros). Binary truth [T1 raw disasm @004ba738]: overcharge CLAMPS to exactly 1.0f, the ==1.0 Loaded test passes next tick, the weapon fires the stored charge at normal top-gear damage (divisor is the recommended gear). Fix: clamp corrected to 1.0f; the rescue scaffolding REMOVED (it patched our own misread -- 38 'rescues' were 38 events the machine silently clamped); gauge-side zeroing inherits the fix, which is almost certainly
#21
's ORIGINAL field symptom (dark recharge arc + dark ready-dot = the dial reading our zeroed ratio while the rescue kept the weapon firing). seek21 bench PASS: 65 switches / 16 wraps / 9 overcharges -> fires through all, 13 post-overcharge gauge probes FULL, zero rescue prints. Docs: field guide section 2 rewritten as settled-by-testimony (credit to the group), decomp-reference block retracted with extracted constants, drift audit energy lane -> FAITHFUL, ZERO deviations. The witnesses' 'nah, that didn't happen' was worth eight bytes read at full width
2026-08-13 17:59:24 -05:00
..
fwd
Initial commit: bt411 -- standalone Windows BattleTech (Tesla 4.10 port)
2026-07-05 21:03:40 -05:00
glass
#170
root-caused + fixed: the
#163
SteamAPI_Shutdown was the crash -- at round end every peer's close events are ALWAYS in flight, and Shutdown tears client state down while steamclient's own service thread dispatches them (the field stack: a steamclient worker calling literal NULL, zero btl4 frames, 7 hits / 3 machines / one module-relative stack). BTSteamNet_ShutdownAll is now a QUIESCE: steamActive gated FIRST, linger closes ('round over' not timeouts), one SNS drain, 60ms grace, NO SteamAPI_Shutdown -- and every exit path dies via TerminateProcess (menu-quit no longer returns through the CRT; it uses BTOrderlyDie like everything else, so the 883 detach deadlock stays dead too). Status callback guarded for the dying window. Crash filter now names foreign DLL frames (module+offset via VirtualQuery/GetModuleFileName) so the next foreign-thread crash arrives pre-symbolized. Exit contract: steam-networking.md
2026-08-12 23:23:23 -05:00
original
SeekVoltageGraph: full reconstruction -- the eng-page POWER graph + top-box eraser (Gitea
#11
)
2026-07-19 20:27:39 -05:00
reconstructed
#21
closed at the true root + 'arcade shipped a brick' RETRACTED (era witnesses 6-0): _DAT_004ba830 is a DOUBLE 1.0, not float 0.0 -- the entire brick claim was a constant-width misread (dword read of a qword; the low half of 1.0's mantissa is zeros). Binary truth [T1 raw disasm @004ba738]: overcharge CLAMPS to exactly 1.0f, the ==1.0 Loaded test passes next tick, the weapon fires the stored charge at normal top-gear damage (divisor is the recommended gear). Fix: clamp corrected to 1.0f; the rescue scaffolding REMOVED (it patched our own misread -- 38 'rescues' were 38 events the machine silently clamped); gauge-side zeroing inherits the fix, which is almost certainly
#21
's ORIGINAL field symptom (dark recharge arc + dark ready-dot = the dial reading our zeroed ratio while the rescue kept the weapon firing). seek21 bench PASS: 65 switches / 16 wraps / 9 overcharges -> fires through all, 13 post-overcharge gauge probes FULL, zero rescue prints. Docs: field guide section 2 rewritten as settled-by-testimony (credit to the group), decomp-reference block retracted with extracted constants, drift audit energy lane -> FAITHFUL, ZERO deviations. The witnesses' 'nah, that didn't happen' was worth eight bytes read at full width
2026-08-13 17:59:24 -05:00
btl4main.cpp
one night = ONE log file: the 8MB size roll-over retired (it cost field evidence the moment it existed -- night16: Elengil's incident window sat in an unsent pre-rotation part; testers attach 'the log' = the newest part). The 6am log-day boundary stays. Transport moves to players/SENDLOGS.bat (ships at the dist root): one double-click zips every log/matchlog/lastrun from the last 36h to a Desktop BTLOGS_<machine>_<date>.zip (~10:1 text compression -- a 13MB night = 1.8MB, well under Discord's 10MB free cap, which is what the roll-over was protecting against). Handout HOW TO REPORT updated; mkdist carries the bat
2026-08-13 00:45:21 -05:00