Analyzing Usability and Accessibility in CLI Games Through Nethack

Introduction
Nowadays, there is little to no discussion about the significance of considering usability and accessibility from the very inception of game development. Over the last two decades, various industry stakeholders have produced extensive literature and guidelines on these topics. However, this has not always been the case, particularly concerning accessibility.
Command-line games deserve special mention among countless older titles with identifiable user experience issues, mainly because they have always occupied a niche often overlooked by scholars despite some maintaining their popularity.
The purpose of this essay is to specifically contrast the prevailing discussions on usability and accessibility in mainstream gaming with the unique characteristics of command-line interface games, with a particular focus on the UI of the classic CLI roguelike NetHack.
That said, «Graphicless» may not sound like the best name for this text because Nethack and other CLI games have graphical interfaces where ASCII characters represent game objects. However, since interpreting these hotchpotch is often a task for the imagination, comparing them to traditional graphical interfaces does not seem appropriate.
PDF version
About the game
NetHack is a single-player roguelike released in 1987 and maintained by the NetHack DevTeam. It is a fork of «Hack,» released in 1982 and inspired by «Rogue» from 1980, the game that coined the genre. Developed primarily for the command line, NetHack has official and unofficial graphical clients available, but the vanilla edition uses ASCII art exclusively for visual representation. The analysis is based on version 3.6.6 of this edition.
NetHack immerses players in the role of a hero, offering diverse races and classes. The goal is to find the Amulet of Yendor, which grants immortality, within the Mazes of Menace. The game incorporates the typical elements of roguelikes and RPGs, including foes, quests, equipment, inventory management, shops, and NPCs. Nevertheless, what truly sets it apart is the depth that can only be achieved through almost four decades of relentless development.
NetHack was chosen as the starting point for the text not only because of its evident usability and accessibility issues when compared to modern standards but also because it presents a golden opportunity to create new research paths due to the scarcity of literature on CLI games.
Usability and accessibility issues
It comes as no surprise that Nethack has a considerable barrier to entry. The official Wiki describes it as «hard,» «unforgiving,» and «deep» (NetHack Wiki, 2023), and it rejoices on the idea of players dying quickly and often, having to consult external help sources, and even diving into the very source code of the game. However, difficulty and information overload are just the tip of the iceberg for why people opt not to keep playing (or even start playing at all).
Due to its nature, NetHack inherits many usability and accessibility issues from both the roguelike genre and CLI games. On top of that, it also contains some quirks (affectionately known by the community as «nethackisms») that do not necessarily follow the guidelines for creating usable and accessible games.
Figure 1. The NetHack game screen
Following Glinert’s dimensions of usability (2009), it is evident even before starting to play that aesthetics, namely «the most important dimension for video games,» is probably the realm with the most significant number of shortcomings regarding both usability and accessibility. Despite having a dedicated fanbase, ASCII art presents substantial challenges, especially for people with disabilities, due to its incompatibility with screen readers. Therewithal, the use of ASCII characters to represent the game world and objects (Figure 1) hinders users from benefiting from the visual cues provided by more familiar representations, thus creating a high emphasis on recall rather than recognition. As if more was needed, in the case of NetHack, many of the forms do not follow their intended function. How can a player recognize a stair going down if it is symbolized by the «>» character?
That brings us to the next dimension: learnability. Starting a game of NetHack for the first time is rough, and the game has no intention of helping. Not in-game, at least. Beyond the character creation wizard, which is more or less intuitive, there is no tutorial, description of the controls, or guidance on what to do next. There are no apparent visual indicators besides arbitrary ASCII characters and a status bar with the player name and stats. Even if a player can guess how to perform actions, the sheer number of available options, hidden menus, and the lack of adequate feedback (like a total absence of sound) or cues for critical irreversible actions contribute to a steep difficulty curve and a potentially frustrating experience. The game expects players to rely on external resources, like the official Wiki, as a permanent reference. This reliance results in a considerable cognitive load, which does not bode well for usability or accessibility.
The next dimension, simplicity, is closely intertwined with the previous one. NetHack not only lacks an in-game, readily accessible list of controls, but the controls also deviate significantly from industry standards for character movement, actions, and system options, displaying a lack of consistency compared to other games in the genre and increasing the required cognitive load.
As bleak as it may sound up to this point, there is a glimmer of hope in the darkness. Besides some of the other editions of the game addressing many of these issues (Figure 2), the base game offers a significant number of customization options that allow changing almost anything, from remapping the controls to assigning user sound cues to specific patterns, as well as providing automation options, which goes in favor of the last dimension, efficiency. However, there is a catch: these options require editing system files and using more complex artifacts, like variables and their values, making them primarily accessible to advanced users.
Figure 2. The Vulture graphical client. From Vulture, 2007, NetHack Wiki. (https://nethackwiki.com/wiki/Vulture)
Given that many of the issues discussed earlier result from deliberate design choices, it would be presumptuous to suggest that they must be completely resolved. However, there are specific instances where improvements can be made without fundamentally altering the game’s essence. The following sections will address three cases using Folmer’s interaction design patterns (2007).
Proposal 1: what’s important
Problem | The game has much information that can be challenging to find.
|
Context | Old-school roguelikes, especially those with a long-lasting presence, often require a wealth of knowledge. However, due to the limitations of older systems, conveying this information on-screen was challenging, frequently resulting in complex and convoluted menu interfaces or a reliance on external resources. |
Forces | · The original design intends for players to use exploration actions (such as #look or #glance) to gather information.
|
Solution | There are a few possible solutions for some of the immediate problems resulting from not having all the information on-screen:
|
Why | Providing information on-screen would reduce the cognitive load, soothing the usability and accessibility needs of the player and contributing to higher learnability. In the case of expert players, it would also contribute to better efficiency since they could save some steps (like looking around) in their routines. |
Examples | Many adventure games contemporary to NetHack offer room descriptions on entry and listing available actions near interactable objects. In the case of the on-demand list of pickable items, Diablo III (Blizzard, 2012) highlights and labels all items on the ground for easier recognition when pushing the TAB key (Figure 4).
Figure 3. Diablo III item highlighting. Where Diablo 3 is Missing Out, 2012, Ray Mazza’s Website. (https://www.raymazza.com/post/where-diablo-3-is-missing-out)
|
Proposal 2: better feedback
Problem | Not all key presses result in feedback. The base game has no sound at all. For example, walking toward a wall does nothing.
|
Context | When players press a key, they anticipate receiving feedback, whether it is the avatar moving or a response from the UI element. Unreachable areas, non-interactable objects, and unresponsive NPCs can swiftly lead to frustration if the player is not given feedback when interacting with them. |
Forces | · Players expect feedback for any pressed key. |
Solution | The solution would be adding visual and sound feedback to all the actions that do not have it, especially the restrictive ones that can ruin the experience for players with disabilities. |
Why | Adding the missing feedback would not only favor players with visual disabilities, but it would also contribute to increasing clarity and even efficiency since most automation systems rely on feedback. |
Examples | Most modern games offer solutions to the particular case of unreachable areas by using a line of dialogue from the character or other diegetic solutions, such as the gush of wind that impedes the character from leaving the game area in Hollow Knight (Team Cherry, 2017). Considering the current limitations of NetHack, a more realistic example would be a contemporary game like Savage Island (Adventure International, 1980), which prints the message «I can’t go that way» when trying to move to an unreachable position.
Figure 4. Trying to move to unreachable positions in Savage Island. Adventure 10: Savage Island 1 , 2005, ZXArt. (https://zxart.ee/spa/software/game/adventure-10-savage-island-1/)
![]() |
Proposal 3: remapping controls
Problem | Many actions need to be performed with different keys from the industry standards.
|
Context | Roguelikes and complex games in general (like simulators) usually have many actions assigned to multiple keys on the keyboard. Furthermore, most classic roguelikes, especially Nethack, due to its «nethackisms» and other factors (such as the keyboard distribution of the computer where it was developed), use distributions inconsistent with the industry standards. |
Forces | · Players are used to particular control schemas.
|
Solution | There are two possible solutions:
|
Why | Remapping the controls is necessary for people with cognitive or physical disabilities since they probably use custom, accessible controllers. Besides, it contributes to both the efficiency and the clarity dimensions. |
Examples | Most games nowadays allow customizing the control schema through their options menu. Also, games like Final Fantasy XIV: A Realm Reborn (Square-Enix, 2010) allow grouping actions in submenus to reduce the number of keys to remember.
Figure 5. Assigning player actions to the action bar in Final Fantasy XIV. Using Player Actions, Step by Step, s.f., Square-Enix. (https://na.finalfantasyxiv.com/uiguide/know/know-action/action_how_to.html)
|
Conclusions
NetHack’s affiliation with the past becomes even more apparent when looking at how poorly it has adapted to current guidelines on usability and accessibility. Critiquing such a relic by modern standards may seem unjust, especially when we acknowledge that part of its charm lies in those oddities that might not align with contemporary gaming norms.
However, if NetHack plans to stay awhile (and it does), it would benefit from listening to the voices that have emerged over time and appealing to a whole new audience. As demonstrated earlier, this can be accomplished without compromising the uniqueness that has endeared it as a beloved classic with a still alive, thriving community.
Figure 6. The game over screen in NetHack.
References
- Folmer, E. (2007, May 17). Designing Usable and Accessible Games with Interaction Design Patterns. Game Developer. https://www.gamedeveloper.com/design/designing-usable-and-accessible-games-with-interaction-design-patterns
- Glinert, E. (2009, August 19). Upping Your Game’s Usability. Game Developer. https://www.gamedeveloper.com/design/upping-your-game-s-usability
- Heron, M.J. (2015). A case study into the accessibility of text-parser based interaction. Proceedings of the 7th ACM SIGCHI symposium on engineering interactive computing systems. ACM. https://dl.acm.org/doi/10.1145/2774225.2774833
- Hodent, C. (2018). Gamer’s Brain: How Neuroscience and UX Can Impact Video Game Design. Taylor & Francis Group.
- UOC. (n.d.). Interfaces de juego: feedback. Design Toolkit. http://design-toolkit.recursos.uoc.edu/es/interfaces-de-juego-feedback/