Are persistent game servers possible. (24/7 servers)

An actual persistent server is, as ROBLOX doesn’t support that, but you can imitate it as by the examples others have said in this thread. Namely using :SavePlaceAsync()

I was working on something like this a while back.

You can use datastores to store static data under a generated static id (the data you want to persist after shutdown) and memorystore to store temporary data such as the server’s static id and player count under a dynamic id, for which I used the code returned by ReserveServer.

Next you’ll need a way to display a server list. I used messagingservice to send constant pings from the running game servers, which lobbies then caught and displayed. When someone tried to join a server, a ping would be sent to check if the server is trully running (dynamic data might persist if the server crashes). This is actually where I encountered an issue. Messagingservice can throttle, meaning a response might not arrive on time, so you might end up with multiple instances of the same server.

Finally, if you want a genuine persistent server feeling, you can increment actions such as item smelting by comparing the current timestamp to the one before the shutdown.

3 Likes

Thanks! This is very handy. Will tryout soon!