GameLift Anywhere with Flexmatch in Unreal

0

Hello,

I am using unreal engine, i've setup everything to support GameLift and tested on managed EC2 instances and everything is working fine. Also I've setup Anywhere, followed all the steps from the documentation, and I am able to launch a server that registers and calls InitSDK() successfully.

The problem is that I'm trying to matchmake using flexmatch, but the ticket is stuck on "PLACING", and that's because the "OnStartGameSession" is not being called in unreal once a match is found.

Does Anywhere not support Flexmatch?

Elie
已提问 6 个月前247 查看次数
3 回答
1
已接受的回答

Hi Elie,

I have managed to solve this problem, so I'm sharing the information with you.

In the Gamelift console's navigation page, select Queues where there is a screen for creating queues. It's also fine to use the queue editing screen. In the section for the placement of game sessions, have you specified a aws region where it should be set to all locations?

Instead, set this to all locations or specify the custom location you created for Anywhere. This should transfer the game session queue to the custom location after matching from Flexmatch.

profile picture
已回答 6 个月前
profile picture
专家
已审核 1 个月前
  • This was the problem for me along side the Location order too, had to put the custom one above all. Thanks for getting back!

0

Hello, I am also facing a similar issue.

I'm using the SDK version 5.1.1 for a C++ build in UnrealEngine and waiting for OnStartGameSession. However, specifically when I set the target Fleet in the Flexmatch settings to 'Anywhere', the GameSession does not start, and nothing happens.

The behavior of the 'Anywhere' Fleet seems like it does not support the FlexMatch queue system. I'm not sure if this is a bug or part of the design.

For a GameliftFleet to become 'Active', it requires an excessively long time, more than 30 minutes on Windows and over 20 minutes on Linux. This makes it feel unrealistic in development. Having 'Gamelift Anywhere' function fully is most crucial for developers.

profile picture
已回答 6 个月前
0

Hey Elie,

FlexMatch should support Anywhere just fine as they're independent products. PLACING status means that the matching process has completed and GameLift is attempting to place your match using the provided GameSessionQueue (similar to calling StartGameSessionPlacement directly). This most likely means either your Anywhere fleet is not be prioritized for placement, or your Anywhere fleet doesn't have an active server process to place a game session on. Here are some things to look into that might help:

  • Try calling CreateGameSession yourself for your Anywhere fleet.
  • If CreateGameSession works fine, then it's possible your queue is not prioritizing your Anywhere fleet for placements.

If you need more help, you can create a support ticket which will allow the team to dive deeper into the specific issue you are encountering.

Regards,

Jackson

AWS
已回答 6 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则