Players will float in the air for between 5 seconds to even 2 minutes sometimes. I presume they are still loading. Is there anything I can do to lower load times?
One of the main things to note is my game is very union heavy. I have the level of detail set to auto for all of them (but I presume this only helps with frame-rate not loading times).
Are there any other settings or changes I could make to help loading times, or is this type of thing normal in a lot of games? Not everyone loads slow by the way, but a very noticeable amount of people do.
Also, given this is a minigames place, I should mention all maps not currently in use are stored in ServerStorage.
The union might be one of the issues, I wouldn’t call it the MAIN issue tho. High union counts can lower the performance of your game, especially when they’re swimming in detail. I would recommend switching to meshes because it’s more easy and efficient to control the poly count and its detail.
Extra Notes:
The lobby (when no minigame is loaded) has 2,000 unions
The memory usage is around 380-430MB on the non-Windows store version of Roblox.
StreamingEnabled is disabled.
Also my bad, they reply was unintentional, I meant to reply to my own post
Did you enable StreamingEnabled? This allows games to cut down loading times and better for low-end hardwares… but the caveats are that you have to use Instance:WaitForChild() in local scripts(or client-sided scripts).
Read about StreamingEnabled:
Disclaimer: Did not read the post above while writing.
Just a follow-up question, would enabling StreamingEnabled mean that if a map is moved from ServerStorage to Workspace, a player might be teleported there (through a server script) but then fall through the floor assuming it has not loaded yet?
Edit: I’ll freeze the HumanoidRootPart immediately after teleporting for a few seconds. I have a loading screen.
Assume that you loaded the map in, temporarily freeze the player mid-air when there are no grounds to stand on below, using raycasts. Make sure to blind the player with a small loading screen between teleports.
Perhaps there are many workarounds, who knows?
Maybe someone else has a better method? I don’t really have a direct clue about it. Try loading the map from ReplicatedStorage instead if all else fails. ReplicatedStorage if the objects should be manipulated by both client and server, nothing wrong with ServerStorage I assume.
Ok, I tested in a server full of 10 people. My only concern is some say they are getting the occasional frame-rate dip that never used to happen, is there any possibility StreamingEnabled is the cause of this?
There is a while true do server script with a simple wait() in it that invokes the client each time to check their walkspeed, humanoid state, among other things. A simple anti-exploit script to catch simple exploits.
I have a feeling like your code is posing the problem, not the build. Also, StreamingEnabled sucks.
Try looking at your MicroProfiler, Developer Console or any of the Shift + FunctionKey debug windows and see if there’s any poor performance-looking stats.
I felt my network delay felt high, and I got occasional frame rate issues with it on. Especially but not limited to when physics were used. Looking at this post, it seems like in the 10-14 player server I was using, it is not viable:
How would I be able to tell what the issue is using these? The micro-profiler seems to be fine. Client-memory seems to be fair compared to some front page games I tested.