Improve Play Solo load times

As a Roblox developer, it is currently too hard to test large games.

For my game, RoCitizens, on my machine it can take 22-30 seconds from the time I hit the studio “Play” button to the point at which I can move my character. Additionally, it takes 10+ seconds from the time I hit the “Stop” before I can resume work in studio.

It is frustratingly common that I make a quick edit to some code and hit play, only to realize seconds later that I made a logic error or typo. I’m then forced to sit through 30-40 seconds of frozen studio windows before I can fix my mistake. Often I have to do this 4+ times in a row as I iterate on my code.

This not only consumes development time, but breaks my flow and diminishes overall productivity.

Technical details for RoCitizens loading

Here are some rough numbers that show a distribution of load times for my game. I obtained them by essentially copying an isolated service into a new place file and comparing it to the baseline load time.

Service Seconds
Workspace 6.44
ServerStorage 4.90
ReplicatedStorage 1.56
ReplicatedFirst 4.40
ServerScriptService 0.32
StarterPlayerScripts 0.16
StarterGui 0.90

Part count seems to be the greatest offender, even if the models are in storage. Additionally, it seems like having anything in ReplicatedFirst on a baseplate will immediately add 4+ seconds to loading.

Currently, my team creates unique place files for different game aspects so we can avoid the long load times of the main place as much as possible. We spend a lot of time organizing and coordinating between separate builds.

Improving studio load times would make developing and maintaining large games much more practical. It would improve workflow and allow us to focus less on optimizing for performance and more on the game itself. Thanks!

16 Likes

Have you tested the load times with all plugins disabled? Sometimes, you can have different plugins which drastically increase the time it takes to enter/leave Play Solo.

I’ve had issues with load times on both Islands and BedWars (two very large projects), and disabling plugins helped drastically. It would be nice if Roblox provided a way to profile which plugins are taking the most time, however.

6 Likes

Good thought but at least in my case it didn’t make much of a difference.

2 Likes