NetHack

Last updated

NetHack
Nethack releasing a djinni.png
A released djinni grants the player a wish
Developer(s) The NetHack DevTeam
Initial releaseJuly 1987 (1.3d) [1]
Stable release
3.6.1 / 27 April 2018;9 months ago (2018-04-27)
Repository Blue pencil.svg
Type Roguelike
License NetHack General Public License (derivative of BISON general public license, a precursor to the GPL)
Website www.nethack.org

NetHack is a single-player roguelike video game originally released in 1987 with ASCII graphics. It is a descendant of an earlier game called Hack (1982), which is a clone of Rogue (1980). [2] Comparing it with Rogue, Engadget 's Justin Olivetti wrote that it took its exploration aspect and "made it far richer with an encyclopedia of objects, a larger vocabulary, a wealth of pop culture mentions, and a puzzler's attitude." [3] In 2000, Salon described it as "one of the finest gaming experiences the computing world has to offer." [2]

Roguelike subgenre of role-playing video games

Roguelike is a subgenre of role-playing video game characterized by a dungeon crawl through procedurally generated levels, turn-based gameplay, tile-based graphics, and permanent death of the player character. Most roguelikes are based on a high fantasy narrative, reflecting their influence from tabletop role playing games such as Dungeons & Dragons.

Video game electronic game that involves interaction with a user interface to generate visual feedback on a video device such as a TV screen or computer monitor

A video game is an electronic game that involves interaction with a user interface to generate visual feedback on a two- or three-dimensional video display device such as a TV screen, virtual reality headset or computer monitor. Since the 1980s, video games have become an increasingly important part of the entertainment industry, and whether they are also a form of art is a matter of dispute.

1987 has seen many sequels and prequels in video games and several new titles such as The Legend of Zelda, Contra, Street Fighter and Metal Gear.

Contents

The player chooses a character race and class for the mission of retrieving the Amulet of Yendor in a randomly generated dungeon. [4] [5]

Character race somewhat analogous with "humanoid species" in fantasy and science fiction; e.g. elves and dwarves

In tabletop role-playing games, the character race represents the people to which a player character (PC) or a non-player character (NPC) belongs. "People" is to be taken in the broader sense, and may encompass ethnic groups, species, nationality or social groups.

In this fantasy world, the word “race” means the same as and replaces “species”.

In role-playing games (RPG), a character class is a job or profession commonly used to differentiate the abilities of different game characters. A character class aggregates several abilities and aptitudes, and may also detail aspects of background and social standing, or impose behavior restrictions. Classes may be considered to represent archetypes, or specific careers. RPG systems that employ character classes often subdivide them into levels of accomplishment, to be attained by players during the course of the game. It is common for a character to remain in the same class for its lifetime; although some games allow characters to change class, or attain multiple classes. Some systems eschew the use of classes and levels entirely; others hybridise them with skill-based systems or emulate them with character templates.

History and development

The first version of NetHack was released by Mike Stephenson on July 28, 1987. [6]

A core development team emerged with the release of NetHack 3.0 in July 1989. Over the next 14 years of development they established a tight-lipped culture, revealing little, if anything, between releases. Owing to the ever-increasing depth and complexity found in each release, the development team enjoys a near-mythical status among some fans. This perceived omniscience is captured in the initialism TDTTOE, "The DevTeam Thinks of Everything".

Stephenson licensed the software under the NetHack General Public License, allowing other developers to release their own versions. The license is certified as open source by the Open Source Initiative. [7]

Open Source Initiative non-profit organization promoting open-source software

The Open Source Initiative (OSI) is a non-profit organization dedicated to promoting open-source software.

For 12 years, the last version to include new gameplay features was NetHack 3.4.3, released in December 2003. [6] Subsequent updates included new tilesets and compatibility with variants of Mac OS. [8] In the absence of new releases from the developers, several variants developed by fans emerged.

On December 7, 2015, version 3.6.0 was released, the first major release in over a decade. While the patch did not add major new gameplay features, the update was designed to prepare the game for expansion in the future. [9] [10] NetHack remains "...one of the oldest games still being developed". [11] A public read-only mirror of NetHack's git repository was made available on February 10, 2016. [12] Version 3.6.1 was announced on April 28th, 2018, a return to a somewhat more frequent release schedule. [13]

Git free and open source revision control software

Git is a distributed version-control system for tracking changes in source code during software development. It is designed for coordinating work among programmers, but it can be used to track changes in any set of files. Its goals include speed, data integrity, and support for distributed, non-linear workflows.

Gameplay

Before starting a game, players are asked to choose their character's race, role, gender, and alignment, or allow the game to assign the attributes randomly. There are traditional fantasy roles such as knight, wizard, rogue, and priest; but there are also unusual ones, including archaeologist, tourist, and caveman. [14] The player character's role and alignment dictate which deity the character serves in the game and "how other monsters react toward you". [15]

After the player character is created, the main objective is introduced. To win the game, the player must retrieve the Amulet of Yendor, found at the lowest level of the dungeon, and offer it to their deity. Successful completion of this task rewards the player with the gift of immortality, and the player is said to "ascend", attaining the status of demigod. In addition, a number of sub-quests must be completed, including one class-specific quest.

The player's character is, unless they opt not to be, accompanied by a pet animal, typically a kitten or little dog, although knights begin with a saddled pony. [16] Pets grow from fighting, and they can be changed by various means. Most of the other monsters may also be tamed using tempting food or magic.

Dungeon levels

NetHack's dungeon spans about 50 primary levels, of which most are randomly generated when the player character first encounters them. A typical level contains a way "up" and "down" (these may be stairways, ladders, trapdoors etc.), along with several "rooms" joined by corridors. The "rooms" are randomly generated rectangles (as opposed to the linear corridors) and may contain features such as altars, shops, fountains, traps, thrones, pools of water, and sinks based upon the randomly generated features of the room. Some "special" levels are of fixed design in every game session.

Items and tools

A player's inventory, as displayed after application of the "menucolors" patch Nethack-inventory.png
A player's inventory, as displayed after application of the "menucolors" patch

NetHack features a variety of items: weapons (either ranged or melee), armor to protect the player; scrolls and spellbooks to read, potions to quaff, wands, rings, amulets, and an assortment of tools such as keys and lamps. [17]

NetHack's identification of items is almost identical to Rogue 's. For example, a newly discovered potion may be referred to as a 'pink potion' with no other clues as to its identity. Players can perform a variety of actions and tricks to deduce, or at least narrow down, the identity of the potion. [18] The most obvious is the somewhat risky tactic of simply drinking it. All items of a certain type will have the same description; for instance, all scrolls of enchant weapon may be labeled 'TEMOV', and once one has been identified, all scrolls of enchant weapon found will be labeled unambiguously as such. Starting a new game will scramble the items' descriptions again, so the 'silver ring' that is a ring of levitation in one game might be a ring of hunger in another.

Blessings and curses

As in many other roguelike games, all items in NetHack are either "blessed", "uncursed", or "cursed". [19] The majority of items are found uncursed, but the blessed or cursed status of an item is unknown until it is identified or detected through other means.

Generally, a blessed item will be more powerful than an uncursed item, and a cursed item will be less powerful, with the added disadvantage that once it has been equipped by the player, it cannot be easily unequipped. Where an object would bestow an effect upon the character, a curse will generally make the effect harmful, or increase the amount of harm done. There are exceptions, however, which are usually very specific – for example, drinking a cursed potion of gain level will make the character literally rise through the ceiling to the level above, instead of gaining an experience level.

Character death

As in other rogue-like games, NetHack features permadeath: expired characters cannot be revived without having made backup copies of the actual save files.

Although NetHack can be completed by new or intermediate players without any artificial limitations, experienced players can attempt "conducts" for an additional challenge. [20] These are voluntary restrictions on actions taken, such as using no wishes, following a vegetarian or even vegan diet, or even killing no monsters. While conducts are generally tracked by the game and are displayed at death or ascension, unofficial conducts are practiced within the community.

When a player dies, the cause of death and score is created and added to the list where the player's character is ranked against other previous characters. [21] The prompt "Do you want your possessions identified?" is given by default at the end of any game, allowing the player to learn any unknown properties of the items in the inventory at death. Player's attributes (such as resistances, luck, and others), conduct (usually self-imposed challenges, such as playing as an atheist or a vegetarian), and a tally of creatures killed, may also be displayed.

The game sporadically saves a level on which a character has died and then integrates that level into a later game. This is done via "bones files", which are saved on the computer hosting the game. A player using a publicly hosted copy of the game can thus encounter the remains and possessions of many other players, although many of these possessions may have become cursed. [22]

Culture around spoilers

NetHack is largely based on discovering secrets and tricks during gameplay. It can take years for one to become well-versed in them, and even experienced players routinely discover new ones. [23] A number of NetHack fan sites and discussion forums offer lists of game secrets known as "spoilers". [24] Fans of NetHack consider an ascension without having read spoilers very prestigious; the achievement is so difficult that some question whether it has been or can be accomplished.

Interface

NetHack was originally created with only a simple ASCII graphical user interface, although the option to use something more elaborate was added later in its development. Interface elements environment, entities, and objects are represented by arrangements of ASCII or Extended ASCII glyphs used in plain text, "DEC graphics" or "IBM graphics" mode. In addition to the environment, the interface also displays character and situational information.

A detailed example:

You see here a silver ring.                                             ------------                                           ##....._.....|                                             |...........#          ------                                            #...........|           |....|                        ---------------   ###------------           |...(|                        |..%...........|##########               ###-@...|                        |...%...........###    #                 ## |....|                        +.......<......|       ###              ### |..!.|                        ---------------          #              #   ------                                                 ###          ###                                                   #          #                                                ---.-----   ###                                                |.......|   #                                                |........####                                                |.......|                                                |.......|                                                ---------   Hacker the Conjurer            St:11 Dx:13 Co:12 In:11 Wi:18 Ch:11  Neutral   Dlvl:3  $:120 HP:39(41) Pw:36(36) AC:6  Exp:5 T:1073

The player (the '@' sign, a wizard in this case) has entered the level via the stairs (the '<' sign) and killed a few monsters, leaving their corpses (the '%' signs) behind. Exploring, the wizard has uncovered three rooms joined by corridors (the '#' signs): one with an altar (the '_' sign), another empty, and the final one (that the wizard is currently in) containing a potion (the '!' sign), chest (the '(' sign), and has just moved onto a square containing a silver ring. Parts of the level are still unexplored (probably accessible through the door to the west (the '+' sign)) and the player has yet to find the downstairs (a '>' sign) to the next level.

Apart from the original termcap interface shown above, there are interfaces that replace standard screen representations with two-dimensional images, or tiles, collectively known as "tiles mode". Graphic interfaces of this kind have been successfully implemented on the Amiga, the X Window System, the similar Microsoft Windows GUI, the Qt toolkit, or the GNOME libraries.

Enhanced graphical options also exist, such as the isometric perspective of Falcon's Eye and Vulture's Eye, or the three-dimensional rendering that noegnud offers. Vulture's Eye is a fork of the now defunct Falcon's Eye project. Vulture's Eye adds additional graphics, sounds, bug fixes and performance enhancements and is under active development in an open collaborative environment.

Online

Bugs, humorous messages, stories, experiences, and ideas for the next version are discussed on the Usenet newsgroup rec.games.roguelike.nethack. [25]

A public server at nethack.alt.org, commonly known as NAO, gives access to NetHack through a Telnet or SSH interface. A Java Telnet emulator is also available on the same site. Ebonhack connects to NAO with a graphical tiles-based interface. [26]

During the whole month of November, the annual /dev/null NetHack Tournament took place every year from 1999 to 2016. [27] [28] The Junethack Cross-Variant Summer Tournament has taken place annually since 2011. [29]

Ports and forks

The NetHack General Public License allows anyone to create a fork or port it to a platform not supported by the official DevTeam, provided that they use the same license. Over the years this licensing has led to a large number of ports and forks (e.g. Slash'EM [30] and UnNetHack [31] ) as well as versions [32] in German, Japanese and Spanish. [6]

NetHack General Public License

The NetHack General Public License is a copyleft software license certified as an open source license by the Open Source Initiative. [33]

The license was written in 1989 by Mike Stephenson, who patterned it after the GNU bison license (which was written by Richard Stallman in 1988). [34] Like the Bison license, and Stallman's later GNU General Public License, the NetHack license was written to allow the free sharing and modification of the source code under its protection. At the same time, the license explicitly states that the source code is not covered by any warranty, thus protecting the original authors from litigation.

Derivative works

The NetHack GPL requires all derivative works to be distributed under the same license, except that the creator of a derivative work is allowed to offer warranty protection on the new work. The derivative work is required to indicate the modifications made and the dates of changes. In addition, the source code of the derivative work must be made available, free of charge except for nominal distribution fees.

See also

Related Research Articles

<i>Castle of the Winds</i> 1989 video game

Castle of the Winds is a tile-based roguelike video game for Microsoft Windows. It was developed by Rick Saada in 1989 and distributed by Epic MegaGames in 1993. The game was given around 1998 into the public domain and provided as Freeware download by the author. Though it is secondary to its hack and slash gameplay, Castle of the Winds has a plot loosely based on Norse mythology, told with setting changes, unique items, and occasional passages of text. The game is composed of two parts: A Question of Vengeance, released as shareware, and Lifthransir's Bane, sold commercially. A combined license for both parts was also sold.

Ancient Domains of Mystery (ADOM) is a roguelike video game, designed and developed by Thomas Biskup, which was first released in 1994. The player's goal is to stop the forces of Chaos that invade the world of Ancardia.

Moria (video game) video game

The Dungeons of Moria, or just Moria, is a roguelike computer game inspired by J. R. R. Tolkien's novel The Lord of the Rings. The game's objective is to kill a Balrog, presumably Durin's Bane, deep within the Mines of Moria. A later port of Moria called Umoria inspired the Angband roguelike game. This game influenced the preliminary design of Blizzard Entertainment's Diablo.

<i>Rogue</i> (video game) video game

Rogue is a dungeon crawling video game by Michael Toy and Glenn Wichman and later contributions by Ken Arnold. Rogue was originally developed around 1980 for Unix-based mainframe systems as a freely-distributed executable. It was later included in the official Berkeley Software Distribution 4.2 operating system (4.2BSD). Commercial ports of the game for a range of personal computers were made by Toy, Wichman, and Jon Lane under the company A.I. Design and financially supported by the Epyx software publishers. Additional ports to modern systems have been made since by other parties using the game's now-open source code.

Hack is a 1982 roguelike video game that introduced shops as gameplay elements and expanded available monsters, items, and spells. It later became the basis for NetHack.

Angband (video game) Dungeon-crawling roguelike computer game

Angband is a dungeon-crawling roguelike computer game derived from Umoria. It is based on the writings of J. R. R. Tolkien, in which Angband is the fortress of Morgoth. The current version of Angband is available for all major operating systems, including Unix, Windows, Mac OS X, and Android.

Larn is a roguelike computer game written by Noah Morgan in 1986 for the UNIX operating system. Morgan's original version of Larn remains part of the NetBSD games collection.

A text game or text-based game is a video game that uses text characters instead of bitmap or vector graphics. Text-based games were a popular form of interactive fiction in the 1980s.

DRL (video game) 2013 video game

DRL, short for Doom, the Roguelike, is a roguelike video game developed by ChaosForge based on the first-person shooters Doom and Doom II. It's been in-development since 2002 and released for Microsoft Windows, Linux and OS X. Following a cease and desist notice from "Doom" trademark owner, ZeniMax Media, the game's name was changed to DRL in 2016.

Dungeon Crawl Stone Soup is a free and open source roguelike computer game, which is the actively community-developed successor of the 1997 roguelike game Linley's Dungeon Crawl, originally programmed by Linley Henzell.

<i>Diablo</i> (video game) 1996 video game

Diablo is an action role-playing hack and slash video game developed by Blizzard North and released by Blizzard Entertainment on December 31, 1996.

Falcons Eye 2000 video game

Falcon's Eye is a version of the computer game NetHack which introduces isometric graphics and mouse control. Falcon's Eye has been praised for improving NetHack's visuals and audio to an almost commercial level and has been noted as among some of the best free games available by Linux Journal. After development stalled in 2001, the game development was continued as Vulture's Eye or later Vulture for Nethack.

<i>Spelunky</i> 2009 video game

Spelunky is an open-source indie platform video game created by Derek Yu and released as freeware for Microsoft Windows. It was remade for the Xbox 360 in 2012, with ports to the PlayStation 3, PlayStation Vita and then back to Microsoft Windows. The player controls a spelunker who explores a series of caves while collecting treasure, saving damsels, fighting enemies and dodging traps. The caves are procedurally generated, making each run through the game unique. Spelunky is one of the first examples of a roguelike-like, borrowing concepts from the roguelike genre, and was the influence for many later roguelike-like games.

<i>Dungeons of Dredmor</i> video game

Dungeons of Dredmor is a roguelike indie game released on July 13, 2011 by Gaslamp Games. The game features tile-based graphics. A DLC release for the game entitled "Realm of the Diggle Gods" was also released later that year. A second DLC called "You Have To Name The Expansion Pack" was released on June 5, 2012. A third DLC called "Conquest of the Wizardlands" was released on August 1, 2012. The game has extensive support for user created modifications.

Tales of Maj'Eyal is an open-source roguelike video game released 2012 for Microsoft Windows, Mac OS X, and Linux. Tales of Maj'Eyal is available as donation-supported Freeware/Donationware from the developers. Donations grant some exclusive online features. The game may also be purchased through the digital distribution outlets Steam or GOG. The game's TE4 game engine source code is under a GNU GPLv3 license, the game's assets are licensed for use "with the Tales of Maj'Eyal game only."

Cataclysm: Dark Days Ahead post-apocalyptic roguelike

Cataclysm: Dark Days Ahead, or CDDA, is an open-source survival horror roguelike video game. Cataclysm: Dark Days Ahead is a fork of the original game Cataclysm. CDDA features text based graphics but has an alternative graphical tiles version. The game is freely downloadable on the game's website and the source code is also freely available on the project's GitHub repository under the CC BY-SA Creative Commons license. Rock, Paper, Shotgun named CDDA in 2016 one of "The 50 Best Free Games on PC".

<i>Necropolis</i> (video game) 2016 video game

Necropolis is an action rogue-lite role-playing video game developed by Harebrained Schemes and published by Bandai Namco Entertainment. The game was released for Microsoft Windows and OS X in July 2016, and for PlayStation 4 and Xbox One in October 2016.

<i>Brogue</i> (video game)

Brogue is a free roguelike computer video game created by Brian Walker. As in its predecessor Rogue, the goal of Brogue is for the player to descend to the 26th floor of the Dungeons of Doom, retrieve the Amulet of Yendor, and return to the surface. Players also have the option of delving deeper into the dungeon to obtain a higher score. This task is complicated by the presence of monsters and traps in a procedurally generated dungeon.

References

  1. "part01.gz" . Retrieved 2016-04-23.
  2. 1 2 Au, Wagner James (2000-01-26). "The best game ever". Salon . Archived from the original on 2008-01-13. Retrieved 2015-04-03.
  3. Olivetti, Justin (2014-01-18). "The Game Archaeologist: A brief history of roguelikes". Engadget . Retrieved 2015-11-09.
  4. "The Best Games You've Never Played". bit-tech. Retrieved 2015-11-08.
  5. Au, Wagner James (August 1997). "Back to the Dungeon". Wired .
  6. 1 2 3 "Happy 20th birthday, 'NetHack'! - CNET". CNET. Retrieved 2015-11-09.
  7. "The Nethack General Public License (NGPL)". opensource.org. Retrieved 2016-04-23.
  8. Kenneth Lorber (2009). "NetHack" . Retrieved 2011-04-08.
  9. Kenneth Lorber (2015). "NetHack" . Retrieved 2015-12-07.
  10. Kerr, Chris (December 8, 2015). "NetHack gets first major update in over a decade". Gamasutra . Retrieved December 8, 2015.
  11. Eli (2006-07-16). "NetHack". Jay Is Games . Retrieved 2008-12-15.
  12. "Information for NetHack Developers". NetHack. Retrieved 2016-02-11.
  13. "NetHack 3.6.1: Release Notes". www.nethack.org. Retrieved 29 April 2018.
  14. "NetHack 3.6.0: Guidebook for NetHack 3.6". nethack.org. Retrieved 2016-04-23.
  15. "NetHack 3.6.0: Guidebook for NetHack 3.6". nethack.org. Retrieved 2016-04-23.
  16. "NetHack 3.4.3: Guidebook for NetHack 3.4". Nethack.org. Retrieved 2010-09-08.
  17. "NetHack 3.4.3: Guidebook for NetHack 3.4". Nethack.org. Retrieved 2010-09-08.
  18. "NetHack 3.4.3: Guidebook for NetHack 3.4". Nethack.org. Retrieved 2010-09-08.
  19. "NetHack 3.4.3: Guidebook for NetHack 3.4". Nethack.org. Retrieved 2010-09-08.
  20. "NetHack 3.4.3: Guidebook for NetHack 3.4". Nethack.org. Retrieved 2010-09-08.
  21. "GameSetWatch @ Play: Thou Art Early, But We'll Admit Thee". www.gamesetwatch.com. Retrieved 2015-11-09.
  22. "Hearse" . Retrieved 2008-12-15.
  23. http://sequoia.ict.pwr.wroc.pl/~witold/aiarr/2009_projekty/elitmod/
  24. "List of Nethack Spoilers". Statslab.cam.ac.uk. Retrieved 2010-09-08.
  25. "Nethack: The Best Game on your Mac". Engadget. Retrieved 2015-11-09.
  26. "Ebonhack webpage". Archived from the original on 12 May 2010. Retrieved 4 May 2010.
  27. "GameSetWatch COLUMN: @Play: Ten Years Of The devnull Nethack Tournament, Part 1". www.gamesetwatch.com. Retrieved 2015-11-09.
  28. "TNNT: About". The November Nethack Tournament. Retrieved October 13, 2018.
  29. "Junethack" . Retrieved August 20, 2016.
  30. "The Slash'EM Homepage".
  31. "UnNetHack".
  32. "Foreign language versions".
  33. "Licenses by Name". Open Source Initiative. Retrieved 16 December 2015.
  34. GNU Bison is no longer distributed under the original Bison license; it has been distributed under an extension of the GNU General Public License since at least 1991.