
KeylessUniversal

local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local Camera = workspace.CurrentCamera
local ESP = {}
local LocalPlayer = Players.LocalPlayer
local Config = {
SkeletonColor = Color3.fromRGB(255, 255, 255),
Thickness = 2.5,
Transparency = 1,
DistanceFade = true,
MaxDistance = 500
}
local function IsAlive(player)
if not player or not player.Character then return false end
local humanoid = player.Character:FindFirstChildOfClass("Humanoid")
return humanoid and humanoid.Health > 0
end
function ESP.CreateESP(player)
if player == LocalPlayer then return end
if not player or not player.Character then return end
pcall(function()
local character = player.Character
local humanoidRootPart = character:FindFirstChild("HumanoidRootPart")
if not humanoidRootPart then return end
if ESP[player] then
ESP.RemoveESP(player)
end
ESP[player] = {lines = {}}
local head = character:FindFirstChild("Head")
local torso = character:FindFirstChild("Torso") or character:FindFirstChild("UpperTorso")
local lowerTorso = character:FindFirstChild("LowerTorso")
local leftArm = character:FindFirstChild("Left Arm") or character:FindFirstChild("LeftUpperArm")
local rightArm = character:FindFirstChild("Right Arm") or character:FindFirstChild("RightUpperArm")
local leftLeg = character:FindFirstChild("Left Leg") or character:FindFirstChild("LeftUpperLeg")
local rightLeg = character:FindFirstChild("Right Leg") or character:FindFirstChild("RightUpperLeg")
local leftHand = character:FindFirstChild("LeftHand") or character:FindFirstChild("LeftLowerArm")
local rightHand = character:FindFirstChild("RightHand") or character:FindFirstChild("RightLowerArm")
local leftFoot = character:FindFirstChild("LeftFoot") or character:FindFirstChild("LeftLowerLeg")
local rightFoot = character:FindFirstChild("RightFoot") or character:FindFirstChild("RightLowerLeg")
local connections = {}
if head and torso then table.insert(connections, {head, torso}) end
if torso and lowerTorso then table.insert(connections, {torso, lowerTorso}) end
if torso and leftArm then table.insert(connections, {torso, leftArm}) end
if torso and rightArm then table.insert(connections, {torso, rightArm}) end
if leftArm and leftHand then table.insert(connections, {leftArm, leftHand}) end
if rightArm and rightHand then table.insert(connections, {rightArm, rightHand}) end
if (lowerTorso or torso) and leftLeg then
table.insert(connections, {lowerTorso or torso, leftLeg})
end
if (lowerTorso or torso) and rightLeg then
table.insert(connections, {lowerTorso or torso, rightLeg})
end
if leftLeg and leftFoot then table.insert(connections, {leftLeg, leftFoot}) end
if rightLeg and rightFoot then table.insert(connections, {rightLeg, rightFoot}) end
for _, connection in ipairs(connections) do
local part1 = connection[1]
local part2 = connection[2]
if part1 and part2 then
pcall(function()
local line = Drawing.new("Line")
line.Color = Config.SkeletonColor
line.Thickness = Config.Thickness
line.Transparency = Config.Transparency
line.Visible = false
table.insert(ESP[player].lines, {line = line, part1 = part1, part2 = part2})
end)
end
end
end)
end
function ESP.UpdateESP(player)
if not ESP[player] then return end
if not IsAlive(player) then return end
pcall(function()
local character = player.Character
local humanoidRootPart = character:FindFirstChild("HumanoidRootPart")
local localCharacter = LocalPlayer.Character
local localRoot = localCharacter and localCharacter:FindFirstChild("HumanoidRootPart")
if not humanoidRootPart or not localRoot then return end
local distance = (humanoidRootPart.Position - localRoot.Position).Magnitude
local transparency = Config.Transparency
if Config.DistanceFade and distance > 0 then
transparency = math.clamp(1 - (distance / Config.MaxDistance), 0.3, 1)
end
for _, data in ipairs(ESP[player].lines) do
local part1 = data.part1
local part2 = data.part2
local line = data.line
if part1 and part2 and part1.Parent and part2.Parent then
local pos1, onScreen1 = Camera:WorldToViewportPoint(part1.Position)
local pos2, onScreen2 = Camera:WorldToViewportPoint(part2.Position)
if onScreen1 and onScreen2 and pos1.Z > 0 and pos2.Z > 0 then
line.From = Vector2.new(pos1.X, pos1.Y)
line.To = Vector2.new(pos2.X, pos2.Y)
line.Transparency = transparency
line.Visible = true
else
line.Visible = false
end
else
line.Visible = false
end
end
end)
end
function ESP.RemoveESP(player)
if ESP[player] then
pcall(function()
for _, data in ipairs(ESP[player].lines) do
if data.line then
data.line:Remove()
end
end
end)
ESP[player] = nil
end
end
local function SetupPlayer(player)
if player == LocalPlayer then return end
local charAddedConn
local charRemovingConn
charAddedConn = player.CharacterAdded:Connect(function(character)
task.wait(0.5)
ESP.CreateESP(player)
end)
charRemovingConn = player.CharacterRemoving:Connect(function(character)
ESP.RemoveESP(player)
end)
if player.Character then
task.spawn(function()
task.wait(0.5)
ESP.CreateESP(player)
end)
end
end
Players.PlayerAdded:Connect(SetupPlayer)
Players.PlayerRemoving:Connect(function(player)
ESP.RemoveESP(player)
end)
for _, player in ipairs(Players:GetPlayers()) do
SetupPlayer(player)
end
RunService.RenderStepped:Connect(function()
for _, player in ipairs(Players:GetPlayers()) do
if player ~= LocalPlayer then
ESP.UpdateESP(player)
end
end
end)
print("Made by ._changed_ on discord | guns.lol/xup")



AI is a nice thing huh?
@vowzys where do you think it's AI??
@ChangedDev it has the exact same issues as an AI coded ESP, also the same format, lets use our brains chap.. if ur gonna use AI, then use LM studio to do it, then you'll have better results.
Why this is patched. still works