question

MoonHeonYoung avatar image
MoonHeonYoung asked

Matchmaking feature question!

I want the matchmaking function.

Existing play fab matchmaking is a match system where everyone who is matched must issue a ticket.

However,

I want something a little different.

scenario:

1. Only one user finds another user that meets certain criteria

(The 'another' user is offline state , that is, only one user should issue ticket)

2. Create the Ai character by receiving the matched user's information.

The player proceeds ai pvp with the ai character generated by match.

Can playfab implement the above two requirements ??

I think all the information of the matched user (stat information, skill information, etc.) will be needed.

Is this information I can get?

thanks!

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

·
Citrus Yan avatar image
Citrus Yan answered

PlayFab Matchmaking is designed for matching online players who want to play together, which means that all the players must actively create/join a ticket in order to find a suitable match. Therefore, you may need to implement your own matching feature for your scenario.

For getting the user info part, you can use certain server APIs (depending on where such info are stored) such as Server/GetPlayerStatistics, Server/GetUserData, etc. on the server-side and return it back to the client.

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

MoonHeonYoung avatar image MoonHeonYoung commented ·

This is the answer I wanted! Thank you!!

1. Do I need to use serverAPI to get information of other users ??

Can't I get it through ClientApi ??

(I.e., by entering the playfabID of another user through the clientAPI)

2. As a result of your answer, I guess I should probably call executeCLoudScript inside the client.

And it seems that various verification logics must be implemented within the cloud script for myself.

Is that right??

0 Likes 0 ·
MoonHeonYoung avatar image MoonHeonYoung MoonHeonYoung commented ·

3. And within CloudScript, how do i search for users with specific abilities? (I.e. how to get the playfabId of a user whose power is between 1 and 10)

0 Likes 0 ·
Citrus Yan avatar image Citrus Yan MoonHeonYoung commented ·

1. Yes, you can also use the Client/GetPlayerCombinedInfo API to retrieve other user's data.

2. Yes, that's right.

3. Searching for users entails iterating across a large amount of players, which is not supported or even possible because it mean each player could be attempting to make up to thousands or even millions of API calls – depending on your player base. Therefore, you may self-manage a look-up table of all the players along with their abilities for the search.

0 Likes 0 ·
MoonHeonYoung avatar image MoonHeonYoung Citrus Yan commented ·

Um ... Then I can't think of anything other than searching for a specific section with leaderboard data at this time.

I will post again if I have any other questions regarding this search.

Thank you for answer.

There is one more question.

I just learned about the Client / GetPlayerCombinedInfo API.

This api looks like a master key.

It looks like you have compressed a number of distinct api calls such as getTitleData, getUserReadOnlyData and getProfileData..etc into one place.

Is there a difference between getting all player information by calling GetPlayerCombinedInfo api and data obtained by calling a separate api above?

The most efficient thing seems to be getting all the information through GetPlayerCombinedInfo and processing it on the client based on that information. I think.

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.