From as-turn15-spydeployed.sav, 11 End Turns under probes=8. Detection at Frame 22, P at Frame 25: 0x00840a3c 1 call / 1 word, the first firing of any of P's sites. 0x00840929 and 0x008409c7 are the MORRIGI branch and cannot be reached in a Human game - correcting every inventory that lists them as three sites behind one gate. The counter-mission roll 0x0088dc43 fires from Frame 19 (corpus was 0 of 22) and the deploy NextFloat 0x0078c97f is measured with cbh reproducing lane AS's value bit for bit. Species table decoded, which also names AS's 0.75f as Zuul and 0.5f as Morrigi. Two corrections to lane AG 3.2 (CnTrd is the target's; ncp is a scalar counter). PB4 was wrong and is named: the trade-raid roll entered the tail at Frame 20, re-confirming lane AD's per-fleet model. Control pair disagrees (three outcomes in six processes) - not a calibration pair - and probes=8 is byte-identical to a control over 44,438 leaves. Exposure fields recorded per turn: saturated on this map.
147 lines
16 KiB
Text
147 lines
16 KiB
Text
00:32:14.211 [tid 8036] ==== sots-engine shim (binkw32 proxy) build ap-989c692-20260909T0425Z ====
|
|
00:32:14.211 [tid 8036] exe: C:\SOTS\Sword of the Stars.exe
|
|
00:32:14.211 [tid 8036] exe base=0x006b0000 (link-time image base 0x00400000, ASLR delta +2818048) pid=8872 shim=72b60000
|
|
00:32:14.211 [tid 8036] addresses: Source: sots-re ghidra/addresses.json @ 48db3cc, generated 2026-09-08 by tools/gen_addresses.py
|
|
00:32:14.211 [tid 8036] config: hooks=trace
|
|
00:32:14.211 [tid 8036] config: hook.Shim::SelfTest::Fill=off
|
|
00:32:14.211 [tid 8036] config: hook.Mars::GlobalConsts::LoadFile=off
|
|
00:32:14.211 [tid 8036] config: hook.Game::WeaponDictionary::Init=off
|
|
00:32:14.211 [tid 8036] config: hook.Game::SectionDictionary::SectionDictionary=off
|
|
00:32:14.211 [tid 8036] config: hook.Game::ServerPlayer::ComputeBudget=off
|
|
00:32:14.211 [tid 8036] config: hook.Game::TechTree::ProcessResearch=off
|
|
00:32:14.211 [tid 8036] config: hook.Game::ServerPlayer::OnTechResearched=off
|
|
00:32:14.211 [tid 8036] config: hook.Game::ServerSystem::ProcessTurn=off
|
|
00:32:14.211 [tid 8036] config: hook.Game::ServerPlayer::ProcessTurn=off
|
|
00:32:14.211 [tid 8036] config: hook.Game::ServerSystem::GroupOutput=off
|
|
00:32:14.211 [tid 8036] config: hook.Game::ServerSystem::ComputeTotalOutput=off
|
|
00:32:14.211 [tid 8036] config: hook.Game::StrategyServer::MoveFleet=off
|
|
00:32:14.211 [tid 8036] config: hook.Game::StrategyServer::ProcessFleetMovement=off
|
|
00:32:14.211 [tid 8036] config: hook.Game::StrategyHost::Autosave=trace
|
|
00:32:14.211 [tid 8036] config: hook.Game::StrategyServer::ProcessTurn=trace
|
|
00:32:14.211 [tid 8036] config: hook.Game::StrategyServer::OnAllCombatDone_Tail=trace
|
|
00:32:14.211 [tid 8036] config: hook.Game::StrategyServer::ApplyEncounterResult=trace
|
|
00:32:14.211 [tid 8036] config: hook.Game::StrategyServer::NodeLineDecay=trace
|
|
00:32:14.211 [tid 8036] config: hook.Game::StrategyServer::ProcessNodeSpaceTravel=trace
|
|
00:32:14.211 [tid 8036] config: hook.Game::EncounterDetect::AssignContacts=trace
|
|
00:32:14.211 [tid 8036] config: hook.Game::EncounterDetect::ProcessTeamRecord=trace
|
|
00:32:14.211 [tid 8036] config: fpu.sample_turn=off
|
|
00:32:14.211 [tid 8036] config: fpu.sample_ticks=off
|
|
00:32:14.211 [tid 8036] config: trace.inline_max=64
|
|
00:32:14.211 [tid 8036] config: trace.path=C:\SOTS\shim.trace.jsonl
|
|
00:32:14.211 [tid 8036] config: trace.flush=always
|
|
00:32:14.211 [tid 8036] config: probes=8 -> 8 lane-H entry probes
|
|
00:32:14.274 [tid 8036] trace: C:\SOTS\shim.trace.jsonl (default mode trace, inline_max 64, flush always)
|
|
00:32:14.274 [tid 8036] hook: Mars_Application_Initialize rva=0x004a0e50 -> va=00b50e50
|
|
00:32:14.274 [tid 8036] hook: MH_Initialize -> MH_OK
|
|
00:32:14.274 [tid 8036] hook: MH_CreateHook -> MH_OK (trampoline=013f0fe0)
|
|
00:32:14.305 [tid 8036] hook: MH_EnableHook -> MH_OK
|
|
00:32:14.305 [tid 8036] cfg: GlobalConsts hook ready (scale constant 0.017453292519943295)
|
|
00:32:14.305 [tid 8036] hook: Mars::GlobalConsts::LoadFile rva=0x004b73c0 mode=off (not installed)
|
|
00:32:14.305 [tid 8036] dict: dictionaries hook ready (crt new=74c4232b delete=74c40174)
|
|
00:32:14.305 [tid 8036] hook: Game::WeaponDictionary::Init rva=0x0019a4c0 mode=off (not installed)
|
|
00:32:14.305 [tid 8036] hook: Game::SectionDictionary::SectionDictionary rva=0x00176f40 mode=off (not installed)
|
|
00:32:14.305 [tid 8036] research: ProcessResearch hook ready (Cost=0082da00, node=0x34, rng=0x9cc, fpu_cw=0x027f)
|
|
00:32:14.305 [tid 8036] hook: Game::TechTree::ProcessResearch rva=0x001876c0 mode=off (not installed)
|
|
00:32:14.305 [tid 8036] techfx: OnTechResearched hook ready (regions=15, gate=0/0, fpu_cw=0x027f)
|
|
00:32:14.305 [tid 8036] hook: Game::ServerPlayer::OnTechResearched rva=0x00491790 mode=off (not installed)
|
|
00:32:14.305 [tid 8036] hook: Game::ServerPlayer::ComputeBudget rva=0x00463030 mode=off (not installed)
|
|
00:32:14.305 [tid 8036] hook: Game::ServerSystem::ProcessTurn rva=0x003598e0 mode=off (not installed)
|
|
00:32:14.305 [tid 8036] hook: Game::ServerSystem::GroupOutput rva=0x0034b7a0 mode=off (not installed)
|
|
00:32:14.305 [tid 8036] hook: Game::ServerSystem::ComputeTotalOutput rva=0x00350480 mode=off (not installed)
|
|
00:32:14.305 [tid 8036] player_turn: ServerPlayer::ProcessTurn hook armed (ratio helper at 0082e950)
|
|
00:32:14.305 [tid 8036] hook: Game::ServerPlayer::ProcessTurn rva=0x00491340 mode=off (not installed)
|
|
00:32:14.305 [tid 8036] hook: Game::StrategyServer::MoveFleet rva=0x003d9ee0 mode=off (not installed)
|
|
00:32:14.305 [tid 8036] hook: Game::StrategyServer::ProcessFleetMovement rva=0x003da9a0 mode=off (not installed)
|
|
00:32:14.305 [tid 8036] hook: Game::StrategyHost::Autosave rva=0x00495210 -> va=00b45210 MH_CreateHook -> MH_OK (trampoline=013f0fc0)
|
|
00:32:14.321 [tid 8036] hook: Game::StrategyHost::Autosave MH_EnableHook -> MH_OK mode=trace
|
|
00:32:14.321 [tid 8036] hook: Game::StrategyServer::ProcessTurn rva=0x003dc6c0 -> va=00a8c6c0 MH_CreateHook -> MH_OK (trampoline=013f0fa0)
|
|
00:32:14.336 [tid 8036] hook: Game::StrategyServer::ProcessTurn MH_EnableHook -> MH_OK mode=trace
|
|
00:32:14.336 [tid 8036] hook: Game::StrategyServer::OnAllCombatDone_Tail rva=0x003d92a0 -> va=00a892a0 MH_CreateHook -> MH_OK (trampoline=013f0f80)
|
|
00:32:14.336 [tid 8036] hook: Game::StrategyServer::OnAllCombatDone_Tail MH_EnableHook -> MH_OK mode=trace
|
|
00:32:14.336 [tid 8036] hook: Game::StrategyServer::ApplyEncounterResult rva=0x003d8920 -> va=00a88920 MH_CreateHook -> MH_OK (trampoline=013f0f60)
|
|
00:32:14.352 [tid 8036] hook: Game::StrategyServer::ApplyEncounterResult MH_EnableHook -> MH_OK mode=trace
|
|
00:32:14.352 [tid 8036] hook: Game::StrategyServer::NodeLineDecay rva=0x003ae010 -> va=00a5e010 MH_CreateHook -> MH_OK (trampoline=013f0f40)
|
|
00:32:14.367 [tid 8036] hook: Game::StrategyServer::NodeLineDecay MH_EnableHook -> MH_OK mode=trace
|
|
00:32:14.367 [tid 8036] hook: Game::StrategyServer::ProcessNodeSpaceTravel rva=0x003a0e20 -> va=00a50e20 MH_CreateHook -> MH_OK (trampoline=013f0f20)
|
|
00:32:14.383 [tid 8036] hook: Game::StrategyServer::ProcessNodeSpaceTravel MH_EnableHook -> MH_OK mode=trace
|
|
00:32:14.383 [tid 8036] hook: Game::EncounterDetect::AssignContacts rva=0x003aa240 -> va=00a5a240 MH_CreateHook -> MH_OK (trampoline=013f0f00)
|
|
00:32:14.399 [tid 8036] hook: Game::EncounterDetect::AssignContacts MH_EnableHook -> MH_OK mode=trace
|
|
00:32:14.399 [tid 8036] hook: Game::EncounterDetect::ProcessTeamRecord rva=0x003ca640 -> va=00a7a640 MH_CreateHook -> MH_OK (trampoline=013f0ee0)
|
|
00:32:14.414 [tid 8036] hook: Game::EncounterDetect::ProcessTeamRecord MH_EnableHook -> MH_OK mode=trace
|
|
00:32:14.414 [tid 8036] hook: Game::StrategyServer::BeginProcessTurn rva=0x003d98e0 -> va=00a898e0 MH_CreateHook -> MH_OK (trampoline=013f0ec0)
|
|
00:32:14.430 [tid 8036] hook: Game::StrategyServer::BeginProcessTurn MH_EnableHook -> MH_OK mode=trace
|
|
00:32:14.430 [tid 8036] hook: Game::SVSOSwarmQueen::OnTurnBegin rva=0x00129930 -> va=007d9930 MH_CreateHook -> MH_OK (trampoline=013f0ea0)
|
|
00:32:14.446 [tid 8036] hook: Game::SVSOSwarmQueen::OnTurnBegin MH_EnableHook -> MH_OK mode=trace
|
|
00:32:14.446 [tid 8036] hook: Game::SVSOSwarmQueen::RegisterHives rva=0x00127630 -> va=007d7630 MH_CreateHook -> MH_OK (trampoline=013f0e80)
|
|
00:32:14.461 [tid 8036] hook: Game::SVSOSwarmQueen::RegisterHives MH_EnableHook -> MH_OK mode=trace
|
|
00:32:14.461 [tid 8036] hook: Game::SVSOSwarmQueen::TickHives rva=0x00127770 -> va=007d7770 MH_CreateHook -> MH_OK (trampoline=013f0e60)
|
|
00:32:14.477 [tid 8036] hook: Game::SVSOSwarmQueen::TickHives MH_EnableHook -> MH_OK mode=trace
|
|
00:32:14.477 [tid 8036] hook: Game::SVSOSlaversRefuel::UpdateDifficultyTier rva=0x00115820 -> va=007c5820 MH_CreateHook -> MH_OK (trampoline=013f0e40)
|
|
00:32:14.492 [tid 8036] hook: Game::SVSOSlaversRefuel::UpdateDifficultyTier MH_EnableHook -> MH_OK mode=trace
|
|
00:32:14.492 [tid 8036] hook: Mars::RNG::Seed rva=0x0009fdf0 -> va=0074fdf0 MH_CreateHook -> MH_OK (trampoline=013f0e20)
|
|
00:32:14.508 [tid 8036] hook: Mars::RNG::Seed MH_EnableHook -> MH_OK mode=trace
|
|
00:32:14.508 [tid 8036] hook: Game::StrategyApp::RunAI rva=0x004706f0 -> va=00b206f0 MH_CreateHook -> MH_OK (trampoline=013f0e00)
|
|
00:32:14.524 [tid 8036] hook: Game::StrategyApp::RunAI MH_EnableHook -> MH_OK mode=trace
|
|
00:32:14.524 [tid 8036] drawsite: Mars::RNG::NextFloat rva=0x0007d830 -> va=0072d830 create=MH_OK enable=MH_OK
|
|
00:32:14.539 [tid 8036] drawsite: Mars::RNG::NextInt rva=0x000271c0 -> va=006d71c0 create=MH_OK enable=MH_OK
|
|
00:32:14.555 [tid 8036] drawsite: Mars::RNG::Chance rva=0x004e6dd0 -> va=00b96dd0 create=MH_OK enable=MH_OK
|
|
00:32:14.571 [tid 8036] drawsite: Mars::RNG::NextUInt rva=0x000f7670 -> va=007a7670 create=MH_OK enable=MH_OK
|
|
00:32:14.586 [tid 8036] drawsite: Mars::RNG::FloatRange rva=0x0007d8a0 -> va=0072d8a0 create=MH_OK enable=MH_OK
|
|
00:32:14.602 [tid 8036] drawsite: Mars::RNG::IntRangeBell rva=0x004e6d80 -> va=00b96d80 create=MH_OK enable=MH_OK
|
|
00:32:14.617 [tid 8036] drawsite: Mars::RNG::GaussianRange rva=0x004e6e30 -> va=00b96e30 create=MH_OK enable=MH_OK
|
|
00:32:14.617 [tid 8036] probe: installing 8 of 12 (probes= in shim.cfg)
|
|
00:32:14.633 [tid 8036] probe: Game::ServerSpyManager::vslot13 rva=0x004877b0 -> va=00b377b0 create=MH_OK enable=MH_OK
|
|
00:32:14.649 [tid 8036] probe: Game::ServerSpyManager::vslot14 rva=0x0048db80 -> va=00b3db80 create=MH_OK enable=MH_OK
|
|
00:32:14.664 [tid 8036] probe: Game::ServerTradeManagerImpl::vslot13 rva=0x0048ef80 -> va=00b3ef80 create=MH_OK enable=MH_OK
|
|
00:32:14.680 [tid 8036] probe: Game::ServerTradeManagerImpl::vslot15 rva=0x0042cca0 -> va=00adcca0 create=MH_OK enable=MH_OK
|
|
00:32:14.696 [tid 8036] probe: Game::SpyManager::Slot13RngCallee rva=0x004408e0 -> va=00af08e0 create=MH_OK enable=MH_OK
|
|
00:32:14.711 [tid 8036] probe: Game::TradeManager::Slot13RngCalleeA rva=0x00420ca0 -> va=00ad0ca0 create=MH_OK enable=MH_OK
|
|
00:32:14.727 [tid 8036] probe: Game::TradeManager::Slot13RngCalleeB rva=0x0048b440 -> va=00b3b440 create=MH_OK enable=MH_OK
|
|
00:32:14.742 [tid 8036] probe: Game::ServerTradeManager::CreateRaidEncounter rva=0x004938a0 -> va=00b438a0 create=MH_OK enable=MH_OK
|
|
00:32:14.742 [tid 8036] watch: disabled (watch=off)
|
|
00:32:14.742 [tid 8036] aiorders: disabled (aiorders=off)
|
|
00:32:14.742 [tid 8036] fpu: module init, entry cw=0x027f 53bit-double/nearest; force=off value=0x0000 sample_ticks=off
|
|
00:32:14.742 [tid 8036] fpu: sample_turn=off (off releases StrategyServer::ProcessTurn for another hook)
|
|
00:32:14.742 [tid 8036] fpu: StrategyClient::EndTurn rva=0x00383be0 -> va=00a33be0 MH_CreateHook -> MH_OK (trampoline=013f0c00)
|
|
00:32:14.758 [tid 8036] fpu: StrategyClient::EndTurn MH_EnableHook -> MH_OK
|
|
00:32:14.758 [tid 8036] fpu: StrategyServer::BeginProcessTurn rva=0x003d98e0 -> va=00a898e0 MH_CreateHook -> MH_ERROR_ALREADY_CREATED (trampoline=00000000)
|
|
00:32:14.758 [tid 8036] fpu: StrategyServer::ProcessTurn rva=0x003dc6c0 not installed (sampler off)
|
|
00:32:14.758 [tid 8036] fpu: DemoApp::OnTick rva=0x0049a640 not installed (sampler off)
|
|
00:32:14.758 [tid 8036] selftest: Shim::SelfTest::Fill mode=off checksum=075ef0c3 records=0
|
|
00:32:14.758 [tid 8036] Application::Initialize called (this=03438128)
|
|
00:40:12.096 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=0d67e8f0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:40:15.284 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e7ee0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:40:15.284 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e8d70): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:40:25.878 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=0d67e8f0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:40:29.081 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e7ee0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:40:29.096 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e8d70): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:40:39.299 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=0d67e8f0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:40:42.503 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e7ee0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:40:42.503 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e8d70): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:40:52.768 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=0d67e8f0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:40:55.956 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e7ee0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:40:55.971 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e8d70): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:41:06.237 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=0d67e8f0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:41:09.471 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e7ee0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:41:09.471 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e8d70): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:41:19.690 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=0d67e8f0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:41:22.893 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e7ee0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:41:22.893 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e8d70): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:41:33.096 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=0d67e8f0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:41:36.331 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e7ee0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:41:36.331 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e8d70): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:41:46.549 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=0d67e8f0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:41:49.799 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e7ee0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:41:49.799 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e8d70): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:42:00.018 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=0d67e8f0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:42:03.237 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e7ee0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:42:03.237 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e8d70): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:42:13.503 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=0d67e8f0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:42:16.706 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e7ee0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:42:16.706 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e8d70): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:42:26.956 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=0d67e8f0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:42:30.174 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e7ee0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:42:30.190 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e8d70): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:42:40.378 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=0d67e8f0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:42:43.549 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e7ee0): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|
|
00:42:43.549 [tid 8036] fpu: sample at StrategyClient::EndTurn (this=341e8d70): cw=0x127f 53bit-double/nearest [no fpu.force configured]
|