Roblox Script | UNIVERSAL GMOD, RAGDOLL DEATH

Created by skyr3x

Features:

  • UNIVERSAL GMOD RAGDOLL DEATH

. this script will make you ragdoll when you die and only respawn you after you left click while dead. when you run the script you gotta wait ~5 seconds because of the permadeath and respawning also only happens after ~5 seconds of clicking your mouse

local plr = game.Players.LocalPlayer
local char = game.Players.LocalPlayer.Character
local m = plr:GetMouse()

local message = Instance.new("Message",workspace)
message.Text = "preparing script. dont do anything, idiot"
char.Humanoid.WalkSpeed = 0


plr.Character = nil
plr.Character = char

wait(game.Players.RespawnTime + .6)

char.Humanoid.WalkSpeed = 16
message:Destroy()

char.Humanoid.Died:Connect(function()
    local sound = Instance.new("Sound",workspace)
    sound.Volume = 2
    sound.SoundId = "rbxassetid://7604108360"
    sound:Play()
    local con
    con = m.Button1Down:Connect(function()
        plr.Character = nil
        plr.Character = char
        con:Disconnect()
    end)
    function Iterate(instance, func)
        for i, v in next, instance:GetChildren() do
            func(v)
        end
    end
   
    limbs = {
        ["Right Leg"] = true;
        ["Right Arm"] = true;
        ["Left Leg"] = true;
        ["Left Arm"] = true;
    }
   
    Iterate(char, function(v)
        if v:IsA("BasePart") then
            local attachment = Instance.new("Attachment")
            attachment.Parent = v
            attachment.Name = (v.Name .. "[Attachment]")
            if limbs[v.Name] then
                attachment.Position = Vector3.new(0, v.Size.Y/2, 0)
            elseif v.Name == "Head" then
                attachment.Position = Vector3.new(0, -v.Size.Y/2, 0)
                attachment.Rotation = Vector3.new(0, 0, -90)
            end
        end
    end)
   
    local leftLegAttachment = Instance.new("Attachment")
    leftLegAttachment.Position = Vector3.new(-.5, -1, 0)
    leftLegAttachment.Rotation = Vector3.new(0, -90, 0)
   
    local rightLegAttachment = Instance.new("Attachment")
    rightLegAttachment.Position = Vector3.new(.5, -1, 0)
    rightLegAttachment.Rotation = Vector3.new(0, -90, 0)
    rightLegAttachment.Parent, leftLegAttachment.Parent = char.Torso, char.Torso
   
    jointAttachments = {
        ['Head'] = {
        ['Attachment0'] = char.Torso['NeckAttachment'];
        ['Attachment1'] = char.Head['Head[Attachment]'];
        };
        ['Left Arm'] = {
        ['Attachment0'] = char.Torso['LeftCollarAttachment'];
        ['Attachment1'] = char['Left Arm']['Left Arm[Attachment]'];
        };
        ['Right Arm'] = {
        ['Attachment0'] = char.Torso['RightCollarAttachment'];
        ['Attachment1'] = char['Right Arm']['Right Arm[Attachment]'];
        };
        ['Left Leg'] = {
        ['Attachment0'] = leftLegAttachment;
        ['Attachment1'] = char['Left Leg']['Left Leg[Attachment]'];
        };
        ['Right Leg'] = {
        ['Attachment0'] = rightLegAttachment;
        ['Attachment1'] = char['Right Leg']['Right Leg[Attachment]'];
        };
    }
   
    char.Humanoid.PlatformStand = true
   
    Iterate(char, function(v)
        if v:IsA("BasePart") then
            if jointAttachments[v.Name] then
                local ballSocketJoint = Instance.new("BallSocketConstraint")
                ballSocketJoint.Parent = v
                ballSocketJoint.Radius = 0.15
                ballSocketJoint.Attachment0, ballSocketJoint.Attachment1 = jointAttachments[v.Name]['Attachment0'], jointAttachments[v.Name]['Attachment1']
            end
        end
    end)
   
    Iterate(char.Torso, function(v)
        if v:IsA("Motor") then
            v:Remove()
        end
    end)
end)

ENJOY!

Warning: DO NOT DOWNLOAD anything from this page, you’re only here to copy the script!

More Scripts!

TOP 10 TRENDING SCRIPTS