gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

DS Misc > NetHack for the DS - Beta

#79893 - Wosret - Sun Apr 16, 2006 10:42 pm

I've been working on a DS port of NetHack for a while now, and I've decided it's finished enough to be released for testing. The game is completely playable right now, and there are only a few things left to do: fix some minor bugs, add some features to the interface, and clean up the code a bit.

If you would like to try NetHackDS, you can download it from my website, or just use these links: .nds Binary - .ds.gba Binary - Source - .diff

Make sure you have a device that can be written to by chishm's FAT driver. SD versions of the M3 and SuperCard cannot be written to and will not work.

Please try compiling from the source (make sure you read my page, the process is a bit weird) if you have a DS development environment on an OS other than Windows. I don't have another OS to test it on, and I would like to fix any bugs caused by compiling on other OS's.

If you find bugs or have any suggestions, please let me know, either here or at wosret@gmail.com


Last edited by Wosret on Thu Apr 20, 2006 3:19 am; edited 1 time in total

#79901 - josath - Mon Apr 17, 2006 12:36 am

very nice...works for me on GBAMP. is saving supported? it seems to crash when I save.

Also, is it possible to change to text mode? It might be easier to use than gfx tiles, at this lower resolution.

overall, great job!

#79905 - Wosret - Mon Apr 17, 2006 1:08 am

It seems you're right about saving. It used to work, but now the dungeon collapses (with no error message except the usual "Oops... The dungeon collapses.") and the screen goes all weird. I'll have to take a look at that.

Once I fix this and a few other bugs I just found, I'll see about colored subpixel text. I think I've tried it before with some success, and it shouldn't be that hard to make it work.

#89242 - josath - Fri Jun 23, 2006 6:35 pm

Any luck with the text mode?

I saw some status message on your page about "Windows of type NHW_TEXT and the function display_file now work", however i dunno how to enable text mode. setting decgraphics or ibmgraphics in options mode doesn't do anything, and setting windowtype:tty in nethack.cnf doesn't do anything eithe

also, have you thought about a mode like in nethack-qt, where you can click on the game screen? basically the game would be on the bottom screen, and wherever you tap, it would walk there. if you tap a door it would open, tap a monster to attack, etc. and then a row of toolbar buttons across the top of the screen like Pickup,Cast,Eat,Read, etc

ps: saving works great for me now!

another thing: perhaps you could map the other buttons (ABXY,L/R,ST/SEL) to some often used commands? that way people could play the game without having to pull out the stylus very often.

the commands I use most: Search, Open, Cast, Apply, Eat, Pickup, Inv, Kick (8, to map to the 8 buttons). even cooler is if people could configure this through the .cnf file.

(i dunno why nobody else posted here, this is one of the coolest homebrew ports in my opinion.)

#89284 - Sintax - Sat Jun 24, 2006 12:16 am

I don't know the inner workings of NetHack, but isn't there a way to make it work on SD devices, like to disable saving (my Nethack games don't usually last too long anyway)? I wanna try it, but if SD users are always going to be excluded, that's a shame.

#89513 - josath - Sun Jun 25, 2006 8:01 am

nethack needs to write to disk on low-memory systems, when you go to level 2, it writes level 1 to disk. in theory, it should work on SD adaptors, if you simply include the correct version of the fatlib.

#92399 - telephasic - Thu Jul 13, 2006 10:38 am

Had great fun with this when you released it a while back!

It has allowed me to discover something interesting about the DS-lite (compared to the Ds-Phat) that I was not aware of (is anyone? I had a brief forum search, but didn't come up with anything).

So the problem is this:

On the DS-Lite the text on the top screen is messed up. Switching back to the DS-Phat the text was okay.
More specifically, you can quite clearly see that it is to do with the order of the sub-pixels.

I noticed that in the /nethack directory on the CF there were two font files, subfont_bgr.bin and subfont_rgb.bin. I noticed that on the top screen the fonts seemed to 'smear' with the red to the right, so I made the assumption that the subpixel order on the top screen for the lite was blue green red. So I made another copy of the bgr font file and renamed it to subfont_rgb.bin hoping that nethack would use it for the top screen instead.

The result... it worked! The fonts on the top screen were all good again.

So:

Is this a simple bug in nethack DS (I don't think so due to it working on the Phat)?
Is it just my DS-Lite where the subpixel order of the screens is the same?
OR
Do all DS-Lites now have the same subpixel order on both screens (in opposition to the Phat)?

Also, I wonder if those end run DS-Phats that could take the DS-Lite firmware and have adjustable screen brightness also have a similar issue.

#92406 - D-loader - Thu Jul 13, 2006 12:02 pm

very nice discovery, telephasic. Its the exact same problem I have with BeuP at the moment.. the text is very smear on the DS Lite, but on the DS Phat, its crystal clear

#93739 - josath - Thu Jul 20, 2006 11:01 pm

He seems to have posted an update: http://stuartp.commixus.com/nhds/
(I haven't tried it yet)

Quote:
Last updated July 20, 2006. New features:

* The configuration file has been changed from NetHack.cnf to defaults.nh
* The configuration settings tile_file, tile_width, and tile_height now work correctly.
* A 24-bit Windows bitmap can now be loaded as the tile_file.
* The game should now switch the font used on the top screen from RGB to BGR if it detects that it is running on a DS Lite. This should keep the text from appearing blurry on the DS Lite. (Thanks to Telephasic for letting me know about this bug)
* The X and Y buttons will switch the fonts on the the top and bottom screen between RGB and BGR. Use this if the text on either screen appears blurry.
* The standard version now uses Sata's version of chishm's FAT library. This should still work on all CF devices; if it does not, send me an email and I will go back to posting both versions.

#93765 - telephasic - Fri Jul 21, 2006 2:56 am

I've tested it and sent the results to josath.

It does not autodetect my ds-lite, and at first I thought the font switch for the top screen didn't work pressing x, but it appears to work after you have entered your name.

Thanks for the update!

#94244 - Mota - Mon Jul 24, 2006 12:22 am

I tried this out on my Supercard MiniSD/Flashme7/DSLite and it wouldn't run at all. The screens went white, then black before it froze.

#95320 - Mota - Fri Jul 28, 2006 6:41 pm

Have tested the newest version (July 27th) on my recently flashed gbamp2 and it works just fine.

I'm working on a tileset specifically for the DS port, if its of any interest to you?

#95552 - Sintax - Sun Jul 30, 2006 5:39 am

Hey I've been taking up NetHack since this came out, it's a really great timewaster for a handheld, even if there are so many different keys and such. Your binding system is really smart, I've managed to bind most common keys I need so I only have to whip the stylus out now and then.

However, I'm using a SuperCard SD, and when I die, I get the 'do you want to see x' questions, then I see some text scroll about my other dead characters on the bottom screen and it freezes up. I don't know if it's related, but even though the library for SD seems to save my button combos and my old character info, it gives me 'cannot open' for certain help options (like a list of commands) and random things now and then.

In any case, chism's new alpha version of his library has full SCSD support and such, so you shouldn't need to use Sata's version anymore.

All in all though, completely playable and lots of fun. Thanks.

#95645 - tepples - Sun Jul 30, 2006 6:03 pm

Sintax wrote:
In any case, chism's new alpha version of his library has full SCSD support and such, so you shouldn't need to use Sata's version anymore.

Unless you want opendir().
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.

#95734 - Sintax - Sun Jul 30, 2006 9:13 pm

tepples wrote:
Sintax wrote:
In any case, chism's new alpha version of his library has full SCSD support and such, so you shouldn't need to use Sata's version anymore.

Unless you want opendir().
Well it's a good thing I don't want it then!

#96056 - Mota - Tue Aug 01, 2006 2:18 am

Sintax wrote:
However, I'm using a SuperCard SD, and when I die, I get the 'do you want to see x' questions, then I see some text scroll about my other dead characters on the bottom screen and it freezes up. I don't know if it's related, but even though the library for SD seems to save my button combos and my old character info, it gives me 'cannot open' for certain help options (like a list of commands) and random things now and then.


I'm also using Supercard SD... when I die I can read all the information screens perfectly, but it freezes right before the highscore table would appear on the PC version. I assume this is because the high score table is not yet implemented, as it didn't work on my gbamp2 either.

Saving characters, buttons and text format all work fine for me. When I save, it freezes in the same way the last 'death info' page does... but it does actually save so I'm happy :)

When the highscore table works, and I've finished my home-made tileset, this will be the perfect nethack port hehe

p.s. the new button combo system is brilliant :D I only just realised you can set LOADS using L+R - genius!