Everything2
Near Matches
Ignore Exact
Full Text
Everything2

NetHack

"NetHack" is also a: user

created by che

(thing) by Eloquence (4.3 mon) (print)   ?   (I like it!) 2 C!s Mon Jul 17 2000 at 1:30:19

I must warn you. Nethack is addictive. I have banned it from my harddrive about 2 years ago and I'm pretty sure that I'm safe from its wrath now. But back then in 1996 when I started playing with it, I tell you .. I didn't get to do anything else. The worst part was when I was on vacation with a useless old laptop and while the sun was shining and naked girls were begging me to join them in wild orgies of mud wrestling and stuff, the only thing I could think of was finding a power outlet and trying to get to the Amulet of Yendor, fighting trolls and killer bees, attacking shop-owners, robbing the gold-vault and hiding away from the kops using a wand of invisibility. I even had a version of the game where one level consisted only of weird Douglas Adams characters. Have you ever listened to Vogon poetry? In Nethack, everything is possible. It's like the Nexus in that Star Trek movie, you know.

But as I said, be warned. This game will cause your friends and family to scorn you and strip you off the remaining social life you may still have. You will sit in front of a computer screen (in text mode) all day, moving a white @-symbol across the screen and trying to remove other symbols, like brown Ts and pink xs from the very same screen, delightfully smiling when an especially nasty one disappears. All these symbols have deeper meanings which you will gradually discover.

At first, you will look for secret doors in the dungeon rooms you find yourself in. Jackals and other lame monsters will try to bite you, sometimes they come in hordes, which can really be annoying. If you make noises, they will attack you more often, the little fuckers. You will even have to take care of your own pet, which can be practically anything, but at the beginning of the game is usually a cat or a dog. If you don't anger it, it will come to your aid when you need it. But don't forget to feed it when it doesn't find anything to eat. Of course, you shouldn't forget to eat either. But remember: Only eat fresh corpses. If nothing helps anymore, you can pray to your deity. But don't do it too often, or they will throw lightning bolts at you.

You can bring statues to life and turn monsters into statues. You can turn into a werewolf or even a wererat. You can eat the corpses of your enemies and you can laugh at your gods. You can have wild, uninhibited sex with incubi, and you can ask released water demons for a +4 two-handed sword. You can learn numerous magic spells and drink lots of weird potions. You can throw all kinds of objects around and hope that they don't hit someone who is stronger than you are. You can ask the oracle for advice and you can write messages in the sand.

But as I told you, don't play it. Don't go to <www.nethack.org> now and get your copy of this game. It's a devious plan by the mice to take over the world by turning normal, intelligent human beings into slobbering idiots who can only say one sentence: "The kitten eats the jackal corpse". You've been warned.


(thing) by advid (2.7 y) (print)   ?   (I like it!) 4 C!s Thu Sep 28 2000 at 0:13:24

Nethack is one of those games that transcends time. It was originally written in the 80's and has been in more or less continuous development since then by a godlike group known as the DevTeam.

As you may have guessed from its age, Nethack is a text-based game (not like Zork; you have an overhead view of a dungeon and monsters, items, etc are represented by letters and symbols). Now, some of you may be wondering why I consider its graphics excellent despite this. This is because it does not need better graphics; they would, in fact, just get in the way. After a few minutes playing you can glance at the screen and see exactly what is happening without having to think about it. In the advanced stages of addiction you genuinely fear certain letters and will swear profusely if you see a D (dragon).

There are no sounds. I personally recomend puting a cd in the drive and listening to it (something atmospheric if possible, or rock; rock is very suited to the feelings evoked).

The game is difficult. So difficult. This is a game where completing it will be the pinnacle of many months of playing. This is a game which only has a save function to let you leave the computer for a bit (no reloading if you die...). This is a game which has you hack your way down through hundreds of levels of dungeon until you reach the bottom, at which point you have to hack your way back up again, pestered the whole way by an unkillable foe (the Wizard of Yendor) who will steal the big treasure from you every chance he gets. And, when you reach the top you will have to fight your way through the four hardest levels yet. And then ... then you get your reward; you ascend and become one of the elite, one of the people who have finished Nethack, who have ascended. What then? Then you go back and try again with a different class (there are 13, or so) or race or playing with some self imposed restriction (no weapons for example). And, above all, you will enjoy this.

The designers have thought of everything. You can kill a cockatrice (chicken/lizard/monster that turns things to stone), pick it up (assuming you have gloves) and use its corpse as a weapon, turning everything you hit to stone. You can train your pet dog/cat/horse to steal things from shops. You can do so many cool things that I am not going to even attempt to list them here. If you can think of something cool to do, chances are the designers have put it in there ("They thought of everything" is a common quote).

Above and beyond all this, you will have fun. This is the game that you will come back to again and again, long past the time you have forgotten all others. This is the game that Diablo failed to copy well enough. This is a game you will find yourself playing at 4am on a Monday morning before work, after starting play on Friday evening.

You will find yourself coming back to Nethack again and again. This I promise. You will play until you are so tired you can't sleep and then you will play some more. You won't care that you haven't moved in 16 hours.

I could say more, but I can't really describe Nethack. You have to experience it to understand.


(thing) by balseraph (2.1 y) (print)   ?   (I like it!) 22 C!s Thu Aug 12 2004 at 1:05:40

NetHack: A History and Analysis

1 Introduction

NetHack is a single-player computer role-playing game, originally developed in 1987. In the game, players take the role of fantasy adventurers who must endure the challenges and dangers of the Dungeons of Doom in order to retrieve the mystical Amulet of Yendor for their patron god.

NetHack is available for download, free of charge, from www.nethack.org. The newest version available as of this writing is NetHack 3.4.3, released on December 8, 2003. Official binaries are available for all flavors of Windows, MS-DOS, Linux, Macintosh, OS/2, Amiga and Atari. Source code is also freely available, which, in addition to the above listed systems, is compatible with all flavors of Unix, BeOS and VMS. The source code is distributed under the NetHack General Public License, which is based on the GNU General Public License.

The game is renown among game aficionados for four things: its age, its text-only interface, its incredible difficulty and its addictiveness.

As to the first point, NetHack is indeed a very old game. It will be almost 20 years old as of this writing. While there are many games that are older, very few of them have either an active development team that continues to release new versions or a large, growing player community. NetHack has both.

As to the second point, the world of NetHack is displayed to players as an overhead map that uses alphanumeric and punctuation characters instead of real graphics (figure 1). Every object in the game is represented by a single character. For example, the player's avatar is represented by an "@" symbol. Most of the commands are issued as single keypresses on the keyboard. While this interface seems crude, most NetHack players consider it a virtue.



Hello Balseraph, welcome to NetHack!  You are a neutral male human Monk.




 ------------
 |..........+
 |..........|
 |@f........|
 |..........|
 |..........|
 |..........+
 ------------









Balseraph the Candidate         St:18/01 Dx:13 Co:12 In:10 Wi:9 Ch:10  Neutral
Dlvl:1  $:0  HP:14(14) Pw:5(5) AC:4  Xp:1/0 T:1

Figure 1: The beginning of a game of NetHack 3.4.3. Remember that NetHack is a text-only game, so this is an actual screenshot.

The square on the left represents a room and the player's avatar is represented by the "@" sign. Various statistics about the player character are displayed on the bottom two lines and a descriptive status bar is displayed on the top line.



As to the third point, NetHack's reputation as an incredibly difficult game is well earned. Part of this difficulty stems from the learning curve. The game manual is fairly terse, only describing the commands and interface. The rest of the information about game must be learned the hard way, through sheer trial and error. Even after players have learned everything about the game, the game itself is very difficult. The Dungeons of Doom are chock full of dangers that can instantly kill an unwary adventurer. Finally, NetHack is very difficult because death is permanent. That is, players cannot save their current game and return to it after death. When a character dies, the game is over.

As to the fourth point, despite the near impossibility of the game, NetHack still has a large, dedicated player community. They are drawn to the game by its complexity and difficulty, often to the point of near-addiction. While it is easy to die in NetHack, very few of those deaths are arbitrary. The gameplay has been crafted so that almost every failure could be avoided through cleverness. Good players learn from those mistakes and progress farther along in the game, living for the hope that one day they will finally win.

These four aspects of the game distinguish NetHack as one of the most significant achievements in the history of video games.


2 History

Specifically, NetHack is a "roguelike" game. That is, a game like the even older game Rogue. Because of this, a history of NetHack is in part a history of Rogue.

Rogue came into existence the way most games do: an older game inspired the developers to make a newer and better game using the latest technology. In the late 1970s, the earlier game was Adventure, the classic text-only interactive fiction game. The original developers of Rogue, Michael Toy and Glenn Wichmann, were students at the University of California, Santa Cruz and had access to Adventure on the school's mainframe computers. Wichman remembers that "both enjoyed playing 'Adventure' (Michael [Toy] had long ago mastered the program; [he] kept getting killed but enjoyed it anyway.)"1

However, Adventure proved to be limited in many ways. While today's gamers may find the text-only interface to be the most limiting aspect, Toy and Wichmann were most disappointed by Adventure and existing adventurelike games because they were

"canned adventures"--they were exactly the same every time you played, and of course the programmers had to invent all of the puzzles, and therefore would always know how to beat the game. We decided that with Rogue, the program itself should "build the dungeon", giving you a new adventure every time you played, and making it possible for even the creators to be surprised by the game.2

This randomly generated experience was the key gameplay innovation. Because the program would create surprises every time users played, Rogue would have nearly infinite replay value. Replay was, and still is, an important measure of game quality.

Toy and Wichman developed another game innovation, in the form of rudimentary graphics. Adventure and its direct descendents were completely text based. That is, the game resembled a normal computer terminal, where all the settings were descriptive prose ("You are standing at the end of a road before a small brick building") and all the commands were in the form of pseudo-English phrases ("go east"). Rogue, on the other hand, presented the user with an overhead map drawn using ASCII characters. While crude by today's standards, this gave players a clearer sense of the space they were playing in.

The "curses" cursor manipulation programming library developed by Ken Arnold, a student at the University of California, Berkeley, was the tool that Toy and Wichman used to give Rogue its graphics. Computer terminals of the time were generally limited to 80 characters on 24 lines for a single screen. The curses library, written in 1980, allowed programmers to easily update arbitrary parts of the screen while leaving other parts unchanged. Prior to curses, a programmer would have to refresh the entire screen manually even if he wanted to change just one character while leaving the rest of the screen unchanged. Curses provided the flexibility needed by programmers like Toy to easily create graphics.

In 1980, with Toy doing most of the programming and Wichmann providing ideas and the name, the first version of Rogue was released. Wichman recalls,

We had a playable game, without all the features yet (e.g., no armor), when Michael transferred to U.C. Berkeley, where he met up with Ken Arnold. For a while, we each moved forward with our own versions of the game, him in Berkeley and me in Santa Cruz. This proved to be too difficult to keep up logistically, so I just let Michael & Ken take over Rogue development completely.3

The object of Rogue is to retrieve the magical Amulet of Yendor, an artifact of great value, from the bottom of the Dungeons of Doom. Along the way, the player kills monsters, discovers treasure and explores the randomly generated dungeon. Fortunately (or unfortunately), Rogue is much more difficult than it sounds, and it is the difficulty and unpredictability that made Rogue so popular.

Rogue quickly became popular with the students at Berkeley and--because the popularity of Berkeley's "BSD" distribution of the Unix operating system, which included Rogue--with university students worldwide by 1983. By this time, many budding young programmers had become addicted to Rogue. This proved fortunate, because the original Rogue developers--Toy, Wichman, Arnold, and Jon Lane, who joined the team after meeting Toy working for the Italian company Olivetti--eventually lost interest in the game. Toy and Lane formed their own company, A.I. Design, to port Rogue to the IBM PC around this time. After the company was sold to Epyx, official development on Rogue ended.4

However, many of Rogue's players had already become inspired to improve or remake Rogue independently. One of the first and most successful games inspired by Rogue was The Dungeons of Moria, written in 1983 by Robert Alan Koeneke for the VAX VMS system. Moria would go on to inspire another major roguelike, Angband, in 1990.5

NetHack was not long after Moria chronologically. Hack, as NetHack was first known, was first written by Jay Fenlason, Kenny Woodland, Mike Thome, and Jon Payne in 1985, as an almost direct clone of Rogue, except with more monsters and items.6 This level of similarity, in part, makes NetHack uncommon among its fellow roguelikes. Whereas many others were just inspired by Rogue, NetHack was created from the start as an improved Rogue. Arguably, this makes NetHack a direct descendent of Rogue. Even though the original Rogue development team had nothing to do with NetHack, Fenlason et al. reimplemented Rogue with improvements, a task made easier because Rogue had been released with the BSD license.7

Even from a visual level, there is a subtle yet distinct link between Rogue and NetHack that is lacking when Rogue is compared to other major roguelikes, such as Moria, Angband and Ancient Domains of Mystery (figure 2).













                                        -+----------
                                        +..........+
                                        |.....@....|
                                        ---------E--
                                                 #
                                                 #
                                         #########
                            -------------+--------
                            |           ?        |
                            |                    |         --------------
                        ####+                    +#########+            |
           ##############   |      %!            |         | )          |
                            |     !              |         |            |
                            ----------------------         --------------
Level: 1  Gold: 8      Hp: 8(12)    Str: 16(16) Arm: 4  Exp: 1/9

Figure 2.1: Starting out in Rogue 5.3.



You hear noises in the distance.



                  -------------           ---------------
 ------------     ............|           |.............|
 |..........-#### |...........+           |.............|           -------
 |..........|  #  --.--------|-           ...............#          |...{.|
 |<.........|###   ####     ###           -----+---------#        ##.....>|
 |..........|#      ###      #                           #       ###|....$|
 |..........|#        #      #                           #      ### -------
 |..........-##################            ##         ############
 ------------#               #        -.----.--+-     #---------#
         ####'               ##       |..........######|...(...|#
                        ------|--     |.........|     #|.......-#
                        |........     |.........|     #|....@..|
                        |.......|     |.........|     #-.......|
                        |.......|  ## |.........|      ---------
                        |..(.....#####..........|
                        |....[$.|     -----------
                        ---------

Balseraph the Candidate         St:18/01 Dx:13 Co:12 In:10 Wi:9 Ch:10  Neutral
Dlvl:1  $:0  HP:14(14) Pw:5(5) AC:4  Xp:1/0 T:245

Figure 2.2: An early level of a game of NetHack 3.4.3.




             ##################################################################
Human        #................................................................#
Mage         #...........#1#######.........................########...........#
Novice       #...........#########>.....#####2######.......########...........#
             #...........#########......############.......#######4...........#
STR :      7 #........@..#########......############.......########...........#
INT :     14 #...........#########......############.......########...........#
WIS :     14 #................................................................#
DEX :     13 #................................................................#
CON :     13 #................................................................#
CHR :     12 #................................................................#
             #................................................................#
LEV :      1 #...........######.........#########.............................#
EXP :      0 #...........######.........#########.........######..............#
MANA:      0 #...........#####5.........#########.........######..............#
MHP :     10 #...........######.........#########.........######..............#
CHP :     10 #...........######.........#########.........#####3..............#
             #...........######.........####6####.........######..............#
AC  :      0 #...........######...........................######..............#
GOLD:    385 #............................................######..............#
             #................................................................#
             ##################################################################
                                                           Study Town level

Figure 2.3: The first level of The Dungeons of Moria 5.5.2.



Human                                                                           
Mage                                                                            
Novice                                                                          
LEVEL      1                                                                    
EXP        0                                                                    
AU       545                                                                    
                                                         # #                    
STR:       7                                             # #                    
INT:      17                                             # #                    
WIS:      13                                             #@#                    
DEX:      15                                             # #                    
CON:      12                                        %%####.#####.#########      
CHR:      16                                        #....................#      
                                                    #....................#      
Cur AC     1                                        #....................#      
Max HP    10                                        #>...................#      
Cur HP    10                                        #....w................      
Max SP     2                                        #..<.................#      
Cur SP     2                                        #....................#      
                                                    #....................#      
                                                    ############.#####+###      
                                                                                
                                                                Study   Lev 1   

Figure 2.4: An early level of Angband 3.0.5.






                                                                        ^^^^^
                                                                       ^^^..^
                                                                ^^^^^^ ^^..^^
                                                               ""&&^~^^^^.^^
                                                               "&&~~~^....^
                                                          """""&&&&&o..~^^^
                                                      """"""""&&&&&&&&&&^^
                                                     """""""&&&&&&&&&&&~~
                                                     """""&&@&&&&&&&&&~
                                                     ="""""""&&o&&&&~~~
                                                      ==""""""&&&&&&~~
                                                             &&"" &&~







Balseraph     St:16  Le:12  Wi:11  Dx:12  To:11  Ch: 1  Ap:10  Ma: 3  Pe:10 N=
DV/PV: 11/1    H: 19(19)      P: 3(3)        Exp: 1/0           DrCh  Sp: 100
Hungry

Figure 2.5: Ancient Domains of Mystery 1.1.1. Beginning to explore the world map.





              ...........
             .............
            ..............
            ...............   ...
           ................ .....T.
            ####....................
           ....#.....######........==
           ..........#..  #........=.
          ######.....#t.  #........=..
         ............#..  #......T....
        #............##t###......T....=
        #........................T....=
       ##TT.....######t..@.........=....
       #=T=.....#  ..#.............=....
       =====....####.#..T..........===..
       .=====...#....#.....t...........
       ====.....####.#...........T....T
       ...............................
       ..............................
        ............................
Balseraph     St:16  Le:12  Wi:11  Dx:12  To:11  Ch: 1  Ap:10  Ma: 3  Pe:10 N=
DV/PV: 11/1    H: 19(19)      P: 3(3)        Exp: 1/0           Vlge  Sp: 100

Figure 2.6: Ancient Domains of Mystery 1.1.1. Beginning to explore a village map.


Figure 2: A comparison of Rogue and four of the most popular roguelikes: NetHack, The Dungeons of Moria, Angband and Ancient Domains of Mystery. Remember, all of these games are text-only, so these are actual screenshots.



Hack was distributed over Usenet in source code form. Because the code was distributed to the public, anyone could experiment with Hack themselves. At this point, several independent developers worked on their own versions of Hack: Andries Brouwer did a major re-write, transforming Hack into a different game, and published (at least) three versions (1.0.1, 1.0.2, and 1.0.3) for UNIX machines on Usenet. Don G. Kneller ported Hack 1.0.3 to Microsoft C and MS-DOS, producing PC HACK 1.01e, added support for DEC Rainbow graphics in version 1.03g, and went on to produce at least four more versions (3.0, 3.2, 3.51, and 3.6).