Transport & Logistics¶
Document Type: Design Document Version: 0.2 (Draft) Status: In Progress Last Updated: 2026-08-29 Vault destination:
01_Design DocumentsRelated:[00_Canonical Design Facts](<../04_Project Management/00_Canonical Design Facts.md>)·[20_Belt Logistics - The Router](<./20_Belt Logistics - The Router.md>)·[21_Drone Logistics Design](<./21_Drone Logistics Design.md>)·[22_Trains & Rail](<./22_Trains & Rail.md>)·[07_Pipe & Fluid System Design](<./07_Pipe & Fluid System Design.md>)·[06_Vertical Layers & Core Power System](<./06_Vertical Layers & Core Power System.md>)·[23_Port System Design](<./23_Port System Design.md>)
Purpose¶
This document is the index and the shared rules. It does not describe the carriers.
Each carrier has its own specification, and this page exists to answer the two questions none of them can answer alone: why are there six of these, and which one should I use.
It deliberately restates nothing. Where a rule belongs to one carrier, it lives in that carrier's document and this page points at it. Where a rule is common to all of them, it lives here and the carrier documents point back. Duplicated tables drift — two fluid tables in this vault disagreed about which fluids were flammable for months, and neither was wrong when it was written.
1. The Carriers¶
| Carrier | Moves | Specified in |
|---|---|---|
| Belt | Solids | [04_Factory & Resource System Design](<./04_Factory & Resource System Design.md>) → Logistics Systems |
| Router | Solids, liquids or gases — one medium per Router | [20_Belt Logistics - The Router](<./20_Belt Logistics - The Router.md>) |
| Pipe | Liquids and gases | [07_Pipe & Fluid System Design](<./07_Pipe & Fluid System Design.md>) |
| Rail | Anything, in bulk, at distance | [22_Trains & Rail](<./22_Trains & Rail.md>) |
| Drone | Solids, in cache boxes | [21_Drone Logistics Design](<./21_Drone Logistics Design.md>) |
| Vertical structures | Items, fluids and power, between levels | [06_Vertical Layers & Core Power System](<./06_Vertical Layers & Core Power System.md>) |
Genesis also carries, but it is a construction bot with a carry limit, not a logistics carrier. It is not part of this comparison.
2. Which Carrier, and Why¶
Each carrier owns a different axis. None is an upgrade of another, and the ones that look similar fail differently.
| Carrier | Its axis | Strongest when | Weakest when |
|---|---|---|---|
| Belt | Free to run, forever. A corridor of tiles, then no ongoing cost at all | Continuous high throughput along a fixed route | The route is long, awkward, or changes often |
| Pipe | The only way to move a fluid without packaging it | Any liquid or gas moving between fixed points | Nothing else — fluids have no alternative unless packaged |
| Rail | Volume at distance, and districts | Large quantities between self-contained areas | Short runs, and anything needing steady arrival rather than bursts |
| Drone | No built path. Two endpoints and nothing between them | Terrain you will not build across; routes that change; an outpost not yet committed to | Sustained bulk on a route you would have belted anyway |
| Vertical | The only way between levels | Always, when crossing a level boundary | n/a — there is no alternative |
Rail's value is districts, not distance. A belt reaches just as far; what rail buys is letting the factory be several self-contained areas instead of one continuous mat. Its honest cost is latency — goods arrive in bursts, so both ends need buffering.
A drone's value is the absence of a corridor, not speed or capacity. If you would have run a belt there anyway, run the belt.
3. Rules Common to Every Carrier¶
3.1 Transport is derived from phase, never declared¶
Solids ride belts. Liquids and gases ride pipes. This follows from the resource's phase in code; it is not a field on the resource and not a property of the carrier. See Canonical Design Facts §12a.
A resource never carries a flag saying how it may be moved.
3.2 Belts are queues; pipes are pools¶
A belt preserves identity, order and position. Items are discrete, countable, and can be filtered individually.
A pipe pair-equalises, so fluid has no position and no order, and a connected network drifts toward one level. It is a shared reservoir that takes time to settle.
This one difference explains several rules that otherwise look arbitrary:
- A belt carries several substances at once and sorts them. A pipe never mixes. Both can filter — ports carry an optional resource filter regardless of medium — but only a belt filter selects from a mixture. A fluid filter says which fluid this connection is for, because there is never a mixture to sort.
- A port buffer holds one fluid at a time, because mixing two fluids produces a mixture you cannot separate again. Two items sharing a belt stay individually themselves. The constraint is irreversibility, not ordering.
- Both backpressure, and the difference is how you diagnose it. A belt jams at a visible point you can trace. Pipe pressure rises across the whole network, with no single place to look.
3.3 Nothing is ever silently voided¶
When a destination cannot accept, the carrier stops and backpressure propagates upstream.
This is what makes a factory legible: something stops, the player traces the line forward, and finds the blockage. A system that quietly destroyed surplus would hide overproduction entirely.
Deliberate disposal exists and is a separate, explicit choice — the Incinerator, or open dumping — each with its own cost. Disposal is never a side effect of transport.
3.4 Output-full and input-starved must never share a signal¶
They look identical from outside and are opposite problems. Output-full is success: consumers satisfied, nowhere left to put things. Input-starved is failure.
Priority routing makes full storage a normal steady state, so if the two shared a signal a healthy factory would sit permanently in alarm.
3.5 Every carrier pays, and the question is when¶
| Pay once | Pay forever |
|---|---|
| Belt tiles | Locomotive fuel |
| Rail track | Drone power |
| Catenary | Cardboard boxes |
| Metal boxes (until they wear) | — |
This is the recurring trade in the whole transport system, and a player who understands it once understands every instance. Belts and rail track cost material and then run free; the vehicles that use them do not.
3.6 Solids and fluids cross only by packaging¶
Two containers bridge the two worlds, and they work identically:
- A barrel holds a fluid. A filled barrel is an ordinary solid item.
- A cache box holds a solid. It is an ordinary item too.
Both are made by ordinary recipes, and both ship flat or empty as normal items. Packaging is the only way a solid carrier moves a fluid, or a fluid carrier is bypassed.
3.7 Level changes go through vertical structures only¶
Item Lift, Fluid Riser and Power Conduit are the sole paths between levels. They are paired structures occupying the same grid cell on both levels.
Drones cannot fly underground. Underground logistics is belts, pipes and rail, which keeps the vertical spatial puzzle intact.
3.8 Closed loops are always lossy¶
Recovery, capture and recycling mechanics in the transport system — box recycling in particular — recover most, never all. See Canonical Design Facts §12b.
4. Simulation Level¶
Transport detail scales with the session's Simulation Level. The global level sets defaults and per-system overrides are allowed.
| System | What higher levels add |
|---|---|
| Pipes | Pressure, then temperature (pipe_complexity) |
| Drones | Stranding instead of limping home; packing and unpacking you build; box wear |
Higher levels add detail to a mechanic; they never change the mechanic. A drone still carries boxes between two buildings at every level — what changes is how much of the packaging is the player's problem, and what happens when a battery runs out.
That distinction is the test for anything proposed as a Simulation Level feature.
5. What Is Not Settled¶
Tracked in docs/open-items.md. The largest open questions affecting transport as a whole:
| Question | Item |
|---|---|
| Direct building-to-building transfer between touching ports | OI-003 |
| How a player reconfigures a port | OI-259 |
| Barrel capacity against pipe throughput | OI-272 |
| Belt Mk tiers, and how they compose with Base Mk port throughput | OI-282 |
| Drone numbers — range, charge time, speed, box capacity | OI-295, OI-309 |
| The Simulation Level payoff | OI-285 |
Open items for this document are tracked in docs/open-items.md, area logistics.
6. Revision History¶
| Version | Date | Changes |
|---|---|---|
| 0.2 | 2026-08-29 | §3.2 corrected. "Belts filter and pipes cannot" was wrong — ports carry a resource filter regardless of medium, and the Router filters fluids. The real asymmetry is that a belt carries mixtures and sorts them while a pipe never mixes. "Fluid buffer" replaced by port buffer (PipeConnector is being deleted), with the correct reason: mixing is irreversible, not unordered. Backpressure clarified as applying to both, differing in how it is diagnosed. |
| 0.1 | 2026-08-29 | Initial draft. Index of the six carriers, the axis each one owns, and the rules common to all of them: transport derived from phase, queues versus pools, no silent voiding, output-full against input-starved, pay-once versus pay-forever, packaging as the only solid/fluid crossing, vertical structures as the only level change, and lossy loops. Deliberately restates no carrier's own specification. |