
KeylessUniversal

local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local Camera = workspace.CurrentCamera
local LocalPlayer = Players.LocalPlayer
repeat task.wait() until LocalPlayer and LocalPlayer.Character
-- ===== CONFIG AIMBOT =====
local AimbotEnabled = false
local MaxDistance = 250
local AimPart = "Head"
local FovRadius = 0
-- ===== CONFIG ESP =====
local EspEnabled = false
local EspObjects = {}
-- ===== CORES TEMA =====
local C = {
bg = Color3.fromRGB(8, 12, 8),
bg2 = Color3.fromRGB(12, 20, 12),
bg3 = Color3.fromRGB(18, 30, 18),
green = Color3.fromRGB(0, 255, 100),
greenD = Color3.fromRGB(0, 180, 60),
greenD2 = Color3.fromRGB(0, 100, 30),
greenG = Color3.fromRGB(0, 255, 120),
text = Color3.fromRGB(180, 255, 180),
textD = Color3.fromRGB(60, 120, 60),
red = Color3.fromRGB(255, 40, 40),
}
-- ===== TWEEN =====
local function tw(obj, props, dur, ease)
local ti = TweenInfo.new(dur or 0.3, ease or Enum.EasingStyle.Quad, Enum.EasingDirection.Out)
local t = TweenService:Create(obj, ti, props)
t:Play()
return t
end
-- ===== MOBILE DETECT =====
local isMobile = UserInputService.TouchEnabled and not UserInputService.KeyboardEnabled
local dw = isMobile and 220 or 190
local dh = isMobile and 270 or 240
-- ================= GUI PRINCIPAL =================
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "AimbotGUI"
ScreenGui.ResetOnSpawn = false
ScreenGui.Parent = game.CoreGui
ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
local Frame = Instance.new("Frame", ScreenGui)
Frame.Size = UDim2.new(0, dw, 0, dh)
Frame.Position = UDim2.new(0.5, -dw/2, 0.5, -dh/2)
Frame.BackgroundColor3 = C.bg
Frame.BorderSizePixel = 0
Frame.ClipsDescendants = true
Frame.Active = true
Instance.new("UICorner", Frame).CornerRadius = UDim.new(0, 16)
local FrameStroke = Instance.new("UIStroke", Frame)
FrameStroke.Thickness = 1.5
FrameStroke.Color = C.green
FrameStroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border
-- ===== TOP BAR =====
local TopBar = Instance.new("Frame", Frame)
TopBar.Size = UDim2.new(1, 0, 0, 36)
TopBar.BackgroundColor3 = C.bg2
TopBar.BorderSizePixel = 0
Instance.new("UICorner", TopBar).CornerRadius = UDim.new(0, 16)
local Div = Instance.new("Frame", TopBar)
Div.Size = UDim2.new(1, -20, 0, 1)
Div.Position = UDim2.new(0, 10, 1, -1)
Div.BackgroundColor3 = C.greenD2
Div.BorderSizePixel = 0
local Title = Instance.new("TextLabel", TopBar)
Title.Size = UDim2.new(1, -50, 1, 0)
Title.Position = UDim2.new(0, 12, 0, 0)
Title.BackgroundTransparency = 1
Title.Text = "0101101"
Title.Font = Enum.Font.Code
Title.TextSize = isMobile and 14 or 13
Title.TextColor3 = C.green
Title.TextXAlignment = Enum.TextXAlignment.Left
-- ===== EFEITO BINÁRIO NO TÍTULO =====
spawn(function()
while true do
task.wait(0.15)
local str = ""
for i = 1, 12 do
if math.random() > 0.35 then
str = str .. math.random(0, 1)
else
str = str .. math.random(0, 1)
end
end
Title.Text = "> " .. str
end
end)
-- ===== BOTÃO MINIMIZAR =====
local MinBtn = Instance.new("TextButton", TopBar)
MinBtn.Size = UDim2.new(0, 26, 0, 26)
MinBtn.Position = UDim2.new(1, -32, 0, 5)
MinBtn.Text = "X"
MinBtn.Font = Enum.Font.GothamBold
MinBtn.TextSize = 18
MinBtn.TextColor3 = C.green
MinBtn.BackgroundColor3 = C.bg3
MinBtn.BackgroundTransparency = 0.3
MinBtn.BorderSizePixel = 0
MinBtn.AutoButtonColor = false
Instance.new("UICorner", MinBtn).CornerRadius = UDim.new(1, 0)
-- ===== BOLA MINIMIZADA =====
local Ball = Instance.new("TextButton", ScreenGui)
Ball.Size = UDim2.new(0, 50, 0, 50)
Ball.Position = Frame.Position
Ball.BackgroundColor3 = C.bg2
Ball.BorderSizePixel = 0
Ball.Visible = false
Ball.Text = ""
Ball.AutoButtonColor = false
Ball.ZIndex = 999
Instance.new("UICorner", Ball).CornerRadius = UDim.new(1, 0)
local BallStroke = Instance.new("UIStroke", Ball)
BallStroke.Thickness = 2
BallStroke.Color = C.green
BallStroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border
local BallLabel = Instance.new("TextLabel", Ball)
BallLabel.Size = UDim2.new(1, 0, 1, 0)
BallLabel.BackgroundTransparency = 1
BallLabel.Text = "Z"
BallLabel.Font = Enum.Font.GothamBold
BallLabel.TextSize = 24
BallLabel.TextColor3 = C.green
BallLabel.TextXAlignment = Enum.TextXAlignment.Center
-- ================= CONTEÚDO =================
local Content = Instance.new("Frame", Frame)
Content.Size = UDim2.new(1, -12, 1, -44)
Content.Position = UDim2.new(0, 6, 0, 40)
Content.BackgroundTransparency = 1
Content.BorderSizePixel = 0
local Layout = Instance.new("UIListLayout", Content)
Layout.Padding = UDim.new(0, 8)
Layout.HorizontalAlignment = Enum.HorizontalAlignment.Center
Layout.SortOrder = Enum.SortOrder.LayoutOrder
-- ===== HELPER BOTÃO =====
local function makeBtn(text, color, order, fn)
local b = Instance.new("TextButton")
b.Size = UDim2.new(1, -4, 0, isMobile and 38 or 32)
b.BackgroundColor3 = color
b.BackgroundTransparency = 0.15
b.BorderSizePixel = 0
b.AutoButtonColor = false
b.Text = ""
b.LayoutOrder = order or 1
b.Parent = Content
Instance.new("UICorner", b).CornerRadius = UDim.new(0, 10)
local st = Instance.new("UIStroke", b)
st.Thickness = 1
st.Color = C.green
st.Transparency = 0.5
st.ApplyStrokeMode = Enum.ApplyStrokeMode.Border
local l = Instance.new("TextLabel", b)
l.Size = UDim2.new(1, 0, 1, 0)
l.BackgroundTransparency = 1
l.Text = text
l.Font = Enum.Font.Code
l.TextSize = isMobile and 13 or 12
l.TextColor3 = C.text
l.TextXAlignment = Enum.TextXAlignment.Center
b.MouseButton1Click:Connect(function()
if fn then fn(b, l) end
end)
return b, l
end
-- ===== HELPER SLIDER =====
local function makeSlider(label, init, mn, mx, order, fn)
local con = Instance.new("Frame", Content)
con.Size = UDim2.new(1, -4, 0, isMobile and 46 or 38)
con.BackgroundColor3 = C.bg3
con.BackgroundTransparency = 0.2
con.BorderSizePixel = 0
con.LayoutOrder = order or 1
Instance.new("UICorner", con).CornerRadius = UDim.new(0, 10)
local sst = Instance.new("UIStroke", con)
sst.Thickness = 1
sst.Color = C.green
sst.Transparency = 0.6
sst.ApplyStrokeMode = Enum.ApplyStrokeMode.Border
local sl = Instance.new("TextLabel", con)
sl.Size = UDim2.new(1, -16, 0, 16)
sl.Position = UDim2.new(0, 8, 0, 3)
sl.BackgroundTransparency = 1
sl.Text = label .. ": " .. init
sl.Font = Enum.Font.Code
sl.TextSize = isMobile and 11 or 10
sl.TextColor3 = C.textD
sl.TextXAlignment = Enum.TextXAlignment.Left
local sbg = Instance.new("Frame", con)
sbg.Size = UDim2.new(1, -16, 0, 6)
sbg.Position = UDim2.new(0, 8, 0, isMobile and 28 or 22)
sbg.BackgroundColor3 = C.bg
sbg.BorderSizePixel = 0
Instance.new("UICorner", sbg).CornerRadius = UDim.new(1, 0)
local sf = Instance.new("Frame", sbg)
local fa = (mx - mn) > 0 and (init - mn) / (mx - mn) or 0
sf.Size = UDim2.new(fa, 0, 1, 0)
sf.BackgroundColor3 = C.green
sf.BorderSizePixel = 0
Instance.new("UICorner", sf).CornerRadius = UDim.new(1, 0)
local knob = Instance.new("Frame", con)
knob.Size = UDim2.new(0, 14, 0, 14)
knob.Position = UDim2.new(fa, -7, 0, isMobile and 24 or 18)
knob.BackgroundColor3 = C.greenG
knob.BorderSizePixel = 0
knob.ZIndex = 5
Instance.new("UICorner", knob).CornerRadius = UDim.new(1, 0)
local ik = Instance.new("Frame", knob)
ik.Size = UDim2.new(0, 6, 0, 6)
ik.Position = UDim2.new(0.5, -3, 0.5, -3)
ik.BackgroundColor3 = C.bg
ik.BorderSizePixel = 0
Instance.new("UICorner", ik).CornerRadius = UDim.new(1, 0)
local val = init
local sliderDragging = false
local function upd(mx)
local ap = sbg.AbsolutePosition.X
local as = sbg.AbsoluteSize.X
if as <= 0 then return end
local r = math.clamp((mx - ap) / as, 0, 1)
val = math.floor(r * (mx - mn) + mn)
val = math.clamp(val, mn, mx)
sf.Size = UDim2.new(r, 0, 1, 0)
sl.Text = label .. ": " .. val
knob.Position = UDim2.new(r, -7, 0, isMobile and 24 or 18)
if fn then fn(val) end
end
con.InputBegan:Connect(function(inp)
if inp.UserInputType == Enum.UserInputType.MouseButton1 or inp.UserInputType == Enum.UserInputType.Touch then
sliderDragging = true
upd(inp.Position.X)
end
end)
knob.InputBegan:Connect(function(inp)
if inp.UserInputType == Enum.UserInputType.MouseButton1 or inp.UserInputType == Enum.UserInputType.Touch then
sliderDragging = true
end
end)
UserInputService.InputChanged:Connect(function(inp)
if sliderDragging and (inp.UserInputType == Enum.UserInputType.MouseMovement or inp.UserInputType == Enum.UserInputType.Touch) then
upd(UserInputService:GetMouseLocation().X)
end
end)
UserInputService.InputEnded:Connect(function(inp)
if sliderDragging and (inp.UserInputType == Enum.UserInputType.MouseButton1 or inp.UserInputType == Enum.UserInputType.Touch) then
sliderDragging = false
end
end)
return con
end
-- ===== CRIAR BOTÕES =====
makeBtn("[ AIMBOT ] OFF", C.red, 1, function(b, l)
AimbotEnabled = not AimbotEnabled
l.Text = "[ AIMBOT ] " .. (AimbotEnabled and "ON" or "OFF")
local cor = AimbotEnabled and C.greenD or C.red
tw(b, {BackgroundColor3 = cor}, 0.3)
end)
makeBtn("[ TARGET ] Head", C.greenD2, 2, function(b, l)
if AimPart == "Head" then
AimPart = "HumanoidRootPart"
l.Text = "[ TARGET ] Torso"
else
AimPart = "Head"
l.Text = "[ TARGET ] Head"
end
end)
-- Slider FOV: 0 a 100 COM TRAVA ABSOLUTA
makeSlider("FOV", 0, 0, 100, 3, function(v)
FovRadius = math.min(v, 100)
end)
makeBtn("[ ESP ] OFF", C.red, 4, function(b, l)
EspEnabled = not EspEnabled
l.Text = "[ ESP ] " .. (EspEnabled and "ON" or "OFF")
local cor = EspEnabled and C.greenD or C.red
tw(b, {BackgroundColor3 = cor}, 0.3)
for _, obj in pairs(EspObjects) do
if obj.box then obj.box.Visible = EspEnabled end
if obj.line then obj.line.Visible = EspEnabled end
end
end)
-- ===== CRÉDITO =====
local Credit = Instance.new("TextLabel", Frame)
Credit.Size = UDim2.new(1, 0, 0, 26)
Credit.Position = UDim2.new(0, 0, 1, -26)
Credit.BackgroundColor3 = C.bg2
Credit.BackgroundTransparency = 0.5
Credit.BorderSizePixel = 0
Credit.Text = "Zelan"
Credit.Font = Enum.Font.Code
Credit.TextSize = 11
Credit.TextColor3 = C.textD
Credit.TextXAlignment = Enum.TextXAlignment.Center
Instance.new("UICorner", Credit).CornerRadius = UDim.new(0, 16)
-- ===== DRAG SYSTEM =====
local dragging = false
local dragObj = nil
local dragOffset = Vector2.new(0, 0)
local dragStartPos = UDim2.new(0, 0, 0, 0)
TopBar.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
dragging = true
dragObj = Frame
dragOffset = input.Position
dragStartPos = Frame.Position
end
end)
Ball.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
dragging = true
dragObj = Ball
dragOffset = input.Position
dragStartPos = Ball.Position
end
end)
UserInputService.InputChanged:Connect(function(input)
if dragging and dragObj and (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) then
local delta = input.Position - dragOffset
dragObj.Position = UDim2.new(
dragStartPos.X.Scale,
dragStartPos.X.Offset + delta.X,
dragStartPos.Y.Scale,
dragStartPos.Y.Offset + delta.Y
)
end
end)
UserInputService.InputEnded:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
dragging = false
dragObj = nil
end
end)
-- ===== MINIMIZAR =====
local minimized = false
local function minimize()
minimized = true
local fp = Frame.Position
Frame.Visible = false
Ball.Position = fp
Ball.Size = UDim2.new(0, 50, 0, 50)
Ball.Visible = true
MinBtn.Text = "X"
end
local function restore()
minimized = false
local bp = Ball.Position
Ball.Visible = false
Frame.Position = bp
Frame.Visible = true
MinBtn.Text = "X"
end
MinBtn.MouseButton1Click:Connect(function()
if not minimized then
minimize()
else
restore()
end
end)
Ball.MouseButton1Click:Connect(function()
if minimized then
restore()
end
end)
-- ====================================================================
-- ===== FOV CIRCLE - GUI (Funciona em qualquer executor) =====
-- ====================================================================
-- Cria um ScreenGui separado pro círculo
local FovGui = Instance.new("ScreenGui")
FovGui.Name = "FovCircleGUI"
FovGui.ResetOnSpawn = false
FovGui.Parent = game.CoreGui
FovGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
FovGui.IgnoreGuiInset = true
-- Cria o círculo (um frame redondo)
local FovFrame = Instance.new("Frame")
FovFrame.Size = UDim2.new(0, 0, 0, 0)
FovFrame.Position = UDim2.new(0.5, 0, 0.5, 0)
FovFrame.AnchorPoint = Vector2.new(0.5, 0.5)
FovFrame.BackgroundTransparency = 1
FovFrame.BorderSizePixel = 0
FovFrame.Parent = FovGui
FovFrame.Visible = false
-- Borda do círculo
local FovStroke = Instance.new("UIStroke", FovFrame)
FovStroke.Thickness = 2
FovStroke.Color = C.green
FovStroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border
-- Cantos arredondados pra fazer o círculo
local FovCorner = Instance.new("UICorner", FovFrame)
FovCorner.CornerRadius = UDim.new(1, 0)
-- ===== ESP =====
local function createEsp(plr)
if plr == LocalPlayer then return end
local box = Drawing.new("Square")
box.Thickness = 1.5
box.Filled = false
box.Visible = false
local line = Drawing.new("Line")
line.Thickness = 1.5
line.Visible = false
EspObjects[plr] = {box = box, line = line}
end
Players.PlayerAdded:Connect(createEsp)
Players.PlayerRemoving:Connect(function(plr)
if EspObjects[plr] then
if EspObjects[plr].box then EspObjects[plr].box:Remove() end
if EspObjects[plr].line then EspObjects[plr].line:Remove() end
EspObjects[plr] = nil
end
end)
for _, p in pairs(Players:GetPlayers()) do
createEsp(p)
end
-- ===== FUNÇÃO AUXILIAR: PEGAR A PARTE DO ESP =====
local function getEspPart(char)
if not char then return nil end
if AimPart == "Head" then
return char:FindFirstChild("Head")
else
return char:FindFirstChild("HumanoidRootPart") or char:FindFirstChild("Head")
end
end
-- ===== LOOP PRINCIPAL =====
RunService.RenderStepped:Connect(function()
-- ATUALIZA O FOV CIRCLE
if EspEnabled and FovRadius > 0 then
local size = FovRadius * 2
FovFrame.Size = UDim2.new(0, size, 0, size)
FovFrame.Visible = true
else
FovFrame.Visible = false
end
-- ESP
if EspEnabled then
for plr, obj in pairs(EspObjects) do
local char = plr.Character
local hum = char and char:FindFirstChildOfClass("Humanoid")
local espPart = getEspPart(char)
if espPart and hum and hum.Health > 0 then
local pos, onScreen = Camera:WorldToViewportPoint(espPart.Position)
if onScreen then
-- Box no centro da parte (Head ou Torso)
local boxSize = 10
obj.box.Size = Vector2.new(boxSize, boxSize)
obj.box.Position = Vector2.new(pos.X - boxSize/2, pos.Y - boxSize/2)
obj.box.Color = C.green
obj.box.Visible = true
-- Linha do centro da tela até o player
obj.line.From = Vector2.new(Camera.ViewportSize.X/2, Camera.ViewportSize.Y)
obj.line.To = Vector2.new(pos.X, pos.Y)
obj.line.Color = C.green
obj.line.Visible = true
else
obj.box.Visible = false
obj.line.Visible = false
end
else
obj.box.Visible = false
obj.line.Visible = false
end
end
else
for _, obj in pairs(EspObjects) do
if obj.box then obj.box.Visible = false end
if obj.line then obj.line.Visible = false end
end
end
end)
-- ===== AIMBOT =====
local function isAlive(char)
local hum = char and char:FindFirstChildOfClass("Humanoid")
return hum and hum.Health > 0
end
local function visible(pos)
local origin = Camera.CFrame.Position
local dir = (pos - origin).Unit * (pos - origin).Magnitude
local params = RaycastParams.new()
params.FilterDescendantsInstances = {LocalPlayer.Character}
params.FilterType = Enum.RaycastFilterType.Blacklist
local result = workspace:Raycast(origin, dir, params)
if not result then return true end
return (result.Position - pos).Magnitude < 3
end
local function getBestTarget()
local best, bestDot = nil, -1
local screenCenter = Vector2.new(Camera.ViewportSize.X/2, Camera.ViewportSize.Y/2)
for _, plr in pairs(Players:GetPlayers()) do
if plr ~= LocalPlayer and plr.Character then
local part = plr.Character:FindFirstChild(AimPart) or plr.Character:FindFirstChild("Head")
if part and isAlive(plr.Character) then
local dist = (part.Position - Camera.CFrame.Position).Magnitude
if dist <= MaxDistance and visible(part.Position) then
local screenPos, onScreen = Camera:WorldToViewportPoint(part.Position)
if onScreen then
local screenVec = Vector2.new(screenPos.X, screenPos.Y)
local distFromCenter = (screenVec - screenCenter).Magnitude
if distFromCenter <= math.min(FovRadius, 100) then
local dir = (part.Position - Camera.CFrame.Position).Unit
local dot = Camera.CFrame.LookVector:Dot(dir)
if dot > bestDot then
bestDot = dot
best = part
end
end
end
end
end
end
end
return best
end
RunService.RenderStepped:Connect(function()
if not AimbotEnabled then return end
local target = getBestTarget()
if target then
Camera.CFrame = CFrame.new(Camera.CFrame.Position, target.Position)
end
end)No comments yet for this script.



