-- 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)