Improvements to Updating Experiences

Will there be a way to make old servers stale?
As in existing players in old servers do not get kicked,
but there is no way for more players to join said servers?

It would help reduce frustration with players doing an activity - say currently in a match or a boss fight - getting interrupted, but the issue I see is integration with other features like the Follow/Join system, as in how it would work if you tried to join a friend in a “stale” server.

If not this, then perhaps a “schedule” system for the new Restart servers feature that actively displays a countdown until the servers get migrated, of which we can customise and schedule for a time we see fit?

6 Likes

-- this is what packages are for iirc, you should look into using those for your scripts

3 Likes

Upload that module as a model. Use a script in all 20 places that inserts this model on run time. This way the only thing you need to update is the model which effectively also automatically updates all your 20 places.

The worst case scenario here is having to update the injector script whenever necessary, but usually this will never be required once it has been property set up.

4 Likes

Good news that someone is looking actively at these problems.

In our game we use a custom soft shutdown system. We don’t want to kick players while they are playing, but we want to do it immediately after. Right now we open private servers and send players there when they finish a game. The problem is that the old servers stay up until all of the players have finished their game (max 5-10 mins). New players can still join these, but are insta teleported which results in worse UX.

What we need is a method to stop considering old versions for matchmaking but without the shutdown feature. This would allow us to send players to new public servers instead of private ones. It would also stop the old servers from being populated while we are soft-shutting them down.

Can we have something like this @SuperPat77?

EDIT: I just saw @KepIar asked the exact same thing.

3 Likes

Great stuff, really speeds updating processes up :+1:

3 Likes

I don’t think shut down all servers should be retired — It’s still useful in case you’d actually want to shut all the servers.

Unless I may be wrong but does privating a game kick all players?

3 Likes

You are mostly correct. We don’t want “shutdown all servers” to disappear since it’s incredibly helpful and it would be difficult to release an update if we had to shut down each server individually.

In addition, I believe that when a game is made private, all players get kicked from the game.

3 Likes

Could we have an updating method where it doesn’t kick anyone, but instead locks outdated servers?

With this, joining players would only join new and updated servers, where as the old server can continue until every player has eventually left. This works especially great in experiences that use multiple places.

Alternatively, could we get API that allows us to lock a server with a script and prevent joining? I would actually like this API regardless of the previous question.

TL;DR: Server Locking

3 Likes

Hello i have a question but I think it’s very related to that update.
Will we have a API to reserve a server in a specific region (EU,NA,…) ?

1 Like

This can technically be implemented with MessagingService APIs. You would need to have every server listen to an update message. When you update the game, just send the update message to all servers. When a server relieves the message, you can then just connect an event to auto-kick any new players attempting to join.