question

Kaan Öztüzün avatar image
Kaan Öztüzün asked

Unreal Engine 5 - Get Title Entity / Backfill Ticket

Hello!

I've been working on GSDK and Matchmaking on Unreal Engine 5. I am able to create matchmaking perfectly, but I want to create backfill ticket system in my project.

However, I realized that I have to call "Create Server Backfill Ticket" on server. I need a title entity before calling this node, according to the community and docs, so all of my Matchmaking logic is located in the Game Instance class.

So I initiated the GSDK and Playfab Settings, delegates(Register GSDK Maintenance, Server Active and Ready for Players) etc...

When there is any request I start to construct JSON objects and then I use "Create Matchmaking Ticket".

So this is works perfectly. The problem starts in here; when matchmaking status turns to "matched" I travel my players into a Lobby Map. I am using a different game mode for this lobby map. In the Game Mode I always count the players. If this match is not equal to 16 players I trigger the Backfill ticket. And this is how I do (In game instance - triggered from game mode):

5425-playfab-backfillticket.jpg

Unfortunately I am getting this error "The Entity of caller must be one of the types; game_server, title"

So, Game Mode runs on the server side, I tried to create this blueprint in game mode and didn't work. It is the same result when I do this on game instance.


And this is how I get the Entity Token for server on Init.:

5404-playfab-gsdkinit.jpg

I'll be glad if someone can explain to me how works this Entity and backfill tickets.

Thank you!

MatchmakingunrealTitle Data
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.

Neils Shi avatar image Neils Shi commented ·

Since everything works fine when you call the GetMatch API (which also requires an entity token), you can use the API ValidateEntityToken on PostMan to see what type the entitytoken is (I guess it's not a title type and creating a backfill ticket needs the title entity token). After successfully getting the entity token, the PlayFab SDK will internally keep the entity token for following API calls, so you may perform operations such as login during this time, which will cause the Entity Token to change.

1 Like 1 ·
Kaan Öztüzün avatar image Kaan Öztüzün Neils Shi commented ·

Hello! Thank you for your help. I Installed the PostMan and try to call ValidateEntityToken API. Unfortunately, it returns with 401 - Not Authenticated.

When I call GetEntityToken with disabled X-Authorization in Header it gives me the Title entity Token.

So when I set the Secret Developer Key on the Unreal - Server side, I call GetEntityToken but no luck...

0 Likes 0 ·
Neils Shi avatar image Neils Shi Kaan Öztüzün commented ·

The API ValidateEntityToken needs a x-Entity Token in Headers. You should first call GetEntityToken to get title Entity Token, and set it to the X-Entity Token, then you can use ValidateEntityToken to see what type of entity in GetMatch. For more detail, you can see Quickstart: PlayFab REST API collection for Postman.

5431-download.png

This is my blueprint for testing, and you can refer to it.

5432-thumbnail-screenshot-2023-01-27-141015.png

1 Like 1 ·
Show more comments

0 Answers

·

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.