--services local Players = game:GetService("Players") local Workspace = game:GetService("Workspace") local StarterGui = game:GetService("StarterGui") --notif local function notify(title, message) pcall(function() StarterGui:SetCore("SendNotification", { Title = title, Text = message, Duration = 90 }) end) end notify("Notice", "entity esp may take a moment to appear at the start of every floor") notify("Notice", "i barely playtested this, report any bugs at the scriptblox post") notify("Notice", "also i couldnt figure out how to make the codes work") --esp local function addESP(obj, color, label) local adornee = obj if obj:IsA("Model") then adornee = obj:FindFirstChild("HumanoidRootPart") or obj.PrimaryPart or obj:FindFirstChildWhichIsA("BasePart") end if not adornee then return end if adornee:FindFirstChild("BillboardGui") then adornee.BillboardGui:Destroy() end local billboard = Instance.new("BillboardGui") billboard.Name = "BillboardGui" billboard.Size = UDim2.new(0, 60, 0, 30) billboard.Adornee = adornee billboard.AlwaysOnTop = true billboard.Parent = adornee local text = Instance.new("TextLabel") text.Name = "Label" text.Size = UDim2.new(1, 0, 0.5, 0) text.Position = UDim2.new(0, 0, 0, 0) text.Text = label text.Font = Enum.Font.Cartoon text.TextColor3 = color text.BackgroundTransparency = 1 text.TextScaled = true text.Parent = billboard local frame = Instance.new("Frame") frame.Name = "Dot" frame.Size = UDim2.new(0, 14, 0, 14) frame.Position = UDim2.new(0.5, -7, 0.55, 0) frame.BackgroundColor3 = color frame.Parent = billboard local uicorner = Instance.new("UICorner") uicorner.CornerRadius = UDim.new(1, 0) uicorner.Parent = frame end local function removeESP(obj) local adornee = obj if obj:IsA("Model") then adornee = obj:FindFirstChild("HumanoidRootPart") or obj.PrimaryPart or obj:FindFirstChildWhichIsA("BasePart") end if not adornee then return end local gui = adornee:FindFirstChild("BillboardGui") if gui then gui:Destroy() end end --player esp local function addPlayerESP(char) if char and char:FindFirstChild("HumanoidRootPart") then addESP(char, Color3.fromRGB(220, 220, 220), char.Name) end end Players.PlayerAdded:Connect(function(player) player.CharacterAdded:Connect(addPlayerESP) end) for _, player in ipairs(Players:GetPlayers()) do if player.Character then addPlayerESP(player.Character) end end --task esp + other useless stuff local function onMapSwitch() local map = Workspace:FindFirstChild("CurrentMap") if not map then return end local tasks = map:FindFirstChild("CurrentTasks") if tasks then for _, task in pairs(tasks:GetChildren()) do if task.Name ~= "EchoGen" then removeESP(task) addESP(task, Color3.fromRGB(255, 255, 0), "Task") local completed = task:FindFirstChild("Completed") if completed and completed:IsA("BoolValue") then local function updateTaskColor() local adornee = task:FindFirstChild("HumanoidRootPart") or task.PrimaryPart or task:FindFirstChildWhichIsA("BasePart") if not adornee then return end local gui = adornee:FindFirstChild("BillboardGui") if not gui then return end local col = completed.Value and Color3.fromRGB(0, 255, 0) or Color3.fromRGB(255, 255, 0) local label = gui:FindFirstChild("Label") local dot = gui:FindFirstChild("Dot") if label then label.TextColor3 = col end if dot then dot.BackgroundColor3 = col end end updateTaskColor() completed:GetPropertyChangedSignal("Value"):Connect(updateTaskColor) end end end end local upgraders = map:FindFirstChild("CurrentUpgraders") if upgraders then for _, t in pairs(upgraders:GetChildren()) do removeESP(t) addESP(t, Color3.fromRGB(204, 153, 255), "Terminal") end end local keepers = map:FindFirstChild("Keepers") if keepers then for _, k in pairs(keepers:GetChildren()) do local clipboard = k:FindFirstChild("InfoEnvy") if clipboard then addESP(clipboard, Color3.fromRGB(0, 0, 255), "Clipboard") end end end for _, obj in pairs(map:GetChildren()) do if obj.Name == "EnvyTrap" then addESP(obj, Color3.fromRGB(255, 255, 0), "Trap") end end end --ele esp local function setupElevatorESP() local ele = Workspace:FindFirstChild("MapElevator") if ele then local floor = ele:FindFirstChild("Floor") if floor then addESP(floor, Color3.fromRGB(255, 165, 0), "Elevator") end end end --sybau setupElevatorESP() Workspace.ChildAdded:Connect(function(child) if child.Name == "CurrentMap" then repeat task.wait(1) until child:FindFirstChild("SpawnedItems") and child:FindFirstChild("CurrentTasks") onMapSwitch() end end) Workspace.DescendantAdded:Connect(function(desc) if desc.Name == "MapElevator" or desc.Name == "Floor" then setupElevatorESP() end end) --entity esp local entities = Workspace:FindFirstChild("Entities") if entities then for _, e in ipairs(entities:GetChildren()) do addESP(e, Color3.fromRGB(255, 0, 0), e.Name) end entities.ChildAdded:Connect(function(ent) task.wait() addESP(ent, Color3.fromRGB(255, 0, 0), ent.Name) end) end