Files
BT411/scratchpad/night17/seek21_bench.sh
T

34 lines
1.6 KiB
Bash

#!/usr/bin/env bash
# #21 CORRECTION bench (2026-08-13): the faithful overcharge clamp.
#
# THE OLD SHAPE (21b2bfc, 2026-07-21): 2.5 min of BT_SEEKTEST abuse (dispatches
# the SAME ReceiverDataMessageOf id-0xb press the clickable seek button sends,
# every ~2s) bricked the laser pre-rescue and produced "38 overcharge rescues"
# post-rescue.
#
# THE NEW PASS (post-correction -- _DAT_004ba830 is a DOUBLE 1.0, overcharge
# clamps rechargeLevel to EXACTLY 1.0f):
# 1. gear cycling happens, including WRAPS past top (prev > next skips
# ResetFiringState -- the overcharge composition);
# 2. overcharge compositions observed ([seek] gear-switch lines where the
# in-flight level lands ABOVE the new gear's snap window, level > 1.01*seekV);
# 3. the weapon KEEPS FIRING after the last overcharge (no dark state);
# 4. gauges non-zero: [fire-probe] pct=1 (rechargeLevel, the recharge-dial
# source) seen after the last overcharge;
# 5. ZERO "rescue" prints anywhere in the log (the rescue block is gone).
set -x
. /c/git/bt411/scratchpad/night6/bench_common.sh
cd /c/git/bt411/content || exit 1
taskkill //F //IM btl4.exe >/dev/null 2>&1; sleep 3
rm -f sk21.log
bt_expert_egg MP.EGG SK21.EGG
sed -i "s/^map=.*/map=grass/; s/^time=.*/time=day/; s/^vehicle=.*/vehicle=vulture/" SK21.EGG
( export BT_SEEKTEST=1 BT_AUTOFIRE=1 BT_FIRE_AT_ICON=1
export BT_SEEK_LOG=1 BT_FIRE_LOG=1 BT_DMG_LOG=1
bt_launch sk21.log SK21.EGG 0x03 )
sleep 160
bt_kill_ours; sleep 2; taskkill //F //IM btl4.exe >/dev/null 2>&1
python /c/git/bt411/scratchpad/night17/seek21_check.py /c/git/bt411/content/sk21.log