sots-re/verify/results/shim/ar/ar-r2-shim.log
alex df9431be64 AR: the raid target pick FIRES - TradeManager+0x0c is the per-system containing-sector table
Decides lane AG's section 3.3 final paragraph, which lane AD correctly reported
it could not separate on sector 832.

STATIC: FUN_00841700 is the writer AG's section 7 lists as not found. It resizes
the +0x0c vector to the length of the systems vector -- the container trfr indexes
-- and fills it with containingSector[system.Idx] = sector. It runs from the
deserialiser, so a loaded save has it populated. G_B1a cannot reject a valid trfr.

LIVE: four raiders parked (2 CR on sector 832, 2 DE on sector 816), probes=8.
Slot13RngCalleeA entered 4x/turn at 4 words every turn; on turn 42 the pick fired
at 0x0088b613, calls=1 words=1, and the tail cost 5 words against 4 elsewhere.
The same run carries its own control: B entered on 832 twice at 0 words.

B costs ONE word, not two: FUN_00820af0's third short-circuit is a flag word
InitTable sets only for Human and Zuul, so AG's committed 3-words-on-success is 2.

Two hooks=off processes gave byte-identical autosaves, and so did a probes=8
process -- an oracle pair and a whole-save byte-neutrality proof for the
instrument, both firsts on this lineage.

Also first firings of 0x008939ee (rule 20's case study) and 0x00820c1b.
2026-09-09 00:36:32 -04:00

119 lines
12 KiB
Text

00:23:29.854 [tid 6236] ==== sots-engine shim (binkw32 proxy) build ar-989c692-20260909T0313Z ====
00:23:29.854 [tid 6236] exe: C:\SOTS\Sword of the Stars.exe
00:23:29.854 [tid 6236] exe base=0x00210000 (link-time image base 0x00400000, ASLR delta -2031616) pid=7128 shim=72a50000
00:23:29.854 [tid 6236] addresses: Source: sots-re ghidra/addresses.json @ 48db3cc, generated 2026-09-08 by tools/gen_addresses.py
00:23:29.854 [tid 6236] config: hooks=trace
00:23:29.854 [tid 6236] config: hook.Shim::SelfTest::Fill=off
00:23:29.854 [tid 6236] config: hook.Mars::GlobalConsts::LoadFile=off
00:23:29.854 [tid 6236] config: hook.Game::WeaponDictionary::Init=off
00:23:29.854 [tid 6236] config: hook.Game::SectionDictionary::SectionDictionary=off
00:23:29.854 [tid 6236] config: hook.Game::ServerPlayer::ComputeBudget=off
00:23:29.854 [tid 6236] config: hook.Game::TechTree::ProcessResearch=off
00:23:29.854 [tid 6236] config: hook.Game::ServerPlayer::OnTechResearched=off
00:23:29.854 [tid 6236] config: hook.Game::ServerSystem::ProcessTurn=off
00:23:29.854 [tid 6236] config: hook.Game::ServerPlayer::ProcessTurn=off
00:23:29.854 [tid 6236] config: hook.Game::ServerSystem::GroupOutput=off
00:23:29.854 [tid 6236] config: hook.Game::ServerSystem::ComputeTotalOutput=off
00:23:29.854 [tid 6236] config: hook.Game::StrategyServer::MoveFleet=off
00:23:29.854 [tid 6236] config: hook.Game::StrategyServer::ProcessFleetMovement=off
00:23:29.854 [tid 6236] config: hook.Game::StrategyHost::Autosave=trace
00:23:29.854 [tid 6236] config: hook.Game::StrategyServer::ProcessTurn=trace
00:23:29.854 [tid 6236] config: hook.Game::StrategyServer::OnAllCombatDone_Tail=trace
00:23:29.854 [tid 6236] config: hook.Game::StrategyServer::ApplyEncounterResult=trace
00:23:29.854 [tid 6236] config: hook.Game::StrategyServer::NodeLineDecay=trace
00:23:29.854 [tid 6236] config: hook.Game::StrategyServer::ProcessNodeSpaceTravel=trace
00:23:29.854 [tid 6236] config: hook.Game::EncounterDetect::AssignContacts=trace
00:23:29.854 [tid 6236] config: hook.Game::EncounterDetect::ProcessTeamRecord=trace
00:23:29.854 [tid 6236] config: fpu.sample_turn=off
00:23:29.854 [tid 6236] config: fpu.sample_ticks=off
00:23:29.854 [tid 6236] config: trace.inline_max=64
00:23:29.854 [tid 6236] config: trace.path=C:\SOTS\shim.trace.jsonl
00:23:29.854 [tid 6236] config: trace.flush=always
00:23:29.854 [tid 6236] config: probes=8 -> 8 lane-H entry probes
00:23:29.916 [tid 6236] trace: C:\SOTS\shim.trace.jsonl (default mode trace, inline_max 64, flush always)
00:23:29.916 [tid 6236] hook: Mars_Application_Initialize rva=0x004a0e50 -> va=006b0e50
00:23:29.916 [tid 6236] hook: MH_Initialize -> MH_OK
00:23:29.916 [tid 6236] hook: MH_CreateHook -> MH_OK (trampoline=01170fe0)
00:23:29.947 [tid 6236] hook: MH_EnableHook -> MH_OK
00:23:29.947 [tid 6236] cfg: GlobalConsts hook ready (scale constant 0.017453292519943295)
00:23:29.947 [tid 6236] hook: Mars::GlobalConsts::LoadFile rva=0x004b73c0 mode=off (not installed)
00:23:29.947 [tid 6236] dict: dictionaries hook ready (crt new=74b3232b delete=74b30174)
00:23:29.947 [tid 6236] hook: Game::WeaponDictionary::Init rva=0x0019a4c0 mode=off (not installed)
00:23:29.947 [tid 6236] hook: Game::SectionDictionary::SectionDictionary rva=0x00176f40 mode=off (not installed)
00:23:29.947 [tid 6236] research: ProcessResearch hook ready (Cost=0038da00, node=0x34, rng=0x9cc, fpu_cw=0x027f)
00:23:29.947 [tid 6236] hook: Game::TechTree::ProcessResearch rva=0x001876c0 mode=off (not installed)
00:23:29.947 [tid 6236] techfx: OnTechResearched hook ready (regions=15, gate=0/0, fpu_cw=0x027f)
00:23:29.947 [tid 6236] hook: Game::ServerPlayer::OnTechResearched rva=0x00491790 mode=off (not installed)
00:23:29.947 [tid 6236] hook: Game::ServerPlayer::ComputeBudget rva=0x00463030 mode=off (not installed)
00:23:29.947 [tid 6236] hook: Game::ServerSystem::ProcessTurn rva=0x003598e0 mode=off (not installed)
00:23:29.947 [tid 6236] hook: Game::ServerSystem::GroupOutput rva=0x0034b7a0 mode=off (not installed)
00:23:29.947 [tid 6236] hook: Game::ServerSystem::ComputeTotalOutput rva=0x00350480 mode=off (not installed)
00:23:29.947 [tid 6236] player_turn: ServerPlayer::ProcessTurn hook armed (ratio helper at 0038e950)
00:23:29.947 [tid 6236] hook: Game::ServerPlayer::ProcessTurn rva=0x00491340 mode=off (not installed)
00:23:29.947 [tid 6236] hook: Game::StrategyServer::MoveFleet rva=0x003d9ee0 mode=off (not installed)
00:23:29.947 [tid 6236] hook: Game::StrategyServer::ProcessFleetMovement rva=0x003da9a0 mode=off (not installed)
00:23:29.947 [tid 6236] hook: Game::StrategyHost::Autosave rva=0x00495210 -> va=006a5210 MH_CreateHook -> MH_OK (trampoline=01170fc0)
00:23:29.963 [tid 6236] hook: Game::StrategyHost::Autosave MH_EnableHook -> MH_OK mode=trace
00:23:29.963 [tid 6236] hook: Game::StrategyServer::ProcessTurn rva=0x003dc6c0 -> va=005ec6c0 MH_CreateHook -> MH_OK (trampoline=01170fa0)
00:23:29.979 [tid 6236] hook: Game::StrategyServer::ProcessTurn MH_EnableHook -> MH_OK mode=trace
00:23:29.979 [tid 6236] hook: Game::StrategyServer::OnAllCombatDone_Tail rva=0x003d92a0 -> va=005e92a0 MH_CreateHook -> MH_OK (trampoline=01170f80)
00:23:29.994 [tid 6236] hook: Game::StrategyServer::OnAllCombatDone_Tail MH_EnableHook -> MH_OK mode=trace
00:23:29.994 [tid 6236] hook: Game::StrategyServer::ApplyEncounterResult rva=0x003d8920 -> va=005e8920 MH_CreateHook -> MH_OK (trampoline=01170f60)
00:23:30.010 [tid 6236] hook: Game::StrategyServer::ApplyEncounterResult MH_EnableHook -> MH_OK mode=trace
00:23:30.010 [tid 6236] hook: Game::StrategyServer::NodeLineDecay rva=0x003ae010 -> va=005be010 MH_CreateHook -> MH_OK (trampoline=01170f40)
00:23:30.025 [tid 6236] hook: Game::StrategyServer::NodeLineDecay MH_EnableHook -> MH_OK mode=trace
00:23:30.025 [tid 6236] hook: Game::StrategyServer::ProcessNodeSpaceTravel rva=0x003a0e20 -> va=005b0e20 MH_CreateHook -> MH_OK (trampoline=01170f20)
00:23:30.057 [tid 6236] hook: Game::StrategyServer::ProcessNodeSpaceTravel MH_EnableHook -> MH_OK mode=trace
00:23:30.057 [tid 6236] hook: Game::EncounterDetect::AssignContacts rva=0x003aa240 -> va=005ba240 MH_CreateHook -> MH_OK (trampoline=01170f00)
00:23:30.072 [tid 6236] hook: Game::EncounterDetect::AssignContacts MH_EnableHook -> MH_OK mode=trace
00:23:30.072 [tid 6236] hook: Game::EncounterDetect::ProcessTeamRecord rva=0x003ca640 -> va=005da640 MH_CreateHook -> MH_OK (trampoline=01170ee0)
00:23:30.088 [tid 6236] hook: Game::EncounterDetect::ProcessTeamRecord MH_EnableHook -> MH_OK mode=trace
00:23:30.088 [tid 6236] hook: Game::StrategyServer::BeginProcessTurn rva=0x003d98e0 -> va=005e98e0 MH_CreateHook -> MH_OK (trampoline=01170ec0)
00:23:30.119 [tid 6236] hook: Game::StrategyServer::BeginProcessTurn MH_EnableHook -> MH_OK mode=trace
00:23:30.119 [tid 6236] hook: Game::SVSOSwarmQueen::OnTurnBegin rva=0x00129930 -> va=00339930 MH_CreateHook -> MH_OK (trampoline=01170ea0)
00:23:30.135 [tid 6236] hook: Game::SVSOSwarmQueen::OnTurnBegin MH_EnableHook -> MH_OK mode=trace
00:23:30.135 [tid 6236] hook: Game::SVSOSwarmQueen::RegisterHives rva=0x00127630 -> va=00337630 MH_CreateHook -> MH_OK (trampoline=01170e80)
00:23:30.151 [tid 6236] hook: Game::SVSOSwarmQueen::RegisterHives MH_EnableHook -> MH_OK mode=trace
00:23:30.151 [tid 6236] hook: Game::SVSOSwarmQueen::TickHives rva=0x00127770 -> va=00337770 MH_CreateHook -> MH_OK (trampoline=01170e60)
00:23:30.166 [tid 6236] hook: Game::SVSOSwarmQueen::TickHives MH_EnableHook -> MH_OK mode=trace
00:23:30.166 [tid 6236] hook: Game::SVSOSlaversRefuel::UpdateDifficultyTier rva=0x00115820 -> va=00325820 MH_CreateHook -> MH_OK (trampoline=01170e40)
00:23:30.182 [tid 6236] hook: Game::SVSOSlaversRefuel::UpdateDifficultyTier MH_EnableHook -> MH_OK mode=trace
00:23:30.182 [tid 6236] hook: Mars::RNG::Seed rva=0x0009fdf0 -> va=002afdf0 MH_CreateHook -> MH_OK (trampoline=01170e20)
00:23:30.197 [tid 6236] hook: Mars::RNG::Seed MH_EnableHook -> MH_OK mode=trace
00:23:30.197 [tid 6236] hook: Game::StrategyApp::RunAI rva=0x004706f0 -> va=006806f0 MH_CreateHook -> MH_OK (trampoline=01170e00)
00:23:30.229 [tid 6236] hook: Game::StrategyApp::RunAI MH_EnableHook -> MH_OK mode=trace
00:23:30.244 [tid 6236] drawsite: Mars::RNG::NextFloat rva=0x0007d830 -> va=0028d830 create=MH_OK enable=MH_OK
00:23:30.260 [tid 6236] drawsite: Mars::RNG::NextInt rva=0x000271c0 -> va=002371c0 create=MH_OK enable=MH_OK
00:23:30.276 [tid 6236] drawsite: Mars::RNG::Chance rva=0x004e6dd0 -> va=006f6dd0 create=MH_OK enable=MH_OK
00:23:30.291 [tid 6236] drawsite: Mars::RNG::NextUInt rva=0x000f7670 -> va=00307670 create=MH_OK enable=MH_OK
00:23:30.307 [tid 6236] drawsite: Mars::RNG::FloatRange rva=0x0007d8a0 -> va=0028d8a0 create=MH_OK enable=MH_OK
00:23:30.338 [tid 6236] drawsite: Mars::RNG::IntRangeBell rva=0x004e6d80 -> va=006f6d80 create=MH_OK enable=MH_OK
00:23:30.354 [tid 6236] drawsite: Mars::RNG::GaussianRange rva=0x004e6e30 -> va=006f6e30 create=MH_OK enable=MH_OK
00:23:30.354 [tid 6236] probe: installing 8 of 12 (probes= in shim.cfg)
00:23:30.369 [tid 6236] probe: Game::ServerSpyManager::vslot13 rva=0x004877b0 -> va=006977b0 create=MH_OK enable=MH_OK
00:23:30.385 [tid 6236] probe: Game::ServerSpyManager::vslot14 rva=0x0048db80 -> va=0069db80 create=MH_OK enable=MH_OK
00:23:30.401 [tid 6236] probe: Game::ServerTradeManagerImpl::vslot13 rva=0x0048ef80 -> va=0069ef80 create=MH_OK enable=MH_OK
00:23:30.416 [tid 6236] probe: Game::ServerTradeManagerImpl::vslot15 rva=0x0042cca0 -> va=0063cca0 create=MH_OK enable=MH_OK
00:23:30.432 [tid 6236] probe: Game::SpyManager::Slot13RngCallee rva=0x004408e0 -> va=006508e0 create=MH_OK enable=MH_OK
00:23:30.463 [tid 6236] probe: Game::TradeManager::Slot13RngCalleeA rva=0x00420ca0 -> va=00630ca0 create=MH_OK enable=MH_OK
00:23:30.479 [tid 6236] probe: Game::TradeManager::Slot13RngCalleeB rva=0x0048b440 -> va=0069b440 create=MH_OK enable=MH_OK
00:23:30.494 [tid 6236] probe: Game::ServerTradeManager::CreateRaidEncounter rva=0x004938a0 -> va=006a38a0 create=MH_OK enable=MH_OK
00:23:30.494 [tid 6236] watch: disabled (watch=off)
00:23:30.494 [tid 6236] aiorders: disabled (aiorders=off)
00:23:30.494 [tid 6236] fpu: module init, entry cw=0x027f 53bit-double/nearest; force=off value=0x0000 sample_ticks=off
00:23:30.494 [tid 6236] fpu: sample_turn=off (off releases StrategyServer::ProcessTurn for another hook)
00:23:30.494 [tid 6236] fpu: StrategyClient::EndTurn rva=0x00383be0 -> va=00593be0 MH_CreateHook -> MH_OK (trampoline=01170c00)
00:23:30.510 [tid 6236] fpu: StrategyClient::EndTurn MH_EnableHook -> MH_OK
00:23:30.510 [tid 6236] fpu: StrategyServer::BeginProcessTurn rva=0x003d98e0 -> va=005e98e0 MH_CreateHook -> MH_ERROR_ALREADY_CREATED (trampoline=00000000)
00:23:30.510 [tid 6236] fpu: StrategyServer::ProcessTurn rva=0x003dc6c0 not installed (sampler off)
00:23:30.510 [tid 6236] fpu: DemoApp::OnTick rva=0x0049a640 not installed (sampler off)
00:23:30.510 [tid 6236] selftest: Shim::SelfTest::Fill mode=off checksum=075ef0c3 records=0
00:23:30.526 [tid 6236] Application::Initialize called (this=03348128)
00:27:45.137 [tid 6236] fpu: sample at StrategyClient::EndTurn (this=0e23f478): cw=0x127f 53bit-double/nearest [no fpu.force configured]
00:27:48.309 [tid 6236] fpu: sample at StrategyClient::EndTurn (this=34e00038): cw=0x127f 53bit-double/nearest [no fpu.force configured]
00:27:48.325 [tid 6236] fpu: sample at StrategyClient::EndTurn (this=34e074b8): cw=0x127f 53bit-double/nearest [no fpu.force configured]
00:27:48.387 [tid 6236] fpu: sample at StrategyClient::EndTurn (this=34e00780): cw=0x127f 53bit-double/nearest [no fpu.force configured]
00:29:38.215 [tid 6236] fpu: sample at StrategyClient::EndTurn (this=0e23f478): cw=0x127f 53bit-double/nearest [no fpu.force configured]
00:29:41.340 [tid 6236] fpu: sample at StrategyClient::EndTurn (this=34e00038): cw=0x127f 53bit-double/nearest [no fpu.force configured]
00:29:41.387 [tid 6236] fpu: sample at StrategyClient::EndTurn (this=34e074b8): cw=0x127f 53bit-double/nearest [no fpu.force configured]
00:29:41.434 [tid 6236] fpu: sample at StrategyClient::EndTurn (this=34e00780): cw=0x127f 53bit-double/nearest [no fpu.force configured]