This isnt something i've done, but it's something i'm very interested in nonetheless, so bear with my uneducated musings :)

The basic issue with lag is how much information is necessary for each client to predict the game state. For instance, in a game of multiplayer asteroids, it isn't necessary for all clients to know where every bullet is, but it is necessary to know when a bullet is fired, from where and in what direction, since bullets act predictably and are simple to replicate. Similarly, asteroid positions can be predicted by broadcasting their initial position and movement vector, and until they are shot or otherwise affected, it isn't strictly necessary to broadcast their positions every screen update. So in short this leaves us with player vectors, player positions, player rotations, information which can be serialized to make the package as small as possible.

I don't believe it is necessary for the actual replication to be 100% as long as the game experience is 100% synchronous, meaning if player A accurately shoots player B on his client, and player B gets shot on his end 200ms later, the important thing is player B saw it coming and had a chance to react. HOWEVER; Anyone who has played an online game recently will know that the issue of lag hasn't really been ironed out as much as become a necessary evil gamers have learned to live with. I'm not saying the strongest efforts to eliminate lag shouldnt be made, but players tend to accept lag of around 400ms or less. A good example is world of warcraft, which exhibits tremendous lag by any standard but functions perfectly as a game nonetheless.You'll have a tough time completely eliminating it online. It's far far simpler in a LAN environment with a fast socket server, where the information packages can be larger and be sent more rapidly.

Replication is a super interesting topic. I'd love to hear more about it from Jobe :)

- Andreas
_______________________________________________
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com

Reply via email to