game:IsLoaded()
would not work in Server, what can i use for the Server to check if the Game has loaded there?
Check out ContentProvider:PreloadAsync(), read more here, and there’s a piece of example code below.
game:GetService("ContentProvider"):PreloadAsync({-- Whatever you need to load--})
But would this wait until the game Parts and MeshParts are loaded?
No, only the stuff like the Character, it’s as close as an answer you’ll get due to you can’t check what is loaded on the Client from the server. That just isn’t how it works. The server sees what the entire server sees, so if a tree isn’t loaded in for one person, it doesn’t mean it’s not loaded in for everybody, so you’d have to use remotes to get something somewhat similar to what you need. I suggest looking more up on the Server and client and how both operate.
Try to add this into your script
local ContentProvider = game:GetService("ContentProvider")
local assets = game:GetDescendants()
ContentProvider:PreloadAsync(assets)
The game is entirely loaded before server-scripts run, so there’s no need to check if the game has loaded.