local Players = game:GetService("Players") local RunService = game:GetService("RunService") local LocalPlayer = Players.LocalPlayer local function createHighlight(player) local function setup() if player == LocalPlayer then return end local character = player.Character or player.CharacterAdded:Wait() local highlight = Instance.new("Highlight") highlight.Name = "ESPHighlight" highlight.Parent = character highlight.Adornee = character highlight.FillTransparency = 0.5 highlight.OutlineTransparency = 0 highlight.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop local billboard = Instance.new("BillboardGui") billboard.Name = "ESPName" billboard.Size = UDim2.new(0, 200, 0, 50) billboard.Adornee = character:WaitForChild("Head") billboard.AlwaysOnTop = true billboard.ExtentsOffset = Vector3.new(0, 3, 0) billboard.Parent = character local label = Instance.new("TextLabel") label.Size = UDim2.new(1, 0, 1, 0) label.BackgroundTransparency = 1 label.TextColor3 = Color3.new(1, 1, 1) label.TextStrokeTransparency = 0 label.TextSize = 14 label.Font = Enum.Font.SourceSansBold label.Parent = billboard local connection connection = RunService.RenderStepped:Connect(function() if character and character:Parent() and character:FindFirstChild("HumanoidRootPart") then local dist = math.floor((character.HumanoidRootPart.Position - LocalPlayer.Character.HumanoidRootPart.Position).Magnitude) label.Text = player.Name .. " | " .. dist .. " studs" if player.Team ~= LocalPlayer.Team then highlight.FillColor = Color3.new(1, 0, 0) highlight.OutlineColor = Color3.new(1, 1, 1) label.TextColor3 = Color3.new(1, 0, 0) else highlight.FillColor = Color3.new(0, 1, 0) highlight.OutlineColor = Color3.new(1, 1, 1) label.TextColor3 = Color3.new(0, 1, 0) end else connection:Disconnect() end end) end player.CharacterAdded:Connect(setup) if player.Character then setup() end end for _, player in pairs(Players:GetPlayers()) do createHighlight(player) end Players.PlayerAdded:Connect(createHighlight)