-- [[ 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 ]] local Players = game:GetService("Players") local Workspace = game:GetService("Workspace") local LocalPlayer = Players.LocalPlayer local PlayerGui = LocalPlayer:WaitForChild("PlayerGui") local Rayfield local autofarmEnabled = false local running = true local statusText = "Idle" local errorText = "None" local Character local Humanoid local HRP local function updateCharacter(character) Character = character Humanoid = character:WaitForChild("Humanoid") HRP = character:WaitForChild("HumanoidRootPart") statusText = "Character Ready" end if LocalPlayer.Character then task.spawn(updateCharacter, LocalPlayer.Character) end LocalPlayer.CharacterAdded:Connect(function(character) task.spawn(updateCharacter, character) end) local function countPrompts(actionText) local count = 0 for _, obj in ipairs(Workspace:GetDescendants()) do if obj:IsA("ProximityPrompt") and obj.ActionText == actionText then count += 1 end end return count end local function log(message) print("[Evo Puffball] " .. tostring(message)) end local function safeStatus(message) statusText = message log(message) end local function getStatus() local puffballs = countPrompts("Harvest PuffBall") local boxes = 0 local grabs = countPrompts("Grab") local deliveries = countPrompts("Deliver Package") for _, obj in ipairs(Workspace:GetDescendants()) do if obj:IsA("BasePart") and obj.Name == "Box" then boxes += 1 end end return string.format( "Status: %s\nAutofarm: %s\nPuffballs: %d\nBoxes: %d\nGrab Prompts: %d\nDelivery Prompts: %d\nError: %s", statusText, autofarmEnabled and "ON" or "OFF", puffballs, boxes, grabs, deliveries, errorText ) end local success, result = pcall(function() Rayfield = loadstring( game:HttpGet("https://sirius.menu/rayfield") )() local Window = Rayfield:CreateWindow({ Name = "Evo Puffball Autofarm", LoadingTitle = "Evo Suite", LoadingSubtitle = "Status Monitor", ConfigurationSaving = { Enabled = false }, Discord = { Enabled = false }, KeySystem = false }) local MainTab = Window:CreateTab("Autofarm", 4483362458) MainTab:CreateToggle({ Name = "Enable Autofarm Monitor", CurrentValue = false, Flag = "PuffballMonitor", Callback = function(value) autofarmEnabled = value if value then safeStatus("Monitoring") else safeStatus("Stopped") end end }) MainTab:CreateButton({ Name = "Refresh Status", Callback = function() local status = getStatus() log(status) Rayfield:Notify({ Title = "Evo Puffball", Content = status, Duration = 8 }) end }) MainTab:CreateButton({ Name = "Clear Error Log", Callback = function() errorText = "None" log("Error log cleared") end }) MainTab:CreateButton({ Name = "Stop Monitor", Callback = function() running = false autofarmEnabled = false safeStatus("Monitor stopped") end }) end) if not success then errorText = tostring(result) warn("[Evo Puffball] GUI error: " .. errorText) return end task.spawn(function() while running do local ok, err = pcall(function() if autofarmEnabled then if not Character or not Character.Parent or not Humanoid or Humanoid.Health <= 0 or not HRP or not HRP.Parent then safeStatus("Waiting for respawn") else safeStatus("Monitoring") end end end) if not ok then errorText = tostring(err) warn("[Evo Puffball] " .. errorText) end task.wait(1) end end)