"Project 3" is getting a total overhaul. The name has been changed to "PointSiege" and the very heart of the project has been replaced with a leaner, meaner strategy game concept.
Visit the forum announcement post for a (very long) discussion on the project's new aims as well as a mockup screenshot.
After about 9 months of abstaining from any programming. i finally decided to give a shot at getting back into the basecode for PointSiege. In the last several days i've been off work with a mild cold, so i was able to get some computer work done.
So that everyone understands what's happening, the basecode as it is now needs major "surgery". It was originally designed for another project. Since i have lots of game project ideas on the backburner, i thought it would be good to make the code as generic as possible and repackage it as a shared library.
Last spring i did the major gutting, taking out all the game-specific code. This week, i spent some time trying to actually create a library out of it. All did not go well however. I've never made a library before! Following tutorials and help pages just led to errors, even on trivial test examples. Thinking that it might be some system-incompatabilities, i decided it might be time to upgrade my Debian Linux development computer to the latest and greatest. So i spent the next two days upgrading everything. I now have a brand-brand new linux kernel (2.6.15), all new software packages including my latest-version text editor (KATE), new graphics drivers (nVidia), development tools, etc. The seriousness of the upgrades broke a lot of things on the system, so it took a full two days to get it wired back together and usable. For a while i didn't have anything more than a command prompt.
After much frustration, i returned to the original problem of creating a library. With some help from GameDev.net, i got a simple library compiled and then this morning i got the full basecode packaged into a library. The new library is called "libLevGC" or "leiavoia's Game-Core" and will be maintained separately from the actual PointSiege code and/or any other future projects.
The next step in development is to reintroduce much of the game-specific code that was removed and place it into PointSiege code (not the library code). Presently, all that exists is a black screen and ESC to quit. I also want to make improvements to the drawing routines, audio, and basic architecture before starting any "official" PointSiege code.
For now though, at least it works. That's more than i could say before! This portion of the project is a lot like separating conjoined twins. It's technical and ugly and full of potential problems. I'm not totally finished yet, but i'm definately on the home stretch.