dfdfjkdfkds you posted this rubbish about it being hard to record before. Total nonsense.
Make a recording of a player being charged for something, so before you return Enum.PurchaseSuccess.True or what ever (forgot what it is lol) using your regular datastore set up, then make a recording of the playing getting that thing using your regular datastore set up. Then when they rejoin if the two don’t match up, compensate for that.
That’s what I was doing, but it doesn’t work in any bigger games, especially if you sell low priced items.
Somebody buys 15 skinscrates, takes up 15 datastore calls. He only gets 7 skincrates cause datastore is flooded after that.
My game isn’t particularly big, 2.8M plays, but we max out servers plenty of servers, has 300 people on it right now with plenty of small microtransactions. Per player you get 10 datastore requests a minute + 60. You’d need to have the entire server spam buying, and people spam leaving and rejoining to make this an issue. And then I guess you’d just have to throttle.
That’s what I do, still doesn’t work if the server crash.
And my servers crash quite regularly, and it’s not due to a bad written while loop, its memory issues that I can’t track down because we have no such tools.
When I had those it was because of miss copying over code and then creating excess parts. You do have tools to stop it though.
Go to Esc → settings → server stats or something like that. It’ll show you memory usage on the server. Use that and commenting out bits of code to diagnose
Or use the microprofiler (just google it) to find client lag issues
Said it before and I say it again.
We need a search bar to know wether or not a player has purchased an item or not.
“But you can just…” - No.
Take your half-baked super-complex datastore-draining solution and post it somewhere else.
Nobody here is interested in seeing that you can write complex code.
We need a search bar because loading 45 pages of purchases just to findout if a player has bought an item 2 days ago is not very user friendly.
As a developer I want to be able to verify that someone purchased something in my game. Right now I have to set up a whole system just so I can perform basic CS operations. I should be able to just search for a username in my transaction history.
As echo pointed out, this has already been requested quite a few times. I’d suggest looking for your suggestion and supporting that post rather than creating yet another post on it.
Half of them were posted by the same user actually
Ensuring users get what they purchase is critical – it’s even one of the requirements for a featured game – so a feature that enables developers to verify whether users are not getting what they paid for has a huge impact. By pointing out a thread is a duplicate, we are not discounting a feature or discouraging discussion, but rather that discussion occur on an existing thread. We prefer to keep the same suggestion in a single thread instead of across multiple so engineers don’t have to hunt around for feedback.
As a Roblox developer, it is currently too hard to . . .
Find an old purchase in a group, as there’s no way to search for old purchases.
If Roblox is able to address this issue, it would improve my game / my development experience because . . .
It would improve the view for moderators, and creators.
As it would be easier to find people who purchase game passes and then locate the issue in the game’s scripting.
The ability to search for and filter out specific assets would be extremely valuable to me, I own one of the most sold free models and therefore my transaction tab is borderline unusable.
I wanted to verify that a purchase was made to refund a player but this requires me to have to scroll down to the bottom of the page and press the “More Records” button fifty or so times to get to last week, which isn’t reasonable.
Ideally we could filter out specific created assets, as well as search for specific users to verify that they purchased a product.
I would like to bump this post. I recently received a message from a concerned parent saying that their child did not receive what they purchased for Robux in my game. I would like to be able to verify this purchase, but I have to go through each page of transactions to try and find the right username and the correct purchase. I have not received an bug report like this before so I am definitely skeptical, but I want to make sure that my players are receiving what they paid for. Having a way to search through transactions by username would be extremely helpful in both groups and your own personal transactions.
When I switched from working on Minecraft with the third party Buycraft/Tebex in-game item selling tool to Roblox, I was shocked at how few tools Roblox gives developers to support in-game purchases. Especially given how important real money transactions are to both devs and players.
When a user complained about not receiving their purchase on our Minecraft server, I could easily jump onto Buycraft, search their userID and see a documented list of every purchase they’d made, timestamp or purchase, country, email etc. I could instantly find out what was going on and better support players.
Our own support team for Adopt Me struggles to properly support players due to the lack of tools. We essentially have to rely on players self-reporting and telling the truth re: purchases - which as you can imagine is incredibly problematic. We regularly receive poorly photoshopped screenshots of purchase pages, and I assume we’ve had to reject some valid player issues because of it.
Buycraft/Tebex was far from perfect but I miss it now. You can search ‘Tebex’ to find out more info.
This feature would be really helpful to me because it’s unnecessarily difficult to help users whose purchases get eaten up by the system. One user in particular purchased one of our gamepasses nearly 2 months ago, but never received it in their inventory. After contacting Roblox support, they were told to bring it to us.
Clicking through 200 (very short) pages is no fun, and I can only imagine this is exacerbated the more revenue the game is making.