question

Jørgen Havsberg Seland avatar image
Jørgen Havsberg Seland asked

Matchmaking 2.0 Queue always returns matches with MIN MATCH SIZE, never higher

We have a queue setup with no teams, no rules, just match size set to MIN: 2, MAX: 4.

When testing this with four players who enter matchmaking almost simultaneously, we always end up with two matches of two players, instead of the expected match size of 4.

Are we doing anything wrong?

Is there a way we can prefer larger matches to smaller ones?

10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Andy avatar image
Andy answered

This likely has to do with the rate at which you're sending in ticket. Even one or two seconds can make a difference, as the system is designed to work at production game scale.

If you'd like to favor larger matches, you can create a total value rule. Each ticket also submits a number of players as a value, and the total value rule can operate on this value, summing the number of players. The expansion for the rule can be used to modify the minimum required over time in a very custom manner.

In general, with a higher incoming ticket rate, though, such a rule wouldn't be needed.

5 comments
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Jørgen Havsberg Seland avatar image Jørgen Havsberg Seland commented ·

A Match Total Rule requires "Attribute source" and "Attribute path".

What is the correct value for these fields to pick up the number of players value from the ticket?

The only sources of documentation for matchmaking 2.0 rules appear to be the rule form itself, and the example request for SetMatchmakingQueue (https://api.playfab.com/documentation/multiplayer/method/SetMatchmakingQueue). The example attribute paths are on different forms:

The form: $.playerSkill.mean

SetMatchmakingQueue: ExampleAttributeDifference

What is the purpose of the dollar sign in the first example?

Neither location have examples of paths where the attribute source is "Player Entity". How does this work, compared to attribute source "User"?

Is there a sample or other documentation that describes how these features work?

0 Likes 0 ·
Andy avatar image Andy ♦♦ Jørgen Havsberg Seland commented ·

In your specific case, I think you'd want to use "user" for the source and then something simple like "playerCount" for the path. Then you'd just make sure to include a "playerCount" entry in the Creator Attributes of your CreateMatchmakingTicket call.

I'm discussing the possibility of additional examples with the team.

1 Like 1 ·
Jørgen Havsberg Seland avatar image Jørgen Havsberg Seland Andy ♦♦ commented ·

Thanks.
Here's my setup, as an example for anyone else who might want to do the same (Request.Creator.Attributes->EscapedDataObject = "{ \"ticketPlayerCount\": 1 }"):

1 Like 1 ·
Show more comments
Show more comments
Aleksander Fedosov avatar image
Aleksander Fedosov answered

Might be useful link if you stuck with the same problem.

10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.