question

ryanb avatar image
ryanb asked

What is the best way to inform the game client of a new build or update?

We are using external game servers and would like to client to check if the server build matches the client build every time a user is matchmaked into a game, this way if we publish a Steam update then we can be sure that only the most up-to-date live builds are allowed in.

Also want to use it for our game servers to tell them when they should update themselves

I was thinking of using PlayFabs internal data but the documentation say it has a 15 minute delay. How do you guys recommend we use PlayFab to set the "live build" that is allowed to authenticate, matchmake, join servers, etc

10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

1 Answer

·
brendan avatar image
brendan answered

It sounds like the intent is for the client to know before attempting to make any server connections, to save time. How are you currently informing the client of what the current Build ID is that it should be using in matchmaking calls? Is that stored as a piece of configuraiton info in Title Data? That seems like the simplest place to make the change. Just add a minimum client version property to that information, so that the client can check its own version. That's particularly handy if you want to do a staged update, here you let players continue using the older version for a period of time (so, those players would connect to the older server version).

But yes, Title Data is sharded and cached so that it can serve all players in the service - even if that's into the millions. So it will always have some short period of time after you issue a change before all endpoints are updated. The only way around that would be by having the servers themselves enforce the versioning. In that model, when a client connects you would check its version (in addition to the matchmaker ticket) and send it an error if it needs to update.

10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.