The open world received cars, and the player’s spawn area stopped being a hardcoded point and became a brush-painted zone in the map editor. Along with that the world learned how to be large: all of the ground and all of the buildings are now split into pieces, so a phone draws roughly sixty-five times fewer triangles than it used to. The game also received legal pages of its own, and entering the world gained a crossfade in place of the camera fly-over.
A car is a kart with a roof
A car has no physics of its own. It is a kart with a roof and a palette of its own: the suspension, the slip angles of the tyres, the handbrake, the nitro and the synthesised engine sound are the same ones, untouched. What is new is where cars come from and how many of them there may be in the open world.
Two limits inherited from the kart had to be lifted. The karting zone walled off every cell outside itself, and full speed was granted only on the clay surface of the circuit. Both conditions are now asked of the vehicle rather than baked into the grid of the world, so a car drives through the village while the kart stays in its zone.
Four system areas in the map editor
The player’s spawn point became an area that an administrator paints with a brush in the map editor. Three more appeared along with it: where hens come out, where loose footballs live and where cars are parked. One table drives all four, describing the document layer, the key in the world and the editor brush at once.
The number of cars now belongs to the map editor as well, and no longer to hardcoded values: one car for each separate zone of the car brush, so the administrator’s ceiling is a property of the painted world. An empty area means “as before”, never “nowhere”, so every map saved until today behaves exactly as it behaved.
The well stopped being a required single object and became an ordinary object within a collection, one that can now be placed, moved and taken away like any other element. That is what unblocked moving the main square in the centre of the map.
Tools for the administrator
The world tab gained commands that put the world back in order: reset the positions of karts, cars, hens, footballs or players, return to the spawn area, and three named running tiers along with movement through obstacles, a god mode of sorts for the administrator. Both movement powers remain facts the server holds: a movement report may claim a stance and a position, but never a speed tier and never a permit to ignore walls.
The open world, or the village to be precise, now has a ring road. Trees and bushes have been removed, lamps, rocks, flower beds and barbecues have stepped aside, and eight yards have been moved so as not to stand in the way of the road through the middle of the village, that is together with the fence, the gate, the house and the trodden ground, with their geometry intact.

A map a phone can carry
A test on a synthetic map four times larger than the current one showed that the server, the wire and every derived grid scale fine, while the client renderer does not.
The cause was a single mesh. All of the map’s ground was one merged surface, so its bounding sphere covered the whole island and frustum culling rejected nothing: the graphics card received the entire ground of the world every frame, however little of it was visible. The architecture — the cottages with the well — was a second such mesh of eighteen and a half thousand triangles, and it cast a shadow as well, which put it in both passes.
Now the ground, the buildings and the large groups of trees are all laid out in chunks of thirty-two by thirty-two, each with a sphere of its own. On that same map four times larger than the current one, triangles per frame became 66,982 instead of 4,352,774, draw calls in the main pass twelve instead of fifty-four, and the shadow pass fell from a million and a half triangles to four and a half thousand.
The picture did not change by a single pixel, and that is proven rather than assumed: a sorted fingerprint of the position and colour of every triangle matches byte for byte before and after the split.
The memory spike disappeared as a side effect: building chunk by chunk holds a transient array the size of one chunk instead of the whole map, so the peak of 259 megabytes no longer occurs. The editor learned to build maps of up to one thousand and twenty-four cells along each axis separately, and a single brush stroke became cheaper, from seventeen and a half milliseconds to five.
Entering the game
The camera used to glide cinematically from the square to the character after entry. It now shows the character at once, and the move from the lobby into the game is made as a genuine smooth transition from one frame to another.
The mechanism is this: before the camera moves, the game captures the current frame of the lobby and lays it over the screen. The still matches what is already drawn, so the substitution is invisible; then the camera snaps onto the character while the frame on top slowly becomes transparent, revealing the live game underneath.
The popup for an update, or for returning to the game, received a separate fix. It is the only window that appears without an action from the player, and in the first-person view it became a trap: the cursor is captured and hidden, the button is visible and there is no way to find the mouse. Showing that window now hands the cursor back to the player.
The last of the small things concerns playing on mobile devices: a stale style rule crushed the 272 by 77 sign-in wordmark into a 46 by 46 square. The rule only applied to screens under 560 pixels, so no desktop browser ever triggered it and the mistake lived unnoticed.
The game received its papers
Three public pages appeared — a privacy policy, terms of use and a page about cookie files, each in two languages. They are served ahead of the startup gate, so a crawler that arrives at the moment the server is starting reads the document itself rather than a notice that the site is unavailable.
Analytics now switches on only after a real yes. The counter’s loader used to travel alongside the rest of the page, and Google’s file appeared in the browser before anyone had been asked about it. The game now reads the stored answer first, shows a banner with two deliberately identical buttons when there is none, and attaches the counter only after consent, never after a refusal. The switch for changing one’s mind lives in the settings. This is the same approach as on the game server, and the same one that works in this blog.
All links to the blog and to the documents now open in the current tab rather than in a new one.