05 February 2019

Nethack Simplified Commands

I wanted to review the nethack commands to find related groups of commands and stuff that should be removed. Gathered these from here.

I’ve reorganized the nethack command list. I’ve tried to identify commands that can be removed through a better GUI for inventory/equipment management as well as commands that only exist because of poor graphical design that obscures information like the equipment on a tile. I was hoping to get it down to 4 top-level categories, but many of these defy an easy category. Even Interact feels overly large, but this a decent starting point.

  • [magic]
    • [cast] Cast a spell
    • [teleport] Teleport around the level
    • [read] Read a scroll, spellbook, or something else (also available in inventory but kept here for quick access)
    • [turn] Turn undead
    • [zap] Zap a wand
  • [interact current square]
    • [engrave] Engrave writing on the floor
    • [force] Force a locked chest
    • [loot] Loot a box on the floor
    • [pickup] Pick up things at current location
    • [search] Search for unseen things near you
  • [interact adjacent square]
    • [kick] Kick something
    • [open/close] Open/Close a door
    • [pray] Pray to the gods for help
    • [ride] Ride (or stop riding) a monster
    • [sit] Sit down
    • [tip] Tip over a container
    • [untrap] Untrap something
    • [wipe] Wipe off your face
  • [attack]
    • [hit] Hit with your weapon
    • [fire] Fire ammunition from quiver
    • [kick] Kick something
  • [jump] Jump to a location
  • [chat] Talk to someone
    • disabled when not possible
  • [items]
    • [apply] Apply (use) a tool
    • [dip] dip item
    • [invoke] Invoke an object’s powers
    • [offer] Offer a sacrifice to the gods
    • [throw] Throw something
    • [rub] Rub a lamp or a stone
    • [inventory] Show your inventory
  • [wait] Rest one move while doing nothing
  • [item subscreen]
    • [drop] Drop an item
    • [eat] Eat something

Reorganized Commands

Combined

Nethack CommandNotes
close[close a door]
dip[**dip an object into
something**] Have a combine option in inventory or a submenu option when interacting. Disable dipping into non-dippable things
down/up[**Go down/up a
staircase**] Triggered automatically when on the tile. Prompt asks you to confirm (using a different confirm button like a shoulder trigger)
engrave[**Engrave writing on the
floor**] Seems to mostly be there for writing “Elbereth” onto the ground. This falls under spells/casting in my books. It’s also really gimmicky/meta
fire[Fire ammunition from quiver] blongs with attack
force[**Force a
lock**] done by interaction submen kind of hacky. penalties seem adhoc, especially weapon breakage. See the necessity when random
jump[**Jump to a
location**] Seems pretty hacky. the escape mechanics could be useful to keep, but it’s pretty low on the list. Probably best to remove
kick[Kick something] part of interaction
monster[**Use a monster’s special
ability**] only applies if polymorphing is a thin better to group under attack command
offer[Offer a sacrifice to the gods] part of interaction menu
open[Open a door] part of interaction menu
pay[Pay your shopping bill] Bad UI. Pay for things by interacting with NPCs
pickup[**Pick up things at current
location**] most things should auto pickup. otherwise, its part of hte interaction menu or maybe visible from the inventory screen
read[Read a scroll, spellbook, or something else] magic move
ride[Ride (or stop riding) a monster] non-essential gameplay
rub[Rub a lamp or a stone] really meta. too specific a use
seetrap[Show the type of an adjacent trap] handled through the interact menu
sit[Sit down] part of interact
teleport[Teleport around the level] part of magic/casting
throw[Throw something] part of attack or maybe a more neutral command
tip[Tip over a container] part of interact. Could remove. Really specific
turn[Turn undead] part of casting/magic
untrap[Untrap something] part of interact
zap[Zap a wand] handled under item use
wipe[Wipe off your face] shows up in interact if needed

Moved to Game Menu

Nethack CommandNotes
annotate[**Leave a note about the
level**] Leaving user transcribed notes isn’t too bad an idea. But very keyboard centric. People can just use pen+paper
autopickup[**Toggle autopickup
on/off**] Better to setup a bunch of defaults. always pickup perishablesUse learning
call[**Name a monster or object, or add an

annotation**] Too keyboard centric. Get why it would can be fun (killed by kicking a wall), but complicates the interface too much| |conduct| [List which challenges you have adhered to] Belongs in a subscreen| |help| [Show the help menu] Access from the game menu| |overview| [** Display an overview of the dungeon**] Not useful | |options| [Show and change settings] Access from menu GUI | |quit| [Exit without saving current game] Access from menu GUI | |save| [Save the game and exit] Access from menu GUI| |version| [List compile time options for this version of NetHack] Belongs in a game menu. Buried deep or near the end. Fucking hell. Who would make this a shortcut| |versionshort| [Show version string] Belongs in a menu. Buried deep or near the end. Fucking hell. Who would make this a shortcut| |?| [Get this list of commands]. Same as the help command|

Moved to Inventory Screen

Nethack CommandNotes
drop[Drop an item] under inventory menu
droptype[**Drop specific item
types**] under inventory menu. Seems like a UI issue that would be solvable through a more manipulable inventory
eat[**Eat
something**] only needed with a food clock. Should eat automatically based on inventory sort order
enhance[Advance or check weapons skills] Belongs on inventory/skill subscreen
puton[Put on an accessory] Do through inventory screen
quaff[Drink something] Doe through inventory screen
seegold[Count your gold] See the inventory screen

Moved to Equipment Screen

Nethack CommandNotes
attributes[Show your attributes] Can be displayed on a screen like the equipment screen
quiver[Select ammunition for quiver] Do through equip screen
remove[Remove an accessory] Do through equip screen
seeall[Show all equipment in use] See the equip screen
seeamulet[Show currently worn amulet] See the equip screen
seearmor[Show currently worn armor] See the equip screen
seerings[Show currently worn ring(s)] See the equip screen
seespells[List and reorder known spells] See the equip screen
seetools[Show tools currently in use] See the equip screen
seeweapon[Show currently wielded weapons] See the equip screen
takeoff[**Take off one piece of
armor**] Is this a necessary UI optimization or can it be handled through an equip screen
takeoffall[**Remove all
armor**] Is this a necessary UI optimization or can it be handled through an equip screen
wear[Wear a piece of armor] See the equip screen
wield[Wield a weapon] See the equip screen
Nethack CommandNotes
adjust[**Adjust inventory
letters**] Used to create consistency letter mapping. Good to keep in mind, but more of a UI problem or a configuration issue
glance[**Show what a map symbol
means**] This is what a GUI is for. Need distinct monster shapes/sprites.
inventtype[**Inventory specific item
types**] More of a UI problem. Probably good to keep in mind the item types, but it’s not clear if this is needed
known[**Show discovered
objects**] Not seeing much of an advantaged to view a list of identified items
knownclass[Show discovered objects of one type] Limited use
look[Look at what is under you] Not needed with a GUI
loot[Loot a box on the floor] Should be an automatic action upon interacting with the box
name[Name an item or type of object] Too keyboard-centric. non-essential
whatis[**Show what type of a thing a symbol corresponds
to**]. Only needed because of a failure of the GUI
prevmsg[Show previously displayed game messages] Not really attached to the action log
redraw[Redraw the screen] Command-line cruft
shell[Do a shell escape. (Disabled on most NetHack servers.)] Command-line cruft
suspend[Suspend the game] Command-line cruft
swap[**Swap wielded and secondary
weapons**] Is this a necessary UI optimization or can it be handled through an equip screen
terrain[**Show the map without monsters, objects, or
traps**] Only needed because of the terrible GUI can’t display more than one character on a tile
twoweapon[**Toggle two-weapon
combat**] No reason to turn on/off. Just equip the two weapons and show the bonus visually
travel[**Travel to a specific location on the
map**] Only needed because people don’t like backtracking and in game movement is dull. Work on fixing those issues instead
whatdoes[Tell what a key does]