destroyulator/game/dev
Monster Robot Party e588508436 LANE10: the whole shop — four rooms, stitched by its own portal graph
The hip-hop room has stock (7 racks, 47 bins, 2,865 records); the entry hall and
back room are empty. Import all four anyway: the empty rooms are the connective
tissue, and they are the only floor in the building big enough to get an office
chair up to speed.

A portal pair is one doorway seen from both sides, so the importer walks the graph
and places each room by making its portal land exactly on its neighbour's. Every
pair here sits on parallel walls with opposite facings, so each join is a pure
translation — and when one isn't, it says so rather than quietly getting it wrong.
It then recentres the union, emits the interior walls with a gap at each doorway,
and puts the spawn in the entry hall, because that is the way in.

  hiphop-room <-> entry-hall <-> shop-floor <-> back-room
  12.96 x 15.41 m - 36 racks - 325 bins - 302 real genre labels - 24,024 records

Levels.record_store() now takes the walls and rooms from the import, hangs the
street glazing on the entry hall's outer wall, and lays a light grid across
whatever footprint the rooms came out as.

probe_store.gd also checks the new facts: five doorways exist, and the spawn has
nothing in it (excluding the player, who is supposed to be standing there — that
false positive was the probe's bug, not the level's).
All gates green: smoke clean, 7/7 sites 0.00 m/s, overlap CLEAN, all probes pass.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-04 02:48:39 +10:00
..
demo.tscn LANE6: rigged FPS viewmodel, weapon loadout + material matrix, 4 HUD styles 2026-07-31 16:34:00 +10:00
DemoDriver.gd LANE8: scales that swing, bags that don't open, and fruit you can throw 2026-08-01 11:22:47 +10:00
DemoDriver.gd.uid LANE6: rigged FPS viewmodel, weapon loadout + material matrix, 4 HUD styles 2026-07-31 16:34:00 +10:00
probe_arms.gd LANE6: rigged FPS viewmodel, weapon loadout + material matrix, 4 HUD styles 2026-07-31 16:34:00 +10:00
probe_arms.gd.uid LANE6: rigged FPS viewmodel, weapon loadout + material matrix, 4 HUD styles 2026-07-31 16:34:00 +10:00
probe_backrooms.gd LANE7: LEVEL 0 — the Backrooms, generated walls, and the dust mechanic 2026-07-31 19:05:56 +10:00
probe_backrooms.gd.uid LANE7: LEVEL 0 — the Backrooms, generated walls, and the dust mechanic 2026-07-31 19:05:56 +10:00
probe_bags.gd LANE8: scales that swing, bags that don't open, and fruit you can throw 2026-08-01 11:22:47 +10:00
probe_bags.gd.uid LANE8: scales that swing, bags that don't open, and fruit you can throw 2026-08-01 11:22:47 +10:00
probe_chair.gd LANE9: ride the office chair 2026-08-04 00:25:32 +10:00
probe_chair.gd.uid LANE9: ride the office chair 2026-08-04 00:25:32 +10:00
probe_death.gd LANE7: you can die in LEVEL 0, and how you died decides which death you get 2026-07-31 19:44:26 +10:00
probe_death.gd.uid LANE7: there are two of them, and the room changes one thing every loop 2026-07-31 20:07:44 +10:00
probe_gauntlet.gd LANE7: the Gauntlet, four modes, two more provocations, and ambient attrition 2026-07-31 18:12:20 +10:00
probe_gauntlet.gd.uid LANE7: the Gauntlet, four modes, two more provocations, and ambient attrition 2026-07-31 18:12:20 +10:00
probe_grocer.gd LANE8: scales that swing, bags that don't open, and fruit you can throw 2026-08-01 11:22:47 +10:00
probe_grocer.gd.uid LANE8: the greengrocer — soft stock, stacks that collapse, and litres 2026-08-01 09:38:35 +10:00
probe_horror.gd LANE7: LEVEL 0 gets an entity, a tape, and a loop 2026-07-31 19:25:28 +10:00
probe_horror.gd.uid LANE7: LEVEL 0 gets an entity, a tape, and a loop 2026-07-31 19:25:28 +10:00
probe_levels.gd LANE9: the grocer is still again — settle sweep + parked scale pans 2026-08-03 23:57:25 +10:00
probe_levels.gd.uid LANE7: the Gauntlet, four modes, two more provocations, and ambient attrition 2026-07-31 18:12:20 +10:00
probe_overlap.gd LANE8: scales that swing, bags that don't open, and fruit you can throw 2026-08-01 11:22:47 +10:00
probe_overlap.gd.uid LANE8: scales that swing, bags that don't open, and fruit you can throw 2026-08-01 11:22:47 +10:00
probe_receipt.gd LANE9: the incident report — HR itemizes your meltdown 2026-08-04 00:05:33 +10:00
probe_receipt.gd.uid LANE9: the incident report — HR itemizes your meltdown 2026-08-04 00:05:33 +10:00
probe_roomba.gd LANE9: the Roomba — company property that eats your evidence 2026-08-04 00:00:58 +10:00
probe_roomba.gd.uid LANE9: the incident report — HR itemizes your meltdown 2026-08-04 00:05:33 +10:00
probe_scale.gd LANE6: rigged FPS viewmodel, weapon loadout + material matrix, 4 HUD styles 2026-07-31 16:34:00 +10:00
probe_scale.gd.uid LANE6: rigged FPS viewmodel, weapon loadout + material matrix, 4 HUD styles 2026-07-31 16:34:00 +10:00
probe_settle.gd LANE8: scales that swing, bags that don't open, and fruit you can throw 2026-08-01 11:22:47 +10:00
probe_settle.gd.uid LANE9: the Roomba — company property that eats your evidence 2026-08-04 00:00:58 +10:00
probe_store.gd LANE10: the whole shop — four rooms, stitched by its own portal graph 2026-08-04 02:48:39 +10:00
probe_two.gd LANE7: there are two of them, and the room changes one thing every loop 2026-07-31 20:07:44 +10:00
probe_two.gd.uid LANE7: there are two of them, and the room changes one thing every loop 2026-07-31 20:07:44 +10:00
probe_vm.gd LANE6: rigged FPS viewmodel, weapon loadout + material matrix, 4 HUD styles 2026-07-31 16:34:00 +10:00
probe_vm.gd.uid LANE6: rigged FPS viewmodel, weapon loadout + material matrix, 4 HUD styles 2026-07-31 16:34:00 +10:00