DynaHack

NitroHack's engine, UnNetHack's dungeon · less tedium, more variety

> Enter the dungeon
Date of birth18 September 2013 first public release 0.5.0 (work in git from March 2012); this version 0.6.0: 17 February 2016
CreatorsTung Nguyen (tungtn) on Daniel Thaler's NitroHack, with UnNetHack's content (Patric Müller et al.)
LanguageC ~147,500 lines in 166 libnitrohack/src/*.c/include/*.h files
PlatformLinux, Windows, OS X curses terminal client; here: the browser

Lineage

DynaHack sits on NitroHack, Daniel Thaler's 2011 rewrite of NetHack 3.4.3 into a game library (libnitrohack) plus a separate curses client, with a new save format, key remapping and in-game options. Tung Nguyen started in March 2012 by porting UnNetHack (Patric Müller's NetHack 3.4.3 variant) onto NitroHack 4.0.4; the working name was “UnNitroHack”, never released under that name. By 0.5.0 it had its own name and had picked up changes from NetHack4, GruntHack (magical equipment), UnNetHackPlus (monster descriptions) and K-Mod, plus its own.

NetHack4 is a sibling, not a parent: it also grew out of NitroHack, and DynaHack ported selected changes from it. Sources: doc/changelog.txt (0.5.0 entry), doc/unnitrohack.txt, doc/nitrohack.txt and the git history. See the family tree, under NitroHack.

Credits

Tung Nguyen (tungtn)Created and maintained DynaHack, 2012–2016 (1,268 commits)
Daniel ThalerNitroHack: library/client split, log-based saves, the curses interface (748 commits in the shared history)
Patric Müller and the UnNetHack contributorsUnNetHack 4.1.1, the source of most new levels, branches, items and monsters
Alex Smith, Sean HuntNetHack4, source of ported interface and reliability changes ([NH4] in the changelog)
GruntHack, UnNetHackPlus, K-Mod authorsRandom magical equipment, monster spoiler info and other ported changes ([Gr], [UnP], [KMd])
The NetHack DevTeamNetHack 3.4.3, the code underneath
This portBrowser client and build, tiles from the NetHack 3.4.3 set (memmaker/dynahack)

Trivia

What's unique

Code dive

Stats

Counted in the source at 25aaf2a (objects: named entries per class from the object table, 538 slots in all).

ThingCountNotable ones
Roles14NetHack's 13 plus the Convict, who starts in a striped shirt with a rock, nearly hungry and hated by their own race; the quest leader is Robert the Lifer, against Warden Arianna.
Races6Human, elf, dwarf, gnome, orc and vampire.
Monsters403Eleven dragon kinds with shuffled names (tatzelworm, draken, guivre…), the gold dragon, the vorpal jabberwock, the rodent of unusual size, the disintegrator, the wax golem, the black marketeer, Cthulhu, and Death, Pestilence and Famine.
Artifacts36Thiefbane and the Luck Blade (from UnNetHack), Stormbringer, Vorpal Blade, the Iron Ball of Liberation (the Convict's quest artifact).
Spells40Create familiar, stone to flesh, jumping.
Weapons / Armour71 / 85Chromatic and magic dragon scale mail, crystal and bronze plate mail, the striped shirt, the tinfoil hat.
Rings / Amulets31 / 11Rings of gain intelligence, wisdom and dexterity.
Tools51Iron safe, ice box, oilskin sack; land mine and beartrap as items. (The magic chest is a map feature, not an item.)
Potions / Scrolls / Wands28 / 22 / 24Potions of blood and vampire blood; the scroll of flood replaces amnesia.
Food / Gems29 / 36
Traps24Shuriken trap; the vibrating square counts as one.
Dungeon12 dungeonsDungeons of Doom and Gehennom 25–29 levels each, Gnomish Mines 8–9 (8 Minetown variants), the Quest 5–6, Sokoban 3, Town 3 (with the nymph level), the Dragon Caves 4 (75% chance), Vlad's Tower 4, Elemental Planes 6, Fort Ludios, One-eyed Sam's Market and the Advent Calendar 1 each; 184 level maps in dat/*.des.

Manual

DynaHack ships NetHack's own Guidebook (NetHack 3.4.3 edition, text, converted from doc/Guidebook.tex), never updated for DynaHack. What DynaHack changes is in its changelog (0.5.0 to 0.6.0). Both under the NetHack General Public License. The in-game ?? command reference and the port's help page cover the keys.

Getting started

  1. Open the game, pick role, race, gender and alignment from the menus (or Random) and type a name. A Valkyrie or Samurai forgives mistakes.
  2. Move with the arrow keys or hjklyubn; walk into a monster to attack.
  3. Press v (or ~) to explore, again after each stop; when the level is done, > walks to the down stairs.
  4. Enter opens a menu of every command, i the inventory with an action menu per item; Ctrl-O shows the dungeon overview.
  5. In trouble, Ctrl-E writes Elbereth or #prays if you haven't lately; the full key list is in the in-game guide.

Help

There is no walkthrough for DynaHack. NetHackWiki's DynaHack page lists its differences, and the vanilla Standard strategy mostly applies. Rules of thumb from the README:

Cheats