Hi.
I need to migrate old game code to new system. So in this new system, I will need the game client to connect to a dedicated server, but the game client will have to stay at current menu. The new flow is like this:
- Player at custom multiplayer screen
- Player modify some setting
- Player create session, request a dedicated server and then connect with it
- Player will stay at current menu
- Player can modify some setting again while waiting other people join
- When ready, player start the game and travel to game map (I think this will use RPC)
The old implementation was using game lobby, but the new one will need to get rid of lobby system and using game session (in the old system, step 3 was creating lobby, and step 6 was the actual creating session and requesting dedicated server).
So far what I’ve tried are
- Calling
PlayerController->ClientTravel(ServerUrl, TRAVEL_Absolute);
when dedicated server is ready, but this will make player directly travel to dedicated server default map - I try override
bool MyGameInstance::DelayPendingNetGameTravel()
, and make it to returntrue
whenClientTravel
above called, but this make my screen blank. I was expecting this make player stay at current menu, and when it set to return false, player will travel to dedicated server’s map. But currently it makes my screen goes blank
So, is it possible to game client to connect with server, but stay at current menu? How to do that?
Additional note: The menu is using widget blueprint, and the background map is random. What I aim is player perfectly stay still at their current map and menu, not move to a dedicated custom game map