local Players = game:GetService("Players") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local player = Players.LocalPlayer local mouse = player:GetMouse() local camera = workspace.CurrentCamera -- GUI local ScreenGui = Instance.new("ScreenGui") ScreenGui.Name = "gerasHUB" ScreenGui.ResetOnSpawn = false if game:GetService("CoreGui"):FindFirstChild("gerasHUB") then game:GetService("CoreGui").gerasHUB:Destroy() end ScreenGui.Parent = game:GetService("CoreGui") local MainFrame = Instance.new("Frame") MainFrame.Name = "MainFrame" MainFrame.Parent = ScreenGui MainFrame.Size = UDim2.new(0, 300, 0, 160) MainFrame.Position = UDim2.new(0.5, -150, 0.5, -80) MainFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 35) MainFrame.BorderSizePixel = 0 MainFrame.Visible = false local UICorner = Instance.new("UICorner") UICorner.CornerRadius = UDim2.new(0, 10, 0, 10) UICorner.Parent = MainFrame local UIStroke = Instance.new("UIStroke") UIStroke.Color = Color3.fromRGB(60, 160, 255) UIStroke.Thickness = 1.5 UIStroke.Parent = MainFrame -- Title local Title = Instance.new("TextLabel") Title.Name = "Title" Title.Parent = MainFrame Title.Size = UDim2.new(1, 0, 0, 40) Title.BackgroundTransparency = 1 Title.Text = "gerasHUB — Clean" Title.TextColor3 = Color3.fromRGB(220, 220, 255) Title.TextScaled = true Title.Font = Enum.Font.GothamBold Title.TextStrokeTransparency = 0.7 Title.TextStrokeColor3 = Color3.fromRGB(0,0,0) -- ESP Button local ESPToggle = false local ESPHighlights = {} local ESPBtn = Instance.new("TextButton") ESPBtn.Name = "ESP" ESPBtn.Parent = MainFrame ESPBtn.Size = UDim2.new(1, -20, 0, 45) ESPBtn.Position = UDim2.new(0, 10, 0, 50) ESPBtn.BackgroundColor3 = Color3.fromRGB(180, 60, 60) ESPBtn.Text = "ESP: OFF" ESPBtn.TextColor3 = Color3.fromRGB(255,255,255) ESPBtn.TextScaled = true ESPBtn.Font = Enum.Font.GothamSemibold ESPBtn.BorderSizePixel = 0 local ESPCorner = Instance.new("UICorner"); ESPCorner.CornerRadius = UDim2.new(0,8,0,8); ESPCorner.Parent = ESPBtn -- Aimbot Button local AimBotActive = false local LockedTarget = nil local AimBtn = Instance.new("TextButton") AimBtn.Name = "AIMBOT" AimBtn.Parent = MainFrame AimBtn.Size = UDim2.new(1, -20, 0, 45) AimBtn.Position = UDim2.new(0, 10, 0, 105) AimBtn.BackgroundColor3 = Color3.fromRGB(180, 60, 60) AimBtn.Text = "Aimbot: OFF" AimBtn.TextColor3 = Color3.fromRGB(255,255,255) AimBtn.TextScaled = true AimBtn.Font = Enum.Font.GothamSemibold AimBtn.BorderSizePixel = 0 local AimCorner = Instance.new("UICorner"); AimCorner.CornerRadius = UDim2.new(0,8,0,8); AimCorner.Parent = AimBtn -- Drag functionality local dragging, dragInput, dragStart, startPos = false, nil, nil, nil local function updateInput(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 Title.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then dragging = true dragStart = input.Position startPos = MainFrame.Position input.Changed:Connect(function() if input.UserInputState == Enum.UserInputState.End then dragging = false end end) end end) Title.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then dragInput = input end end) UserInputService.InputChanged:Connect(function(input) if input == dragInput and dragging then updateInput(input) end end) -- Toggle GUI UserInputService.InputBegan:Connect(function(input, gameProcessed) if gameProcessed then return end if input.KeyCode == Enum.KeyCode.RightShift then MainFrame.Visible = not MainFrame.Visible end end) -- Toggle ESP ESPBtn.MouseButton1Click:Connect(function() ESPToggle = not ESPToggle ESPBtn.Text = "ESP: " .. (ESPToggle and "ON" or "OFF") ESPBtn.BackgroundColor3 = ESPToggle and Color3.fromRGB(60, 180, 60) or Color3.fromRGB(180, 60, 60) end) -- Toggle Aimbot AimBtn.MouseButton1Click:Connect(function() AimBotActive = not AimBotActive AimBtn.Text = "Aimbot: " .. (AimBotActive and "ON" or "OFF") AimBtn.BackgroundColor3 = AimBotActive and Color3.fromRGB(60, 180, 60) or Color3.fromRGB(180, 60, 60) if not AimBotActive then LockedTarget = nil end end) -- ESP logic (max ~200 studs) RunService.Heartbeat:Connect(function() if not ESPToggle then for _, h in pairs(ESPHighlights) do pcall(function() h:Destroy() end) end ESPHighlights = {} return end local char = player.Character if not char or not char:FindFirstChild("HumanoidRootPart") then return end local myPos = char.HumanoidRootPart.Position -- Limpa highlights inválidos / distantes for i = #ESPHighlights, 1, -1 do local h = ESPHighlights[i] if h and h.Parent then local p = Players:GetPlayerFromCharacter(h.Parent) if p and p.Character and p.Character:FindFirstChild("HumanoidRootPart") then if (myPos - p.Character.HumanoidRootPart.Position).Magnitude > 200 then pcall(function() h:Destroy() end) table.remove(ESPHighlights, i) end else pcall(function() h:Destroy() end) table.remove(ESPHighlights, i) end else table.remove(ESPHighlights, i) end end -- Adiciona novos for _, other in pairs(Players:GetPlayers()) do if other == player or not other.Character or not other.Character:FindFirstChild("HumanoidRootPart") then continue end local dist = (myPos - other.Character.HumanoidRootPart.Position).Magnitude if dist > 200 then continue end local alreadyHas = false for _, h in pairs(ESPHighlights) do if h and h.Parent == other.Character then alreadyHas = true break end end if not alreadyHas then local hl = Instance.new("Highlight") hl.Name = "ESP" hl.Parent = other.Character hl.Adornee = other.Character hl.FillColor = Color3.fromRGB(255, 80, 80) hl.OutlineColor = Color3.fromRGB(255, 255, 255) hl.FillTransparency = 0.45 hl.OutlineTransparency = 0 hl.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop table.insert(ESPHighlights, hl) end end end) -- Aimbot: clique para travar UserInputService.InputBegan:Connect(function(input, gameProcessed) if gameProcessed or not AimBotActive then return end if input.UserInputType ~= Enum.UserInputType.MouseButton1 then return end local target = mouse.Target if not target then return end local model = target:FindFirstAncestorWhichIsA("Model") if not model then return end local humanoid = model:FindFirstChildOfClass("Humanoid") local root = model:FindFirstChild("HumanoidRootPart") if humanoid and root and Players:GetPlayerFromCharacter(model) and model ~= player.Character then LockedTarget = model end end) -- Aimbot smooth (RenderStepped) RunService.RenderStepped:Connect(function(delta) if not AimBotActive or not LockedTarget then return end local head = LockedTarget:FindFirstChild("Head") local myChar = player.Character if not head or not myChar or not myChar:FindFirstChild("HumanoidRootPart") then LockedTarget = nil return end local targetPos = head.Position local camPos = camera.CFrame.Position local direction = (targetPos - camPos).Unit local currentLook = camera.CFrame.LookVector -- Solta se estiver olhando para o lado oposto (> 90°) if currentLook:Dot(direction) < 0 then LockedTarget = nil return end -- Suavização local targetCFrame = CFrame.lookAt(camPos, targetPos) camera.CFrame = camera.CFrame:Lerp(targetCFrame, 0.16) -- 0.12–0.25 é faixa comum de suavidade end) -- Limpeza ao respawn player.CharacterAdded:Connect(function() task.wait(0.8) LockedTarget = nil for _, h in pairs(ESPHighlights) do pcall(function() h:Destroy() end) end ESPHighlights = {} end) print(RightShift to open )