Egoboo 2.x was a fork of the Egoboo 2.22 codebase in which I like to experiment with new ideas and features. I didn’t make very quick progress on it, as I tend to work in short spurts with long breaks in between. Currently, there’s not-very-functional support for playing the game with a friend over a network, and a new front-end menu system that I think is pretty spiffy.
At the time, it was the only way to play the game on Mac OS X, so that’s kind of cool. :)
I use ENet for the game’s networking layer. It’s a small library, but it saved me a lot of time and pain that I would’ve spent fighting with bare sockets. The first release I made with networking support was back in June 2005.
Fighting with the game’s original menu code turned out to be exhausting, but around that time I came across Casey Muratori‘s talk on Immediate Mode Graphical User Interfaces. It sounded like a neat idea, so I quickly whipped up an implementation of it for Egoboo, with the intention of replacing all of the original menus. Sadly, I haven’t gotten around to finishing that yet, though the game is still playable. At present however, the network functionality is not exposed, which I’m the first to admit is kind of lame.
Egoboo 2.x has been tested and runs on Windows XP and Mac OS X version 10.3 and 10.4. It does not currently build or run on Linux/FreeBSD; I had to make some changes to the filesystem code for networking support and I haven’t gotten around to porting the changes to those platforms yet.