--[[ ╔═══════════════════════════════════════════╗ ║ Plant Evolution Hub - Premium ║ ║ Made by: M4k3By41W1thPr0mpt ║ ║ Version: 2.0.0 ║ ╚═══════════════════════════════════════════╝ ]] -- Cleanup old UI if game:GetService("CoreGui"):FindFirstChild("Rayfield") then game:GetService("CoreGui").Rayfield:Destroy() end -- Load Rayfield local Rayfield = loadstring(game:HttpGet('https://sirius.menu/rayfield'))() -- Services local ReplicatedStorage = game:GetService("ReplicatedStorage") local Players = game:GetService("Players") local LocalPlayer = Players.LocalPlayer local TeleportService = game:GetService("TeleportService") local VirtualInputManager = game:GetService("VirtualInputManager") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") -- Variables _G.AutoDelay = 0.5 _G.EggAmount = 20 -- Create Window local Window = Rayfield:CreateWindow({ Name = "🌱 Plant Evolution Hub v2.0", LoadingTitle = "Plant Evolution Hub", LoadingSubtitle = "Made by M4k3By41W1thPr0mpt", ConfigurationSaving = { Enabled = true, FolderName = "PlantEvolutionHub", FileName = "M4k3Config" }, Discord = { Enabled = false, Invite = "", RememberJoins = true }, KeySystem = false, Theme = "Amethyst" }) -- ===================== -- 🏠 MAIN TAB -- ===================== local MainTab = Window:CreateTab("🏠 Main", 4483362458) MainTab:CreateSection("👤 Player Info") MainTab:CreateParagraph({ Title = "📊 Your Stats", Content = "👤 Player: " .. LocalPlayer.Name .. "\n🆔 ID: " .. LocalPlayer.UserId .. "\n🎮 Game: Plant Evolution" }) MainTab:CreateSection("🏆 Quick Actions") MainTab:CreateButton({ Name = "♾️ INF WINS", Callback = function() pcall(function() ReplicatedStorage.Remote.Event.Egg.OpenEgg:FireServer(unpack({20, -50})) end) Rayfield:Notify({ Title = "✅ INF WINS", Content = "Successfully executed INF WINS!", Duration = 3, Image = 4483362458, }) end, }) MainTab:CreateButton({ Name = "🎰 Inf Spin", Callback = function() pcall(function() ReplicatedStorage.Remote.Function.Activity.TryDoSpin:InvokeServer(unpack({-100})) ReplicatedStorage.Remote.Function.Activity.TryDoSpin:InvokeServer(unpack({100})) end) Rayfield:Notify({ Title = "✅ Inf Spin", Content = "Spin executed successfully!", Duration = 3, Image = 4483362458, }) end, }) MainTab:CreateButton({ Name = "🔥 Execute All (INF WINS + Spin)", Callback = function() pcall(function() ReplicatedStorage.Remote.Event.Egg.OpenEgg:FireServer(unpack({20, -50})) ReplicatedStorage.Remote.Function.Activity.TryDoSpin:InvokeServer(unpack({-100})) ReplicatedStorage.Remote.Function.Activity.TryDoSpin:InvokeServer(unpack({100})) end) Rayfield:Notify({ Title = "✅ All Executed!", Content = "INF WINS + Inf Spin executed!", Duration = 3, Image = 4483362458, }) end, }) -- ===================== -- 🥚 EGGS TAB -- ===================== local EggsTab = Window:CreateTab("🥚 Eggs", 4483362458) EggsTab:CreateSection("🛒 Egg Shop") EggsTab:CreateButton({ Name = "🥚 Buy Best Eggs (20Aa)", Callback = function() pcall(function() ReplicatedStorage.Remote.Event.Egg.OpenEgg:FireServer(unpack({20, 3})) end) Rayfield:Notify({ Title = "✅ Eggs Purchased!", Content = "Successfully bought 20 Best Eggs!", Duration = 3, Image = 4483362458, }) end, }) EggsTab:CreateSection("🎚️ Custom Purchase") EggsTab:CreateSlider({ Name = "🔢 Egg Amount", Range = {1, 100}, Increment = 1, Suffix = " Eggs", CurrentValue = 20, Flag = "EggAmount", Callback = function(Value) _G.EggAmount = Value end, }) EggsTab:CreateDropdown({ Name = "🥚 Egg Type", Options = {"Best Egg (3)", "Premium Egg (2)", "Basic Egg (1)"}, CurrentOption = {"Best Egg (3)"}, MultipleOptions = false, Flag = "EggType", Callback = function(Options) if Options[1] == "Best Egg (3)" then _G.EggType = 3 elseif Options[1] == "Premium Egg (2)" then _G.EggType = 2 else _G.EggType = 1 end end, }) EggsTab:CreateButton({ Name = "🛍️ Buy Custom Amount Eggs", Callback = function() local amount = _G.EggAmount or 20 local eggType = _G.EggType or 3 pcall(function() ReplicatedStorage.Remote.Event.Egg.OpenEgg:FireServer(unpack({amount, eggType})) end) Rayfield:Notify({ Title = "✅ Eggs Purchased!", Content = "Successfully bought " .. amount .. " Eggs!", Duration = 3, Image = 4483362458, }) end, }) EggsTab:CreateSection("🔄 Auto Egg") EggsTab:CreateToggle({ Name = "🥚 Auto Buy Best Eggs", CurrentValue = false, Flag = "AutoBuyEggs", Callback = function(Value) _G.AutoBuyEggs = Value if Value then Rayfield:Notify({ Title = "✅ Auto Buy Eggs", Content = "Auto Buy Best Eggs enabled!", Duration = 3, Image = 4483362458, }) spawn(function() while _G.AutoBuyEggs do pcall(function() local amount = _G.EggAmount or 20 local eggType = _G.EggType or 3 ReplicatedStorage.Remote.Event.Egg.OpenEgg:FireServer(unpack({amount, eggType})) end) wait(_G.AutoDelay or 1) end end) else Rayfield:Notify({ Title = "❌ Auto Buy Eggs", Content = "Auto Buy Best Eggs disabled!", Duration = 3, Image = 4483362458, }) end end, }) -- ===================== -- 🐾 PETS TAB -- ===================== local PetsTab = Window:CreateTab("🐾 Pets", 4483362458) PetsTab:CreateSection("🎯 Pet Management") PetsTab:CreateButton({ Name = "➕ +1 Pet Slot", Callback = function() pcall(function() ReplicatedStorage.Remote.Event.Activity.ActivityBuy:FireServer(unpack({3})) end) Rayfield:Notify({ Title = "✅ Pet Slot Added!", Content = "Successfully added +1 Pet Slot!", Duration = 3, Image = 4483362458, }) end, }) PetsTab:CreateButton({ Name = "⭐ Get OP Pets", Callback = function() pcall(function() ReplicatedStorage.Remote.Event.Activity.ActivityBuy:FireServer(unpack({2})) end) Rayfield:Notify({ Title = "✅ OP Pets!", Content = "Successfully obtained OP Pets!", Duration = 3, Image = 4483362458, }) end, }) PetsTab:CreateButton({ Name = "🔥 Get All (OP Pets + Slot)", Callback = function() pcall(function() ReplicatedStorage.Remote.Event.Activity.ActivityBuy:FireServer(unpack({2})) ReplicatedStorage.Remote.Event.Activity.ActivityBuy:FireServer(unpack({3})) end) Rayfield:Notify({ Title = "✅ All Obtained!", Content = "OP Pets + Pet Slot obtained!", Duration = 3, Image = 4483362458, }) end, }) PetsTab:CreateSection("🔄 Auto Pet Features") PetsTab:CreateToggle({ Name = "🔁 Auto Get OP Pets", CurrentValue = false, Flag = "AutoOPPets", Callback = function(Value) _G.AutoOPPets = Value if Value then Rayfield:Notify({ Title = "✅ Auto OP Pets", Content = "Auto Get OP Pets enabled!", Duration = 3, Image = 4483362458, }) spawn(function() while _G.AutoOPPets do pcall(function() ReplicatedStorage.Remote.Event.Activity.ActivityBuy:FireServer(unpack({2})) end) wait(_G.AutoDelay or 1) end end) else Rayfield:Notify({ Title = "❌ Auto OP Pets", Content = "Auto Get OP Pets disabled!", Duration = 3, Image = 4483362458, }) end end, }) PetsTab:CreateToggle({ Name = "🔁 Auto +1 Pet Slot", CurrentValue = false, Flag = "AutoPetSlot", Callback = function(Value) _G.AutoPetSlot = Value if Value then Rayfield:Notify({ Title = "✅ Auto Pet Slot", Content = "Auto +1 Pet Slot enabled!", Duration = 3, Image = 4483362458, }) spawn(function() while _G.AutoPetSlot do pcall(function() ReplicatedStorage.Remote.Event.Activity.ActivityBuy:FireServer(unpack({3})) end) wait(_G.AutoDelay or 1) end end) else Rayfield:Notify({ Title = "❌ Auto Pet Slot", Content = "Auto +1 Pet Slot disabled!", Duration = 3, Image = 4483362458, }) end end, }) -- ===================== -- ⚡ AUTO FARM TAB -- ===================== local AutoTab = Window:CreateTab("⚡ Auto Farm", 4483362458) AutoTab:CreateSection("🤖 Main Automation") AutoTab:CreateToggle({ Name = "♾️ Auto INF WINS", CurrentValue = false, Flag = "AutoInfWins", Callback = function(Value) _G.AutoInfWins = Value if Value then Rayfield:Notify({ Title = "✅ Auto INF WINS", Content = "Auto INF WINS enabled!", Duration = 3, Image = 4483362458, }) spawn(function() while _G.AutoInfWins do pcall(function() ReplicatedStorage.Remote.Event.Egg.OpenEgg:FireServer(unpack({20, -50})) end) wait(_G.AutoDelay or 0.5) end end) else Rayfield:Notify({ Title = "❌ Auto INF WINS", Content = "Auto INF WINS disabled!", Duration = 3, Image = 4483362458, }) end end, }) AutoTab:CreateToggle({ Name = "🎰 Auto Inf Spin", CurrentValue = false, Flag = "AutoInfSpin", Callback = function(Value) _G.AutoInfSpin = Value if Value then Rayfield:Notify({ Title = "✅ Auto Inf Spin", Content = "Auto Inf Spin enabled!", Duration = 3, Image = 4483362458, }) spawn(function() while _G.AutoInfSpin do pcall(function() ReplicatedStorage.Remote.Function.Activity.TryDoSpin:InvokeServer(unpack({-100})) ReplicatedStorage.Remote.Function.Activity.TryDoSpin:InvokeServer(unpack({100})) end) wait(_G.AutoDelay or 0.5) end end) else Rayfield:Notify({ Title = "❌ Auto Inf Spin", Content = "Auto Inf Spin disabled!", Duration = 3, Image = 4483362458, }) end end, }) AutoTab:CreateSection("🔥 Ultimate Auto") AutoTab:CreateToggle({ Name = "⚡ Auto ALL (Everything)", CurrentValue = false, Flag = "AutoAll", Callback = function(Value) _G.AutoAll = Value if Value then Rayfield:Notify({ Title = "✅ Auto ALL", Content = "All automation enabled!", Duration = 3, Image = 4483362458, }) spawn(function() while _G.AutoAll do pcall(function() -- INF WINS ReplicatedStorage.Remote.Event.Egg.OpenEgg:FireServer(unpack({20, -50})) -- Inf Spin ReplicatedStorage.Remote.Function.Activity.TryDoSpin:InvokeServer(unpack({-100})) ReplicatedStorage.Remote.Function.Activity.TryDoSpin:InvokeServer(unpack({100})) -- OP Pets ReplicatedStorage.Remote.Event.Activity.ActivityBuy:FireServer(unpack({2})) -- Pet Slot ReplicatedStorage.Remote.Event.Activity.ActivityBuy:FireServer(unpack({3})) -- Buy Eggs ReplicatedStorage.Remote.Event.Egg.OpenEgg:FireServer(unpack({20, 3})) end) wait(_G.AutoDelay or 0.5) end end) else Rayfield:Notify({ Title = "❌ Auto ALL", Content = "All automation disabled!", Duration = 3, Image = 4483362458, }) end end, }) AutoTab:CreateSection("⏱️ Speed Control") AutoTab:CreateSlider({ Name = "🕐 Auto Delay", Range = {0.1, 5}, Increment = 0.1, Suffix = " seconds", CurrentValue = 0.5, Flag = "AutoDelay", Callback = function(Value) _G.AutoDelay = Value end, }) -- ===================== -- 🛠️ UTILITIES TAB -- ===================== local UtilsTab = Window:CreateTab("🛠️ Utilities", 4483362458) UtilsTab:CreateSection("🎮 Game Utils") UtilsTab:CreateToggle({ Name = "🚫 Anti-AFK", CurrentValue = false, Flag = "AntiAFK", Callback = function(Value) _G.AntiAFK = Value if Value then Rayfield:Notify({ Title = "✅ Anti-AFK", Content = "Anti-AFK enabled! You won't be kicked.", Duration = 3, Image = 4483362458, }) spawn(function() while _G.AntiAFK do pcall(function() VirtualInputManager:SendKeyEvent(true, Enum.KeyCode.W, false, game) wait(0.1) VirtualInputManager:SendKeyEvent(false, Enum.KeyCode.W, false, game) end) wait(60) end end) else Rayfield:Notify({ Title = "❌ Anti-AFK", Content = "Anti-AFK disabled!", Duration = 3, Image = 4483362458, }) end end, }) UtilsTab:CreateSection("🏃 Player Mods") UtilsTab:CreateSlider({ Name = "🚀 Walk Speed", Range = {16, 500}, Increment = 1, Suffix = " Speed", CurrentValue = 16, Flag = "WalkSpeed", Callback = function(Value) pcall(function() LocalPlayer.Character.Humanoid.WalkSpeed = Value end) end, }) UtilsTab:CreateSlider({ Name = "🦘 Jump Power", Range = {50, 500}, Increment = 1, Suffix = " Power", CurrentValue = 50, Flag = "JumpPower", Callback = function(Value) pcall(function() LocalPlayer.Character.Humanoid.JumpPower = Value end) end, }) UtilsTab:CreateToggle({ Name = "🌙 Infinite Jump", CurrentValue = false, Flag = "InfJump", Callback = function(Value) _G.InfJump = Value if Value then Rayfield:Notify({ Title = "✅ Infinite Jump", Content = "Infinite Jump enabled!", Duration = 3, Image = 4483362458, }) else Rayfield:Notify({ Title = "❌ Infinite Jump", Content = "Infinite Jump disabled!", Duration = 3, Image = 4483362458, }) end end, }) -- Infinite Jump Handler UserInputService.JumpRequest:Connect(function() if _G.InfJump then pcall(function() LocalPlayer.Character.Humanoid:ChangeState(Enum.HumanoidStateType.Jumping) end) end end) UtilsTab:CreateSection("🔧 Quick Actions") UtilsTab:CreateButton({ Name = "🔄 Rejoin Server", Callback = function() Rayfield:Notify({ Title = "🔄 Rejoining...", Content = "Rejoining server in 3 seconds...", Duration = 3, Image = 4483362458, }) wait(3) TeleportService:Teleport(game.PlaceId, LocalPlayer) end, }) UtilsTab:CreateButton({ Name = "🌐 Server Hop", Callback = function() Rayfield:Notify({ Title = "🌐 Server Hopping...", Content = "Finding new server...", Duration = 3, Image = 4483362458, }) wait(1) pcall(function() local servers = {} local req = game:HttpGet("https://games.roblox.com/v1/games/" .. game.PlaceId .. "/servers/Public?sortOrder=Asc&limit=100") local data = game:GetService("HttpService"):JSONDecode(req) for _, server in pairs(data.data) do if server.playing < server.maxPlayers and server.id ~= game.JobId then table.insert(servers, server.id) end end if #servers > 0 then TeleportService:TeleportToPlaceInstance(game.PlaceId, servers[math.random(1, #servers)], LocalPlayer) end end) end, }) UtilsTab:CreateButton({ Name = "📋 Copy Game Link", Callback = function() setclipboard("https://www.roblox.com/games/" .. game.PlaceId) Rayfield:Notify({ Title = "📋 Copied!", Content = "Game link copied to clipboard!", Duration = 3, Image = 4483362458, }) end, }) UtilsTab:CreateButton({ Name = "💀 Reset Character", Callback = function() LocalPlayer.Character.Humanoid.Health = 0 Rayfield:Notify({ Title = "💀 Reset", Content = "Character reset!", Duration = 2, Image = 4483362458, }) end, }) -- ===================== -- ⚙️ SETTINGS TAB -- ===================== local SettingsTab = Window:CreateTab("⚙️ Settings", 4483362458) SettingsTab:CreateSection("🎨 Interface Settings") SettingsTab:CreateKeybind({ Name = "🔑 Toggle UI Keybind", CurrentKeybind = "RightShift", HoldToInteract = false, Flag = "UIKeybind", Callback = function(Keybind) -- Handled by Rayfield end, }) SettingsTab:CreateDropdown({ Name = "🎨 UI Theme", Options = {"Default", "Ocean", "AmberGlow", "Amethyst", "Bloom", "DarkBlue", "Green", "Light", "Serenity"}, CurrentOption = {"Amethyst"}, MultipleOptions = false, Flag = "ThemeDropdown", Callback = function(Options) Rayfield:Notify({ Title = "🎨 Theme", Content = "Theme: " .. Options[1] .. "\nWill apply on next load!", Duration = 3, Image = 4483362458, }) end, }) SettingsTab:CreateSection("🔔 Notifications") SettingsTab:CreateToggle({ Name = "🔔 Enable Notifications", CurrentValue = true, Flag = "EnableNotifs", Callback = function(Value) _G.EnableNotifs = Value end, }) SettingsTab:CreateSection("ℹ️ Script Info") SettingsTab:CreateParagraph({ Title = "👤 Credits", Content = "🔧 Made by: M4k3By41W1thPr0mpt\n\n📌 Version: 2.0.0\n\n🎮 Game: Plant Evolution\n\n⚠️ Use at your own risk!\n\n🌟 Thank you for using!" }) SettingsTab:CreateSection("⚠️ Danger Zone") SettingsTab:CreateButton({ Name = "🛑 Stop All Loops", Callback = function() _G.AutoInfWins = false _G.AutoInfSpin = false _G.AutoBuyEggs = false _G.AutoOPPets = false _G.AutoPetSlot = false _G.AutoAll = false _G.AntiAFK = false Rayfield:Notify({ Title = "🛑 Stopped", Content = "All loops have been stopped!", Duration = 3, Image = 4483362458, }) end, }) SettingsTab:CreateButton({ Name = "🗑️ Destroy UI", Callback = function() -- Stop all loops first _G.AutoInfWins = false _G.AutoInfSpin = false _G.AutoBuyEggs = false _G.AutoOPPets = false _G.AutoPetSlot = false _G.AutoAll = false _G.AntiAFK = false _G.InfJump = false Rayfield:Notify({ Title = "👋 Goodbye!", Content = "Thanks for using!\nMade by M4k3By41W1thPr0mpt", Duration = 2, Image = 4483362458, }) wait(2) Rayfield:Destroy() end, }) -- ===================== -- 🎉 LOAD NOTIFICATION -- ===================== Rayfield:Notify({ Title = "🌱 Plant Evolution Hub v2.0", Content = "Script loaded successfully!\n\n👤 Made by: M4k3By41W1thPr0mpt\n⌨️ Press RightShift to toggle UI", Duration = 6, Image = 4483362458, }) -- Console Message print("╔═══════════════════════════════════════════╗") print("║ 🌱 Plant Evolution Hub v2.0 Loaded ║") print("║ Made by: M4k3By41W1thPr0mpt ║") print("║ Press RightShift to toggle UI ║") print("╚═══════════════════════════════════════════╝")