KB + handoff: searchlight reconstruction

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Joe DiPrima
2026-08-05 19:46:09 -05:00
co-authored by Claude Fable 5
parent 412053d5af
commit d44fae2ae3
3 changed files with 36 additions and 385 deletions
+25
View File
@@ -399,3 +399,28 @@ the dark-gap tail (@0x4a02f4-0x4a0890):
taking damage costs, panic eject costs, per-hit credit gone). KILLS/DEATHS columns unchanged.
- NOT DONE: burning-state (mech-0x17 mislabel blocks it); @0x4c05c4 killed-by consumption
(sender carries the fields); DIV firmware intersection routine (unchanged).
## 2026-08-05 (evening): SEARCHLIGHT reconstructed (412053d + KB commit)
User picked searchlight over crouch (crouch's +0x398 consumer is un-located in the export = an
open-ended dig; parked). Findings + state:
- SUBSYSTEM was already DONE (searchlight.cpp); input already bound (F5 -> streamed 0x14).
The GAP was visuals, decoded from @004cef28 case 0xbd8 [T1]:
COCKPIT = FOG SWAP (fog= lit set vs nosearchlightfog= dark set, authored per BTDPL.INI page;
arena_night 40/400 vs 5/400!) via SetFogStyle 2/3 -- the engine kept ALL of it by name;
completed the stubbed plane application + transcribed the @456778/@456814 watcher into
TickSearchlight (inverted-cache first-tick sync = authentic DARK night start).
EXTERNAL = spot.bgf cone on the searchlight SITE joint, LightOn-driven (@45612c watcher);
site segments now get geometry-less DCS children (were skipped entirely).
- FIDELITY BUG FIXED: all prior builds rendered the LIT fog permanently (nothing ever called
SetFogStyle(3)). Tonight night is AUTHENTICALLY DARK -- release notes MUST say "press the
searchlight (F5)" or expect "game too dark / broken" reports.
- mountSegment @0x1DC identified (was "commandedOn, role unidentified") = resource segmentIndex.
- BENCHED: searchfog.sh (solo: first-tick dark sync, press->SetFogStyle(2), red-fog probe proves
the fog pipeline end-to-end), spotcone.sh (2-node: B press -> replication -> A "[spot] cone
SHOWN (seg 20)"). Bench traps hit: BT_BTNTEST too early (2-node spawn ~poll 900), the
renderer-level LoadObject wrapper is a btstubs NO-OP (marker case dormant! open-questions) --
cone loads via d3d_OBJECT::LoadObject direct.
- OPEN: cone size/aim eyeball pass (user launch); des_night pages have subtle deltas (arena =
the drama); LoadObject wrapper + dormant marker.
- NOT DONE tonight: crouch (0x1a DuckRequest latch is 4 lines; the CONSUMER needs a byte-scan
dig for [reg+0x398] readers -- a good quiet-day project).