03 · Case study

Untitled Factory Game

Draw belts, feed the intakes, keep the flow alive — factory logistics across Earth, Moon, and Mars under rising pressure.

Role
Design · Systems · Build
Status
In progress
Stack
Godot · GDScript · HTML
Year
2026

Context

Factory games thrive when the loop is readable: extract, route, deliver, survive the next unlock. This one is a fast logistics arcade across three sites — Earth, Moon, Mars — where every milestone hands you a new machine and less time to use it.

Working title stays open on purpose. The playable origin on this site ships as Flux; the portfolio name is Untitled Factory Game until the final brand lands.

Problem

Sandbox factories can sprawl forever. The design problem here is pressure: intakes lose patience, belt stock is finite, and the pad keeps asking for smarter routing instead of bigger warehouses.

Goal: teach the systems visually, reward clean flow, and escalate without a wall of tutorials.

What I built

First, a complete browser prototype: draw belts, land extraction rigs on ore veins, feed impatient intakes, freeze time to rebuild, draft machines at milestones, grow the pad as score climbs. Crafting chain via assemblers. Three biomes, same cargo grammar, different constraints. That build is live as Flux.

Then a Godot 4.7 3D port. The sim moved into a headless board (routing, arrivals, drafts) with a separate 3D diorama view — poured pad, chamfered belts, procedural machine silhouettes, orbit camera. Same rules as the web loop; native rendering and a test harness on top. The Godot build is local-dev, not a public download.

How it works

Status / next

In progress. Play the original loop in the browser. The 3D port is the current build. Next: settle the name, tighten balance across sites, and keep the Godot view as honest as the rules.

Play the prototype ↗ All work