Adventure · Roguelike

Hauberk

A browser-based ASCII roguelike written in Dart by Bob Nystrom: each level carves a fresh dungeon with its own quest, and dying erases the loot and experience earned inside it.

Overview

Each descent carves a brand-new dungeon, and falling inside it wipes the loot and experience you gathered there — while the hero you built across earlier levels walks home intact. That per-level risk loop is the spine of Hauberk, an ASCII-art roguelike written in Dart by Bob Nystrom, the engineer also known for the Crafting Interpreters book and the Wren language, and played straight in the browser at its GitHub Pages site. Instead of one monolithic pit, it splits the world into themed areas, each a ladder of hand-tuned but randomly laid-out levels, and every level locks its exit behind a quest you must finish before you can bank your gains. The @ avatar, dotted floors, and # walls place it firmly in the traditional roguelike lineage, yet the framing is friendlier: you choose an area, replay cleared levels for practice or treasure, and only commit a run's rewards once you complete the objective and leave. Three classes — Adventurer, Warrior, and Mage — decide which skills you can raise, so each hero plays differently before the procedural layout even reshuffles the rooms. The whole thing is open source under a permissive MIT license and has been iterated in public for roughly a decade.

How to Play

The objective on every level is to complete its quest, then press Q to leave and permanently save the experience and items you gathered. Movement relies on two eight-direction keypads: the numpad (with 5 to stand or confirm a menu), or, on a US keyboard without one, the letter cluster I O P across the top, K L ; in the middle, and , . / below, where L rests. Arrow keys step cardinally but cannot go diagonal, so the numpad or letter set is the practical choice. Tap a direction to step or to strike an adjacent monster; hold Shift with a direction to run until a wall, a fork, or a creature disturbs you, and Alt to repeat your last action that way. C closes a door, U uses an item, D drops one, T throws, and X swaps your last unequipped gear back into place. Rest one turn with L or Numpad-5, rest to full health with Shift-L, and if a level turns against you, Shift-F forfeits it for the same penalty as dying. From the safe hero screen, press H to enter your home, stash loot, and craft in the crucible by adding a recipe's items and hitting Space.

Tips & Strategy

Treat each level as a commitment, not a stroll: nothing you find inside is truly yours until the quest is done and you press Q, so finish the objective before chasing side rooms. Run with Shift-direction to map open floor fast, but the moment a creature appears the auto-run halts — never trust a corridor you have not cleared, because the generator links rooms with twisty passages that conceal ranged attackers. Rest to full with Shift-L after every fight rather than pushing on wounded; one over-confident descent is the fastest way to lose a level's worth of gear. Match the class to your patience: Warrior is the straightforward brawler, Mage commits deeply to the Conjuring, Divination, and Sorcery spell schools but starts fragile, and Adventurer is the flexible generalist for learning the systems. Feed spare healing potions into the crucible — crafting turns disposable finds into upgrades you can bank at home, which is the safe way to convert risky runs into permanent power. Replay earlier, easier levels to harvest treasure and experience before pushing into a new area whose difficulty you are not yet equipped to survive.

Controls

Keyboard
Numpad 1-9 or the letter cluster I O P / K L ; / , . / for eight-direction movement (L or 5 = stand/rest)Arrow keys for cardinal movement only (no diagonals)Shift + direction to run until disturbedQ to leave a level after completing its questShift-F to forfeit the current levelC close door, U use item, D drop, T throw, X swap equipmentShift-L rest until healedH enter home, Space craft in the crucible
Mouse
Not used for gameplay; the game is keyboard-driven and menus accept Enter/Escape

Features

  • Per-level procedural dungeons organized into themed areas
  • Per-level death penalty: dying forfeits only that level loot and experience
  • Three classes (Adventurer, Warrior, Mage) with distinct skill caps
  • Skill schools including Conjuring, Divination, Sorcery, Archery, and Swordfighting
  • Home base with item stash and a crafting crucible for recipes
  • Quest-gated level exits; earlier levels are replayable