[0.17.79] Semi-unplayable Client desync with server, Moded
SeaBlock moded server in peaceful mode (original game was not peaceful). Around 50+ hours start running into issues trying to connect to the server due to desync of client during connection and only fix is to restart the server. Eventually I need any offsite clients to connect before myself locally or else the second client will connected and then (desync) a few seconds latter (eventually reaching the point that desync happens before full load in).
As this progress, all connected clients will eventually get desync after enough time has passed since server started. From testing the act of logging in and out and then waiting enough time before connecting again will result in a dysenc (from previous save attempt).
Once the dysinc issue arises it dose not matter if the server is hosted on my server box or locally, issue persists.
I was running a 0.17.6~ SeaBlock server initially and restarted after getting exasperated at not being able to track down the problem to a single mod and restarted with 0.17.79 along with the problem of never finding a way to force the dysenc except waiting (with a single client connection). From very limited testing there is no issue playing the file single player.
I have run Factorio servers on my server box (vm win7) from 0.14-current including a seablock in 0.16 without any connection issues from local or remote clients.
Without better understanding looking at the sync logs and data files in hex I am hopping someone else can help solve the problem whether it is a single mod, clashing between mods or some other complication.
As of 31 Dec 2019 all mods are updated to current version (in hopes of resolution without success). Initially no version was updated pas the provided SeaBlock pack version with the first server till the issue arose.
Mods:
Sea Block Pack (All default mods listed there, not going to relist due to size)
Helmod
Infinity Mode (wasn’t in original save, only left in incase of eventual testing)
Noxys Waterfill
Picker Atheneum
Picker Extended Version
ShinyAngleGFX
Squeak Through
ShinyBobGFX
Wire Shortcuts
Mods not currently running (was started with):
Big Bags
All Files:
https://www.dropbox.com/sh/l0hwkyk905j1 ... WDTAa?dl=0
Much Appreciation for any help or suggestions,
Shakrii
[0.17.79] Desync, moded
[0.17.79] Desync, moded
- Attachments
-
- factorio-server.log
- (398.12 KiB) Downloaded 101 times
-
- log.txt
- (221.72 KiB) Downloaded 96 times
Re: [0.17.79] Server Desync of clients, Sea Block Moded
Can you try a different router, or directly connect your computer's ethernet to the server's? (sometimes it will auto-negotiate IP's with direct connections).
I have mods! I guess!
Link
Link
Re: [0.17.79] Desync, moded
Fastest solution is to remove mods until it works. Start with the less popular ones.
Desyncs are game state discrepancies, nothing in the network can cause this.
Re: [0.17.79] Desync, moded
I had last time spent a couple days removing mods in an attempt to find the issue with little success. Part of the problem was as I removed mods it did eventually seem to become more stable but was never actually; making it harder and harder (time wise) to troubleshoot the problem. (ie if it is the action of an entity only when in use than the pairing results in massive to no active of said entity, masking the problem and further complicating the problem)
If the issue is entirely with a single mod then it was most likely angles or bobs (due to the quantity of removal I did last time) and makes it impossible to continue a Sea Block game with friends. Is it possible for a mod to corrupt a world enough that the length of playtime will cause the desyncs even with the mod removed but will be playable for a short time (min to hours) before another server restart?
Also I thought the game state was fully saved when one connects to a server. What could cause a restart to allow client connection, when later (with no one active in the world) results in desync before the client fully loads the world (in at least graphical appearance) or a few seconds latter? (My understanding being the game is always deterministic for all connected clients / servers)
This is the first time in over 10 years of running and managing a private server (for friends) that I have ever used a forum asking for help concerning a game server issue. This is in large part due to my feeling that all reasonable attempts should be made before bothering others, especially with the complexity as mentioned troubleshooting desyncs along with the vast amount of information already available on forums through previous questions.
Honktown as Loewchen mentioned the desync wouldn't be caused by the network (normally?) and as I mentioned I eventually started attempting to troubleshoot as a local server.
If the issue is entirely with a single mod then it was most likely angles or bobs (due to the quantity of removal I did last time) and makes it impossible to continue a Sea Block game with friends. Is it possible for a mod to corrupt a world enough that the length of playtime will cause the desyncs even with the mod removed but will be playable for a short time (min to hours) before another server restart?
Also I thought the game state was fully saved when one connects to a server. What could cause a restart to allow client connection, when later (with no one active in the world) results in desync before the client fully loads the world (in at least graphical appearance) or a few seconds latter? (My understanding being the game is always deterministic for all connected clients / servers)
This is the first time in over 10 years of running and managing a private server (for friends) that I have ever used a forum asking for help concerning a game server issue. This is in large part due to my feeling that all reasonable attempts should be made before bothering others, especially with the complexity as mentioned troubleshooting desyncs along with the vast amount of information already available on forums through previous questions.
Honktown as Loewchen mentioned the desync wouldn't be caused by the network (normally?) and as I mentioned I eventually started attempting to troubleshoot as a local server.
Re: [0.17.79] Desync, moded
If even a few bits were off during the game, then states wouldn't be synced, or worse, the game acts on and saved bad information. I wasn't clearly reading if the server had been ran on one computer and connected by a game on the same machine, or if the only testing was always done over the same connection(s) i.e. personal machine to server machine, and then hosting on the personal machine and connecting with server machine. In case of server router or connection malfunction, it would explain why anyone connecting would have issues.
leowchen might be able to help with heavy-mode testing, I've seen people saying that can very quickly detect certain desyncs.
Edit: I'll change a bunch of words, it'll make more sense
I have mods! I guess!
Link
Link
Re: [0.17.79] Desync, moded
Very unlikely that such popular mods cause desyncs.
I can not see how this would be possible, and nothing you described suggests that this is happening.Is it possible for a mod to corrupt a world enough that the length of playtime will cause the desyncs even with the mod removed
It is, unless the game or a mod or hardware is broken.Also I thought the game state was fully saved when one connects to a server.
Restarting the server results in the server loading it own save file, so there is no discrepancy between new connecting and already connected participants anymore. Until what ever happened before to create such discrepancy happens again.What could cause a restart to allow client connection, when later (with no one active in the world) results in desync
Re: [0.17.79] Client Desync, SeaFacotry Modeded
If the full gamestate is saved on connection and sent to the client, than is the corruption on the server save side, such that the sent file is incorrect relative to the current state of the server?
I am trying to get a better understanding of the exact actions being taken by the system since I would assume there shouldn't be any state change on the server with no clients present. Therefore I am unsure why the discrepancy would arise on a new connection to an empty server that has been running (and performs a new save before connection) vs a server freshly restarted.
Thanks for your feedback. Also if you can point me to information to better troubleshoot the actual desync, I have read what I can find on the wiki and a few other places (including heavy mode).
Also hadn't realized that Support > Bug Reports > Desyncs with mods existed and I believe this post should probably be over there? If so if a moderator could move it please.
edit: After reading through some comments concerning using heavy-mode I was able to in single player (after letting run long enough) get desync errors and so am currently trying some additional troubleshooting.
I believe at this point (although still need more testing) is the issue is with the actual Sea Block mod.
Re: [0.17.79] Desync, moded
Hm... desync was around inserter and belt
I can somehow consistently reproduce this desync when transport lines are merging while inserters pickup position is changed using "bob adjustable inserters mod" - heavy mode diffs are happening when inserters head is moving from old pickup not over belt to new pickup position over belt
Code: Select all
/c game.player.teleport{-140.5,-42.5}