local Library = loadstring(game:HttpGet("https://raw.githubusercontent.com/bloodball/-back-ups-for-libs/main/wizard"))() local Window = Library:NewWindow("Hack Menu") local Section = Window:NewSection("Speed") local EspSection = Window:NewSection("ESP") local TeleportSection = Window:NewSection("Teleport") local RunService = game:GetService("RunService") local Players = game:GetService("Players") local player = Players.LocalPlayer local playerGui = player:WaitForChild("PlayerGui") local desiredSpeed = 16 local speedHackEnabled = false local connections = {} local function applySpeed(humanoid) if humanoid and speedHackEnabled then humanoid.WalkSpeed = desiredSpeed end end local function setupEnforcement(humanoid) for _, conn in ipairs(connections) do conn:Disconnect() end connections = {} if humanoid then applySpeed(humanoid) table.insert(connections, humanoid:GetPropertyChangedSignal("WalkSpeed"):Connect(function() if speedHackEnabled and humanoid.WalkSpeed ~= desiredSpeed then humanoid.WalkSpeed = desiredSpeed end end)) table.insert(connections, RunService.Heartbeat:Connect(function() if speedHackEnabled and humanoid.WalkSpeed ~= desiredSpeed then humanoid.WalkSpeed = desiredSpeed end end)) end end local function onCharacterAdded(character) local humanoid = character:WaitForChild("Humanoid", 10) if humanoid then setupEnforcement(humanoid) end end if player.Character then onCharacterAdded(player.Character) end player.CharacterAdded:Connect(onCharacterAdded) Section:CreateTextbox("WalkSpeed", function(input) local speed = tonumber(input) if speed then desiredSpeed = speed speedHackEnabled = true local humanoid = player.Character and player.Character:FindFirstChildOfClass("Humanoid") applySpeed(humanoid) end end) Section:CreateToggle("Enable Speed", function(state) speedHackEnabled = state local humanoid = player.Character and player.Character:FindFirstChildOfClass("Humanoid") if not state and humanoid then humanoid.WalkSpeed = 16 for _, conn in ipairs(connections) do conn:Disconnect() end connections = {} elseif state and humanoid then setupEnforcement(humanoid) end end) local generatorEspEnabled = false local generatorAdornments = {} local function updateGeneratorEsp() if not generatorEspEnabled then return end for _, obj in ipairs(workspace:GetDescendants()) do if obj:IsA("Model") and (obj.Name:find("Generator") or obj.Name:match("GeneratorPoint%d+")) and not generatorAdornments[obj] then local primaryPart = obj.PrimaryPart or obj:FindFirstChildWhichIsA("BasePart") if primaryPart then local adorn = Instance.new("BoxHandleAdornment") adorn.Size = Vector3.new(4, 4, 4) adorn.Adornee = primaryPart adorn.AlwaysOnTop = true adorn.ZIndex = 0 adorn.Transparency = 0.7 adorn.Color3 = Color3.new(1, 1, 0) adorn.Parent = primaryPart generatorAdornments[obj] = adorn end end end end local function disableGeneratorEsp() for _, adorn in pairs(generatorAdornments) do if adorn then adorn:Destroy() end end generatorAdornments = {} end EspSection:CreateToggle("Generator ESP", function(state) generatorEspEnabled = state if state then updateGeneratorEsp() table.insert(connections, workspace.DescendantAdded:Connect(updateGeneratorEsp)) table.insert(connections, RunService.Heartbeat:Connect(updateGeneratorEsp)) else disableGeneratorEsp() end end) local playerEspEnabled = false local killerEspEnabled = false local playerAdornments = {} local playerLabels = {} local killerAdornments = {} local killerLabels = {} local playerUpdateConn local killerUpdateConn local function createEsp(targetPlayer, isKiller) if targetPlayer == player or not targetPlayer.Character then return end local root = targetPlayer.Character:WaitForChild("HumanoidRootPart", 5) local head = targetPlayer.Character:WaitForChild("Head", 5) if not root or not head then return end local adorn = Instance.new("BoxHandleAdornment") adorn.Size = Vector3.new(4, 6, 4) adorn.Adornee = root adorn.AlwaysOnTop = true adorn.ZIndex = 0 adorn.Transparency = 0.7 adorn.Color3 = isKiller and Color3.new(1, 0, 0) or Color3.new(0, 1, 0) adorn.Parent = root local billboard = Instance.new("BillboardGui") billboard.Size = UDim2.new(0, 100, 0, 30) billboard.Adornee = head billboard.StudsOffset = Vector3.new(0, 2, 0) billboard.AlwaysOnTop = true billboard.Parent = playerGui local label = Instance.new("TextLabel") label.Size = UDim2.new(1, 0, 1, 0) label.BackgroundTransparency = 1 label.TextColor3 = isKiller and Color3.new(1, 0, 0) or Color3.new(0, 1, 0) label.TextSize = 14 label.Text = targetPlayer.Name label.Parent = billboard if isKiller then killerAdornments[targetPlayer] = adorn killerLabels[targetPlayer] = {billboard = billboard, label = label, head = head} else playerAdornments[targetPlayer] = adorn playerLabels[targetPlayer] = {billboard = billboard, label = label, head = head} end end local function updateLabels(labels) for targetPlayer, data in pairs(labels) do if targetPlayer.Character and data.head and data.billboard.Parent then data.label.Text = targetPlayer.Name else if data.billboard then data.billboard:Destroy() end if data.adorn then data.adorn:Destroy() end labels[targetPlayer] = nil end end end local function disableEsp(isKiller) local adornments = isKiller and killerAdornments or playerAdornments local labels = isKiller and killerLabels or playerLabels local updateConn = isKiller and killerUpdateConn or playerUpdateConn for _, adorn in pairs(adornments) do if adorn then adorn:Destroy() end end for _, data in pairs(labels) do if data.billboard then data.billboard:Destroy() end end if updateConn then updateConn:Disconnect() end if isKiller then killerAdornments = {} killerLabels = {} killerUpdateConn = nil else playerAdornments = {} playerLabels = {} playerUpdateConn = nil end end local function setupEsp(state, isKiller) if state then local isLocalKiller = player.Character and player.Character:FindFirstChild("Killerost") ~= nil if not isKiller and isLocalKiller then return end for _, p in ipairs(Players:GetPlayers()) do if p ~= player and p ~= nil and p.Character and p.Character.Parent then local hasKillerost = p.Character:FindFirstChild("Killerost") ~= nil if (isKiller and hasKillerost) or (not isKiller and not hasKillerost) then createEsp(p, isKiller) end end end local playerAddedConn playerAddedConn = Players.PlayerAdded:Connect(function(p) if not (playerEspEnabled or killerEspEnabled) then playerAddedConn:Disconnect() return end p.CharacterAdded:Connect(function() if not (playerEspEnabled or killerEspEnabled) then return end local isLocalKiller = player.Character and player.Character:FindFirstChild("Killerost") ~= nil if not isKiller and isLocalKiller then return end if p.Character and p.Character.Parent then local hasKillerost = p.Character:FindFirstChild("Killerost") ~= nil if (isKiller and hasKillerost and killerEspEnabled) or (not isKiller and not hasKillerost and playerEspEnabled) then createEsp(p, isKiller) end end end) end) Players.PlayerRemoving:Connect(function(p) if isKiller then if killerAdornments[p] then killerAdornments[p]:Destroy() killerAdornments[p] = nil end if killerLabels[p] then killerLabels[p].billboard:Destroy() killerLabels[p] = nil end else if playerAdornments[p] then playerAdornments[p]:Destroy() playerAdornments[p] = nil end if playerLabels[p] then playerLabels[p].billboard:Destroy() playerLabels[p] = nil end end end) local updateFunc = function() updateLabels(isKiller and killerLabels or playerLabels) end local conn = RunService.RenderStepped:Connect(updateFunc) if isKiller then killerUpdateConn = conn else playerUpdateConn = conn end else disableEsp(isKiller) end end EspSection:CreateToggle("Player ESP", function(state) playerEspEnabled = state setupEsp(state, false) end) EspSection:CreateToggle("Killer ESP", function(state) killerEspEnabled = state setupEsp(state, true) end) local function teleportToRandomGenerator() local generators = {} for _, obj in ipairs(workspace:GetDescendants()) do if (obj:IsA("BasePart") or obj:IsA("Model")) and (obj.Name:find("Generator") or obj.Name:match("GeneratorPoint%d+")) then table.insert(generators, obj) end end if #generators > 0 then local randomIndex = math.random(1, #generators) local randomGen = generators[randomIndex] local rootPart = randomGen:IsA("BasePart") and randomGen or randomGen:FindFirstChildWhichIsA("BasePart") if rootPart and player.Character and player.Character:FindFirstChild("HumanoidRootPart") then local offset = Vector3.new(math.random(-5, 5), 2, math.random(-5, 5)) player.Character.HumanoidRootPart.CFrame = CFrame.new(rootPart.Position + offset) end end end TeleportSection:CreateButton("Random TP to Generator", teleportToRandomGenerator)