NetHack Curses Interface Wiki

Main Page | Info | Downloads | Screenshots | Developers | Misc

This wiki is intended as a homepage for the curses interface for NetHack and Slash`EM, providing screenshots and download links, as well as technical information about the interface.


The NetHack curses interface is an add-on for NetHack, Slash`EM, and UnNetHack which provides an alternate text-mode user interface for these games. See Screenshots for an idea of how this interface differs from the built-in TTY interface. The code has been tested on Linux, Windows, and Mac OS X, but probably will work on a number of other platforms as well. See Building for details.


January 15th, 2012: The preview Mac binary has been updated, and has been confirmed to work on Mac OS X Lion. Preferences are now stored under the users home directory in Library/Preferences/NetHack Defaults.txt, which will be created upon the first invocation of this binary.

January 13th, 2012: I have made a Beta 4 "preview" Mac Intel binary available on the Downloads page. There may be more changes before Beta 4, but I wanted to put this out there for testing, as well as to provide OS X Lion users have a binary that will run on their systems.

January 11th, 2012: Mainly for fun, I resurrected an old OS/2 system, and did a build with the curses interface linking against PDCurses for OS/2, as well as PDCurses for SDL, using the OS/2 port of SDL. No binary release, but Beta 4 will have the updated makefile I used, for the hordes of OS/2-using NetHack players out there.

January 7th, 2012: A DOS binary may be found on the Downloads page. It has been a long time since updates, as I have not been working on this project for a while. I plan to do another release soon, which will be small in scope: a couple of bugfixes, updated Mac OS X build files, and support for a DOS pdcurses port. I also want to provide a Mac OS X Intel binary if I can.


December 20th, 2010: Windows binaries for Beta 3 are now available on the Downloads page.

December 18th: Beta 3 is now released. Currently, only a source patch is available on the downloads page. Binaries will follow as time permits.

December 12th: I took a long break from development, but I will be picking it back-up shortly. The message window code rewrite will be abandoned for the time being in the interest of getting a bugfix version out sooner. Since my spare time is more limited these days, I would also really like to find some help on the coding side of things. More on this coming soon.

Update: I added a Help Requested page.

July 21st: I had intended for the next beta to be mainly bugfixes and a few low-risk new features that were off by default. To this end, I added some limited mouse support - mouse clicks on the map window act as the travel command or move the cursor when specifying an object, etc. if the mouse_support option is enabled. This works in all configurations I have tried: ncurses and pdcurses, Linux console, xterm, Gnome terminal, Windows, Mac OS X, and even playing remotely via PuTTY.

Additionally I have implemented the menu_search option to select menu items based on searched-for text.

I am currently working on redoing a large chunk of the message window code. Although this goes against my previous goal, the message window code is too unwieldy and hard to maintain in its current state, so I think it is a better idea to redo it at this point.

June 29th: Beta 2 has been released, and is available on the Downloads page in source form, a Windows binary zip file, and Windows installer, and a Mac OS X dmg-format binary. There are many improvements in this release, and it runs much more smoothly as well.

June 25th: The curses GUI has been integrated into the public server for UnNetHack at This has been valuable for uncovering a number of bugs in the code: some only occurred when playing remotely via PuTTY, and others were related to the numeric keypad with the number_pad option enabled (I develop the code mostly on a laptop with no numeric keypad, and I never play with the number_pad option enabled). Once these are worked though, hopefully Beta 2 will be ready to go.

June 19th: The next version of the code is progressing nicely, and will likely be released soon. This release has a number of fixes and improvements.

May 27th: A Mac OS X binary for beta 1 is now available on the Downloads page.

May 21st: I am pleased to announce the Beta 1 release of the curses interface, which is available on the Downloads page in the form of a source patch, as well as Windows binaries and an optional Windows installer. Please try this and let me know how it works for you. A Mac OS X binary will hopefully be coming soon.

May 17th: A Windows installer for the Windows version is now available on the Downloads page. The zipped version of the Windows version is still available for those who prefer it, however.

May 8th: Release 6 of the curses interface is now available on the Downloads page as a source patch for NetHack 3.4.3 as well as a Windows binary. The Windows binary also contains the menucolors, statuscolors, dark room, and coloured walls and floors patches.

May 7th: I've done a lot of fixes and enhancements related to support for smaller terminal windows. A release should be coming relatively soon, barring any major bugs.

April 27th: I forgot to mention in my last update that I have built successfully on Mac OS X, as shown in the latest screenshot in the Screenshots section. I will put updated instructions on the Building page, and try to provide a binary version of the next major release.

April 26th: The curses interface will be part of a future version of UnNetHack. Currently, the code resides in a separate branch. Integration with UnNetHack has changed some of my development priorities; for example, I have added support for the menucolors and statuscolors patches, since these are integrated into UnNetHack.

April 13th: I am working on the next version, which has a lot of bugfixes, and code-redesign. Most recently, I have improved Alt key support for the Ncurses version, and fixed an issue with the timed delay so that animated effects like bolts and the like now display correctly without depending on any platform-dependent sleep functions. Oh, and the status window looks prettier when it is on the right or left of the map now. :-)

April 5th: A source patch and Windows binary for Slash`EM with Release 4 of the curses interface has been added to the Downloads page.

April 1st: Release 4 of the curses interface is now available on the Downloads page as a source patch for NetHack 3.4.3 as well as a Windows binary. A source patch and a Windows binary for Slash`EM will be available soon.

March 30th, 2010: The new version is now feature-complete; it will now be tested in various environments and on variants (Slash`EM and UnNetHack) prior to release.

March 25th, 2010: Are there any Mac people out there who have built NetHack and/or Slash`EM on Mac OS X? If so, I could use your help! I dusted off my old Mac (blue and white G3 from 1999), and wasn't able to get it to work due to a SDL bug on Panther (10.3). Other than that, it should compile fine on a 10.4 or later machine. Is there anyone who might be able to do a test build for me? My contact information can be found at the bottom of the Info page.

March 24th, 2010: I am working on a new version of the interface, concentrating on implementing some of the todo items listed on the Developers page. In particular, I am adding more customizability to allow users to pick their own colors for each of the windows, etc.

March 19th, 2010: A new version of the interface is now available on the Downloads page. This is only a minor bugfix release, which fixes drawing of the "tee" symbols when the cursesgraphics or ibmgraphics options are enabled. Additionally, this interface has been ported to Slash`EM. No Windows binaries of this release are available for NetHack or Slash`EM. These will probably wait for the next release, but let me know if anyone has a more immediate need.

Latest activity[]