STAGE Server Status

by Bryce Harrington

STAGE, the Stage Two Altima Game Engine (yeah, yeah, I know...), is progressing quite well. While the design is still not quite finished, enough of it has been completed that implementation has been started on several of the lower level modules.

More info on the requirements, architectural approach, and design can be found on the website.

Over the last month I've been working on Shepherd, and have posted the design as it currently stands to the website. The top level design is well in hand, and I'm focusing on a few of the more significant mid level design issues, such as container class implementation.

Kosh has been diligently working on the math & physics toolboxes. In addition to helping flesh out the design he's been working on implementing some of the fundamental classes, and adapting a 3D vector class of mine for Pythagoras. For Orion he has implemented the movement functions (move, velocity, and acceleration) based on impulses and forces. He is currently working on the force functions.

Sdt has been implementing the Thor module, which provides the programming foundation on which the rest of the server is built. Options can be read in from the commandline, and a configuration file read from disk. Engine and Toolbox developers can use this mechanism for controlling the behavior of their code within the server. Sdt is also working on an error logging system that will allow directing error messages to a file, the console, a GUI window, or even across the network to an admin client.

James has been a big help, filling in as the project facilitator, helping me maintain the website, keep track of status of the various parts of the project, and keeping on me about Shepherd. ;-) We've laid out the directory structure for STAGE, and soon will be setting it up in the "forge" module of CVS. Right now, James is assisting Arnan and Mike on the qserver/uclient demo system, since completion of that demo is a necessary pre-requisite to STAGE; first because it will free Arnan up to help with Shepherd, second because we intend to reuse some of the code from the demo, and third because it will be invaluable to attracting new, skilled developers to the project and demonstrating that we are serious and able.

We've gotten several other volunteers for STAGE. Sean Starkey is working on the Mercury client communications engine design. Sean developed QuADAS' network code.

Right now, while we are not actively seeking volunteers, any offers of help from experienced C++ developers will be warmly greeted. In particular, we're looking for OOP-knowledgeable designers to assist with completion of the design documentation. Because there are still many unfinished areas, these designers need a good intuition. ;-) We can also use non-programmers interested in helping with administrative tasks, or to assist with proofing and editing the design documentation.