Skip to content

Hexcrawl H3: dungeon map generation (crawl + full) on the Dungeon map#61

Merged
deepiq2022 merged 6 commits into
mainfrom
hexcrawl-dungeon-gen
Jun 14, 2026
Merged

Hexcrawl H3: dungeon map generation (crawl + full) on the Dungeon map#61
deepiq2022 merged 6 commits into
mainfrom
hexcrawl-dungeon-gen

Conversation

@deepiq2022

Copy link
Copy Markdown
Contributor

H3 — Generic dungeon map generation

Third slice of the generic, system-agnostic Hexcrawl toolkit (after H1 foundation + H2 region map gen). Adds procedural dungeon map generation with the same two-path model as H2 — crawl one room at a time, or generate a full N-room dungeon — gated behind the opt-in hexcrawl feature flag.

Reuses the existing dungeon grid wholesale: each generated room flows through MapNotifier.addRoom (places room + corridor + sets current), exactly like the oracle-driven New room button. The hexcrawl path is additive and parallel — both buttons coexist.

What's in it

  • build_hexcrawl.py — authored, generic dungeon tables: DUNGEON_ROOM_TYPES (10), DUNGEON_CONTENTS (8), DUNGEON_DRESSING (10). verify() extended to cover them (non-empty, no dupes). Asset regenerated; verified in-sync with the script.
  • HexcrawlDatadungeonRoomTypes / dungeonContents / dungeonDressing getters.
  • rollDungeonRoom(HexcrawlData, Dice) — rolls a room type (title) + content & dressing (detail).
  • MapNotifier.crawlDungeon / generateDungeon — one room, or N connected rooms, via the existing addRoom.
  • Dungeon pane — gated New room (hexcrawl) + Generate dungeon (N) controls (Wrap, ± room count 4..30), shown only when hexcrawl is enabled. Mirrors the H2 World-pane controls.

Verification

  • dart analyze: clean.
  • flutter test: 746 passing (+4 new: rollDungeonRoom, crawl/generate notifier, gated-controls on/off).
  • Reviewer pass: clean.
  • Web build (flutter build web --debug) compiles; new dungeon tables confirmed bundled into assets/assets/hexcrawl_data.json (10/8/10, Vault + Treasure present, HTTP 200).

Spec: docs/superpowers/specs/2026-06-14-hexcrawl-dungeon-gen-design.md
Plan: docs/superpowers/plans/2026-06-14-hexcrawl-dungeon-gen.md

Next: H4 — local-zoom (sub-hex) + site generation, both paths.

🤖 Generated with Claude Code

jttaylor63 and others added 6 commits June 14, 2026 16:53
Crawl + full dungeon gen with authored generic content (room types/contents/
dressing), reusing addRoom + P4b room status. Parallels H2.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
6-task TDD plan: generic dungeon content tables, HexcrawlData getters,
rollDungeonRoom, MapNotifier crawlDungeon/generateDungeon (reuse addRoom),
gated dungeon controls.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@deepiq2022 deepiq2022 merged commit 84ab015 into main Jun 14, 2026
1 check passed
@deepiq2022 deepiq2022 deleted the hexcrawl-dungeon-gen branch June 14, 2026 21:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants