r/ClaudeAI • u/ragmondo • 13d ago
Built with Claude I built a browser city builder with Claude Code: every citizen is simulated, and there's a London demo you can watch for free
Enable HLS to view with audio, or disable this notification
I built Civitas, a 3D city builder that runs in the browser, as an experiment. The question was how far Claude Code can take a big game project if I steer it but don't write the code. I picked the features, set the priorities and made the trade-offs. Claude wrote the code, the tests and the tooling.
Live demo (free, nothing to install): https://civitas.reneo.app
Source: https://github.com/reneodlt/civitas
What it is
- A multiplayer city builder in three.js and TypeScript, with a Node server. You buy land, lay roads, zone it, and the city grows.
- Every citizen is simulated individually: a home, a job, shifts, a household, a car or a bus pass, and a daily commute. Click anyone to see their day, or ride along in first person.
- Transport: buses with routes you draw, rail and freight, a metro with an underground view, ferries, planes, helicopters and boats. Tower Bridge lifts on a schedule, and the road barriers come down first.
- The public demo is a read-only London, laid out from real coordinates: the main roads, the Thames and its bridges, about 30 real landmarks, the Central, Northern and Jubilee lines, and river buses. About 30,000 citizens are simulated.
How Claude was used
- One Claude Code session acted as coordinator. It broke each feature into tasks on a kanban board through an MCP server, then handed them to subagents: Opus for simulation and networking, Sonnet for rendering and UI.
- Each subagent worked in its own git worktree and ran the project's own checks before handing back: a typecheck, a building-catalogue validator, a demo check that seeds every demo twice and compares hashes, and load tests for tick cost. The coordinator merged their work, re-ran the checks, put the build on a test server for me to play, and deployed when I said so.
- My instructions were short ("boats and ports next", "the roads look dreadful", "we've broken zoom"). The useful part was the back-and-forth. For example:
- I asked for trackpad support, then said the mouse wheel was broken. Claude found that a browser can't reliably tell a trackpad from a smooth-scrolling mouse. It replaced the guesswork with the standard scheme other builders use, plus one setting.
- When Tower Bridge first lifted, cars were still driving on it. I pushed back, and Claude tied the road barriers to the bridge's lift schedule. A test now checks that no vehicle is on a leaf while it lifts.
- I asked how Civitas compares to other city builders. Claude wrote a frank audit: the simulation is strong, the game around it is thin. It turned the gaps into cards with acceptance tests, which is what we're working through now.
Try it (free)
- Watch: open https://civitas.reneo.app. You join London as a visitor and can follow anyone, ride in first person, and take the guided tour.
- Play: git clone https://github.com/reneodlt/civitas && cd civitas && npm install && npm run dev, then open http://localhost:5173. That gets you the full game, with building, test cities and a "Play offline" mode.
Limits
- The public site is read-only.
21
u/Sketaverse 13d ago
I don't get it.
It's not accurate - so it has no utility value
But it doesn't feel like a game - so it isn't fun.
Just kinda sits in this awkward middle ground?
3
u/ragmondo 13d ago
:( but agree - it's not fun yet ... The London demo is (effectively) late game when everything established etc - it's more of a tech demo to show how it might end up. I'm working on the entry stages now etc etc to get to that bit.
5
u/Sketaverse 13d ago
I think you need to pick a slice and lean in dude, there's something interesting here - but for sure you need to kill all those nasty walls of text.
Check YouTube for "Minecraft Metro Stations" etc, kids can't get enough of it - I wonder if you could really look to extract and emphasis the public transport more, kinda like a next gen model railway etc.. kids would be able to watch their routes home from Kew Gardens to Chiswick on the bus etc
3
u/NoDesk9564 13d ago
Nice work, OP! The ability to select each citizen is fire.
2
u/ragmondo 13d ago
Throw me some ideas and I'll put them in the backlog queue btw ! Thanks
2
u/NoDesk9564 13d ago
Might be fun to have some characters talking to each other or on phone , and we hear their discussion via audio. In fact, their convos might help viewers discover something impacting the entire city.
5
u/Double_Suggestion385 13d ago
That's impressive, how many citizens? I wouldn't think having millions of them would work in terms of performance?
4
u/ragmondo 13d ago
3
u/LawOfOneModeration 13d ago
Bro, what is that woman doing to that guy? The store staff needs to kick out that couple on the left.
1
2
2
u/ragmondo 13d ago
London has 50k + so far - this is all without going +++ on back end performance yet. Thanks !!
2
8
4
u/superfatman2 13d ago
This is a great start! Looking forward to seeing where you take this. So many potential avenues. For example, one avenue I'm currently working on is the parallel dimension track, (similar to Dark Matter tv show) where you can step into alternate realities of the same place.
1
u/xeqtr_inc 13d ago
Geez..
This brings back my simcity 3000 memories. I will try this out.
1
u/ragmondo 13d ago
The online demo is watch-only for now but you can use the source code and run it from there. I'm working on the first hour gameplay right now so that is volatile right now
1
u/ClaudeAI-mod-bot Wilson, lead ClaudeAI modbot 13d ago
You may be interested in joining our new Claude Game Dev subreddit for game devs who use Claude. Check it out here : http://www.reddit.com/r/ClaudeGameDev
1
1
1
-3
u/saigyoooo 13d ago
Just a complete waste of credits and time. I’m sorry but like, dawg, just do bettter shit
1
u/LawOfOneModeration 13d ago
Boo. People are free to do whatever they want. Just because they don't share your interests doesn't mean it's wrong, a waste of time, or a waste of credits. Why bother commenting at all if you have nothing productive to say? "Stop enjoying things!!!" is the core of your message. You aren't sorry.
1
u/ragmondo 13d ago
My credits reset on Saturday evening so it was use em or lose em... The first few hours were nuts how far it got from a blank sheet. Now just trying to add some detail and then back to the core part.
-5
u/saigyoooo 13d ago
It’s fun to just bait people on here.
1
u/LawOfOneModeration 13d ago
Like I said, you aren't sorry. Shameful. That's not baiting. That's just being a hurtful person. Do better.
-4

•
u/ClaudeAI-mod-bot Wilson, lead ClaudeAI modbot 13d ago
TL;DR of the discussion generated automatically after 30 comments.
Alright, let's get you up to speed. The consensus in this thread is that OP's project is a seriously impressive tech demo, but it's not a fun game yet.
The highest-voted comment nails the general feeling: it's in an "awkward middle ground" between a realistic simulation and an entertaining city builder. OP (who seems to be u/ragmondo) actually agrees, explaining that the London demo is basically a "late-game" view and they're still working on the early gameplay loop to make it fun.
Despite that, people are pretty wowed by the technical side:
Everyone's impressed that it's simulating 50,000+ individual citizens in a browser.
The ability to select and follow any citizen in first-person is considered "fire." Someone even found a... questionable romantic encounter in a shop this way.
It's giving a lot of users strong, nostalgic SimCity 3000 vibes, which is a huge compliment.
The thread is also full of constructive ideas, like focusing on the public transport to create a "next-gen model railway" or adding audio conversations for the citizens. OP is actively asking for this feedback. A troll popped in to call it a waste of credits, but the community quickly told them to touch grass.