
Key RequiredUniversal
![hitbox Script [UPDATED]](https://scriptblox.com/images/sb/0-1753591528608.png)
-- Services
local Players = game:GetService("Players")
local LocalPlayer = Players.LocalPlayer
-- Storage for persistent hitboxes
local savedHitboxes = {}
local connections = {}
-- Create GUI
local screenGui = Instance.new("ScreenGui", game.CoreGui)
screenGui.Name = "HitboxGui"
local frame = Instance.new("Frame", screenGui)
frame.Size = UDim2.new(0, 300, 0, 285)
frame.Position = UDim2.new(0.5, -150, 0.5, -140)
frame.BackgroundColor3 = Color3.fromRGB(100, 100, 100)
frame.Active = true
frame.Draggable = true
-- 🔹 TOP GRAY BAR
local topBar = Instance.new("Frame", frame)
topBar.Size = UDim2.new(1, 0, 0, 30)
topBar.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
local title = Instance.new("TextLabel", topBar)
title.Size = UDim2.new(1, 0, 1, 0)
title.Text = "Hitbox GUI"
title.BackgroundTransparency = 1
title.TextColor3 = Color3.new(1,1,1)
-- Minimize Button
local minimize = Instance.new("TextButton", frame)
minimize.Text = "-"
minimize.Size = UDim2.new(0, 30, 0, 25)
minimize.Position = UDim2.new(1, -70, 0, 2)
minimize.BackgroundColor3 = Color3.fromRGB(150, 0, 0)
minimize.TextColor3 = Color3.new(1, 1, 1)
-- Exit Button
local exit = Instance.new("TextButton", frame)
exit.Text = "X"
exit.Size = UDim2.new(0, 30, 0, 25)
exit.Position = UDim2.new(1, -35, 0, 2)
exit.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
exit.TextColor3 = Color3.new(1, 1, 1)
local minimized = false
-- UI Elements
local playerLabel = Instance.new("TextLabel", frame)
playerLabel.Text = "Player Username"
playerLabel.Size = UDim2.new(0, 280, 0, 20)
playerLabel.Position = UDim2.new(0, 10, 0, 40)
playerLabel.BackgroundTransparency = 1
playerLabel.TextColor3 = Color3.new(1, 1, 1)
local playerBox = Instance.new("TextBox", frame)
playerBox.PlaceholderText = "Enter Username"
playerBox.Size = UDim2.new(0, 280, 0, 30)
playerBox.Position = UDim2.new(0, 10, 0, 60)
local sizeLabel = Instance.new("TextLabel", frame)
sizeLabel.Text = "Hitbox Size"
sizeLabel.Size = UDim2.new(0, 280, 0, 20)
sizeLabel.Position = UDim2.new(0, 10, 0, 95)
sizeLabel.BackgroundTransparency = 1
sizeLabel.TextColor3 = Color3.new(1, 1, 1)
local sizeBox = Instance.new("TextBox", frame)
sizeBox.PlaceholderText = "e.g. 50 or 100"
sizeBox.Size = UDim2.new(0, 280, 0, 30)
sizeBox.Position = UDim2.new(0, 10, 0, 115)
local setButton = Instance.new("TextButton", frame)
setButton.Text = "Set HitBox"
setButton.Size = UDim2.new(0, 280, 0, 35)
setButton.Position = UDim2.new(0, 10, 0, 155)
setButton.BackgroundColor3 = Color3.fromRGB(80, 80, 80)
setButton.TextColor3 = Color3.new(1, 1, 1)
local resetButton = Instance.new("TextButton", frame)
resetButton.Text = "Reset HitBox"
resetButton.Size = UDim2.new(0, 280, 0, 35)
resetButton.Position = UDim2.new(0, 10, 0, 195)
resetButton.BackgroundColor3 = Color3.fromRGB(80, 80, 80)
resetButton.TextColor3 = Color3.new(1, 1, 1)
local setAllButton = Instance.new("TextButton", frame)
setAllButton.Text = "Set HitBox to ALL Players"
setAllButton.Size = UDim2.new(0, 280, 0, 35)
setAllButton.Position = UDim2.new(0, 10, 0, 235)
setAllButton.BackgroundColor3 = Color3.fromRGB(0, 120, 0)
setAllButton.TextColor3 = Color3.new(1, 1, 1)
---------------------------------------------------
-- APPLY HITBOX
---------------------------------------------------
local function applyHitbox(player, size)
if not player then return end
savedHitboxes[player.Name] = size
local function apply(character)
local root = character:WaitForChild("HumanoidRootPart", 5)
if root then
root.Size = Vector3.new(size, size, size)
root.Color = Color3.fromRGB(255, 0, 0)
root.Transparency = 0.8
root.Material = Enum.Material.Neon
root.CanCollide = false
end
end
if player.Character then
apply(player.Character)
end
if connections[player] then
connections[player]:Disconnect()
end
connections[player] = player.CharacterAdded:Connect(function(char)
task.wait(0.5)
if savedHitboxes[player.Name] then
apply(char)
end
end)
end
---------------------------------------------------
-- RESET SINGLE PLAYER
---------------------------------------------------
local function resetHitbox(player)
if not player then return end
savedHitboxes[player.Name] = nil
if connections[player] then
connections[player]:Disconnect()
connections[player] = nil
end
if player.Character and player.Character:FindFirstChild("HumanoidRootPart") then
local root = player.Character.HumanoidRootPart
root.Size = Vector3.new(2, 2, 1)
root.Transparency = 0
root.Material = Enum.Material.Plastic
root.Color = Color3.fromRGB(255,255,255)
root.CanCollide = true
end
end
---------------------------------------------------
-- RESET ALL
---------------------------------------------------
local function resetAll()
for _, player in pairs(Players:GetPlayers()) do
resetHitbox(player)
end
end
---------------------------------------------------
-- MINIMIZE
---------------------------------------------------
minimize.MouseButton1Click:Connect(function()
minimized = not minimized
for _, child in pairs(frame:GetChildren()) do
if child ~= minimize and child ~= exit and child ~= topBar then
child.Visible = not minimized
end
end
frame.Size = minimized and UDim2.new(0, 300, 0, 35) or UDim2.new(0, 300, 0, 285)
end)
---------------------------------------------------
-- EXIT = FULL RESET + DELETE
---------------------------------------------------
exit.MouseButton1Click:Connect(function()
resetAll()
screenGui:Destroy()
end)
---------------------------------------------------
-- SET ONE
---------------------------------------------------
setButton.MouseButton1Click:Connect(function()
local username = playerBox.Text
local size = tonumber(sizeBox.Text)
local player = Players:FindFirstChild(username)
if player and size then
applyHitbox(player, size)
end
end)
---------------------------------------------------
-- RESET BUTTON (ALL)
---------------------------------------------------
resetButton.MouseButton1Click:Connect(function()
resetAll()
end)
---------------------------------------------------
-- SET ALL
---------------------------------------------------
setAllButton.MouseButton1Click:Connect(function()
local size = tonumber(sizeBox.Text)
if not size then return end
for _, player in pairs(Players:GetPlayers()) do
if player ~= LocalPlayer then
applyHitbox(player, size)
end
end
end)



sometimes works, but sometimes it doesnt, but it can also works in a game called Sheriff Vs Murderers