local Players = game:GetService("Players") local RunService = game:GetService("RunService") local CoreGui = game:GetService("CoreGui") local UIS = game:GetService("UserInputService") local SoundService = game:GetService("SoundService") local player = Players.LocalPlayer local espEnabled, teamEspEnabled, uiVisible, rainbowChams = false, false, true, false local espHighlights, espTags, bKeys, isBinding = {}, {}, {}, nil local function playClickSound(pitch) local sound = Instance.new("Sound", workspace) sound.SoundId = "rbxassetid://130114015" sound.Volume = 0.5 sound.Pitch = pitch or 1 SoundService:PlayLocalSound(sound) sound.Destroying:Connect(function() sound:Destroy() end) end local screenGui = Instance.new("ScreenGui") screenGui.Name = "viziX_Menu" screenGui.ResetOnSpawn = false pcall(function() screenGui.Parent = CoreGui end) if not screenGui.Parent then screenGui.Parent = player:WaitForChild("PlayerGui") end local main = Instance.new("Frame", screenGui) main.Size, main.Position, main.BackgroundColor3, main.BorderSizePixel, main.Active, main.Draggable = UDim2.new(0, 240, 0, 165), UDim2.new(0.5, -120, 0.5, -82), Color3.fromRGB(20, 20, 20), 2, true, true local title = Instance.new("TextLabel", main) title.Size, title.BackgroundColor3, title.BorderSizePixel, title.Text, title.TextColor3, title.Font, title.TextSize, title.TextXAlignment = UDim2.new(1, -30, 0, 24), Color3.fromRGB(10, 10, 10), 0, " [ viziX esp ] ", Color3.fromRGB(255, 255, 255), Enum.Font.Code, 13, Enum.TextXAlignment.Left local close = Instance.new("TextButton", main) close.Size, close.Position, close.BackgroundColor3, close.BorderSizePixel, close.Text, close.TextColor3, close.Font, close.TextSize = UDim2.new(0, 30, 0, 24), UDim2.new(1, -30, 0, 0), Color3.fromRGB(10, 10, 10), 0, "[X]", Color3.fromRGB(255, 255, 255), Enum.Font.Code, 13 local tabs = {Main = Instance.new("Frame", main), Settings = Instance.new("Frame", main)} for k, frame in pairs(tabs) do frame.Size, frame.Position, frame.BackgroundTransparency = UDim2.new(1, 0, 1, -50), UDim2.new(0, 0, 0, 50), 1 local btn = Instance.new("TextButton", main) btn.Size, btn.Position, btn.BackgroundColor3, btn.BorderSizePixel, btn.Text, btn.TextColor3, btn.Font, btn.TextSize = UDim2.new(0, k == "Main" and 60 or 70, 0, 18), UDim2.new(0, k == "Main" and 10 or 75, 0, 28), Color3.fromRGB(k == "Main" and 30 or 15, k == "Main" and 30 or 15, k == "Main" and 30 or 15), 1, k, Color3.fromRGB(255, 255, 255), Enum.Font.Code, 12 btn.MouseButton1Click:Connect(function() playClickSound(1.2) for _, f in pairs(tabs) do f.Visible = false end frame.Visible = true end) end tabs.Settings.Visible = false local function createToggle(parent, yPos, text, callback) local f = Instance.new("Frame", parent) f.Size, f.Position, f.BackgroundTransparency = UDim2.new(1, 0, 0, 25), UDim2.new(0, 0, 0, yPos), 1 local b = Instance.new("TextButton", f) b.Size, b.Position, b.BackgroundColor3, b.BorderSizePixel, b.Text, b.Font, b.TextSize = UDim2.new(0, 14, 0, 14), UDim2.new(0, 15, 0.5, -7), Color3.fromRGB(50, 50, 50), 1, "", Enum.Font.Code, 11 local l = Instance.new("TextLabel", f) l.Size, l.Position, l.BackgroundTransparency, l.Text, l.TextColor3, l.Font, l.TextSize, l.TextXAlignment = UDim2.new(1, -45, 1, 0), UDim2.new(0, 38, 0, 0), 1, text, Color3.fromRGB(255, 255, 255), Enum.Font.Code, 12, Enum.TextXAlignment.Left b.MouseButton1Click:Connect(function() playClickSound(1) b.Text = callback() and "X" or "" end) return b end local espBtn = createToggle(tabs.Main, 5, "Enable ESP", function() espEnabled = not espEnabled for _, h in pairs(espHighlights) do if h.Parent then h.Enabled = espEnabled end end for _, tag in pairs(espTags) do if tag.Parent then tag.Enabled = espEnabled end end return espEnabled end) local teamBtn = createToggle(tabs.Main, 32, "Team ESP Color", function() teamEspEnabled = not teamEspEnabled return teamEspEnabled end) local chamsBtn = createToggle(tabs.Main, 59, "Rainbow Chams Mode", function() rainbowChams = not rainbowChams return rainbowChams end) local function createBind(yPos, label, type) local f = Instance.new("Frame", tabs.Settings) f.Size, f.Position, f.BackgroundTransparency = UDim2.new(1, 0, 0, 20), UDim2.new(0, 0, 0, yPos), 1 local l = Instance.new("TextLabel", f) l.Size, l.Position, l.BackgroundTransparency, l.Text, l.TextColor3, l.Font, l.TextSize, l.TextXAlignment = UDim2.new(0, 110, 1, 0), UDim2.new(0, 15, 0, 0), 1, label, Color3.fromRGB(255, 255, 255), Enum.Font.Code, 11, Enum.TextXAlignment.Left local b = Instance.new("TextButton", f) b.Size, b.Position, b.BackgroundColor3, b.BorderSizePixel, b.Text, b.TextColor3, b.Font, b.TextSize = UDim2.new(0, 80, 0, 14), UDim2.new(1, -95, 0.5, -7), Color3.fromRGB(40, 40, 40), 1, "[ NONE ]", Color3.fromRGB(255, 255, 255), Enum.Font.Code, 11 b.MouseButton1Click:Connect(function() playClickSound(0.8) isBinding = type b.Text = "[ PRESS ]" end) return b end local bEspBtn = createBind(5, "Bind ESP Key:", "ESP") local bTeamBtn = createBind(32, "Bind Team Key:", "Team") local wm = Instance.new("TextLabel", main) wm.Size, wm.Position, wm.BackgroundTransparency, wm.Text, wm.TextColor3, wm.Font, wm.TextSize, wm.TextXAlignment = UDim2.new(1, -16, 0, 16), UDim2.new(0, 8, 1, -18), 1, "made by tuxx", Color3.fromRGB(120, 120, 120), Enum.Font.Code, 10, Enum.TextXAlignment.Right local function updateUI(color) main.BorderColor3 = color title.TextColor3 = color close.TextColor3 = color espBtn.BorderColor3 = color espBtn.TextColor3 = color teamBtn.BorderColor3 = color teamBtn.TextColor3 = color chamsBtn.BorderColor3 = color chamsBtn.TextColor3 = color bEspBtn.BorderColor3 = color bTeamBtn.BorderColor3 = color end RunService.RenderStepped:Connect(function() if not main or not main.Parent then return end updateUI(Color3.fromHSV((os.clock() * 0.2) % 1, 1, 1)) end) local function notify() playClickSound(1.5) game:GetService("StarterGui"):SetCore("SendNotification", {Title = "viziX esp", Text = "Minimized. Press [ L ] to restore.", Duration = 1.5}) end close.MouseButton1Click:Connect(function() uiVisible = false main.Visible = false notify() end) local function applyESP(p) if p == player then return end local function chAdded(c) if espHighlights[p] then espHighlights[p]:Destroy() end if espTags[p] then espTags[p]:Destroy() end local head = c:WaitForChild("Head", 10) local root = c:WaitForChild("HumanoidRootPart", 10) if not head or not root then return end local h = Instance.new("Highlight", c) h.FillTransparency, h.OutlineColor, h.OutlineTransparency, h.Adornee, h.Enabled = 0.5, Color3.fromRGB(255, 255, 255), 0, c, espEnabled espHighlights[p] = h local bb = Instance.new("BillboardGui") bb.Name = "viziX_Tag" bb.Size = UDim2.new(0, 200, 0, 40) bb.AlwaysOnTop = true bb.ExtentsOffset = Vector3.new(0, 2.5, 0) bb.Enabled = espEnabled bb.Adornee = head bb.Parent = screenGui espTags[p] = bb local tl = Instance.new("TextLabel", bb) tl.Size = UDim2.new(1, 0, 1, 0) tl.BackgroundTransparency = 1 tl.Font = Enum.Font.Code tl.TextSize = 12 tl.TextStrokeTransparency = 0 tl.TextStrokeColor3 = Color3.fromRGB(0, 0, 0) RunService.RenderStepped:Connect(function() if not h or not h.Parent or not bb or not bb.Parent or not tl or not root or not player.Character or not player.Character:FindFirstChild("HumanoidRootPart") then return end local targetColor if espEnabled and teamEspEnabled and p.Team then targetColor = p.TeamColor.Color elseif rainbowChams then targetColor = Color3.fromHSV((os.clock() * 0.4) % 1, 1, 1) else targetColor = Color3.fromRGB(255, 0, 120) end h.FillColor = targetColor tl.TextColor3 = targetColor local distance = math.round((player.Character.HumanoidRootPart.Position - root.Position).Magnitude) tl.Text = p.Name .. " [" .. distance .. " studs]" end) end if p.Character then chAdded(p.Character) end p.CharacterAdded:Connect(chAdded) end --loll get fucking out for _, p in ipairs(Players:GetPlayers()) do applyESP(p) end Players.PlayerAdded:Connect(applyESP) Players.PlayerRemoving:Connect(function(p) if espHighlights[p] then espHighlights[p]:Destroy() espHighlights[p] = nil end if espTags[p] then espTags[p]:Destroy() espTags[p] = nil end end) local function tESP() espEnabled = not espEnabled espBtn.Text = espEnabled and "X" or "" for _, h in pairs(espHighlights) do h.Enabled = espEnabled end for _, tag in pairs(espTags) do tag.Enabled = espEnabled end end local function tTeam() teamEspEnabled = not teamEspEnabled teamBtn.Text = teamEspEnabled and "X" or "" end UIS.InputBegan:Connect(function(input, gpe) if isBinding then bKeys[isBinding] = input.KeyCode local b = isBinding == "ESP" and bEspBtn or bTeamBtn b.Text = "[ " .. input.KeyCode.Name .. " ]" isBinding = nil playClickSound(1.1) return end if gpe then return end if input.KeyCode == Enum.KeyCode.L then uiVisible = not uiVisible main.Visible = uiVisible if not uiVisible then notify() else playClickSound(1.4) end elseif bKeys.ESP and input.KeyCode == bKeys.ESP then tESP() elseif bKeys.Team and input.KeyCode == bKeys.Team then tTeam() end end)