If any scripts are broken/flagging errors in console then this can cause a disruption, yes.
found the culprit
this is kind of embarrassing
the AssetLoader script inside our donation board has caused all the disruptions but for what reason idk
require(5799918029).Parent = script.Parent
its a regular script and heres the ancestry
Well, just enabled all the scripts again
turns out this is only part of the problem. it stops working when the other scripts are enabled
Just thought I’d mention that debugging is way more than just print statements. In fact, I rarely find myself using print statements when debugging, with the sole exception being when I want to rapidly verify data. You can accomplish the same thing you mentioned (seeing if each part of the script works) by using breakpoints instead. This is far simpler, and significantly increases the speed of your debugging workflow.
other culprit:
devproductconfig
I realize its running while true but its wrapped in a function. idk
local MPS = game:GetService("MarketplaceService")
local checkpoints = game.Workspace:WaitForChild("Checkpoints")
local debounce = true
while true do
MPS.ProcessReceipt = function(receiptInfo)
if receiptInfo.ProductId == 1228396734 then
if debounce == true then
local player = game.Players:GetPlayerByUserId(receiptInfo.PlayerId)
local stage = player:WaitForChild("leaderstats").Stage
local checkpointname = checkpoints[stage.Value].Name
player.leaderstats.Stage.Value = player.leaderstats.Stage.Value + 1
player:LoadCharacter()
debounce = false
wait(0.5)
debounce = true
end
end
end
wait(.0000005)
end
to solve would i put it all in the same script, same function, different if statements? or elseif statements?
You can only have one ProcessReceipt function in your entire game, so yes keeping it in one script and having it handle all of your dev products is what you will have to do.
Do not put this in a while true do loop, it isn’t necessary.
You have to put processreceipts in the same script or use .PromptProductPurchaseFinished