Download

How to adapt the level streaming mechanic to an open world cRPG ?

Hello every body !

I work on a game with a setup similar to a lot of RTS, or a cRPG.
I have one camera that can be anywhere in the world and several playable units that can also be anywhere in the world.
As I wish to set my game in an open world, I’m reading a lot of documentation about the level streaming mechanic.

But I have some questions :

1 - The level streaming volumes are triggered by the camera of the player. It’s a problem because if a unit is somewhere and the camera is anywhere else, all the mobs in the unit area will disappear.
And the camera can fly very quickly from somewhere to another place
Is there a way to make the volume react to the presence of an actor and not of the camera ?
If I make my own volumes to detect the presence of certain actor, I’ll need to use some trigger volume… If I have a lot of them in the persistent level, it will be very expensive…
Maybe I can put these trigger volumes in the streamed level to build some sort of chain of trigger volume…

2 - In my game, the player give order to several units (10 max) and he can tell to each of them to go in a very distant point of the map…
I can limit this through gameplay but I ask myself if there is a limit for the number of level loaded.
If each unit is in a level and trigger the loading of 1 or 2 other level, I will quickly have 20 level loaded + the persistent one…
In fact, I will forbid the player to dispatch all his units on the large map. But I want some split mission that will need 2 or 3 teams in different places in the world that act simultaneously.
How the number of streamed level impact the game ? Should I make a lot of little level or some big ones ?

3 - When the player load a game, his unit will be spawn where they were at the save game. Then, these unit will trigger the volume and launch the loading of the needed levels.
Then, when the level where the unit are are loaded, I will need to update them to remove the already killed mobs, open the opened door…
That seems a bit messy to me… And I’m afraid that the game want to load in the same time several levels + the level around the level in witch the units are…
Is there a way to make this by ordering the streaming of the levels (level with unit in it THEN level around these level)
Do you think of a better way to make my “loading a game” process ?

As you can see, I’m in a “preparation” situation here ^^
These are not real technical questions but I want to be well prepared when I’ll start this :slight_smile:
I take any advises !