Reporting a bug: Observing a game will often result in a desync

Observing a game will often result in a desync. It happened several times recently during BSL casts.
This bug already happened in the past during ASL and KSL and it seems like it’s happening more often recently.

Grant Davies talked about this issue in this thread: What are the .orl files that are saved with Observer replays? - #2 by GrantTheAnt

Grant Davies, 20 May

No they don’t. They are files that we write to help us match up game state to find the observer desync issue that has occurred in ASL and KSL a couple of times. Unfortunately, nobody has reported the bug happening since, so we haven’t had much luck in tracking it down.

Dear Grant Davies,
the desync issue is as old as starcraft remastered is.
i always thought that you knew what the problem was, but never had the ressources to fix it. But now i realize that you still try to track it down.
i myself work in a field where i have do problem solving in PLCs daily.
now of course i dont know the sc code and i dont have the ability to look in it or check what you guys have done.

but if i could, the first thing i would check is the following:
desyncs never accured pre-remastered.
but we still had observer maps, ums maps where people go in the observer slot, so they can observe the other players.
these observers were treated as player (because for a 4 player map, the observer slots took up Player5 to Player8).
the game assures that all players ingame have the same feed, if a player is behind/lagging, we get the good old 45 second “waiting for player” screen, until the player catched up or we get to drop him from the game (with the drop message). even a small lag spike can cause this “waiting for player” screen to appear for 2 seconds, then the game resumes.

with remastered, you added the new observer mode.
i think that “the game assures that all players ingame have the same feed” does not take these new observer slots into account, because they are not players.
you never get “waiting for player” screen when it is about the new observer, instead they immediately desync. And the effect of the desync depends on how long the lag spike of the new observer was.

  1. a small lag spike = new observer slot misses few actions, maybe only of 1 player = game slowly goes out of sync as the actions of that 1 player doesnt match up and it takes some time to fully spiral out of sync.
  2. a big lag spike = new observer slot misses many actions of both players = both players do stuff that doesnt make sense, after a short time it spiraled out enough.
  3. a long delay (basically a drop) = you miss everything = immediatey overmins of both player, you know its desync after 3 seconds because you see no actions

tl:dr
i think it is not a game state problem, it is a design bug + lag. new observer slots are not players, only players get lag preventions (“waiting for players”)

hope it help.

PS: please credit me if i was correct xD

Greetings,
Bakuryu

2 Likes

Just happened again at BSL10. Round of 16

1 Like