Five On It — Game design document
How to use this document (for humans and LLMs). This is the single source of truth for what the game is. It is written to be pasted into an LLM's context before asking for code, levels, missions, dialogue, art briefs or tests.
- Terms in bold in §2 are the canonical vocabulary. Use them exactly.
- Tags:
[V1]is in the first shippable release;[NEXT]comes in the first updates after it;[LATER]is not to be built unless explicitly requested. The Today columns say what the repository already has (built, partial, planned) as of 2026-10-04, version 0.18.0.- This document is also the brief of the AI that turns a player's words into a game: §5, §9, §10 and §15 are written so the MCP integration can hand them to Claude as they are.
- Anything not covered here is an open question (§19), not an invitation to invent. Ask or leave a TODO.
- Engineering (stack, netcode, the platform API, the MCP server, the generator, tests, milestones) lives in
TECHNICAL_SPECS.md. Do not restate it here; refer to it.
1. Overview
Title: Five On It.
One-liner: A top-down, low-poly, satirical open-city sandbox where anyone can describe a game (a city and the missions in it) to Claude and play it with friends minutes later.
Elevator pitch: GTA2's camera and pace in a real 3D toy city. Cars drift, guards doze off (stealth in the spirit of Metal Gear Solid 2, simplified), and a phone in your pocket unlocks cars, opens gates and texts your contacts. The game ships with five Curated games built by the developer from the same Blocks players get. Everything after that is made by players: you describe a place and a story ("a harbour town at night; smuggle three crates past a corrupt customs office before the ferry leaves") to Claude in Claude Code, or, owning the game on Steam, in a brief written in the game itself (planned), and an AI turns it into data through the game's MCP integration, the server builds and checks it, a Room opens, and you play it alone, with friends, or with whoever joins.
Design pillars (use them, in this order, to resolve conflicts):
- Building blocks, not features. Every mechanic ships as a Block with parameters, anchors, events and actions, documented so the AI can use it. A mechanic that cannot be expressed as a block is not finished. The curated games use only public blocks: if the developer needs something, players get it too.
- Everything a player makes is data. Levels and missions are documents in a fixed vocabulary. The AI writes data, never code; the server builds and checks every document before anyone plays it.
- Moving through the city is the game. Driving, chasing, sneaking and escaping must feel good before anything is layered on top. A block that makes none of them better waits.
- Readable from above. Everything must be understandable at a glance from the top-down camera: silhouettes, colours, markers.
- Multiplayer by default. Every game is played in a shared room. Systems should create stories between players.
- Satire, not cruelty. The city mocks institutions, trends and hustle culture. It never mocks victims, real people or protected groups. Player-made games follow the same rule.
Platforms: the desktop app (Windows, macOS, Linux) and the web browser, running the same client [V1]. Creating happens in Claude Code with the five-on-it MCP integration, on the creator's own Claude subscription [V1], and in the game for its owners on Steam, on the platform's one model under a monthly cap (decided 2026-10-16, planned); playing needs nothing but the game. Mouse and keyboard only, the keys remappable.
Session shape: a Game is played in Rooms of 1–32 players, opened on demand and closed when empty. Drop-in, drop-out. Missions last 3–20 minutes. A multiplayer mission is played in a Run, a room of its own for the players a Lobby gathered, and the lobby then takes them on to the next mission, on any level (built, §13).
2. Canonical vocabulary
| Term | Meaning |
|---|---|
| Player | A person playing. Has a Character, and sometimes a seat in a Vehicle. |
| Creator | A player who makes Games: in Claude Code with the five-on-it MCP integration (anyone with a Claude subscription), or in the game, from a brief, if they own it on Steam (planned). |
| Character | The on-foot avatar. Seated and visible in open vehicles, hidden in closed ones. |
| Vehicle | Anything drivable. Has a Vehicle class (§6.1), seats, an owner and a lock. |
| NPC | A computer-controlled character or vehicle driver. Has a Role. |
| Role | What an NPC is for: civilian, driver, guard, police, contact, target, VIP, shopkeeper. |
| Block | A reusable building piece of games: a look, a behaviour, parameters, anchors, events and actions (§5). |
| Block catalogue | The list of every block with its documentation. The only vocabulary the AI may use. |
| Piece | The look of a block: a low-poly model from a kit. |
| Anchor | A named point on a piece: a door, a seat, a parking bay, a spawn point, a camera mount. |
| Place | A named point or area of a level that missions refer to, such as docks.warehouse_7. |
| Zone | An area with a purpose: pickup, drop-off, checkpoint, restricted, safe. |
| Path | A named route: a patrol, a race, a bus line. |
| Level | The playable space: ground, roads, pieces, places, zones and paths. |
| Level spec | The short description of a level the AI writes (districts, roads, landmarks). The Generator turns it into a level. |
| Generator | The program that builds a level from a level spec and a Seed, the same way every time. |
| Seed | The number that makes the generator's choices repeatable. |
| Mission | A data document of Objectives, Triggers, Conditions, Actions, actors, dialogue and rewards (§9). |
| Item | Anything carried: a key, a keycard, a document, a weapon, cash, the Phone (§7.4). |
| Container | Anything that holds items: a character's inventory, a trunk, a locker, a crate, a shop. |
| Phone | The item that holds Contacts, Apps and messages (§7.5). |
| App | A text-based phone screen defined as data. Its buttons run mission actions. |
| Game | A published bundle: one level, its missions and its rules, pinned to the versions it was built with. |
| Draft | A game being made. Private to its creator. |
| Room | A running instance of a game on a game server. |
| Run | One play of one mission in a room of its own, for a fixed roster of players in Teams (planned, §13). |
| Team | The players of a run who share its objectives: a co-op mission has one, a versus mission two or more. |
| Lobby | Where players gather for a run, see its rules, get ready and vote on the next one (built, §13). |
| Curated game | One of the games shipped by the developer (§11). |
| Validator | The checks every level and mission must pass before it can be played. |
| Awareness | What an NPC has noticed: seen, heard, remembered (§8). |
| Alert phase | normal, suspicious, alert, search, caution (§8). |
| Status | A character's state: awake, stunned, knocked out, asleep, down, dead (§8). |
| Heat / Wanted level | Heat (0–100) builds up from crimes and decays; its thresholds set the Wanted level, 0–5 stars (§12). |
| Cash / Rep | The in-game currency and reputation, kept in the room (§14). |
| Respect | An account's standing across every game, earned by playing runs well, shown as one of five tiers (§14). |
| Safe zone | An area where players cannot hurt each other or steal cars. |
3. Player experience
3.1 Two loops [V1]
The play loop:
browse games (curated, featured, friends', your own) ─► open or join a room ─► spawn
─► missions: drive, sneak, talk, use the phone, pick up and hand over items
─► rewards (Cash, Rep) ─► rate the game ─► the next mission, or the next gameThe create loop:
describe it to Claude in Claude Code ("a hill town with a rally track and a heist at the bank")
─► Claude drafts a level spec and missions ─► the server builds and checks them
─► preview in the real renderer ─► playtest, alone or with friends
─► refine by talking ("bigger docks, a second escape road, sleepier guards")
─► publish (private link, public) ─► others play, rate and remix itMinute to minute: read the minimap, pick a route, drift through a corner, slip past a guard's vision cone, unlock the getaway car from the phone, lose the cops in the tunnel.
3.2 What makes a session memorable
- A friend describes your part of town as a heist town, and ten minutes later you rob it together.
- The guard you put to sleep wakes up just as your partner drives past.
- Two players' missions collide in one room: one escorts the van the other was told to steal.
- A stranger's game turns out to be great, gets featured, and you remix it.
3.3 Player fantasy
Getaway driver, quiet operator, and director of your own small city. Violence is slapstick and vehicular, every mission that matters has a non-lethal way through, and consequences are cartoonish.
4. Camera and presentation
| Aspect | Design | Today |
|---|---|---|
| Camera | Perspective, looking down 18° off vertical; follows the player, rises smoothly with speed (30–52 m by default; the player can turn it off or set how far and how quickly) to show more road ahead, leans toward the cursor on foot. No free camera. North is up the screen and east to its right; directions and degrees shown to players follow it (bearings clockwise from north). | built |
| World | A real 3D low-poly city: buildings with real height, bridges, tunnels, car parks with ramps, hills. Roofs fade when the player is underneath (tunnels, decks). Walk-in buildings, simplified and of one style: a building's ground floor is walked into under upper floors that fade over the player like a tunnel's roof (decided 2026-10-07: the bank's hall and vault in Downtown job, the compound's lab); since 0.33.0 the landmarks (a mall, a hospital, a mensa, a castle, a ski lodge) are explored floor by floor, each storey fading over a player under it, up stairs, escalators, lifts and ladders, across walkways and a bridge (decided 2026-10-09). | built |
| Models | Vehicles, characters and kit pieces are low-poly models made in Blender: flat colours, no textures, a few hundred triangles (budgets in assets/README.md), one tinted body colour per owner, no two faces fighting for one plane. | built |
Animation [V1] | Characters are rigged and animated: idle, walk, run, jump, fall, crouch, low and high cover, aim, throw, sit in every seat type, ride, knocked down, get up, asleep, dead. | built: 74 short keyframed clips on a ten-part rigid figure (head, torso, arms with forearms, legs with shins), made in Blender (assets/blender/models/animations.py): every move, cover, weapon, ride, hurt state, interaction, NPC role and emote, each fading into the next; an animation gallery (?anim-gallery); test-on-foot |
| Buildings from the world | 125 buildings generated from OpenStreetMap's most used tags (shops of every kind, offices, workshops, farms, chapels, guest houses, sports halls, towers), each with its sign on its roof, and 19 street facilities; a district built of a landuse's buildings, or of a tag's (shop=*); the themes high-street and farm-village. | built (0.46.0) |
| Countryside | Eight biomes (meadow, forest, alpine, farmland, steppe, desert, autumn, coast); a region's countryside rich if asked: the ground in many tones with tufts of grass and flowers, every tile out of town dressed (bushes, a lone tree and its bench, bales, a well, a signpost, a shrine…), ponds, ruins, camps, viewpoints and abandoned cars to find, each a place; landuse areas (fields, orchards, vineyards, woods, a cemetery, allotments, a campsite, a park, a wetland). | built (0.45.0) |
Effects [V1] | Drift smoke and tyre marks from tyre slip, hit sparks, dust. Engine smoke and fire from damage, explosions with a fireball, a shockwave and a scorch, flat tyres popping and sparking (built 0.44.0). | built |
| Falls | A person who is hit topples along the hit and gets up [V1]; a light cosmetic ragdoll (built early: on the client only, flung along the hit, at most twelve at once). | built |
| Style | A toy-city diorama: clean, high contrast, slightly saturated, matte. Readability beats realism: one dominant colour per car, police unmistakable. | built |
| Day/night, weather | A clock per game and weather that change how the city looks and plays (§5.7): headlights, street lights and lit windows at night; rain, fog, snow and storms. | built (0.52.0) |
5. Building blocks
5.1 What a block is
A block is:
- a look: a piece or a model (optional: a timer has none);
- a behaviour: what it does in the simulation;
- parameters, each with a type, a range and a default;
- anchors: the named points other blocks attach to;
- the events it emits and the actions it accepts, which missions use;
- a budget: what it costs a room (an NPC costs more than a lamp post);
- a doc: one paragraph and an example, written for the AI.
A block enters the block catalogue only with its doc, its parameter schema, its validator rules, a mini test level and an end-to-end test (TECHNICAL_SPECS.md §10). Blocks compose: a garage is a building piece, a door anchor and the garage behaviour, so any building with a door anchor can be a garage.
5.2 World
| Block | What it is | Today | Tag |
|---|---|---|---|
| Terrain | Ground with hills, cliffs and cuttings, generated around the roads | built; and regions of standard 64 m tiles (RollerCoaster Tycoon's corner heights: hills, mountains, plateaus, valleys, lakes, volcanoes and ski runs named in a spec, every seam matching by construction; see Tiles), which creators write through the MCP server; towns stand on a region's land, their streets climbing its hills and dipping into its valleys (decided 2026-10-09: rolling streets, a district on a terrace where asked, steep only where a hill or valley is marked so) | [V1] |
| Road | A polyline with lanes, a speed, a surface (paved, dirt), one-way or not, a height profile | built; and roads laid over a region's tiles in five classes (a dirt track, a country road, a street, an avenue, a highway), crossing at flat junctions, on bridges over what they cannot follow, the ground graded to them | [V1] |
| Junction, roundabout | Where roads meet; rounded kerbs, zebra crossings | built | [V1] |
| Bridge, tunnel, deck, ramp, stairs | Structures; decks and tunnel roofs fade over the player | built | [V1] |
| District | A region with a building mix, a density and a satire theme | built: a theme (tech campus, wellness quarter, luxury waterfront, gig depot, old town, City Hall) with its default mix, parody names and colours, a density (built share, setback, height) and landmarks, in the level spec | [V1] |
| Building | A real-size kit piece tagged like OpenStreetMap (amenity=hospital, shop=supermarket), with 2–3 colour variants and anchors | built: 32 families in the downtown and civic kits, each with 2–3 colour variants, tags like OpenStreetMap and anchors (an entrance and what it does); five walk-in landmarks of several floors in the landmarks kit | [V1] |
| Landmark | A building one walks into and climbs: a storey a part that fades over the player under it, the ways up (stairs, escalators, lifts, ladders) blocks its anchors carry, a place on every floor | built: a mega-mall (an atrium, escalators, a food court, a roof car park), a general hospital (wards, the billing department, a helipad up a ladder), a mensa (a mezzanine, the kitchen's back door), a castle (a wall walk, a dungeon in its mound, a keep, a watchtower, a bridge), a ski lodge (a terrace, a bar for after skiing) | [V1] |
| Prop | Street furniture: lamps, traffic lights, hydrants, benches, bins, trees, rocks | built | [V1] |
| Breakable | A light prop a vehicle knocks loose by its kinetic energy (a mid-size car at 60 km/h, a box truck at about 30, a bus slower still, a bicycle never); a lighter or slower one stops against it | built | [V1] |
| Nail strip | Pops the tyres that roll over it; at three stars an officer throws one across the road ahead, unrolling from the kerb, and reels it in once the player has passed | built | [V1] |
| Water | Water surfaces: wading, swimming, sinking cars, lava; boats | built (0.36.0): a person wades over the knees at half pace and swims deeper than the chest (slow, afloat, no shooting), climbing out where the bottom comes up; a fall into deep water hurts nobody; a car whose middle sinks under the surface floods, wrecked, its people put out to swim; lava kills and wrecks; a region's lakes and volcanoes make them. Boats and drowning [NEXT] | [V1] |
| Rail | Tracks and stations for trams and trains | planned | [LATER] |
Building types, by family. A function is a behaviour on an anchor, not a special mesh: a hospital is a building with a respawn point, a car rental one with a vehicle spawner of locked cars.
- Civic: police station, hospital, fire station, town hall, school, courthouse, library, post office.
- Commercial: shop, supermarket, mall, bank, gas station, garage and body shop, car rental, restaurant, café, bar, hotel, office tower.
- Residential: house, townhouse, apartment block.
- Industrial: warehouse, factory, depot, power station.
- Transport: bus station, car park, harbour building
[NEXT], train station[LATER].
Built: every family above but the harbour building and the train station, in the downtown kit (towers, offices, apartments, corner blocks, shop rows, townhouses, warehouses, hotels, cafés) and the civic kit (the rest); a building's anchors place what it does (a body shop's garage, a car rental's locked cars, a shop's counter, a hospital's respawn point, a police station's cruisers). The landmarks kit's five walk-in buildings (mega-mall and ski lodge commercial, general hospital, mensa and castle civic) are named in a district's landmarks like any other; their anchors carry their stairs, escalators, lifts, ladders, shops and lockers, and every floor has its places for missions (the mall's food court on its top floor, the hospital's helipad, the castle keep's roof).
5.3 Places, zones and paths [V1]
- Places are named points and areas (
downtown.bank.vault). The generator names what it builds after the district and the piece (docks.warehouse_7), and missions refer to places, never to coordinates. - Zones: pickup, drop-off, checkpoint, race gate, restricted (entering raises the alert or the Heat), safe, spawn area (built).
- Paths: patrol routes and races
[V1](built: a race is its gates in order and its laps), bus lines[NEXT]. - Spawn points carry a role: players, police, traffic, a mission's guards, and the hospital players respawn at (built).
5.4 NPCs
| Block | What it is | Today | Tag |
|---|---|---|---|
| Behaviour profile | How an NPC chases: tail, pursuit, aggressive, guard; on foot or at the wheel, armed or not | built | [V1] |
| Flee | Runs from danger: passengers of a carjacked car, pedestrians near gunfire | built | [V1] |
| Crew | NPCs sharing a car: shoot from the windows, ram, get out and fight | built | [V1] |
| Role | civilian, driver, guard, police, contact, target, VIP, shopkeeper; the city's routines: dog walker, vendor, smoker, queuer, sitter, officer on a beat, street sweeper | built | [V1] |
| Awareness and alert | Vision cone, hearing, memory, alert phases (§8) | built | [V1] |
| Patrol and schedule | Walk a path, stand at a post, go home at a time | built: patrols, posts and schedules on the room's clock (go to a place, stand, patrol, go home, come back out) | [V1] |
| Loadout and pockets | The NPC's weapons and items (a guard carries the keycard) | built | [V1] |
5.5 Interactables [V1]
| Block | What it does |
|---|---|
| Door, gate, barrier | Opens and closes; locked by a key, a keycard, a keypad code or an app (built; a barrier also takes a parking ticket) |
| Garage | Stores a vehicle, resprays it (clears the Wanted level), takes a mission delivery |
| Terminal, keypad, ATM, vending machine | Text screens that work like phone apps (built; a street's or a bank's cash machine also pays the Cash into the bank and takes money out, for a fee) |
| Seat | A bench's or a log's: sit to get your breath back and lie low (built) |
| Pump | A petrol station's: fill up at the wheel, the boost full and recharging faster for a while (built) |
| Container, pickup | A crate, a locker, a trunk, an item on the ground |
| Shop | A counter that sells items for Cash at the game's prices (built; at the counters of shops, supermarkets and gas stations, kiosks and market stalls, an ice-cream van's hatch) |
| Security camera | A vision cone that feeds the alert system |
| Traffic light | Cycles; traffic obeys it; an app can switch it (built: setSignal) |
| Vehicle spawner, parking bay | Puts a vehicle with an owner, a lock and keys |
| NPC spawner | Puts an NPC with a role, a path, a schedule, a loadout and pockets (built) |
| Marker | A minimap icon or an objective arrow |
| Timer, counter, flag | Invisible logic for missions |
| Ladder | Climbed with the interaction key at its foot or its top; falls from it hurt (built) |
| Lift | A platform riding between its floors on a timetable, carrying whoever stands on it (built) |
| Escalator | A flight of stairs whose steps carry whoever stands on them up or down (built) |
Alarm [NEXT], opening bridge [LATER] |
5.6 City systems
- Ambient traffic drives the roads, obeys traffic lights and gives way
[V1](built). - Pedestrians with roles and simple schedules
[V1](built: civilians, commuters, joggers and shopkeepers on the pavements, kept around the players, by the hour of the room's clock: commuters at rush hours, joggers mornings and evenings, shopkeepers in shop hours, fewer people at night; each district's theme weighs its roles; the city's routines beside them: dogs walked, streets swept at dawn, officers on a beat, smokers at the doors, vendors at their kiosks, queues at the bus stops that board the buses, people on the benches). - Police and the Wanted level (§12): 1–3 stars
[V1], 4–5 stars[NEXT]. - Emergency services (ambulances to the hurt, firefighters to fires)
[LATER].
5.7 Time and weather
Built: the room's clock (a start hour and a pace the level, the game or a mission sets, time in conditions, setClock, setPace, skipTime with its "3 hours later") that schedules and the crowd follow, and the weather and the light (0.52.0, see Time and weather): a weather of its own by the level's climate that games and missions script, wet roads and snow that grip less, the dark and fog that hide a player, lamps that light them again, lit windows and headlights, the night as bright as the player's setting lets it be.
Two blocks a game sets in its rules and a mission can change on the way:
- Clock: the time a game starts at and how fast it runs (from frozen to a full day in 24 minutes). Night brings headlights, street lights and lit windows; guards see less far in the dark and more in a pool of light; NPC schedules follow the clock.
- Weather: clear, overcast, rain, fog, storm and snow, changing over time by the level's climate or set by a game and a mission. Rain lowers tyre grip and covers noise; fog shortens what guards and drivers can see; a storm adds wind, lightning and thunder; snow settles and grips least.
- Both are part of the simulation, so every player in a room sees the same sky, and the grip and the guards' sight change for everyone at once.
6. Vehicles and driving
6.1 Classes
Built today: twenty-three classes, each with its engine placement, drivetrain, axles and seats.
| Class | Engine / drive | Seats | Character |
|---|---|---|---|
| Compact | front / front | 4 | Nimble, easy handbrake drift, plows wide when floored at the limit |
| Sedan | front / rear | 5 | Balanced; the default |
| Sports | mid / rear | 2 | Fast and grippy, rotates quickest, steps out when floored out of a corner |
| Muscle | front / rear | 2 | Far more engine than rear tyre: power slides, donuts, a strong ram |
| SUV | front / all | 7 | Slow, stable, planted |
| Buggy | rear / rear | 2 | Traction off the line, a tail that swings wide; seats open to the sky |
| Van | front / rear | 3 | Cargo |
| Box truck | front / rear, three axles | 2 | Heavy, wide turns |
| Semi | front / rear, three axles, with a trailer | 2 | The heaviest; the trailer swings |
| Scooter | rear / rear | 2 | Light and quick; the rider is visible |
| Bicycle | pedals | 1 | Silent and slow |
| Motorbike | mid / rear | 2 | Fast, fragile, fits alleys |
| Police car | front / rear | 4 | The sedan with more engine and stiffer tyres; light bar and siren |
| Taxi | front / rear | 5 | The sedan in yellow with a roof sign, a little lazier |
| Bus | rear / rear, dual rear tyres | 17 | Eleven tonnes, slow, a turning circle twice the sedan's; stops at the kerb in traffic |
| Ambulance | front / rear | 4 | A box on the van's chassis, quicker than the van; light bar and siren |
| Fire truck | front / rear, three axles | 4 | Nine and a half tonnes, a roof ladder; light bar and siren |
| Garbage truck | front / rear, three axles | 3 | The heaviest rigid truck, the slowest at the top |
| Pickup | front / all | 4 | The SUV's pull, a crew cab and an open load bed (its trunk) |
| Limo | front / rear | 6 | Stretched and black; lazy and slow to turn |
| Delivery scooter | rear / rear | 1 | The scooter with a top box; couriers pull in at the kerb |
| Ice-cream van | front / rear | 2 | Pastels and a cone; a jingle at a crawl, a hatch that sells ice cream when it stands |
| Tractor | front / rear | 1 | All pull and no speed, on the country roads |
Planned classes: military jeep and truck, motorboat, water scooter [NEXT]; tram, train, vehicles with turrets [LATER]. Vehicle features are blocks of their own: siren and light bar, livery (police, taxi, ambulance, fire), roof sign and roof ladder are built (the siren on G at the wheel), and so is a cargo bed (the pickup's, its trunk).
6.2 Handling (built)
- Full 3D physics: ramps, jumps, slopes and rollovers are real.
Rputs a stuck player back at the nearest spawn. - Drifting is the signature mechanic: the handbrake breaks rear grip, steering into the slide holds it, releasing the handbrake snaps the grip back.
- Drivetrain and engine placement give each class its character. When the engine asks for more than the driven tyres can put down, they spin: a rear-wheel drive power-slides and does donuts, a front-wheel drive plows wide, an all-wheel drive stays planted. Feathering the throttle is faster than flooring it. A front engine turns in sharply with a light tail; a mid engine rotates quickest; a rear engine has traction off the line and a tail that swings wide once it lets go.
- Boost: double-tap and hold
Wwhile the meter lasts. - Damage: health for cars and characters, wrecks; a fall from higher than about 4 m hurts, from about 12 m it kills (a game can switch falls off) (built). Engine smoke, then fire, then an explosion that lights the cars beside it, so a row of them goes up one after the other (built 0.44.0; a game can switch it off); dents per side
[LATER].
6.3 Getting a vehicle
- Get in any vehicle with a free seat, or ride along in another player's (built).
- Locks and ownership
[V1](built): every vehicle has an owner (nobody, a player, an NPC, a mission) and a lock. Keys are items. A locked car opens with its key, an app, or a few seconds of fiddling that raise the Heat (holdEthree seconds to pick it; seen, it is a crime). - Carjacking
[V1](built), GTA style: walk up to an occupied vehicle that is stopped or crawling and press the interaction key. You pull the driver out by force (they tumble to the ground), the passengers get out and flee (an armed crew, a guard or the police may fight back instead), and you take the wheel. Other players riding in it are put out beside it, except members of your party. A player at the wheel can be carjacked only where the game's rules let players hurt each other, never in a safe zone. Carjacking raises the Heat. - Seats
[V1](built): every vehicle has seat anchors with a pose (driver, passenger, rider, pillion), so characters show in open vehicles: the buggy, scooters, bikes. - Garages store vehicles and respray them
[V1](built: a respray clears the Wanted level unless the police see you go in; a stored car comes out again for its player in the room). Vehicle spawners and parking bays put locked cars with their keys somewhere in the level (built).
7. On foot, inventory and phone
7.1 Movement (built)
Walk, run (Shift), jump (Space). Q takes cover at a wall or a car: crouched behind low cover, flattened against a tall wall, moving along it but never away from it. The right mouse button pops up or peeks out past the edge. Animation for all of it [V1].
7.2 Interaction [V1]
One context key with a prompt: "Get in", "Open", "Talk", "Pick up", "Hack". The server checks range and facing. Today E gets in and out of vehicles, carjacks, picks up, opens containers, trunks and doors, talks to contacts and works terminals and keypads, with its prompt ("Get in", "Get in as passenger", "Carjack", "Pick up" and the item's name, "Open", "Open trunk", "Open door", "Locked", "Talk", "Use", "Hack", "Enter code") above the character.
7.3 Weapons and damage
- Built: fists, pistol, shotgun, rifle, rocket launcher and grenade (
1–6), each drawn in the hands as its model (0.44.0); from a car only the pistol, selected, forward. Shots pitch to whoever stands on the line of fire. A car shoves a person aside at a crawl, knocks them down above 20 km/h and kills them at 35 km/h. [V1](built): a tranquilizer gun (7, darts as items), a melee knockout from behind, and a non-lethal flag on damage (§8).[NEXT]: a stun grenade.
7.4 Inventory [V1]
- Items are data: a name, tags, a stack size, and actions (use, equip, drop, give, read). The catalogue defines the common items (weapons, ammunition, first-aid kit, cash, phone); a mission defines its own (the key of one car, a keycard, a forged permit).
- Containers: the character's inventory (slots), a car's trunk, an NPC's pockets, lockers, crates, shops, items on the ground. The server checks every transfer.
- Missions check tags, not names: "has an item tagged
key:vehicle:rental-17". - Weapons are items in slots, and so is their ammunition, kept in a pouch beside the slots so that a weapon shows once, its rounds left on its tile; the number keys select the slots (
1–9the first nine of sixteen,Xand a click the rest). A game gives its players a loadout; free roam gives the whole arsenal, the pistol on2to the tranquilizer on7. - On death, a character drops the mission items it carried (each game decides).
- An inventory lasts as long as the room
[V1]; carrying items from game to game needs accounts that remember them[LATER]. - Built: items as data with the common ones in the catalogue (the weapons and their ammunition among them), sixteen slots per character (
Fuse,Gdrop,Xnext slot, the number keys), items on the ground, crates, lockers and car trunks with a panel to move items, doors locked by a tag, NPCs' pockets (a searched guard gives up its gun), a game's loadout, the mission items a character drops where it dies (by the game's rules).
7.5 Phone [V1]
- The phone is an item. Its contacts, apps, messages and call log are items inside it, so missions add and remove them.
- Apps are data: text screens with choices and short forms, whose buttons run mission actions behind conditions. "Unlock" works if you are within 10 m of a car tagged
rentaland own the RentaCar app. The game only checks; "hacking" is choices, timers and items, never code. - Messages from contacts start and drive missions. Calls are short dialogue trees; conversations voiced by an AI come
[LATER]. - The map app sets waypoints on the minimap.
- A fake web
[NEXT]: pages of short marked-up text with links and actions, the satire's best channel (ads, news, start-ups). - The phone opens over the game; the world does not pause.
- Built: the phone as an item (
Ttakes it out over the running game,Escgoes back a page,1–9press its buttons); contacts, messages with replies, calls as dialogue trees and talking face to face to a contact (ETalk), apps as data (screens, buttons, short forms; RentaCar's Unlock within 10 m), terminals and keypad doors that open the same panel from the world, the map app's waypoint. The contents are entries the mission runtime keeps per player, not items.
8. Stealth and non-lethal play [V1]
In the spirit of Metal Gear Solid 2, simplified.
- Awareness: a vision cone (drawn on the minimap, and in the world on demand), hearing (shots, explosions, running, horns, breaking props), and a memory of where the player was last seen. Security cameras use the same cone.
- Alert phases: normal (patrolling) → suspicious ("?": turns toward the noise) → alert ("!": calls nearby guards, chases, shoots) → search (sweeps the last-seen area) → caution (patrols faster for a while) → normal.
- Statuses: awake; stunned (seconds); knocked out (a minute); asleep (from a tranquilizer, woken by noise or a shake); down (hurt); dead. A guard who finds a body raises the alert.
- Non-lethal tools: the tranquilizer gun (sleep after a short delay, faster from a head shot), a melee knockout from behind.
[NEXT]: hold-ups (aim at a guard from behind: hands up, drops an item), dragging and hiding bodies, distractions (knocking on a wall, throwing an object). - Mission hooks: "without kills", "without alerts", "without being seen".
- Built: statuses (stunned, knocked out, asleep, down, dead) drawn lying with a glyph; the tranquilizer (sleep after 3 s, 0.5 s from a head shot) and the knockout from behind; searching a body's pockets; guards' awareness (a 16 m, 100° cone blocked by walls, crouching behind low cover seen only up close, hearing by each sound's radius, a memory) and their phases with the
?and!above their heads; a guard who finds a body raising the alarm and shaking it awake; security cameras that sweep, spot and call guards, shot out or switched off by a mission; NPC spawners with a patrol or a post, a loadout and pockets; the objectivesincapacitateandsneakand the hooks "without kills", "without alerts" and "unseen" (test-stealth). Not yet: hold-ups, dragging bodies, distractions ([NEXT]), guards' schedules.
9. Missions
9.1 The mission language
Missions are JSON documents (schema in TECHNICAL_SPECS.md §9). The developer and the AI write them with the same building blocks:
- Actors: entities made from blocks (vehicles, NPCs with a role, items, interactables, zones), placed at places or anchors.
- Objectives, from the fixed verb list in §20, in sequence, in parallel groups, or branching (what comes next depends on how one ended); any objective can have a fail condition, and some hold while a condition lasts (
defenda territory while enemies are in it). - Rules, the mission's logic, in two shapes:
- When … if … do: something happened and the conditions hold, so the actions run once. "When the player cuts the alarm, if the guard is asleep, open the vault door and text the crew."
- While … do: for as long as a condition holds, with actions on entering it, on leaving it and every few seconds in between. "While raiders are in the yard, defend it: a new wave every 30 s, at most three waves; when the yard is clear, the objective is done."
- Triggers: mission start, enter or leave a zone, use an interactable, item gained or lost, status or alert phase changed, vehicle destroyed, timer, objective done, Wanted level changed, message read, app button pressed.
- Conditions: has an item with a tag, in a vehicle of a class or tag, near a place or an actor, alert phase, status, time left, a flag or a counter, the time of day, the weather (both built), and counts over the world ("raiders awake in the yard", "guards who saw the player"), combined with all, any and not.
- Actions: spawn (one actor or a wave), despawn, lock, unlock, open, close, give or take an item, add or remove a contact or an app, send a message, show text, set an objective's state, set a flag, add to a counter, start or stop a timer, set the Wanted level, set an alert phase, set the weather or the clock, skip hours on (built), reward, fail, complete.
- Dialogue: short lines on actors, objectives and messages.
- Never stuck: every objective points somewhere (its place, its actor, or a marker it names) and has a hint, and every mission has a help line, a contact the player can always call for the hint of what is under way; a person a mission needs who dies fails it, so it starts again rather than waiting forever; a target that hid comes back out.
- Checkpoints: every objective done saves one (the creator turns any off); dying fails the mission, and a failed mission goes back to its last checkpoint with everything as it was then: the player where they stood (or at the wheel), what they carried, their Cash, the mission's cars, people, items and doors.
- Rewards: Cash and Rep.
The validator enforces the same limits on every mission, curated or player-made: every reference resolves; at least one path leads to complete; every objective can be reached over the roads or on foot (an AI playtest drives it); time limits add up to 20 minutes at most; every repeating action has a cap (waves, spawns), so the room's budgets (NPCs, vehicles, items) hold.
9.2 Example mission (canonical style reference)
Place names are illustrative.
{
"meta": { "id": "cur.hillside.001", "title": "Same-Hour Rental", "blurb": "Keyless pickup, they said. The key is in the app. The app is in beta.", "difficulty": 1, "tags": ["delivery", "phone", "timer"] },
"items": [{ "id": "rentacar", "kind": "app", "name": "RentaCar", "tags": ["app:rentacar"] }],
"actors": [
{ "id": "car", "type": "vehicle", "class": "compact", "at": "hillside.car_park.bay_2", "locked": true, "tags": ["rental"] },
{ "id": "drop", "type": "zone", "at": "hillside.lookout", "radius": 8 }
],
"objectives": [
{ "id": "unlock", "verb": "unlock", "target": "car", "with": "app:rentacar" },
{ "id": "drive", "verb": "deliver", "vehicle": "car", "to": "drop", "timeLimit": 180, "maxDamage": 40,
"fail": { "when": "vehicleDestroyed", "text": "The app has rated you one star." } }
],
"triggers": [
{ "on": "mission:start", "do": [
{ "give": { "item": "rentacar", "to": "player.phone" } },
{ "sendMessage": { "from": "Dispatch", "text": "RentaCar installed. Bay 2. The app counts every scratch." } }
] },
{ "on": "objective:drive.done", "do": [{ "reward": { "cash": 400, "rep": 20 } }, { "complete": true }] }
]
}9.3 Presentation
Objective markers in their colour, a route line on the minimap, the tracker (objective, timer, damage limit) in the top-left, dialogue as short toasts, messages on the phone. Missions start in the world where possible: a message, a call, a contact waiting at a place. Other players see a small marker on a player who is on a mission, not the objective.
10. Creating games with AI
10.1 What a creator can make
- Missions on an existing level: a curated game's level or any published one
[V1]. - A remixed level: districts, building mix, density, roads from templates, a seed
[V1]. - A free layout: terrain, rivers, tunnels and bridges described in words
[NEXT].
10.2 The conversation
- The creator talks to Claude in Claude Code, with the
five-on-itMCP integration added and signed in to their account. The integration gives Claude the tools (the catalogue, drafts, builds, playtests, publishing, rooms), the block docs, this tone guide and the curated games as examples. In Claude Code the creator brings their own Claude. - Or, owning the game on Steam, the creator writes a short brief in the game (planned, decided 2026-10-16). The platform runs one tool-calling model on the same tools, as a job in a queue the game shows (its place, its steps, Cancel), at most 5 creations a day per account (the allowance resets each day and is never carried over), all of it under a monthly cap on what the platform spends. Nobody brings their own key.
- Claude uses only the block catalogue. When a wish is impossible, it builds the nearest allowed idea and says what changed, in character ("Legal said no to the helicopter. You get a golf cart.").
- The validator's errors go back to Claude, which fixes them before the creator sees anything.
- Creators who want to can see and edit the data itself: a draft is plain JSON.
10.3 Preview, playtest, publish
- Preview: every build returns a link that opens the level in the real renderer, in the browser, with a camera free to fly over it, before anything is published.
- Playtest in a private room, alone or with invited friends.
- Publish: a draft is private; a published game is reachable by link or listed publicly; the best get featured.
- A published game is pinned to the versions of the blocks and the generator it was built with, so it plays the same until its creator updates it.
- Remix: any public game can be copied into a new draft; the credit stays.
10.4 Limits and safety
- Quotas on builds, playtests and rooms per account per day, and on the creations of the in-game model (planned); Claude's own usage in Claude Code is the creator's subscription. An admin can raise or lower an account's limits, for a while or for good. Size budgets per game (area, pieces, NPCs, vehicles).
- Every text strangers will read is moderated: the titles, blurbs, dialogue, messages and app screens of a game made public, and the chat of public rooms. Private games (shared by link) and their rooms are not moderated. Any game can be reported, and public games taken down.
- The AI refuses, kindly and without preaching: real people, hate, sexual content, anything involving minors, real brands as targets, anything that would read as a real crime tutorial.
- Every player-made game is labelled with its creator's name and can be reported.
11. The five curated games [V1]
The curated games are the shipped content and the AI's reference examples (their level specs and missions are the examples Claude is given), and each one proves a set of blocks. They are built with the same tools players use (Claude Code with the MCP integration, and the generator), then polished only where blocks allow it. They come in this order, each as soon as its blocks exist (milestones in TECHNICAL_SPECS.md §11), and every one uses only [V1] blocks:
| # | Game | Proves | Playable from |
|---|---|---|---|
| 1 | Hillside (withdrawn until its city is redrawn) | Driving: a race down a rally track, a delivery against the clock, a photo, street furniture knocked over | M1 |
| 2 | Downtown job (withdrawn until its city is redrawn) | Inventory, phone apps, locks and keys, carjacking, garages, a bank heist, the police | M3 |
| 3 | The compound (withdrawn until its city is redrawn; its walled compound stays as the test level test-compound) | Stealth: guards, cameras, doors and keycards, non-lethal tools, "without kills" | M4 |
| 4 | Rush hour (withdrawn until its city is redrawn) | Ambient traffic and traffic lights, a ride-hailing app, taxi and ambulance runs against the clock, a chase, a night race, the weather and the clock scripted | M5 |
| 5 | Delivery Wars | Rival delivery-app crews fight over districts: territories to defend while rivals are in them, waves, crews, carjacking, chases | M5–M6 |
One curated game ships, and it is none of the five: Smart City Pilot (main-riverbend, built: four missions), on Riverbend, the flagship city drawn freely round a river's loop: a rental against the clock, a race once round the parkway, an escort, a photograph. Hillside, Downtown job, The compound and Rush hour were built and shipped, each on a city of its own, and were withdrawn with those cities in 0.58.0: the playtest of 2026-10-13 found their level design wanting, every street on a grid. Each comes back when its city is redrawn; a city level template that draws a city freely from a spec, as Riverbend is drawn, is planned for that.
The first game after V1 is Harbour (water, boats, smuggling), with the water blocks [NEXT].
12. Police and the Wanted level
| Stars | Heat | Response |
|---|---|---|
1 [V1] | 10 | One cruiser tails you; it leaves after 20 s without a new crime. |
2 [V1] | 25 | Two cruisers pursue and try to ram. |
3 [V1] | 45 | Faster cars; officers throwing nail strips across the road at the junctions ahead. |
4 [NEXT] | 65 | Roadblocks on bridges and at tunnel mouths. |
5 [NEXT] | 85 | Everything, plus a drone that keeps the Heat from decaying while it sees you. |
Heat comes from stealing and carjacking (+8 to +20 by class), hitting pedestrians (+10), hitting police (+15), breaking property (+2 each), speeding past police (+3) and some mission actions. It decays by 1 per second out of police sight; a respray sets it to 0. The police use the chasers' profiles on the road graph, pick chokepoints for roadblocks, never enter safe zones and give up 30 s after losing sight. A game can switch the police off.
13. Multiplayer [V1]
- Rooms: opened from a game, 1–32 players, private (by link) or public. The desktop app can also host a room on the player's machine (built today: the app runs its own game server).
- Shared world: NPCs, traffic, items and doors belong to the room. Missions run per player or per party of 2–4 sharing progress; a multiplayer mission is played in a run of its own (below).
- Mission modes (decided 2026-10-18; solo, co-op and versus built): a mission is
solo(the default, as every mission is today),coop(one team against the mission: a story heist) orversus(two or more teams, or everyone on their own: robbers and chasers, a race between players). The creator sets the players it needs (a minimum and a maximum, per team in versus), whether players may join once it has started (never, until the first checkpoint, always), the Respect it asks for, the lives (per player or per team), what a death does (back at the last checkpoint, at the team's spawn, or out to watch), the retries after a failure, and friendly fire (off by default). - Runs (solo, co-op and versus built, from a game's page): every multiplayer run, and every solo mission picked from a list, is played in a room of its own with only its players, each one's team in their join token. The open city stays the hub: solo missions start there as they do today, multiplayer ones never do. The server measures the run (who did the objectives, who was down, who hurt a teammate, who left or stood idle) and reports its result to the platform. A player who drops has a minute to come back to their seat; a team left empty forfeits; a co-op run plays on with fewer players than it started with. A run that takes players once it has started (built) has its empty seats filled: until its first checkpoint, the seats it lost; always, those and the room left on each team. A late joiner comes in where the run stands (at the team's spawn in versus, at the last checkpoint in co-op), on the objective under way, and earns Respect for the part of the run that was theirs.
- Lobbies (built, each player's Respect tier on them, and the phone's Jobs app): a lobby shows the mission, its level, its rules in words (the Respect tier it asks for among them), the teams' slots, each player's Respect tier and whether they are ready. It starts when every team has its minimum and everyone is ready (at once when full), and after the results it votes on the next mission, on any level, or plays again, so the group stays together. Players find a lobby on a game's page, in the list of public lobbies, through Quick play (a playlist, co-op, versus, races or any, that places them in a lobby on any level, or in an empty seat of a run under way), through invites, and in the city on the phone's Jobs app (built: the invitations, the lobbies that need players, the missions of this level and the others, Quick play). The platform's playlists (built) are rotations across levels of the curated missions and the creators' missions that have earned Respect; a lobby opened from a playlist moves on along it after each run when nobody votes, to a mission on another level: the group keeps playing, level after level.
- Interaction: ramming, blocking, riding along (built), taking an empty car, and carjacking and shooting where the game's rules allow it (§6.3).
- Game rules set by the creator: player damage (off, rivals only, on), respawn (hospital, mission start), maximum players, police on or off.
- Griefing controls: safe zones, a few seconds as a non-colliding ghost after respawning, mute, vote-kick, report (built).
- Communication: text chat (moderated in public rooms), quick-chat, emotes
[V1](built: room chat through the game server, party chat and direct messages through the platform, eight quick-chat phrases and six emotes; emotes play over the character too). - Fairness: the server decides everything; your own car and character are predicted, everyone else is shown slightly in the past (built).
14. Progression and economy
- In a game
[V1]: Cash and Rep from missions, spent in that game's shops, garages and resprays. They last as long as the room (built: one Cash per player for rewards, cash picked up, shops, garages and fines, shown in the wallet; a bank balance beside it at the cash machines, which the fines never touch). - Across games (built; decided 2026-10-18): an account's Respect, earned in runs and never lost. Guests play and see everyone's tiers, but earn and hold nothing; a playtest, an abandoned run and a lost one count for nothing.
- Paid by the platform, never by a game (a mission's
repstays the room's Rep): a run pays 10 a minute it was played (no more than its clock allows, 20 minutes at most), more for a mission few players finish (up to twice for a curated one, half again for a creator's, once it has 20 runs). Complete or won pays it whole, the winning team of a versus match a fifth more, a draw 90 %, a lost match 80 %, a failed co-op run half: failing or losing never costs anything. A player's share needs them there (connected half the run at least, idle under a quarter of it, there at its end), those who did the team's objectives earn up to 30 % more, and one who did none of the team's work gets half on a run won, nothing on one lost. - Endorsements: after a run a player may endorse up to two teammates outside their own party (in versus a rival too, never a member of their party), when both were there: +5 each, three counted a run, once a day to the same player, weighted by the endorser's conduct and halved again for a pair that endorsed each other that week.
- No farming: the same mission pays 100 %, 50 %, 25 %, then 10 % in a UTC day (a creator's missions counted together, so a new one resets nothing), and a creator's mission pays only once 20 players have played its version and 5 have rated it 3 stars or more, counting only players who were there, are not its creator and already hold the tier Local (its players rate it from the results); a new version starts over. Curated missions pay from the start.
- Tiers: five, named in the satire's tone: Unverified (0), Local (500), Trending (2,000), Verified (6,000) and Iconic (15,000). The account's page shows the tier, the total, the next tier and the season's Respect; lobbies and a run's roster show each player's tier. A mission may ask for a tier (
play.respect.min); a creator's may ask for tier 2 at most until it qualifies. - Conduct, hidden but from the player (who sees their band, Good, Warning or Low, and why it moved) and the admins and moderators: 0 to 10,000, a new account 7,500. It scales what a player earns (Good whole, Warning half, Low nothing). A clean run brings back 100; leaving a run, killing or badly hurting a teammate (only where a mission turns friendly fire on: one crash costs nothing), failing a run by hurting the mission's people (sabotage), standing idle most of a run, being voted out twice in a week by many players outside one's party (different voters each time), and a report a moderator upholds lower it, at most 1,500 a run. It recovers only by clean runs. While at least 16 players are in Quick play, the Low band is matched with each other; with fewer nobody is split off.
- Skill, seen by nobody: a Glicko-2 rating from versus runs (of the players who were there; teams rated as the mean of their players; a free-for-all by places), used only to balance a versus lobby's teams (sizes first, then skill) and to prefer, in Quick play, lobbies of a similar skill.
- Seasons: the leaderboard counts the Respect earned in a season (a calendar quarter, UTC) and of all time; Respect itself never resets.
- The platform can keep it in the shadow (computed, shown to nobody, gating nobody) or switch it off (
FOI_RESPECT).
- Paid by the platform, never by a game (a mission's
- For creators
[NEXT]: creator Rep (plays, ratings, features); cosmetics. - No pay-to-win, and no real-money items in V1.
15. Tone and writing guide
- Voice: deadpan, quick, a little tired of everything. Jokes come from institutions and trends behaving absurdly, not from characters being humiliated.
- Targets: start-ups and growth-speak, delivery and rental apps, HOAs, wellness grifts, crypto, the influencer economy, city bureaucracy, "smart city" tech, greenwashing, luxury real estate.
- Never: real people or companies, slurs, punching down at groups, sexual content, drugs as a mechanic, anything that reads as a real crime tutorial.
- Formats: game and mission titles ≤ 40 characters and punchy ("Same-Hour Rental", "Disrupt the Disruptors"); blurbs ≤ 140; dialogue lines ≤ 120, one joke at most per line; messages ≤ 160; an app screen ≤ 400.
- Naming: vehicles and brands are invented parodies; cities and districts have plausible invented names.
- Player-made games follow this guide; moderation enforces the "never" list.
16. UI and HUD
- HUD: speed, health (yours and the car's), the Wanted level, the mission tracker (with who to call when stuck), the interaction prompt. Today's HUD also shows the developer readouts (grip, slip, prediction).
- Banners mid-screen for what must not be missed (built): YOU DIED, MISSION FAILED with why, MISSION COMPLETE, LEVEL RESET, DISCONNECTED.
- Minimap with the route line, mission markers, NPC vision cones and police (built).
- Phone over the game; inventory screen; chat.
- Game browser: curated, featured, friends', your games and drafts.
- Creator: the conversation happens in Claude Code, or (planned) in the game's creation page for its owners on Steam: a brief, the queue with its places and Cancel, the results; the game shows what either produces. A build's preview link opens the level in the browser with a free camera; drafts and playtest rooms appear in the game browser under "your games".
- Accessibility: remappable keys (decided 2026-10-12: the only accessibility setting for V1).
17. Audio
- Built: engine loops by class, tyre screech, sirens (the player's own and the nearest other), the horn, music, the weapons' shots, hits and carjacks; a sound bank of events whose placeholders (synthesized in code) a file dropped in replaces; the radio as in GTA (five sample stations: pop, synthwave, news satire, wellness talk, podcasts; live on their own clock; a wheel, keys, the phone's Radio app; earbuds on foot).
[V1]: phone sounds, interface blips, footsteps.[LATER]: real recordings for the stations and the sounds, ads between the radio's items, voiced barks, music that follows the chase.
18. Scope
V1: the first shippable release
Ticked as it lands (the engineering checklist is TECHNICAL_SPECS.md §11, Progress):
- [ ] The creation platform end to end: describe (in Claude Code) → build → check → preview → playtest → publish → room → play.
- [x] Publishing: drafts, builds checked against the level, playtest rooms, games published by link or publicly (public texts moderated).
- [x] Game pages: the page of games (search, sorts, featured), a game's page with its preview, Play and Join, ratings, reports and takedowns, remix (M6).
- [x] Creating in Claude Code: the
five-on-itMCP integration (tools, resources, prompts), levels generated from a level spec by the Blender worker and checked (budgets, every place reachable), the platform deployable with Compose on one host. - [x] The mission language grows: counters, queries,
whilerules, waves of enemies,survive,defend,lose,eliminate, branching objectives (built early, M3). - [x] Missions as data:
goto,steal_vehicleanddeliverobjectives,when/if/dorules, rewards, the mission tracker, phone-style notices and the target marker (§9).
- [ ] One of the five curated games (§11) first: Hillside, playable from M1.
- [ ] Its missions ("Same-Hour Rental", "Ash Cloud Rally", "Lakefront Content" and "Disrupt Parking") were withdrawn with its level in 0.58.0 and wait for its city to be redrawn.
- [x] A curated game ships meanwhile: "Smart City Pilot" on Riverbend (a rental across town, a race once round the parkway, a consultant escorted to the stadium, the market's fountain photographed), in
packages/missions/content/main-riverbend.json.
- [ ] The blocks tagged
[V1]in §5–§8, each with its mini test level. - [x] Stealth and non-lethal play; inventory and phone; locks, keys and garages.
- [x] Items, inventories, containers (crates, lockers, trunks) and doors locked by keys (M3,
test-inventory,test-interaction). - [x] The phone: messages, calls, contacts in person, apps as data, terminals and keypad doors, the map's waypoint (M3,
test-phone). - [x] Stealth and non-lethal play: statuses, the tranquilizer and the knockout, guards' awareness and alert phases, cameras, patrols, pockets and keycards (M4,
test-stealth). - [x] Locks and ownership, keys, picking, vehicle spawners, garages with resprays and storage (M3,
test-locks-garages).
- [x] Items, inventories, containers (crates, lockers, trunks) and doors locked by keys (M3,
- [x] Ambient traffic and pedestrians; carjacking; the police up to 3 stars.
- [x] Ambient traffic and traffic lights: drivers on the lanes, queueing, giving way, fleeing carjackers and gunfire (built early, M5).
- [x] Pedestrians with roles on the pavements, and the city's vehicles: taxi, bus, ambulance, fire truck, garbage truck, with liveries, light bars and sirens (M5).
- [x] The police up to 3 stars: Heat, stars, police cars that tail, ram and shoot, losing them, arrests (built early, M5).
- [x] Carjacking: the driver pulled out, the passengers fleeing, the interaction prompt (built early, M3).
- [ ] Rooms of up to 32 players, parties, chat (moderated in public rooms), accounts.
- [x] Rooms opened on the game servers for any published game, joined from the client's Games tab; guest and creator accounts (development or Nakama).
- [x] Friends and presence, parties of 2–4 sharing mission progress, room and party chat moderated in public rooms, mute, vote-kick, player reports, safe zones and the respawn ghost (M6,
test-safe-zones).
- [x] The desktop app and the browser.
- [ ] All of the five curated games (§11) by the release.
Status on develop
What the V1 list above still lacks on develop (0.27.0), section by section; every block not named here is built and has its mini test level (TECHNICAL_SPECS.md §10.2, the testing guide docs/guide/playtesting.md).
- Missions (§9, §20): the small marker other players (outside a party) see on a player who is on a mission (§9.3).
- Multiplayer (§13): rooms of 32 players proven by load tests (the rule exists, no load test yet).
- UI and audio (§16, §17): phone sounds, interface blips, footsteps.
- Content (§11): the five curated games: Delivery Wars is not built, and Hillside, Downtown job, The compound and Rush hour are withdrawn with their cities until those are redrawn ("Smart City Pilot" on Riverbend ships).
Planned right after V1 [NEXT]
Water, boats and the Harbour game; the police at 4–5 stars; the fake web; free layouts described in words; creator Rep and cosmetics (Respect across games is built, §14); hold-ups and distractions.
Not in V1
Interiors beyond the kits' walk-in buildings, models or art uploaded by players, trading between players, a real-money shop, mobile, NPC conversations voiced by an AI, a full ragdoll, trams and trains. There is no voice chat, and there will be none.
19. Decisions and open questions
Decided (2026-10-05):
- The five curated games and their order: §11.
- Accounts run on Nakama (engineering in
TECHNICAL_SPECS.md§9.6). Guests can play public games and games shared by link with a device account; creating needs a signed-in account. - Who pays for the AI: the creator, through their own Claude subscription in Claude Code with the MCP integration. The game's quotas cover builds, playtests and rooms. Revised on 2026-10-16 (decision 7).
- Private games (shared by link) and their rooms are not moderated; public games and public rooms are (§10.4).
- No voice chat, ever.
- Day and night and weather were planned for right after V1 (§5.7); they came early, in 0.52.0 (2026-10-12): the room evolves its own weather, games and missions script it and skip time ("3 hours later"), the day's length is per level, game and mission, and the night has sensible defaults and a brightness setting.
Decided (2026-10-16):
- The game's owners on Steam may create in the game too: the platform runs one tool-calling model for them (through OpenRouter, or Claude on the operator's own Anthropic key), under a hard monthly cap ($25 by default, a setting), and never takes a key a player brings. Every creation is a job in a queue, at most 5 a day per account (reset daily, not carried over); admins may override any account's limits. Claude Code over MCP stays. Planned, but for the queue, the quotas and the admins' overrides (
TECHNICAL_SPECS.md§9.8, §13 decision 9).
Decided (2026-10-18):
- Multiplayer missions (§13, §14): a mission is solo, co-op or versus with the players it needs; a multiplayer run is played in a room of its own, gathered by a lobby that takes its players on to the next mission across levels; players find runs through public lobbies, Quick play and invites; co-op and versus come together, co-op being one team. An account's Respect across games is minted by the platform from what the server measures, scaled by a hidden conduct score, with a hidden skill rating for versus. Built: runs with teams, lobbies and Quick play, Respect with its conduct, skill, endorsements, gates and seasonal leaderboard; continuous play across levels and the phone's Jobs app are next (
TECHNICAL_SPECS.md§11, §13 decision 10).
Open:
- Default rules of a new game: player damage, police, respawn.
- What creators get from success: featuring, Rep, a revenue share
[LATER]. - Languages: English first. The data is language-neutral; dialogue is not.
20. Objective verbs (quick reference for generators)
| Verb | Parameters | Completes when | Today |
|---|---|---|---|
goto | place or actor, optional vehicle constraint, time limit | The player is within the radius | built |
pickup | actor or item, place | The item is in the player's inventory or vehicle | built |
deliver | vehicle or item, to (zone or place), time limit, maximum damage | Arrived with the constraints met | built |
give | item, to (an NPC or a container) | The item has changed hands | built |
use | interactable | The player has used it | built |
unlock | door, gate or vehicle; with (key, keycard, code or app) | It is unlocked | built |
talk | contact or NPC, dialogue | The conversation ended | built |
escort | actor, to, protect (maximum damage) | The actor arrived | built |
defend | zone, while (a condition, such as "enemies in the zone"), fail if (a condition, such as "enemies at the crates for 10 s"), optional time limit | The while-condition ends (the zone is clear) or the time runs out without a fail | built |
chase | target actor, catch radius or time limit | The target is stopped within the radius | built |
escape | from (police or actors), duration or distance | Out of sight for the duration | built (from the police: the stars back to zero; from actors: out of their sight for the duration or beyond the distance) |
incapacitate | NPC(s), non-lethal only or not | Every target is asleep, knocked out or (if allowed) dead | built |
sneak | zone or path, maximum alert phase | Through without exceeding the alert phase | built |
destroy | actor(s) | All destroyed | built (NPCs, vehicles, cameras and light pieces) |
survive | duration, optional zone | The timer ran out without a fail | built |
race | checkpoints, rivals, laps | The player crosses the finish first | built |
collect | items or props, count | The count is reached | built |
steal_vehicle | actor or class, optional place | The player is driving it | built |
photograph | actor or place, from a zone | Interaction inside the zone | built (the phone's camera) |
wait | duration, optional place | The timer ran out | built |