How to Actually Use Roblox's Physics Character Controllers

Thanks for this! Seems to work well.

I believe there is a bug in the Jump action though, specifically regarding the opposite force applied to the floor. There you set the ground sensor’s hit normal as the position, which seems erratic. My suggestion is to change it to the ground sensor’s hit frame position instead, like so:

floor:ApplyImpulseAtPosition(-jumpImpulse, controllerManager.GroundSensor.HitFrame.Position)

Hope this helps and thanks again!