client
client copied to clipboard
Replay Desync Mystery
Since the server update, complaints about desyncing and corrupted replays have increased massively. It's reached the point where BRNK, who as a caster is exposed to more replays than just about anyone, has given up casting SupCom entirely for the time being. He reckons that over 80% of replays are now corrupted, up from more like 10% beforehand.
Zock has also come forward about being unable to view anyone else's replays from the balance testing mod. He and I conducted a test, where we ran a game on BETA 3654 release candidate, both with a fresh copy of the balance testing mod. In-game, after an initial desync which is apparently normal, the game ran fine.
The mystery is exposed in the logs: For some reason, the exact same file is behaving differently on our two PCs. Each of us can run our own local copy of the game replay with no problems (It doesn't even show the desync seen in-game), but when either tries to run the other's replay file, it desyncs. Even stranger, I am able to run the file downloaded from the server with no trouble, but when that exact same file is run by Zock, it desyncs.
Desyncing in a live game with someone is with all probability due to differences in the running game code, in the logs provided it happens right after
debug: Loading module \000/units/uea0103/uea0103_script.lua\000
which could indicate UEA0103 differs in your versions.
Desyncing replays is the other problem, which happens when players disconnect and CommandStreamTerminated is executed. For some reason this gets messed up in replays, probably gets recorded at wrong tick. Exactly when and why it happens is still a mystery.
I've tried to replicate the disconnect bug in local LAN game with 3 connected players but failed so far. Maybe it only happens in combination with having a GPGNet connection or proxy connection.
Anyone have a clue what /networksafe
does? Would be interesting to see if that changes anything.
It cannot differ. The files are identical, from the same source.
Hmm once I had a similar problem, that time I had a zip-file in mods folder at the same time as an "unzipped" version of the mod, so the game actually used the "zip version" instead of the files in the mod folder (or vice-versa).
Did we actually check that the units/uea0103/uea0103_script.lua file is the same?
Its not in the FA repo, so I presume the original installation's copy is being used.
Also, how is this a client bug?
Client issue cos it all went wrong at server and client update. I suspect a reporting error somewhere down the line. And yes, the file is the same, as the mod is freshly downloaded. Even then, differences in code still wouldnt explain the same file behaving differently on different pcs.
Is this still an issue?