UE5 & GameLift – Hosting Dedicated Servers
Introduction
Throughout this guide we will be covering how you can add dedicated host multiplayer to your game.
There are a number of different topics to discuss as we get from local multiplayer to dedicated host, and then onto hosting your server instances on AWS GameLift.
We will therefore break this guide down into the following sections:
Compiling UE5 From Source
To build dedicated servers, you will need to install the Unreal Engine from source. This means, manually building the Engine from Epic Games source code using Visual Studio.
Basic UE5 Multiplayer Project Setup
This section will go through the setup of a very basic multiplayer scene in UE5 and how we can prep our server and client and get them connected locally.
Building The GameLift SDK
The GameLift server SDK is available to download from source. In this section we will go through the prerequisite tools and setup required to create the compiled .dll files which will be needed for your project.
GameLift Fleet Setup
This section will discuss how we can package the GameLift server SDK into our UE5 project and prepare your server builds for deployment on GameLift. This will also cover some common issues that may arise and how to debug them.
Creating A Basic Hub World
Now that you have your servers deployed on GameLift, we need a way for players to connect to them.
In this section we will go through a brief example of how to create a hub for your players to connect to your GameLift fleet.
We will show how to setup brainCloud as an intermediate service allowing for easy player authentication and server-to-server communication with GameLift so that we don’t have to go through the extra steps to set up infrastructure and write code to allow for session placement and client communication. brainCloud will do all this for us.
We will be covering a lot of software and tools throughout this guide but don’t worry if you are unfamiliar, we will go in depth as much as possible as to how we use these tools and where-possible, provide you with links to where you can learn more about those tools yourself.