question

Alan Gaspar avatar image
Alan Gaspar asked

Players can't join a match when they where part of the initial players

When a player that was part of the initial players of a matchmaking leaves and try to join a match on the matchmaking they can't be paired on that match.

Is this how it is intended? Or am I doing something wrong?

I tried matching a player that joined using a backfill ticket and he can leave and enter again without problem.

Matchmakingmultiplayer
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

·
Gosen Gao avatar image
Gosen Gao answered

Do you mean that a player joins a matchmaking ticket as the initial players, when he leaves the ticket and tries to join the match himself but fails? If so, may I know the error message? Since there is no API for players to leave a ticket, you can only wait for the ticket to expire, or manually cancel the ticket. If you try to create a new ticket before the previous ticket has expired or been cancelled, you will get an error. Because one player can only have one ticket in a specific queue.

Or you mean that the player has already been matched and joined the server as the initial players, after disconnecting from the server he tried to start another match but failed? If so, players who want to reconnect to the previous server can obtain the server's information through the previous MatchId to reconnect directly. Creating a new match ticket will be matched against other players who want to match.

>> I tried matching a player that joined using a backfill ticket and he can leave and enter again without problem.

It seems like you are trying to use backfill tickets to reconnect a previous disconnected player, that’s not what the backfill ticket are designed for. If your game has a large number of players being matchmaking, this backfill ticket may match any player that meets the requirements. As I mentioned above, you should use the server details obtained from the previous match to reconnect to the server.

If I misunderstood, would you please explain more about your scenario?

4 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.

Alan Gaspar avatar image Alan Gaspar commented ·

Let me explain a little better:

If we have three players A,B and C, the matchmaking is for 2 to 4 players, and the server is constantly looking for more players if the amount of players is less than 4.

If A and B are looking for a match they are matched and a game is created, then a backfill ticket is filled to look for more players, in this moment C can create a matchmaking ticket and get matched to players A and B in the match, the player C can leave the match and create a new matchmaking ticket and he will be matched again without problem with A and B, but if A or B leaves the match and create a matchmaking ticket they always get "LookingForMatch" response even when there's a backfill ticket open for them to join

0 Likes 0 ·
Gosen Gao avatar image Gosen Gao Alan Gaspar commented ·

I have done a test, the ticket created by player A can be matched with the server backfill ticket. Please make sure the Player A is not in the "Members" parameter when you create the server backfill ticket, since Player A has already left.

0 Likes 0 ·
Alan Gaspar avatar image Alan Gaspar Gosen Gao commented ·

I found what was the error, I was obtaining the list of players trough PlayFabMultiplayerAPI.GetMatch and obtained the members, I thought the members obtained trough there was the most updated information about the players but instead there was only the original members of the match.

0 Likes 0 ·
Show more comments

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.

Error rendering WebPanel (widgets/consolidation-widget.ftl): org.hibernate.hql.internal.ast.QuerySyntaxException: AvailableConsolidation is not mapped [from AvailableConsolidation up where up.node = :node]