Updated post to add live showcase of the module.
v1.2
> Added the TwistAngleRange variable.
> Now you can set all your values in one go.
> WARNING; PLEASE UPDATE YOUR .new() CALLS TO THE NEW FORMAT:
.new(Character:Model, DataTable:RagdollProperties)
How can I detect if player is in ragdoll state ?
Hello! There currently isn’t a safe way to know if the player is ragdolling, since that feature hasn’t been added yet, but will be added soon! Sorry for the inconvenience, should’ve added this before
v1.2.1
> Now you can call Ragdoll:destroy() to destroy the ragdoll object.
> Now you can access other ragdoll from the module by using getRagdoll()
> Now you can check if the ragdoll is currently ragdolling with ragdoll:isRagdolling()
> You can also now define a custom ID for the ragdoll to be stored in. (i.e. ragdoll with id "hello" will be stored as ragdolls["hello"])
Hello! For some reason the module within the link you give is only updated to v1.1. Could you please roll out a fix for this?
I also personally would probably move away from package links as they’re less intuitive than just getting the new update of the module.
Oh my bad, it’s actually always updated (package link)
I just put the “v1.1” in the name and forgot to change it
About the package link, I’d prefer to just leave it there.
That way whenever I update the module it will be automatically updated to the new version.
I always add the changelog inside the main module too, so people will know that it has been updated.
But if you rather just get the module from the release (Creator Store) then I’m good with that.
I’ll start to update the link for every official release.
Updated! Thank you for your help
May I ask why you went with this ragdoll approach? Not to be rude or anything but I’m curious
The way you make the ragdolls is pretty weird, you clone the character and ragdoll that one while making the actual player character fully invisible and anchored in the air, storing the ragdoll in workspace in a _ragdoll folder
This may create problems if the character has scripts or GUI in them that also gets cloned, of course you can just access the character or make checks in the script for such occasions, but that’s kind of annoying
In a part of the code i remove the scripts that are in the character, and the cloning might be a lil rough and dirty but I’ll be updating the module to make it more reliable and safe.
Thanks for the comment, you weren’t rude at all! You pointed out a possible problem that could break other aspects of the game where its used, and it’s my job to fix that and avoid interfering with the systems that developers use. Thank you!
Also the reason why I clone the character and store it on a folder is because of performance and also to avoid interfering with other things that might be happening in the actual character. Kinda like a backup. (i.e. developer has set a custom property on the character’s humanoid and it might get overriden by the module)
Though, this is only used for the DeathBody
type. Toggle will use the character straight away.
Bro how come this gets more likes when I basically released the same thing alongside with 3 other modules bro
Thanks for answering, by the way, not sure if you know but there’s pretty significant lag when a player gets ragdolled and you’re not the one getting ragdolled, sometimes even more than 1 second before the ragdolling actually gets replicated to other players, and this is when I have only 0.1 incoming replication lag in studio settings, it’s a bit worse in a normal server environment
Another issue I found is the struggle to actually get up after you get ragdolled, I can fix it on my end but if you want look into HumanoidStateType, toggling Animate and stopping Animator animations, it would help others using this resource.
Thanks
hello sorry, the ragdoll looks awesome from the showcase but the sample code doesn’t seem to work. besides having a missing comma after Player = Player
the code still doesn’t work. the character disappears and the camera stays still.
Exactly, same happened to me i actually have no idea why the developer didn’t make the script right
Idk lol, maybe it’s cuz not everyone wants to make a battlegrounds game, but i just grabbed the ragdoll, and your ragdoll is way better than this one’s ragdoll, the ragdoll of this guy doesn’t even work
Hello to everyone here. I’m sorry that you are having issues with the module… Unfortunately, I’m currently on a vacation and can’t update nor fix errors and bugs in the module. As soon as I get back, I plan on releasing a massive update that will fix all of your issues and make the ragdoll work as intended, as well as improve performance and smoothness. Again, I’m sorry that the module isn’t working as expected. I’ll send an update on this post as soon as the update is ready. Thanks for your feedback!
A few things I’ve noticed after using it
- Your example only works as a Script parented to StarterCharacterScripts (else the hook never fires in time)
- The ragdoll will infinitely exist unless you make its
RemovalTime
less than RespawnTime in the Players service (Since the script gets deleted before it can run cleanup) - The
SkipFadeout
option is not being respected. You have to setFadeTime
to 0 to achieve the same thing
Overall, an excellent package you’ve made. It’s simplified something I wanted to do for a while down to a simple package I insert from my toolbox. I’m excited for that update you’ve mentioned. Hopefully this fixes the bugs I highlighted here
Hi Gitto! I am using your Ragdoll Module in one of my games and have encountered a problem.
When setting a boolean variable like AutoDestroy
or CollisionsEnabled
, if the value is false
, the module returns true
. I believe this happens because the or
statement always picks the first truthy value, causing false
assignments to be ignored.
Aside from that, I find the module to be well-made and simple to use. Looking forward to fixes and new features. Good luck!