I used the multithreaded start in editor with dedicated server and "Play as client" mode as on screenshot
And on the server I used the Engine->Browse for change the level.
But after on the client I got strange assertion in UE4 engine code ( World.cpp, UWorld::ConvertToPIEPackageName):
Can you let me know if you have the same error occur in a new 4.12 project? If so, can you provide the setup steps so that I can try to reproduce this on my end? I setup my Level Editor - Play tab to match you screenshot but when I PIE I get an error message stating “The map specified on the commandline could not be found. Would you like to load the default map instead?” Can you let me know what other setup steps need to be done?
On 4.12 version this error occurs too.
I used next steps to reproduce error:
Created a new map TestLevel
Created a new second map LoginMap
Used as editor startup map is TestLevel
Used as Game default map is LoginMap
Used as Server default map is TestLevel
Created new GameInstance named MyGameInstance, and in StartGameInstance method used Engine->Browse(*WorldContext, URL, Error), where URL is parsed params from FCommandLine::Get().
Runs with dedicated server and without single process and with editor multiplayer mode: Play As Client (as on screenshot).
I can follow your steps up until step 6. What type of variable is URL? Is Error a known variable or a variable for a custom error message? Can you provide the code for the class?
Oh sorry, a small correction: URL constructed as FURL() without parameters and without anything changes.
And due to debug info FURL() constructs an URL with correct map name (default constructor returns default map for the client and dedicated server).
I still don’t know what “Error” is doing (if it’s a variable you created or part of the class). Please provide the code for you class so that I can ensure that my setup matches what you’re doing.