Birdoggydog's Builds

Rebuilding the five theme tour dungeons with the generator

The tour now has guard, patrol and lair packs, two factions, wanderers, pits and keys on bodies, and it lays all 27 room kinds.

I rebuilt the five theme tour dungeons with the dungeon generator, now that everything else in the dungeon plan has landed. They have guard, patrol and lair packs, two factions fighting where their packs meet, a wanderers’ spawn point on every floor, pits, keys on dead bodies, and between them all 27 room kinds. Each dungeon file carries its machines, so the tour no longer has a list in content/machines.json.

The 161 second theme tour film, all five dungeons in order, a caption on each shot. The vat, the packs, the body with a key, the pit and the wanderers’ point are the new shots.

Why did I wait to rebuild it?

On 17 October, when pack roles and factions went in, I said “Wait to do your until everything is done and done rebuild once the generator and other work are all up to date”. By today every other chunk had landed: following between floors, swimmers, room kinds, keys on bodies, machines by room kind, training at the vat and bathroom rows. The rebuild was also only possible because I had fixed the seed problem, which gave the five dungeons new seeds.

What does the rebuilt tour have?

The seeds are 32 for cyberpunk, 31 for steampunk, 32 for eldritch, 77 for fantasy and 59 for house. The tool reported every want met and 27 of 27 room kinds across the five, the eight newest included.

  • Guard, patrol and lair packs, and two factions, the Line and the Meat, in cyberpunk and eldritch.
  • A wanderers’ spawn point on every floor.
  • A pit on eldritch floor 2 and on house floor 1.
  • A key on a dead body on cyberpunk floor 3 and on house floor 2.
  • A window in house.

The tool counted 16 packs in cyberpunk, 9 in steampunk, 15 in eldritch and 12 each in fantasy and house. It also warned about several packs of a single monster that it put in a room the stocking left empty, like a bile seer in a machine room and a meat sack in a freezer.

How do the machines get into each file?

The tour’s machines used to be rows in content/machines.json. Now tour_build fills each floor’s machines list in three steps. First it lays the dungeon’s pieces, which are the cavern’s coils, boilers, pumps and shrines and the showpieces in the alcoves. Then it keeps a ring of squares around each one clear. Then dungeon_machines.floor_rows lays the generator’s pieces by room kind and theme on the squares left, so no two machines share a square. The piece sizes are one table in tour_build, and the file content/machines.json lost 32 lines. The game’s importer already read a dungeon’s machines, so no game script changed.

The generator’s machines only landed in vat rooms: a juice vat on cyberpunk floor 1, a boiler and a pump on steampunk floor 1, and a shrine on each eldritch floor. Some pieces had no room. Cyberpunk floor 1 is one coil short, steampunk floor 1 one pump short and eldritch floor 3 one shrine short. No machine, sump or pipe gallery room had space for a generated piece either, and I filed that as a work item.

What else needed fixing?

Two generator changes came with it. House laid no window at its old seed, 54, so a window is now something the tool asks of house, whose seeds start at 59. And a rebuilt cyberpunk floor 2 had a welded alcove off a 4 by 3 room that held a guard pack, which left the room no square for furniture. An alcove is now only dug off a room of 16 squares or more.

How did the tests change?

Tests that held the old layout by a square or a count had to follow the new one.

  • theme_tour now checks 115 features. It gained 16, the three pack roles, two factions, wanderers, pit, key on a body, the eight new room kinds and machines by room kind. Only people and the site key are still absent, and they’re the next chunk.
  • dungeon_fill lost its list of eight room kinds the tour was allowed to lack. Its audit now fails unless the tour lays all 27.
  • ladders_tour counts at least 17 ways up, not 18. The tour has 12 ladders and 5 climbing ducts, one per dungeon, where it had 6 ducts.
  • ducts walks the rebuilt floor’s long crawl on cyberpunk floor 2, squares (10,26) to (10,27), where the old floor’s was (5,26) to (5,27).

All 12 game tests passed, in 5 minutes 1 second on the clock. The generator’s tests for the tour build and the machines passed too. The whole suite then found six failures the next landing mended: a patrol routed through a narrowed spiral stair, a bathroom with no stall, and baselines that still held the old names.

What does the film show?

I looked at the frame sheet before anything else. The film got shots for the vat, a guard, the two factions, a body with a key, a patrol, a boiler and pump, a lair, a pit and a wanderers’ point. Each one finds its target from the floor’s data, and when there’s none it skips the shot and prints a line. I dropped the cyberpunk ceiling vent shot because the rebuilt cyberpunk has no vent. The only one is in fantasy.

Two shots are weak. House’s body with a key is small and low in the frame, and the wanderers shot is just a corridor with a spawn point in it.

Also done

  • I found a fault I haven’t fixed. Two juice vats in one world share a house id.