Yeah, that sums it up.
To break it down:
- Make sure your Unreal Engine User account is linked to GitHub.
- Download the branch you want (current stable version is 4.12)
- Run “Setup.bat” in downloaded source code. Wait for it to finish downloading (roughly 4GB)
- Run “GenerateProjectFiles.bat”
- Open UE4.sln
- Compile engine as Development Editor (this takes a while)
- Run UE4 and create C++ Project (this will open another Visual Studio window for that project)
- Close UE4 Visual Studio project.
- Create Server.Target.cs for your game : Documentation
- Close MyGame Visual Studio project.
- Navigate to your MyGame project directory
- Right click, MyGame.uproject → Select, “Generate Visual Studio project files”.
- Re-launch MyGame.sln
- Make sure MyGameServer.Target.cs exists in the Solution Explorer
- Change the “Solution Configuration” from Development Editor to Development Server
- Compile MyGame (You have to do this every time you make changes to your game and want to test them on the server)
- Open MyGame.uproject
- Set your package settings in editor and package the game
- Navigate to where you packaged your game and go to WindowsNoEditor->MyGame->Binaries->Win64
- In other folder, navigate to where your MyGame.uproject is saved.
- Go to Binaries->Win64
- Copy MyGameServer.exe
- Paste MyGameServer.exe to packaged game: WindowsNoEditor->MyGame->Binaries->Win64
- Right click MyGameServer.exe → Copy
- Paste shortcut in same folder.
- Right click on short cut and go to properties
- add, “-log” to end of Target (no quotes)
- You can now run a server.
Last bit of advice:
Making a multiplayer game is exceedingly more difficult and costly than making a single player game.