How to fix animation snapping ragdoll?

I want to make a seamless ragdoll system, but however there is an issue that’s bugging me. My animations have the limbs at different positions, while roblox’s have the limbs stay in where the motor6D position is. Because of this, the ragdoll’s arms snap into position. I’ve thought about tweening the limbs because that would be a pretty good solution, but I don’t know how i could do that because of how the ragdoll module work. Basically, how the module works is that it gets the motor6Ds inside the torso and makes ball socket constrsaints at the CFrame of the motor6Ds’ C0 and C1. If anyone knows a solution how to solve this snapping issue, then please reply. Thank you.

Example video:

(As you can see, you can really notice it when I jump and ragdoll mid-air.)

2 Likes

This is a bit tricky to do in Roblox unfortunately, there is however one somewhat-easy solution I can think of but it requires a bit of math.

Before going from ragdoll mode back into “animated mode” you can calculate the distance/offsets that the limbs have from the torso and apply that as a CFrame to the Motor6Ds C0/C1 that animate the rig.

Use something like TweenService to make the limbs interpolate back to their original C0/C1 values and that should roughly do it.

And to prevent the character from snapping right back up you could use a constraint or velocity to make the torso slowly upright itself before allowing the character to walk again.

1 Like