Client position desyncs with Server when client stands on client-sided objects

Our analytics have reported an abnormal spike in automated bans handled by our anti-cheat. This began to occur without any new content being published to our game.

Upon investigation, we found that the root of this issue came from players who stood on client sided objects, causing the server to desync with the client’s perceived position until they stood on a non-client object. (see video below)

This has caused our anti-cheat to falsely ban players under the belief that players have been no-clipping and teleporting around the tower. Our replay system captured a similar occurrence where the banned player appears to teleport to the bottom of the tower whenever they jumped on rotating obstacles, which are client-sided objects.

It is important to note that client-sided objects in our game are local copies of server-sided objects. When the tower loads, the client Clones Instances tagged with CollectionService, then parents the server copy to nil until StreamingEnabled re-streams the server instance to the client.

Expected behavior

Players should be able to navigate obstacles whether client-sided or not without issue. Malicious actors should be punished by the anti-cheat when violating expected client behavior defined by the server.

A private message is associated with this bug report

5 Likes

I reported the exact same issue just now for my game.

For me, it has to do with custom physics with high Density on local parts.

1 Like

The bug seems to only affect unanchored parts with a mass greater than ~24 from what I have noticed.

Some players are also experiencing this in my game but when they stay AFK for too long, usually off tab. This offset also affects a lot their skills, leading to a bad gameplay.

We think this may be related to this change, and we’re currently rolling it back. In about an hour, fresh servers should revert back to the old behavior.

Please let us know if the issue goes away after the Rollout completes.

5 Likes

Thank you, the issue is fixed now.