[ODE] Re: ODE on multiplayer games

James Arthur teamonkey at gmail.com
Wed Mar 23 15:41:48 MST 2005


You could do it another way with a client-server method. Get the
clients to send events to a central server and the server periodically
sends object state data back to clients. Unless you're on a very fast
local network with a very fast server you'll need the clients to do
some simulation work themselves between updates from the server, but
on receiving an event from the server the client's state is
overwritten. Since the client gets updated periodically you can get
away with having a faster-but-less-accurate simulation on the client.

Cheers,

James



On Wed, 23 Mar 2005 15:54:45 +0100, Henrik Grimm <hengr at hotpop.com> wrote:
> Jose Marin wrote:
> > How to keep the clientes sincronized?
> >
> 
> There are two general paradigms:
> 
> 1) Let each client perform the same simulation at the same rate (the
> slowest client sets the speed). Broadcast events (player commands) for
> each time step. You must make sure that all clients start in the same
> state (same seed for all RNGs, etc.). This is described in a paper
> called "1500 Archers on a 28.8: Network Programming in Age of Empires
> and Beyond." on Gamasutra.
> 
> 2) Let each client update its own simulation in its own rate. Each
> entity is owned by one node and that node sends regular state updates to
> the other interested nodes. The other nodes keeps surrogates that are
> approximations of the entity (normally extrapolated between state
> updates). To minimize state updates a method called dead reckoning is
> normally used.
> 
> Which one of these you choose depends on a lot of factors, like the type
> of game, number of players, etc. The first method is suitable for games
> with a low number of players, where a relatively small number of events
> are generated, and where you can accept a high local latency. A prime
> example of this are most real-time strategy games.
> 
> /Henrik
> 
> _______________________________________________
> ODE mailing list
> ODE at q12.org
> http://q12.org/mailman/listinfo/ode
>


More information about the ODE mailing list