Storing a large number of models and studio testing times

Hi, I’m working on a tower defence game at the moment with at least 50 tower types, all with 5 upgrades each. There’s also a variety of enemies, probably about 30 each with their own models again. All of these models in ServerStorage are causing studio to lag significantly whenever I use “Play” to test my changes and takes about a minute or two to load up the game. I’ve tried removing these and it speeds up loading significantly.

Does anybody here have experience with storing high volumes of models? How do you store them?

1 Like

I have tried making a chunk save/loading system which has rooms in a dungeon like system save all items/entities in the chunk in respective folders inside of it, all of that is stored in ServerStorage and loads upon a player moving nearby, or unloads if it goes away from the location.
If no chunks exist in that coordinate a new one is generated.

I personally haven’t met this issue so far.

I think the problem comes with compression and the weight put on the server’s shoulders, even though rendering isn’t happening and scripts get disabled, it’s still a considerable amount of data I’d assume.

1 Like

Thanks, so maybe the best idea would be to just cut down on the number of and complexity of these models as much as possible.

1 Like

The number sounds fine to me, perhaps the amount of meshes/unions and other assets needed to load at first?

Once everything is loaded, is the game still pretty laggy or is it fine?

1 Like

The game’s fine once it’s loaded, and it’s mainly only noticable when using studio’s Test feature and isn’t as bad when playing live, I’m guessing cause it’s properly starting up the server and is processing all these models at the start.

I’m fairly new to working on this game so am a little unfamiliar with its structure. It turns out that there’s closer to 20,000 models in ServerStorage apparently. I forgot to mention that the game’s maps are stored in here too, I’m thinking there’s about 50 stored in the game. I’m thinking instead of storing them in-game they could be inserted with InsertService as one is only loaded in on the server per round.

1 Like

I had that kind of idea before, it worked fine as long as it was only about models and not important scripts that need pre-loading between places.

Therefore you should give it a try, IMO.

2 Likes

Alright, thank you for your input! Helped me to talk it through!

2 Likes