local function CreateESP(model, name) if model:FindFirstChild("ESP") then return end local basepart = model:FindFirstChildWhichIsA("BasePart", true) if not basepart then return end local Billboard = Instance.new("BillboardGui") Billboard.Name = "ESP" Billboard.Size = UDim2.new(0, 120, 0, 25) Billboard.Adornee = basepart Billboard.AlwaysOnTop = true Billboard.Parent = model local NameLabel = Instance.new("TextLabel") NameLabel.Size = UDim2.new(1, 0, 1, 0) NameLabel.BackgroundTransparency = 1 NameLabel.Text = name NameLabel.TextColor3 = Color3.fromRGB(255, 255, 0) NameLabel.TextStrokeTransparency = 0.5 NameLabel.Font = Enum.Font.SourceSansBold NameLabel.TextScaled = true NameLabel.Parent = Billboard end local function TryESP(model) if model:IsA("Model") and model:FindFirstChild("NameTagGui", true) then local tag = model:FindFirstChild("PlayerTag", true) if not tag or not tag:IsA("TextLabel") then return end if tag.TextColor3 ~= Color3.fromRGB(255, 10, 20) then return end local displayName = tag.Text or "[Unknown]" CreateESP(model, displayName) end end for _, desc in ipairs(workspace:GetDescendants()) do if desc:IsA("Model") then TryESP(desc) end end workspace.DescendantAdded:Connect(function(obj) if obj:IsA("Model") then task.wait(0.5) TryESP(obj) end end)