PlatformStanding Humanoids cause unexpected behavior near moving objects

This is bug is going to be very hard to explain and may be very specific. But, essentially, I am making a swimming system that would replace the built-in swimming system for Humanoids, and I am using the PlatformStand property on Humanoids to make it possible. In my game, you can leave and enter a submarine by pressing E on a door. The moment you decide to leave the ship, it teleports you outside and puts you in my custom swimming state. My swimming system works perfectly fine.

Now, the problem arises when there are 2 clients. One controls the ship, while the other swims. For some very odd reason, the swimming client is sort of entangled with the velocity of the ship. So if the ship moves forward, the character moves forward; if the ship turns left, the character turns left. This problem does not come from any script in the game. It comes from the PlatformStand property, and I have tested it out. The only way this entanglement would disappear was by turning that property off and on after a second (while in the swimming state).

I found it hard to reproduce the bug in a more general fashion, so I have decided to make the game file public to staff.

A private message is associated with this bug report

Hi, I was able to reproduce this. Are you able to use the Humanoid Physics state instead of PlatformStand? I tried Humanoid:ChangeState(Enum.HumanoidStateType.Physics) and it did not have this issue.

This managed to fix it for me! Thanks a lot! :smiley:

This makes it seem like PlatformStand is just an inferior version of the Physics HumanoidState.