my health kept regaining btww in this video i have of the welds breaking and the player not being able to die
also btw, my ragdoll module on turns on the collide models on and puts body forces in head, limbs and torso, and it turns on evaluate machine, and disables joints
I downloaded your RBXL and I’ve made adjustments to your place
This is the new RAGDOLL ModuleScript
local module = {}
module.death = function(char, humanoid: Humanoid)
humanoid.BreakJointsOnDeath = false -- so this would also work instead
humanoid.Died:Connect(function()
local Torso = char:WaitForChild("Torso")
humanoid.AutoRotate = false
-- humanoid.BreakJointsOnDeath = false -- you can't disable break joints on death afterit dies
-- instead you have to just disable it on the rig its self or before it dies
humanoid:Move(Vector3.zero)
humanoid:SetStateEnabled(Enum.HumanoidStateType.GettingUp, false)
char:WaitForChild("Humanoid").JumpPower = 0
for i, v in pairs(char:GetDescendants()) do
print("oh we see")
if v:IsA("Motor6D") then
v.Enabled = false
end
if v:IsA("Model") and v.Name == "ColliderModel" then
for _, part in ipairs(v:GetDescendants()) do
if part:IsA("BasePart") then
part.CanCollide = true
end
end
end
end
task.wait()
-- this below was causing it to not respawn and also doesn't seem like it needs to be here
-- so I have commented it out
-- char:WaitForChild("Humanoid").EvaluateStateMachine = false
end)
end
return module
Your RagdollSCript in StarterCharacterScripts can stay the same, I have added comments on what I’ve changed and why.
I’ve tested the place with the new scripts and I do respawn when I die and welds also do not break, along with my limbs moving freely instead of being stiff
local module = {}
module.death = function(char, humanoid: Humanoid)
humanoid.BreakJointsOnDeath = false -- so this would also work instead
humanoid.Died:Connect(function()
local Torso = char:WaitForChild("Torso")
humanoid.AutoRotate = false
-- humanoid.BreakJointsOnDeath = false -- you can't disable break joints on death before it dies
-- instead you have to just disable it on the rig its self or before it dies
humanoid:Move(Vector3.zero)
humanoid:SetStateEnabled(Enum.HumanoidStateType.GettingUp, false)
char:WaitForChild("Humanoid").JumpPower = 0
for i, v in pairs(char:GetDescendants()) do
print("oh we see")
if v:IsA("Motor6D") then
v.Enabled = false
end
if v:IsA("Model") and v.Name == "ColliderModel" then
for _, part in ipairs(v:GetDescendants()) do
if part:IsA("BasePart") then
part.CanCollide = true
end
end
end
end
char["Left Leg"].CanCollide =false
char["Right Leg"].CanCollide = false
task.wait()
-- this below was causing it to not respawn and also doesn't seem like it needs to be here
-- so I have commented it out
-- char:WaitForChild("Humanoid").EvaluateStateMachine = false
end)
end
return module
I’m not exactly sure what’s causing this, first try the code above and see if that fixes that specific problem, if not I’ll look further into your rig