OP open source script
Key Required

OP open source script

[UPD] Plant Evolution [⭐3X]Tr0ngXTr0ngX 905 views 16 executesUpdated Dec 11, 2025
4.0/ 5(5 votes)
4180% Positive
Lua Script•749 lines (21768 chars)
--[[
    ╔═══════════════════════════════════════════╗
    ║       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("╚═══════════════════════════════════════════╝")

Features & Information

Auto INF WINS Auto Inf Spin Auto Buy Eggs Auto OP Pets Auto Pet Slot Egg Amount Slider

Community Comments (9)

SipLeanSipLeanDec 11, 2025

Good script keep it up.

Replying to @SipLean
Tr0ngXTr0ngXDec 12, 2025

@SipLean Thanks u bro

CouxCouxDec 11, 2025

can you make a script like this but for brainrot evolution?

Replying to @Coux
Tr0ngXTr0ngXDec 12, 2025

@Coux Wait me bro

Replying to @Tr0ngX
CouxCouxDec 13, 2025

@M4k3By41W1thPr0mpt (:

Replying to @Coux
Tr0ngXTr0ngXDec 15, 2025

@Coux I can't do that?

temachina69temachina69Dec 12, 2025

W script

temachina69temachina69Dec 13, 2025

Could you add infinite sun, and extra pet storage?

Replying to @temachina69
Tr0ngXTr0ngXDec 13, 2025

@temachina69 You can edit my script bro

More Scripts for [UPD] Plant Evolution [⭐3X]