Loading...
  OR  Zero-K Name:    Password:   

Post edit history

Help us solve the desyncs

To display differences between versions, select one or more edits in the list using checkboxes and click "diff selected"
Post edit history
Date Editor Before After
9/8/2015 2:38:43 PMPLrankRafalpluk before revert after revert
9/8/2015 2:36:52 PMPLrankRafalpluk before revert after revert
9/8/2015 2:36:14 PMPLrankRafalpluk before revert after revert
9/8/2015 2:35:54 PMPLrankRafalpluk before revert after revert
Before After
1 [quote]Since every client is simulating the game indpendently, there are two situations: 1 [quote]Since every client is simulating the game indpendently, there are two situations:
2 1) The game is synced - everyone share the same state. 2 1) The game is synced - everyone share the same state.
3 2) The game is desynced - not everyone share the same state. 3 2) The game is desynced - not everyone share the same state.
4 \n 4 \n
5 There is no correct state and wrong state (how would I know which is which). 5 There is no correct state and wrong state (how would I know which is which).
6 The error message is based on the order in which checksum packets reach the host (that's why the error changed in the example you quoted).[/quote] 6 The error message is based on the order in which checksum packets reach the host (that's why the error changed in the example you quoted).[/quote]
7 \n 7 \n
8 I knew all that, except about the order of packets. 8 I knew all that, except about the order of packets.
9 \n 9 \n
10 Let me rephrase the questions: 10 Let me rephrase the questions:
11 Are checksums compared in player-player pairs? 11 Are checksums compared in player-player pairs?
12 And host doesn't try to find which gamestate is shared by most clients? (which we later could call the "most correct" one) 12 And host doesn't try to find which gamestate is shared by most clients? (which we later could call the "most correct" one)
13 So when comparing checksums it only uses info about these two clients, and ignores data from others? 13 So when comparing checksums it only uses info about these two clients, and ignores data from others?
14 \n 14 \n
15 When checksums differ between these two at least one of them differs from the rest. Then sync error message only prints name of one randomly chosen player from the pair (based on packet order which can be considered random), right? 15 When checksums differ between these two at least one of them differs from the rest. Then sync error message only prints name of one randomly chosen player from the pair (based on packet order which can be considered random), right?
16 \n 16 \n
17 So the final question: 17 So the final question:
18 When we get sync error message containing player name, do we know his state differs from the rest, or it is entirely possible it just differs from 1 other player, who in fact is the one which differs from the rest? 18 When we get sync error message containing player name, do we know his state differs from ( most of) the rest, or it is entirely possible it just differs from 1 other player, who in fact is the one which differs from the rest?