GroundController's AccelerationTime does not respect Friction and FrictionWeight

When using a ControllerManager with a GroundController, if the value of AccelerationTime is set to anything other than 0 (i.e. you aim to make the character/part have a slow or “heavy” acceleration), the resultant acceleration will not respect any value of Friction and FrictionWeight set, instead seemingly defaulting to a low value of both during the acceleration, resulting in sluggish and slippery movement if the user decides to move directionally as the character accelerates. The expected behaviour of Friction and FrictionWeight is observed after the character has accelerated fully to the value of BaseMoveSpeed.

Current Behaviour:

Repro File & Instructions:
repro.rbxl (66.2 KB)

Open the repro file. When opened, playtest and adjust Friction and FrictionWeight via the on-screen buttons. “Slippery” acceleration when turning should be visible when using both Friction & FrictionWeight = 1 and Friction = 2, FrictionWeight = 10.

(template rbxl sourced from Robostics’ Character Controller Writeup. system information should be irrelevant - behaviour is observed on multiple systems.)

Expected behavior

This slippery acceleration should only be observed when both Friction and FrictionWeight values are low like when Friction and FrictionWeight are both set to 1 - this behaviour should not be seen when Friction and FrictionWeight are set to higher values, such as 2 and 10 respectively. When higher values are set, turning whilst still accelerating should be snappy and akin to the behaviour viewed when the character is moving at its maximum speed in this instance.

1 Like