Minecraft (NeoForge & Forge) - free & open source

LegendQuest CrawlSpace

Procedural roguelike dungeons, for everyone who misses Roguelike Dungeons and Dungeon Crawl.

A building stands on the surface: a castle keep, a round tower, a stepped pyramid or a temple, dressed for its biome. Inside, a spiral stair leads down to levels of rooms and corridors planned fresh for every dungeon - themed, and harder the deeper you crawl.

5 Minecraft versions NeoForge & Forge Server-side only MIT Better with LegendQuest
A whole CrawlSpace dungeon cut away: the entrance tower on the surface and every level of rooms and corridors below it
A whole dungeon, cut away: every level under the spiral stair.

5

themes, by depth

8

kinds of trap

0

client installs needed

Planned, not tiled

Levels that do not feel like a grid.

Every level is planned fresh, from the topology down. A loop runs through the entry and the way down, so there are always two routes to the stair; rooms sit in the middle of the loop with paths across it, and branches point outward to the rooms worth finding.

  • ▸Corridors run straight, at angles, in curves and as winding tunnels, with T and cross junctions where they meet - and they ramp between rooms at different heights.
  • ▸Rooms of every shape: rectangles, rounds, circles, octagons, crosses, L-shapes, caves and long halls, weighted differently by theme.
  • ▸Pits drop you to the level below, into a pool that breaks the fall. Wherever a room sits over a room there may be a second stair.
  • ▸A lever in a key room opens the level's locked iron doors; secret walls crumble when you find them; one loop edge may be locked, and its lever is at the end of a branch.
  • ▸Inside a dungeon its walls cannot be dug round: the way down is through it. Chests, furniture, wooden doors and trap plates still break as usual, and creative is unaffected.
A plan sheet drawn by the planner: every level of one dungeon, rooms and corridors in different colours by role
Every level of one dungeon, as the planner drew it. The build tests plan thousands of these and check every one is sealed and wired.

Five themes, deeper as you go

Rooms that look lived in.

Each level is themed by its depth, and each theme dresses its rooms for what they are: crypts have sarcophagi, mines have timber frames, shrines have altars, guard rooms have mess tables, and halls have pillars and arches. Rooms also get panelling, coving, statue niches, overgrowth and clutter.

Crypt

Levels 1 and 2

Sarcophagi, skulls and candlelit niches. Square turns, narrow passages, the odd octagonal chamber.

Sunken Halls

Levels 3 and 4

Prismarine pillars, pools and moss. Long halls, curving corridors, rooms a step above or below each other.

Old Mines

Levels 5 and 6

Timber frames, rails and barrels. Winding tunnels at angles, caves breaking in, and the biggest height changes.

Caverns

Levels 7 and 8

Stalagmites, roots and overgrowth. Almost all cave, almost all winding, with pools wherever the floor dips.

Deep Halls

Level 9

Soul fire, chains and the worst of what lives down there. The grandest rooms in the dungeon, and the last.

▸

A dungeon is six levels deep by default, so the Crypt, the Sunken Halls and the Old Mines are what you will meet. The Caverns and the Deep Halls wait for a server that raises maxLevels (up to nine), and for ground deep enough to hold them.

Danger that scales with depth

Nothing here spawns endlessly. It waits.

Rooms wake their monsters as you approach, spawners turn up from the first level and burn out after a while, and every lair has a named boss with a boss bar. The rest of the dungeon is a set of ideas, most of them borrowed from the old dungeon card games, each one somewhere on some level.

Traps and decoys

Pressure plates and tripwires fire darts, gas, alarms, webs, rockfalls, frost, fire and ambushes - deeper kinds deeper down. Some plates are decoys; most real traps leave a tell nearby, a skull, a scorch, frost, a dead plant. Break one or sneak-use it to try to disarm it, and it might go off in your face.

Puzzle rooms

On nearly every level: mazes of narrow paths over the void, ice boards crossed in one go round their pillars, and teleport mazes. A solved puzzle blesses you for six minutes, and its hoard holds one of the seals the bottom door wants.

Encounters with a twist

Survival rooms that bar their doors until you have held out for a minute, numbered guards to be killed in order, sentries who sound the horn if they see you, mimics from the third level, and a gelatinous cube gliding down a corridor with its last meals inside.

Lairs, and false ones

Every lair has a named boss. Some sleep: sneak, and the hoard is yours. Some keep a prisoner, freed once the beast is dead, with a gift and a true rumour. And some are a pretender's, with the real one growling behind a secret wall.

Objective rooms

Set pieces with a job: the Fighting Pit, the Firechasm with its crumbling bridge and its dragon, the Fountain of Light, the Tomb Chamber and the Idol Chamber. Two jobs each, guards from the level below, a reward chest, and a way back to the surface built into the room.

Vaults and secrets

Vaults where you may take only one treasure before the cages slam shut, token vaults whose guards carry the key, secret walls, locked doors with their keys somewhere on the level - and the thing you should not touch.

The bottom

The deepest boss sleeps in a sunken arena until you set the seals won from each level on its altar, and offer gold. Beat it, and the altar can call it back, stronger each time, with a richer hoard.

Coming back

Every twelve real hours a dungeon restocks: rooms, traps and chests fill again, broken chests and doors are mended - never while someone else is inside. Replay tablets from objective rooms wake a dungeon again, harder, with a boon and a bane for everyone in it.

Loot worth the trip

Five tiers by depth: Mending, rare enchantments, armour trim templates, the netherite upgrade, and trimmed, enchanted armour at the bottom. Ordinary datapack loot tables, so a pack can change them.

Gallery

Four ways in, and what is under them.

The castle keep: buttressed, quoined, and dressed in its biome's stone.
The castle keep: buttressed, quoined, and dressed in its biome's stone.
The round tower, with bands and windows under a stepped cap.
The round tower, with bands and windows under a stepped cap.
The stepped pyramid, stair-faced, with a capstone.
The stepped pyramid, stair-faced, with a capstone.
The temple: a stepped platform, a colonnade and an entablature.
The temple: a stepped platform, a colonnade and an entablature.
A keep head on. The stair down starts inside.
A keep head on. The stair down starts inside.
The Old Mines: timber frames, rails and barrels.
The Old Mines: timber frames, rails and barrels.
A cavern pool with its spawner, lit for the photograph.
A cavern pool with its spawner, lit for the photograph.
The same cavern as you will meet it. Bring a torch.
The same cavern as you will meet it. Bring a torch.
Looking down from the Crypt into the Sunken Halls.
Looking down from the Crypt into the Sunken Halls.
An Old Mines room, cut away: timber, rails and the corridor ramping off it.
An Old Mines room, cut away: timber, rails and the corridor ramping off it.
A Caverns level: no grid, corridors curve and wind.
A Caverns level: no grid, corridors curve and wind.

Play it with LegendQuest

Your character finds the traps.

CrawlSpace works on its own: without an RPG mod, traps are visible, secret walls look slightly wrong, and a disarm usually works. With LegendQuest ReForged installed, all of that becomes your character's dice - and you see your roll when you spot something, and nothing at all when you don't.

  • ▸Wisdom spots a trap's plate or wire, and a secret door - harder the deeper you are. A failed spot shows nothing, so it never gives away that something was there.
  • ▸Dexterity disarms a trap you have spotted; failing sets it off. Dwarves get +4.
  • ▸Athletics catches you stepping off a puzzle path or standing on a pit as it gives way; Dexterity catches you on the Firechasm's rotten planks.
  • ▸Investigation spots a mimic before it bites. Sleight of Hand draws a trapped chest's needle.
  • ▸Perception reads a trap's tell, Insight a shrine's omen, and Stealth slips past a sentry.

Any RPG mod can do the same

LegendQuest is not special-cased. CrawlSpace asks one question at a time through CrawlSpaceApi - does this player notice this, disarm that, catch themselves here - and whichever mod registered a Perception answers with its own rules. CrawlSpace never imports the mod that provides it.

The full set of checks is a few lines of Java, and every one of the newer hooks is optional: a mod that only answers the first two keeps working.

The Perception API →

Works with

Optional, every one.

Mod What it adds
LegendQuest ReForged Perception, disarm, recovery, mimic, chest, tell, omen and stealth rolls, as above. 2.9.0 or newer for traps and secret doors, 2.9.1 for puzzle paths, 2.10.0 for the rest.
CityWorld ReForged Dungeons generate in CityWorld worlds, and cities keep clear of the entrance - CrawlSpace ships the structure-fit data CityWorld reads.
ZombieMod ReForged Dungeon bosses carry the zombiemod.noroll tag, so ZombieMod leaves them as the named thing they are rather than rolling them into a genus (3.6.4 or newer).
Lootr Lootr's per-player chests work inside a dungeon; on a restock they refill by Lootr's own rules rather than CrawlSpace's.
Any RPG mod Register a Perception through CrawlSpaceApi and your rules decide who notices what.

Dig deeper

Every room, every setting, every command.

Inside a dungeon

The way in, the room kinds, every trap and what gives it away, the puzzles, the encounters, the five objective rooms and their jobs, the finale, and what restocks when.

Inside a dungeon →

Config & datapacks

Every setting in crawlspace-server.toml - spacing, depth, hints, restocks, protection - and how a datapack reskins a theme, changes its monsters and boss, or adds an entrance style for a biome. Plus the API.

Config & datapacks →

Commands

Players need none. Operators can build a dungeon where they stand, build a showcase of everything, jump to any room on any level, and fire any trap or event to see what it does.

Commands →

Requirements

Five Minecraft versions, two loaders, one jar on the server.

One build per Minecraft line, and the version is in the filename. It runs on the server only: everything is ordinary blocks and vanilla entities, so players on an unmodded client join and play all of it.

Minecraft Loader Java File
1.20.1 Forge 47.4+ 17 crawlspace-1.0.0+mc1.20.1.jar
1.21.11 NeoForge 21.11+ 21 crawlspace-1.0.0+mc1.21.11.jar
26.1.2 NeoForge 26.1+ 25 crawlspace-1.0.0+mc26.1.2.jar
26.2 NeoForge 26.2+ 25 crawlspace-1.0.0+mc26.2.jar
26.3 NeoForge 26.3.0.58+ beta 25 crawlspace-1.0.0+mc26.3.jar

What differs on 1.20.1. That Minecraft has no mob scaling, so bosses, elites and their packs are normal size, and the gelatinous cube steps rather than glides. Everything else is there.

▸

26.3 is a NeoForge beta line, and the 26.3 jar needs 26.3.0.58-beta or newer. 26.x needs Java 25, not 21 - Minecraft's requirement rather than this mod's.

▸

No dependencies. LegendQuest is optional, and declared that way. Dungeons generate in new chunks only - land you have already explored stays as it was.

Credits & licence

By Sablednah, started to fill the gap left by Roguelike Dungeons and Dungeon Crawl, neither of which reached 26.x. Released under the MIT licence.