Fresh Wars
When I came across the recent problems in my RTS, I knew they would delay work on the project as a whole, but I underestimated their full mental effect on the developers. My designer thought I should take this chance to further explore the complexity of how a game server will work. Even after re-writing almost my entire chat program to use dynamic socket connections, my designer still doubted the possibility of getting this whole project playable online. As he requested, I put the RTS on hold and shifted my attention to a new project, a small 2D TDS (Top Down Shooter) designed for 8+ players at one time across the internet.
Coding the entire project could have easily been done in less than 2 weeks, but unfortunately soon after coding began I got sucked into Call of Duty 4. Yeah, I know, that game is pretty awesome. :) While trying to get some work done on the Fresh Wars, I constantly found myself playing CoD4. After achieving the highest rank nearly 2 weeks later, I promptly directed my attention back to my shooter, the Fresh Wars.
From the beginning, I had full confidence in my programming abilities, and I knew that this project would be fairly simple. The game elements would come together very quickly, and I knew that this was much more of a networking test than anything else, so that’s where I started, writing the networking code. The entire network setup was structured exactly like that in the chat application I had written recently. When I reached a major testing point, I found that local testing worked with very minimal slowdown, but across the Internet, the game, despite having a decent ping, ran very poorly. It was after these tests that I stepped back to look at what could be improved.
After trying a few changes, and a few code tweaks, I sadly came to the conclusion that the current architecture of the server would be totally inadequate for what I was trying to achieve. While not forgetting that this project was a networking test, and a change of this magnitude would require rewriting all of the networking code, I have made the tough decision to stop progress, call it a learning experience, and return focus to the RTS. Having this less than successful experience will greatly help me later when I begin work on the multiplayer aspects of the RTS.


