Spawn rooms, in blocks. 0 = automatic (sized from the grid).
Cross-links make loops & flanks (Rule 2). Every choke is guaranteed a flank or gets widened (Rule 3). Jitter offsets rooms so no lane is a dead-straight alley (Rule 5).
Rooms become flat clearings; corridors ramp between them so every join stays walkable. Relief rolls the clearings up and down; the ridges between lanes do the sealing.
Swap any block the theme uses — click a swatch to pick from the atlas, × to go back to the theme's own block. Picks stay on when you change theme.
The kirka atlas is built in. Load another texture.png to preview with it.
The rim seals the footprint so the open map can't be walked off. Risers are quantised to the rim step, never below 3 — unclimbable.
Focus: click or drag on the 2D map · drag the 3D view to walk across the map · double-click a block to centre on it · arrows/WASD move (shift = faster), Q/E rotate · scroll zooms · shift-drag slides the picture