# Please correct me if wrong, learning how to ragdoll

Looking at a free model ragdoll script, need better understanding of following properties

``````constraints.Ankle.LimitsEnabled = true -- This just sets how far we can rotate our ankle up and down?
constraints.Ankle.TwistLimitsEnabled = true
constraints.Ankle.UpperAngle = 30 -- This angle is for movement when you move your ankle vertically up?
constraints.Ankle.TwistLowerAngle = -45 -- Whats the difference between upperangle and twistupperangle?
constraints.Ankle.TwistUpperAngle = 30
``````

Premake the joints in Roblox studio, and see how it works:

The upper angle is the cone:

Twist Angle is the hinge-like angle:

TwistLimits are hard to imagine, but @EgoMoose has made a cool gif of how the twisting rotation works in the gif below in the CFrame article. This â€śTwistâ€ť gets constrained by an angle for a ball socket constraint.

Gif part first twists, then swings towards the target rotation:

1 Like

How can I get a character with the joints? Do I need to add them on my own?

Also what does this mean?

Yep you gotta make it on your own. However, I believe you can just use the ragdoll script then use the command bar to setup the joints automatically so you can use the studio constraints visualizer to see how it works.

Well in the gif, imagine that the first rotation is only able to â€śtwistâ€ť a certain amount of angles.

Here is what I mean when I manually scripted twist limit constraints it for my CCDIK inverse kinematics project:

The leg that speens 360 is one without twist limits,

The leg that cannot is one with twist limits:

1 Like

For this part do I just run a for _,v in loop and add a ballsocket to each basepart?

is this a plug in or a built in feature of studio?

What is the second twist? Are the twists vertical or horizontal?

also nice mechs they look very good