• Advertisement
Sign in to follow this  
  • entries
  • comments
  • views

Week 2

Sign in to follow this  


This is when the depression hit.

Every single stroke of the keyboard depressed me for some odd reason.

I usually reach this low-point months into a project.

I originally decided to program the server in java+Project Darkstar. I've used in once before, but on a small-scale java only project. After looking at the C-API, I metaphorically gave an oath that I shall never release a game or application that sucks.

The API was heavily underdeveloped, with examples far and few in between. Usually, I am pretty good at deciphering functions of a language/api for which documentation has long ceased to exist. Yet, this API, untop of being written in pure C with no C++ wrapper was nothing more that a thin plastic wrap over Winsock.

Although I have used Winsock plenty of times, I admitted to myself that I am a one man team. The more middle ware I used, the quicker I could focus on other tasks. I decided to go with the very popular Raknet.

After looking at all its features, I decided many of them were not compatible with the high-stress and high-bandwidth requirements that the game would require. I decided only to use the most fundamental service offered by raknet - the Peer interface.

I was impressed. After looking at the source code, it was apparent to me that the developer knew what he was doing. I am hoping that it will be able to handle the the highend requirements that I have set forth for the networking side of the project.

So far it has held up its end of the bargain.


Early on, I decided to just use Raknet's basic interface. But the allure of the NetworkID manager was just too great for me not to use. I set it up to coincide with my object classes, and set it to use.

Something odd was happening. Players were disappearing from inside the game, odd errors which I have not see before. It occured to me to look at the source code of the NetworkIDManager.

Apparently, the ID's were not as unique as I would have thought. Even though it had a maximum limit of around 65,000 simultaneous objects (Although that limitation could partially be removed by commenting out a line from the header file), I decided to remove the NetworkID supported and go back to using the nice and simple unsigned long.
Sign in to follow this  


Recommended Comments

There are no comments to display.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Advertisement