
KeylessUniversal

-- // Created By Jaimz --\\
local camera = workspace.CurrentCamera
local entities = game:GetService("Players")
local localplayer = entities.LocalPlayer
local runservice = game:GetService("RunService")
local esp_settings = {
enabled = true,
skel = true,
skel_col = Color3.fromRGB(255, 255, 255),
dot_size = 5
}
local player_drawings = {}
local function draw(player, character)
local skel_head = Drawing.new("Line")
skel_head.Visible = false
skel_head.Thickness = 2
skel_head.Color = esp_settings.skel_col
local skel_torso = Drawing.new("Line")
skel_torso.Visible = false
skel_torso.Thickness = 2
skel_torso.Color = esp_settings.skel_col
local skel_leftarm = Drawing.new("Line")
skel_leftarm.Visible = false
skel_leftarm.Thickness = 2
skel_leftarm.Color = esp_settings.skel_col
local skel_rightarm = Drawing.new("Line")
skel_rightarm.Visible = false
skel_rightarm.Thickness = 2
skel_rightarm.Color = esp_settings.skel_col
local skel_leftleg = Drawing.new("Line")
skel_leftleg.Visible = false
skel_leftleg.Thickness = 2
skel_leftleg.Color = esp_settings.skel_col
local skel_rightleg = Drawing.new("Line")
skel_rightleg.Visible = false
skel_rightleg.Thickness = 2
skel_rightleg.Color = esp_settings.skel_col
player_drawings[player] = {
skel_head = skel_head,
skel_torso = skel_torso,
skel_leftarm = skel_leftarm,
skel_rightarm = skel_rightarm,
skel_leftleg = skel_leftleg,
skel_rightleg = skel_rightleg
}
local function update()
local connection
connection = runservice.RenderStepped:Connect(function()
if workspace:FindFirstChild(player.Name) and character and character:FindFirstChild("HumanoidRootPart") and character:FindFirstChild("Humanoid") and character.Humanoid.Health ~= 0 then
local character_rootpart_3d = character.HumanoidRootPart.Position
local character_rootpart_2d, rootpart_onscreen = camera:WorldToViewportPoint(character_rootpart_3d)
if rootpart_onscreen and esp_settings.enabled then
local head, torso_upper, torso_lower, leftarm, rightarm, leftleg, rightleg
if character.Humanoid.RigType == Enum.HumanoidRigType.R6 then
head = character:FindFirstChild("Head")
torso_upper = character:FindFirstChild("Torso")
torso_lower = torso_upper
leftarm = character:FindFirstChild("Left Arm")
rightarm = character:FindFirstChild("Right Arm")
leftleg = character:FindFirstChild("Left Leg")
rightleg = character:FindFirstChild("Right Leg")
else
head = character:FindFirstChild("Head")
torso_upper = character:FindFirstChild("UpperTorso")
torso_lower = character:FindFirstChild("LowerTorso")
leftarm = character:FindFirstChild("LeftUpperArm")
rightarm = character:FindFirstChild("RightUpperArm")
leftleg = character:FindFirstChild("LeftUpperLeg")
rightleg = character:FindFirstChild("RightUpperLeg")
end
if head and torso_upper and torso_lower and leftarm and rightarm and leftleg and rightleg then
local head_2d = camera:WorldToViewportPoint(head.Position)
local torso_upper_2d = camera:WorldToViewportPoint(torso_upper.Position + Vector3.new(0, 1.1, 0))
local torso_lower_2d = camera:WorldToViewportPoint(torso_lower.Position + Vector3.new(0, -1, 0))
local leftarm_2d = camera:WorldToViewportPoint(leftarm.Position + Vector3.new(0, -1, 0))
local rightarm_2d = camera:WorldToViewportPoint(rightarm.Position + Vector3.new(0, -1, 0))
local leftleg_2d = camera:WorldToViewportPoint(leftleg.Position + Vector3.new(0, -1, 0))
local rightleg_2d = camera:WorldToViewportPoint(rightleg.Position + Vector3.new(0, -1, 0))
skel_head.From = Vector2.new(head_2d.X, head_2d.Y)
skel_head.To = Vector2.new(torso_upper_2d.X, torso_upper_2d.Y)
skel_torso.From = Vector2.new(torso_upper_2d.X, torso_upper_2d.Y)
skel_torso.To = Vector2.new(torso_lower_2d.X, torso_lower_2d.Y)
skel_leftarm.From = Vector2.new(torso_upper_2d.X, torso_upper_2d.Y)
skel_leftarm.To = Vector2.new(leftarm_2d.X, leftarm_2d.Y)
skel_rightarm.From = Vector2.new(torso_upper_2d.X, torso_upper_2d.Y)
skel_rightarm.To = Vector2.new(rightarm_2d.X, rightarm_2d.Y)
skel_leftleg.From = Vector2.new(torso_lower_2d.X, torso_lower_2d.Y)
skel_leftleg.To = Vector2.new(leftleg_2d.X, leftleg_2d.Y)
skel_rightleg.From = Vector2.new(torso_lower_2d.X, torso_lower_2d.Y)
skel_rightleg.To = Vector2.new(rightleg_2d.X, rightleg_2d.Y)
skel_head.Visible = esp_settings.skel
skel_torso.Visible = esp_settings.skel
skel_leftarm.Visible = esp_settings.skel
skel_rightarm.Visible = esp_settings.skel
skel_leftleg.Visible = esp_settings.skel
skel_rightleg.Visible = esp_settings.skel
else
skel_head.Visible = false
skel_torso.Visible = false
skel_leftarm.Visible = false
skel_rightarm.Visible = false
skel_leftleg.Visible = false
skel_rightleg.Visible = false
end
else
skel_head.Visible = false
skel_torso.Visible = false
skel_leftarm.Visible = false
skel_rightarm.Visible = false
skel_leftleg.Visible = false
skel_rightleg.Visible = false
end
else
if player == nil then
connection:Disconnect()
connection = nil
end
skel_head.Visible = false
skel_torso.Visible = false
skel_leftarm.Visible = false
skel_rightarm.Visible = false
skel_leftleg.Visible = false
skel_rightleg.Visible = false
end
end)
player_drawings[player].connection = connection -- Store the connection for later cleanup
end
coroutine.wrap(update)()
end
local function playeradded(player)
if player.Character then
coroutine.wrap(draw)(player, player.Character)
end
player.CharacterAdded:Connect(function(character)
coroutine.wrap(draw)(player, character)
end)
end
local function playerremoved(player)
if player_drawings[player] then
for _, drawing in pairs(player_drawings[player]) do
if drawing.Remove then
drawing:Remove()
elseif drawing.Disconnect then
drawing:Disconnect()
end
end
player_drawings[player] = nil
end
end
for _, player in next, entities:GetPlayers() do
if player ~= localplayer then
playeradded(player)
end
end
entities.PlayerAdded:Connect(playeradded)
entities.PlayerRemoving:Connect(playerremoved)



Guys please like it you can use it when making script
Much better if the players r6 than r15