Steps to get this to work in Unreal Engine 5.03
Open the commandline terminal and type your equivalent of:
- Launch the Server
"M:\UnrealEngine\UE_5.0\Engine\Binaries\Win64\UnrealEditor.exe" "M:\UnrealEngineProjects\PuzzlePlatforms\PuzzlePlatforms.uproject" "M:\UnrealEngineProjects\PuzzlePlatforms\Content\ThirdPerson\Maps\ThirdPersonMap?listen" -server -log
- Launch the first client
"M:\UnrealEngine\UE_5.0\Engine\Binaries\Win64\UnrealEditor.exe" "M:\UnrealEngineProjects\PuzzlePlatforms\PuzzlePlatforms.uproject" 127.0.0.1 -game -log
- Launch an additional client
Press the up arrow on your keyboard once to display the previously entered command, and then accept it again with ‘Enter’ Key. Throughout testing you are able to use the up and down arrows to cycle between the various commands your ran previously.
- You will not have a character appear for the server version (as it does in this video) - so do not expect to see it when you have only launched just one of the two game clients.
- You do not need to find your IP address - the 127.0.0.1 is a test address that all network cards (yes on OSX also) have that will loop back to itself.
- Don’t try to use ‘localhost’ instead of your own IP address. This failed for me on windows 10 - perhaps because it defaulted to using IPV6 address which maybe the unreal command line was not expecting. I don’t know for sure.
- You can use the map parameter as follows - but use forward slashes as shown. Because using a backslash here by mistake will give you an error in your server log about unacceptable characters.
"M:\UnrealEngine\UE_5.0\Engine\Binaries\Win64\UnrealEditor.exe" "M:\UnrealEngineProjects\PuzzlePlatforms\PuzzlePlatforms.uproject" /Game/ThirdPerson/Maps/ThirdPersonMap?listen -server -log
Of interest to some:
There are a heap of great command line tools for windows and mac to help you figure out networking problems. I was having issues but decided to use a graphical tool this time. There is a free windows program here: CurrPorts: Monitoring TCP/IP network connections on Windows (mac will have other applications) that helped me narrow down my issue.
I compared my logfiles to what I had in the CurrPorts.
The following was after running a three player game in the editor.
And when using the command line - and launching a server and two clients:
Notice the process ids - a unique one for each command from the commmandline. Paying notice to those port numbers can help you track down what is happening in your log.