Forty years of the DevTeam thinking of everything · the current NetHack
> Enter the dungeon.c/.h filesNetHack descends from Hack (1985), which descends from Rogue. Mike Stephenson's 1987 fork became NetHack 1.3d; the DevTeam has carried the same code base forward ever since, through 2.x, 3.0 (1989), 3.4.3 (2003) and 3.6 (2015). The README of 5.0 calls it “a direct descendent of NetHack 3.6”: the long-running 3.7 development branch was released under a new major number.
Its many variants (SLASH'EM, UnNetHack and others) branch off older 3.x versions; see the family tree.
| The NetHack DevTeam | Every version since 1987; 5.0.0 released 2 May 2026 with a list of over 3,100 fixes and changes (NetHack/NetHack @ dd8acee, branch NetHack-5.0) |
| Mike Stephenson, Izchak Miller, Janet Walz | The original DevTeam that forked Hack and named it NetHack |
| Jay Fenlason, Andries Brouwer | Hack, the code underneath |
| The DevTeam and contributors | The 16×16 tile set shipped with NetHack (win/share/monsters.txt, objects.txt, other.txt), used here |
| This port | SDL2 multi-window port and browser build (memmaker/nethack50) |
src/ and include/, and 131 Lua files under dat/ for levels, dungeon layout, quest texts and themed rooms.include/monsters.h, objects in include/objects.h, artifacts in include/artilist.h, roles and races in src/role.c. The save file was reworked to write individual fields, little-endian, instead of raw structs, so saves can cross machines.window_procs table; tty, curses, X11, Qt and Windows GUI ship upstream. Our port adds win/sdl2/winsdl.c (SDL2, one window per NetHack window) and reuses it for the browser, where the WebAssembly side decides everything and JavaScript only blits and plays sounds.makedefs that ran on the build machine were split off, which is what made the Emscripten build straightforward.| Thing | Count | Notable ones |
|---|---|---|
| Roles | 13 | Archeologist, Barbarian, Caveman, Healer, Knight, Monk, Priest, Rogue, Ranger, Samurai, Tourist, Valkyrie, Wizard. The Valkyrie is always female; the Tourist starts with a Hawaiian shirt and an expensive camera. |
| Races | 5 | Human, elf, dwarf, gnome, orc. |
| Monsters | 394 | The displacer beast, genetic engineer and gold dragon (new), Medusa, Croesus, Vlad the Impaler, the Wizard of Yendor, and the Riders Death, Pestilence and Famine. |
| Artifacts | 35 | Excalibur, Mjollnir, Stormbringer, Grayswandir, Vorpal Blade, the Platinum Yendorian Express Card, the Eyes of the Overworld. |
| Weapons | 71 | Including 6 launchers and 6 projectiles; katana, tsurugi, aklys, crysknife, rubber hose. |
| Armour | 70 | Dragon scale mail in nine colours (gold is new), crystal plate mail, the Hawaiian shirt. |
| Rings / Amulets | 28 / 11 | Ring of conflict, of polymorph control; amulet of life saving, and the new amulets of flying and of guarding. |
| Tools | 45 | Magic marker, magic lamp, drum of earthquake, expensive camera, 7 containers (bag of holding, ice box). |
| Potions / Scrolls | 26 / 23 | Potion of gain level, of full healing; scroll of genocide, of charging, of stinking cloud. |
| Spellbooks | 44 | Finger of death, chain lightning (new), magic mapping, identify. |
| Wands | 28 | Wishing, death, polymorph, digging. |
| Food | 32 | Lembas wafer, cram ration, tin, egg, lump of royal jelly (which now turns a killer bee into a queen). |
| Themed rooms | 23 | Ice room, spider nest, garden, massacre, buried treasure, temple of the gods, a room inside a room. |
| Quests | 13 | One per role, each with its own leader, nemesis and artifact. |
| Dungeon | ~50 levels | Dungeons of Doom 25–29 levels, Gehennom 20–24, Gnomish Mines 8–13, Sokoban 4, the Quest 5–7, Vlad's Tower 3, Fort Ludios 1, then the four Elemental Planes and the Astral Plane. Max experience level: 30. |
The official Guidebook (“A Guide to the Mazes of Menace”, text, 7,800 lines) shipped with the source, under the NetHack General Public License. The in-game ? help and the port's help page cover the keys.
The NetHackWiki is the walkthrough: start with Standard strategy, then look up anything that kills you (what changed in 5.0.0). Rules of thumb:
nethack -D, Ctrl+W to wish, Ctrl+V to level-teleport) is compiled in, but the browser page never passes -D and the built-in sysconf only allows the users root and games, so it can't be reached here. (NetHackWiki)#exploremode command (Alt+X) turns the game into a non-scoring discovery game where death is optional.