local RunService = game:GetService("RunService") local Players = game:GetService("Players") local Workspace = game:GetService("Workspace") local ReplicatedStorage = game:GetService("ReplicatedStorage") local TweenService = game:GetService("TweenService") local PathfindingService = game:GetService("PathfindingService") local LocalPlayer = Players.LocalPlayer local VirtualInputManager = game:GetService("VirtualInputManager") local UserInputService = game:GetService("UserInputService") local TeleportService = game:GetService("TeleportService") local HttpService = game:GetService("HttpService") local Settings = { Enabled = false, IsDead = false, IgnoredList = {}, ProcessedList = {}, TempIgnored = {}, IgnoreDuration = 60, DebugPrintEnabled = true, TargetY = 4.8, MoveSpeed = 22, SomeFlag = true, WaypointSpacing = 3, SomeOtherParam = 3, PickupDistance = 8, MaxSomething = 999999 } local PickupLock = {Lock = {Busy = false}} local LastTick = tick() local CurrentTargetPart = nil local IsMovingToTarget = false local SomeFlag2 = false local SomeNil = nil local StatusText = "Ожидание" local AvailableSafesCount = 0 local AvailableRegistersCount = 0 local Unused1 = 0 local Unused2 = 0 local TotalSafesCount = 0 local TotalRegistersCount = 0 local AvailableSafes = {} local AvailableRegisters = {} local TotalAvailableTargets = 0 local SuggestionText = "" local SomeNil2 = nil local BrokenStatusMap = {} local RetryCount = 0 local LastShopMainPart = nil local IsRising = false local SortedTargets = {} local HasReachedTargetY = false local function Log(msg) if Settings.DebugPrintEnabled then print("[AutoFarm]", msg) end end local VirtualUser = game:GetService("VirtualUser") local AntiAfkEnabled = true local AntiAfkConnection = nil local function EnableAntiAfk() if AntiAfkConnection then return end AntiAfkConnection = LocalPlayer.Idled:Connect(function() if AntiAfkEnabled then VirtualUser:CaptureController() VirtualUser:ClickButton2(Vector2.new()) Log("Анти-АФК сработал") end end) Log("Анти-АФК запущен") end local function DisableAntiAfk() if AntiAfkConnection then AntiAfkConnection:Disconnect() AntiAfkConnection = nil end Log("Анти-АФК остановлен") end EnableAntiAfk() local AutoPickupRunning = false local AutoPickupConnection = nil local function StartAutoPickup() if AutoPickupRunning then return end AutoPickupRunning = true if AutoPickupConnection then AutoPickupConnection:Disconnect() AutoPickupConnection = nil end AutoPickupConnection = RunService.RenderStepped:Connect(function() if not AutoPickupRunning or Settings.IsDead then return end local spawnedBreadFolder = Workspace:FindFirstChild("Filter") and Workspace.Filter:FindFirstChild("SpawnedBread") local pickupEvent = ReplicatedStorage:FindFirstChild("Events") and ReplicatedStorage.Events:FindFirstChild("CZDPZUS") if not spawnedBreadFolder or not pickupEvent then return end local character = LocalPlayer.Character local hrp = character and character:FindFirstChild("HumanoidRootPart") if not hrp then return end if PickupLock.Lock.Busy then return end local charPos = hrp.Position for _, breadPart in ipairs(spawnedBreadFolder:GetChildren()) do if (charPos - breadPart.Position).Magnitude <= Settings.PickupDistance then if not PickupLock.Lock.Busy then PickupLock.Lock.Busy = true pcall(function() pickupEvent:FireServer(breadPart) end) task.wait(1.1) PickupLock.Lock.Busy = false break end end end end) end local function StopAutoPickup() if not AutoPickupRunning then return end AutoPickupRunning = false if AutoPickupConnection then AutoPickupConnection:Disconnect() AutoPickupConnection = nil end if PickupLock and PickupLock.Lock then PickupLock.Lock.Busy = false end end StartAutoPickup() Log("Авто-подбор денег активирован") do repeat task.wait() until game:IsLoaded() local clonerefSafe = cloneref or function(...) return ... end local services = setmetatable({}, { __index = function(_, k) return clonerefSafe(game:GetService(k)) end }) local localPlayer = services.Players.LocalPlayer local character, humanoid, hrp local function updateChar() character = localPlayer.Character if character then hrp = character:FindFirstChild("HumanoidRootPart") humanoid = character:FindFirstChildOfClass("Humanoid") else hrp = nil humanoid = nil end end updateChar() local heartbeat = RunService.Heartbeat local renderStepped = RunService.RenderStepped local coreGui = game:GetService("CoreGui") local starterGui = game:GetService("StarterGui") local InvisPossible = true if character and not character:FindFirstChild("Torso") then pcall(function() starterGui:SetCore("SendNotification", { Title = "Невидимость НЕ РАБОТАЕТ", Text = "Требуется R6 аватар", Duration = 5 }) end) InvisPossible = false end local warningGui = Instance.new("ScreenGui") warningGui.Name = "InvisWarningGUI" warningGui.Parent = coreGui warningGui.ResetOnSpawn = false warningGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling local InvisWarningLabel = Instance.new("TextLabel", warningGui) InvisWarningLabel.Text = "⚠️ВЫ ВИДИМЫ⚠️" InvisWarningLabel.Visible = false InvisWarningLabel.Size = UDim2.new(0, 200, 0, 30) InvisWarningLabel.Position = UDim2.new(0.5, -100, 0.85, 0) InvisWarningLabel.BackgroundTransparency = 1 InvisWarningLabel.Font = Enum.Font.GothamSemibold InvisWarningLabel.TextSize = 24 InvisWarningLabel.TextColor3 = Color3.fromRGB(255, 255, 0) InvisWarningLabel.TextStrokeTransparency = 0.5 InvisWarningLabel.ZIndex = 10 local InvisActive = false local InvisAnim = Instance.new("Animation") InvisAnim.AnimationId = "rbxassetid://215384594" local InvisAnimTrack = nil local function isGrounded() return humanoid and humanoid:IsDescendantOf(workspace) and humanoid.FloorMaterial ~= Enum.Material.Air end local function loadInvisAnim() if InvisAnimTrack then pcall(function() InvisAnimTrack:Stop() end) InvisAnimTrack = nil end if humanoid then local success, track = pcall(function() return humanoid:LoadAnimation(InvisAnim) end) if success then InvisAnimTrack = track InvisAnimTrack.Priority = Enum.AnimationPriority.Action4 else InvisAnimTrack = nil end else InvisAnimTrack = nil end end local function disableInvis() if not InvisActive then return end InvisActive = false if InvisAnimTrack then pcall(function() InvisAnimTrack:Stop() end) end if humanoid then workspace.CurrentCamera.CameraSubject = humanoid end if character then for _, part in pairs(character:GetDescendants()) do if part:IsA("BasePart") and part.Transparency == 0.5 then part.Transparency = 0 end end end if InvisWarningLabel then InvisWarningLabel.Visible = false end end local function enableInvis() if InvisActive or not InvisPossible then return end updateChar() if not character or not humanoid or not hrp then return end if not character:FindFirstChild("Torso") then pcall(function() starterGui:SetCore("SendNotification", { Title = "Невидимость НЕ РАБОТАЕТ", Text = "Требуется R6 аватар", Duration = 5 }) end) return end InvisActive = true workspace.CurrentCamera.CameraSubject = hrp loadInvisAnim() end local function toggleInvis() if InvisActive then disableInvis() else enableInvis() end return InvisActive end _G.Invis_Enable = enableInvis _G.Invis_Disable = disableInvis _G.Invis_Toggle = toggleInvis _G.IsInvisEnabled = function() return InvisActive end localPlayer.CharacterAdded:Connect(function(newChar) if InvisAnimTrack then pcall(function() InvisAnimTrack:Stop() end) InvisAnimTrack = nil end task.wait() updateChar() if not humanoid then task.wait(0.5) updateChar() if not humanoid then InvisPossible = false if InvisActive then disableInvis() end pcall(function() starterGui:SetCore("SendNotification", { Title = "Ошибка невидимости", Text = "Не удалось определить тип персонажа", Duration = 5 }) end) return end end if humanoid.RigType ~= Enum.HumanoidRigType.R6 then InvisPossible = false if InvisActive then disableInvis() end pcall(function() starterGui:SetCore("SendNotification", { Title = "Предупреждение", Text = "Обнаружен не-R6 аватар. Невидимость отключена", Duration = 5 }) end) return else InvisPossible = true end if InvisActive then if hrp then workspace.CurrentCamera.CameraSubject = hrp end loadInvisAnim() end end) localPlayer.CharacterRemoving:Connect(function() if InvisAnimTrack then pcall(function() InvisAnimTrack:Stop() end) InvisAnimTrack = nil end if InvisWarningLabel then InvisWarningLabel.Visible = false end end) heartbeat:Connect(function(dt) if not InvisActive or not InvisPossible then if not InvisActive and character then for _, part in pairs(character:GetDescendants()) do if part:IsA("BasePart") and part.Transparency == 0.5 then part.Transparency = 0 end end end if InvisWarningLabel then InvisWarningLabel.Visible = false end return end if not character or not humanoid or not hrp or not humanoid:IsDescendantOf(workspace) or humanoid.Health <= 0 then if InvisWarningLabel then InvisWarningLabel.Visible = false end return end if InvisWarningLabel then InvisWarningLabel.Visible = not isGrounded() end local speed = 12 if humanoid.MoveDirection.Magnitude > 0 then local move = humanoid.MoveDirection * speed * dt hrp.CFrame = hrp.CFrame + move end local originalCF = hrp.CFrame local originalCamOffset = humanoid.CameraOffset local _, cameraYaw = workspace.CurrentCamera.CFrame:ToOrientation() hrp.CFrame = CFrame.new(hrp.CFrame.Position) * CFrame.fromOrientation(0, cameraYaw, 0) hrp.CFrame = hrp.CFrame * CFrame.Angles(math.rad(90), 0, 0) humanoid.CameraOffset = Vector3.new(0, 1.44, 0) if InvisAnimTrack then local success = pcall(function() if not InvisAnimTrack.IsPlaying then InvisAnimTrack:Play() end InvisAnimTrack:AdjustSpeed(0) InvisAnimTrack.TimePosition = 0.3 end) if not success then loadInvisAnim() end elseif humanoid and humanoid.Health > 0 then loadInvisAnim() end renderStepped:Wait() if humanoid and humanoid:IsDescendantOf(workspace) then humanoid.CameraOffset = originalCamOffset end if hrp and hrp:IsDescendantOf(workspace) then hrp.CFrame = originalCF end if InvisAnimTrack then pcall(function() InvisAnimTrack:Stop() end) end if hrp and hrp:IsDescendantOf(workspace) then local lookVec = workspace.CurrentCamera.CFrame.LookVector local flatLook = Vector3.new(lookVec.X, 0, lookVec.Z).Unit if flatLook.Magnitude > 0.1 then hrp.CFrame = CFrame.new(hrp.Position, hrp.Position + flatLook) end end if character then for _, part in pairs(character:GetDescendants()) do if part:IsA("BasePart") and part.Transparency ~= 1 then part.Transparency = 0.5 end end end end) end RunService.Stepped:Connect(function() if Settings.Enabled and LocalPlayer.Character then pcall(function() for _, part in pairs(LocalPlayer.Character:GetDescendants()) do if part:IsA("BasePart") then part.CanCollide = false end end end) end end) local function DisableDoorsCollision() local map = Workspace:FindFirstChild("Map") if map then local doors = map:FindFirstChild("Doors") if doors then for _, door in ipairs(doors:GetDescendants()) do pcall(function() if door:IsA("BasePart") then door.CanCollide = false end end) end end Log("Коллизия дверей отключена") end end DisableDoorsCollision() local function RiseToTargetY() if HasReachedTargetY then return end local character = LocalPlayer.Character local hrp = character and character:FindFirstChild("HumanoidRootPart") local humanoid = character and character:FindFirstChildOfClass("Humanoid") if hrp and humanoid and humanoid.Health > 0 and hrp.Position.Y < 4.7 and not IsRising then Log("Персонаж ниже 4.7, поднимаю по точкам до 4.8...") StatusText = "Подъём на 4.8" IsRising = true local startPos = hrp.Position local targetY = 4.8 local startY = startPos.Y local deltaY = targetY - startY if deltaY <= 0 then IsRising = false StatusText = "Ожидание" return end local steps = math.max(3, math.floor(deltaY * 2)) local waypoints = {} for i = 1, steps do local alpha = i / steps local y = startY + deltaY * alpha table.insert(waypoints, Vector3.new(startPos.X, y, startPos.Z)) end for _, wp in ipairs(waypoints) do if not Settings.Enabled then break end local currentRot = hrp.CFrame - hrp.CFrame.Position local targetCF = CFrame.new(wp) * currentRot local dist = (wp - hrp.Position).Magnitude local duration = math.min(0.5, dist / 10) local tween = TweenService:Create(hrp, TweenInfo.new(duration, Enum.EasingStyle.Linear), { CFrame = targetCF }) tween:Play() tween.Completed:Wait() end hrp.CFrame = CFrame.new(startPos.X, targetY, startPos.Z) * (hrp.CFrame - hrp.CFrame.Position) hrp.AssemblyLinearVelocity = Vector3.zero hrp.AssemblyAngularVelocity = Vector3.zero Log("Достиг 4.8, замираю на 3 секунды...") task.wait(3) Log("Замер завершён, продолжаю") IsRising = false HasReachedTargetY = true StatusText = "Ожидание" end end local PathVisualsFolder = Instance.new("Folder") PathVisualsFolder.Name = "PathVisuals" PathVisualsFolder.Parent = Workspace local function ClearPathVisuals() for _, child in ipairs(PathVisualsFolder:GetChildren()) do pcall(function() child:Destroy() end) end end local function VisualizePath(waypoints, startPos) ClearPathVisuals() if not waypoints or #waypoints == 0 then return end for i, wp in ipairs(waypoints) do local part = Instance.new("Part") part.Name = "Waypoint" .. i part.Size = Vector3.new(2, 2, 2) part.Position = wp.Position part.Anchored = true part.CanCollide = false part.Material = Enum.Material.Neon part.Color = Color3.fromHSV(i / #waypoints, 1, 1) part.Transparency = 0.3 part.Parent = PathVisualsFolder end local prevPos = startPos for i, wp in ipairs(waypoints) do local nextPos = wp.Position local dist = (nextPos - prevPos).Magnitude if dist > 0.5 then local line = Instance.new("Part") line.Name = "PathLine" .. i line.Anchored = true line.CanCollide = false line.Material = Enum.Material.Neon line.Color = Color3.new(0, 1, 0) line.Transparency = 0.5 line.Size = Vector3.new(0.5, 0.5, dist) line.CFrame = CFrame.lookAt(prevPos + (nextPos - prevPos) / 2, nextPos) line.Parent = PathVisualsFolder end prevPos = nextPos end end local function ComputePath(startPos, endPos) local pathParamsList = { { Radius = 1, Height = 4, Spacing = 2 }, { Radius = 1.2, Height = 4.5, Spacing = 2.5 }, { Radius = 1.5, Height = 5, Spacing = 3 }, { Radius = 2, Height = 5.5, Spacing = 4 }, { Radius = 2.5, Height = 6, Spacing = 5 }, { Radius = 3, Height = 6.5, Spacing = 5 }, { Radius = 3.5, Height = 7, Spacing = 6 }, { Radius = 4, Height = 7.5, Spacing = 6 }, { Radius = 1, Height = 8, Spacing = 3 }, { Radius = 5, Height = 5, Spacing = 5 }, { Radius = 1.8, Height = 4.2, Spacing = 2.2 }, { Radius = 2.2, Height = 5.8, Spacing = 4.5 }, { Radius = 2.8, Height = 6.2, Spacing = 5.5 }, { Radius = 3.2, Height = 6.8, Spacing = 5.8 }, { Radius = 3.8, Height = 7.2, Spacing = 6.2 } } for _, params in ipairs(pathParamsList) do local pathParams = { AgentRadius = params.Radius, AgentHeight = params.Height, AgentCanJump = true, AgentCanClimb = true, WaypointSpacing = params.Spacing, CostCalibration = true } local path = PathfindingService:CreatePath(pathParams) local success, _ = pcall(function() path:ComputeAsync(startPos, endPos) end) if success and path.Status == Enum.PathStatus.Success then local rawWaypoints = path:GetWaypoints() if not rawWaypoints or #rawWaypoints < 2 then return rawWaypoints end local refinedWaypoints = {} local spacing = Settings.WaypointSpacing table.insert(refinedWaypoints, rawWaypoints[1]) for i = 2, #rawWaypoints do local prev = rawWaypoints[i - 1].Position local curr = rawWaypoints[i].Position local dist = (curr - prev).Magnitude if dist <= spacing then table.insert(refinedWaypoints, rawWaypoints[i]) else local steps = math.ceil(dist / spacing) for j = 1, steps do local alpha = j / steps local pos = prev:Lerp(curr, alpha) local action = (j == steps and rawWaypoints[i].Action) or Enum.PathWaypointAction.Walk table.insert(refinedWaypoints, { Position = pos, Action = action }) end end end return refinedWaypoints end task.wait(0.05) end return nil end local function GetPositionInFrontOfTarget(targetPart, fromPos) if not targetPart then return nil end local success, cf = pcall(function() return targetPart.CFrame end)