Gamelift ruleset maxPlayers bug

0

I'm experiencing a bug regarding rulesets. When I try the first ruleset and make 2 clients search for a match, it never finds a match. But with the second ruleset, it works. It seems that using 48 players will cause the matchmaking to bug, and it was working previously. Not working:

 {
     "name": "TestGameLiftRule",
     "ruleLanguageVersion": "1.0",
     "playerAttributes": [],
     "algorithm": {
         "backfillPriority": "high",
         "strategy": "exhaustiveSearch"
     },
     "teams": [{
         "name": "NoTeam",
         "maxPlayers": 48,
         "minPlayers": 2
     }],
     "rules": [],
     "expansions": []
 }

Working:

 {
     "name": "TestGameLiftRule",
     "ruleLanguageVersion": "1.0",
     "playerAttributes": [],
     "algorithm": {
         "backfillPriority": "high",
         "strategy": "exhaustiveSearch"
     },
     "teams": [{
         "name": "NoTeam",
         "maxPlayers": 20,
         "minPlayers": 2
     }],
     "rules": [],
     "expansions": []
 }
質問済み 4ヶ月前145ビュー
2回答
0
承認された回答

Hey natejona,

Amazon GameLift's matchmaker has a distinction between small and large match rulesets with a cutoff of 40/41 maximum players in a match. I'd recommend checking out the following documentation to see if that helps unblock your development:

AWS
回答済み 4ヶ月前
  • Yes this is correct

    Here is an example of working ruleset for 41 max players: { "name": "TestGameLiftRule", "ruleLanguageVersion": "1.0", "playerAttributes": [{ "name": "latency", "type": "number" }], "algorithm": { "strategy": "balanced", "balancedAttribute": "latency" }, "teams": [{ "name": "NoTeam", "maxPlayers": 41, "minPlayers": 1 }], "rules": [], "expansions": [] }

    Would like to mention that some examples in the documentation don't pass the json validation

-2

This issue with maxPlayers exceeding a certain threshold causing matchmaking to fail is likely due to a limit imposed by GameLift.

Some things to check:

  • The maxPlayers value cannot exceed the max players supported by the GameLift queue it is matching into. Check your queue configuration and make sure maxPlayerSessionCount is high enough.

  • There may also be an account-level limit on the max players per match, often around 50. Check your GameLift service quotas and request an increase if needed.

  • Try gradually incrementing the maxPlayers value to see at what point it starts failing. This can help narrow down where the limit is.

  • Use exponential backoff and retries when matchmaking fails - it could be a transient issue.

  • Double check the fleet is configured and sized appropriately to support the requested maxPlayers value.

So in summary, GameLift imposes some limits on maximum players per match to ensure efficient match placement. Work with their service quotas and queue configuration to determine the max that will work for your game. Start with a lower value like 20, then scale up gradually.

AWS
Saad
回答済み 4ヶ月前
  • Regarding your first point:

    • The maxPlayers value cannot exceed the max players supported by the GameLift queue it is matching into. Check your queue configuration and make sure maxPlayerSessionCount is high enough.

    There is no such thing as maxPlayerSessionCount when I create a new Queue

    I also tried various fleet compute size, even though I was doubtful, indeed it's not fixing the issue

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン

関連するコンテンツ