It has been about a month since my last post, and that's in large part because I've been experimenting with adding in multiplayer functionality. Believe me, it is no small task.
For starters, I decided to write my own custom game server. This allows me to add whatever features I might want with no restrictions. So it has the customary leaderboard, statistics, etc. I won't go into too much technical detail on it, but I have written chat programs in the past and the logic here is not terribly different, just tedious to build from scratch, which is what I did. About 9000 lines of code in the course of 10 days. And it works, beautifully I might add. It also acts as the gateway for UDP hole punching, so that users behind somewhat strict NAT setups can still communicate.
Having developed the game server, I then proceeded to add in the multiplayer code into Spiders on a Starship. This too was not exactly trivial, but suffice to say it has started to move from "proof of concept" to a reality.
To demonstrate this, I have put together a short video clip of a multiplayer game comprised of three players. They are shown as yellow spheres. I have also added a new unit called the "Argos", it is a mobile radar unit that displays the locations of the other players.
And here is the video:
There is still a lot of work to be done. There will be more units like the Argos. The player models will be actual character models, etc. But much of the work in the past month was devoted to getting the core multiplayer functionality to work. And as it now appears to be feasible, I am optimistic about adding in other game units and mechanics.