Client Ragdoll Attempt

So i recently decided to work on a ragdoll system whose physics works entirely in the client, this to allow people to have smooth ragdoll physics, i want to make this system public since i have seen some people having complications with client sided ragdolls.

I want to say beforehand, this system isn’t perfect and that it has some flaws, my intention in uploading this ragdoll system is just to allow people to see the system’s code and try to adapt it to a custom-ragdoll made system that applies the same concept, i doubt this will be of any use to anybody but here it is.

How does it works?

This runs over the next steps to work:

  • It fires a remote to every client which contains the Player Name.
  • Every client receives the signal then creates a Local Character Clone
  • The client then fires a module in ReplicatedStorage, sending the Local Character Clone
  • The Ragdoll Physics are then applied to the Local Character Clone
  • Then the cloned character is repeatedly teleported to the original character.
  • When creating the ragdoll clone, it sets the character’s Collision Group to “Character”, Ragdoll Character Body Parts to “Ragdoll” and the Ragdoll Collisions to “Limbs” (pretty sure un-necessary, but that’s what worked for me so far)

(Just to clarify: during this process, the original character model is made invisible, which means it never gets any ragdoll physics applied.)

Now that i clarified how it works, here is the things that could be improved:

  • The client ragdoll physics only works on the local ragdoll, but not the original character, which means collisions aren’t true
  • Sometimes the ragdoll parts tend to move erratically due to collisions being applied only to the local ragdoll model.
  • Original Character Humanoid’s PlatformStand property is set to true so the only body parts which has collision is the Torso & HumanoidRootPart
  • This system only works on R6, since it is easier to manage and less buggy to test with.
  • When applying a force on a ragdolled character, it tends to break/bug the ragdoll physics on the Local Ragdoll Character.
  • When doing un-ragdoll, the player seems to do a jump, that’s because the player’s humanoid PlatformStand property changes from true to false.

From my part, that’s everything i have found so far, and as i have said before, i don’t plan this ragdoll system to be used as a regular ragdoll system since it isn’t perfect, but if you want to improve it, fix it, and upload it as your own ragdoll system, that’s totally fine, I hope this system is helpful to you!

Credits:

  • Ragdoll System: ? (i forgot where i found the ragdoll module | if you are the creator of the ragdoll module, please reply to this post and i’ll update it ASAP)

(Also, i want to apologize for my horrible grammar lol)

Random Ragdoll Test v1.rbxl (88.4 KB)

1 Like

… Why?

3 Likes

Ok… so why release this?

This will lead to the ragdolls being out of sync with each other, which is bad if you like players agreeing on what they see on their screens.

This isn’t even your resource?

3 Likes