Compile and Play Nethack4

As I mentioned earlier, Nethack4 is an active variant of Nethack which currently only works online or on Linux. Several months ago I posted a “how to compile Nethack4” article on my main blog, but not here. Then the developer needed to change the way it compiles which made my instructions obsolete.  I figure it’s time to have an article showing you how to compile and play the game here, on my Nethack blog.

main menu for Nethack4

main menu for Nethack4

Nethack4 seems to be the closest fork to vanilla Nethack at this time – there are no new roles or races added, and I think the dungeon layout has not been changed. The reason you’d want to play it instead of regular Nethack is that the interface has been greatly improved and some easy typo deaths now warn you first (the options file lets you disable these warnings).

The homepage for Nethack4 is located here. You will want to download the current copy of the source file from here. Click on the “downloads” button on the upper right, to the left of the “clone” button (don’t worry about that button).

Unpack the .tgz file you just got (it should be 1.7 MB in size before unpacking), and you’ll have a new directory named “nitrohack-ais523”.  (Nitrohack was an older fork of Nethack, now obsolete due to some game-breaking bugs. The developer stopped maintaining it.)

Before you can compile Nethack4, you’ll need to install a number of files that it needs. The README file inside of the new directory lists most of them, but currently you need a couple of others.

On a Debian, Ubuntu, Mint, or similar system the files you need to install are:

– build-essential

– flex

– bison

– libjansson4

– zlib1g-dev

and if you want a working server, also install

– postgresql-server-dev-all

– postgresql-contrib-9.1 (to get “pgcrypto”)

Once you have all the files you need, open a terminal and cd into the nitrohack-ais523 directory. From there, issue the following commands:

mkdir build

 cd build

   ../aimake -i ~/nethack4 ..   #spaces are crucial in this command

This will create a new directory in your home folder called “nethack4” and compile and install a local copy of the game. It only makes a copy for the current user, but if you really want to make a system-wide copy available for everyone who uses your Linux system, the README will tell you how you can do that.

If you are using Windows, Nethack4 does (technically) compile and run, but the README indicates that, practically speaking, it’s so slow that you can’t play it. What I would personally recommend for Windows users is to play online. You can play online via connecting to nethack4.org via telnet or ssh (username “nethack”, password “nethack”).

Playing Nethack4

I tend to maximize the terminal to fill the screen. This makes the game easier to read. (Nethack4 currently has no option to use tiles).

An orc rogue on dungeon level 1

An orc rogue on dungeon level 1

The main menu will let you choose the following options:

n – start a new game. If you choose to let the game pick your race, gender, and role, you are shown the result before being asked to name the character. For someone like myself, who likes to pick names related to either the race or role, this is one of the many small improvements over vanilla Nethack.

l – load a saved game. Vanilla Nethack does let you keep several active characters at once and pick one each time you begin a game, but the way it’s done here is just more convenient. When you save a game, you are asked to either save, abandon the character, or cancel and keep playing.

v – view a character’s moves, one turn at a time. It defaults to the list of dead characters, but if you don’t have any you can view one of your currently active ones instead.

Turn by turn reviewing of a game

Turn by turn reviewing of a game

o – set options. A slightly more convenient way to toggle all the myriad of options in Nethack. This file persists between games.

s – to look at your current scores list (only completed characters – dead or ascended – will be shown).

c – connect to a server.

q – to quit the game.

News about Nethack

Last December 8 marked the tenth anniversary of the current release of “vanilla” Nethack. There has been no definite statement from the dev team that there will be no future releases, but it doesn’t seem very likely. As I’ve said before, this extended period of dormancy has spurred the creation of new versions of Nethack in an effort to fix the bugs that remain and introduce gameplay and interface options meant to make it a more enjoyable experience.

As of now, 18 January 2014, there are 3 or 4 actively maintained variants of Nethack that can be played offline (i.e. without connecting to a Nethack server). They are:

Nethack4 – this version differs the least from vanilla Nethack 3.4.3, unfortunately at the moment it’s not really possible to play on Windows except on a server. It runs great on Linux, though, and compiling it is simple once you have all the needed dependencies. This variant is updated fairly often. Created and maintained by Alex Smith

Dynahack – this version has a binary for Windows, which seems fine. It can be compiled for Linux but I’m having a minor difficulty doing that at the moment. The Windows version works great, aside from the fact that the terminal won’t let you really increase font size that much and won’t open full-screen. [Luckily, the final 2 options in Dynahack’s option menu allow you to set window height and width!]. Dynahack has a lot more changes in it than Nethack4 does. Like UnNetHack, you can play a vampire, and there is a new role of convict. DynaHack doesn’t make it easy to choose “conducts” as a challenge, which is something UnNetHack lets you do. Much like Nethack4 and Nitrohack, you can easily create and load several characters, and play on a server from the main menu screen. Created and maintained by Tung Nguyen.

picking a role in Dynahack

picking a role in Dynahack

UnNetHack – This variant has binaries for both Windows and Linux so it’s one of the quickest to get started with no matter which system you use. Current version is 5.1, released in December of 2013. There are quite a lot of changes in this from vanilla, including 3 new classes, a new race, and a tutorial mode. There are dungeon changes including a shorter Sokoban that has more variety in its puzzles, and the Town and Dragon Caves special areas. Some of the regular areas have been altered so as to increase variety between games. Veterans who ascend fairly regularly can also select “conducts” – voluntary challenges such as not praying, not eating meat (for non-monks), not reading anything ingame, etc – that make it more difficult to win. The Windows edition of UnNetHack includes both ASCII and a tiled version, and the tiles are quite nicely done. Created by Patrick Mueller

UnNetHackPlus – A fork of UnNetHack, approved of by Patrick. It seems to be mainly an increase in variety and challenges from UnNetHack.

Also available (but dormant) are GruntHack,  SporkHack and SLASH’EM.

Angband 3.5 is here, plus other news

Well, it’s been so long since I last wrote anything about Angband that we have a LOT of new things to discuss!

First off, Angband went from 3.4.0 to 3.4.1 (bugfix release), and is now 3.5.0! (As of December 2013). There are too many changes to get into and the best I can do is provide the link to the main website again. There you will find the downloads for Windows, OS X, and Android, and the source code for Linux (speaking of, when will the folks who maintain the Debian repository edition of Angband update the version from 3.3.2 to 3.4.1 ?)

Also there is a list of changes for the new version, as well as the mostly updated player’s guide and manual. Nick McConnell has become the new maintainer for Angband. He also is the creator of FAAngband.

Several variants of Angband have also been recently updated! This is great news, it means that the *band community is still healthy and interested in their games.

Sil is now 1.2.1. This is becoming the best known and most recommended variant of Angband. Instead of a 100 floor slog, often facing somewhat generic monsters, you have 20 floors to get through, and you don’t kill Morgoth, you must steal one of the 3 Silmarils from his crown. The entire game is strictly “First Age” Tolkien, and offers various difficulty levels (justified ingame by letting you choose your race – elves are much easier than dwarves or humans (Numenorians I assume).)

You can get a copy of Sil at this website, along with the manual, source code, older versions, and the change list.

The following are variants that have been updated within the last 5 years (with one exception). This is not a complete list, but does comprise the games that seem the most interesting to me personally.  The entire list is found here, at the official Angband forums.

Chengband (October 2012)

DaJAngband (November 2012)

FAangband (November 2013)

FayAngband (October 2011)

Gumband (January 2010)

Halls of Mist (January 2013)

Ironband (November 2012)

NPPAngband (March 2013)

PosChengband (April 2013)

Quickband (December 2012)

Sangband (October 2010)

Steamband (December 2007 )

UnAngband (September 2011)

Z+Angband (December 2010)

….and those are less than half the variants listed at the official Angband forums! My original plan with this blog was to discuss every one of the above games. Hopefully I can get to more than a few of them during the next year.