Hubbry Logo
Hack (video game)Hack (video game)Main
Open search
Hack (video game)
Community hub
Hack (video game)
logo
7 pages, 0 posts
0 subscribers
Be the first to start a discussion here.
Be the first to start a discussion here.
Hack (video game)
Hack (video game)
from Wikipedia
Hack
Initial release17 January 1984; 42 years ago (1984-01-17)
Stable release
1.0.3 / 23 July 1985; 40 years ago (1985-07-23)[1]
Written inC[2]
SuccessorNetHack
Available inEnglish
TypeRoguelike video game
License3-clause BSD license[3]

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

History and development

[edit]

Hack was created in 1982 by Jay Fenlason with the assistance of Kenny Woodland, Mike Thome, and Jonathan Payne, while students at Lincoln-Sudbury Regional High School.[4] A greatly extended version was first released on Usenet in 1984 by Andries Brouwer. Brouwer continued to work on Hack until July 1985. Don Kneller ported the game to MS-DOS and continued development there.[5] Development on all Hack versions ended within a few years. Hack descendant NetHack was released in 1987.[6][7]

Hack is still available for Unix, and is distributed alongside many modern Unix-like OSes,[5] including Debian, Ubuntu, the BSDs,[5] Fedora,[8] and others. Hack has also been ported to a variety of non-Unix-based platforms. NetHack is available for almost all platforms which run Hack. There is one exception: Hack is available,[9] but NetHack is unavailable, for the Game Boy Advance.

Gameplay

[edit]

This describes Brouwer's version 1.0.3, which is the most canonical version, being the one installed by package managers on Linux systems.

Being developed by one man means the game is more balanced. Even when the player has discovered all properties of monsters, wands, potions, and has fathomed the role of "luck", the game remains as playable as ever. It may take ages before the player reaches that stage. The player will be helped by rumors: cryptic hints, hidden in fortune cookies.

The object of the game is to delve into a dungeon to retrieve the Amulet of Yendor, and perish with as many game points as possible. The player can start out with a different ability set, such as Wizard or Cave(wo)man. The player confronts various monsters: hobgoblins, leprechauns, acid blobs, bats, centaurs, chameleons, dragons, ghosts, imps, trolls, and has weapons, armor, potions, wands, rings and special items to aid in this, e.g. related to fire there is a scroll, a ring, a monster and a wand, and their interplay is to be discovered.

There is time pressure because the player dies if their food runs out, though food is scattered around the dungeon. There is a limit to how much the player can carry, forcing them to leave valuable items behind. The amount of gold and gems the player possesses when they die increases their score, but holding them comes with a burden of more weight.

The player must enter Hell to recover the Amulet. Entering Hell for the uninitiated just means that "you burn to a crisp". In NetHack, Hell is renamed.

The player encounters special rooms such as shops, crypts, and vaults. Other spatial elements in the game are traps and swamps. As the player's experience grows, so do their abilities, score and the need for food.

Interface

[edit]

Hack implements a graphical user interface using arrangements of ASCII or Extended ASCII glyphs to represent game elements. Some later ports of Hack, on AmigaOS for example, use graphical tiles in place of these letters and symbols.

Typical Hack session

[edit]
You hear some noises in the distance.
 
  
 #
                                                                  ------
                                                                  |....|
                       -----                                    ##+....|
                       |..$+#                                     |...<|
                       +...|#                                     |....|
                       |...|###############                       ------
                       |...|#             #-----+-----
                       |..%|##            #|.........|
                  #    -----#             #|.[......%L
       -+----  ##############             #|.........|
       |....|   #                         #+@........|
       |....+####                        ##-----------
       |....|
       |....+
       ------
 
 
 
 
Level 1    Hp  15(15)   Ac 9    Str 16      Exp  1          
Key:
@ the player character
+ a door
$ gold
% food
L monster; a leprechaun
[ armor
# corridor
< stairway leading upwards

References

[edit]
[edit]
Revisions and contributorsEdit on WikipediaRead on Wikipedia
from Grokipedia
Hack is a originally developed by Jay Fenlason with contributions from Kenny Woodland, Mike Thome, and Jon Payne, first distributed in December 1984 as an enhanced clone of the 1980 game Rogue. Players control a character navigating procedurally generated dungeons in a fantasy setting, selecting from multiple classes such as or wizard to explore levels, fight monsters, collect treasure, and ultimately retrieve the Amulet of Yendor from depths up to level 40, including a hellish endgame. The game features an ASCII-based interface, turn-based gameplay, and , where character death ends the run permanently, emphasizing strategic like food to avoid . Key innovations over Rogue include over 52 monster types, the addition of a loyal pet dog companion, interactive shops for buying and selling items, and long worm enemies that introduce complex tactical challenges. Released initially for Unix systems like BSD and later ported to DOS in 1985, Hack was enhanced by Andries Brouwer at the Mathematisch Centrum in , with versions progressing from 1.0 in late 1984 to 1.0.3 in July 1985, incorporating features like the endgame and worm mechanics in the final iteration. Its distribution via and the creation of the net.games.hack newsgroup by fostered a dedicated , sparking variants and discussions that directly influenced the development of NetHack starting in 1987. As one of the earliest Rogue clones after Moria, Hack bridged foundational design to more elaborate "hacklike" subgenres, popularizing elements like pets and commerce that became staples in the genre's evolution. The game's , now under a BSD-type license, remains freely available, allowing modern restorations and ports for contemporary systems; for example, the restoHack project in 2025 restored the original BSD version.

Development

Conception

Jay Fenlason, a high school student at in , began developing Hack in 1981 after encountering Rogue during a visit to the . Inspired by Rogue's innovative use of procedural dungeon generation, turn-based gameplay, , and ASCII-based graphics, Fenlason aimed to recreate a similar experience from memory, as the original Rogue's was not publicly available due to its closed-source nature. Fenlason's primary design goal was to produce a free, open-source alternative to Rogue that could be freely modified and distributed, thereby fostering community contributions while expanding on the core formula with additional content. He envisioned a game that retained Rogue's emphasis on exploration and survival in randomly generated underground levels filled with monsters and treasures, but with enhanced variety to increase replayability and depth. This included plans for more diverse monsters, items, and interactions, all rendered in simple to ensure accessibility on limited hardware. The early development process was a collaborative endeavor by Fenlason and his classmates, conducted in his school's computer lab under the supervision of computer science teacher , using a DEC PDP-11/70 running a system. Starting as a personal programming project, Fenlason coded the game in , focusing on implementing core mechanics over the course of about a year. By 1982, he had completed an initial version, which was shared via a tape but not widely distributed until 1984, accompanied by a note explicitly permitting others to improve and redistribute it with credit. The contributors included Kenny Woodland, who added maze-generating code; Mike Thome, who introduced chameleon monsters; and Jon Payne, who improved performance. Among the key innovations Fenlason introduced in Hack's conception were expanded random layouts with more varied configurations and corridors to promote nonlinear , improved monster AI behaviors that allowed creatures to pursue players more intelligently across levels, and refined item identification mechanics requiring experimentation to uncover properties like usability or risks. These elements built directly on Rogue's foundations but added layers of strategic depth, setting the stage for Hack's evolution into a more complex .

Release

Hack was completed in 1982 by Jay Fenlason, with assistance from Kenny Woodland, Mike Thome, and Jon Payne, following Fenlason's attendance at the conference earlier that year. The game was first publicly distributed in 1984 via a software distribution tape, making it available within the UNIX user community. Later that year, in December 1984, an initial version of the source code (Hack 1.0) was posted to the net.sources by Andries Brouwer, facilitating broader dissemination among academic and technical users. The source code was shared freely without a formal , though Fenlason explicitly permitted its distribution under a BSD-style arrangement in his 1982 copyright notice, underscoring an early open-source ethos that encouraged modification and sharing. This approach aligned with the collaborative culture of UNIX developers at the time. Hack initially targeted UNIX systems, particularly those running BSD, where it could leverage the operating system's terminal-based environment for gameplay. Community efforts soon led to ports for VMS systems and early personal computers, including a DOS port in 1985 by Don Kneller, expanding its reach beyond university mainframes. The release sparked immediate interest, with users reporting bugs and suggesting improvements through emerging online forums. This feedback prompted minor patches, such as the Hack 1.0.1 update in January 1985, which addressed initial issues and added small features. The volume of discussion grew so rapidly that created the dedicated net.games.hack Usenet newsgroup in early 1985 to manage queries, bug reports, and player experiences. Fenlason contributed to these early fixes before stepping away from further development later that year.

Gameplay

Core mechanics

Hack employs a turn-based system for movement and , where players navigate a multi-level procedurally generated for each playthrough, ensuring unique layouts and encounters across runs. The consists of up to 40 interconnected levels accessed via , with players able to backtrack to previously visited areas to retrieve items or avoid threats, emphasizing strategic positioning in a grid-based environment. Players start with a loyal little dog as a pet companion that follows them through the , assists in combat against monsters, and can help manage food resources, though it may be lost or tamed differently. The combat system supports , ranged, and magical attacks using items, with damage calculations incorporating a weapon's die roll plus a strength modifier to determine base harm inflicted on monsters. engagements occur when adjacent to foes, ranged attacks utilize thrown or launched items like arrows, and magical effects are triggered via identified scrolls, , or other artifacts, each consuming turns and potentially limited uses like wand charges. Inventory management imposes carrying limits based on the player's strength and , requiring decisions on item retention or dropping to avoid that slows movement. Items can also be bought and sold in randomly generated shops on levels, where shopkeepers enforce prices and react to player actions like or floor digging. Unknown items, marked by question symbols, must be through experimental use, testing on monsters, or consumption of scrolls of identify, adding risk and discovery to resource handling. Permadeath enforces a single life per run, with no option for save-scumming or reloading to undo mistakes; the game ends upon character death or successful ascent with the Amulet of Yendor retrieved from deep dungeon levels. Hunger mechanics track a timer that advances with each turn, necessitating periodic food consumption to maintain satiety; failure leads to weakening, reduced speed, and eventual starvation death, integrating time pressure into exploration and combat decisions.

Character progression

In Hack, players select from six character classes at the start of the game: Tourist, Speleologist, Fighter, , Cave-man, and Wizard. Each class begins with specialized starting equipment tailored to its archetype—for instance, the Tourist carries ample gold and a camera that can blind monsters, while the starts with superior armor and a , granting an early edge in . These choices influence initial survival strategies but do not lock players into rigid playstyles, as item acquisition allows flexibility across classes. The experience system drives character advancement, with players earning experience points primarily by defeating monsters in the . Accumulating sufficient experience raises the character's level, up to a maximum of 14, enhancing core statistics such as hit points, strength, and armor class for improved combat prowess and durability. Higher levels also expand the character's capacity to wield powerful items and survive deeper dungeon strata, where threats intensify. Unlike subsequent roguelikes, Hack lacks a formal alignment system (lawful, neutral, or ), so actions like slaying non-hostile creatures do not dynamically shift a moral standing or alter endgame outcomes. Progression emphasizes practical gains over ethical tracking, with players focusing on and tactical growth. The game's quest structure is uniform across all classes, centered on descending through 25 procedural room-based levels followed by maze-like depths, ultimately retrieving the Amulet of Yendor from levels 30 and below while confronting the Wizard of Yendor. No class-specific quests or rituals, such as ceremonies, exist; advancement relies on universal exploration and confrontation mechanics rather than role-tailored objectives. Character abilities evolve through a combination of level-ups and acquired , with starting with scrolls and other magical items for accessing magical effects, while other classes benefit from enhanced stealth or via . Intrinsic —permanent, inherent traits—can be gained by consuming certain corpses; for example, eating a floating eye corpse confers , allowing detection of hidden or invisible foes. Extrinsic properties, meanwhile, stem from equipped items, such as rings providing fire resistance essential for surviving the hellish lower levels or potions boosting strength temporarily. These mechanics encourage experimentation with diet and inventory to build a resilient character over multiple runs.

User interface

Display elements

Hack employs a terminal-based interface utilizing ASCII characters to depict the and its elements on a standard 24-line by 80-column grid, typical of Unix terminals in the . The central portion of the screen presents the dungeon map, where walls are represented by the '#' symbol, floors by '.', the by '@', and monsters by letters, both upper- and lowercase (e.g., 'K' for , 'd' for ). This symbolic representation allows for efficient rendering of complex environments within the constraints of text-only displays. The top status line provides essential player information, including current and maximum hit points (HP), armor class (AC), and amount of gold possessed, enabling quick assessment of survival status during exploration. At the bottom, a dedicated message line delivers scrolling notifications for game events, such as combat outcomes or item interactions, along with command prompts to guide player input. These fixed lines frame the dynamic map area, maintaining a consistent layout across gameplay. To manage possessions, players invoke the 'i' command, which generates a textual list of items assigned to slots a through z, facilitating selection for equipping, dropping, or using objects without disrupting the main view. This slotted system supports up to 26 primary items, emphasizing strategic decisions. Originally developed for terminals, Hack's display relied solely on character symbols without color differentiation, though subsequent ports to systems supporting ANSI escape codes incorporated colors to distinguish monster types and item categories for enhanced readability.

Typical session

A typical session in Hack begins with the player launching the game and selecting a from options such as fighter, wizard, or , each starting with predefined attributes and basic equipment like a and armor. The game then procedurally generates the initial dungeon level, featuring a layout of interconnected rooms and corridors populated with monsters, items, and hazards. The player, represented by the '@' symbol on the ASCII display, starts in a safe entry area and begins exploration. In the early game, the player navigates the using the 'yuhjklbn' directional keys, corresponding to the eight possible movements (e.g., 'h' for left, 'j' for down, 'y' for up-left). Movement is turn-based, with each key press advancing time and potentially triggering events; for instance, approaching a wandering —depicted as 'K'—initiates , where the player can attack by moving adjacent to it or using ranged items if available. Successful melee strikes against the weak deplete its hit points until it dies, potentially leaving a corpse that can be eaten for nutrition or identification clues. As exploration progresses, the player encounters unidentified items, such as a symbolized by '!', and decides to quaff it to reveal its effect, which might restore health or cause , informing future use. Inventory management becomes crucial here, with the player using commands like 'i' to inspect and 'd' to drop excess items, as space is limited and carrying food rations is essential to avoid during delves. While searching corridors, the player might step on a trap, indicated by a sudden effect like falling into a pit, prompting careful path retracing; successfully avoiding or disarming it leads to opening a with the 'o' command, revealing a side containing loot such as or a . A session often concludes dramatically, such as when the player, now deeper in the dungeon, encounters a stronger foe like a snake that overwhelms them in combat, resulting in death and the generation of a "bones file" that preserves the corpse and items for potential discovery in subsequent games. Alternatively, a fortunate run might tease ascension by reaching lower levels with amassed treasures, though permadeath typically ends the attempt abruptly.

Legacy

Influence on roguelikes

Hack served as a foundational open-source that directly inspired NetHack, released in 1987, which expanded upon Hack's codebase by introducing additional character roles, a wider array of monsters, and elements of humor to enhance player engagement. NetHack retained and refined Hack's core mechanics, such as procedural dungeon generation and , while adding features like an alignment system (lawful, neutral, chaotic) and special levels, solidifying these as genre staples. The game's open-source distribution popularized code sharing within the community, fostering a lineage of variants that built iteratively on Hack's framework; this approach led to extensive modifications, exemplified by Slash'EM, a derivative that incorporated numerous additional monsters and new content to increase complexity and variety. Hack's emphasis on procedural depth and high replayability also influenced the design of early multiplayer dungeon games (MUDs) and computer role-playing games (CRPGs), where randomized environments and emergent interactions became key to sustaining long-term player interest. Specific mechanics from Hack, such as controllable pet companions that assist in combat and exploration, were carried forward into successors and echoed in later titles like ADOM (1994), which integrated similar taming systems alongside quests and mutations for added narrative depth. Likewise, conduct challenges—self-imposed restrictions like or to heighten difficulty—gained prominence through NetHack's implementation, promoting replayability and strategic experimentation in the . In roguelike histories, Hack is recognized for bridging the simplicity of Rogue (1980) to more intricate modern iterations, with its innovations in monster AI, level design, and interactive systems cited as pivotal in the evolution of and player agency. This transitional role is affirmed in genre-defining documents like the 2008 Berlin Interpretation, which highlights and randomization—core to Hack—as essential traits.

Modern ports and community

In the years following its initial release, Hack has seen limited but dedicated efforts to adapt it for contemporary platforms, primarily through preservation projects rather than commercial remakes. A notable modern port is restoHack, a 2025 resurrection of the original 1984 codebase that modernizes the build system with , converts K&R C to , and ensures playability on current operating systems without altering core gameplay. This project emphasizes software preservation, allowing compilation and execution on , macOS, and Windows environments. Additionally, Hack remains integrated into modern BSD distributions, such as , where it is maintained as a package for native execution on systems. The game's , released under a three-clause BSD license, is archived and accessible through various repositories, facilitating community-driven cleanups for compatibility with modern compilers. For instance, restoHack's repository provides a fully restored, buildable version, addressing issues like outdated syntax while preserving the original mechanics. Older DOS versions are preserved via emulation tools like , enabling retro gameplay on contemporary hardware without requiring specialized setups. These efforts ensure Hack's accessibility, though no official web-based ports or mobile adaptations using libraries like libtcod have emerged specifically for it; such tools are more commonly applied to newer developments inspired by Hack. While Hack itself has no direct forked variants post-2000—unlike its successor , which spawned editions like UnNetHack in 2007 with balance adjustments—the broader roguelike community sustains interest through preservation and homage projects. Enthusiasts participate in events such as the annual Roguelike Celebration, a virtual gathering held in October 2025, fostering discussions on emulation and modernization. The Seven Day Roguelike (7DRL) challenge, an ongoing event since 2007, occasionally inspires entries drawing from Hack's dungeon-crawling foundations, though none replicate it directly. As of 2025, Hack's community remains niche but active, centered on archival forums like RogueBasin and preservation initiatives rather than dedicated Discord servers or tournaments, with no official updates since the 1980s. Projects like restoHack demonstrate sustained enthusiasm, bridging the gap between historical software and modern playability, ensuring the game's influence endures among aficionados.
Add your contribution
Related Hubs
User Avatar
No comments yet.