NetHack on iPhone (iNetHack): Ready for download (or not)

Update: The link is live. I was just able to install it over the air.

So, just received that it’s “ready for sale” (which really means for free download in this case). The thing is that I can’t find it in the store. Maybe it takes time for the AppStore to pick it up …

Anyway, here’s the link:
iNetHack (iTunes)
Drop a comment if you’re able to install it.

You can access the iNetHack source code (which I will upload this week end, I have to migrate from a private repository) at this google code project.

Please be aware of the already existing issues and feel free to add your own.

Contributions of patches are welcome!

29 thoughts on “NetHack on iPhone (iNetHack): Ready for download (or not)

  1. Anonymous

    Works for me. I downloaded direct from iPhone. Great version 1.0. Look forward to any enhancement to the ui. Many thanks!

  2. Rodriguez

    Download works!
    Thanks alot for all the work, I am very supprised that you put it in the store for free. Awesome! 😀

    PS: Submitted some menu bug but forgot to mention that I have a 3Gs, not sure if it matters…

  3. Anonymous

    I’ve been watching your blog with interest – have been addicted to the free Rogue iPhone game and have been keenly awaiting NetHack! Saw the update last night but it wasn’t available, but on my way to work today it was in the Australian app store. Downloaded immediately but haven’t had a chance to do more than load it up yet – but wanted to say THANKS!!! for all your hard work and for releasing this for free 😀

  4. Dirk

    @Rodriguez: The extended menu bug? Thanks for that one. Charging for NetHack wouldn’t have felt right … It was never meant for that.

    @Anonymous: Glad to hear that it’s played all over the world 🙂

    Keep feedback and bug reports coming 🙂

  5. mucknert

    Okay, a short resume after installing and playing it on my iPod touch.

    I’ve ascended a couple of classes and know the game rather well, so I hope I know what I am talking about. 🙂

    From the top of my head, I found it rather irritating that I have to open the keyboard and type the ‘Z’ for casting a spell. Wizards rely on that for most of the early to mid-game, so that should be a lot easier. Also, please make ASCII an option. I find it hard to identify anything at all using tiles. 🙂 Oh, and try to make use of the bigger screen when I tilt the device on the side. For example with additional command-shortcuts.

    I think I might dump some more things later on in here. 😉

  6. Dirk

    Thanks for your feedback, it will go into the next version. The g command is accessed by tapping and holding.

  7. rexxfiend

    Nethack on the iphone – fantastic! I’ve been looking for a port since I got this thing so you made me a very happy man this morning 😉

    Having played this for a bit today I have a few comments and suggestions if that is ok:

    Firstly, I can’t find an option to change the settings anywhere (name, autopickup etc). Am I just being dumb?

    Related to this, would it be possible to either let us upload tiles, or allow a selection of tiles from a small list – this would also suit the ascii users as there are a few ascii-based tilesets out there that might be suitable.

    Someone else mentioned the possibility of adding extra buttons or user definible buttons in landscape mode, would this be possible?

    Again related to buttons, is it possible to create a “dead zone” round the buttons? I’ve accidentally moved the character a few times while trying to press a button – luckily I’ve got away with it so far but this could be fatal if it happens at the wrong time.

    I’m slowly getting used to the control scheme and it seems to work well, although I think it might be useful to have, at the very least, the ability to go up and down stairs by clicking in the centre when the hero is standing on stairs.

    I don’t want to sound overly critical however, I love what you have done so far 😉

  8. Dirk

    @rexxfiend: iNetHack needs a lot of polish re its UI. I guess there will be a lot of experimenting, and the next version might look and feel completely different.

    Btw some options are integrated in the settings app. pickup_items are not working atm, this is a known bug.

  9. jakubgg

    I know it’s buggy, I know it needs a lot of polishing, but mate that is so briliant news. Just downloading it over my slow edge connection and… 🙂 I need to start work in 10 minutes 🙁
    You’re star! Thanks a milion for that port!

  10. Anonymous

    Thank you very much for this port, I really like it! 🙂 Nevertheless, here are some ideas for improvements or issues I noticed:

    When being asked to name an unknown object that was just used, one cannot see the previous messages.

    During the ‘;’ command, the currently selected tile isn’t indicated or highlighted.

    I miss a shortcut for casting spells (‘Z’), as well as an entry for the ‘P’ command in the “gear”-menu.

    An ASCII-mode would be nice.

    Thank you again for your great work!

  11. Dirk

    Great to hear all your feedback, it keeps me going 🙂

    I guess most bugs/shortcomings are known by now, they will be addressed in upcoming versions. Please don’t expect everything at once, but I will give my best to make ascensions very much possible and enjoyable for the hardcore player, and then later for the not-so-hardcore player.

  12. mucknert

    Oh, one thing about the ‘g’ command: I think it might be a good idea to make it double-tab instead of tab-and-hold. 🙂

    Besides the criticism: keep on going! This port is great!

  13. Anonymous

    Dirk, you’re awesome. Now my iTouch is complete. You’ve done a very good job with the interface. It’s very smooth to play. I’d echo a couple comments others have made about button deadzones and customizable buttons and the like, but on the whole.. Just absolutely awesome. Thank you!

    I don’t see a place for feedback, so I guess I’ll post here: There’s a bug with digging – there’s no way to specify direction to dig.

  14. RexxFiend

    Hi again,
    I see from the touch arcade forum discussion that you are moving towards the Absurd tileset. While I agree that this looks better than the original tiles, please consider the Abigaba tiles ( at least as a selectable option. In my opinion they offer a very nice compromise between making the dungeon look pretty while retaining the flavour of the ascii originals (a purple L is still purple and still looks like an L).

    (I admit a slight bias – I’ve been playing with these tiles for years and nethack doesn’t look right in any other form).

  15. Dirk

    Abigaba is already used in the trunk 🙂 Haven’t heard back from the author though for permission. It’s a great tileset. Though I’ve got to admit that a lighter tileset is needed (if completely zoomed out the corridors are not very visible).

  16. RexxFiend


    regarding the darkness issue – I had that problem when playing on an old ipaq pda with a poor contrast screen. I modified the floor tile so it had a few more light pixels in it and it worked much better. The rest of the tiles were fine once the floor was made lighter.

  17. Anonymous

    Please consider making this available through Cydia, Installer, or any other jailbreak installer. It’s free dude!

  18. Anonymous

    Hi just wanted to say that I am really enjoying the port. Thanks very much for putting in the work.

    I also wanted to let you know about an apparent bug where my class has changed randomly from a wizard to a archeologist to now a samurai. This seems to happen after I get a message asking if I wish to restore my save file, which has happened mid game. I will try and replicate it and let you know if I can narrow down the issue anymore.

    Thanks again.


Leave a Reply

Your email address will not be published. Required fields are marked *

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    Markdown is turned off in code blocks:
     [This is not a link](

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see