-- [[ Hypershot / HUB - V1.4 (Custom Build) ]] local UserInputService = game:GetService("UserInputService") local RunService = game:GetService("RunService") local Players = game:GetService("Players") local LocalPlayer = Players.LocalPlayer local Camera = workspace.CurrentCamera local Mouse = LocalPlayer:GetMouse() -- Variables de Estado local Toggled = true local ESPEnabled = false local AimbotEnabled = false local MaxDistance = 500 -- Distancia ligeramente aumentada -- Gestión de Entidades local Entities = {} local lastScan = 0 -- [[ DISEÑO HYPERSHOT ]] local ScreenGui = Instance.new("ScreenGui", game.CoreGui) local MainFrame = Instance.new("Frame", ScreenGui) MainFrame.Size = UDim2.new(0, 350, 0, 280) MainFrame.Position = UDim2.new(0.5, -175, 0.5, -140) MainFrame.BackgroundColor3 = Color3.fromRGB(10, 10, 12) MainFrame.BorderSizePixel = 0 MainFrame.Visible = Toggled local MainCorner = Instance.new("UICorner", MainFrame) MainCorner.CornerRadius = UDim.new(0, 10) local UIStroke = Instance.new("UIStroke", MainFrame) UIStroke.Color = Color3.fromRGB(138, 43, 226) UIStroke.Thickness = 2 UIStroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border -- Cabecera local Header = Instance.new("Frame", MainFrame) Header.Size = UDim2.new(1, 0, 0, 50) Header.BackgroundColor3 = Color3.fromRGB(20, 20, 25) Header.BorderSizePixel = 0 Instance.new("UICorner", Header).CornerRadius = UDim.new(0, 10) local Title = Instance.new("TextLabel", Header) Title.Size = UDim2.new(1, -20, 1, 0) Title.Position = UDim2.new(0, 15, 0, 0) Title.Text = "HYPERSHOT / HUB V1" Title.TextColor3 = Color3.fromRGB(255, 255, 255) Title.BackgroundTransparency = 1 Title.Font = Enum.Font.GothamBold Title.TextSize = 18 Title.TextXAlignment = Enum.TextXAlignment.Left local AccentLine = Instance.new("Frame", Header) AccentLine.Size = UDim2.new(1, 0, 0, 2) AccentLine.Position = UDim2.new(0, 0, 1, -2) AccentLine.BackgroundColor3 = Color3.fromRGB(138, 43, 226) AccentLine.BorderSizePixel = 0 local List = Instance.new("ScrollingFrame", MainFrame) List.Size = UDim2.new(1, -20, 1, -70) List.Position = UDim2.new(0, 10, 0, 60) List.BackgroundTransparency = 1 List.ScrollBarThickness = 2 List.ScrollBarImageColor3 = Color3.fromRGB(138, 43, 226) local Layout = Instance.new("UIListLayout", List) Layout.Padding = UDim.new(0, 8) Layout.HorizontalAlignment = Enum.HorizontalAlignment.Center local function NewButton(name, callback) local btn = Instance.new("TextButton", List) btn.Size = UDim2.new(1, -5, 0, 50) btn.BackgroundColor3 = Color3.fromRGB(25, 25, 30) btn.TextColor3 = Color3.fromRGB(200, 200, 200) btn.Text = name btn.Font = Enum.Font.GothamMedium btn.TextSize = 14 btn.AutoButtonColor = false Instance.new("UICorner", btn).CornerRadius = UDim.new(0, 6) local btnStroke = Instance.new("UIStroke", btn) btnStroke.Color = Color3.fromRGB(45, 45, 50) local active = false btn.MouseButton1Click:Connect(function() active = not active btn.BackgroundColor3 = active and Color3.fromRGB(138, 43, 226) or Color3.fromRGB(25, 25, 30) btn.TextColor3 = active and Color3.new(1,1,1) or Color3.fromRGB(200, 200, 200) btnStroke.Color = active and Color3.fromRGB(200, 150, 255) or Color3.fromRGB(45, 45, 50) callback(active) end) end -- [[ LÓGICA DE ESP ]] local function CreateESP(parent) local bill = Instance.new("BillboardGui", parent) bill.Name = "EnemyESP" bill.Size = UDim2.new(0, 200, 0, 70) bill.AlwaysOnTop = true bill.ExtentsOffset = Vector3.new(0, 4, 0) local txt = Instance.new("TextLabel", bill) txt.Name = "Info" txt.Size = UDim2.new(1, 0, 0.7, 0) txt.BackgroundTransparency = 1 txt.TextColor3 = Color3.new(1, 1, 1) txt.Font = Enum.Font.GothamBold txt.TextSize = 13 txt.TextStrokeTransparency = 0.5 local hBack = Instance.new("Frame", bill) hBack.Name = "HBack" hBack.Size = UDim2.new(0.5, 0, 0, 4) hBack.Position = UDim2.new(0.25, 0, 0.7, 0) hBack.BackgroundColor3 = Color3.new(0, 0, 0) hBack.BorderSizePixel = 0 local hIn = Instance.new("Frame", hBack) hIn.Name = "HIn" hIn.Size = UDim2.new(1, 0, 1, 0) hIn.BackgroundColor3 = Color3.new(1, 1, 1) hIn.BorderSizePixel = 0 return bill end local function ScanMap() local found = {} for _, v in pairs(workspace:GetDescendants()) do if v:IsA("Humanoid") and v.Parent ~= LocalPlayer.Character then local char = v.Parent if char:FindFirstChild("HumanoidRootPart") and char:FindFirstChild("Head") then table.insert(found, {Hum = v, Char = char, Root = char.HumanoidRootPart}) end end end Entities = found end -- Botones NewButton("🎯 Hard Lock: Solo Enemigos", function(v) AimbotEnabled = v end) NewButton("👁️ ESP: Solo Enemigos", function(v) ESPEnabled = v end) -- Arrastrar GUI local dragging, dragInput, dragStart, startPos MainFrame.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then dragging = true dragStart = input.Position startPos = MainFrame.Position end end) UserInputService.InputChanged:Connect(function(input) if dragging and input.UserInputType == Enum.UserInputType.MouseMovement then 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 end) UserInputService.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then dragging = false end end) -- [[ BUCLE DE CONTROL PRINCIPAL ]] RunService.RenderStepped:Connect(function() local MyChar = LocalPlayer.Character if not MyChar or not MyChar:FindFirstChild("HumanoidRootPart") then return end local MyPos = MyChar.HumanoidRootPart.Position if tick() - lastScan > 1.0 then ScanMap() lastScan = tick() end local bestTarget = nil local minMouseDist = 1000 -- Radio de búsqueda ampliado local isAiming = UserInputService:IsMouseButtonPressed(Enum.UserInputType.MouseButton2) for i, data in ipairs(Entities) do local char = data.Char if char and char.Parent and data.Hum.Health > 0 then local plr = Players:GetPlayerFromCharacter(char) -- Filtro de equipo local isAlly = false if plr and plr.Team == LocalPlayer.Team and plr.Team ~= nil then isAlly = true end if not isAlly then local dist = (data.Root.Position - MyPos).Magnitude if dist <= MaxDistance then -- 1. ESP MEJORADO (Sin siglas BOT) if ESPEnabled then local esp = char:FindFirstChild("EnemyESP") or CreateESP(char) esp.Enabled = true local hpPerc = data.Hum.Health / data.Hum.MaxHealth -- Se quitó el prefijo "[BOT]" aquí: local tag = plr and plr.Name or char.Name esp.Info.Text = string.format("%s\n%dm | HP: %d%%", tag, math.floor(dist), math.floor(hpPerc * 100)) esp.HBack.HIn.Size = UDim2.new(hpPerc, 0, 1, 0) esp.HBack.HIn.BackgroundColor3 = Color3.fromHSV(hpPerc * 0.3, 1, 1) elseif char:FindFirstChild("EnemyESP") then char.EnemyESP.Enabled = false end -- 2. LÓGICA DE TARGETING (AIMBOT) if AimbotEnabled and isAiming then local head = char:FindFirstChild("Head") local pos, onScreen = Camera:WorldToViewportPoint(head.Position) if onScreen then local mouseMag = (Vector2.new(pos.X, pos.Y) - Vector2.new(Mouse.X, Mouse.Y)).Magnitude if mouseMag < minMouseDist then bestTarget = head minMouseDist = mouseMag end end end else if char:FindFirstChild("EnemyESP") then char.EnemyESP.Enabled = false end end else if char:FindFirstChild("EnemyESP") then char.EnemyESP:Destroy() end end end end -- 3. HARD LOCK (Precisión Máxima) if bestTarget and AimbotEnabled and isAiming then -- Bloquea la cámara directamente a la posición de la cabeza del objetivo Camera.CFrame = CFrame.new(Camera.CFrame.Position, bestTarget.Position) end end) -- Toggle Menu (Tecla Right Control) UserInputService.InputBegan:Connect(function(i, g) if not g and i.KeyCode == Enum.KeyCode.RightControl then Toggled = not Toggled MainFrame.Visible = Toggled end end)