In The Rare Case A Game Becomes De-Synced

I've seen it become de-synced (very) rarely. Idk, I'm running all physics and inputs through FPs, syncedInput, and syncedUpdate. Maybe packet loss is my best guess? Anyways, what's the best way to re-sync it?
Would sending a byte over OnSyncedInput give it the same vector for that frame to compare it to and snapback (if the difference is too great) on the other machine's OnSyncedUpdate? Hate to ask, but there's no easy way to test it with it only happening maybe once in a half hour to hour of testing.

Edit: Could have just found my issue, my dash function timer was on normal deltatime rather than truesync delta. Question still stands though.

Comments

  • Hi @Wheathn, all game should be always synced, there is no proper way to "resync" because all machines simulates with independence. These issues may be hard to find, generally it is because of some non deterministic code.
  • I've done some pretty physics intensive stuff with Truesync and remained in perfect sync. Post your code and let us see
  • Currently I have the same problem when using more than 2 players while doing some physics intensive stuff. Then one of the three players always desyncs, but the other two stay perfectly in-sync.
  • Like I said, most likely that dash timer running on time.delta rather than truesync delta. Thanks though @Prodigga .

    So it should be 100% synced 100% of the time if coded correctly, not just 99.99%. Gotcha.