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 個月前檢視次數 146 次
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

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。

回答問題指南