• NetHack + DS -> New Project!

    When I first got my DS backup device, it didn’t take me long to track down, and quickly eliminate as impractical, the first, and to my knowledge, only attempt to make a DS NetHack Port. It’s a “port”, in the sense that it really just takes NetHack, shrinks it down, displays the virtually unreadable game on the upper screen, and a graphical keyboard on the bottom screen. Does it work? Sure. But only just barely.

    So quite a while back, I decided I wanted to create a port of my own. Much initial hackery was begun, followed by the usual subsequent boredom, followed by the devastating loss of my DS and backup device in an unfortunate incident involving my crappy memory and an airplane seat pocket. The result was a project that languished in my subversion repository until, a few weeks back, my new R4 arrived in the mail which, when pared with the new DS my brother kindly bought me for my birthday, resulted in renewed homebrewing efforts!.

    Since then, I’ve made enormous progress. The game is essentially playable right now, and sports:

    1. A top screen displaying a minimap, status and message display, and input prompt.
    2. A bottom screen showing the game map in unscaled, scrolling, tile-y glory.
    3. Support for movement using the joypad, as well as the stylus.
    4. A popup command list, toggled with the L-button, from which the user may select commands with the stylus.
    5. Full support for menus, again using the stylus for item selection.
    6. String input using a virtual keyboard.
    7. Save/Restore support.

    Of course, if it were all roses, I’d release the thing right now. But there are bugs, and a few things on the TODO list, as well:

    1. Currently wide text is clipped… I’m not sure how to solve this, though.
    2. The menus should be pageable with the joypad.
    3. Quitting and saving should return the user to the flash cart menu, or possibly power off the DS.
    4. It desperately needs a left-handed mode.
    5. Keys need to be configurable.

    And, of course, I need to test test test! I’m primarily worried about memory usage… I think I have most of the issues worked out, and I spent a fair bit of time teleporting around the game in wizard mode, causing general mayhem, and didn’t run across any issues. But I’d like more time with it to make sure the obvious bugs are ironed out.

    And even with those problems fixed, I will fully admit that:

    1. It’s kinda fugly. But it’s fugly the way text-mode nethack is fugly, so it’s kinda charming that way, and
    2. The text rendering code, particularly for menus, is slow.

    But, in short order, I’ll hopefully have a release out. Meanwhile, stay tuned for screenshots… assuming I can get desmume up and running and working with my port. :)

    Oh, and BTW, if anyone has thoughts for a name (NethackDS is taken, so I was thinking something like “Nethack Touched!”, or possibly something even more lame, would work), please let me know! Plus, then I’d know if anyone’s bothering to read this thing, anymore. ;)

  • To All You Drivers, From A Cyclist

    My road cycling experience is what most would call fairly extensive. In my last summer before university, I found myself cycle commuting to work, a fairly long ride from a condo in the Dickensfield area to a school around 127th and the Yellowhead, where I worked as a teachers assisted for continuing education. On one particularly memorable day, I arrived completely drenched, from head to toe, having ridden through one of the most heavy, yet steady downpours I’ve ever experienced. And I did so riding on major roadways, such as 97th street. Ever since, I’ve taken to cycling as much as I can (save for days when I’m feeling particularly lazy… like today :), and even cycled through the winter during one memorable university year.

    During this time, I’ve had a chance to observe all sorts of driver behaviour. For the most part, they ignore you. Some, when passing, perform complete lane changes to get around you. Others will speed past, the hair on the backs of my arms left prickling from the sensation of a near miss with a side mirror. I’ve had people patiently wait behind me during road chokepoints. Others have yelled and screamed. I even had one guy yell at me to “get the f— off the road”… he was driving in the opposite direction on the other side of the road. Go figure.

    But, oddly, one of the things which annoys me most is the overly courteous driver. These folks are, like most drivers, confused about the role of cyclists on the road. To clarify, cyclists are vehicles. They should be treated as such. They are not pedestrians. So, with that said, consider the following:

    Cycling_Peeve_1.png

    This is a rough depiction of an intersection I have to navigate on my way home. I’m the little purple guy. Now, if I were a regular road vehicle, things would proceed as follows: I would yield, waiting for the blue car to turn and the red car to pass. I would then cross traffic and enter the far lane (well, technically, I would have to enter the near lane and switch, but… details details). But often, the blue car decides to be overly nice and wait for me to cross the street. But now I, as a cyclist, am left in a bind. If I do cross the street, there’s a chance the red car won’t see me, and I’ll get run over. If I don’t, the blue car sits waiting like a jackass. Typically, the way I deal with this is to wave the blue car through, which leads to all sorts of confusion.

    Now, this is just a variation on a theme. Any time I find myself approaching a stop-sign-controlled intersection, particularly if there’s a major roadway, and an intersecting street with a pair of stop signs, this sort of thing can happen. So, for the love of god, drivers, don’t be nice! The cyclist knows what they’re doing! They are a vehicle, treat them as such, and let them decide what they want to do. Because, by being nice, you are, in effect, making the cyclist’s decision for them, but in the absence of key information (like, say, the presence of the red car in the diagram above).