Since yesterday, an issue has started being reported out of nowhere on two of my places, Project Stardust and Neo Warfare X about what it appears to be severe desyncing issues, that is, the client sees a player stuck in one position while on the server, its in a completely different position. This has led to issues with combat such as shots appearing to “phase” through where the client thought the player is.
I know this is something that was not caused by our development team pushing any updates as no updates were pushed at all when the issue started appearing out of nowhere.
It seems to happen at seemingly random intervals with random lengths of the desync, but it is common enough to be highly disruptive and as a result, player counts are not as optimized as they should be.
I have heard rumors that this has happened to other places as well, but i would like some confirmation if others have experienced this.
Initially I thought we had rolled out a dodgy update to the live branch but we didn’t. We’re getting the issue on both the live version of our game, our testing branch & all previous versions from weeks/months ago which previously ran flawlessly.
At this point in time our game is essentially unplayable with this issue being so prevalent and has impacted our user ratings, revenue & player count.
Also experiencing this issue. My players have been reduced to almost nothing. Those who do play believe the game is always undergoing exploitation by another player when infact the game is simply not replicating client positions to each other. From what I’ve seen, the server can see the accurate and true positions but those positions are never updated on the other clients. This results in clients seeing other clients in a frozen like state where they’ve been spawned in. Any damage that is done, is seen by the server and so is authorised by the server leading to the assumption from a player’s perspective, that an invisible entity is damaging them. Please fix.
I personally have not finished my game yet, but as I take breaks playing military games, the servers get so much lag, that I can cross the map and out of no where, just get damaged by nothing. I know it’s a player but how could’ve I known where the player was if everything is just frozen.
I’m also experiencing this issue in my own game, where all client-server communication halts, and never comes back. I’ve managed to get a consistent and very simple reproduction case of what’s causing it, here. This issue is making a lot of games completely unplayable. I hope it will be fixed soon.
It seems like there is still impressive character replication lag / desync. Does this sound related to the feature that was temporarily disabled? Was this feature turned back on?
This is severely impacting my game. I did not see bad character lag before this issue appeared. The one physics assembly in my game seems decently responsive, but characters are replicating too slowly and sliding / teleporting around. I tested this on a baseplate and did not have the same issues so I guess it’s strongly related to server resource usage.
PeZsmistic the flag has been re-enabled, but the original issue was resolved. Please link the specific game that is having issues and we will determine if this flag is still causing issues for that game or if there is a different issue.
I’ve ironed it down to being an exploit script that a user joined ingame and ran because our game sometimes work perfectly fine for a whole hour, then suddenly server ping becomes unresponsive, people stop moving, chat pauses, and you have to probably wait over 5 minutes before the server finally updates where everyone is.
This isn’t a server lag bug as discord webhooks are still firing and when downloading a server microprofile, it shows it being entirely healthy.
This exploit script apparently is a way for a client to have a server halt on network packets.
If you want a really rough fix, have a localscript ping the server, have the server check and calculate the mean of everyone’s last ping to the server, if the last ping goes over 10 seconds, start kicking the last player who joined, wait a few seconds, check ping if it’s back yet, if not kick again.
That helped keep our game up because it’s kicking the player running this exploit script.
Everything else about the game is working flawlessly aside from character replication. It’s the same issue that others are getting with the standard Roblox character but appears to be more prevalent on our end due to our player characters being heavily modified.
Just like Coasterteam & rickje139’s issue, player positions aren’t updating frequently & as a result this seems to cause players to teleport every few seconds/minutes depending on the severity of the lag.
Edit: I thought I’d mention that this issue also occurs in test mode in studio as well whenever we run 3-4 clients at once.
Some characters seem more affected than others, and this appears to only happen in erratic bursts. The game is not terribly well optimized and is due for a major rewrite, but there were never issues with character position replication before. There is a teleport tool available to users but you can tell this isn’t being used because when players are frozen/lagging, you can see their walking animations playing.
This video is interesting because you can see the flat lizard character’s colors changing (on Touched on the client and sent through a remote to the server). These colors update long before the character’s position does.
This seems to be the right analysis. Server is fine, it’s just the communication that gets cut. Notice how LocalScripts also keep running fine.
However, I don’t think that it’s caused by an exploit, nor by heavy server load.
I’ve experienced it in a 2-player server with barely any scripts. game link My own game is also heavily affected.
For me, the desyncs are usually permanent: after 30 seconds of waiting with nothing happening, the roblox player gives error 277 (check your internet connection), but that’s obviously not the issue here.
Another thing to add: the desyncs are not synchronised (no pun intended) between clients. I.E. not all clients desync at the same time.
EDIT: found a way to pretty consistently cause a permanent desync. Join this game, walk over to the right, and enter the white-aqua car. Once the GUI appears, the desync has started. I wonder if it has to do with firing multiple remotes (the car system fires a lot of them to initialise), as suggested by @NickoSCP below.
One thing the games (that I experience this issue in) have in common is the admin system Adonis. But I don’t know if that affects it at all.
It just seems to be a coincidence that our game manages to always run fine by kicking the last few players that joined and the game comes back to life and that the game had been running fine for an entire 30 minutes before it suddenly has this effect.
Our game can finally handle all the way back up to 200 players, before, it would be till 20 players then the server freezes and everyone complains about lag when it’s just the server being unresponsive.
Could it be some kind of network queue that packets are being dropped by some ISP and Roblox doesn’t drop the packet request and keep trying and instead keeps holding on to this packet until it hits a quota and then stops everything?
Yep, it’s definitely related to the client firing RemoteEvents or RemoteFunctions often.
the client in this test game fires a RemoteFunction twice every heartbeat, and the server spawns a part every 0.2 seconds (and adds it to debris). It quickly disconnects, which you can tell because the parts don’t respawn anymore. The admin system I mentioned before is not present here. This bug does not happen in studio, further indicating a network-related bug.