i have no experience but once i was thinking how to design a multiplayer game and i got two interesting solutions, although they are ahrd or(more likely) just won't work ;) the simplest stated like a CS sever, where one player is the server but, the game records relative speeds of the program and latency and switches the server to the fastest computer. it stays there until there is a dramatic drop in performance, you could recalculate which is the best every few minutes. however, the player starting as the server is the only one who can run server commands, even though another machine is the "real" server. when the starting server player leaves, the game calculates his performance as 0 (Zero), which should be a "dramatic drop in performance", switches server to another machine( transparently) and hands control( server commands) to the second player to enter the game. the whole "who's machine is the server" should be handled transparently. the other option is if the Random number generators are seeded *exactly* such that each machine will produce the same numbers, the game treats the networked players as additional input, such that all the "server" does is rout the packets containing what input each player pressed to each individual machine and allows the user to issue server commands. you could combine the two though... --------------------- To unsubscribe go to http://gameprogrammer.com/mailinglist.html