Skip to content

FastLoad

MagicJinn edited this page Mar 9, 2025 · 5 revisions

What is FastLoad?

FastLoad is an optimization that reduces load times by up to 5-15 seconds[1] by frontloading the data repositories[2] asynchronously, patching them to be faster and patching the intro to load the title screen faster. Normally, when loading a save from the main menu, the data repositories, like QualityRepository and EventRepository, are loaded and cached, taking about 30 seconds and halting save loading until complete. FastLoad starts this process in the background as soon as the game launches, so it's ready by the time you load a save. It also patches the intro to use LoadSceneAsync, cutting down the transition time from the intro to the title screen, and patches the repository loader to load the heavy hitters in terms of performance concurrently to the others.

Upsides

  • Load time reduction, saving up to 5-15 seconds in total across intro transitions and save loading.
  • Most game data is loaded at launch, meaning you can load up the game, walk away for a bit or do something else on your computer, and not have to worry about a second loading screen when you return.

(Potential) Drawbacks

  • Slightly increased initial startup time. FastLoad increases performance overall, but the initial startup time is slightly longer due to background loading and the intro patch. The total time saved by using FastLoad typically outweighs this minor increase, so it should still leave you with a significant net performance gain.
  • (Possible) save loading errors. If something goes catastrophically wrong and you load your save before the repositories initialize (this should never happen and has never occurred during testing), you may encounter an error. Don't panic; your save file should still be intact, the game just failed to load it properly. Disable FastLoad in the config and try again.
  • If a mod is coded wrong or causes errors, the game freezes up while loading, instead of showing an error when loading a save.

Notes

1: Based on limited personal testing. Please share your own benchmarks to improve the accuracy of this number.
2: Data repositories are the classes that manage, load, and store the game's data files. These load the JSON files in the PersistentDataDirectory (such as events.json, etc.) and convert them into a usable format for Sunless Sea.

Clone this wiki locally