23 September, 2009

small update

Not much has happaned... Last friday I did som testing and everybody seemed to enjoy themselves. Next week I will do some more testing and then I will publish some results from the testings here.

Som bad news is that my computer won't start anymore. I'm guessing it's something wrong with the graphics card. Luckily I got time left on my warranty.

18 September, 2009

ingame movie 2

Here me and my girlfriend are playing, I'm on the computer and she's playing on the Xbox 360 using System link. As you can see it works really well. The only problem is that the character animation isn't showing for non local players.

16 September, 2009

ingame movie

As I said, I will show the game in network soon. But while you wait I thought i would make a little movie showing the basic gameplay in the game. So here I play alone on a map:

11 September, 2009

working network play

I played my game over system link for the first time today. At first it didn't work so well, but after a few bugs were found and some optimization was done it worked very well. I used my computer and my Xbox 360 when testing the working copy, and i could even look at the computer screen when playing on the Xbox and control my character from there.

The position and velocity is sent 20 times per second, and then using a timespamp(explained in a previous post) the real position is calculated when received.

Some day soon I will make a video showing the game in network mode so you can see for yourself how good it works.

10 September, 2009

new tiles

Robert has made some new tiles, and wants to know how they look like in the game. Well here they are. Personally I like the ice-tiles most.

timing is crucial

Today I have been figuring out how to make time to be same on each client in netplay. This is needed because when one client sends his position and moves at the same time, the position will be off when his position reaches everyone else. So instead this clients sends his position and a timestamp saying when he was at that position. And then when people receive this position, they can check the timestamp and calculate a more accurate position from this.

So I found my answer in the XNA forum, it's kind of easy actually:
  1. Server starts a timer and sends a message to all clients to start their timer also
  2. When the clients receives this message they start their timers too and sends a message back telling the server they have started their timers
  3. When the server receives these messages it checks it's timer and calculates how long it took to get this responds. This time divided by two is the time it took for the first message to be sent, and also how much the clients timer needs to be adjusted.
  4. Server sends a new message to each client to adjust their timer by the time calculated above.
  5. Clients adjusts their timers
Now all timers should be almost the same and can be used in the way I just described.

09 September, 2009

share your maps

When you have created your own map, you will be able to play them against anyone over Xbox LIVE, system link or in a local game. Your map will automatically be transferred to all who doesn't have it.

This is what I have been working on today, I just got it working before going home from school. Next on my todo is to make it possible to see each other when the game has started.