A deterministic simulation foundation for logistics games: stable-ID graphs, exact integer ticks, runtime mutation, durable saves, Burst backend and a no-code graph editor.Deterministic Logistics Core is a runtime-ready Unity package for building simulation systems that must reproduce exactly: item transport, factory chains, resource flow, production networks, throughput puzzles, and any custom system where the same inputs have to produce the same result every run.The package is built around a deterministic graph solver. Content is described as nodes, ports and edges with durable 128-bit IDs, compiled into an immutable topology, and advanced in whole fixed ticks. All authoritative quantities are integers, so the same commands over the same tick count always commit the same 64-bit state hash — on the managed backend and the Burst backend alike.Included systems:Graph core: stable-ID identity, topology compiler, canonical ordering, validation with stable issue codes, Source / Buffer / Sink node behaviours, and custom node providers.Deterministic worlds: fixed-tick lifecycle, managed reference backend, Burst/Jobs backend behind the same interface, per-tick state hashing, and ordered post-commit events.Runtime mutation: atomic batches that add, update or remove nodes, ports and edges on a live world, with revision checks, capacity validation, and explicit removal policies for non-empty nodes.Persistence: immutable snapshots, CRC-checked save envelopes, schema versioning with a migration registry, and checkpoints that preserve topology revision and mutation state.Diagnostics: stable diagnostic codes with cause and recovery for every failure, compile reports, a live Runtime Monitor, and a reproducible benchmark runner.No-code authoring: ScriptableObject profiles and networks, a scene binding component, starter presets, and a Setup Wizard that never touches your project settings.The package includes four assemblies, three sample scenes with commented source, starter presets, twelve documentation files, and editor windows for graph authoring (Network Studio), project setup (Setup Wizard, Setup & Diagnostics), live inspection (Runtime Monitor) and upgrades (Upgrade Assistant).You can author networks visually in Network Studio or build them entirely from code. The public Runtime API lets scripts compile topologies, create and tick worlds, submit mutation batches, capture and restore snapshots, read committed state and hashes, register custom node providers, and subscribe to post-commit events. Core.Runtime has no UnityEngine dependency, so it can be linked from a dedicated server.Suitable for:Factory automation gamesBase-building and colony simsTycoon and management gamesPuzzle games built on flow and throughputReplay systems, lockstep multiplayer, and deterministic testsAny project that needs simulation state to be reproducible and savableThis is a foundation package focused on the deterministic runtime and its authoring tools. It does not include belts, trains or fluid networks — those are separate products, or the Deterministic Logistics Complete Bundle. It does not include tests, publisher tooling, or a demo showcase scene.Verified on Unity 6000.5.3f1 and 6000.4.0f1, URP, Linux x64 Mono player. Other Unity versions, platforms, scripting backends and render pipelines are untested rather than unsupported. Requires Burst 1.8.29+ and Collections 6.5.0+; URP 17.5.0+ is needed only to render the sample scenes.Asset contains no bundled third-party art, audio, fonts or code. It references the Unity Burst, Collections and Universal Render Pipeline packages under their respective Unity package terms; see the Third-Party Notices file in the package for details.Architecture4 assembly definitions: Core.Runtime, Core.Burst, Core.Authoring, Core.EditorCore.Runtime has zero UnityEngine and zero Editor dependencies — headless/server safeNo public API exposes NativeArray; managed and Burst backends are interchangeableNo singletons, no static state, no assembly scanning, no reflection at runtimeDeterminism128-bit stable IDs for every node, port, and edgeAll authoritative quantities are checked integers — no floating point in game stateEntities sorted by stable ID at compile time; arbitration by priority, then stable IDBurst jobs compute proposals in parallel; commit is single-threaded and canonical64-bit state hash exposed every tick for replay and desync comparisonPersistenceImmutable snapshots captured at committed tick boundariesCRC-checked binary save envelopes with schema versioning and a migration registryRestore validates topology identity and state hash before exposing a worldStorage is a customer-implemented interface — no file paths owned by the packageDiagnostics~60 stable diagnostic codes (DL-GRAPH-, DL-ID-, DL-MUT-, DL-SAVE-)Every code documented with cause and recovery stepsBenchmark runner returns dataset identity, timing percentiles, measured GC allocations, and the final state hash so results are reproducibleContents3 sample scenes: Generic Packet Flow, Runtime Construction & Save, Broken Networks5 starter presets, full C# source, 12 markdown documentation filesEditor windows: Network Studio, Setup Wizard, Runtime Monitor, Setup & Diagnostics, Upgrade AssistantRequirementsUnity 6000.5.3f1 (verified; 6000.4.0f1 also tested)Burst 1.8.29 or newer, Collections 6.5.0 or newer (Unity Package Manager)URP 17.5.0 or newer to render the sample scenesBuilt-in Physics module, used only by colliders in the sample scenesVerified ScopeEditors: Unity 6000.5.3f1 (URP 17.5), 6000.4.0f1 (URP 17.4)Player: Linux x64 MonoRender pipeline: URPEverything outside this list is untested, not unsupported — see LimitationsAI coding assistants were used to help write and refactor C# source, editor UI code,automated tests and documentation. All output was reviewed, edited, tested and integratedby the publisher, who designed the deterministic algorithms, data schemas and validationcoverage and fixed the issues found in testing. Marketing images contain no AI-generatedimagery — they are built from real Unity Editor screenshots of this package and vectorlayouts rendered from code.


