Weapons dump firing heat into their own sinks, sinks conduct through the Condenser bank into the central HeatSink, temperatures drive the degradation/ failure alarms, and every powered subsystem tracks its generator through the electrical state machine. Verified: the authentic fire-discipline game -- a PPC spikes 77->709K per shot, relaxes to 441K across its 5s reload, and sustained fire climbs 441->674->838->960K, brushing the authored 1000K degradation threshold. All calibration values match the BT411 audit exactly (central bank 1.39e6, PPC sink 174000, thresholds 77/1000/2000). - HEAT: HeatSinkSimulation (@004ad924 absorb->T->load->conduct->alarm), ConductHeat/ComputeHeatFlow (@004ad8ac/@004ad9ec two-body equilibrium relaxation; flow==0 exactly at uniform T), UpdateHeatLoad (15-sample filter); heat-state enum + accessors; installed by the HeatSink ctor. - WIRE-VERIFIED: HeatSink resource gains linkedSinkIndex -- THE missing ancestry int that shifted every descendant block +1 (voltageSourceIndex had been reading the linked-sink index: "power sources" appeared to be Condensers). Conduction topology wired from it at construction: weapons->Condensers1-6->central; Generators->Condensers; Reservoir->central. - MECHWEAP resource: authentic pip tail (pipPosition int + pipColor 3 floats + pipExtendedRange int) per the BT411 verified overlay; with linkedSinkIndex this closes the whole +3 alignment mystery (ProjectileWeapon pad deleted). True bhk1 reads: PPC recharge 5.0s (not 1.0), discharge 0.99s, range 900. - POWERSUB: ctor resolves voltageSourceIndex -> GeneratorA-D (wire-verified), taps via Generator::TapVoltageSource (-1 when full); PoweredSubsystemSimulation (@004b0bd0) electrical FSM (Starting/NoVoltage/Shorted/GeneratorOff/Ready); GeneratorSimulation partial (start/short-recovery timers). - Weapons: power step at sim head; Loading recharge gated on electrical Ready (authentic @4bbdf5); FireWeapon dumps firing heat. HEAT UNITS: the chain is 1e7-native with TWO authoring conventions -- energy weapons store small (PPC=11, x1e7 from the energy algebra), ballistics store native (SRM6=5.06e7, dumped raw; double-scaling it was the bring-up runaway-temperature bug). - SENSOR: authentic gating (@004b1c4c) -- power step, electrical-Ready gate, heat-state switch (Degradation x0.5 / Failure 0). Verified Ready + 100%. Deferred: coolant depletion/venting, the novice HeatModelOff gate, the charge model (TrackSeekVoltage/voltage sag/I2R), weapon gate 1 + jam roll, the central sink's forward-linked drain. Zero Fail across fire + neutral runs. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Scene Restorations
Modern re-renderings of the Division dVS scenes recovered from the Glaze developer drive (see HISTORY.md) and this repo's CONTENT tree. The originals ran on Division Ltd.'s pixel-pipeline hardware in 1994–1997; these tools parse the original data files and re-render them in WebGL, in the browser.
Viewers (open in any browser, fully self-contained)
vwe-archive.html— the Scene Archive: 26 curated scenes across all projects — Star Trek (Enterprise-D, Klingon flyby), Hull Pressure (sea demos, fish schools, sunken temple), BattleTech (polar map with mech lineup, Ravine and desert maps, stadium), Red Planet (Blade arena, the Mars canal milestone demo), and the Canyon/Maya-temple Division demos. Fly camera: drag to look, WASD to fly, R resets.trek-scn.html— the original standalone Star Trek restoration (TREK.SCN and KLNGVID.SCN).
Toolkit
divformats.py— parsers for every Division format found on the drive: textVGF/VMF(DIV-VIZ2 geometry/materials, both the 1995VERSION 2:07and 199602:05dialects, with header SCALE support), binaryBGF/BMF(DIV-BIZ2) — the binary block-stream layout was recovered from Division's own reader source (DPL3/BIZREAD.C, 1994), including all 14 vertex layouts, pmesh/tristrip/polygon connectivity, LOD blocks (newer writers nest patches inside LODs; the largest LOD is taken), and embedded materials/textures/ramps — plusTGAand rawSVTtextures,SPLsplines, andSCNscene scripts.audit.py— scans every.SCNon the drive and reports what fraction of its geometry survives, and in which format.extract_all.py— extracts every scene with ≥60 % of its geometry recoverable (108 of 241 on the drive; the rest reference lost models) intoallscenes.json, resolving models/materials/textures across the drive and this repo's CONTENT dirs.gallery_build.py— curates scenes fromallscenes.jsoninto the self-containedvwe-archive.html(viagallery_template.html).convert.py/viewer_template.html— the original single-scene Star Trek pipeline.
Rebuild
python extract_all.py # requires the sda4/ drive dump beside this repo
python gallery_build.py
Fidelity notes
Faithful: vertices, triangles, material colors and shading ramps, textures,
fog and light parameters, spline motion, camera start positions. Approximated:
Division's rasterizer behavior, point sizes, timing (originals ran at 30 Hz).
Not simulated: event-driven SPECIALFX particles. A few dev scenes had camera
start positions inside geometry; those get overridden or auto-framed cameras
(see START_OVERRIDE in gallery_build.py). Scenes missing one or more
models from the drive say so in their header.