π The Space Project A self-running space-economy simulator, in Rust + Bevy. Hundreds of autonomous ships trade, mine, haul cargo, take out contracts, run out of fuel, and occasionally go bankrupt across a living solar economy β markets find their own prices, factions tax and subsidize, populations migrate when they're unhappy, and abandoned stations rot. It all runs in one native binary with no runtime dependencies.
What is this?
The Space Project is an agent-driven economic simulation wrapped in a native 3D client. There's no scripted storyline and no player objective β you're an observer (and god-mode admin) watching an economy run itself.
Every ship is an autonomous agent with its own credits, crew, fuel, cargo hold, and a GOAP planner that decides what to do next: chase the highest-margin trade route, accept a delivery contract, seek out a shipyard to retrofit, or dock and let its crew rest before morale collapses. Facilities run production recipes, degrade and self-repair, level up, and get abandoned when they go broke. Factions collect taxes and post subsidies. Populations consume food, produce labor, and pack up and leave when sentiment craters. Markets price everything off a coverage model with shortage urgency multipliers β no fixed prices anywhere.
It started as an Elixir/Phoenix prototype and was rewritten in Rust because the BEAM scheduler struggled on Windows gaming PCs. The engine ( sim_core ) is pure, synchronous, IO-free Rust; the Bevy client embeds it directly as a library, so the simulation and the renderer share the same ECS world with zero marshalling between them.
Scale today: ~485 live agents (282 ships Β· 93 facilities Β· 27 populations Β· 8 factions Β· 60 celestial bodies), ticking at p50 β 10β20 ms inside a 125 ms budget. The architecture is built to push toward 100k+.
π A note on where this is going
Nowhere, on its own β and that's kind of the point. This started as a fun idea: a from-scratch space economy that actually simulates itself instead of faking it. It grew way past what I expected, mostly in late-night sessions pairing with Claude. But I'm not pretending it's a game with a roadmap, and I'm not actively pushing it toward "shippable." I'm putting it out under MIT because the bones are genuinely good and I'd rather someone do something with it than let it sit in a private repo. So: fork it, gut it, rename it, bolt a game on top of it, rip the economy engine out and use it somewhere else entirely. Build the thing I didn't. PRs and issues are welcome and I'll look at them, but I can't promise a cadence. If you want to take it somewhere real, see CONTRIBUTING.md β there's a "directions you could take this" section written exactly for you.
... continue reading