I am using a system where my character has Ballsockets and I remove the Motor6D parent to somewhere else to make the limbs move freely, then I replace it back when I want my character to go back. The ragdolls function normally, the issue is that walking animations (any type of animation rlly) stops loading, and characters just stay on their normal pose (the one where nothing is moving) permanently. Sometimes it fixes itself and characters go back to loading their animations, but I wanted to avoid this issue.
Do you think there’s any solution to this?
3 Likes
C_Sharper
(Sharpie)
February 4, 2020, 10:52pm
#2
You could try disabling/re-enabling the Animate script in the character
Not sure if that’d do anything, it’s just an idea.
2 Likes
Sadly this doesn’t work
2 Likes
C_Sharper
(Sharpie)
February 5, 2020, 6:27pm
#4
Do you think you could take a gif to show what exactly the player is doing??
He’s standing still like an R6 without animation playing.
1 Like
C_Sharper
(Sharpie)
February 8, 2020, 5:29pm
#6
Could you post your code??
30chars
warn("Recieved")
local Ragdoll = coroutine.create(function(Character, Info)
local PlayerFolder = GameFolder[Character.Name.."_Folder"]
local Storage = PlayerFolder[Character.Name.."_Storage"]
local NewParts = Instance.new("Folder", Storage)
NewParts.Name = "RagdollParts"
local MotorFolder = Instance.new("Folder", Storage)
MotorFolder.Name = "MotorFolder"
local HandR = Instance.new("Part")
HandR.Size = Vector3.new(1,1,1)
HandR.Parent = NewParts
HandR.Name = "HandR"
HandR.Transparency = 1
local WeldR = Instance.new("Weld")
WeldR.C0 = CFrame.new(0,-0.5,0)
WeldR.Parent = HandR
WeldR.Part0 = Character["Right Arm"]
WeldR.Part1 = HandR
local HandL = Instance.new("Part")
HandL.Size = Vector3.new(1,1,1)
HandL.Parent = NewParts
HandL.Name = "HandL"
HandL.Transparency = 1
local WeldL = Instance.new("Weld")
WeldL.C0 = CFrame.new(0,-0.5,0)
WeldL.Parent = HandL
WeldL.Part0 = Character["Left Arm"]
WeldL.Part1 = HandL
local LegR = Instance.new("Part")
LegR.Size = Vector3.new(1,1,1)
LegR.Parent = NewParts
LegR.Name = "LegR"
LegR.Transparency = 1
local WeldLR = Instance.new("Weld")
WeldLR.C0 = CFrame.new(0,-0.5,0)
WeldLR.Parent = LegR
WeldLR.Part0 = Character["Right Leg"]
WeldLR.Part1 = LegR
local LegL = Instance.new("Part")
LegL.Size = Vector3.new(1,1,1)
LegL.Parent = NewParts
LegL.Name = "LegL"
LegL.Transparency = 1
local WeldLL = Instance.new("Weld")
WeldLL.C0 = CFrame.new(0,-0.5,0)
WeldLL.Parent = LegL
WeldLL.Part0 = Character["Left Leg"]
WeldLL.Part1 = LegL
for _,v in ipairs(Character.Torso:GetChildren()) do
if v:IsA("Motor6D") and v.Name ~= "Neck" then
local Clone = v:Clone()
Clone.Parent = MotorFolder
Clone.Part0 = nil
Clone.Part1 = nil
v:Destroy()
end
end
spawn(function()
wait(Info)
if not GameFolder:FindFirstChild(Character.Name.."_Folder") then return end
for _, v in ipairs(Storage.MotorFolder:GetChildren()) do
if v.Name == "Left Hip" then
v.Part0 = Character.Torso
v.Part1 = Character["Left Leg"]
elseif v.Name == "Left Shoulder" then
v.Part0 = Character.Torso
v.Part1 = Character["Left Arm"]
elseif v.Name == "Right Hip" then
v.Part0 = Character.Torso
v.Part1 = Character["Right Leg"]
elseif v.Name == "Right Shoulder" then
v.Part0 = Character.Torso
v.Part1 = Character["Right Arm"]
end
v.Parent = Character.Torso
end
end)
end)
coroutine.resume(Ragdoll, Character, Info)
end
2 Likes
https://gyazo.com/411359e0b406a5134aeebb9c4a6742a6
If you see between those many ragdolls, the characters come back as if there were no animations playing and I have no idea why this happens.
did you find a fix? currently having the same issues.
for those having the same problem as me, i found a solution…
it’s actually what @C_Sharper mentioned earlier, i disabled the animator before they got into ragdoll. afterwards, once i had reattached all my joints i just turned it back on.