-- Firefly Farm [LCTRL] – Fantastic Frontier -- clean & safe version local Players = game:GetService("Players") local UIS = game:GetService("UserInputService") local plr = Players.LocalPlayer local ffarm = false local root -- wait for character local function getRoot() local char = plr.Character or plr.CharacterAdded:Wait() return char:WaitForChild("HumanoidRootPart") end root = getRoot() plr.CharacterAdded:Connect(function() task.wait(1) root = getRoot() end) -- find any RemoteEvent inside firefly local function getCollectEvent(firefly) if not firefly then return nil end for _,v in ipairs(firefly:GetDescendants()) do if v:IsA("RemoteEvent") then return v end end return nil end -- ensure HOLE exists local function ensureHole() if workspace:FindFirstChild("HOLE") and workspace.HOLE:FindFirstChild("HoleTPEntrance") then return workspace.HOLE.HoleTPEntrance end repeat local prev = root.CFrame root.CFrame = CFrame.new(1304,96,-525) task.wait() root.CFrame = prev task.wait(1) until workspace.HOLE and workspace.HOLE:FindFirstChild("HoleTPEntrance") return workspace.HOLE.HoleTPEntrance end -- teleport & collect local function gotoFirefly(fly) if not fly or not fly.Parent then return end local part = fly:IsA("BasePart") and fly or fly:FindFirstChildWhichIsA("BasePart") if not part then return end local hole = ensureHole() if (root.Position - part.Position).Magnitude > 200 then hole.Size = Vector3.new(1,1,1) hole.Transparency = 1 hole.CFrame = root.CFrame repeat hole.Position = root.Position task.wait() until (hole.Position - root.Position).Magnitude < 10 hole.Position = Vector3.new(1318,85,-527) hole.Size = Vector3.new(14,5,17) repeat task.wait() until (root.Position - Vector3.new(430,441,102)).Magnitude < 10 end for i = 1, 6 do root.Anchored = true root.CFrame = part.CFrame + Vector3.new(0,3,0) task.wait(0.08) end root.Anchored = false local ev = getCollectEvent(fly) if ev then ev:FireServer() end end -- main loop toggle UIS.InputBegan:Connect(function(input, gp) if gp then return end if input.KeyCode == Enum.KeyCode.LeftControl then ffarm = not ffarm print(ffarm and "[Firefly Farm] ON" or "[Firefly Farm] OFF") while ffarm do local flies = workspace:FindFirstChild("Fireflies") if flies then local fly = flies:FindFirstChild("FireflyServer") if fly then gotoFirefly(fly) end end task.wait(0.15) end end end)