Players have trouble staying on moving platforms

Under certain circumstances, players have trouble moving along with platforms that move around using Roblox’s physics engine. The video below illustrates the problem. When I jump on this rotating platform, my character has trouble staying on the platform. I will frequently fall of while standing still. It takes up to half a second before my player ‘sticks’ to the platform so to say.

The cause of the problem in the video above seems to be a combination of two things:

  • The local player does not have ownership over the rotating platform.
  • The Humanoid of the player has its Touched event connected on the client.

This issue seems to only happen when both of the above conditions are true. Jumping on a player-controlled physics platform will work as normal. Removing the Humanoid.Touched connection also seems to prevent this issue.

This issue seems to have been introduced sometime in the past few days, probably around Friday April 14th. As per this topic people have seemingly experienced worse issues than my video showed. The comments there suggest that there may be other factors that cause the same issue, potentially in worse ways as well. My suspicion is that the automatic transfer of physics ownership heavily amplifies this problem in multiplayer games.

Reproduction

Place file to reproduce the issue:
physics_bug_platforms.rbxl (49.3 KB)

Publish the place file to a new place and join the game in an online server, as this issue only happens online. This issue does not happen when I test the place file in play mode in studio! When you join the game there are two rotating platforms, one owned by the first player who joined the server (which is you) and one controlled by the server. You will be able to jump on top of the rotating platform owned by yourself no issue, but you will have trouble sticking to the platform controlled by the server. If any other players join the game, they will have problems staying on either platform as they do not control the physics of either rotating platform.

If you set Enabled to false on the HumanoidTouched LocalScript inside the StarterCharacterScripts folder the issue will disappear, showing that the client-side Touched connection seems to play a huge role in this problem.

Expected behavior

When a player jumps on top of a platform that is moving around using Roblox’s physics engine, the player should immediately stick to and move along with the platform without experiencing any latency/delay.

20 Likes

We’re investigating the issue, will update when we have a resolution.

Thanks for the detailed report.

7 Likes

We believe we’ve identified and resolved the issue, sorry for the wait.

5 Likes

I am indeed no longer experiencing this issue. Thank you for the swift response and quick fix!

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.