I was about to release my game, when I noticed something very strange and very bad happening with my gamepass’s.
Normally, when you buy a gamepass, you keep it forever in your inventory, but for some reason my gamepass’s can be purchase a infinite amount of times.
When you purchase a gamepass, it takes your money but does not put the gamepass into your inventory. When you use MarketplaceService:UserOwnsGamepassAsync() on the gamepass, it returns false, even once you have bought it. I have tried this in, and out of studio. I am very confused.
A gamepass from my game:
Here it is, brought up by PromptGamepassPurchase():
Bought it:
But look at that, I can just buy it again if I prompt the purchase again:
You never actually get the gamepass, even when you pay for it.
This might have nothing to do with it, but the icon for the gamepass’s does not show up consistently either when I prompt a purchase.
Why is it acting as a developer product, even when it is not?
You will see that when trying to buy again, there should be an error (not when in studio). I have noticed this and it isn’t anything more than a visual error.
Pretty sure this happens just in studio. Because its a test purchase you can buy it a infinite amount of times. Once you go in game this issue should not appear.
Even if this is just a visual error, people should not be able to buy my gamepasses more then once. lol It will steal your roblox, even when purchasing a second time.
As seen here from the wiki
If the game pass is purchased in-game (through PromptGamePassPurchase ), this function may return false due to the caching behavior.
While this may be a problem, I seriously, emphasis on the seriously, doubt that roblox would let a glitch like this go by without notice, everyones robux should be fine when purchasing passes, for now unless anything weird occurrs, ignore it, unless you lose robux on the second attempt of purchasing, it should be fine. I hope.