Game Development Community

Interchangeable hosts

by Ronald J Nelson · in Torque Game Engine · 07/18/2007 (12:39 am) · 6 replies

An old game I used to play would transfer hosting to another player if the host should exit or crash. IS this something feasible or even recommended?

The old game was Interstate 82, keep in mind this was well over a decade ago. Just wanted to see if anyone had even tried this. Not really a necessity for my game, but it would be a neat extra.

#2
07/25/2007 (3:47 pm)
I'm far from expert, but this seems like it'd be wicked tricky just for the fact that generally the server keeps track of a whole lot of stuff that each client doesn't necessarily know. Clients are updated on a need-to-know basis in most modern games, and as far as I know, Torque included. Maybe this wasn't the case back in the day and that's why such a thing was possible?
If you wanted to pass hosting off from one computer to another on a planned occurrence, like the server closing the game, I could see that being relatively feasible, but to plan for something unexpected like a disconnection... I'm really not sure how that would work.
#3
07/25/2007 (7:58 pm)
Exactly the answer I expected. To be honest I was curious because as I have learned how networking works these days for games, I was curious to see if someone had done it just so I could understand the method they used to accomplish what they did.
#4
07/25/2007 (8:13 pm)
I'm curious, too. By all means, don't take my response with any sort of credibility. I'm rather new to all of this! ;)
#5
07/25/2007 (8:17 pm)
Your gut feelings are correct--due to the client/server relationship, and the fact that we network object states instead of input states (which is how P2P commonly works, and is most likely what your example used), there is no solid way to have a client "take over host responsibilities", for exactly the reasons Correction mentions.

The reason P2P systems "get away with it" is that for any given timeframe, every client playing has a complete, determinstic game state (or is currently synchronizing up to the current game state), because of the networking strategy used.

Interestingly, the very reason that most games now use an authoritative server/subset client simulation is so you can't do what you mention (recreate the entire game state on any client at any given time)--because that's a very easy way to "cheat"--you could see everything going on in the game, even things the game doesn't want you to.
#6
07/25/2007 (9:42 pm)
Absolutely Stephen, Interstate 82 was a widely hacked game that took very little ability to do so. It could be done as easily as modifying your own files and changing the engine's file pointer to yours but leave the original intact.

Thankyou though, you have given me a clear understanding how the system worked and definitely a clearer understanding of how it was so easy to cheat.