So this question might be a bit specific, but I wasn’t able to find an answer to it, so maybe someone here can help me out.
So let’s imagine this scenario:
I was joined to a p2p host and have the game map loaded (there will be only one main map in this case). Now the host drops out. Now I want the client (which no longer has a host) to stay on the map. This can be done as far as I see it and I could also create a new ListenServer on the client to let other people join me again.
But now the problematic part.
After my host drops me, I want to check if there are still lobbies available and if one is found, I want to join that lobby. Now I know that I’m already on the correct map, so I don’t want to interrupt the player by forcing him to a loading screen.
Is there a way to join another lobby/session without actually forcing a client to reload it’s map? So he can continue to walk around on the map while connecting to the new host and if he is connected, stuff that needs to be replicated will be replicated, but we don’t need to actually reload the server map (as we are already on the same map, because the client was in a session before)?
I know it would be possible to create that with a dedicated server, but it would be awesome if that could be done with p2p (like Steamworks).
Thanks in advance.
EDIT:
If the solution is only possible in C++ that’s not a problem.