netwhack: About
Netwhack has been one of my hobby projects for quite a while. Over the years I have rewritten it many different times in many different languages. However, this time I am rewriting it in JavaScript.
Netwhack is a roguelike game.
Nethack is an awesome game. I also played ADOM and some other versions of Nethack, such as Slash. I also was a big fan of text adventure games, and games like Ulysses and the Golden Fleece, as well as King’s Quest, Wyndham Alice in Wonderland, Ultima IV, Times of Lore and so forth. I was always charmed with the creativity and humor expressed by these games. But it was the roguelike games (and games like ZZT) which fascinated me the most. The IBM PC VGA character mode seemed to be the evolution of all other terminals at the time, and I just loved playing Nethack for hours and hours on it. It is this simple VGA character set version of the game I have chosen to emulate here, as I feel it is the best way to play the game. In the future I plan to add more modes, such as a monochrome VT100 mode, or a 40 column mode for some real oldschool VIC-20/C64/C128 fun.
Netwhack is also designed to act like a showcase of my JavaScript skills. Interested in hiring me? I can also show you a Python version. I think it’s a good example of a portfolio project.
JavaScript Netwhack?
The crown of write once run anywhere has definitively been stolen by JavaScript. However, JavaScript has its own unique problems. I had a lot of problems with Java too, but I was able to force them to work most of the time. In JavaScript I don’t think there will be as many problems but the two I dislike the most. One, you have to (essentially) make a flat file for your project and it’s not compiled. So you have to essentially release your code. There may be various security conderns. That and event driven programming, which is something I personally dislike. Issues like these made me discount JavaScript for a long time.
The Bright Side
JavaScript has some interesting things going for it. It’s not so bad. And I can’t deny I’ve improved my skills by finding interesting ways to work around it’s limitations. I wouldn’t have come up with many of my good ideas if I wasn’t challenged by my initial discomfort with JavaScript. In the end, I may have even grown to like it — just a little!
The Demos
There will be some technical demos released while I am working on the engine. You can look for them on the Netwhack page at:
Published @ November 16, 2023 6:54 am