.resync

.resync

Requests for features in the spring code.

Moderator: Moderators

Post Reply
User avatar
Caydr
Omnidouche
Posts: 7179
Joined: 16 Oct 2004, 19:40

.resync

Post by Caydr »

I just finished playing a great game. Desynced...

Could there be some kind of .resync command that resends all the relevant data from the host's master copy to all players involved? If it took 5 minutes, or even 10 minutes, people would still wait. It's worth it on a good game.
User avatar
nobody2u
Posts: 123
Joined: 09 Aug 2006, 18:31

Post by nobody2u »

+1
Very annoying when that happens, ruined replays of good games...
User avatar
LOrDo
Posts: 1154
Joined: 27 Feb 2006, 00:21

Post by LOrDo »

I think this had been sorta discussed before, and it would be very hard to do.
User avatar
SwiftSpear
Classic Community Lead
Posts: 7287
Joined: 12 Aug 2005, 09:29

Post by SwiftSpear »

This has been in research since before SJ left the lead position in spring. The unfortunate reality is that the scale of spring is such that transmitting the game state in one block would take up to a minute of download time from the host to each client(if not significantly more) and require a massive amount of proprietary code that doesn't exist right now. Realistically a more efficient system is needed, and that system has yet to be figured out. There's a few options that may work that have been discussed, but nothing concrete yet.

Suffice to say that this issue is well known about, and it's not being ignored for any other reason that a fix at this point in time isn't feasible based on the way the engine handles multi play.
Tobi
Spring Developer
Posts: 4598
Joined: 01 Jun 2005, 11:36

Post by Tobi »

tbh it's out of the research phase already, it just is a lot of work to implement properly, and not quite interesting work either...

And the bandwidth usage of resync probably wouldn't be *that* bad either, we'd probably use some (multidimensional) checksumming matrix/vector thing (as the syncdebugger and some code in branches/tvo1 already uses IIRC) to determine which units/which areas of heightmap to resync, so not the entire gamestate including multiple heightmaps has to be send over...
10053r
Posts: 297
Joined: 28 Feb 2005, 19:19

Post by 10053r »

On the other hand, a full resync capability would let players who dropped rejoin...
User avatar
KDR_11k
Game Developer
Posts: 8293
Joined: 25 Jun 2006, 08:44

Post by KDR_11k »

I don't think people would mind even minutes of waiting, they've probably put much more time into that match already.
Sheekel
Posts: 1391
Joined: 19 Apr 2005, 19:23

Post by Sheekel »

How about a save option of types?

When the game de-syncs, it pauses, notifies the players, and then automatically finds the last moment when everything was properly synced. It then reverts back to that moment. Sort of like the "system restore" feature in windows.
User avatar
KDR_11k
Game Developer
Posts: 8293
Joined: 25 Jun 2006, 08:44

Post by KDR_11k »

Finding the last moment requires keeping copies of the gamestate for every frame. You could take the replays, compare when they differ and fast forward to that point but I think that'd still be slower than simply forcing a resync with the host's gamestate.
User avatar
Drone_Fragger
Posts: 1341
Joined: 04 Dec 2005, 15:49

Post by Drone_Fragger »

I think it would take 5 saveslots, once a second. seeing as a desync detection is instant, it'll be able to load the last one that worked easily.
User avatar
TradeMark
Posts: 4867
Joined: 17 Feb 2006, 15:58

Post by TradeMark »

I want explanation what causes sync errors.
Does anyone even know it actually? Is it cause of lost data packets or what?
User avatar
BvDorp
Posts: 439
Joined: 14 Oct 2005, 12:09

Post by BvDorp »

TradeMark wrote:I want explanation what causes sync errors.
Does anyone even know it actually? Is it cause of lost data packets or what?
read the threads! This discussion has been held over and over again, and loads of ppl put valuable time in it. Asking them, to explain it every time again and again, certainly won't help fixing it.

So, maybe it's best to make a sticky for sync problems, containing some information, and how to file reports?
User avatar
TradeMark
Posts: 4867
Joined: 17 Feb 2006, 15:58

Post by TradeMark »

What thread... paste the link, and ill read... no time to search 100 threads with words "sync error" or etc.
User avatar
BvDorp
Posts: 439
Joined: 14 Oct 2005, 12:09

Post by BvDorp »

TradeMark wrote:What thread... paste the link, and ill read... no time to search 100 threads with words "sync error" or etc.
problem's yours, not mine, so i'm not fixing it ;)
User avatar
OOmiz
Posts: 46
Joined: 06 Sep 2006, 12:47

Post by OOmiz »

nobody2u wrote:+1
Very annoying when that happens, ruined replays of good games...
+1

Just left another ruined game. Two different players ended up as winners.
User avatar
Dragon45
Posts: 2883
Joined: 16 Aug 2004, 04:36

Post by Dragon45 »

Resynching code could also be used for savegames/multi-player saved games.

How's that for three birds in one stone?
Post Reply

Return to “Feature Requests”