20% off Steal the Deal With Unreal Engine Plugins For Grab
GameLiftHost
Run your Unreal Engine dedicated server on Amazon GameLift from Blueprints and C++: process lifecycle, game and player sessions, FlexMatch backfill, health checks and flβ¦
Highlights
All 13 features βGameLiftHost is the server side of Amazon GameLift for Unreal Engine. Add it to your project, package a Win64 or Linux dedicated server, and the server reports itself ready, receives game sessions, validates joining players and shuts down cleanly when Amazon GameLift asks it to - on managed EC2 fleets, container fleets and Anywhere fleets.
Turn on Auto Init SDK and Auto Process Ready and there is nothing to wire: as soon as the server world listens, the plugin connects to Amazon GameLift and reports the port the server really listens on, and the engine log file is uploaded when the process ends. Prefer full control? Init SDK, Process Ready, Activate Game Session, Process Ending and Destroy SDK are all Blueprint nodes.
On Start Game Session delivers everything about the match: id, name, fleet, maximum players, IP address, DNS name, port, game properties and FlexMatch matchmaker data. Players are validated with Validate Player From Options from Game Mode Pre Login, or automatically for Blueprint-only projects: the plugin reads the PlayerSessionId from the join URL, accepts it, kicks players without a valid session and frees their slot when they leave.
Start Match Backfill and Stop Match Backfill keep FlexMatch games full, with the results in On Update Game Session. On Health Check is answered instantly with the last Set Health Status value, so a busy game thread never makes a healthy server look dead, and On Process Terminate gives you the termination time to end the match gracefully. Get Fleet Role Credentials returns temporary AWS keys of an IAM role so the server can call other AWS services, and Get Compute Certificate returns the fleet's TLS certificate.
For Anywhere testing on your own PC, pass the WebSocket URL, auth token, fleet id and host id on the command line, or play in the editor with a Play In Editor dedicated server. The plugin compiles in every Win64 and Linux target but loads the SDK only in dedicated servers, so your game client ships with the same project untouched.
GameLiftHost is part of the Alpha XP AWS collection for Unreal Engine 4.27 and 5.8. It includes the Amazon GameLift Server SDK for C++ 5.6.1 prebuilt for Win64 and Linux, ships with styled HTML documentation, and is compiled warning-free against clean UE 4.27 and UE 5.8 projects.
Key features
- Init SDK for managed EC2 / container fleets (environment) and Anywhere fleets
- Process Ready with automatic listen-port detection and log upload (engine log by default)
- On Start Game Session: id, name, fleet id, max players, IP, DNS, port, game
- Activate Game Session, Update Player Session Creation Policy, Get Game Session Id, Get
- Accept / Remove Player Session and Validate Player From Options for Game Mode Pre Login
- Auto Validate Players for Blueprint-only projects: accept after login, kick invalid
- FlexMatch: Start Match Backfill, Stop Match Backfill, On Update Game Session
- On Health Check answered instantly from Set Health Status; On Process Terminate with
- Process Ending with optional engine exit; automatic Process Ending on shutdown
- Get Fleet Role Credentials and Get Compute Certificate as latent nodes
- Describe Player Sessions with paging and status filter
- SDK callbacks delivered on the game thread; slow calls run on background threads
- C++ API on the subsystem with native callbacks
Blueprint & C++ API
Every call is reachable from more than one place β pick the entry point that fits your project:
| Class | Type | Nodes | Use it for |
|---|---|---|---|
| GameLiftHostSubsystem | Game Instance subsystem | 17 | Amazon GameLift dedicated server integration. One per game instance; the instance that calls Init SDK owns the (process-wide) SDK and receives its events. |
| Async action nodes | Latent Blueprint nodes | 1 | Latent node with success / failure output pins. |
Callable runs when executed Β· Pure no exec pin, returns a value Β· LatentAsync finishes later and fires its outputs
GameLiftHost 13
| Node | Type | Available on | Description |
|---|---|---|---|
| Cancel | Async | Async | Stops waiting: none of the node's output pins fire any more. The call itself still completes on Amazon GameLift. |
| Init SDK(Anywhere: Game Lift Host Server Parameters) β Boolean, Error | Callable | Subsystem | Connects this server process to Amazon GameLift. On managed EC2 and container fleets leave Anywhere empty: everything comes from the environment. |
| Process Ready(Port: Integer, Log Paths: Array of String) β Boolean, Error | Callable | Subsystem | Tells Amazon GameLift that this process can host a game session. |
| Activate Game Session() β Boolean, Error | Callable | Subsystem | Reports that the game session is ready for players. Call it after On Start Game Session once the match is prepared. |
| Get Game Session Id() β Boolean, Game Session Id | Pure | Subsystem | Id (ARN) of the game session this process hosts; fails before a game session was started. |
| Get Current Game Session() β Boolean, Game Session | Pure | Subsystem | The last game session received (On Start / On Update Game Session). |
| Get Termination Time() β Boolean, Termination Time | Pure | Subsystem | When Amazon GameLift will stop this process (UTC). False when no termination is scheduled. |
| Process Ending(Request Exit: Boolean) β Boolean, Error | Callable | Subsystem | Reports that this process is shutting down. With Request Exit the SDK is also shut down and the engine asked to exit, as Amazon GameLift expects after Process Ending. |
| Destroy SDK() β Boolean, Error | Callable | Subsystem | Disconnects from Amazon GameLift and frees the SDK. Init SDK can be called again afterwards. |
| Set Health Status(Healthy: Boolean) | Callable | Subsystem | The answer to the next health checks (default healthy). Unhealthy processes are replaced by Amazon GameLift. |
| Is SDK Ready() β Boolean | Pure | Subsystem | True after a successful Init SDK (in any game instance of this process). |
| Get Host State() β Game Lift Host State | Pure | Subsystem | Lifecycle state of this game instance's Amazon GameLift process. |
| Get SDK Version() β String | Pure | Subsystem | Version of the Amazon GameLift Server SDK, for example "5.6.1". |
Players 5
| Node | Type | Available on | Description |
|---|---|---|---|
| Accept Player Session(Player Session Id: String) β Boolean, Error | Callable | Subsystem | Validates a joining player's session id (from the client's join options). Fails for unknown or expired ids. |
| Remove Player Session(Player Session Id: String) β Boolean, Error | Callable | Subsystem | Reports that a player left, so the slot becomes free again. Call it from Logout. |
| Validate Player From Options(Options: String) β Boolean, Player Session Id, Error Message | Callable | Subsystem | For Game Mode Pre Login: reads "PlayerSessionId=" from the join options and accepts it. |
| Get Player Session Id(Player Controller: Player Controller) β String | Pure | Subsystem | The PlayerSessionId a remote player joined with (from the join URL options); empty for local players. |
| Update Player Session Creation Policy(Policy: Game Lift Host Player Session Policy) β Boolean, Error | Callable | Subsystem | Accept All lets new player sessions be created for this game session; Deny All closes it to new players. |
Events & delegates
Bind these in Blueprint (drag off the object β Bind Event) or with AddDynamic in C++.
| Event | Parameters | Fires on | When it fires |
|---|---|---|---|
| On Success | Player Sessions (Array of Game Lift Host Player Session), Next Token (String), Error (Game Lift Host Error) | GameLiftHostDescribeSessionsAction | |
| On Failure | Player Sessions (Array of Game Lift Host Player Session), Next Token (String), Error (Game Lift Host Error) | GameLiftHostDescribeSessionsAction | |
| On Start Game Session | Game Session (Game Lift Host Game Session) | GameLiftHostSubsystem | A game session was assigned to this process: prepare the match, then call Activate Game Session. |
| On Update Game Session | Game Session (Game Lift Host Game Session), Reason (Game Lift Host Update Reason), Backfill Ticket Id (String) | GameLiftHostSubsystem | The game session changed, usually because FlexMatch backfill added players (see Matchmaker Data). |
| On Process Terminate | Termination Time (Date Time) | GameLiftHostSubsystem | Amazon GameLift will stop this process (scale-in, spot interruption, fleet update): save, end the match and call Process Ending. |
| On Health Check | β | GameLiftHostSubsystem | Amazon GameLift asked for the health of the process (about once a minute). Call Set Health Status to change the answer. |
Project settings
Configure once under Project Settings βΊ Plugins βΊ GameLiftHost β values are saved to the project's config .ini, so they travel with the project and your build.
| Setting | Section | Type | What it does |
|---|---|---|---|
| Allow Outside Dedicated Server | Server | Boolean | The SDK only starts in dedicated server processes. |
| Auto Init Sdk | Server | Boolean | Calls Init SDK automatically once the server world has started (from the environment, or the Anywhere values below / on the command line). |
| Auto Process Ready | Server | Boolean | With Auto Init SDK: also calls Process Ready right after it, with the port and log paths below. |
| Auto Activate Game Session | Server | Boolean | Calls Activate Game Session right after On Start Game Session fired. Disable when you load a map or prepare the match first. |
| Auto Validate Players | Server | Boolean | Accepts every remote player's PlayerSessionId (from the join URL options) right after login and kicks players without a valid one; removes the player session ag⦠|
| Process Ending On Shutdown | Server | Boolean | Reports Process Ending and shuts the SDK down when the game instance shuts down. |
| Exit On Process Terminate | Server | Boolean | When Amazon GameLift asks the process to terminate: report Process Ending, shut the SDK down and exit, after On Process Terminate fired. |
| Default Port | Server | Integer | Port reported to Amazon GameLift when Process Ready gets port 0. 0 = the port the server's net driver listens on. |
| Log Paths | Server | Array of String | Files Amazon GameLift uploads when the process ends (up to 10). Empty = the engine log file of the process. |
| Forward Sdk Log | Server | Boolean | Forwards SDK log lines to the Output Log (LogGameLiftHost). |
| Anywhere Web Socket Url | Anywhere | String | Anywhere fleets: the GameLiftServiceSdkEndpoint, for example "wss://us-west-2.api.amazongamelift.com". Empty = managed fleet (environment). |
| Anywhere Fleet Id | Anywhere | String | Anywhere fleets: fleet id or ARN. |
| Anywhere Host Id | Anywhere | String | Anywhere fleets: compute name used with RegisterCompute. |
Options & enums
| Enum | Values |
|---|---|
| State | Not Initialized Initialized Process Ready Game Session Active Process Ending |
| Player Session Policy | Accept All Deny All |
| Update Reason | Unknown Matchmaking Data Updated Backfill Failed Backfill Timed Out Backfill Cancelled |
| Player Session Status | Not Set Reserved Active Completed Timed Out |
Compatibility
One ready-made build per engine version is included in the download β copy the one that matches your project.
| Platform | Supported in |
|---|---|
| Windows | Editor & packaged |
| Linux | Editor & packaged |
| Module | Type | Loading phase |
|---|---|---|
| GameLiftHost | Runtime | Default |
Technical details
| Code modules | GameLiftHost (Runtime), GameLiftHostSdk (External, Source/ThirdParty - prebuilt Amazon GameLift Server SDK for C++) |
|---|---|
| Blueprints | 0 Β· C++ classes: 8 |
| Network replicated | No |
| Development platforms | Windows: Yes, Mac: No, Linux: Yes |
| Target build platforms | Win64, Linux |
| Third-party software | Yes - Amazon GameLift Server SDK for C++ 5.6.1 (Apache-2.0), with asio (BSL-1.0), websocketpp (BSD-3-Clause), RapidJSON (MIT), spdlog and fmt (MIT), concurrentqueue (Simplified BSD / Boost Software License) and OpenSSL 1.1.1 (OpenSSL License) linked inside the plugin's SDK library, in Source/ThirdParty/GameLiftHostSdk |
| Engine versions | Unreal Engine 4.27 Β· 5.8 β a build for each is included |
| C++ classes | 8 + 7 structs |
| Blueprint nodes | 18 |
| Events | 6 |
| Documentation | Documentation.html (in the download) |
| Download | GameLiftHost.zip Β· 7.8 MB |
| Version | v1.0.0 |
What's in the download
| File | What it is |
|---|---|
| GameLiftHost 4.27.zip | Plugin build for Unreal Engine 4.27 |
| GameLiftHost 5.8.zip | Plugin build for Unreal Engine 5.8 |
| Documentation.html | Documentation (open in a browser) |
Quick start
- Unzip the download and pick the build that matches your engine (4.27 Β· 5.8).
- Copy the GameLiftHost folder into your project's Plugins/ folder (create it if needed).
- Open the project, enable GameLiftHost under Edit βΊ Plugins and restart the editor.
- Fill in Project Settings βΊ Plugins βΊ GameLiftHost.
- Right-click in any Blueprint graph and search GameLiftHost β or include the public headers from C++.
- Package for your target platform (Windows, Linux).
Good to know
Built and verified warning-free for Unreal Engine 4.27 and 5.8. Requires an AWS account; Amazon GameLift fleets are billed by AWS. Intended for dedicated servers (Win64 and Linux): the plugin compiles in every Win64 and Linux target, but the SDK library is loaded and started only in dedicated server processes unless the project settings allow it (Anywhere testing from the editor). On Win64 the SDK is one DLL with a plugin-specific name and on Linux one shared library, so GameLiftHost installs next to other AWS-based plugins. Developed and maintained by Alpha XP.
Everything included
- Init SDK for managed EC2 / container fleets (environment) and Anywhere fleetsβ¦
- Process Ready with automatic listen-port detection and log upload (engine log by default)
- On Start Game Session: id, name, fleet id, max players, IP, DNS, port, gameβ¦
- Activate Game Session, Update Player Session Creation Policy, Get Game Session Id, Getβ¦
- Accept / Remove Player Session and Validate Player From Options for Game Mode Pre Login
- Auto Validate Players for Blueprint-only projects: accept after login, kick invalidβ¦
- FlexMatch: Start Match Backfill, Stop Match Backfill, On Update Game Session
- On Health Check answered instantly from Set Health Status; On Process Terminate withβ¦
- Process Ending with optional engine exit; automatic Process Ending on shutdown
- Get Fleet Role Credentials and Get Compute Certificate as latent nodes
- Describe Player Sessions with paging and status filter
- SDK callbacks delivered on the game thread; slow calls run on background threads
- C++ API on the subsystem with native callbacks
Platforms
Requirements
- Unreal Engine 4.27 and 5.8
- Develop on Windows (Win64)
- Blueprints and C++
In the download
Personal
One non-commercial project
- 1 activation seat
- 1 year of updates
- One end product
- Non-commercial use
- Community support
- 14-day refund window
Commercial
Ship paid products
- 5 activation seats
- 1 year of updates
- One paid end product
- Unlimited end users
- Priority support
- Source files
- 14-day refund window
Extended
Resell & white-label
- Unlimited activation seats
- Lifetime updates
- Unlimited end products
- White-label & resell
- 1-hour SLA
- Seat-free team use
- 14-day refund window
One purchase per product, no subscription. Each licence comes with a signed key β 1 seat on Personal, 5 seats on Commercial, unlimited seats on Extended. Paid licences can be refunded within 14 days from your order page.
- v1.0.0Latest
- Unreal Engine 4.27 and 5.8
- Blueprint and C++ API, HTML documentation
Be the first to review GameLiftHost β reviews come from customers who bought it, so every one is a verified purchase.
Frequently asked
How do I get the files after paying?
Straight after checkout you land on your order page with the download button and your licence key. A receipt is emailed to you, and every order stays in My library.
Which licence do I need?
Personal β One non-commercial project. Commercial β Ship paid products. Extended β Resell & white-label. The Licences tab compares them side by side.
On how many devices can I activate it?
1 seat on Personal, 5 seats on Commercial, unlimited seats on Extended.
How long do I get updates?
Personal: 1 year of updates, Commercial: 1 year of updates, Extended: lifetime updates, counted from your purchase.
Can I get a refund?
Yes β paid licences can be refunded within 14 days, straight from your order page.
Is the download safe?
The file was scanned with ClamAV when it was published. Its SHA-256 checksum is listed under Features β In the download, so you can verify the file you receive.
Do I need an account?
No. Checkout only needs your email. Signing in keeps all your purchases, keys and downloads together in My library.
More like this
AudioLens
Real-time audio analysis: FFT spectrum, onset and beat detection, and a full set of time- and frequency-domain descriptors..
β β β β β No reviews yetTTechHarbour$14.00BlueprintTCP
BlueprintTCP lets you connect to any TCP server and exchange data entirely from Blueprints β no C++ and no networking boilerplate.
β β β β β No reviews yetTTechHarbour$12.99BluetoothLink
Bluetooth Low Energy for Unreal - scan, connect, read, write and subscribe to BLE devices on Android and iOS.
β β β β β No reviews yetTTechHarbour$11.99ClusterLink
SocketCluster realtime client for Unreal - pub/sub channels, auth engine and JSON codec, usable from Blueprints.
β β β β β No reviews yetTTechHarbour$11.99