Skip to content

Trains & Rail

Document Type: Design Document Version: 0.1 (Draft) Status: In Progress Last Updated: 2026-08-25 Vault destination: 01_Design Documents Amends: 04_Factory & Resource System Design — Logistics Systems §4 Related: [20_Belt Logistics - The Router](<./20_Belt Logistics - The Router.md>) · [23_Port System Design](<./23_Port System Design.md>) · [25_Power System Design](<./25_Power System Design.md>) · [26_Pollution, Waste & Organic Systems Design](<./26_Pollution, Waste & Organic Systems Design.md>)


1. Role

Bulk transport over long distances. Belts handle short to medium range, drones handle irregular point-to-point, trains move large volumes across the planet.

Existing material: 04_Factory §4 has five bullet points, and roadmap M2.5 has a task list carrying the note "Trains are the most complex logistics system. Budget extra time for edge cases."


1a. Why Build Rail At All

1a.1 The economics are secondary

Belts are passive — they draw no power. A belt is a one-time material spend that then runs free forever. A steam or diesel train burns fuel every trip.

⚠️ Rail is therefore more expensive to operate than the thing it replaces. That inverts the usual incentive and means distance alone cannot justify rail.

Rail must be justified by volume at distance, not distance alone.

Carrying, over 200 tiles Belts Rail Winner
4 items/sec, one commodity 200 segments 200 track + 2 stations + train Belts
16 items/sec, four commodities 800 segments, corridor 4+ tiles wide 200 track + 4 platforms each end Rail, ~4:1 on materials and on space

Rail losing the first case is correct. Nobody should build a railway to replace one belt.

Cost scaling, stated plainly: belt cost scales with distance × throughput. Rail scales with distance and throughput separately. Doubling belt throughput means doubling the tiles; doubling train throughput means adding a wagon and a platform, which costs nothing per tile.

1a.2 The real reason is districts

The economics are the smaller argument. The cost of belts is space and mental load, not materials.

Spaghetti is the natural failure state of the genre, and it compounds: every new production line has to thread past the existing ones. Rail breaks that. A smelting district and a circuits district each become something the player reasons about on its own, and adding a fifth district does not mean rerouting the other four.

Rail wins when the factory stops being one thing and starts being several. That is a layout trigger, not a distance number, and it is a better trigger.

1a.3 Pollution already pays for this

Specific to this game rather than borrowed from the genre:

  • Air pollution is zonal, concentration is local (26_Pollution, Waste & Organic Systems Design §3)
  • Ground contamination leaches downward

So separating dirty smelting from solar farms and crops is not merely tidier, it is mechanically rewarded. And separation only works if goods can move a long way cheaply — which is rail.

Three systems reinforce each other without any having been designed to:

System Contribution
Zonal pollution Makes spatial separation valuable
Rail Makes spatial separation practical
Priority routing + Silos Absorbs the burstiness rail introduces

It also strengthens the vertical layers. An underground level is already a natural module with its own pollution state, and dirty industry belongs there. Rail plus Item Lifts is what turns a level into a district rather than an annexe.

1a.4 The honest cost: latency

Belts Rail
Latency Low, continuous flow High, arrives in bursts
Throughput Capped per line Scales with wagons
Buffering None needed Required at both ends

A train delivers 400 items every ninety seconds rather than four per second. That requires Silos at both ends — precisely the flywheel role priority routing gave them (20_Belt Logistics - The Router §3a.3).

Trains do not just move goods; they make the storage system matter.

1a.5 Balance dials

With belts passive, only two dials set the crossover:

  1. Belt material cost per tile — the only belt cost that exists
  2. Loading and unloading speed — caps real train throughput regardless of wagon count

Consequence: since belts run free forever, ongoing fuel cost is rail's permanent disadvantage. This pushes serious networks toward Electric or Nuclear, so the endgame locomotives earn their place rather than merely being faster.


2. Signalling — Automatic by Default, Manual Optional

Core rule: the manual layer adds throughput only, never capability.

2.1 Default behaviour

The system reserves paths automatically. The whole route is treated as one block, so one train runs it safely and collisions are impossible.

A player who never learns signalling has a working railway. It is simply slower.

2.2 Manual signals

Placing signals subdivides the route into smaller blocks, allowing more trains to share the same track.

  • Research-gated
  • Purely an optimisation tool
  • Nothing is ever locked behind understanding them

2.3 Why not Factorio-style mandatory signals

Signals exist in Factorio because trains are physically simulated on shared track and can genuinely collide. They are also the steepest learning cliff in the genre and the most common reason players avoid trains entirely.

Mandatory signalling also produces the worst edge cases in the most edge-case-heavy system in the game — deadlocks, stuck trains, unreadable junction failures. For a solo developer that is a large and open-ended debugging burden.

This approach matches the pattern used throughout: progressive disclosure, nothing punishing, and complexity available to players who want it.


3. Locomotive Types — Different Fuels

Each type is a genuine trade, not a straight upgrade. The progression mirrors real rail history.

Locomotive Fuel Delivery Speed / capacity Logistics burden Pollution
Steam Coal Solid, belt-fed to depots Low Coal to every depot, forever Heavy (air)
Diesel Liquid Fuel Fluid, piped to depots Medium Fuel to every depot, forever Moderate (air)
Electric Electrified rail or battery Catenary, or charged at stations High Catenary: wire along the entire route. Battery: a charging station at each stop, plus charging time. None locally
Nuclear Nuclear fuel Solid, swapped rarely Highest Effectively none. No catenary, no regular refuelling. None locally, but produces waste

3.1 The same trade as power

This is deliberately the same decision as the power system's transmission vs local generation (25_Power System Design §3.3):

Move fuel, or build infrastructure once.

Electric rail costs electrification across the whole network but eliminates refuelling logistics permanently. Steam and diesel are cheap to start and cost you belt and pipe capacity forever.

3.1a Three currencies, not a ladder

There are three ways to power a train that needs no fuel deliveries, and each pays in something different. None is an upgrade of another.

Pays in Infrastructure Strongest Weakest
Catenary Distance Linear — wire every metre of route Dense mainline run constantly Long or lightly-used routes
Battery Time Point — a charging station at each stop Branch lines, spurs, low frequency High-throughput routes where stopping hurts
Nuclear Waste Concentrated — all of it inside the locomotive Very long hauls and remote lines Early game, and before the waste chain exists

Battery is infrastructure too. The earlier framing treated electric as "infrastructure everywhere" against nuclear's "none", which stopped being true the moment batteries entered: a battery train needs a charging station at every stop. What actually differs is the shape — catenary cost scales with route length, battery cost with number of stops — and that is the real trade.

Nuclear is not the punished option. It is high capital, very low running cost, and one hard problem to manage, which makes it the strongest choice for a long remote haul where you will neither wire the route nor accept charging stops. The reason to hesitate is that it obliges you to build a whole waste system, not that it is weak.

Design note: an earlier draft made nuclear "no infrastructure, waste forever" against electric's "catenary everywhere, no waste". That reads as a penalty and would have made nuclear the option nobody takes. Reframed because the real-world cost profile — expensive to build, cheap to run, one problem that never fully goes away — is a far better trade than a drawback.

3.1b Nuclear waste is reducible, never eliminable

Spent fuel can be reprocessed to recover most of its remaining value, which turns nuclear from a penalty into a system: you take nuclear, then you build the chain that handles what it produces. This slots into the existing three-way waste structure (Pollution §5) as the Treat option for nuclear waste.

⚠️ Guard rail: reprocessing recovery must never reach 100%. If it could, nuclear would become free and the entire trade would collapse into a plumbing puzzle solved once.

This is an instance of Canonical Design Facts §12b — closed loops are always lossy. It reduces the problem; it never removes it.

Nuclear waste remains, per Pollution §5.1, the one waste stream a player genuinely cannot be lazy about. Reprocessing changes how much there is, not whether it matters.

3.2 An electric train is only as clean as your grid

If the power comes from Coal Generators, the player has moved the smoke, not removed it. Local pollution around the rail line disappears; pollution around the generators rises.

This is true in reality and falls out of the existing pollution model without needing to be scripted. It is one of the better teaching moments available in the game.


4. Stations Are Modular

Station design depends on train setup, so the station is not one building. It is a Station Head plus one Freight Platform per wagon.

Piece Role
Station Head Where the locomotive stops. Holds the schedule and the station name.
Freight Platform One per wagon. An extension of the Station Head, not a building: no ports, no module slots, no base ring.
Fuel Platform Optional, at the head. Also an extension, on the same terms.

Train length determines how many platforms the player builds.

4.1 Platforms are extensions, not buildings

Locked: a platform has no ports, no module slots and no base ring. Only the Station Head is a building.

Module slot count derives from footprint (24_Module System Design §2.2), so a platform built as an ordinary building would carry at least one slot, and a four-wagon station would hold five slots for one logistics unit — making stations among the most module-dense structures in the game and inverting the slot economy.

Extensions avoid this without exception-casing the slot rule. Every building still has at least one slot from the moment it is placed. A platform is not a building.

This is the same composition as the farm families in [27_Organic Farming & Biomass Design](<./27_Organic Farming & Biomass Design.md>) §3: one head that is an ordinary building, plus extensions that are the working area. The player learns one rule and it transfers across both systems.

4.2 One train, several commodities

A four-wagon train can carry four different commodities, each destined for its own wagon. The capability stands.

⚠️ The stated mechanism no longer holds, and the replacement is not decided. This section previously read "because each platform's ports are configured independently" — which was true while platforms were buildings with their own ports. Under §4.1 they have none, so per-platform port configuration cannot be what delivers this.

The capability is presumably reachable through the Station Head's own ports carrying per-wagon filters, but that is a different mechanism and no document specifies it. Recorded rather than resolved: deciding it here would be inventing design in a reconciliation pass. Tracked as OI-260.

4.3 Fuel type physically changes station layout

Locomotive Fuel Platform at the head?
Steam Yes — coal belt in
Diesel Yes — fuel pipe in
Electric No, but the track must be electrified
Nuclear Rarely — a fuel swap at long intervals

A steam railway has visibly different stations from an electric one, and converting a network means rebuilding them. That makes the locomotive choice a commitment rather than a swap.

4.4 Station priority

Station priority uses the same waterfall model as the Router (20_Belt Logistics - The Router §3a).

Priority 1 station is served first; overflow goes to priority 2. The player already learned this pattern on belts, so it transfers with no new explanation.


5. Schedules

Per-station entries with wait conditions:

  • Wait until full / empty
  • Wait for a set time
  • Wait until a resource threshold is met
  • Leave immediately

04_Factory open questions include: "Do trains require Fuel Cells or is locomotive power abstracted?"

Resolved: neither. Fuel type is what distinguishes locomotive types (§3).


Open items for this document are tracked in docs/open-items.md, area trains.

8. Revision History

Version Date Changes
0.3 2026-08-28 Locomotive power reframed from an Electric-versus-Nuclear opposition into three currencies: catenary pays in distance, battery pays in time, nuclear pays in waste. Battery added as an electric variant, and recognised as point infrastructure rather than none. Nuclear is no longer framed as a penalty. §3.1b added: reprocessing reduces nuclear waste but must never reach 100%.
0.2 2026-08-27 Freight and Fuel Platforms become extensions of the Station Head, not buildings: no ports, no module slots, no base ring, matching the farm bay pattern in 27_Organic Farming & Biomass Design §3. The four-commodity capability stands but its stated mechanism (independent per-platform ports) no longer holds and is flagged unresolved (OI-260). Structural repairs: duplicate §4.1 renumbered so §4.1 to §4.4 run in sequence, three copies of the open-items footer reduced to one at the foot, and the v0.1 description corrected from three locomotive types to four.
0.1 2026-08-25 Initial draft. Automatic signalling with optional manual, four locomotive types by fuel, stations as port buildings, station priority.