-- [[ Rscripts Risk Notice ]] -- This script is not verified by rscripts.net. Deal with caution. -- -- Stay safe: -- • Never log in on unofficial Roblox sites or lookalike domains. -- • Real Roblox links use roblox.com (check the .com ending). -- • Treat fake Roblox login / "claim reward" pages as phishing. -- [[ End Rscripts Risk Notice ]] -- // FORSAKICH // Premium Menu local Players = game:GetService("Players") local UserInputService = game:GetService("UserInputService") local TweenService = game:GetService("TweenService") local RunService = game:GetService("RunService") local player = Players.LocalPlayer -- // Зоны без ESP local NoESPZones = { { MinX = -3748, MaxX = -3280, MinY = -1, MaxY = 78, MinZ = -72, MaxZ = 446 }, { MinX = -3574, MaxX = -3505, MinY = -407, MaxY = -348, MinZ = 243, MaxZ = 339 } } local function IsInNoESPZone(pos) for _, zone in pairs(NoESPZones) do if pos.X > zone.MinX and pos.X < zone.MaxX and pos.Y > zone.MinY and pos.Y < zone.MaxY and pos.Z > zone.MinZ and pos.Z < zone.MaxZ then return true end end return false end -- Проверка, находится ли ЛОКАЛЬНЫЙ игрок в зоне без ESP local function IsLocalPlayerInNoESPZone() local char = player.Character if not char then return true end local root = char:FindFirstChild("HumanoidRootPart") if not root then return true end return IsInNoESPZone(root.Position) end local FORSAKICH = Instance.new("ScreenGui") FORSAKICH.Name = "FORSAKICH" FORSAKICH.ResetOnSpawn = false FORSAKICH.ZIndexBehavior = Enum.ZIndexBehavior.Sibling FORSAKICH.Parent = player:WaitForChild("PlayerGui") local MainFrame = Instance.new("Frame") MainFrame.Name = "MainFrame" MainFrame.Size = UDim2.new(0, 320, 0, 280) MainFrame.Position = UDim2.new(0.5, -160, 0.5, -140) MainFrame.BackgroundColor3 = Color3.fromRGB(25, 25, 25) MainFrame.BorderSizePixel = 0 MainFrame.Active = true MainFrame.Visible = false MainFrame.Parent = FORSAKICH local TopBar = Instance.new("Frame") TopBar.Size = UDim2.new(1, 0, 0, 32) TopBar.BackgroundColor3 = Color3.fromRGB(35, 35, 35) TopBar.BorderSizePixel = 0 TopBar.Parent = MainFrame local Title = Instance.new("TextLabel") Title.Size = UDim2.new(1, -70, 1, 0) Title.Position = UDim2.new(0, 12, 0, 0) Title.BackgroundTransparency = 1 Title.Text = "FORSAKICH" Title.TextColor3 = Color3.fromRGB(180, 180, 180) Title.TextXAlignment = Enum.TextXAlignment.Left Title.Font = Enum.Font.GothamBold Title.TextSize = 14 Title.Parent = TopBar local KeyIndicator = Instance.new("TextLabel") KeyIndicator.Size = UDim2.new(0, 40, 1, 0) KeyIndicator.Position = UDim2.new(1, -72, 0, 0) KeyIndicator.BackgroundTransparency = 1 KeyIndicator.Text = "RSHIFT" KeyIndicator.TextColor3 = Color3.fromRGB(120, 120, 120) KeyIndicator.TextXAlignment = Enum.TextXAlignment.Center KeyIndicator.Font = Enum.Font.GothamMedium KeyIndicator.TextSize = 9 KeyIndicator.Parent = TopBar local CloseButton = Instance.new("TextButton") CloseButton.Size = UDim2.new(0, 32, 1, 0) CloseButton.Position = UDim2.new(1, -32, 0, 0) CloseButton.BackgroundColor3 = Color3.fromRGB(45, 45, 45) CloseButton.BorderSizePixel = 0 CloseButton.Text = "X" CloseButton.TextColor3 = Color3.fromRGB(200, 200, 200) CloseButton.Font = Enum.Font.GothamBold CloseButton.TextSize = 14 CloseButton.Parent = TopBar local ScrollingFrame = Instance.new("ScrollingFrame") ScrollingFrame.Size = UDim2.new(1, 0, 1, -32) ScrollingFrame.Position = UDim2.new(0, 0, 0, 32) ScrollingFrame.BackgroundColor3 = Color3.fromRGB(25, 25, 25) ScrollingFrame.BorderSizePixel = 0 ScrollingFrame.ScrollBarThickness = 4 ScrollingFrame.ScrollBarImageColor3 = Color3.fromRGB(60, 60, 60) ScrollingFrame.CanvasSize = UDim2.new(0, 0, 0, 0) ScrollingFrame.AutomaticCanvasSize = Enum.AutomaticSize.Y ScrollingFrame.Parent = MainFrame local UIListLayout = Instance.new("UIListLayout") UIListLayout.Padding = UDim.new(0, 4) UIListLayout.Parent = ScrollingFrame local UIPadding = Instance.new("UIPadding") UIPadding.PaddingLeft = UDim.new(0, 8) UIPadding.PaddingRight = UDim.new(0, 8) UIPadding.PaddingTop = UDim.new(0, 8) UIPadding.PaddingBottom = UDim.new(0, 8) UIPadding.Parent = ScrollingFrame -- // Текущие цвета local CurrentColors = { Killer = Color3.fromRGB(220, 20, 60), Player = Color3.fromRGB(138, 43, 226), Item = Color3.fromRGB(0, 255, 0), Generator = Color3.fromRGB(255, 165, 0) } local ColorButtons = {} local StrokeTransparency = 0.8 -- // RGB Picker local ColorPickerFrame = nil local PickerTarget = nil local function OpenColorPicker(targetType) if ColorPickerFrame then ColorPickerFrame:Destroy() ColorPickerFrame = nil end PickerTarget = targetType local currentColor = CurrentColors[targetType] or Color3.fromRGB(255, 255, 255) local rVal = math.floor(currentColor.R * 255) local gVal = math.floor(currentColor.G * 255) local bVal = math.floor(currentColor.B * 255) ColorPickerFrame = Instance.new("Frame") ColorPickerFrame.Size = UDim2.new(0, 240, 0, 200) ColorPickerFrame.Position = UDim2.new(0.5, -120, 0.5, -100) ColorPickerFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 30) ColorPickerFrame.BorderSizePixel = 0 ColorPickerFrame.Parent = FORSAKICH local titleLabel = Instance.new("TextLabel") titleLabel.Size = UDim2.new(1, 0, 0, 25) titleLabel.BackgroundTransparency = 1 titleLabel.Text = "RGB Color Picker" titleLabel.TextColor3 = Color3.fromRGB(200, 200, 200) titleLabel.Font = Enum.Font.GothamBold titleLabel.TextSize = 13 titleLabel.Parent = ColorPickerFrame local preview = Instance.new("Frame") preview.Size = UDim2.new(0, 220, 0, 40) preview.Position = UDim2.new(0, 10, 0, 30) preview.BackgroundColor3 = currentColor preview.BorderSizePixel = 0 preview.Parent = ColorPickerFrame local function UpdatePreview() local col = Color3.fromRGB(rVal, gVal, bVal) preview.BackgroundColor3 = col CurrentColors[PickerTarget] = col if ColorButtons[PickerTarget] then ColorButtons[PickerTarget].BackgroundColor3 = col end end local function MakeSlider(label, yPos, get, set) local lbl = Instance.new("TextLabel") lbl.Size = UDim2.new(0, 20, 0, 20) lbl.Position = UDim2.new(0, 10, 0, yPos) lbl.BackgroundTransparency = 1 lbl.Text = label lbl.TextColor3 = Color3.fromRGB(180, 180, 180) lbl.Font = Enum.Font.GothamBold lbl.TextSize = 12 lbl.Parent = ColorPickerFrame local sf = Instance.new("Frame") sf.Size = UDim2.new(0, 150, 0, 20) sf.Position = UDim2.new(0, 35, 0, yPos) sf.BackgroundColor3 = Color3.fromRGB(50, 50, 50) sf.BorderSizePixel = 0 sf.Parent = ColorPickerFrame local fill = Instance.new("Frame") fill.Size = UDim2.new(get() / 255, 0, 1, 0) fill.BackgroundColor3 = Color3.fromRGB(80, 80, 80) fill.BorderSizePixel = 0 fill.Parent = sf local val = Instance.new("TextLabel") val.Size = UDim2.new(0, 40, 0, 20) val.Position = UDim2.new(0, 190, 0, yPos) val.BackgroundTransparency = 1 val.Text = tostring(get()) val.TextColor3 = Color3.fromRGB(200, 200, 200) val.Font = Enum.Font.Gotham val.TextSize = 10 val.Parent = ColorPickerFrame sf.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then local function update() local pos = UserInputService:GetMouseLocation() local sp = sf.AbsolutePosition local ss = sf.AbsoluteSize local pct = math.clamp((pos.X - sp.X) / ss.X, 0, 1) local v = math.floor(pct * 255) fill.Size = UDim2.new(pct, 0, 1, 0) val.Text = tostring(v) set(v) UpdatePreview() end update() local conn conn = UserInputService.InputChanged:Connect(function(ic) if ic.UserInputType == Enum.UserInputType.MouseMovement then update() end end) UserInputService.InputEnded:Connect(function(ie) if ie.UserInputType == Enum.UserInputType.MouseButton1 then conn:Disconnect() end end) end end) end MakeSlider("R", 80, function() return rVal end, function(v) rVal = v end) MakeSlider("G", 110, function() return gVal end, function(v) gVal = v end) MakeSlider("B", 140, function() return bVal end, function(v) bVal = v end) local applyBtn = Instance.new("TextButton") applyBtn.Size = UDim2.new(0, 100, 0, 25) applyBtn.Position = UDim2.new(0, 70, 0, 170) applyBtn.BackgroundColor3 = Color3.fromRGB(60, 60, 60) applyBtn.BorderSizePixel = 0 applyBtn.Text = "Apply" applyBtn.TextColor3 = Color3.fromRGB(255, 255, 255) applyBtn.Font = Enum.Font.GothamBold applyBtn.TextSize = 12 applyBtn.Parent = ColorPickerFrame applyBtn.MouseButton1Click:Connect(function() ColorPickerFrame:Destroy() ColorPickerFrame = nil UpdateAllHighlights() end) end local function CreateFunctionRow(name, defaultState, callback, colorType) local Row = Instance.new("Frame") Row.Size = UDim2.new(1, 0, 0, 40) Row.BackgroundColor3 = Color3.fromRGB(32, 32, 32) Row.BorderSizePixel = 0 Row.Parent = ScrollingFrame local NameLabel = Instance.new("TextLabel") NameLabel.Size = UDim2.new(0.55, 0, 1, 0) NameLabel.Position = UDim2.new(0, 8, 0, 0) NameLabel.BackgroundTransparency = 1 NameLabel.Text = name NameLabel.TextColor3 = Color3.fromRGB(220, 220, 220) NameLabel.TextXAlignment = Enum.TextXAlignment.Left NameLabel.Font = Enum.Font.GothamMedium NameLabel.TextSize = 13 NameLabel.Parent = Row if colorType then local ColorButton = Instance.new("TextButton") ColorButton.Size = UDim2.new(0, 18, 0, 18) ColorButton.Position = UDim2.new(0.55, 5, 0.5, -9) ColorButton.BackgroundColor3 = CurrentColors[colorType] or Color3.fromRGB(255, 255, 255) ColorButton.BorderSizePixel = 0 ColorButton.Text = "" ColorButton.AutoButtonColor = false ColorButton.Parent = Row ColorButtons[colorType] = ColorButton ColorButton.MouseButton1Click:Connect(function() OpenColorPicker(colorType) end) end local ToggleButton = Instance.new("TextButton") ToggleButton.Size = UDim2.new(0, 40, 0, 18) ToggleButton.Position = UDim2.new(1, -48, 0.5, -9) ToggleButton.BackgroundColor3 = defaultState and Color3.fromRGB(70, 70, 70) or Color3.fromRGB(50, 50, 50) ToggleButton.BorderSizePixel = 0 ToggleButton.Text = "" ToggleButton.AutoButtonColor = false ToggleButton.Parent = Row local ToggleIndicator = Instance.new("Frame") ToggleIndicator.Size = UDim2.new(0, 16, 0, 16) ToggleIndicator.Position = defaultState and UDim2.new(1, -18, 0.5, -8) or UDim2.new(0, 2, 0.5, -8) ToggleIndicator.BackgroundColor3 = defaultState and Color3.fromRGB(100, 200, 100) or Color3.fromRGB(150, 150, 150) ToggleIndicator.BorderSizePixel = 0 ToggleIndicator.Parent = ToggleButton local isEnabled = defaultState local function UpdateVisual() if isEnabled then ToggleButton.BackgroundColor3 = Color3.fromRGB(70, 70, 70) ToggleIndicator.BackgroundColor3 = Color3.fromRGB(100, 200, 100) ToggleIndicator:TweenPosition(UDim2.new(1, -18, 0.5, -8), Enum.EasingDirection.Out, Enum.EasingStyle.Quad, 0.1) else ToggleButton.BackgroundColor3 = Color3.fromRGB(50, 50, 50) ToggleIndicator.BackgroundColor3 = Color3.fromRGB(150, 150, 150) ToggleIndicator:TweenPosition(UDim2.new(0, 2, 0.5, -8), Enum.EasingDirection.Out, Enum.EasingStyle.Quad, 0.1) end end ToggleButton.MouseButton1Click:Connect(function() isEnabled = not isEnabled UpdateVisual() if callback then callback(isEnabled) end end) UpdateVisual() return Row end local function CreateSeparator() local Separator = Instance.new("Frame") Separator.Size = UDim2.new(1, 0, 0, 1) Separator.BackgroundColor3 = Color3.fromRGB(45, 45, 45) Separator.BorderSizePixel = 0 Separator.Parent = ScrollingFrame end -- // Слайдер прозрачности local transRow = Instance.new("Frame") transRow.Size = UDim2.new(1, 0, 0, 40) transRow.BackgroundColor3 = Color3.fromRGB(32, 32, 32) transRow.BorderSizePixel = 0 transRow.Parent = ScrollingFrame local transLabel = Instance.new("TextLabel") transLabel.Size = UDim2.new(0, 80, 1, 0) transLabel.Position = UDim2.new(0, 8, 0, 0) transLabel.BackgroundTransparency = 1 transLabel.Text = "ESP Stroke" transLabel.TextColor3 = Color3.fromRGB(220, 220, 220) transLabel.TextXAlignment = Enum.TextXAlignment.Left transLabel.Font = Enum.Font.GothamMedium transLabel.TextSize = 13 transLabel.Parent = transRow local transSliderFrame = Instance.new("Frame") transSliderFrame.Size = UDim2.new(0, 120, 0, 16) transSliderFrame.Position = UDim2.new(0, 90, 0.5, -8) transSliderFrame.BackgroundColor3 = Color3.fromRGB(50, 50, 50) transSliderFrame.BorderSizePixel = 0 transSliderFrame.Parent = transRow local transSliderFill = Instance.new("Frame") transSliderFill.Size = UDim2.new(1 - StrokeTransparency, 0, 1, 0) transSliderFill.BackgroundColor3 = Color3.fromRGB(80, 80, 80) transSliderFill.BorderSizePixel = 0 transSliderFill.Parent = transSliderFrame local transValLabel = Instance.new("TextLabel") transValLabel.Size = UDim2.new(0, 50, 0, 16) transValLabel.Position = UDim2.new(0, 215, 0.5, -8) transValLabel.BackgroundTransparency = 1 transValLabel.Text = tostring(math.floor((1 - StrokeTransparency) * 100)) .. "%" transValLabel.TextColor3 = Color3.fromRGB(200, 200, 200) transValLabel.Font = Enum.Font.Gotham transValLabel.TextSize = 9 transValLabel.Parent = transRow transSliderFrame.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then local function update() local pos = UserInputService:GetMouseLocation() local sp = transSliderFrame.AbsolutePosition local ss = transSliderFrame.AbsoluteSize local pct = math.clamp((pos.X - sp.X) / ss.X, 0, 1) transSliderFill.Size = UDim2.new(pct, 0, 1, 0) transValLabel.Text = tostring(math.floor(pct * 100)) .. "%" StrokeTransparency = 1 - pct end update() local conn conn = UserInputService.InputChanged:Connect(function(ic) if ic.UserInputType == Enum.UserInputType.MouseMovement then update() end end) UserInputService.InputEnded:Connect(function(ie) if ie.UserInputType == Enum.UserInputType.MouseButton1 then conn:Disconnect() UpdateAllHighlights() end end) end end) CreateSeparator() -- // ESP система local ESP = { showKillers = false, showPlayers = false, showItems = false, showGenerators = false, highlights = {}, labels = {}, itemHighlights = {}, itemLabels = {}, generatorHighlights = {}, generatorLabels = {} } local function IsKiller(targetPlayer) local character = targetPlayer.Character if not character then return false end local humanoid = character:FindFirstChild("Humanoid") if not humanoid then return false end if humanoid.Health > 250 then return true end return false end local function CreatePlayerLabel(targetPlayer, isKiller) local character = targetPlayer.Character if not character then return end local head = character:FindFirstChild("Head") if not head then return end local billboard = Instance.new("BillboardGui") billboard.Size = UDim2.new(0, 200, 0, 20) billboard.StudsOffset = Vector3.new(0, 2.5, 0) billboard.AlwaysOnTop = true billboard.Adornee = head billboard.Parent = head local textLabel = Instance.new("TextLabel") textLabel.Size = UDim2.new(1, 0, 1, 0) textLabel.BackgroundTransparency = 1 textLabel.Text = targetPlayer.Name textLabel.TextColor3 = isKiller and CurrentColors.Killer or CurrentColors.Player textLabel.Font = Enum.Font.GothamBold textLabel.TextSize = 12 textLabel.TextStrokeTransparency = 0 textLabel.TextStrokeColor3 = Color3.fromRGB(0, 0, 0) textLabel.Parent = billboard ESP.labels[targetPlayer] = billboard end local function CreateHighlight(targetPlayer, isKiller) if targetPlayer == player then return end local character = targetPlayer.Character if not character then return end -- Пропускаем игроков в зонах без ESP if IsInNoESPZone(character:GetPivot().Position) then return end local highlight = Instance.new("Highlight") highlight.FillTransparency = 1 highlight.OutlineTransparency = StrokeTransparency highlight.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop highlight.Enabled = true highlight.Parent = character if isKiller then highlight.OutlineColor = CurrentColors.Killer else highlight.OutlineColor = CurrentColors.Player end ESP.highlights[targetPlayer] = highlight CreatePlayerLabel(targetPlayer, isKiller) end local function RemoveHighlight(targetPlayer) if ESP.highlights[targetPlayer] then ESP.highlights[targetPlayer]:Destroy() ESP.highlights[targetPlayer] = nil end if ESP.labels[targetPlayer] then ESP.labels[targetPlayer]:Destroy() ESP.labels[targetPlayer] = nil end end local function CreateItemLabel(itemPart, itemName) local billboard = Instance.new("BillboardGui") billboard.Size = UDim2.new(0, 200, 0, 20) billboard.StudsOffset = Vector3.new(0, 1.5, 0) billboard.AlwaysOnTop = true billboard.Adornee = itemPart billboard.Parent = itemPart local textLabel = Instance.new("TextLabel") textLabel.Size = UDim2.new(1, 0, 1, 0) textLabel.BackgroundTransparency = 1 textLabel.Text = itemName textLabel.TextColor3 = CurrentColors.Item textLabel.Font = Enum.Font.GothamBold textLabel.TextSize = 12 textLabel.TextStrokeTransparency = 0 textLabel.Parent = billboard ESP.itemLabels[itemPart] = billboard end local function CreateItemHighlight(itemPart, itemName) if ESP.itemHighlights[itemPart] then return end local highlight = Instance.new("Highlight") highlight.FillTransparency = 1 highlight.OutlineTransparency = StrokeTransparency highlight.OutlineColor = CurrentColors.Item highlight.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop highlight.Enabled = true highlight.Parent = itemPart ESP.itemHighlights[itemPart] = highlight CreateItemLabel(itemPart, itemName) end local function RemoveItemHighlight(itemPart) if ESP.itemHighlights[itemPart] then ESP.itemHighlights[itemPart]:Destroy() ESP.itemHighlights[itemPart] = nil end if ESP.itemLabels[itemPart] then ESP.itemLabels[itemPart]:Destroy() ESP.itemLabels[itemPart] = nil end end local function CreateGeneratorLabel(generatorPart) local billboard = Instance.new("BillboardGui") billboard.Size = UDim2.new(0, 200, 0, 20) billboard.StudsOffset = Vector3.new(0, 2, 0) billboard.AlwaysOnTop = true billboard.Adornee = generatorPart billboard.Parent = generatorPart local textLabel = Instance.new("TextLabel") textLabel.Size = UDim2.new(1, 0, 1, 0) textLabel.BackgroundTransparency = 1 textLabel.Text = "Generator" textLabel.TextColor3 = CurrentColors.Generator textLabel.Font = Enum.Font.GothamBold textLabel.TextSize = 12 textLabel.TextStrokeTransparency = 0 textLabel.Parent = billboard ESP.generatorLabels[generatorPart] = billboard end local function CreateGeneratorHighlight(generatorPart) if ESP.generatorHighlights[generatorPart] then return end local highlight = Instance.new("Highlight") highlight.FillTransparency = 1 highlight.OutlineTransparency = StrokeTransparency highlight.OutlineColor = CurrentColors.Generator highlight.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop highlight.Enabled = true highlight.Parent = generatorPart ESP.generatorHighlights[generatorPart] = highlight CreateGeneratorLabel(generatorPart) end local function RemoveGeneratorHighlight(generatorPart) if ESP.generatorHighlights[generatorPart] then ESP.generatorHighlights[generatorPart]:Destroy() ESP.generatorHighlights[generatorPart] = nil end if ESP.generatorLabels[generatorPart] then ESP.generatorLabels[generatorPart]:Destroy() ESP.generatorLabels[generatorPart] = nil end end local function UpdateGeneratorHighlights() for generatorPart, _ in pairs(ESP.generatorHighlights) do RemoveGeneratorHighlight(generatorPart) end if not ESP.showGenerators then return end if IsLocalPlayerInNoESPZone() then return end local mapFolder = workspace:FindFirstChild("Map") if mapFolder then local ingame = mapFolder:FindFirstChild("Ingame") if ingame then local map = ingame:FindFirstChild("Map") if map then for _, child in pairs(map:GetChildren()) do local remotes = child:FindFirstChild("Remotes") if remotes and remotes:FindFirstChild("RF") then CreateGeneratorHighlight(child) end end end end end end local function UpdateItemHighlights() for itemPart, _ in pairs(ESP.itemHighlights) do RemoveItemHighlight(itemPart) end if not ESP.showItems then return end if IsLocalPlayerInNoESPZone() then return end local mapFolder = workspace:FindFirstChild("Map") if mapFolder then local ingame = mapFolder:FindFirstChild("Ingame") if ingame then local map = ingame:FindFirstChild("Map") if map then local medkit = map:FindFirstChild("Medkit") if medkit then CreateItemHighlight(medkit, "Medkit") end local bloxyCola = map:FindFirstChild("BloxyCola") if bloxyCola then CreateItemHighlight(bloxyCola, "Bloxy Cola") end end end end for _, child in pairs(workspace:GetChildren()) do local itemRoot = child:FindFirstChild("ItemRoot") if itemRoot then local parts = itemRoot:FindFirstChild("Parts") if parts then local medkitUpper = parts:FindFirstChild("medkitupper") if medkitUpper then CreateItemHighlight(medkitUpper, "Medkit") else CreateItemHighlight(itemRoot, "Bloxy Cola") end else CreateItemHighlight(itemRoot, "Bloxy Cola") end end end end local function UpdateAllHighlights() -- Если локальный игрок в зоне без ESP - убираем ВСЁ if IsLocalPlayerInNoESPZone() then for targetPlayer, _ in pairs(ESP.highlights) do RemoveHighlight(targetPlayer) end for itemPart, _ in pairs(ESP.itemHighlights) do RemoveItemHighlight(itemPart) end for generatorPart, _ in pairs(ESP.generatorHighlights) do RemoveGeneratorHighlight(generatorPart) end return end for targetPlayer, _ in pairs(ESP.highlights) do RemoveHighlight(targetPlayer) end for _, targetPlayer in pairs(Players:GetPlayers()) do if targetPlayer ~= player then local isKiller = IsKiller(targetPlayer) if isKiller and ESP.showKillers then CreateHighlight(targetPlayer, true) elseif not isKiller and ESP.showPlayers then CreateHighlight(targetPlayer, false) end end end UpdateItemHighlights() UpdateGeneratorHighlights() end local function ToggleKillers(enabled) ESP.showKillers = enabled UpdateAllHighlights() end local function TogglePlayers(enabled) ESP.showPlayers = enabled UpdateAllHighlights() end local function ToggleItems(enabled) ESP.showItems = enabled UpdateItemHighlights() end local function ToggleGenerators(enabled) ESP.showGenerators = enabled UpdateGeneratorHighlights() end -- // Auto Fix local AutoFix = { enabled = false } local function FindNearestGenerator() local character = player.Character if not character then return nil end local humanoidRootPart = character:FindFirstChild("HumanoidRootPart") if not humanoidRootPart then return nil end local nearestGen = nil local nearestDist = math.huge local mapFolder = workspace:FindFirstChild("Map") if mapFolder then local ingame = mapFolder:FindFirstChild("Ingame") if ingame then local map = ingame:FindFirstChild("Map") if map then for _, child in pairs(map:GetChildren()) do local remotes = child:FindFirstChild("Remotes") if remotes and remotes:FindFirstChild("RF") then local genPos = child:GetPivot().Position local dist = (humanoidRootPart.Position - genPos).Magnitude if dist < nearestDist then nearestDist = dist nearestGen = child end end end end end end return nearestGen end local function RepairNearestGenerator() local generator = FindNearestGenerator() if not generator then return false end local remotes = generator:FindFirstChild("Remotes") if not remotes then return false end local rf = remotes:FindFirstChild("RF") if rf then pcall(function() rf:InvokeServer() end) end local re = remotes:FindFirstChild("RE") if re then re:FireServer() end return true end local function ToggleAutoFix(enabled) AutoFix.enabled = enabled end UserInputService.InputBegan:Connect(function(input, gameProcessed) if gameProcessed then return end if AutoFix.enabled and input.KeyCode == Enum.KeyCode.B then RepairNearestGenerator() end end) Players.PlayerAdded:Connect(function(targetPlayer) if targetPlayer ~= player then targetPlayer.CharacterAdded:Connect(function(character) wait(0.5) UpdateAllHighlights() end) end end) Players.PlayerRemoving:Connect(function(targetPlayer) RemoveHighlight(targetPlayer) end) local lastUpdate = 0 RunService.Heartbeat:Connect(function(deltaTime) lastUpdate = lastUpdate + deltaTime if (ESP.showKillers or ESP.showPlayers or ESP.showItems or ESP.showGenerators) and lastUpdate >= 0.3 then lastUpdate = 0 UpdateAllHighlights() end end) CreateFunctionRow("ESP Killers", false, ToggleKillers, "Killer") CreateSeparator() CreateFunctionRow("ESP Players", false, TogglePlayers, "Player") CreateSeparator() CreateFunctionRow("ESP Items", true, ToggleItems, "Item") CreateSeparator() CreateFunctionRow("ESP Generators", false, ToggleGenerators, "Generator") CreateSeparator() CreateFunctionRow("Auto Fix (B)", false, ToggleAutoFix, nil) CreateSeparator() ToggleItems(true) local dragging = false local dragInput = nil local dragStart = nil local startPos = nil local function updateDrag(input) local delta = input.Position - dragStart local newPos = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y) MainFrame.Position = newPos end TopBar.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = true dragStart = input.Position startPos = MainFrame.Position input.Changed:Connect(function() if input.UserInputState == Enum.UserInputState.End then dragging = false end end) end end) TopBar.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then dragInput = input end end) UserInputService.InputChanged:Connect(function(input) if dragging and input == dragInput then updateDrag(input) end end) CloseButton.MouseButton1Click:Connect(function() MainFrame.Visible = false end) UserInputService.InputBegan:Connect(function(input, gameProcessed) if gameProcessed then return end if input.KeyCode == Enum.KeyCode.RightShift then MainFrame.Visible = not MainFrame.Visible end end) ScrollingFrame.CanvasSize = UDim2.new(0, 0, 0, UIListLayout.AbsoluteContentSize.Y + 16) UIListLayout:GetPropertyChangedSignal("AbsoluteContentSize"):Connect(function() ScrollingFrame.CanvasSize = UDim2.new(0, 0, 0, UIListLayout.AbsoluteContentSize.Y + 16) end) local DestroyRow = Instance.new("Frame") DestroyRow.Size = UDim2.new(1, 0, 0, 40) DestroyRow.BackgroundColor3 = Color3.fromRGB(32, 32, 32) DestroyRow.BorderSizePixel = 0 DestroyRow.Parent = ScrollingFrame local DestroyButton = Instance.new("TextButton") DestroyButton.Size = UDim2.new(1, -16, 0, 32) DestroyButton.Position = UDim2.new(0, 8, 0, 4) DestroyButton.BackgroundColor3 = Color3.fromRGB(50, 30, 30) DestroyButton.BorderSizePixel = 0 DestroyButton.Text = "DESTROY GUI" DestroyButton.TextColor3 = Color3.fromRGB(255, 100, 100) DestroyButton.Font = Enum.Font.GothamBold DestroyButton.TextSize = 13 DestroyButton.Parent = DestroyRow DestroyButton.MouseButton1Click:Connect(function() ESP.showKillers = false ESP.showPlayers = false ESP.showItems = false ESP.showGenerators = false AutoFix.enabled = false for targetPlayer, _ in pairs(ESP.highlights) do RemoveHighlight(targetPlayer) end for itemPart, _ in pairs(ESP.itemHighlights) do RemoveItemHighlight(itemPart) end for generatorPart, _ in pairs(ESP.generatorHighlights) do RemoveGeneratorHighlight(generatorPart) end FORSAKICH:Destroy() end)