local plr = game:GetService("Players").LocalPlayer local CS = game:GetService("CollectionService") local R = game:GetService("ReplicatedStorage"):WaitForChild("Remotes") local E = {farm=false, flags=false, chests=false, collect=false} pcall(function() game:GetService("CoreGui").FishFarm:Destroy() end) local gui = Instance.new("ScreenGui"); gui.Name="FishFarm"; gui.ResetOnSpawn=false; gui.Parent=game:GetService("CoreGui") local main = Instance.new("Frame"); main.Size=UDim2.new(0,180,0,148); main.Position=UDim2.new(0.5,-90,0,20) main.BackgroundColor3=Color3.fromRGB(15,15,25); main.BorderSizePixel=0; main.Parent=gui local dr,ds,sp main.InputBegan:Connect(function(i) if i.UserInputType==Enum.UserInputType.MouseButton1 or i.UserInputType==Enum.UserInputType.Touch then dr=true;ds=i.Position;sp=main.Position i.Changed:Connect(function() if i.UserInputState==Enum.UserInputState.End then dr=false end end) end end) game:GetService("UserInputService").InputChanged:Connect(function(i) if dr and (i.UserInputType==Enum.UserInputType.MouseMovement or i.UserInputType==Enum.UserInputType.Touch) then local d=i.Position-ds; main.Position=UDim2.new(sp.X.Scale,sp.X.Offset+d.X,sp.Y.Scale,sp.Y.Offset+d.Y) end end) local t=Instance.new("TextLabel",main); t.Size=UDim2.new(1,-30,0,25); t.BackgroundColor3=Color3.fromRGB(60,30,120) t.BorderSizePixel=0; t.Text=" Auto Farm"; t.TextColor3=Color3.fromRGB(220,220,220); t.TextSize=13; t.Font=Enum.Font.GothamBold; t.TextXAlignment=Enum.TextXAlignment.Left local x=Instance.new("TextButton",main); x.Size=UDim2.new(0,25,0,25); x.Position=UDim2.new(1,-27,0,0) x.BackgroundColor3=Color3.fromRGB(180,50,50); x.Text="X"; x.TextColor3=Color3.fromRGB(255,255,255); x.TextSize=12; x.Font=Enum.Font.GothamBold; x.BorderSizePixel=0 x.MouseButton1Click:Connect(function() for k in pairs(E) do E[k]=false end; gui:Destroy() end) local cf=Instance.new("Frame",main); cf.Size=UDim2.new(1,-10,1,-30); cf.Position=UDim2.new(0,5,0,28); cf.BackgroundTransparency=1 Instance.new("UIListLayout",cf).Padding=UDim.new(0,3) local function tog(name,key) local b=Instance.new("TextButton",cf); b.Size=UDim2.new(1,0,0,25) b.BackgroundColor3=Color3.fromRGB(40,40,55); b.Text=name..": OFF" b.TextColor3=Color3.fromRGB(200,200,200); b.TextSize=13; b.Font=Enum.Font.GothamBold; b.BorderSizePixel=0 b.MouseButton1Click:Connect(function() E[key]=not E[key] b.BackgroundColor3=E[key] and Color3.fromRGB(60,30,120) or Color3.fromRGB(40,40,55) b.Text=name..": "..(E[key] and "ON" or "OFF") end) end tog("Auto Farm","farm") tog("Auto Flags","flags") tog("Auto Chests","chests") tog("Auto Collect","collect") -- Auto Farm: firetouchinterest on all pickups task.spawn(function() local pickups = workspace:WaitForChild("Main"):WaitForChild("Pickups"):WaitForChild("Active") while gui.Parent do if E.farm then local hrp = plr.Character and plr.Character:FindFirstChild("HumanoidRootPart") if hrp then for _, pickup in pairs(pickups:GetChildren()) do for _, part in pairs(pickup:GetDescendants()) do if part:IsA("BasePart") then pcall(function() firetouchinterest(hrp, part, 0) firetouchinterest(hrp, part, 1) end) end end end end end task.wait() end end) -- Auto Flags: TP to each CapturePoint, wait for capture task.spawn(function() local cp = workspace:WaitForChild("Main"):WaitForChild("CapturePoints") while gui.Parent do if E.flags then local hrp = plr.Character and plr.Character:FindFirstChild("HumanoidRootPart") if hrp then for _, v in pairs(cp:GetChildren()) do if not E.flags then break end local tp = v:FindFirstChild("TouchPart") if tp then hrp.CFrame = tp.CFrame task.wait(6) end end end end task.wait(1) end end) -- Auto Collect: TP to collectible, interact, auto-complete scratch-off -- Hook: when server opens scratch-off, instantly complete it R.CollectiblesTask.OnClientEvent:Connect(function(item, itemData, cancel) if cancel == "Cancel" then return end if E.collect and item then pcall(function() R.CollectiblesTask:FireServer(item) end) task.wait(0.1) pcall(function() plr.PlayerGui:FindFirstChild("CollectiblesGUI").Enabled = false end) end end) task.spawn(function() local coll = workspace:WaitForChild("Main"):WaitForChild("Collectibles") while gui.Parent do if E.collect then local hrp = plr.Character and plr.Character:FindFirstChild("HumanoidRootPart") if hrp then for _, zone in pairs(coll:GetChildren()) do for _, item in pairs(zone:GetChildren()) do if not E.collect then break end if item:GetAttribute("Active") then local att = item:FindFirstChild("Main") and item.Main:FindFirstChild("Attachment") if att then hrp.CFrame = CFrame.new(att.WorldPosition) task.wait(0.3) pcall(function() R.InteractRemote:FireServer(item) end) local t = tick() while plr:GetAttribute("CollectiblesBusy") and tick() - t < 3 do task.wait(0.05) end task.wait(0.1) end end end end end end task.wait(1) end end) -- Auto Chests: TP to ActiveChest, fire ProximityPrompt task.spawn(function() while gui.Parent do if E.chests then local hrp = plr.Character and plr.Character:FindFirstChild("HumanoidRootPart") if hrp then for _, chest in pairs(CS:GetTagged("ActiveChest")) do if not E.chests then break end local root = chest:FindFirstChild("Root") if root then hrp.CFrame = root.CFrame * CFrame.new(0,0,-3) task.wait(0.3) local att = root:FindFirstChild("Attachment") if att then local pp = att:FindFirstChildOfClass("ProximityPrompt") if pp then pcall(function() fireproximityprompt(pp) end) task.wait((chest:GetAttribute("CaptureTime") or 3) + 1) end end end end end end task.wait(1) end end)