Skip to content

The Amazon GameLift Plugin for Unreal contains libraries and native UI that makes it easier to access GameLift resources and integrate GameLift into your Unreal game. You can use the GameLift Unreal Plugin to access GameLift APIs and deploy AWS CloudFormation templates for common gaming scenarios.

License

Notifications You must be signed in to change notification settings

shawstar/amazon-gamelift-plugin-unreal

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Amazon GameLift Plugin for Unreal Engine

GitHub GitHub release (latest by date) GitHub all releases GitHub release (latest by date)

Compatible with Unreal Engine 5 (versions 5.0, 5.1, and 5.2).

Overview

Amazon GameLift is a fully managed service that allows game developers to manage and scale dedicated game servers for session-based multiplayer games. The Amazon GameLift plugin for Unreal Engine provides tools that makes setting up your Unreal project, compatible with UE 5.0, 5.1 and 5.2, for hosting on Amazon GameLift quicker and easier. Once installed, you will be able to search the plugin from within the Unreal Engine editor and start using it to integrate Amazon GameLift functionality into your client and server code. The plugin contains functionality to automatically bootstrap your game runtime environment to the AWS Cloud, fully test your game server integration with Amazon GameLift locally, and deploy your game servers on Amazon GameLift.

You can use the following built-in templates to deploy your game for some of the common scenarios.

  • Single-region fleet: Deploy your game server to one fleet in a single AWS Region. Use this scenario to experiment with your install scripts and runtime deployment, as well as your integration.
  • Spot fleet: Deploy your game server to a set of low-cost Spot fleets and a back-up On-Demand fleet. Use this scenario to experiment with a multi-fleet hosting structure that balances cost savings and durable game session availability.
  • FlexMatch fleet: Deploy your game server for hosting with a FlexMatch matchmaking solution. Amazon GameLift's FlexMatch is a highly scalable and customizable matchmaking service for multiplayer games. Use this scenario to set up basic matchmaking components (including a rule set) that you can customize.

Each scenario uses an AWS CloudFormation template to deploy your game, creating a stack with the necessary resources. You can view and manage your resource stacks in the AWS Management Console for CloudFormation.

Prerequisites

Install the plugin

Complete the following steps to install and enable the plugin for your multiplayer game project. For more details, see the AWS GameLift documentation.

  1. Install and enable the plugin.

    1. In your game project root folder, open the Plugins folder and copy the Amazon GameLift plugin files.
    2. In the .uproject file, add the following to the Plugins section:
      {
          "Name": "GameLiftPlugin",
          "Enabled": true
      },
      {
          "Name": "WebBrowserWidget",
          "Enabled": true
      }
      
  2. Add the GameLiftServerSDK module.

    1. In your game project folder, go to the Source folder and open the .Build.cs file.

    2. In the ModuleRules class, add “GameLiftServerSDK” to the list of public dependency module names as follows:

          public class YourProjectName : ModuleRules
          {
              public YourProjectName(TargetInfo Target)
              {
                  PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore" });
                  
                  if (Target.Type == TargetRules.TargetType.Server)
                  {
                      PublicDependencyModuleNames.AddRange(new string[] { "GameLiftServerSDK" });
                  }
      
                  bEnableExceptions = true;
              }
          }
  3. Set your project to use the source-built UE editor. Do this step if your game project was created with a non-source-built version of UE. In your game project folder, select the .uproject file and choose the option Switch Unreal Engine Version.

  4. Rebuild the project solution. After completing the previous steps to update your project files, rebuild the solution.

Amazon GameLift Resources

About

The Amazon GameLift Plugin for Unreal contains libraries and native UI that makes it easier to access GameLift resources and integrate GameLift into your Unreal game. You can use the GameLift Unreal Plugin to access GameLift APIs and deploy AWS CloudFormation templates for common gaming scenarios.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 96.7%
  • C 3.1%
  • Other 0.2%