How would I go about creating a controllable ragdoll-character?

You can write your topic however you want, but you need to answer these questions:

  1. What do you want to achieve? Keep it simple and clear!

I would like to have the player’s character be a ragdoll permanently, but, still have the ability to walk around and jump. (Similar to the game characters in Ragdoll Mayhem.)

  1. What is the issue? Include screenshots/videos if possible!
  2. What solutions have you tried so far? Did you look for solutions on the Developer Hub?

I have no idea where to begin, I’ve tried looking into how people have made those “ragdoll on death scripts,” but I don’t know how I would go about letting the player be in that state while keeping the ability to control their character.

Any ideas on how I could do this is appreciated, thank you for your help!

2 Likes

You mean being a floppy ragdoll but able to roll/slide yourself around? Or like, actually walking around normally, but becoming a ragdoll on command…? Or just being kind of floppy normally, but still walking/animating upright?

1 Like

the game he referenced entails a ragdoll system where yes, the body of the player is pretty floppy but they are for the most part upright and able to move around.

as for creating this system, an easy method to making ragdolls is to break the motor6d joints and replace then with ballsocketjoints (which OP probably discovered in research)

you want to make sure the ragdoll works when they are alive, so use the humanoid.platformstand property. the player will lose the ability to move their character with normal controls but you can take this opportunity to bind the movement keys to a script that gives them a vectorforce in the movement direction they are requesting. this helps with giving that feeling of inertia to the ragdolls

i havent made this kind of system before but that’s how i would do it

2 Likes

I would, personally, use bodymovers. First, create the ragdoll, then add a BodyVelocity to it. Then, using your own systems of control, hook them up to changing the BodyVelocity.

1 Like

Try looking up constants and rootparts.

1 Like