


We had to trim back the number of replays sent to the client to just 4, then 2, then none as the load increased. The remaining problem was that each play of the game required about a 1mb download of replay data from the server, which was very bad for bandwidth when the number of plays started to climb dramatically. I’d have liked to have compressed the strings, or base-64 encoded them or similar, but it just wasn’t feasable. There’s very little encoding, as I found that simply processing the raw strings was enough of a task for Flash, let alone processing an encoding on top of that. So, a replay consists of a great long string of car coordinates etc in a text format. AS2 doesn’t handle binary data very well except in pre-given formats that are delt with internally like jpegs, sounds or SWFs. The big problem with storing and serving replays is that there’s a lot of data. This strategy really worked for this game, and everyone gets opponents who play roughly at their level – and some who are faster that they can work towards beating. There is a par time over which your score isn’t recorded to avoid skewing the results towards people who just leave the game running forever, but other than that it’s a level playing field. That’s self-ballancing – the range of opponents you meet is determined by the actual range of skills out there, from good to bad. They are picked at random, but in a skewed way so that you play against a mix of the best, worst and mediocre players out there. Then, when a new game is started, the server puts you in a random grid position and sends out 8 replays – one from each remaining grid slot. It feels unfair, and it’s not good enough! Rather than build a crappy AI for this game, I came up with the idea of recording people’s gameplay whilst they were racing and storing them on the server (stored by their starting position and overall performance). In a lot of games, the computer AI just bulldozes through your car sticking to its pre-programmed lines like a limpet. Even the big name consold games don’t get it right, and have either unrealistically good AI drivers or comically bad ones. I was determined to make a really good Flash racing game, with arcade but partially realistic handling, fun tracks, weapons and a little bit of a multiplayer twist.ĪI in racing games is hard. Can you beat all the other players, which are recordings of other real human drivers?Īh, a chance to do a pure arcade racing game, with actual racing cars rather than trollies or reindeer or airport baggage karts! Brilliant. Hit spacebar to deploy your car’s weapon, and shift to launch into the air. Use cursor keys to drive in this high-speed racing game.
