Key Required

Be a Lucky Blockezscriptzezscriptz 1.3K views 968 executesUpdated May 18, 2026
5.0/ 5(1 votes)
10100% Positive
Lua Script•1410 lines (48645 chars)
--[[
script aint verified by scriptblox be carefull!
]]

local Fluent = loadstring(game:HttpGet("https://github.com/dawid-scripts/Fluent/releases/latest/download/main.lua"))()
local SaveManager = loadstring(game:HttpGet("https://raw.githubusercontent.com/dawid-scripts/Fluent/master/Addons/SaveManager.lua"))()
local InterfaceManager = loadstring(game:HttpGet("https://raw.githubusercontent.com/dawid-scripts/Fluent/master/Addons/InterfaceManager.lua"))()
local Window = Fluent:CreateWindow({
    Title = "pulled. Be a Lucky Block",
    SubTitle = "by mrragdol5",
    TabWidth = 160,
    Size = UDim2.fromOffset(550, 430),
    Acrylic = false,
    Theme = "Darker",
    MinimizeKey = Enum.KeyCode.LeftControl
})
local Tabs = {
    Misc = Window:AddTab({ Title = "Misc", Icon = "box" }),
    Upgrades = Window:AddTab({ Title = "Upgrades", Icon = "info" }),
    Farm = Window:AddTab({ Title = "Farm", Icon = "bot" }),
    Sell = Window:AddTab({ Title = "Sell", Icon = "dollar-sign" }),
    Speed = Window:AddTab({ Title = "Speed", Icon = "gauge" }),
    Webhook = Window:AddTab({ Title = "Webhook", Icon = "wifi" }),
    Settings = Window:AddTab({ Title = "Settings", Icon = "settings" })
}



local Options = Fluent.Options
do
-----
-----
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local claimGift = ReplicatedStorage
    :WaitForChild("Packages")
    :WaitForChild("_Index")
    :WaitForChild("sleitnick_knit@1.7.0")
    :WaitForChild("knit")
    :WaitForChild("Services")
    :WaitForChild("PlaytimeRewardService")
    :WaitForChild("RF")
    :WaitForChild("ClaimGift")
local autoClaiming = false
local ACPR = Tabs.Misc:AddToggle("ACPR", {
    Title = "Auto Claim Playtime Rewards",
    Default = false
})
ACPR:OnChanged(function(state)
    autoClaiming = state
    if not state then return end
    task.spawn(function()
        while autoClaiming do
            for reward = 1, 12 do
                if not autoClaiming then break end
                local success, err = pcall(function()
                    claimGift:InvokeServer(reward)
                end)
                task.wait(0.25)
            end
            task.wait(1)
        end
    end)
end)
Options.ACPR:SetValue(false)
-----
-----
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local rebirth = ReplicatedStorage
    :WaitForChild("Packages")
    :WaitForChild("_Index")
    :WaitForChild("sleitnick_knit@1.7.0")
    :WaitForChild("knit")
    :WaitForChild("Services")
    :WaitForChild("RebirthService")
    :WaitForChild("RF")
    :WaitForChild("Rebirth")
local running = false
local AR = Tabs.Farm:AddToggle("AR", {
    Title = "Auto Rebirth",
    Default = false
})
AR:OnChanged(function(state)
    running = state
    if not state then return end
    task.spawn(function()
        while running do
            pcall(function()
                rebirth:InvokeServer()
            end)
            task.wait(1)
        end
    end)
end)
Options.AR:SetValue(false)
-----
-----
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local claim = ReplicatedStorage
    :WaitForChild("Packages")
    :WaitForChild("_Index")
    :WaitForChild("sleitnick_knit@1.7.0")
    :WaitForChild("knit")
    :WaitForChild("Services")
    :WaitForChild("SeasonPassService")
    :WaitForChild("RF")
    :WaitForChild("ClaimPassReward")
local running = false
local ACEPR = Tabs.Misc:AddToggle("ACEPR", {
    Title = "Auto Claim Event Pass Rewards",
    Default = false
})
ACEPR:OnChanged(function(state)
    running = state
    if not state then return end
    task.spawn(function()
        while running do
            local gui = player:WaitForChild("PlayerGui")
                :WaitForChild("Windows")
                :WaitForChild("Event")
                :WaitForChild("Frame")
                :WaitForChild("Frame")
                :WaitForChild("Windows")
                :WaitForChild("Pass")
                :WaitForChild("Main")
                :WaitForChild("ScrollingFrame")
            for i = 1, 10 do
                if not running then break end
                local item = gui:FindFirstChild(tostring(i))
                if item and item:FindFirstChild("Frame") and item.Frame:FindFirstChild("Free") then
                    local free = item.Frame.Free
                    local locked = free:FindFirstChild("Locked")
                    local claimed = free:FindFirstChild("Claimed")
                    while running and locked and locked.Visible do
                        task.wait(0.2)
                    end
                    if running and claimed and claimed.Visible then
                        continue
                    end
                    if running and locked and not locked.Visible then
                        pcall(function()
                            claim:InvokeServer("Free", i)
                        end)
                    end
                end
            end
            task.wait(0.5)
        end
    end)
end)
Options.ACEPR:SetValue(false)
-----
-----
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local redeem = ReplicatedStorage
    :WaitForChild("Packages")
    :WaitForChild("_Index")
    :WaitForChild("sleitnick_knit@1.7.0")
    :WaitForChild("knit")
    :WaitForChild("Services")
    :WaitForChild("CodesService")
    :WaitForChild("RF")
    :WaitForChild("RedeemCode")
local codes = {
    "release",
    "DEVIL",
    "ZEUS"
}
Tabs.Misc:AddButton({
    Title = "Redeem All Codes",
    Callback = function()
        for _, code in ipairs(codes) do
            pcall(function()
                redeem:InvokeServer(code)
            end)
            task.wait(1)
        end
    end
})
-----
-----
Tabs.Upgrades:AddSection("Speed Upgrades")
-----
-----
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local upgrade = ReplicatedStorage
    :WaitForChild("Packages")
    :WaitForChild("_Index")
    :WaitForChild("sleitnick_knit@1.7.0")
    :WaitForChild("knit")
    :WaitForChild("Services")
    :WaitForChild("UpgradesService")
    :WaitForChild("RF")
    :WaitForChild("Upgrade")
local amount = 1
local delayTime = 0.5
local running = false
local IMS = Tabs.Upgrades:AddInput("IMS", {
    Title = "Speed Amount",
    Default = "1",
    Placeholder = "Number",
    Numeric = true,
    Finished = false,
    Callback = function(Value)
        amount = tonumber(Value) or 1
    end
})
IMS:OnChanged(function(Value)
    amount = tonumber(Value) or 1
end)
local SMS = Tabs.Upgrades:AddSlider("SMS", {
    Title = "Upgrade Interval",
    Description = "",
    Default = 1,
    Min = 0,
    Max = 5,
    Rounding = 1,
    Callback = function(Value)
        delayTime = Value
    end
})
SMS:OnChanged(function(Value)
    delayTime = Value
end)
SMS:SetValue(1)
local AMS = Tabs.Upgrades:AddToggle("AMS", {
    Title = "Auto Upgrade Speed",
    Default = false
})
AMS:OnChanged(function(state)
    running = state
    if not state then return end
    task.spawn(function()
        while running do
            pcall(function()
                upgrade:InvokeServer("MovementSpeed", amount)
            end)
            task.wait(delayTime)
        end
    end)
end)
Options.AMS:SetValue(false)
-----
-----
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local buy = ReplicatedStorage
    :WaitForChild("Packages")
    :WaitForChild("_Index")
    :WaitForChild("sleitnick_knit@1.7.0")
    :WaitForChild("knit")
    :WaitForChild("Services")
    :WaitForChild("SkinService")
    :WaitForChild("RF")
    :WaitForChild("BuySkin")
local skins = {
    "prestige_mogging_luckyblock",
    "mogging_luckyblock",
    "twoface_luckyblock",
    "colossus _luckyblock",
    "inferno_luckyblock",
    "divine_luckyblock",
    "spirit_luckyblock",
    "cyborg_luckyblock",
    "void_luckyblock",
    "gliched_luckyblock",
    "lava_luckyblock",
    "freezy_luckyblock",
    "fairy_luckyblock"
}
local suffix = {
    K = 1e3,
    M = 1e6,
    B = 1e9,
    T = 1e12,
    Qa = 1e15,
    Qi = 1e18,
    Sx = 1e21,
    Sp = 1e24,
    Oc = 1e27,
    No = 1e30,
    Dc = 1e33
}
local function parseCash(text)
    text = text:gsub("%$", ""):gsub(",", ""):gsub("%s+", "")
    local num = tonumber(text:match("[%d%.]+"))
    local suf = text:match("%a+")
    if not num then return 0 end
    if suf and suffix[suf] then
        return num * suffix[suf]
    end
    return num
end
local running = false
local ABL = Tabs.Misc:AddToggle("ABL", {
    Title = "Auto Buy Best Luckyblock",
    Default = false
})
ABL:OnChanged(function(state)
    running = state
    if not state then return end
    task.spawn(function()
        while running do
            local gui = player.PlayerGui:FindFirstChild("Windows")
            if not gui then 
                task.wait(1)
                continue 
            end
            local pickaxeShop = gui:FindFirstChild("PickaxeShop")
            if not pickaxeShop then 
                task.wait(1)
                continue 
            end
            local shopContainer = pickaxeShop:FindFirstChild("ShopContainer")
            if not shopContainer then 
                task.wait(1)
                continue 
            end
            local scrollingFrame = shopContainer:FindFirstChild("ScrollingFrame")
            if not scrollingFrame then 
                task.wait(1)
                continue 
            end
            local cash = player.leaderstats.Cash.Value
            local bestSkin = nil
            local bestPrice = 0
            for i = 1, #skins do
                local name = skins[i]
                local item = scrollingFrame:FindFirstChild(name)
                if item then
                    local main = item:FindFirstChild("Main")
                    if main then
                        local buyFolder = main:FindFirstChild("Buy")
                        if buyFolder then
                            local buyButton = buyFolder:FindFirstChild("BuyButton")
                            if buyButton and buyButton.Visible then
                                local cashLabel = buyButton:FindFirstChild("Cash")
                                if cashLabel then
                                    local price = parseCash(cashLabel.Text)
                                    if cash >= price and price > bestPrice then
                                        bestSkin = name
                                        bestPrice = price
                                    end
                                end
                            end
                        end
                    end
                end
            end
            if bestSkin then
                pcall(function()
                    buy:InvokeServer(bestSkin)
                end)
            end
            task.wait(0.5)
        end
    end)
end)
Options.ABL:SetValue(false)
-----
-----
Tabs.Misc:AddButton({
    Title = "Sell Held Brainrot",
    Callback = function()
        Window:Dialog({
            Title = "Confirm Sale",
            Content = "Are you sure you want to sell this held Brainrot?",
            Buttons = {
                {
                    Title = "Confirm",
                    Callback = function()
                        local player = game:GetService("Players").LocalPlayer
                        local character = player.Character or player.CharacterAdded:Wait()
                        local tool = character:FindFirstChildOfClass("Tool")
                        if not tool then
                            Fluent:Notify({
                                Title = "ERROR!",
                                Content = "Equip the Brainrot you want to Sell",
                                Duration = 5
                            })
                            return
                        end
                        local entityId = tool:GetAttribute("EntityId")
                        if not entityId then return end
                        local args = {
                            entityId
                        }
                        game:GetService("ReplicatedStorage")
                            :WaitForChild("Packages")
                            :WaitForChild("_Index")
                            :WaitForChild("sleitnick_knit@1.7.0")
                            :WaitForChild("knit")
                            :WaitForChild("Services")
                            :WaitForChild("InventoryService")
                            :WaitForChild("RF")
                            :WaitForChild("SellBrainrot")
                            :InvokeServer(unpack(args))
                        Fluent:Notify({
                            Title = "SOLD!",
                            Content = "Sold: " .. tool.Name,
                            Duration = 5
                        })

                    end
                },
                {
                    Title = "Cancel",
                    Callback = function()
                    end
                }
            }
        })
    end
})
-----
-----
Tabs.Misc:AddButton({
    Title = "Pickup All Your Brainrots",
    Callback = function()
        Window:Dialog({
            Title = "Confirm Pickup!",
            Content = "Pick up all Brainrots?",
            Buttons = {
                {
                    Title = "Confirm",
                    Callback = function()
                        local player = game:GetService("Players").LocalPlayer
                        local username = player.Name
                        local plotsFolder = workspace:WaitForChild("Plots")
                        local myPlot
                        for i = 1, 5 do
                            local plot = plotsFolder:FindFirstChild(tostring(i))
                            if plot and plot:FindFirstChild(tostring(i)) then
                                local inner = plot[tostring(i)]
                                for _, v in pairs(inner:GetDescendants()) do
                                    if v:IsA("BillboardGui") and string.find(v.Name, username) then
                                        myPlot = inner
                                        break
                                    end
                                end
                            end
                            if myPlot then break end
                        end
                        if not myPlot then return end
                        local containers = myPlot:FindFirstChild("Containers")
                        if not containers then return end
                        for i = 1, 30 do
                            local containerFolder = containers:FindFirstChild(tostring(i))
                            if containerFolder and containerFolder:FindFirstChild(tostring(i)) then
                                local container = containerFolder[tostring(i)]
                                local innerModel = container:FindFirstChild("InnerModel")
                                if innerModel and #innerModel:GetChildren() > 0 then
                                    local args = {
                                        tostring(i)
                                    }
                                    game:GetService("ReplicatedStorage")
                                        :WaitForChild("Packages")
                                        :WaitForChild("_Index")
                                        :WaitForChild("sleitnick_knit@1.7.0")
                                        :WaitForChild("knit")
                                        :WaitForChild("Services")
                                        :WaitForChild("ContainerService")
                                        :WaitForChild("RF")
                                        :WaitForChild("PickupBrainrot")
                                        :InvokeServer(unpack(args))
                                    task.wait(0.1)
                                end
                            end
                        end
                        Fluent:Notify({
                            Title = "Done!",
                            Content = "Picked up all Brainrots",
                            Duration = 5
                        })
                    end
                },
                {
                    Title = "Cancel",
                    Callback = function()
                    end
                }
            }
        })
    end
})
-----
-----
local storedParts = {}
local folder = workspace:WaitForChild("BossTouchDetectors")
local RBTD = Tabs.Farm:AddToggle("RBTD", {
    Title = "Remove Bad Boss Touch Detectors",
    Description = "will make it so only the last boss can capture you",
    Default = false
})
RBTD:OnChanged(function(state)
    if state then
        storedParts = {}
        for _, obj in ipairs(folder:GetChildren()) do
            if obj.Name ~= "base14" then
                table.insert(storedParts, obj)
                obj.Parent = nil
            end
        end
    else
        for _, obj in ipairs(storedParts) do
            if obj then
                obj.Parent = folder
            end
        end
        storedParts = {}
    end
end)
Options.RBTD:SetValue(false)
-----
-----
Tabs.Farm:AddButton({
    Title = "Teleport to End",
    Callback = function()
        local modelsFolder = workspace:WaitForChild("RunningModels")
        local target = workspace:WaitForChild("CollectZones"):WaitForChild("base14")
        local targetCFrame = target.CFrame * CFrame.new(0, -5, 0)
        for _, obj in ipairs(modelsFolder:GetChildren()) do
            if obj:IsA("Model") then
                if obj.PrimaryPart then
                    obj:SetPrimaryPartCFrame(targetCFrame)
                else
                    local part = obj:FindFirstChildWhichIsA("BasePart")
                    if part then
                        part.CFrame = targetCFrame
                    end
                end
            elseif obj:IsA("BasePart") then
                obj.CFrame = targetCFrame
            end
        end
    end
})
-----
-----
Tabs.Farm:AddSection("Farming")
local running = false
local AutoFarmToggle = Tabs.Farm:AddToggle("AutoFarmToggle", {
    Title = "Auto Farm Best Brainrots",
    Default = false
})
AutoFarmToggle:OnChanged(function(state)
    running = state
    if state then
        task.spawn(function()
            while running do
                local player = game.Players.LocalPlayer
                local character = player.Character or player.CharacterAdded:Wait()
                local root = character:WaitForChild("HumanoidRootPart")
                local humanoid = character:WaitForChild("Humanoid")
                local userId = player.UserId
                local modelsFolder = workspace:WaitForChild("RunningModels")
                local target = workspace:WaitForChild("CollectZones"):WaitForChild("base14")
                root.CFrame = CFrame.new(715, 39, -2122)
                task.wait(0.3)
                humanoid:MoveTo(Vector3.new(710, 39, -2122))
                local ownedModel = nil
                repeat
                    task.wait(0.3)
                    for _, obj in ipairs(modelsFolder:GetChildren()) do
                        if obj:IsA("Model") and obj:GetAttribute("OwnerId") == userId then
                            ownedModel = obj
                            break
                        end
                    end
                until ownedModel ~= nil or not running
                if not running then break end
                if ownedModel.PrimaryPart then
                    ownedModel:SetPrimaryPartCFrame(target.CFrame)
                else
                    local part = ownedModel:FindFirstChildWhichIsA("BasePart")
                    if part then
                        part.CFrame = target.CFrame
                    end
                end
                task.wait(0.7)
                if ownedModel and ownedModel.Parent == modelsFolder then
                    if ownedModel.PrimaryPart then
                        ownedModel:SetPrimaryPartCFrame(target.CFrame * CFrame.new(0, -5, 0))
                    else
                        local part = ownedModel:FindFirstChildWhichIsA("BasePart")
                        if part then
                            part.CFrame = target.CFrame * CFrame.new(0, -5, 0)
                        end
                    end
                end
                repeat
                    task.wait(0.3)
                until not running or (ownedModel == nil or ownedModel.Parent ~= modelsFolder)
                if not running then break end
                local oldCharacter = player.Character
                repeat
                    task.wait(0.2)
                until not running or (player.Character ~= oldCharacter and player.Character ~= nil)
                if not running then break end
                task.wait(0.4)
                local newChar = player.Character
                local newRoot = newChar:WaitForChild("HumanoidRootPart")
                newRoot.CFrame = CFrame.new(737, 39, -2118)
                task.wait(2.1)
            end
        end)
    end
end)
Options.AutoFarmToggle:SetValue(false)
-----
-----
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local running = false
local luckyBlockSpeed = 1000
local playerSpeed = 23
local brainrotSpeed = 1000
local originalSpeed = nil
local currentModel = nil
local function getMyModel()
    local folder = workspace:FindFirstChild("RunningModels")
    if not folder then return nil end
    for _, model in ipairs(folder:GetChildren()) do
        if model:GetAttribute("OwnerId") == player.UserId then
            return model
        end
    end
    return nil
end
local function applySpeed()
    local methods = Options.SpeedMethod.Value
    local character = workspace:FindFirstChild(player.Name)
    local humanoid = character and character:FindFirstChild("Humanoid")
    if methods["Luckyblock"] then
        local model = getMyModel()
        if model then
            if model ~= currentModel then
                currentModel = model
                originalSpeed = model:GetAttribute("MovementSpeed")
            end
            if originalSpeed == nil then
                originalSpeed = model:GetAttribute("MovementSpeed")
            end
            model:SetAttribute("MovementSpeed", luckyBlockSpeed)
        end
    end
    if humanoid then
        local hasBrainrot = character:GetAttribute("BrainrotType") ~= nil
        if hasBrainrot and methods["Brainrot"] then
            humanoid.WalkSpeed = brainrotSpeed
        elseif not hasBrainrot and methods["Player"] then
            humanoid.WalkSpeed = playerSpeed
        end
    end
end
task.spawn(function()
    while true do
        if running then
            applySpeed()
        end
        task.wait(0.2)
    end
end)
local SpeedMethod = Tabs.Speed:AddDropdown("SpeedMethod", {
    Title = "Speed Method",
    Values = {"Luckyblock", "Brainrot", "Player"},
    Multi = true,
    Default = {"Luckyblock"},
})
local Toggle = Tabs.Speed:AddToggle("MovementToggle", {
    Title = "Enable Custom Speed",
    Default = false
})
Toggle:OnChanged(function()
    running = Options.MovementToggle.Value
    if not running then
        local model = getMyModel()
        if model and originalSpeed ~= nil then
            model:SetAttribute("MovementSpeed", originalSpeed)
        end
        originalSpeed = nil
        currentModel = nil
        local character = workspace:FindFirstChild(player.Name)
        if character then
            local humanoid = character:FindFirstChild("Humanoid")
            if humanoid then
                humanoid.WalkSpeed = 23
            end
        end
    end
end)
local LuckyBlockSlider = Tabs.Speed:AddSlider("LuckyBlockSlider", {
    Title = "Lucky Block Speed",
    Default = 1000,
    Min = 50,
    Max = 3000,
    Rounding = 0
})
LuckyBlockSlider:OnChanged(function(Value)
    luckyBlockSpeed = Value
end)
local BrainrotSlider = Tabs.Speed:AddSlider("BrainrotSlider", {
    Title = "Brainrot Speed",
    Default = 1000,
    Min = 50,
    Max = 3000,
    Rounding = 0
})
BrainrotSlider:OnChanged(function(Value)
    brainrotSpeed = Value
end)
local PlayerSlider = Tabs.Speed:AddSlider("PlayerSlider", {
    Title = "Player Speed",
    Default = 23,
    Min = 16,
    Max = 500,
    Rounding = 0
})
PlayerSlider:OnChanged(function(Value)
    playerSpeed = Value
end)
-----
-----
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Player = Players.LocalPlayer
local Backpack = Player:WaitForChild("Backpack")
local SellBrainrot = ReplicatedStorage
    :WaitForChild("Packages")
    :WaitForChild("_Index")
    :WaitForChild("sleitnick_knit@1.7.0")
    :WaitForChild("knit")
    :WaitForChild("Services")
    :WaitForChild("InventoryService")
    :WaitForChild("RF")
    :WaitForChild("SellBrainrot")
local Suffixes = {
    K  = 1e3,  M  = 1e6,  B  = 1e9,
    T  = 1e12, QA = 1e15, QI = 1e18,
    SX = 1e21, SP = 1e24, OC = 1e27, NO = 1e30,
}
local function ParseCashPerSec(str)
    if not str then return 0 end
    str = tostring(str)
    local numPart, suffix = str:match("%+?([%d%.]+)(%a*)%$")
    local num = tonumber(numPart) or 0
    if suffix and suffix ~= "" then
        local mult = Suffixes[suffix:upper()]
        if mult then num = num * mult end
    end
    return num
end
local AllNames = {
    "67",
    "agarrini_lapalini",
    "angel_bisonte_giuppitere",
    "angel_job_job_sahur",
    "angela_larila",
    "angelinni_octossini",
    "angelzini_bananini",
    "ballerina_cappuccina",
    "ballerino_lololo",
    "bisonte_giuppitere_giuppitercito",
    "blueberrinni_octossini",
    "bobrito_bandito",
    "bombardino_crocodilo",
    "boneca_ambalabu",
    "brr_brr_patapim",
    "burbaloni_luliloli",
    "cacto_hipopotamo",
    "capuccino_assassino",
    "cathinni_sushinni",
    "cavallo_virtuoso",
    "chachechi",
    "chicleteira_bicicleteira",
    "chimpanzini_bananini",
    "cocofanto_elefanto",
    "devilcino_assassino",
    "devilivion",
    "devupat_kepat_prekupat",
    "diavolero_tralala",
    "ding_sahur",
    "dojonini_assassini",
    "dragoni_cannelloni",
    "ferro_sahur",
    "frigo_camello",
    "frulli_frula",
    "ganganzelli_trulala",
    "gangster_foottera",
    "glorbo_frutodrillo",
    "gorgonzilla",
    "gorillo_watermellondrillo",
    "graipus_medus",
    "i2perfectini_foxinini",
    "job_job_job_sahur",
    "karkirkur",
    "ketupat_kepat_prekupat",
    "la_vacca_saturno_saturnita",
    "las_vaquitas_saturnitas",
    "lerulerulerule",
    "lirili_larila",
    "los_crocodillitos",
    "los_tralaleritos",
    "luminous_yoni",
    "magiani_tankiani",
    "malame",
    "malamevil",
    "mateo",
    "meowl",
    "orangutini_ananassini",
    "orcalero_orcala",
    "pipi_potato",
    "pot_hotspot",
    "raccooni_watermelunni",
    "rang_ring_reng",
    "rhino_toasterino",
    "salamino_penguino",
    "spaghetti_tualetti",
    "spioniro_golubiro",
    "strawberrini_octosini",
    "strawberry_elephant",
    "svinina_bombobardino",
    "ta_ta_ta_ta_sahur",
    "te_te_te_te_sahur",
    "ti_ti_ti_sahur",
    "tigrrullini_watermellini",
    "to_to_to_sahur",
    "toc_toc_sahur",
    "torrtuginni_dragonfrutinni",
    "tracoducotulu_delapeladustuz",
    "tralalero_tralala",
    "trippi_troppi_troppa_trippa",
    "trulimero_trulicina",
    "udin_din_din_dun",
    "yoni",
}
local function GetAllTools()
    local tools = {}
    for _, item in ipairs(Backpack:GetChildren()) do
        if item:IsA("Tool") then table.insert(tools, item) end
    end
    if Player.Character then
        for _, item in ipairs(Player.Character:GetChildren()) do
            if item:IsA("Tool") then table.insert(tools, item) end
        end
    end
    return tools
end
local Toggle = Tabs.Sell:AddToggle("SellToggle", {
    Title   = "Auto Sell Brainrots",
    Default = false,
})
local Slider = Tabs.Sell:AddSlider("SellSlider", {
    Title       = "Sell Interval (s)",
    Description = "How often it sells",
    Default     = 2,
    Min         = 0,
    Max         = 10,
    Rounding    = 0,
})
local FilterDropdown = Tabs.Sell:AddDropdown("FilterDropdown", {
    Title   = "Filter What to Sell By",
    Values  = {"Mutation", "Cash/s", "Name"},
    Multi   = false,
    Default = "Mutation",
})
local MutationDropdown = Tabs.Sell:AddDropdown("MutationDropdown", {
    Title   = "Mutations to Sell",
    Values  = {"NORMAL", "CANDY", "GOLD", "DIAMOND", "VOID"},
    Multi   = true,
    Default = {},
})
local NameDropdown = Tabs.Sell:AddDropdown("NameDropdown", {
    Title   = "Names to Sell",
    Values  = AllNames,
    Multi   = true,
    Default = {},
})
local CashInput = Tabs.Sell:AddInput("CashInput", {
    Title       = "Sell Below Cash/s",
    Default     = "0",
    Placeholder = "e.g. 1000000",
    Numeric     = true,
    Finished    = false,
})
local function ShouldSell(tool)
    local filter = Options.FilterDropdown.Value
    if filter == "Mutation" then
        local mutation = tool:GetAttribute("Mutation")
        if not mutation then return false end
        return Options.MutationDropdown.Value[mutation] == true

    elseif filter == "Name" then
        local brainrotType = tool:GetAttribute("BrainrotType")
        if not brainrotType then return false end
        return Options.NameDropdown.Value[brainrotType] == true

    elseif filter == "Cash/s" then
        local cashAttr = tool:GetAttribute("CashPerSec")
        if not cashAttr then return false end
        local toolValue = ParseCashPerSec(tostring(cashAttr))
        local threshold = tonumber(Options.CashInput.Value) or 0
        return toolValue < threshold
    end
    return false
end
local function TrySell(tool)
    local entityId = tool:GetAttribute("EntityId")
    if entityId then
        SellBrainrot:InvokeServer(entityId)
    end
end
task.spawn(function()
    while true do
        local interval = Options.SellSlider.Value
        task.wait(math.max(interval, 0.1))
        if Options.SellToggle.Value then
            for _, tool in ipairs(GetAllTools()) do
                if ShouldSell(tool) then
                    TrySell(tool)
                    task.wait(0.05)
                end
            end
        end
    end
end)
-----
-----
Tabs.Webhook:AddParagraph({
    Title = "How to Use",
    Content = "1. Paste your Discord webhook URL into the Webhook URL field.\n2. Enable the webhook using the toggle.\n3. Choose what to track in Track Filter — select Mutation, Name, or both.\n4. If tracking Mutations, select which mutations to watch for in the Mutations to Track dropdown.\n5. If tracking Names, select which Brainrot names to watch for in the Names to Track dropdown.\n6. Whenever you receive a new brainrot that matches your filters, a notification will be sent to your Discord webhook."
})
local WebhookToggle = Tabs.Webhook:AddToggle("WebhookToggle", {
    Title = "Enable Webhook",
    Default = false
})
Options.WebhookToggle:SetValue(false)
local enterwebhook = Tabs.Webhook:AddInput("enterwebhook", {
    Title = "Webhook URL",
    Default = "",
    Placeholder = "enter webhook url...",
    Numeric = false,
    Finished = false,
    Callback = function(Value) end
})
local sendfilter = Tabs.Webhook:AddDropdown("sendfilter", {
    Title = "Track Filter",
    Values = {"Mutation", "Name"},
    Multi = true,
    Default = {"Mutation"},
})
local selectmutationswebhook = Tabs.Webhook:AddDropdown("selectmutationswebhook", {
    Title = "Mutations to Track",
    Values = {"NORMAL", "CANDY", "GOLD", "DIAMOND", "VOID"},
    Multi = true,
    Default = {"GOLD"},
})
local excludePrefixes = {"candy_", "gold_", "diamond_", "void_"}
local brainrotModelNames = {}
local brainrotModelsFolder = game:GetService("ReplicatedStorage"):FindFirstChild("BrainrotModels")
if brainrotModelsFolder then
    for _, model in ipairs(brainrotModelsFolder:GetChildren()) do
        if model:IsA("Model") then
            local name = model.Name
            local excluded = false
            for _, prefix in ipairs(excludePrefixes) do
                if name:lower():sub(1, #prefix) == prefix then
                    excluded = true
                    break
                end
            end
            if not excluded then
                table.insert(brainrotModelNames, name)
            end
        end
    end
end
local selectnameswebhook = Tabs.Webhook:AddDropdown("selectnameswebhook", {
    Title = "Names to Track",
    Values = brainrotModelNames,
    Multi = true,
    Default = {},
})
local recentlySent = {}
local function SendWebhook(url, content)
    if not url or url == "" then return end
    pcall(function()
        request({
            Url = url,
            Method = "POST",
            Headers = { ["Content-Type"] = "application/json" },
            Body = game:GetService("HttpService"):JSONEncode({
                content = "@everyone " .. content,
                allowed_mentions = { parse = {"everyone"} }
            })
        })
    end)
end
local function CheckTool(tool)
    if not Options.WebhookToggle.Value then return end
    if recentlySent[tool] then return end
    recentlySent[tool] = true
    task.delay(2, function()
        recentlySent[tool] = nil
    end)
    local webhookURL = Options.enterwebhook.Value
    local modes = Options.sendfilter.Value
    local mutations = Options.selectmutationswebhook.Value
    local selectedNames = Options.selectnameswebhook.Value
    if modes["Mutation"] then
        local toolMutation = tool:GetAttribute("Mutation")
        if toolMutation and mutations[tostring(toolMutation):upper()] then
            SendWebhook(webhookURL, string.format(
                "💎 **Mutation Match!**\nTool: `%s`\nMutation: `%s`",
                tool.Name, tostring(toolMutation)
            ))
        end
    end
    if modes["Name"] then
        local brainrotType = tool:GetAttribute("BrainrotType")
        if brainrotType then
            for name, selected in next, selectedNames do
                if selected and tostring(brainrotType):lower() == name:lower() then
                    SendWebhook(webhookURL, string.format(
                        "🔔 **Name Match!**\nTool: `%s`\nBrainrotType: `%s`",
                        tool.Name, tostring(brainrotType)
                    ))
                    break
                end
            end
        end
    end
end
local function WatchContainer(container)
    for _, child in ipairs(container:GetChildren()) do
        if child:IsA("Tool") then
            CheckTool(child)
        end
    end
    container.ChildAdded:Connect(function(child)
        if child:IsA("Tool") then
            task.wait()
            CheckTool(child)
        end
    end)
end
local Players = game:GetService("Players")
local LocalPlayer = Players.LocalPlayer
WatchContainer(LocalPlayer.Backpack)
local function OnCharacterAdded(character)
    WatchContainer(character)
end
if LocalPlayer.Character then
    OnCharacterAdded(LocalPlayer.Character)
end
LocalPlayer.CharacterAdded:Connect(OnCharacterAdded)
-----
-----
Tabs.Farm:AddSection("Quests")
local Players = game:GetService("Players")
local LocalPlayer = Players.LocalPlayer
local questRunning = false
local function getQuestFrame(questType)
    local gui = LocalPlayer.PlayerGui
    local base = gui.Windows.Event.Frame.Frame.Windows.Quests.Frame.ScrollingFrame
    if questType == "Daily" then
        return base.DailyQuests.Frame.Frame.Frame
    else
        return base.HourlyQuests.Frame.Frame.Frame
    end
end
local function getUnclaimedQuests()
    local quests = {}
    for _, questType in ipairs({"Hourly", "Daily"}) do
        local frame = getQuestFrame(questType)
        if frame then
            for _, child in ipairs(frame:GetChildren()) do
                local claimed = child:FindFirstChild("Claimed")
                local title = child:FindFirstChild("Title")
                if claimed and title and not claimed.Visible then
                    table.insert(quests, {
                        claimed = claimed,
                        text = title.Text
                    })
                end
            end
        end
    end
    return quests
end
local function getMyPlotNumbers()
    local plots = workspace:FindFirstChild("Plots")
    if not plots then return nil, nil end
    for i = 1, 5 do
        for j = 1, 5 do
            local row = plots:FindFirstChild(tostring(i))
            local plot = row and row:FindFirstChild(tostring(j))
            if plot then
                for _, obj in ipairs(plot:GetChildren()) do
                    if obj:IsA("BillboardGui") and obj.Name:find(LocalPlayer.Name) then
                        return tostring(i), tostring(j)
                    end
                end
            end
        end
    end
    return nil, nil
end
local function farmLoop(claimedButton, stopCondition)
    local modelsFolder = workspace:WaitForChild("RunningModels")
    local target = workspace:WaitForChild("CollectZones"):WaitForChild("base14")
    while questRunning and not claimedButton.Visible do
        if stopCondition and stopCondition() then break end
        local character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()
        local root = character:WaitForChild("HumanoidRootPart")
        local humanoid = character:WaitForChild("Humanoid")
        root.CFrame = CFrame.new(715, 39, -2122)
        task.wait(0.3)
        if not questRunning then return end
        humanoid:MoveTo(Vector3.new(709, 39, -2122))
        local ownedModel = nil
        repeat
            task.wait(0.3)
            if not questRunning then return end
            for _, obj in ipairs(modelsFolder:GetChildren()) do
                if obj:IsA("Model") and obj:GetAttribute("OwnerId") == LocalPlayer.UserId then
                    ownedModel = obj
                    break
                end
            end
        until ownedModel ~= nil or not questRunning or claimedButton.Visible
        if not questRunning or claimedButton.Visible then return end
        task.wait(0.2)
        if ownedModel.PrimaryPart then
            ownedModel:SetPrimaryPartCFrame(target.CFrame)
        else
            local part = ownedModel:FindFirstChildWhichIsA("BasePart")
            if part then part.CFrame = target.CFrame end
        end
        task.wait(0.7)
        if not questRunning then return end
        if ownedModel and ownedModel.Parent == modelsFolder then
            if ownedModel.PrimaryPart then
                ownedModel:SetPrimaryPartCFrame(target.CFrame * CFrame.new(0, -8, 0))
            else
                local part = ownedModel:FindFirstChildWhichIsA("BasePart")
                if part then part.CFrame = target.CFrame * CFrame.new(0, -8, 0) end
            end
        end
        repeat
            task.wait(0.4)
            if not questRunning then return end
        until claimedButton.Visible or (ownedModel == nil or ownedModel.Parent ~= modelsFolder)
        if not questRunning or claimedButton.Visible then return end
        local oldCharacter = LocalPlayer.Character
        repeat
            task.wait(0.3)
            if not questRunning then return end
        until claimedButton.Visible or (LocalPlayer.Character ~= oldCharacter and LocalPlayer.Character ~= nil)
        if not questRunning or claimedButton.Visible then return end
        task.wait(0.4)
        if not questRunning then return end
        local newChar = LocalPlayer.Character
        local newRoot = newChar:WaitForChild("HumanoidRootPart")
        newRoot.CFrame = CFrame.new(737, 39, -2118)
        task.wait(2.1)
    end
end
local function doGetBrainrotsQuest(claimedButton)
    farmLoop(claimedButton, nil)
end
local function doMutationQuest(claimedButton, mutation)
    local gotTool = false
    local function checkTool(tool)
        if claimedButton.Visible then return end
        local mut = tool:GetAttribute("Mutation")
        if mut and tostring(mut):upper() == mutation:upper() then
            gotTool = true
        end
    end
    local backpack = LocalPlayer:WaitForChild("Backpack")
    local toolConn = backpack.ChildAdded:Connect(function(child)
        if child:IsA("Tool") then checkTool(child) end
    end)
    local charConn
    if LocalPlayer.Character then
        charConn = LocalPlayer.Character.ChildAdded:Connect(function(child)
            if child:IsA("Tool") then checkTool(child) end
        end)
    end
    farmLoop(claimedButton, nil)
    toolConn:Disconnect()
    if charConn then charConn:Disconnect() end
end
local function doLevelUpQuest(claimedButton, times)
    if not questRunning then return end
    local pi, pj = getMyPlotNumbers()
    if not pi or not pj then return end
    local containers = workspace.Plots[pi][pj]:FindFirstChild("Containers")
    if not containers then return end
    local remote = game:GetService("ReplicatedStorage")
        :WaitForChild("Packages")
        :WaitForChild("_Index")
        :WaitForChild("sleitnick_knit@1.7.0")
        :WaitForChild("knit")
        :WaitForChild("Services")
        :WaitForChild("ContainerService")
        :WaitForChild("RF")
        :WaitForChild("UpgradeBrainrot")
    local done = 0
    for i = 1, 30 do
        if not questRunning or claimedButton.Visible or done >= times then break end
        local containerSlot = containers:FindFirstChild(tostring(i))
        if containerSlot then
            for j = 1, 30 do
                if not questRunning or claimedButton.Visible or done >= times then break end
                local innerSlot = containerSlot:FindFirstChild(tostring(j))
                if innerSlot then
                    local innerModelFolder = innerSlot:FindFirstChild("InnerModel")
                    local collection = innerSlot:FindFirstChild("Collection")
                    local collectionPad = collection and collection:FindFirstChild("CollectionPad")
                    if innerModelFolder and collectionPad and collectionPad.Color == Color3.fromRGB(64, 203, 0) then
                        local char = LocalPlayer.Character
                        local hrp = char and char:FindFirstChild("HumanoidRootPart")
                        if hrp then
                            hrp.CFrame = collectionPad.CFrame + Vector3.new(0, 3, 0)
                        end
                        task.wait(0.3)
                        if not questRunning then return end
                        for _ = 1, times do
                            if not questRunning or claimedButton.Visible or done >= times then break end
                            pcall(function()
                                remote:InvokeServer(tostring(i))
                            end)
                            done += 1
                            task.wait(0.3)
                        end
                    end
                end
            end
        end
    end
end
local function parseQuestText(text)
    local brainrotCount = text:match("Get (%d+) Brainrots?$")
    if brainrotCount then
        return "brainrots", tonumber(brainrotCount)
    end
    local levelCount = text:match("[Ll]evel up [Bb]rainrots? (%d+) times?")
    if levelCount then
        return "levelup", tonumber(levelCount)
    end
    local count, mutation = text:match("Get (%d+) (%w+) Brainrots?")
    if count and mutation then
        local validMutations = {NORMAL=true, CANDY=true, GOLD=true, DIAMOND=true, VOID=true}
        if validMutations[mutation:upper()] then
            return "mutation", tonumber(count), mutation:upper()
        end
    end
    return "unknown"
end
local function runQuests()
    questRunning = true
    local quests = getUnclaimedQuests()
    for _, quest in ipairs(quests) do
        if not questRunning then break end
        if quest.claimed.Visible then continue end
        local questType, value, extra = parseQuestText(quest.text)
        if questType == "brainrots" then
            doGetBrainrotsQuest(quest.claimed)
        elseif questType == "levelup" then
            doLevelUpQuest(quest.claimed, value)
        elseif questType == "mutation" then
            doMutationQuest(quest.claimed, extra)
        end
        task.wait(0.5)
    end
    questRunning = false
end
local QuestToggle = Tabs.Farm:AddToggle("QuestToggle", {
    Title = "Auto Complete BP Quests",
    Default = false
})
QuestToggle:OnChanged(function(state)
    if state then
        if not questRunning then
            task.spawn(runQuests)
        end
    else
        questRunning = false
    end
end)
Options.QuestToggle:SetValue(false)
-----
-----
Tabs.Upgrades:AddSection("Brainrot Upgrades")
local upgradeRunning = false
local upgradeLevel = 3
local LevelSlider = Tabs.Upgrades:AddSlider("UpgradeLevelSlider", {
    Title = "Max Upgrade Level",
    Default = 25,
    Min = 1,
    Max = 50,
    Rounding = 0,
    Callback = function(Value)
        upgradeLevel = Value
    end
})
LevelSlider:OnChanged(function(Value)
    upgradeLevel = Value
end)
LevelSlider:SetValue(3)
local remote = game:GetService("ReplicatedStorage")
    :WaitForChild("Packages")
    :WaitForChild("_Index")
    :WaitForChild("sleitnick_knit@1.7.0")
    :WaitForChild("knit")
    :WaitForChild("Services")
    :WaitForChild("ContainerService")
    :WaitForChild("RF")
    :WaitForChild("UpgradeBrainrot")
local function getMyPlotNumbers()
    local plots = workspace:FindFirstChild("Plots")
    if not plots then return nil, nil end
    for i = 1, 5 do
        for j = 1, 5 do
            local row = plots:FindFirstChild(tostring(i))
            local plot = row and row:FindFirstChild(tostring(j))
            if plot then
                for _, obj in ipairs(plot:GetChildren()) do
                    if obj:IsA("BillboardGui") and obj.Name:find(game.Players.LocalPlayer.Name) then
                        return tostring(i), tostring(j)
                    end
                end
            end
        end
    end
    return nil, nil
end
local function runUpgrades()
    local pi, pj = getMyPlotNumbers()
    if not pi or not pj then return end
    local containers = workspace.Plots[pi][pj]:FindFirstChild("Containers")
    if not containers then return end
    while upgradeRunning do
        local anyUpgraded = false
        for i = 1, 30 do
            if not upgradeRunning then return end
            local containerSlot = containers:FindFirstChild(tostring(i))
            if not containerSlot then continue end
            for j = 1, 30 do
                if not upgradeRunning then return end
                local innerSlot = containerSlot:FindFirstChild(tostring(j))
                if not innerSlot then continue end
                local innerModel = innerSlot:FindFirstChild("InnerModel")
                if not innerModel then continue end
                local brainrot = innerModel:FindFirstChildWhichIsA("Model")
                if not brainrot then continue end
                local level = brainrot:GetAttribute("BrainrotLevel")
                if not level then continue end
                if level < upgradeLevel then
                    local currentLevel = brainrot:GetAttribute("BrainrotLevel")
                    if currentLevel and currentLevel < upgradeLevel then
                        local args = { tostring(i) }
                        pcall(function()
                            remote:InvokeServer(unpack(args))
                        end)
                        anyUpgraded = true
                        task.wait(0.3)
                        local newLevel = brainrot:GetAttribute("BrainrotLevel")
                        if newLevel and newLevel >= upgradeLevel then
                        end
                    end
                end
            end
        end
        if not anyUpgraded then
            task.wait(1)
        end
    end
end
local UpgradeToggle = Tabs.Upgrades:AddToggle("UpgradeToggle", {
    Title = "Auto Upgrade Brainrots",
    Default = false
})
UpgradeToggle:OnChanged(function(state)
    upgradeRunning = state
    if state then
        task.spawn(runUpgrades)
    end
end)
Options.UpgradeToggle:SetValue(false)
-----
-----

-----
-----
SaveManager:SetLibrary(Fluent)
InterfaceManager:SetLibrary(Fluent)
SaveManager:IgnoreThemeSettings()
SaveManager:SetIgnoreIndexes({})
InterfaceManager:SetFolder("FluentScriptHub")
SaveManager:SetFolder("FluentScriptHub/specific-game")
InterfaceManager:BuildInterfaceSection(Tabs.Settings)
SaveManager:BuildConfigSection(Tabs.Settings)
Window:SelectTab(1)
SaveManager:LoadAutoloadConfig()
end

Features & Information

'custom speed ! 'custom player speed' 'auto upgrade brainrots 'auto selll brainrots 'auto claim playtime rewards 'auto rebirth 'auto claim event pass rewards 'claim all codes 'auto buy best luckyblock 'sell held brainrot 'pickup all your brainrots and ofc autofarm
#Roblox#Script

Community Comments (0)

No comments yet for this script.

More Scripts for Be a Lucky Block