Getting started & controls
Choose any of three races and four classes. Movement is cardinal; bump into a foe to attack. The world responds only when you spend a turn. Exploration is remembered, while current visibility requires line of sight within a Euclidean radius of 7 tiles (Δx² + Δy² ≤ 49). Combat ranges and spell area calculations use Manhattan distance (|Δx| + |Δy|), so visibility and targeting do not use the same distance rule.
| Control | Action |
|---|---|
| WASD / arrows | Move or melee attack |
| Space / . | Wait one turn |
| H | Drink a healing potion |
| E / > | Use stairs, branch gates or a phylactery beneath you |
| M / F | Select magic / cast selected magic |
| R | Racial ability |
| C | Character, stat points and equipment |
| B | Trade while standing on a merchant |
| J | Campaign journal and explored map |
Movement, attacks, waiting, casts, potions, racial abilities, equipping, unequipping, dropping items and reading/studying scrolls spend a turn. Stat allocation, browsing panels and shop purchases/sales do not. Invalid actions such as stepping into a wall or attempting an unavailable spell do not advance the turn. Floor transitions spend a turn but suppress enemy responses on arrival.
Runs are saved automatically in this browser and device. Death ends the run; a new run replaces the saved expedition after confirmation. Clearing site data removes it. Saves are not transferred between the private preview and adamslab.ca.
Character stats & damage formulas
| Attribute | Effect |
|---|---|
| Strength | +0.7 melee per point above 4, rounded down; +1 combat buff damage per 3 extra points. |
| Dexterity | +1 ranged damage per 2 points above 4; +2% dodge per point (maximum 20%). |
| Intelligence | +2 maximum MP per point above 4; +1 magic potency per 2 extra points. |
| Vitality | +2 maximum HP and +1 racial recovery/shielding per point above 4. |
All four allocated attributes start at 4. Add equipped item modifiers, then clamp each effective attribute to at least 1. Let S, D, I and V mean effective attribute minus 4, and L mean character level.
- Maximum HP = max(10, race/class base HP + 3 × (L − 1) + 2V).
- Maximum MP = max(4, race/class base MP + 2 × (L − 1) + 2I).
- Attack = max(1, race/class base attack + floor((L − 1)/3) + floor(0.7S) + item attack bonuses).
- Armor = max(0, race base armor + item armor bonuses).
- Magic power = max(0, race base power + floor(I/2)).
- Spell potency = magic power + floor((L − 1)/4). Ranged / High ranged spells additionally gain floor(D/2).
- Melee damage = max(1, attack + random integer 0–2 + combat buff bonus − enemy armor).
- Spell damage = max(1, base damage + potency − enemy armor for Ranged/High ranged schools). Other schools ignore enemy armor. Healing and shielding gain potency too.
- Dodge chance = clamp(2D, 0, 20) percent. Incoming damage = max(1, attack − armor mitigation − Iron Resolve bonus + Fury penalty), then shielding absorbs it. Physical hits subtract full armor; magical hits subtract floor(armor/2).
Fury adds 2 melee damage and +1 incoming damage. Battle Trance adds 4 melee damage with no Fury penalty. Either combat buff adds floor(S/3) more melee damage; Trance takes priority. Shielding is a pool, not damage reduction: a stronger ward replaces rather than adds to the pool. Remaining shielding expires when both Ward and Iron Resolve timers reach zero.
Races
| Race | Base HP / MP | Attack / armor / power | Traits | Ability |
|---|---|---|---|---|
| Human | 28 / 12 | 4 / 0 / 0 | Balanced vitality, mana, and melee strength. | Second Wind Restore 6 HP and 4 MP. 60-turn cooldown. |
| Elf | 24 / 16 | 4 / 0 / 1 | −4 HP, +4 MP, +1 spell potency. Powerful but fragile. | Mana Surge Trade 4 HP for 8 MP. 60-turn cooldown. |
| Dwarf | 34 / 8 | 3 / 1 / 0 | +6 HP, 1 armor, −4 MP, −1 melee damage. Spells cost 1 extra MP. | Iron Resolve Gain 8 shielding and 1 extra armor for 4 turns. 60-turn cooldown. |
Racial recovery gains V: Human heals 6 + V HP and 4 MP; Elf spends 4 HP for 8 + V MP (requires more than 4 HP); Dwarf gains max(existing shield, 8 + V) and +1 mitigation for four turns. Ability activation sets cooldown to 61, then the action’s turn reduces it to 60.
Classes
| Class | Modifiers & training | Starting weapon |
|---|---|---|
| Ranger | Balanced fighter. Exclusive access to advanced ranged damage and speed magic. | Trail bow |
| Berserker | +6 HP, −4 MP, +1 melee damage. Powerful combat buffs; most other magic is forbidden. | Iron axe |
| Zealot | +4 MP, −1 melee damage. Exclusive access to high healing magic and strong protection. | Pilgrim mace |
| Warlock | −4 HP, +8 MP, −1 melee damage. Exclusive access to necromancy and high destruction magic. | Ash staff |
Level-one combinations
| Build | HP | MP | Attack | Armor | Power |
|---|---|---|---|---|---|
| Human Ranger | 28 | 12 | 4 | 0 | 0 |
| Human Berserker | 34 | 8 | 5 | 0 | 0 |
| Human Zealot | 28 | 16 | 3 | 0 | 0 |
| Human Warlock | 24 | 20 | 3 | 0 | 0 |
| Elf Ranger | 24 | 16 | 4 | 0 | 1 |
| Elf Berserker | 30 | 12 | 5 | 0 | 1 |
| Elf Zealot | 24 | 20 | 3 | 0 | 1 |
| Elf Warlock | 20 | 24 | 3 | 0 | 1 |
| Dwarf Ranger | 34 | 8 | 3 | 1 | 0 |
| Dwarf Berserker | 40 | 4 | 4 | 1 | 0 |
| Dwarf Zealot | 34 | 12 | 2 | 1 | 0 |
| Dwarf Warlock | 30 | 16 | 2 | 1 | 0 |
Every class can equip every item; a bow does not create a normal ranged attack. Ranged attacks are spells such as Arcane Shot. Starting weapons and the tunic add no stat modifiers.
Every base item & weapon
Three equipment slots: weapon, armor and charm. One item per slot. Equipped modifiers stack across slots. The pack holds 20 spare items. Changing equipment costs a turn; raising maximum HP/MP does not refill current HP/MP. Negative modifiers can reduce derived stats.
| Item / ID | Slot | Modifiers | Acquisition | Value / sell (gold) |
|---|---|---|---|---|
Worn bladeblade | weapon | No stat modifiers | Starting gear; not in the random loot pool. | 30 / 13 |
Trail bowbow | weapon | No stat modifiers | Starting gear; not in the random loot pool. | 30 / 13 |
Iron axeaxe | weapon | No stat modifiers | Starting gear; not in the random loot pool. | 30 / 13 |
Pilgrim macemace | weapon | No stat modifiers | Starting gear; not in the random loot pool. | 30 / 13 |
Ash staffstaff | weapon | No stat modifiers | Starting gear; not in the random loot pool. | 30 / 13 |
Travel tunictunic | armor | No stat modifiers | Starting gear; not in the random loot pool. | 30 / 13 |
Steel bladesteel-blade | weapon | +2 attack | Ordinary loot and matching merchant stock. | 54 / 24 |
Hunter bowhunter-bow | weapon | +2 dexterity | Ordinary loot and matching merchant stock. | 54 / 24 |
Rune staffrune-staff | weapon | +2 intelligence | Ordinary loot and matching merchant stock. | 54 / 24 |
Chain vestchain-vest | armor | +1 armor | Ordinary loot and matching merchant stock. | 60 / 27 |
Vital charmvital-charm | charm | +2 vitality | Ordinary loot and matching merchant stock. | 54 / 24 |
Fury charmfury-charm | charm | +2 strength | Ordinary loot and matching merchant stock. | 54 / 24 |
Woodsman axewoodsman-axe | weapon | +1 strength; +2 attack | Ordinary loot and matching merchant stock. | 66 / 29 |
Flesh cleavercleaver-axe | weapon | -1 dexterity; +4 attack | Ordinary loot and matching merchant stock. | 78 / 35 |
Ritual axeritual-axe | weapon | +2 intelligence; +2 attack | Ordinary loot and matching merchant stock. | 78 / 35 |
Executioner axeexecutioner-axe | weapon | -1 vitality; +5 attack | Ordinary loot and matching merchant stock. | 90 / 40 |
Moon bowmoon-bow | weapon | +3 dexterity; +1 intelligence | Ordinary loot and matching merchant stock. | 78 / 35 |
Barbed bowbarbed-bow | weapon | +4 dexterity; -1 vitality | Ordinary loot and matching merchant stock. | 78 / 35 |
Bone spearbone-spear | weapon | +1 dexterity; +3 attack | Ordinary loot and matching merchant stock. | 78 / 35 |
Void wandvoid-wand | weapon | -1 strength; +4 intelligence | Ordinary loot and matching merchant stock. | 78 / 35 |
Pilgrim staffpilgrim-staff | weapon | +2 intelligence; +2 vitality | Ordinary loot and matching merchant stock. | 78 / 35 |
Plate mailplate-mail | armor | -2 dexterity; +3 armor | Ordinary loot and matching merchant stock. | 120 / 54 |
Scout leathersscout-leathers | armor | +2 dexterity; +1 armor | Ordinary loot and matching merchant stock. | 84 / 37 |
Ritual robesritual-robes | armor | +3 intelligence; -1 vitality | Ordinary loot and matching merchant stock. | 66 / 29 |
Ward ringward-ring | charm | +1 intelligence; +1 armor | Ordinary loot and matching merchant stock. | 72 / 32 |
Swift charmswift-charm | charm | +3 dexterity | Ordinary loot and matching merchant stock. | 66 / 29 |
Mail of the Living Rootverdant-mail | armor | +3 vitality; +2 armor | Destroy Root-Heart in The Blighted Weald. | 126 / 56 |
Staff of Unwritten Tidestide-staff | weapon | +2 dexterity; +4 intelligence | Destroy Salt-Eye in The Drowned Archive. | 102 / 45 |
Godsplittergodsplitter | weapon | +3 strength; +5 attack | Destroy Cinder-Womb in The Flesh Crucible. | 126 / 56 |
The Last Saint’s Toothsaint-charm | charm | +3 intelligence; +3 vitality | Destroy False-Hymn in The Cathedral of Teeth. | 102 / 45 |
Prism of Wakingvoid-prism | charm | +3 dexterity; +4 intelligence; -1 vitality | Destroy Dream-Knot in The Unwaking Spiral. | 114 / 51 |
Procedural artifacts
Ordinary equipment rolls have a 4% artifact chance; merchant gear rolls use 9%; slain non-summoned unique monsters drop guaranteed artifacts. Artifacts inherit a non-quest base item. Three randomly selected attributes receive +1 to +3, capped at +7 per attribute; the remaining attribute receives −1 to −3, floored at −4. Attack and armor are inherited. Names combine a prefix, base item and title; the stat rolls are the meaningful difference.
Gear value = max(20, 30 + 30 × positive armor + 12 × each other positive modifier + 80 if artifact). Negative modifiers do not reduce value. Selling pays floor(value × 0.45). The table gives each base item’s computed value; starting and quest equipment are not ordinary random merchant stock.
Potions, gold & terrain
| Potion | Effect in code | Price (gold) |
|---|---|---|
| Healing | 12 + ceil(max HP × 0.35) HP | 25 |
| Aether | 6 + ceil(max MP × 0.35) MP | 25 |
| Haste | 10 turns of haste; first enemy response is skipped | 60 |
| Invisibility | 10 turns; adjacent foes and seers can still detect you | 55 |
| Rejuvenation | 10 + ceil(max HP × 0.5) HP and 10 + ceil(max MP × 0.5) MP; clear poison and silence | 90 |
Each potion consumes one turn. Recovery is capped at maximum HP/MP. A healing or mana potion at full capacity is not consumed; duplicate haste/invisibility effects cannot be refreshed while active. Rejuvenation remains usable to remove poison/silence even at full capacity. The drinking turn immediately reduces new duration counters by one; haste skips the first enemy response.
A new expedition starts with two healing potions, one Aether, one Haste, one Invisibility and zero Rejuvenation. A floor generates three healing potions and one of each other type. Potion pickup capacity is 100 of each kind; merchant purchases stop at 99.
- Gold piles give 15 + danger + a random integer 0–24.
- Non-summoned kills award 3 + floor(danger/2) gold. Summons give no gold or XP.
- Blighted / dream terrain inflicts five turns of poison. Poison power is max(existing, 1 + floor(danger/10)); poison bypasses armor and shields.
- Crucible embers deal 2 + floor(danger/6) magical damage on entry, processed through dodge and mitigation.
- Deep water spends two turns when entered.
- Hushed terrain prevents casting while you stand on it.
Invisibility ends on melee attack or any successful spell cast. Seers, watcher/guardian/boss roles and foes within one tile still detect you. Silence blocks normal spells and scroll casting; Rejuvenation clears it. Spell-created enemy poison deals 2 + floor(magic power/4) HP per enemy response and ignores armor. Slow skips even-numbered enemy responses while its counter remains active.
Spellbook & scrolls
The table lists final unlock levels and base MP costs, including the game’s unlock overrides. Dwarves pay +1 MP per normal cast. Class restrictions apply to both scroll use and learned spells. A spell needs a visible target, clear line of sight and Manhattan range. Casting costs one turn; reading/studying a scroll also costs one turn.
| Spell | School | Level | Base MP / scroll price | Classes | Range | Base effect |
|---|---|---|---|---|---|---|
| Spark | Cantrip | 1 | 2 | All classes | 4 | Deal 4 arcane damage to one visible foe within 4 tiles. |
| Ward | Protection | 1 | 3 | All classes | Self | Gain 5 shielding for 4 turns. Duration: 4 turns. |
| Mend | Restoration | 3 | 4 | Ranger, Zealot, Warlock | Self | Restore 8 HP. Berserkers cannot learn restoration. |
| Arcane Shot | Ranged | 4 | 4 | Ranger | 7 | Deal 7 damage to one visible foe within 7 tiles. |
| Starfall Arrow | High ranged | 18 | 8 | Ranger | 9 | Deal 13 damage to a visible foe within 9 tiles. Ranger only. |
| Trailblaze | High speed | 14 | 7 | Ranger | Self | Enemies skip every other response for 6 turns. Ranger only. Duration: 6 turns. |
| Fury | Combat | 4 | 3 | Berserker | Self | +2 melee damage for 4 turns, but incoming hits deal 1 extra damage. Duration: 4 turns. |
| Battle Trance | High combat | 18 | 5 | Berserker | Self | +4 melee damage for 5 turns without Fury’s penalty. Berserker only. Duration: 5 turns. |
| Smite | Radiance | 4 | 4 | Zealot | 4 | Deal 7 radiant damage to one visible foe within 4 tiles. |
| Sanctuary | Protection | 9 | 6 | Zealot | Self | Gain 10 shielding for 6 turns. Duration: 6 turns. |
| Sanctify | High restoration | 18 | 8 | Zealot | Self | Restore 20 HP and gain 4 shielding. Zealot only. Duration: 4 turns. |
| Shadow Bolt | Destruction | 4 | 4 | Warlock | 5 | Deal 7 shadow damage to one visible foe within 5 tiles. |
| Raise Shade | Necromancy | 10 | 6 | Warlock | 5 | Raise a nearby defeated foe as a shade that fights for 8 turns. Warlock only. Duration: 8 turns. |
| Soul Siphon | High necromancy | 15 | 7 | Warlock | 5 | Deal 9 damage; restore HP equal to half the damage inflicted. Warlock only. |
| Hellfire | High destruction | 18 | 9 | Warlock | 6 | Deal 12 damage to a target and adjacent foes. No friendly fire. Warlock only. |
| Comet Lance Scroll spell | Scroll evocation | 14 | 32 Scroll: 140 gold | All classes | 7 | A piercing comet deals 24 elemental damage, ignoring armor. |
| Gravity Well Scroll spell | Scroll gravity | 16 | 40 Scroll: 180 gold | All classes | 6 | Deal 12 damage in a radius of 2 and slow those foes for 3 responses. |
| Astral Volley Scroll spell | High ranged | 18 | 42 Scroll: 200 gold | Ranger | 7 | Hit every visible foe within 7 tiles for 20 ranged damage. Ranger only. |
| Titan’s Blood Scroll spell | High combat | 18 | 36 Scroll: 170 gold | Berserker | Self | Gain Battle Trance for 6 turns and 15 shielding. Berserker only. Duration: 6 turns. |
| Dawn Rebirth Scroll spell | High restoration | 18 | 48 Scroll: 220 gold | Zealot | Self | Restore 45 HP and purge poison. Zealot only. |
| Void Plague Scroll spell | High necromancy | 18 | 45 Scroll: 210 gold | Warlock | 6 | Deal 18 damage in a radius of 2 and poison survivors for 6 turns. Warlock only. |
Reading a scroll consumes it for immediate casting at 0 MP, bypassing the normal level requirement while retaining class, silence, target and line-of-sight checks. Studying consumes one scroll and permanently adds its spell to this run’s spellbook; normal casting then requires its listed level and MP cost. Duplicate study is rejected.
Area spells use a Manhattan radius of 1 unless a radius is listed (Gravity Well and Void Plague use 2); targets need line of sight from the selected foe. Area magic has no friendly fire. Astral Volley hits every visible foe in range with clear player-to-foe sight. Soul Siphon heals ceil(actual HP damage / 2). Raise Shade requires a corpse within 5 tiles and clear sight, permits one shade at a time, and consumes the corpse. The shade lasts 8 responses, can pass through walls, and strikes adjacent targets for 3 + floor(L/4) + floor(magic power/4) damage without subtracting enemy armor.
Campaign, branch bosses & Veyr
The main descent has 24 floors; five optional four-floor branches make 44 floors in a full-clear campaign. Main-floor danger equals its depth. Branch danger equals gate-entry depth + 2 × branch depth. Previously visited floors retain exploration, loot and enemy wounds. First-time arrival restores ceil(max HP × 0.10) and ceil(max MP × 0.15); revisiting does not repeat that recovery.
The Blighted Weald
Gate: main floor 3. Four branch floors. Danger on floor 4: 11.
The Antlered Rot (a generated personal name prefixes this title): 139 HP, 11 attack, 0 armor, 165 XP at this encounter. The Weald’s root-crowned guardian regenerates and poisons with its bites. Avoid marked rays and slams; use sustained magic and cleansing.
Extra traits: regen = 2; poison = 5.
After the boss dies, stand on the Root-Heart and press E. Reward: Mail of the Living Root, 195 XP and 210 gold. A return gate opens to main floor 3.
The Drowned Archive
Gate: main floor 7. Four branch floors. Danger on floor 4: 15.
The Drowned Librarian (a generated personal name prefixes this title): 160 HP, 13 attack, 0 armor, 177 XP at this encounter. The Archive’s tentacled keeper fires marked rays and relocates every seventh response. Cover beats its beams; contact drains MP.
Extra traits: drain = 3; blinkEvery = 7; seer = true.
After the boss dies, stand on the Salt-Eye and press E. Reward: Staff of Unwritten Tides, 255 XP and 250 gold. A return gate opens to main floor 7.
The Flesh Crucible
Gate: main floor 11. Four branch floors. Danger on floor 4: 19.
The Furnace Bride (a generated personal name prefixes this title): 191 HP, 16 attack, 5 armor, 199 XP at this encounter. The Crucible’s living furnace marks distant blast zones. Step outside them before detonation; magic bypasses its iron skin.
Extra traits: blastRange = 6.
After the boss dies, stand on the Cinder-Womb and press E. Reward: Godsplitter, 315 XP and 290 gold. A return gate opens to main floor 11.
The Cathedral of Teeth
Gate: main floor 15. Four branch floors. Danger on floor 4: 23.
The Saint of Broken Teeth (a generated personal name prefixes this title): 202 HP, 16 attack, 0 armor, 201 XP at this encounter. The Cathedral’s false saint summons tooth acolytes every seventh response and silences nearby casters every fifth. Keep distance and dodge marked attacks.
Extra traits: summonEvery = 7; summonKind = tooth-acolyte; silenceEvery = 5.
After the boss dies, stand on the False-Hymn and press E. Reward: The Last Saint’s Tooth, 375 XP and 330 gold. A return gate opens to main floor 15.
The Unwaking Spiral
Gate: main floor 19. Four branch floors. Danger on floor 4: 27.
The Sleeper Between Angles (a generated personal name prefixes this title): 213 HP, 18 attack, 0 armor, 213 XP at this encounter. The Spiral’s impossible dreamer blinks every fifth response and sees through invisibility. Preserve an escape route and sidestep its marked rays and slams.
Extra traits: blinkEvery = 5; seer = true.
After the boss dies, stand on the Dream-Knot and press E. Reward: Prism of Waking, 435 XP and 370 gold. A return gate opens to main floor 19.
Veyr, the Unmade God
Encountered on main floor 24. On first arrival, HP = 680 − 75 × broken vessels; attack = max(12, 26 − 2 × broken vessels); armor = 7 unless the Crucible’s vessel is broken, which sets it to zero. Defeating him grants 812 XP. With all five vessels broken: 305 HP, 16 attack and 0 armor. Breaking a vessel after his floor is generated reduces his existing maximum HP by 75 and attack by 2, preserving existing wounds.
| Vessel destroyed | Power removed |
|---|---|
| Root-Heart | Stops Veyr’s +6 HP regeneration per eligible response. |
| Salt-Eye | Stops the extra 3 MP drain on his adjacent melee attempts. |
| Cinder-Womb | Removes all 7 armor. |
| False-Hymn | Stops his thrall summon every sixth response. |
| Dream-Knot | Stops his blink every fifth response when you are detected within 10 tiles. |
With clear sight within 8 tiles and no cooldown, Veyr marks a ray or a 3×3 blast centered on your current position. The marked cells are resolved on his next response, dealing attack + 3 magical damage if you remain in the zone and sight is clear. Step off red cells. Resolution sets cooldown to 3. During intent resolution his vessel regeneration/summon/blink block is skipped. Outside telegraphs he can melee or pursue. Summoned thralls yield no XP.
Defeat him with every vessel broken for The Unmaking (true ending). Otherwise, receive A God’s Shadow. Each class has its own ending text. Branch quests are optional for victory, but all five are required for the true ending.
Complete bestiary
Values below are base HP / attack / armor / XP. Actual normal enemy HP adds floor(2.8 × danger); guardian and branch-boss HP adds floor(4 × danger). Veyr does not gain depth-based HP. All enemy attacks add floor(danger/3), and XP adds floor(danger/2), before vessel adjustments. Rare unique encounters have a 20% roll per floor and receive generated personal names. Their guaranteed artifact drop is additional to normal XP/gold.
| Enemy / ID | Base HP / attack / armor / XP | Behavior role | Location/type | Tactics | Additional traits |
|---|---|---|---|---|---|
Starved Thrallskulk | 9 / 3 / 0 / 12 | skulk | Main descent | Closes for melee. Use corridors to avoid being surrounded. | — |
Obsidian Wardensentinel | 20 / 4 / 3 / 22 | sentinel | Main descent | Armored against melee and arrows; elemental magic bypasses armor. | — |
Many-Eyed Witnesswatcher | 13 / 5 / 0 / 20 | watcher | Main descent | Marks a ray, then fires next turn. Step out of the marked line or behind cover. | — |
Void Acolytehexer | 13 / 3 / 0 / 18 | hexer | Main descent | Fires at range and drains MP. Rush it or break line of sight. | — |
Flesh Colossusbrute | 30 / 7 / 0 / 28 | brute | Main descent | Telegraphs a 3×3 slam. Move away before it lands. | — |
Bloodlit Leechleech | 15 / 4 / 0 / 18 | leech | Main descent | Heals itself on melee hits. Burst damage denies its recovery. | — |
Hollow Heraldherald | 19 / 3 / 0 / 25 | herald | Main descent | Calls thralls every six turns. Kill the summoner before it overwhelms you. | — |
Angles Houndhound | 12 / 4 / 0 / 18 | hound | Main descent | Moves twice every third response. Corners and haste help you control distance. | — |
Mouth of the False Godchoir | 21 / 4 / 0 / 26 | choir | Main descent | A nearby chant silences spells for two turns. Use weapons or retreat beyond its reach. | — |
Unwaking Apostleshadewalker | 22 / 5 / 0 / 27 | shadewalker | Main descent | Blinks to a nearby flank every five turns. Keep an escape route. | — |
Phylactery Custodianguardian | 70 / 8 / 2 / 90 | guardian | Main descent | Alternates ray attacks and close slams. Destroy it to expose the phylactery. | — |
Veyr, the Unmade Godboss | 680 / 18 / 7 / 800 | boss | Main descent | Cycles marked blasts, melee and summons. Each broken phylactery removes one advantage. | — |
Bone-string Archerbone-archer | 10 / 3 / 0 / 15 | archer | Main descent | Fires physical arrows from six tiles away; armor and cover reduce its threat. | — |
Oathbreakeroathbreaker | 24 / 5 / 2 / 24 | choir | Main descent | An armored silencer; lure it away from ranged support before engaging. | — |
Sorrow Knightsorrow-knight | 28 / 6 / 4 / 26 | sentinel | Main descent | Its armor regenerates flesh; sustained elemental damage beats attrition. | regen: 2 |
Spite Impspite-imp | 9 / 3 / 0 / 17 | hound | Main descent | Moves in bursts and steals MP on contact; kill it before it closes. | drain: 2 |
Plague Cystplague-cyst | 16 / 2 / 0 / 25 | venom | Main descent | Rare: spits venom within five tiles; cover or Rejuvenation counters its poison. | poison: 6 |
Venom Oraclevenom-oracle | 23 / 5 / 0 / 30 | leech | Main descent | Rare: sees invisibility and delivers poisonous, life-draining bites; stay at range. | poison: 7; seer: true |
Marrow Priestmarrow-priest | 18 / 3 / 0 / 23 | healer | Main descent | Repairs the weakest nearby ally every four responses; prioritize the priest. | — |
Glass Reaverglass-reaver | 18 / 10 / 0 / 28 | brute | Main descent | Fragile but devastating; sidestep its marked slam and burst it down. | — |
Rift Scriberift-scribe | 21 / 5 / 0 / 27 | hexer | Main descent | Teleports between draining bolts; conserve mana and use narrow rooms. | blinkEvery: 6 |
Cinder Wraithcinder-wraith | 25 / 7 / 0 / 29 | brute | Main descent | Marks a distant blast zone; take a full step beyond its edge before it erupts. | blastRange: 6 |
Ironbark Rootlingrootling | 16 / 4 / 2 / 17 | sentinel | The Blighted Weald | A bark-armored defender; fire and other elemental spells bypass its shell. | — |
Briar Hunterbriar-hunter | 14 / 4 / 0 / 19 | skirmisher | The Blighted Weald | Fires thorns and retreats when cornered; cut off its escape. | — |
Moss Seermoss-seer | 16 / 3 / 0 / 22 | healer | The Blighted Weald | Heals root-creatures and sees hidden travelers; kill it ahead of the pack. | seer: true |
Rot Queenrot-queen | 24 / 4 / 0 / 28 | herald | The Blighted Weald | Grows armored rootlings; every delay strengthens her grove. | summonKind: rootling |
Dusk Stagdusk-stag | 18 / 6 / 0 / 22 | hound | The Blighted Weald | Charges in bursts through open paths; fight it across corners. | — |
Widow of Rootsroot-widow | 18 / 4 / 0 / 30 | venom | The Blighted Weald | Rare: a venom-spitting root horror; avoid its sight line and carry Rejuvenation. | poison: 6 |
Saltbound Diversalt-diver | 17 / 4 / 0 / 20 | skirmisher | The Drowned Archive | Flees along the channels while firing; water gives it time to attack. | — |
Ink Eyeink-eye | 18 / 6 / 0 / 23 | watcher | The Drowned Archive | A floating eye marks long rays; step sideways rather than deeper into a channel. | seer: true |
Drowned Cantordrowned-cantor | 22 / 4 / 0 / 26 | choir | The Drowned Archive | Its underwater hymn silences close casters; weapons remain usable. | — |
Abyssal Eelabyss-eel | 17 / 5 / 0 / 30 | hound | The Drowned Archive | Rare: poisonous bites and burst movement; avoid slow-water melee. | poison: 6 |
Archive Leecharchive-leech | 20 / 4 / 0 / 23 | hexer | The Drowned Archive | Consumes mana through ink bolts; break sight before restoring MP. | — |
Oracle of the Undertowtide-oracle | 30 / 5 / 0 / 29 | leech | The Drowned Archive | Regeneration plus draining contact punishes drawn-out duels. | regen: 2 |
Iron Wretchiron-wretch | 27 / 6 / 5 / 25 | sentinel | The Flesh Crucible | Heavy forged armor; strike its mind with magic rather than its plating. | — |
Ash Spitterash-spitter | 18 / 4 / 0 / 30 | venom | The Flesh Crucible | Rare: toxic ash at range; avoid ember tiles while fleeing its sight line. | poison: 6 |
Furnace Giantfurnace-giant | 38 / 9 / 0 / 34 | brute | The Flesh Crucible | Marks a heavy slam around you; escape the entire red square. | — |
Stitch Prieststitch-priest | 20 / 4 / 1 / 25 | healer | The Flesh Crucible | Repairs living weapons; leave an escape route past its defenders. | — |
Living Anvilliving-anvil | 36 / 6 / 7 / 31 | sentinel | The Flesh Crucible | Almost impervious to blades, but elemental spells ignore its armor. | regen: 1 |
Slag Miteslag-mite | 12 / 4 / 0 / 22 | hound | The Flesh Crucible | Explodes on death within two tiles; finish it at range. | deathBlast: 6 |
Tooth Acolytetooth-acolyte | 21 / 5 / 0 / 24 | choir | The Cathedral of Teeth | Its chant steals your voice; step out of range or use a blade. | — |
Hymn Wardenhymn-warden | 30 / 6 / 4 / 28 | sentinel | The Cathedral of Teeth | Guards the choir behind armor; separate it from singing support. | — |
False Choristerfalse-chorister | 23 / 4 / 0 / 30 | herald | The Cathedral of Teeth | Calls more singing acolytes; silence the summoner first. | summonKind: tooth-acolyte |
Censer Bearercenser-bearer | 22 / 3 / 0 / 32 | venom | The Cathedral of Teeth | Rare: its holy incense is poisonous; keep away from its breath. | poison: 7 |
Blinded Saintblinded-saint | 24 / 4 / 0 / 27 | healer | The Cathedral of Teeth | Repairs the faithful and senses invisible intruders; isolate it. | seer: true |
Reliquary Angelreliquary-angel | 25 / 7 / 0 / 31 | watcher | The Cathedral of Teeth | Its wings mark a deadly ray; do not retreat along the marked line. | seer: true |
Mirror Shademirror-shade | 19 / 6 / 0 / 25 | shadewalker | The Unwaking Spiral | Steps through mirrors to flank you; keep a wall at your back. | — |
Nightmare Houndnightmare-hound | 24 / 7 / 0 / 29 | hound | The Unwaking Spiral | A fast seer that ignores invisibility; haste can preserve distance. | seer: true |
Lucid Parasitelucid-parasite | 21 / 5 / 0 / 33 | leech | The Unwaking Spiral | Rare: drains life and poisons dreams; kill it before it feeds. | poison: 7 |
Dream Cartographerdream-cartographer | 23 / 5 / 0 / 28 | hexer | The Unwaking Spiral | Blinks and redraws draining sight lines; change your angle of approach. | blinkEvery: 5 |
Faceless Pilgrimfaceless-pilgrim | 26 / 6 / 0 / 27 | skirmisher | The Unwaking Spiral | Retreats while firing bolts that steal MP; trap it in a corridor. | drain: 1 |
Paradox Echoparadox-echo | 32 / 7 / 0 / 35 | guardian | The Unwaking Spiral | Alternates rays and blasts like a lesser Custodian; watch its red marks. | — |
Crowned Eyeunique-oracle | 32 / 5 / 0 / 70 | watcher | Rare unique | A rare floating oracle. Sidestep its marked ray; every seventh response it folds to a new angle. | seer: true; blinkEvery: 7 |
Starless Knightunique-knight | 38 / 6 / 3 / 80 | brute | Rare unique | A rare armored executioner. Bait its marked slam, then strike with elemental magic. | blastRange: 3 |
Moon-Eaterunique-moth | 30 / 4 / 0 / 75 | hexer | Rare unique | A rare moth of the void. Draining bolts and sudden blinks punish prolonged spell duels; use cover. | blinkEvery: 5; seer: true |
Root-Hydraunique-hydra | 40 / 5 / 0 / 85 | leech | Rare unique | A rare many-headed parasite. Its bites poison and steal life; sustained ranged damage denies recovery. | regen: 1; poison: 5 |
Hollow Sovereignunique-idol | 36 / 5 / 2 / 85 | herald | Rare unique | A rare crowned idol. Summons every sixth response; isolate and destroy it before its court grows. | summonKind: skulk |
Veil Reaperunique-reaper | 32 / 6 / 0 / 80 | skirmisher | Rare unique | A rare scythe-bearing hunter. Retreats at close range and drains mana with its shots; trap it against terrain. | drain: 2 |
The Antlered Rotweald-boss | 95 / 8 / 0 / 160 | guardian | Branch boss | The Weald’s root-crowned guardian regenerates and poisons with its bites. Avoid marked rays and slams; use sustained magic and cleansing. | regen: 2; poison: 5 |
The Drowned Librarianarchive-boss | 100 / 8 / 0 / 170 | watcher | Branch boss | The Archive’s tentacled keeper fires marked rays and relocates every seventh response. Cover beats its beams; contact drains MP. | drain: 3; blinkEvery: 7; seer: true |
The Furnace Bridecrucible-boss | 115 / 10 / 5 / 190 | brute | Branch boss | The Crucible’s living furnace marks distant blast zones. Step outside them before detonation; magic bypasses its iron skin. | blastRange: 6 |
The Saint of Broken Teethcathedral-boss | 110 / 9 / 0 / 190 | guardian | Branch boss | The Cathedral’s false saint summons tooth acolytes every seventh response and silences nearby casters every fifth. Keep distance and dodge marked attacks. | summonEvery: 7; summonKind: tooth-acolyte; silenceEvery: 5 |
The Sleeper Between Anglesspiral-boss | 105 / 9 / 0 / 200 | guardian | Branch boss | The Spiral’s impossible dreamer blinks every fifth response and sees through invisibility. Preserve an escape route and sidestep its marked rays and slams. | blinkEvery: 5; seer: true |
Most pursuit occurs with clear sight within 12 tiles. Watcher/guardian roles telegraph within 8 tiles; brutes use blastRange (default 2). Hexers fire within 6 tiles and drain 2 MP with a 3-response cooldown. Archers/skirmishers fire within 6 tiles with a 2-response cooldown; skirmishers retreat at distance 2 or less. Venom attacks reach 5 tiles with a 4-response cooldown. Choir silence reaches 4 tiles. Hounds gain a second pursuit step every third response. Leech bites heal ceil(HP damage / 2).
Trait fields are response-based: regen heals that many HP; poison is its duration on a damaging melee/venom hit; drain subtracts MP on relevant attacks; blinkEvery, summonEvery and silenceEvery are response intervals. blastRange controls telegraph distance. deathBlast is base magical deathburst damage within 2 tiles, plus floor(danger/4). seer detects invisibility. A healer checks every fourth response and restores 6 + floor(danger/4) HP to its most wounded visible ally within 6 tiles.
Progression, recovery & shops
Level cap: 30. XP required to advance from level L = 45 + 25(L − 1) + 8(L − 1)². Each level grants two freely assignable attribute points, restores ceil(new max HP × 0.25) HP and ceil(new max MP × 0.25) MP, and restocks all three merchants. Allocated attributes are capped at 62 each; equipment can modify effective values further.
| Current level | XP to next level |
|---|---|
| 1 | 45 |
| 2 | 78 |
| 3 | 127 |
| 4 | 192 |
| 5 | 273 |
| 10 | 918 |
| 15 | 1963 |
| 20 | 3408 |
| 25 | 5253 |
| 29 | 7017 |
Every third player turn restores 1 + floor(L/8) MP. Every twelfth turn restores 1 + floor(L/10) HP only if you are not poisoned and no enemy is within 8 tiles (regardless of visibility). Haste skips alternate enemy responses, starting with the activation response; counters, poison and regeneration still advance. Summoned shades act before the enemy response.
| Merchant | Stock focus |
|---|---|
| Bob’s Axes | Axes, heavy armor, and inconveniently cursed legends. |
| Arthur’s Alchemy | Arcane tools, charms, healing and unusual draughts. |
| Mara’s Trail Goods | Bows, light armor and survival supplies. |
All three merchants are on main floor 1. Another appears on main floors where depth % 3 = 1; each branch has a merchant on its first floor. Stand on the merchant and ensure no enemy within 8 tiles has clear line of sight to trade. Each shop rolls five gear items per restock (9% artifact chance); non-axe shops stock all five potions with quantities 1–3, and stock two spell scrolls. Bob’s Axes stocks one eligible Berserker scroll and no potions. Stock and gold transactions do not spend turns; equipping or consuming purchases does.