question

e.timofeev@flexilestudio.com avatar image
e.timofeev@flexilestudio.com asked

Matchmaking for Externally Hosted Games with many groups

Hello.

We analyze our approach to matchmaking and Playfab. And we are trying to understand what is the best solution in a situation when:

- Using Externally Hosted Game Servers with PlayFab

- Players are divided into many groups. For example, by level and map.

Now we do this:

1) The server is registered in playfab without parameters. as Empty.

2a) When any player enters, the server changes the parameters used in the player filters.

2b) Player first search not Empty games, if fail he search Empty games.

Problem: when several players (from different groups) enter one Empty game. The server needs to kick one of them. And we are afraid that with a large number of players this problem will become critical.

How can this problem be solved?

- It would be good to set "Max player count" = 1 first. And after first player connect set = N. But we can't find API for change "Max player count".

- Maybe worth using two "Game Modes" for one server. One for empty games. and after user connect close him. and send info about second mode to user.

Perhaps you would recommend using a different approach?

10 |1200

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

1 Answer

·
brendan avatar image
brendan answered

With that design requirement, you would need to write your own custom matchmaker to avoid the problem you've described. Basically, the existing PlayFab matchmaker (we'll be adding a new one soon, but even then, you'll need to specify things like game mode) gives you a slot to a running server based upon your search parameters. If there's no game mode, you're guaranteeing you'll throw people onto servers together who are looking for different modes.

The issue is that you're starting instances and having all players search for an empty instance with no game mode specified, and only after they join the server are you setting that game mode. So if you have a lot of players, it's not possible to avoid the situation where multiple people find the same server, one of them gets to pick the mode (since they were the first to arrive), and then those that want to play in other game modes have to leave to look for a different server. With a high player count, players looking for less-popular game modes are likely going to bounce through multiple servers before they get to play.

What you'll need to do is either a) have instances running for each game mode, with the number of each being based on your expectation of how many people are going to want to jump into each mode at any time, and increase/decrease the number of those instances as needed, or b) use our server hosting, so that we spin up new instances of the correct mode on an as-needed basis.

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.