So it's been a while.
In case you weren't already aware, MMORPG software systems are complicated. Very, very complicated. I mean, you're creating a whole world as a software system! So it's taking a while.
We have made progress, however.
My brother and I recently created a networked system to control a floating ogre head (those of you who have used OGRE before will know exactly what I'm talking about). My brother's WinXP based client software sent "requests" for motion to my Linux based server software. The server software then validated the request (i.e. "Will it run into a wall?"), and sent back the ogre head's new coordinates in space. The client then had the job of animating the head from it's current position to it's new position. The head could move along the X and Y axis, as well as rotate.
It was an interesting little exercise, taking us about 3 hours total to build. Obviously, it is of very little value other than academic, but it certainly taught us about network communication. Also, the server was multi-threaded, which means that a number of clients could connect to the server. We took take of representing multiple clients on each client machine as well, having multiple floating ogre heads.
So what's next?
The next task to take care of is how to represent terrain. I've been investigating different methods of storing terrain data. So far, the two most intriquing methods are bitmap terrain maps and database table storage. I'm leaning toward database storage. I understand that terrain maps are more compact, but the ability to change the terrain on-the-fly sounds very interesting to me. Just imagine: dynamic terrain, with the ability for players to terra-form. Volcanoes that can be triggered to actually create more landmass. Pretty cool stuff.
So that's what's going on now. Thanks for reading!