Microsoft Windows specific help file for NetHack 3.7 Copyright (c) NetHack PC Development Team 1993-2025. NetHack may be freely distributed. See license for details. (Last Revision: August 19, 2025) This file details some specifics for NetHack built for Windows. New players should be sure to read GuideBook.txt which contains essential information about playing NetHack. It can be found in the same directory as your NetHack executable. The NetHack for Windows port supports some additional or enhanced commands as well as some NetHack config file options. The active NetHack config file is stored in the nethack subfolder of the user's User Profile Folder. The config file can be referenced in the legacy CMD command prompt as: %USERPROFILE%\nethack\.nethackrc Under powershell, the User's config file can be referenced as: $env:USERPROFILE\nethack\.nethackrc Some options are applicable only to the "Graphical Interface." These are discussed separately in their own section. Contents 1. ALT Key Combinations 2. Graphical Interface - Options you can assign a value to 3. Graphical Interface - Additional/Enhanced Commands 4. Graphical Interface - Menus 5. Numeric Keypad (for number_pad mode) 1. ALT Key Combinations ---------------------------------------------- The non-graphical (tty) interface always operates in "NetHack mode", while the "NetHack for Windows - Graphical Interface" lets you toggle the mode. In non-NetHack mode, all ALT-key combinations are sent to the Windows itself, rather than to NetHack. While playing in NetHack mode you can press the ALT key in combination with another key to execute an extended command as an alternative method to pressing a # key sequence. The available commands are: Alt-2 #twoweapon - toggle two-weapon combat (unavailable if number_pad mode is set) Alt-a #adjust - adjust inventory letters. Alt-c #chat - talk to someone or something. Alt-d #dip - dip an object into something. Alt-e #enhance - enhance your skill with a weapon. Alt-f #force - force a lock. Alt-i #invoke - invoke an object's powers. Alt-j #jump - jump to a location. Alt-l #loot - loot a box on the floor. Alt-m #monster - use a monster's special ability. Alt-n #name - name an item or type of object. Alt-o #offer - offer a sacrifice to the gods. Alt-p #pray - pray to the gods for help. Alt-q #quit - quit the game. (Same as #quit) Alt-r #rub - rub a lamp. Alt-s #sit - sit down. Alt-t #turn - turn undead. Alt-u #untrap - untrap something. Alt-v #version - list compile time options for this version of NetHack. Alt-w #wipe - wipe off your face. Alt-? #? - display list of extended menu commands 2. Options that you assign a value to (Graphical Interface only) ---------------------------------------------------------------- "NetHack for Windows - Graphical Interface" recognizes the following additional options, which the non-graphical (tty) version will silently ignore. These are options that specify attributes of various windows. The windows that you can tailor include menu windows (such as the inventory list), text windows (such as "It is written in the book of ..." screens), the message window (where events of the game are displayed), the status window (where your character name and attributes are displayed), and the map window (where the map is drawn). Window Alignment options: align_message Specifies at which side of the NetHack screen the message window is aligned. This option can be used to align the window to "top" or "bottom". Default: [TOP] align_status Specifies at which side of the NetHack screen the status window is aligned. This option can be used to align the window to "top" or "bottom". Default: [BOTTOM] Map Window options: map_mode Specifies which map mode to use. The following map modes are available: tiles (display things on the map with colored tiles), ascii4x6, ascii6x8, ascii8x8, ascii16x8, ascii7x12, ascii8x12, ascii16x12, ascii12x16, ascii10x18 (which use that size font to display things on the map), or fit_to_screen (an ascii mode which forces things to fit on a single screen). Default: [tiles] scroll_margin Specifies the number of map cells from the edge of the map window where scrolling will take place. Default: [5] tile_file An alternative file containing bitmap to use for tiles. This file should be a .bmp file and should be organized as 40 rectangular tiles wide. It is beyond the scope of this document to describe the exact contents of each tile in the .bmp, which must match the object lists used when building NetHack. tile_height Used with tile_file to specify the height of each tile in pixels. This option may only be specified in the defaults.nh config file. Default: [16] tile_width Used with tile_file to specify the width of each tile in pixels. This option may only be specified in the defaults.nh config file. Default: [16] Other Window options: windowcolors Specifies the colors for various windows This option may only be specified in the defaults.nh config file and has the following format: window-type foreground/background Notes: - Both foreground and background colors are required, and a slash must separate them. - "window-type" is either "message" or "status" (Short forms are: "msg" or "sts"). - "foreground" and "background" may be specified as a color name (such as "blue"), or by a six digit hexadecimal RGB color value (such as "#8F8F8F") - The following color names are available: black, red, green, brown, blue, magenta, cyan, gray (or grey), orange, brightgreen, yellow, brightblue, brightmagenta, brightcyan, white, trueblack, purple, silver, maroon, fuchsia, lime, olive, navy, teal, aqua. In addition, you can use the following names to refer to default Windows settings: activeborder, activecaption, \ appworkspace, background, btnface, btnshadow, btntext, captiontext, graytext, highlight, highlighttext, inactiveborder, inactivecaption, menu, menutext, scrollbar, window, windowframe, windowtext. Example: OPTIONS=windowcolors:sts #00FF80/blue msg menutext/menu font_menu Specifies the name of the menu font. font_message Specifies the name of the message font. font_status Specifies the name of the status font. font_text Specifies the name of the text font. font_size_menu Specifies the size of the menu font. font_size_message Specifies the size of the message font. font_size_status Specifies the size of the status font. font_size_text Specifies the size of the text font. Miscellaneous options: vary_msgcount Number of lines to display in message window. 3. NetHack for Windows - Graphical Interface, Additional/Enhanced Commands ------------------------------------------------------------------------- The following function keys are active in the "NetHack for Windows - Graphical Interface": F4 Toggle level overview mode on/off This key will toggle the map between a view that is mapped to fit exactly to the window, and the view that shows the various symbols in their normal size. This is useful for getting an idea of where you are in a level. F5 Toggle tiled display on/off. This key switches between the tiled and the traditional ASCII display. This is equivalent to using the "map_mode" option. F10 Activate menu bar. This key will activate the menu bar, allowing you to select between the menus: File, Map, Window Settings, and Help. 4. Graphical Port Menus ----------------------- File Save - Allows you to save and exit the game Quit - Allows you to quit the game Map - Provides for selection of map mode. Equivalent to using the map_mode option. Window Settings - Changes your logged-on user's settings for NetHack. Only one setting is available: NetHack mode, which can be checked or unchecked. NetHack mode allows you to use the ALT key for game key commands [see list above]. You can use F10 to access the menu bar while in NetHack mode. You can also clear your logged-on user's settings for NetHack. Settings in this window are saved in your logged-on user's registry. Help - Provides help about various portions of NetHack. 5. Numeric Keypad (for "OPTION=number_pad" mode) ------------------------------------------------ The numeric keypad and surrounding characters act as macros for different commands in NetHack. The Num Lock should be toggled to "on" to make the most of these keys: Key Normal Shift-Key ---------- ---------- ------------- 1, 2, 3, 4 Move In Run In 6, 7, 8, 9 Direction Direction 0 (Ins) Inventory Categorized Inventory . (Del) Wait Turn : - Look Here + Spell List P - Put on an accessory - m - Move Previous Only Message NetHack for Windows - tty Interface Specific Behavior: ------------------------------------------------------ In the non-graphical (tty) interface, when you use the Ctrl key with a directional key (1, 2, 3, 4, 6, 7, 8, 9) it means "go in specified direction until you hit a wall or run into something interesting." NetHack for Windows - Graphical Interface Specific Behavior: ------------------------------------------------------------ It is possible to scroll or pan the map in a specific direction: Ctrl-Shift-Left (4) Scroll (Pan) map left Ctrl-Shift-Right (6) Scroll (Pan) map right Ctrl-Shift-Up (8) Scroll (Pan) map up Ctrl-Shift-Down (2) Scroll (Pan) map down Ctrl-Shift-Home (7) Scroll (Pan) map left to leftmost corner Ctrl-Shift-End (1) Scroll (Pan) map left to rightmost corner Ctrl-Shift-PgUp (9) Scroll (Pan) map left to uppermost corner Ctrl-Shift-PgDn (3) Scroll (Pan) map left to lowermost corner