-- LocalScript placed in StarterPlayerScripts or StarterGui local Workspace = game:GetService("Workspace") local highlightColor = Color3.fromRGB(255, 0, 0) -- Red color local function enforceVisibility(part) if part:IsA("BasePart") then part.Transparency = 0 -- Ensure visibility updates if changed externally part:GetPropertyChangedSignal("Transparency"):Connect(function() if part.Transparency > 0 then part.Transparency = 0 end end) end end local function applyESP(object) if object.Name:lower() == "watermelon" then -- Make object and child parts fully visible enforceVisibility(object) for _, child in ipairs(object:GetChildren()) do enforceVisibility(child) end -- Apply Highlight with AlwaysOnTop so it stays visible through walls if not object:FindFirstChild("WatermelonESP") then local highlight = Instance.new("Highlight") highlight.Name = "WatermelonESP" highlight.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop highlight.FillColor = highlightColor highlight.OutlineColor = Color3.fromRGB(255, 255, 255) highlight.FillTransparency = 0.3 highlight.OutlineTransparency = 0 highlight.Adornee = object highlight.Parent = object end -- Apply a Box larger than the object boundaries if not object:FindFirstChild("WatermelonBox") then local box = Instance.new("SelectionBox") box.Name = "WatermelonBox" box.Color3 = highlightColor box.LineThickness = 0.15 -- Thicker line outline box.SurfaceColor3 = highlightColor box.SurfaceTransparency = 0.7 box.Adornee = object box.Parent = object end end end -- Scan existing objects in Workspace for _, descendant in ipairs(Workspace:GetDescendants()) do applyESP(descendant) end -- Listen for new objects spawned into Workspace Workspace.DescendantAdded:Connect(function(descendant) applyESP(descendant) end)