I've been meaning to write this topic for months now and I've finally found the time to do so.
Every time after a desysnc is encountered in multiplayer, the player with the problematic save will continue to desysnc the game after we rehost it, until the desynced save copy is deleted and reacquired. Of course this takes unnecessary time to narrow down, so my group of friends just tell everyone to delete their save and reacquired it from the host to fix the problem in a fast manor. Sometimes we have to revert back to older saves which as you can imagine can cause some anger among the players.
It appears that your "does this player have this save already" segment of code in multiplayer is flawed. It would be much better if the player saves were compared to the host's master save via checksum (MD5, SHA1, ect) and not by not by just looking at file names. There are various open sourced library's out there than can easily accomplish this task, however it would just require implementation.
This issue has become a major hassle in my group and appears to be the number 1 annoyance in our multiplayer games. Anyone familiar with SRU multiplayer games can attest to this issue aswell. We would appreciate very much if you could kindly look into this issue.
Sincerely,
Viper
Checksum on lobby join
Moderators: Balthagor, Legend, Moderators
- Viper151
- Warrant Officer
- Posts: 43
- Joined: Aug 12 2016
- Human: Yes
- Location: X: 460 Y: 176
- Contact:
- Balthagor
- Supreme Ruler
- Posts: 22083
- Joined: Jun 04 2002
- Human: Yes
- Location: BattleGoat Studios
Re: Checksum on lobby join
While I appreciate the feedback, I don't think this will get high on our priority list.
While this may not be the ideal solution, consider that it took 10+ years just to get file transfer added to the engine.
Also, it would be much more complicated. When there is a mismatch in the checksum, who's savegame becomes the master, who's is discarded?
Yes, that's our suggestion as well
Then your host needs to update their autosave settings to be "every day", then you'll never lose more than one day of progress.
While this may not be the ideal solution, consider that it took 10+ years just to get file transfer added to the engine.