Questions tagged with Game Server Hosting & Backends
Content language: English
Sort by most recent
Greetings.
I have been following the official [GameLift & Unreal](https://www.youtube.com/playlist?list=PLuGWzrvNze7LEn4db8h3Jl325-asqqgP2) tutorial and have been able to get it working in UE 5.1. I'd like to know what steps should I do to run multiple game servers in a single EC2 instance. The tutorial above only shows how to run a single game server. We are planning to have one dedicated server for each game session in our project.
There was a related question [here](https://repost.aws/questions/QUpqASdgt7RtOc8hmWKl_R0w/unreal-engine-multiple-dedicated-server-instances), but our project does not use Steam.
We currently hosting our UE5.0 game dedicated server on GameLift with the SDK version of 3.3.3. We're able to create game session successfully and is now live.
Now we're updating our game to use UE5.1, however when we upload our dedicated server build to GameLift, we either able to get 1-2 game session instantly terminated (40-60s) or a lot of `SERVER_PROCESS_TERMINATED_UNHEALTHY` event code on our Fleet.
According to the [documentation](https://docs.aws.amazon.com/gamelift/latest/apireference/API_Event.html), we need to check the game session logs. However there's no way for us to access the logs. We've followed [this](https://docs.aws.amazon.com/gamelift/latest/developerguide/integration-engines-setup-unreal.html) to see whether the logs can be downloaded from the dashboard with no success.
We have tested locally via Unreal Engine Editor as Client with simulated server without issues. Appreciate your assistance on this.
I was creating a multi-player experience for quest using unreal engine and AWS because I saw https://aws.amazon.com/blogs/spatial/building-an-openxr-enabled-unreal-engine-vr-server-on-aws/ .
I created a aws account just because of this documentation for VR multi-player.
I followed the whole documentation uploaded linux.zip to my ec2 instance created apk for my 2 quest 2 devices and side loaded it with side quest.
But I have a problem when I open the map and press the connect button my position and the whole map just resets for both of my devices (Not at the same time but after few seconds) and they don't see each other and they don't even see the object interaction. In short words I don't think the multiplayer is working. There are no errors while building or launching the apk.
I am using Unreal Engine 5.1.1 and meta quest 2.
Thanks for reading and I would really appreciate everyone's help because I am not familiar with aws much and using it because I found this documentation.
If you need any other info do tell me.
Hello, I have a question for you, I have decided that my website will have PHP as a backend, probably on Laravel and later on my own CMS system. I have purchased a domain, what other services would you recommend for my requirements? I also need an SSL certificate
Thank you very much for your reply, it would help me a lot. Have a nice evening
Hello,
2 month ago, we implemented GameLift to our Unity project.
Worked perfectly, we tested it for a couple of weeks with multiple devices.
We were able to create game and player sessions through the SDK methods "CreateGameSession" & "CreatePlayerSession".
Fast-forward 2 month later, after a discussion with an employee of AWS, the latter recommand us to use "StartGameSessionPlacement" instead, in addition to game session queues.
We decided to follow the advice, however after uploading the new build & creating a new fleet, the instance keeps crashing, alternating between these 2 errors :
* SERVER_PROCESS_SDK_INITIALIZATION_TIMEOUT - Server process started correctly but did not call InitSDK() or ProcessReady() within 5 minutes
* SERVER_PROCESS_CRASHED - Server process exited without calling ProcessEnding(), exitCode(134)

I looked for an hour before trying to do the exact same with an older build from 2 month ago, and the exact same thing happened.
After playing around with the fleet settings, I reduced the amount of concurrent processes from 20 to 5, and it finally worked !
I am still very confused though as to why ? 2 month ago, this problem never showed up in any of our tests.
Since the build used is the exact same, it should work the same way, right ?
Another thing, even after reducing the amount of processes, when I manually scale down the instance number to 0, this error shows up 5 times in a row (1 for each process I assume) :
* SERVER_PROCESS_FORCE_TERMINATED - Server process did not cleanly exit within 30 seconds of OnProcessTerminate(), exitCode(137)

Again, never happened before :/
Does anybody knows why Gamelift might behave like this all of a sudden ?
Best regards,
Tom
So we have a game that we are soon going to roll out for beta testing and would like to know how to enable the autoscaling feature? Right now, Under scaling section for the fleet in Frankfurt region, I am shown that I can have only 1 server and when I enable the autoscaling feature, the desired number of servers under scaling limits turns to 0 and no player session is able to be activated throwing FleetExceptionError. So as a team planning to launch a battle royale game, for us we don't mind the max number of services we need as we expect exponential growth in players once we roll out the game, But this available servers=0 is a concern we would like to know how to address. Any help will be much appreciated.

So, I have a few server sessions that got crashed and would like to know how to save logs in Gamelift. Right now, when I downloaded the logs for the sessions that crashed, the readme file inside zip is showing Game Server Logs:
Error: Missing file/directory C:\game\GameName\Binaries\Win64\aLogFile.txt
I'm trying to understand the proper protocol for uploading new server builds to gamelift. My understanding is as follows
1. Package the server locally
2. Upload a build to gamelift
3. Delete existing fleets
4. Create a new fleet with the same configuration as the old fleet, except with the newer build
5. Replace references to fleets within lambdas. ([here's an example of an official AWS source providing a script with a hardcoded fleet ID](https://github.com/aws-samples/amazon-gamelift-unreal-engine/blob/main/lambda/GameLiftUnreal-StartGameLiftSession.py) linked to from [this tutorial](https://www.youtube.com/watch?v=_EynplPECNk&list=PLuGWzrvNze7LEn4db8h3Jl325-asqqgP2&index=5))
6. Redeploy lambdas
This seems excessive - deleting and deploying a new fleet both take a long time. Since each fleet will have the same configuration as the last one, manually re-entering this information and having to replace code in lambdas seems prone to human error.
Is there no way to update the build on a fleet? Should I be programmatically fetching the fleet ID somehow in my lambdas? If I am forced to delete and re-create new fleets with identical configurations, is there a good way to ensure new fleets are configured correctly?
Hello,
An expansion to an original question: https://repost.aws/questions/QU0MPwSTJGQhKDcl9Zw1e_zQ/aws-game-lift-server-best-solution-for-generating-and-rotating-api-keys-for-aws-server-authentication
Is there a way to find which VPC and addresses the individual game servers are running on within Gamelift?
Actually, in writing this, I found this thread as well: https://repost.aws/questions/QUoLdwDhJRSCy4EhLSJwzvxw/running-a-proxy-process-on-gamelift
We are just trying to make sure that certain calls to our backend services originate from within the actual servers running within game lift and not via an outside client. UE4 packages the server and client code together, so we just want an extra layer of security check.
I would like to know the Gamelift server SDK function that can be used to terminate a session if all the players in the game exits or say the game has been finished. Right now, I have a session that I created few days back which is still running without terminating which is not good for me. Any help would be highly appreciated.
I'm using Gamelift as dedicated server for my multiplayer game.
Everything works well, just one problem: in my game fleet dashboard, sometime for unknow reason, some game session are running forever, doesn't shutdown. Please see my attached screenshot below.
I've tried every way I can think to terminated a game session. even I write a script to report game session as unhealthy if the game session is running for more than 2 hours, but it seem doesn't work.
Is there anyway I can check what happend for these game session? Or how can I check log to see what's the error? (because the game session does not shutdown so I can't see log).
Here is some additional information about my game fleet:
Fleet id: fleet-91342684-5597-4fbe-9854-51f4aa1fc0e4
Example a game session that doesn't shutdown:
session id: arn:aws:gamelift:ap-southeast-1::gamesession/fleet-91342684-5597-4fbe-9854-51f4aa1fc0e4/669aa29f-eb0d-4f46-b52b-7a456c2a3354
ip: 54.179.179.230
port: 8127
Thank you very much for your help! I've been struggled with this problem for months :D

I am working on an Unreal Engine 5 project and want to deploy the game on AWS infrastructure (Gamelift). But came to know that the Gamelift Server SDK and Gamekit doesn't support UE5 as of now. Is there any way around to deploy UE5 game server and backend on AWS or is it like 'if you guys are building on UE5, you have to wait until we roll out an update sometime in the future'? It will be really encouraging if you can share some good documentation/ articles on the topic as well.