Inspiration Politaria was inspired by a simple question: What if learning how to govern a city felt like playing a game? Public decisions rarely have one obvious answer. A new hospital may improve healthcare but strain the treasury; expanding roads may ease congestion while affecting the environment. We wanted to make those trade-offs tangible, engaging, and memorable. The project brings together two experiences that are often kept separate: the strategic depth of a city-building game and the practical value of understanding civic systems. Players do not just read about policy consequences—they make decisions and watch their city respond. What it does Politaria is an interactive city-building and decision simulation in which the player becomes mayor and guides a developing city over successive months. Players build services and infrastructure, set policies, manage public finances, and respond to missions and crisis events. The city tracks connected indicators including population, treasury, economy, healthcare, education, infrastructure, environment, governance, and public approval. Decisions can improve one area while creating pressure elsewhere. Crises ask players to weigh competing responses, while missions and deadlines provide short-term goals within the larger challenge of keeping the city functioning. A 3D city map gives the simulation a visible, explorable world. Buildings, roads, traffic, seasonal details, and event effects help show how the city changes as the player governs. How we built it Politaria uses the MERN stack: MongoDB stores user and city data, Express and Node.js provide the backend API and simulation logic, and React powers the frontend. The 3D city is rendered in the browser with React Three Fiber and Three.js. The backend is responsible for the authoritative game state. It validates player actions, updates city indicators, processes monthly finances, assigns and evaluates missions, triggers and resolves events, and saves each city. The frontend sends those actions through the API and displays the updated state. The map translates that state into a visual experience. Procedural layout code arranges the island, road network, building plots, terrain, and city details. Camera controls let players orbit, pan, zoom, and focus on parts of the city. As the simulation changes, the map can reflect those changes through building upgrades, traffic, environmental conditions, seasons, and crisis visuals. Challenges we ran into One major challenge was keeping the simulation and the map in sync. The backend needs consistent rules and saved state, while the 3D world needs to turn that state into clear, responsive visuals. We had to keep those responsibilities separate while making them work together. Building a convincing city from procedural geometry also required careful coordination. Roads, terrain, buildings, vehicles, and pedestrians all need to share the same layout and scale. Small placement or height errors can cause visible problems such as objects overlapping, vehicles drifting off roads, or roads disappearing into the terrain. We also had to balance complexity with clarity. City indicators influence one another, and events can have consequences that unfold over time. The challenge was to make those systems meaningful without overwhelming the player or revealing every consequence before a decision is made. Accomplishments that we're proud of We brought together a playable civic simulation and an explorable 3D city in one web application. The game connects player actions to a persistent city state, so decisions have consequences beyond a single screen or turn. We are proud of the way the project combines multiple systems: city finances, public services, policies, missions, crises, and map presentation. We also built the 3D world to respond to game state, turning abstract indicators into a setting players can inspect and understand. Most of all, Politaria gives players a chance to think like a mayor: balance immediate needs against long-term development, make decisions with incomplete information, and adapt when the city changes. What we learned We learned that simulation games are strongest when their rules are understandable but their outcomes are not always predictable. Trade-offs create meaningful choices; clear feedback helps players learn from them. We also learned the importance of separating simulation logic from visualization. The backend determines what happens, while the frontend and 3D world communicate that result. This structure makes the game easier to maintain and gives each part room to evolve. Finally, procedural 3D environments depend on shared spatial rules. Roads, buildings, people, vehicles, and terrain work best when they use the same coordinate system, placement checks, and height calculations. What’s next for Politaria Next, we want to deepen both the simulation and the world. That includes more varied crisis chains, richer missions, additional policies and building types, and clearer feedback about how decisions affect city indicators over time. We also want to continue improving the map’s density, architectural variety, terrain, and atmosphere while keeping it responsive on typical hardware. Future work could include more detailed citizen activity, stronger visual storytelling for events, and expanded scenarios that let players govern cities with different starting conditions and challenges. Our long-term goal is to make Politaria a polished, replayable learning experience: a game that is fun to explore and that leaves players thinking more carefully about how real cities work.
Log in or sign up for Devpost to join the conversation.