Level Streaming for Quests is good?

I’m trying to use BP to manage dynamically generated targets for each quest. However, given the variety and complexity of quests, the actors and game modes placed in the world may not be enough.

So i came up with a way to create a level for each quest, place the necessary targets and quest manager there, and load everything at the same time using level streaming. This should make things more manageable, but it means i’ll need one level per quest, and they’ll all be pre-built into persistent levels.

Of course, only what’s needed will be loaded, but are there any concerns that this will slow down performance or increase the size of the game? Overall, is it a good idea?

Hey there @Extrahdmi! Level streaming is fine in your use case, though if you’re still using persistent level as a core you may need to curate which portions are active at a time to ensure the best performance.

1 Like

Using level streaming for quests can work, but having one level per quest might get heavy pretty fast. It’ll increase project size and make things harder to maintain long-term. A lighter approach is to keep quests data-driven , spawn quest targets and managers dynamically, instead of building full levels for each. That way you still get flexibility without bloating performance or file size.

Thank you everyone for your opinions. It seems i need to think about it a bit more.

Stress testing is very important. Breaking up as many distinct pieces of the levels as you can should help avoid performance issues. For example, you don’t need a castle’s dungeon loaded until you’re about to go in it. Even if the quest is Ramparts->Courtyard->Foyer->Dungeon, you’d want them broken up distinctly even if it is all one quest.

1 Like