Release Notes for 350

you have got to be kidding me

EDIT: nvm again

14 Likes

This is a major regression on a highly-needed feature. :woman_facepalming:

Half the complains in my games prior to this change was that users gamepasses’ would not work after they purchased them in the webpage, due to server gamepass caching.

3 Likes


YESSSSSSSS. Good update! :slight_smile:

Why is this even a thing? Now if a player buys a gamepass in-game I have to store a bool value somewhere in my code indicating that they own the pass, because the API will still show that they don’t own it due to the cache.

2 Likes

Yeah, that’s a huge nuisance. Now when a player buys a gamepass in-game I have to store a bool value somewhere because the API will just cache that they still don’t own the pass.

1 Like

What’s the point of getting the teleport gui if it is instantly removed once the client has loaded …

3 Likes

Oh boy. The gamepass thing is gonna be an issue. I really hope there’s some sort of hidden solution thing we don’t know about.

4 Likes

We’re looking into it and will get back to you shortly. Thanks for pointing it out.

6 Likes

Hey everyone, we hear your concerns regarding the gamepass cache.
Heres what I currently know about how it works:

  • If the user owns the gamepass upon getting a live result, it will remain true for the full game session.
  • If the user does not own the gamepass, it will cache that false result for about 10 seconds before allowing a live result to be returned again.

So yes, there is now a slight discrepancy, but what’s important to note here is that it won’t stay false if you call it when the user doesn’t own the gamepass. If you check again shortly after, it will give you a live result again.

If you are using the API responsibly, this ideally shouldn’t cause any problems.

18 Likes

Everyone got to it before me, there is going to be mass outrage if that caching thing is true.

3 Likes

Good to hear!

It simplifies the code you need to write so that it is no longer event-based.

local gui = game:GetService("TeleportService"):GetArrivingTeleportGui()
if not gui then
  gui = -- some loading GUI
end

gui.Parent = game:GetService("Players").LocalPlayer.PlayerGui
2 Likes

Can we get a specific figure on when the cache will set in? Does the cache clear after a certain amount of time?

Hahaha I literally got so impatient for the Studio Theme API that I hardcoded it into my plugin TWO DAYS ago! Now I gotta go change it

1 Like

The Theme API is not enabled yet, so stay tuned.

3 Likes

Cool, any rough estimation?

I wonder what is better about returning a cached result instead of just throttling the requests?

Updated my original post with clarification on how it currently works.

1 Like

We target end of August for turning it on.

2 Likes

The caching for UserOwnGamePassAsync has been enabled.
If it returns true, the result will be cached until the player leaves the server.
If it returns false, the result will be cached for several seconds.
There is no need for rejoining the server to get an accurate result.
It should not affect normal usage of this API.

10 Likes

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.