Reproduction Steps
SwimRepro.rbxl (50.1 KB)
Approximately two months ago, humanoid treading water broke in my game with the specific R15 rigs that I use.
Expected Behavior
In the repro file, remove the StarterCharacter from StarterPlayer and replace it with the block rig in workspace (generated with the animation editor). Enter the water and float up to the surface. When you reach the surface, the character Y position is stable and a water treading animation plays.
Actual Behavior
Using the StarterCharacter already in StarterPlayer, enter the water and float to the surface. When you reach the surface, the humanoid state rapidly oscilates in a cycle of Freefall → Swimming → GettingUp → Running → Freefall. The Y position of the character is unstable and the position and animation jitters.
I have not been able to reproduce this in the repro file, but in the production game, this unstable state makes it difficult/impossible to reenter a stable swimming state or to break the surface of the water when attempting to jump at the surface.
Issue Area: Engine
Issue Type: Other
Impact: High
Frequency: Constantly