
KeylessUniversal

--[[
ROTEIRO: Uriel Xiter Universal
VERSÃO: Final (Otimizada e Corrigida + Teclas C/V)
CHAVE: URIEL-XITER-OFICIAL
]]
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local LocalPlayer = Players.LocalPlayer
local Camera = workspace.CurrentCamera
local IsMobile = UserInputService.TouchEnabled
-- Configurações Globais
local Settings = {
AimbotEnabled = false,
WallCheck = false,
TeamCheck = false,
TargetMode = "Head", -- "Head" ou "Torso"
ShowFOV = false,
FOVRadius = 100,
Smoothness = 0.5,
ESPEnabled = false,
ESPBox = false,
ESPLine = false,
ESPName = false,
ESPDist = false,
ESPColor = Color3.fromRGB(255, 0, 0),
MenuOpen = true
}
local DiscordLink = "https://discord.gg/WSc2GqetE"
local RealKey = "URIEL-XITER-OFICIAL"
-- Cores
local Colors = {
Black = Color3.fromRGB(10, 10, 10),
Dark = Color3.fromRGB(18, 18, 18),
Red = Color3.fromRGB(220, 0, 0),
White = Color3.fromRGB(255, 255, 255),
Grey = Color3.fromRGB(50, 50, 50)
}
-- ==========================================
-- 1. FUNÇÕES AUXILIARES
-- ==========================================
local function IsVisible(targetPart)
if not Settings.WallCheck then return true end
local Origin = Camera.CFrame.Position
local Direction = targetPart.Position - Origin
local RayParams = RaycastParams.new()
RayParams.FilterType = Enum.RaycastFilterType.Exclude
RayParams.FilterDescendantsInstances = {LocalPlayer.Character, Camera}
RayParams.IgnoreWater = true
local Result = workspace:Raycast(Origin, Direction, RayParams)
if Result and Result.Instance:IsDescendantOf(targetPart.Parent) then
return true
end
return false
end
local function CreateStroke(parent, color, thickness)
local stroke = Instance.new("UIStroke", parent)
stroke.Color = color
stroke.Thickness = thickness
stroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border
return stroke
end
local function CreateCorner(parent, radius)
local corner = Instance.new("UICorner", parent)
corner.CornerRadius = UDim.new(0, radius)
return corner
end
-- ==========================================
-- 2. SISTEMA DE CHAVES
-- ==========================================
local KeyGui = Instance.new("ScreenGui")
KeyGui.Name = "UrielKeySystem"
KeyGui.Parent = LocalPlayer:WaitForChild("PlayerGui")
KeyGui.ResetOnSpawn = false
KeyGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
local LoadMainScript -- Declaração antecipada
local function LoadKeySystem()
local Blur = Instance.new("BlurEffect", Camera); Blur.Size = 20
local MainBox = Instance.new("Frame", KeyGui)
MainBox.Size = UDim2.new(0, 320, 0, 220)
MainBox.Position = UDim2.new(0.5, 0, 0.5, 0)
MainBox.AnchorPoint = Vector2.new(0.5, 0.5)
MainBox.BackgroundColor3 = Colors.Black
CreateCorner(MainBox, 10); CreateStroke(MainBox, Colors.Red, 2)
local Title = Instance.new("TextLabel", MainBox)
Title.Size = UDim2.new(1, 0, 0.25, 0)
Title.BackgroundTransparency = 1
Title.Text = "URIEL XITER | CHAVE"
Title.Font = Enum.Font.GothamBlack
Title.TextColor3 = Colors.Red
Title.TextSize = 20
local KeyInput = Instance.new("TextBox", MainBox)
KeyInput.Size = UDim2.new(0.8, 0, 0.2, 0)
KeyInput.Position = UDim2.new(0.1, 0, 0.35, 0)
KeyInput.BackgroundColor3 = Colors.Dark
KeyInput.TextColor3 = Colors.White
KeyInput.PlaceholderText = "Cole a Key aqui..."
KeyInput.Text = ""
CreateCorner(KeyInput, 6)
local VerifyBtn = Instance.new("TextButton", MainBox)
VerifyBtn.Size = UDim2.new(0.35, 0, 0.15, 0)
VerifyBtn.Position = UDim2.new(0.55, 0, 0.65, 0)
VerifyBtn.BackgroundColor3 = Colors.Red
VerifyBtn.Text = "ENTRAR"
VerifyBtn.TextColor3 = Colors.White
VerifyBtn.Font = Enum.Font.GothamBold
CreateCorner(VerifyBtn, 6)
local DiscordBtn = Instance.new("TextButton", MainBox)
DiscordBtn.Size = UDim2.new(0.35, 0, 0.15, 0)
DiscordBtn.Position = UDim2.new(0.1, 0, 0.65, 0)
DiscordBtn.BackgroundColor3 = Color3.fromRGB(88, 101, 242)
DiscordBtn.Text = "Discord"
DiscordBtn.TextColor3 = Colors.White
DiscordBtn.Font = Enum.Font.GothamBold
CreateCorner(DiscordBtn, 6)
local Status = Instance.new("TextLabel", MainBox)
Status.Size = UDim2.new(1, 0, 0.15, 0)
Status.Position = UDim2.new(0, 0, 0.85, 0)
Status.BackgroundTransparency = 1
Status.Text = ""
Status.Font = Enum.Font.Gotham
Status.TextColor3 = Colors.White
Status.TextSize = 12
DiscordBtn.MouseButton1Click:Connect(function()
if setclipboard then setclipboard(DiscordLink) end
Status.Text = "Link copiado!"
end)
VerifyBtn.MouseButton1Click:Connect(function()
if KeyInput.Text:gsub(" ", "") == RealKey then
Status.TextColor3 = Color3.new(0,1,0); Status.Text = "Sucesso!"; task.wait(1)
KeyGui:Destroy(); Blur:Destroy()
LoadMainScript() -- Carregar o script principal
else
Status.TextColor3 = Colors.Red; Status.Text = "Chave incorreta!"
end
end)
end
-- ==========================================
-- 3. ROTEIRO PRINCIPAL
-- ==========================================
LoadMainScript = function()
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "UrielMenu"
ScreenGui.Parent = LocalPlayer:WaitForChild("PlayerGui")
ScreenGui.ResetOnSpawn = false
-- [MODIFICADO] O Botão Redondo (ToggleBtn) foi removido aqui.
local MainFrame = Instance.new("Frame", ScreenGui)
MainFrame.BackgroundColor3 = Colors.Black
MainFrame.Size = IsMobile and UDim2.new(0, 320, 0, 360) or UDim2.new(0, 360, 0, 420)
MainFrame.Position = UDim2.new(0.5, 0, 0.5, 0); MainFrame.AnchorPoint = Vector2.new(0.5, 0.5)
MainFrame.Visible = true -- Começa visível
CreateStroke(MainFrame, Colors.Red, 2)
-- [NOVO] Lógica das Teclas C e V
UserInputService.InputBegan:Connect(function(input, gameProcessed)
if gameProcessed then return end -- Ignora se estiver digitando no chat
if input.KeyCode == Enum.KeyCode.C then
MainFrame.Visible = true -- Abre com C
elseif input.KeyCode == Enum.KeyCode.V then
MainFrame.Visible = false -- Fecha com V
end
end)
local Header = Instance.new("Frame", MainFrame);
Header.BackgroundColor3 = Colors.Red; Header.Size = UDim2.new(1,0,0,40)
local HTxt = Instance.new("TextLabel", Header);
HTxt.BackgroundTransparency=1; HTxt.Size=UDim2.new(1,-40,1,0); HTxt.Position=UDim2.new(0,10,0,0);
HTxt.Text="URIEL XITER"; HTxt.TextColor3=Colors.White; HTxt.Font=Enum.Font.GothamBlack; HTxt.TextSize=16; HTxt.TextXAlignment=Enum.TextXAlignment.Left
local Close = Instance.new("TextButton", Header);
Close.BackgroundTransparency=1; Close.Position=UDim2.new(1,-40,0,0); Close.Size=UDim2.new(0,40,0,40);
Close.Text="X"; Close.TextColor3=Colors.White; Close.Font=Enum.Font.GothamBold; Close.TextSize=18
-- Lógica de arrastar a Janela Principal
local dragging, dragInput, dragStart, startPos
Header.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
dragging = true; dragStart = input.Position; startPos = MainFrame.Position
end
end)
Header.InputChanged:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then
dragInput = input
end
end)
UserInputService.InputChanged:Connect(function(input)
if input == dragInput and dragging 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)
Header.InputEnded:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
dragging = false
end
end)
Close.MouseButton1Click:Connect(function()
MainFrame.Visible = false
end)
local TabCont = Instance.new("Frame", MainFrame);
TabCont.BackgroundColor3 = Colors.Dark; TabCont.Position=UDim2.new(0,0,0,40); TabCont.Size=UDim2.new(1,0,0,35)
local function NewTab(text, order)
local B = Instance.new("TextButton", TabCont);
B.BackgroundTransparency=1; B.Size=UDim2.new(0.33,0,1,0); B.Position=UDim2.new((order-1)*0.33,0,0,0);
B.Text=text; B.TextColor3=Colors.White; B.Font=Enum.Font.GothamBold; B.TextSize=12
local L = Instance.new("Frame", B);
L.BackgroundColor3=Colors.Red; L.Size=UDim2.new(1,0,0.1,0); L.Position=UDim2.new(0,0,0.9,0); L.Visible=false
return B, L
end
local Tab1, Line1 = NewTab("AIMBOT", 1);
local Tab2, Line2 = NewTab("ESP", 2);
local Tab3, Line3 = NewTab("INFO", 3);
Line1.Visible = true
local PageHold = Instance.new("Frame", MainFrame);
PageHold.BackgroundTransparency=1; PageHold.Position=UDim2.new(0,0,0,75); PageHold.Size=UDim2.new(1,0,1,-75)
local P1 = Instance.new("ScrollingFrame", PageHold);
P1.BackgroundTransparency=1; P1.Size=UDim2.new(1,0,1,0); P1.ScrollBarThickness=2
local P2 = Instance.new("ScrollingFrame", PageHold);
P2.BackgroundTransparency=1; P2.Size=UDim2.new(1,0,1,0); P2.ScrollBarThickness=2; P2.Visible=false
local P3 = Instance.new("Frame", PageHold);
P3.BackgroundTransparency=1; P3.Size=UDim2.new(1,0,1,0); P3.Visible=false
Tab1.MouseButton1Click:Connect(function()
P1.Visible=true; P2.Visible=false; P3.Visible=false; Line1.Visible=true; Line2.Visible=false; Line3.Visible=false
end)
Tab2.MouseButton1Click:Connect(function()
P1.Visible=false; P2.Visible=true; P3.Visible=false; Line1.Visible=false; Line2.Visible=true; Line3.Visible=false
end)
Tab3.MouseButton1Click:Connect(function()
P1.Visible=false; P2.Visible=false; P3.Visible=true; Line1.Visible=false; Line2.Visible=false; Line3.Visible=true
end)
local function AddUI(p)
local l=Instance.new("UIListLayout", p); l.Padding=UDim.new(0,8); l.HorizontalAlignment=Enum.HorizontalAlignment.Center; l.SortOrder=Enum.SortOrder.LayoutOrder;
local pd=Instance.new("UIPadding", p); pd.PaddingTop=UDim.new(0,10)
end
AddUI(P1); AddUI(P2)
local function Toggle(p, t, def, cb)
local f=Instance.new("Frame",p); f.BackgroundColor3=Colors.Dark; f.Size=UDim2.new(0.9,0,0,40); CreateCorner(f,6)
local l=Instance.new("TextLabel",f); l.BackgroundTransparency=1; l.Position=UDim2.new(0,10,0,0); l.Size=UDim2.new(0.7,0,1,0);
l.Text=t; l.TextColor3=Colors.White; l.Font=Enum.Font.GothamSemibold; l.TextSize=12; l.TextXAlignment=Enum.TextXAlignment.Left
local b=Instance.new("TextButton",f); b.BackgroundColor3=def and Colors.Red or Colors.Grey; b.Position=UDim2.new(0.85,-5,0.5,-10); b.Size=UDim2.new(0,20,0,20);
b.Text=""; CreateCorner(b,4)
b.MouseButton1Click:Connect(function()
def = not def; b.BackgroundColor3=def and Colors.Red or Colors.Grey; cb(def)
end)
end
local function Slider(p, t, min, max, def, cb)
local f=Instance.new("Frame",p); f.BackgroundColor3=Colors.Dark; f.Size=UDim2.new(0.9,0,0,50); CreateCorner(f,6)
local l=Instance.new("TextLabel",f); l.BackgroundTransparency=1; l.Position=UDim2.new(0,10,0,5); l.Size=UDim2.new(1,0,0,15);
l.Text=t..": "..def; l.TextColor3=Colors.White; l.Font=Enum.Font.GothamSemibold; l.TextSize=12; l.TextXAlignment=Enum.TextXAlignment.Left
local bg=Instance.new("Frame",f); bg.BackgroundColor3=Colors.Black; bg.Position=UDim2.new(0,10,0,30); bg.Size=UDim2.new(0.9,0,0,6); CreateCorner(bg,3)
local fil=Instance.new("Frame",bg); fil.BackgroundColor3=Colors.Red; fil.Size=UDim2.new((def-min)/(max-min),0,1,0); CreateCorner(fil,3)
local btn=Instance.new("TextButton",f)
btn.BackgroundTransparency=1
btn.Position=UDim2.new(0,0,0,25)
btn.Size=UDim2.new(1,0,0.5,0)
btn.Text=""
local draggingSlider = false
local function UpdateSlide(input)
local pos = input.Position.X
local rel = math.clamp((pos - bg.AbsolutePosition.X) / bg.AbsoluteSize.X, 0, 1)
fil.Size = UDim2.new(rel, 0, 1, 0)
local val = math.floor(min + (max-min)*rel)
l.Text = t .. ": " .. val
cb(val)
end
btn.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
draggingSlider = true
UpdateSlide(input)
end
end)
btn.InputEnded:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
draggingSlider = false
end
end)
UserInputService.InputChanged:Connect(function(input)
if draggingSlider and (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) then
UpdateSlide(input)
end
end)
end
-- Interface do usuário
-- AIMBOT
Toggle(P1, "Ativar Aimbot", false, function(v) Settings.AimbotEnabled = v end)
Toggle(P1, "WallCheck (Parede)", false, function(v) Settings.WallCheck = v end)
Toggle(P1, "TeamCheck", false, function(v) Settings.TeamCheck = v end)
Toggle(P1, "Mostrar FOV", false, function(v) Settings.ShowFOV = v end)
Slider(P1, "Raio FOV", 20, 500, 100, function(v) Settings.FOVRadius = v end)
Slider(P1, "Velocidade Mira", 1, 10, 5, function(v) Settings.Smoothness = v/10 end)
local MBtn = Instance.new("TextButton",P1); MBtn.BackgroundColor3=Colors.Dark; MBtn.Size=UDim2.new(0.9,0,0,35);
MBtn.Text="Alvo: CABEÇA"; MBtn.TextColor3=Colors.Red; MBtn.Font=Enum.Font.GothamBold; MBtn.TextSize=12; CreateCorner(MBtn,6)
MBtn.MouseButton1Click:Connect(function()
if Settings.TargetMode == "Head" then
Settings.TargetMode="Torso"; MBtn.Text="Alvo: TRONCO"
else
Settings.TargetMode="Head"; MBtn.Text="Alvo: CABEÇA"
end
end)
-- ESP UI
Toggle(P2, "Ativar ESP (Master)", false, function(v) Settings.ESPEnabled = v end)
Toggle(P2, "ESP Box (Caixa)", false, function(v) Settings.ESPBox = v end)
Toggle(P2, "ESP Nome", false, function(v) Settings.ESPName = v end)
Toggle(P2, "Distância ESP", false, function(v) Settings.ESPDist = v end)
Toggle(P2, "ESP Linha (Tracer)", false, function(v) Settings.ESPLine = v end)
local InfoL = Instance.new("TextLabel",P3); InfoL.BackgroundTransparency=1; InfoL.Size=UDim2.new(1,0,1,0);
InfoL.Text="Uriel xiter\n\nSliders Fixados\nESP Bug Corrigido (Sair)\nOtimizado\n\n[C] ABRIR MENU\n[V] FECHAR MENU"; InfoL.TextColor3=Colors.White; InfoL.Font=Enum.Font.Gotham; InfoL.TextSize=14
-- ==========================================
-- 4. NÚCLEO LÓGICO
-- ==========================================
local FOVCircle = nil
local DrawingLibAvailable = false
pcall(function()
if Drawing then
FOVCircle = Drawing.new("Circle")
FOVCircle.Visible = false; FOVCircle.Thickness = 1.5; FOVCircle.Transparency = 1; FOVCircle.Color = Settings.ESPColor;
FOVCircle.NumSides = 32; FOVCircle.Filled = false
DrawingLibAvailable = true
end
end)
local Tracers = {}
local ESPText = {}
-- CORREÇÃO PARA REMOVER LINHAS QUANDO O JOGADOR SAI
Players.PlayerRemoving:Connect(function(player)
if Tracers[player.Name] then
Tracers[player.Name]:Remove()
Tracers[player.Name] = nil
end
if ESPText[player.Name] then
ESPText[player.Name]:Remove()
ESPText[player.Name] = nil
end
end)
local function UpdateBox(char, state)
local h = char:FindFirstChild("U_Highlight")
if not char then
if h then h:Destroy() end
return
end
if not h and state then
h = Instance.new("Highlight", char)
h.Name = "U_Highlight"
h.FillTransparency = 0.6
h.OutlineTransparency = 0
end
if h then
if not state then
h:Destroy()
else
h.FillColor = Settings.ESPColor
h.OutlineColor = Settings.ESPColor
end
end
end
RunService.RenderStepped:Connect(function()
if FOVCircle then
FOVCircle.Visible = Settings.ShowFOV
FOVCircle.Radius = Settings.FOVRadius
FOVCircle.Position = Vector2.new(Camera.ViewportSize.X/2, Camera.ViewportSize.Y/2)
FOVCircle.Color = Settings.ESPColor
end
local BestTarget = nil
local MinDist = Settings.FOVRadius
local Center = Vector2.new(Camera.ViewportSize.X/2, Camera.ViewportSize.Y/2)
local MyPos = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") and LocalPlayer.Character.HumanoidRootPart.Position or Vector3.new(0,0,0)
for _, v in pairs(Players:GetPlayers()) do
if v ~= LocalPlayer and v.Character then
local char = v.Character
local hum = char:FindFirstChild("Humanoid")
local root = char:FindFirstChild("HumanoidRootPart")
local head = char:FindFirstChild("Head")
if hum and hum.Health > 0 and root and head then
if Settings.TeamCheck and v.Team == LocalPlayer.Team then
UpdateBox(char, false)
if Tracers[v.Name] then Tracers[v.Name].Visible = false end
if ESPText[v.Name] then ESPText[v.Name].Visible = false end
continue
end
if Settings.ESPEnabled then
UpdateBox(char, Settings.ESPBox)
local sPos, vis = Camera:WorldToViewportPoint(root.Position)
local headPos, headVis = Camera:WorldToViewportPoint(head.Position + Vector3.new(0, 1.5, 0))
if Settings.ESPLine and vis and DrawingLibAvailable then
if not Tracers[v.Name] then
Tracers[v.Name] = Drawing.new("Line")
Tracers[v.Name].Thickness = 1
end
local l = Tracers[v.Name]
l.Visible = true
l.From = Vector2.new(Center.X, Camera.ViewportSize.Y)
l.To = Vector2.new(sPos.X, sPos.Y)
l.Color = Settings.ESPColor
elseif Tracers[v.Name] then
Tracers[v.Name].Visible = false
end
if (Settings.ESPName or Settings.ESPDist) and headVis and DrawingLibAvailable then
if not ESPText[v.Name] then
ESPText[v.Name] = Drawing.new("Text")
ESPText[v.Name].Size = 16
ESPText[v.Name].Center = true
ESPText[v.Name].Outline = true
ESPText[v.Name].Color = Color3.new(1,1,1)
end
local txt = ESPText[v.Name]
txt.Visible = true
txt.Position = Vector2.new(headPos.X, headPos.Y)
local dist = (root.Position - MyPos).Magnitude
local str = ""
if Settings.ESPName then str = v.Name end
if Settings.ESPDist then str = str .. "\n[" .. math.floor(dist) .. "m]" end
txt.Text = str
elseif ESPText[v.Name] then
ESPText[v.Name].Visible = false
end
else
UpdateBox(char, false)
if Tracers[v.Name] then Tracers[v.Name].Visible = false end
if ESPText[v.Name] then ESPText[v.Name].Visible = false end
end
local aimPart = char:FindFirstChild(Settings.TargetMode == "Torso" and "UpperTorso" or "Head") or root
if aimPart then
local sPosAim, visAim = Camera:WorldToViewportPoint(aimPart.Position)
if visAim then
local dist = (Vector2.new(sPosAim.X, sPosAim.Y) - Center).Magnitude
if dist < MinDist then
if IsVisible(aimPart) then
MinDist = dist
BestTarget = aimPart
end
end
end
end
else
UpdateBox(char, false)
if Tracers[v.Name] then Tracers[v.Name].Visible = false end
if ESPText[v.Name] then ESPText[v.Name].Visible = false end
end
else
if Tracers[v.Name] then Tracers[v.Name]:Remove(); Tracers[v.Name] = nil end
if ESPText[v.Name] then ESPText[v.Name]:Remove(); ESPText[v.Name] = nil end
end
end
if Settings.AimbotEnabled and BestTarget then
Camera.CFrame = Camera.CFrame:Lerp(CFrame.new(Camera.CFrame.Position, BestTarget.Position), Settings.Smoothness)
end
end)
end
-- Iniciar Sistema
LoadKeySystem()



key