The Isomania map is no longer edited by hand in a text file. The project has a map editor, and the world of the game is now built with it. Players have no access to it, and that is the first deliberate decision in how it is arranged.
The editor works locally only
The editor exists only in development mode. A route that allowed the world to be rewritten on the production server would be the most dangerous place in the whole game, so no such route exists. The order of work is different: the map is edited locally, saved, committed to the repository and deployed to the server together with the code.

The collision grid is not drawn by hand
The most important property of the editor is that the collision grid is not edited separately but derived from the placed objects. The rules for which cells an object occupies were obtained by measurement: they were compared against all 30,000-plus cells of the existing map and matched completely.
Two of those rules were not obvious: a lamp blocks nothing, and a bench occupies three cells along its own axis, which for the benches on the square means a diagonal.
A dedicated test continuously verifies that the stored collision grid still corresponds to the placed objects.
A shared editing session
Every edit is a separate operation, which is sent to the local server and pushed back to everyone who has the editor open. Because of this, one unsaved map can be edited by two authors, with the edits appearing immediately and labelled by author. The list of operations doubles as a history panel with undo. A sort of minimal Figma, only for editing the game.
Saving restarts the game server
The game server reads the map at startup, so saving restarts it. This moment used to look like a server error; now the editor blocks the interface for the duration of the restart: the scene is blurred and a card shows the stages in turn — written, stopping, coming back. Nothing can be clicked until the server answers.
The map stopped being square
The size of the map was set by a single number, so any expansion added land on two sides at once. The price of that decision lay right in the file: 96 empty columns of grass on the eastern side, that is a third of the document. Width and height are now set separately, land is added on the side where it is needed, and the excess can be cropped.

Cropping does not destroy content: if the strip being removed holds an object, a painted cell or the player spawn point, the operation is cancelled with the reason given. A crop that quietly removed a house would only be discovered a week later, on walking to the place where it used to stand.
A lesson about tests, learned four times in one day
On the very first day of real use of the editor four tests broke, and not one of them had found an error in the code. All four were tied to the specific contents of the map: “exactly two benches”, “this cell is a fence”, “the size equals 176”. The map grew, shifted and gained a third bench, after which the tests went red while the code was entirely healthy.
Numbers about the map are now found by the tests in the map itself. That costs one millisecond and does not expire.