
KeylessUniversal

-- SERVICES
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local camera = workspace.CurrentCamera
local localPlayer = Players.LocalPlayer
local playerGui = localPlayer:WaitForChild("PlayerGui")
-- ESTADOS E CONFIGURAÇÕES
local funcoes = { ESP = false, Fly = false, AimBot = false, GodMode = false }
local velocidadeFly = 60
local tamanhoFov = 150
local menuMinimizado = false
-------------------------------------------------------------------------------
-- INTERFACE VISUAL (Aim Bot Hub)
-------------------------------------------------------------------------------
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "AimBotHubMobile"
screenGui.ResetOnSpawn = false
screenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
screenGui.Parent = playerGui
-- Menu Principal
local frame = Instance.new("Frame")
frame.Size = UDim2.new(0, 180, 0, 310)
frame.Position = UDim2.new(0.05, 0, 0.15, 0)
frame.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
frame.BackgroundTransparency = 0.1
frame.BorderSizePixel = 0
frame.Active = true
frame.Draggable = true
frame.Parent = screenGui
local corner = Instance.new("UICorner")
corner.CornerRadius = UDim.new(0, 12)
corner.Parent = frame
-- Conteúdo Interno do Menu
local conteudo = Instance.new("Frame")
conteudo.Size = UDim2.new(1, 0, 1, -35)
conteudo.Position = UDim2.new(0, 0, 0, 35)
conteudo.BackgroundTransparency = 1
conteudo.Parent = frame
-- Título
local titulo = Instance.new("TextLabel")
titulo.Size = UDim2.new(1, -40, 0, 35)
titulo.BackgroundColor3 = Color3.fromRGB(35, 35, 35)
titulo.Text = " Aim Bot Hub"
titulo.TextColor3 = Color3.fromRGB(0, 255, 150)
titulo.Font = Enum.Font.SourceSansBold
titulo.TextSize = 18
titulo.TextXAlignment = Enum.TextXAlignment.Left
titulo.Parent = frame
local tCorner = Instance.new("UICorner")
tCorner.CornerRadius = UDim.new(0, 12)
tCorner.Parent = titulo
-- Botão Minimizar
local btnMinimizar = Instance.new("TextButton")
btnMinimizar.Size = UDim2.new(0, 35, 0, 35)
btnMinimizar.Position = UDim2.new(1, -38, 0, 0)
btnMinimizar.BackgroundColor3 = Color3.fromRGB(45, 45, 45)
btnMinimizar.Text = "_"
btnMinimizar.TextColor3 = Color3.fromRGB(255, 255, 255)
btnMinimizar.Font = Enum.Font.SourceSansBold
btnMinimizar.TextSize = 18
btnMinimizar.ZIndex = 5
btnMinimizar.Parent = frame
local mCorner = Instance.new("UICorner")
mCorner.CornerRadius = UDim.new(0, 12)
mCorner.Parent = btnMinimizar
-- CÍRCULO FOV AJUSTADO (Mais alto na tela - Mudança na Position Y de 0.5 para 0.43)
local fovCirculo = Instance.new("Frame")
fovCirculo.Name = "FovCirculo"
fovCirculo.AnchorPoint = Vector2.new(0.5, 0.5)
fovCirculo.Position = UDim2.new(0.5, 0, 0.43, 0) -- Ajustado um pouco mais para cima
fovCirculo.Size = UDim2.new(0, tamanhoFov * 2, 0, tamanhoFov * 2)
fovCirculo.BackgroundTransparency = 1
fovCirculo.Visible = false
fovCirculo.Parent = screenGui
local fovStroke = Instance.new("UIStroke")
fovStroke.Color = Color3.fromRGB(0, 255, 150)
fovStroke.Thickness = 2
fovStroke.Transparency = 0.4
fovStroke.Parent = fovCirculo
local fovRound = Instance.new("UICorner")
fovRound.CornerRadius = UDim.new(1, 0)
fovRound.Parent = fovCirculo
-- Função para criar botões
local function criarBotao(nome, texto, posicaoY)
local btn = Instance.new("TextButton")
btn.Name = nome
btn.Size = UDim2.new(0.9, 0, 0, 35)
btn.Position = UDim2.new(0.05, 0, 0, posicaoY)
btn.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
btn.Text = texto .. ": OFF"
btn.TextColor3 = Color3.fromRGB(255, 255, 255)
btn.Font = Enum.Font.SourceSansBold
btn.TextSize = 14
btn.Parent = conteudo
local bCorner = Instance.new("UICorner")
bCorner.CornerRadius = UDim.new(0, 6)
bCorner.Parent = btn
return btn
end
local btnESP = criarBotao("BtnESP", "ESP Wallhack", 10)
local btnFly = criarBotao("BtnFly", "Fly (Voo)", 55)
local btnAim = criarBotao("BtnAim", "Aim Bot", 100)
local btnGod = criarBotao("BtnGod", "God Mode 99N", 145) -- Botão estilizado para o God de 99 Noites
local labelFov = Instance.new("TextLabel")
labelFov.Size = UDim2.new(0.9, 0, 0, 20)
labelFov.Position = UDim2.new(0.05, 0, 0, 190)
labelFov.BackgroundTransparency = 1
labelFov.Text = "Fov: " .. tamanhoFov
labelFov.TextColor3 = Color3.fromRGB(200, 200, 200)
labelFov.TextSize = 14
labelFov.Parent = conteudo
local btnMenosFov = Instance.new("TextButton")
btnMenosFov.Size = UDim2.new(0.42, 0, 0, 30)
btnMenosFov.Position = UDim2.new(0.05, 0, 0, 215)
btnMenosFov.BackgroundColor3 = Color3.fromRGB(150, 50, 50)
btnMenosFov.Text = "- Fov"
btnMenosFov.TextColor3 = Color3.fromRGB(255, 255, 255)
btnMenosFov.Font = Enum.Font.SourceSansBold
btnMenosFov.Parent = conteudo
local btnMaisFov = Instance.new("TextButton")
btnMaisFov.Size = UDim2.new(0.42, 0, 0, 30)
btnMaisFov.Position = UDim2.new(0.53, 0, 0, 215)
btnMaisFov.BackgroundColor3 = Color3.fromRGB(50, 150, 50)
btnMaisFov.Text = "+ Fov"
btnMaisFov.TextColor3 = Color3.fromRGB(255, 255, 255)
btnMaisFov.Font = Enum.Font.SourceSansBold
btnMaisFov.Parent = conteudo
local cM = Instance.new("UICorner") cM.CornerRadius = UDim.new(0,6) cM.Parent = btnMenosFov
local cP = Instance.new("UICorner") cP.CornerRadius = UDim.new(0,6) cP.Parent = btnMaisFov
-------------------------------------------------------------------------------
-- LÓGICAS DO HUB
-------------------------------------------------------------------------------
local function gerenciarESP(player)
if player == localPlayer then return end
local function aplicar()
local char = player.Character or player.CharacterAdded:Wait()
task.wait(0.5)
local highlight = char:FindFirstChild("TestESP")
if funcoes.ESP then
if not highlight then
highlight = Instance.new("Highlight")
highlight.Name = "TestESP"
highlight.FillColor = Color3.fromRGB(255, 0, 0)
highlight.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop
highlight.Parent = char
end
else
if highlight then highlight:Destroy() end
end
end
aplicar()
player.CharacterAdded:Connect(aplicar)
end
-- Busca de alvo compensada para a nova altura do círculo
local function obterAlvoAimBot()
local alvoProximo = nil
local menorDistancia = tamanhoFov
-- O centro de busca matemática agora bate com a nova posição do círculo na tela (0.43)
local centroBusca = Vector2.new(camera.ViewportSize.X / 2, camera.ViewportSize.Y * 0.43)
for _, player in ipairs(Players:GetPlayers()) do
if player ~= localPlayer and player.Character and player.Character:FindFirstChild("HumanoidRootPart") then
local rootPart = player.Character.HumanoidRootPart
local posicaoTela, naTela = camera:WorldToViewportPoint(rootPart.Position)
if naTela then
local distanciaCentro = (Vector2.new(posicaoTela.X, posicaoTela.Y) - centroBusca).Magnitude
if distanciaCentro < menorDistancia then
menorDistancia = distanciaCentro
alvoProximo = rootPart
end
end
end
end
return alvoProximo
end
-------------------------------------------------------------------------------
-- LOOP PRINCIPAL (RenderStepped)
-------------------------------------------------------------------------------
RunService.RenderStepped:Connect(function()
local char = localPlayer.Character
local root = char and char:FindFirstChild("HumanoidRootPart")
local hum = char and char:FindFirstChildOfClass("Humanoid")
-- SIMULAÇÃO GOD MODE "99 NOITES" (Trava física e remoção local de colisões letais)
if funcoes.GodMode and hum and char then
hum.MaxHealth = math.huge
hum.Health = math.huge
-- Método clássico: Quebra temporariamente a detecção do pescoço ou força o estado estático
if char:FindFirstChild("Head") and char.Head:FindFirstChild("Neck") then
char.Head.Neck.DesiredAngle = 0
end
-- Remove estados de queda e dano por script de KillBricks locais
hum:SetStateEnabled(Enum.HumanoidStateType.Dead, false)
hum:SetStateEnabled(Enum.HumanoidStateType.FallingDown, false)
-- Proteção extra de campo de força local
if char:FindFirstChild("ForceFieldTest") == nil then
local ff = Instance.new("ForceField")
ff.Name = "ForceFieldTest"
ff.Visible = false -- Fica invisível estilo exploit limpo
ff.Parent = char
end
elseif hum and not funcoes.GodMode and hum.MaxHealth == math.huge then
-- Restaura as propriedades caso desligue o botão
hum.MaxHealth = 100
hum.Health = 100
hum:SetStateEnabled(Enum.HumanoidStateType.Dead, true)
if char and char:FindFirstChild("ForceFieldTest") then
char.ForceFieldTest:Destroy()
end
end
-- Fly
if funcoes.Fly and root and hum then
hum.PlatformStand = true
local direcaoMovimento = hum.MoveDirection
if direcaoMovimento.Magnitude > 0 then
root.AssemblyLinearVelocity = camera.CFrame.LookVector * velocidadeFly
else
root.AssemblyLinearVelocity = Vector3.new(0, 0.1, 0)
end
elseif hum and hum.PlatformStand and not funcoes.Fly then
hum.PlatformStand = false
end
-- Aim Bot focado no novo ponto central mais alto
if funcoes.AimBot then
local alvo = obterAlvoAimBot()
if alvo then
camera.CFrame = CFrame.new(camera.CFrame.Position, alvo.Position)
end
end
end)
-------------------------------------------------------------------------------
-- EVENTOS DE CLIQUE (TOUCH CELULAR)
-------------------------------------------------------------------------------
local function alternarCor(btn, estado, texto)
if estado then
btn.BackgroundColor3 = Color3.fromRGB(0, 180, 100)
btn.Text = texto .. ": ON"
else
btn.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
btn.Text = texto .. ": OFF"
end
end
btnMinimizar.MouseButton1Click:Connect(function()
menuMinimizado = not menuMinimizado
if menuMinimizado then
conteudo.Visible = false
frame.Size = UDim2.new(0, 180, 0, 35)
btnMinimizar.Text = "+"
else
conteudo.Visible = true
frame.Size = UDim2.new(0, 180, 0, 310)
btnMinimizar.Text = "_"
end
end)
btnESP.MouseButton1Click:Connect(function()
funcoes.ESP = not funcoes.ESP
alternarCor(btnESP, funcoes.ESP, "ESP Wallhack")
for _, p in ipairs(Players:GetPlayers()) do gerenciarESP(p) end
end)
btnFly.MouseButton1Click:Connect(function()
funcoes.Fly = not funcoes.Fly
alternarCor(btnFly, funcoes.Fly, "Fly (Voo)")
end)
btnAim.MouseButton1Click:Connect(function()
funcoes.AimBot = not funcoes.AimBot
fovCirculo.Visible = funcoes.AimBot
alternarCor(btnAim, funcoes.AimBot, "Aim Bot")
end)
btnGod.MouseButton1Click:Connect(function()
funcoes.GodMode = not funcoes.GodMode
alternarCor(btnGod, funcoes.GodMode, "God Mode 99N")
end)
btnMaisFov.MouseButton1Click:Connect(function()
if tamanhoFov < 500 then
tamanhoFov = tamanhoFov + 25
labelFov.Text = "Fov: " .. tamanhoFov
fovCirculo.Size = UDim2.new(0, tamanhoFov * 2, 0, tamanhoFov * 2)
end
end)
btnMenosFov.MouseButton1Click:Connect(function()
if tamanhoFov > 25 then
tamanhoFov = tamanhoFov - 25
labelFov.Text = "Fov: " .. tamanhoFov
fovCirculo.Size = UDim2.new(0, tamanhoFov * 2, 0, tamanhoFov * 2)
end
end)
Players.PlayerAdded:Connect(gerenciarESP)No comments yet for this script.



