Skip to content

Commit

Permalink
https://docs.microsoft.com/en-us/gaming/playfab/release-notes/#231208
Browse files Browse the repository at this point in the history
  • Loading branch information
PlayFab SDK Team authored and PlayFab SDK Team committed Dec 11, 2023
2 parents 0a4d75c + ac1b924 commit f427d9e
Show file tree
Hide file tree
Showing 385 changed files with 26,661 additions and 167 deletions.
4 changes: 2 additions & 2 deletions 4.23/ExampleProject/Plugins/PlayFab/PlayFab.uplugin
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,13 @@
"FriendlyName": "PlayFab Marketplace Plugin",
"Version": 0,
"EngineVersion": "4.23.0",
"VersionName": "1.133.231124",
"VersionName": "1.134.231208",
"CreatedBy": "PlayFab and Phoenix Labs",
"CreatedByURL": "https://playfab.com/",
"DocsURL": "https://learn.microsoft.com/en-us/gaming/playfab/sdks/unreal/quickstart",
"SupportURL": "https://community.playfab.com/index.html",
"Category": "PlayFab",
"Description": "PlayFab Marketplace plugin for Unreal Engine 4.23 Current API version: 1.133.231124",
"Description": "PlayFab Marketplace plugin for Unreal Engine 4.23 Current API version: 1.134.231208",
"MarketplaceURL": "com.epicgames.launcher://ue/marketplace/content/217fdf581b784571af03d3fb6580368f",
"Modules": [
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1689,6 +1689,15 @@ enum class ERoutingType : uint8
pfenum_Internet = 1 UMETA(DisplayName = "Internet"),
};

/** ServerDataStatus */

UENUM(BlueprintType)
enum class EServerDataStatus : uint8
{
pfenum_Initialized = 0 UMETA(DisplayName = "Initialized"),
pfenum_Ignored = 1 UMETA(DisplayName = "Ignored"),
};

/** ServerType */

UENUM(BlueprintType)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -162,6 +162,19 @@ class PLAYFAB_API UPlayFabMultiplayerAPI : public UOnlineBlueprintCallProxyBase
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | Lobby ", meta = (BlueprintInternalUseOnly = "true"))
void HelperJoinLobby(FPlayFabBaseModel response, UObject* customData, bool successful);

// callbacks
DECLARE_DYNAMIC_DELEGATE_TwoParams(FDelegateOnSuccessJoinLobbyAsServer, FMultiplayerJoinLobbyAsServerResult, result, UObject*, customData);

/** Preview: Join a lobby as a server entity. This is restricted to client lobbies which are using connections. */
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | Lobby ", meta = (BlueprintInternalUseOnly = "true"))
static UPlayFabMultiplayerAPI* JoinLobbyAsServer(FMultiplayerJoinLobbyAsServerRequest request,
FDelegateOnSuccessJoinLobbyAsServer onSuccess,
FDelegateOnFailurePlayFabError onFailure, UObject* customData);

// Implements FOnPlayFabMultiplayerRequestCompleted
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | Lobby ", meta = (BlueprintInternalUseOnly = "true"))
void HelperJoinLobbyAsServer(FPlayFabBaseModel response, UObject* customData, bool successful);

// callbacks
DECLARE_DYNAMIC_DELEGATE_TwoParams(FDelegateOnSuccessLeaveLobby, FMultiplayerLobbyEmptyResult, result, UObject*, customData);

Expand All @@ -175,6 +188,19 @@ class PLAYFAB_API UPlayFabMultiplayerAPI : public UOnlineBlueprintCallProxyBase
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | Lobby ", meta = (BlueprintInternalUseOnly = "true"))
void HelperLeaveLobby(FPlayFabBaseModel response, UObject* customData, bool successful);

// callbacks
DECLARE_DYNAMIC_DELEGATE_TwoParams(FDelegateOnSuccessLeaveLobbyAsServer, FMultiplayerLobbyEmptyResult, result, UObject*, customData);

/** Preview: Request for server to leave a lobby. This is restricted to client owned lobbies which are using connections. */
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | Lobby ", meta = (BlueprintInternalUseOnly = "true"))
static UPlayFabMultiplayerAPI* LeaveLobbyAsServer(FMultiplayerLeaveLobbyAsServerRequest request,
FDelegateOnSuccessLeaveLobbyAsServer onSuccess,
FDelegateOnFailurePlayFabError onFailure, UObject* customData);

// Implements FOnPlayFabMultiplayerRequestCompleted
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | Lobby ", meta = (BlueprintInternalUseOnly = "true"))
void HelperLeaveLobbyAsServer(FPlayFabBaseModel response, UObject* customData, bool successful);

// callbacks
DECLARE_DYNAMIC_DELEGATE_TwoParams(FDelegateOnSuccessRemoveMember, FMultiplayerLobbyEmptyResult, result, UObject*, customData);

Expand Down Expand Up @@ -227,6 +253,23 @@ class PLAYFAB_API UPlayFabMultiplayerAPI : public UOnlineBlueprintCallProxyBase
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | Lobby ", meta = (BlueprintInternalUseOnly = "true"))
void HelperUpdateLobby(FPlayFabBaseModel response, UObject* customData, bool successful);

// callbacks
DECLARE_DYNAMIC_DELEGATE_TwoParams(FDelegateOnSuccessUpdateLobbyAsServer, FMultiplayerLobbyEmptyResult, result, UObject*, customData);

/**
* Preview: Update fields related to a joined server in the lobby the server is in. Servers can keep a lobby from expiring
* by being the one to "update" the lobby in some way. Servers have no impact on last member leave/last member disconnect
* behavior.
*/
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | Lobby ", meta = (BlueprintInternalUseOnly = "true"))
static UPlayFabMultiplayerAPI* UpdateLobbyAsServer(FMultiplayerUpdateLobbyAsServerRequest request,
FDelegateOnSuccessUpdateLobbyAsServer onSuccess,
FDelegateOnFailurePlayFabError onFailure, UObject* customData);

// Implements FOnPlayFabMultiplayerRequestCompleted
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | Lobby ", meta = (BlueprintInternalUseOnly = "true"))
void HelperUpdateLobbyAsServer(FPlayFabBaseModel response, UObject* customData, bool successful);


///////////////////////////////////////////////////////
// Matchmaking
Expand Down Expand Up @@ -1100,11 +1143,14 @@ class PLAYFAB_API UPlayFabMultiplayerAPI : public UOnlineBlueprintCallProxyBase
FDelegateOnSuccessInviteToLobby OnSuccessInviteToLobby;
FDelegateOnSuccessJoinArrangedLobby OnSuccessJoinArrangedLobby;
FDelegateOnSuccessJoinLobby OnSuccessJoinLobby;
FDelegateOnSuccessJoinLobbyAsServer OnSuccessJoinLobbyAsServer;
FDelegateOnSuccessLeaveLobby OnSuccessLeaveLobby;
FDelegateOnSuccessLeaveLobbyAsServer OnSuccessLeaveLobbyAsServer;
FDelegateOnSuccessRemoveMember OnSuccessRemoveMember;
FDelegateOnSuccessSubscribeToLobbyResource OnSuccessSubscribeToLobbyResource;
FDelegateOnSuccessUnsubscribeFromLobbyResource OnSuccessUnsubscribeFromLobbyResource;
FDelegateOnSuccessUpdateLobby OnSuccessUpdateLobby;
FDelegateOnSuccessUpdateLobbyAsServer OnSuccessUpdateLobbyAsServer;
FDelegateOnSuccessCancelAllMatchmakingTicketsForPlayer OnSuccessCancelAllMatchmakingTicketsForPlayer;
FDelegateOnSuccessCancelAllServerBackfillTicketsForPlayer OnSuccessCancelAllServerBackfillTicketsForPlayer;
FDelegateOnSuccessCancelMatchmakingTicket OnSuccessCancelMatchmakingTicket;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,10 @@ class PLAYFAB_API UPlayFabMultiplayerModelDecoder : public UBlueprintFunctionLib
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | Lobby Models")
static FMultiplayerJoinLobbyResult decodeJoinLobbyResultResponse(UPlayFabJsonObject* response);

/** Decode the JoinLobbyAsServerResult response object*/
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | Lobby Models")
static FMultiplayerJoinLobbyAsServerResult decodeJoinLobbyAsServerResultResponse(UPlayFabJsonObject* response);

/** Decode the SubscribeToLobbyResourceResult response object*/
UFUNCTION(BlueprintCallable, Category = "PlayFab | Multiplayer | Lobby Models")
static FMultiplayerSubscribeToLobbyResourceResult decodeSubscribeToLobbyResourceResultResponse(UPlayFabJsonObject* response);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -371,6 +371,57 @@ struct PLAYFAB_API FMultiplayerJoinLobbyRequest : public FPlayFabRequestCommon
UPlayFabJsonObject* MemberEntity = nullptr;
};

/**
* Preview: Request to join a lobby as a server. Only callable by a game_server entity and this is restricted to client
* owned lobbies which are using connections.
*/
USTRUCT(BlueprintType)
struct PLAYFAB_API FMultiplayerJoinLobbyAsServerRequest : public FPlayFabRequestCommon
{
GENERATED_USTRUCT_BODY()
public:
/**
* A field which indicates which lobby the game_server will be joining. This field is opaque to everyone except the Lobby
* service.
*/
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | Lobby Models")
FString ConnectionString;
/** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | Lobby Models")
UPlayFabJsonObject* CustomTags = nullptr;
/**
* The private key-value pairs which are visible to all entities in the lobby but can only be modified by the joined
* server.At most 30 key - value pairs may be stored here, keys are limited to 30 characters and values to 1000.The total
* size of all serverData values may not exceed 4096 bytes.
*/
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | Lobby Models")
UPlayFabJsonObject* ServerData = nullptr;
/**
* The game_server entity which is joining the Lobby. If a different game_server entity has already joined the request will
* fail unless the joined entity is disconnected, in which case the incoming game_server entity will replace the
* disconnected entity.
*/
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | Lobby Models")
UPlayFabJsonObject* ServerEntity = nullptr;
};

USTRUCT(BlueprintType)
struct PLAYFAB_API FMultiplayerJoinLobbyAsServerResult : public FPlayFabResultCommon
{
GENERATED_USTRUCT_BODY()
public:
/** Successfully joined lobby's id. */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | Lobby Models")
FString LobbyId;
/**
* A setting that describes the state of the ServerData after JoinLobbyAsServer call is completed. It is "Initialized", the
* first time a server joins the lobby. It is "Ignored" in any subsequent JoinLobbyAsServer calls after it has been
* initialized. Any new server taking over should call UpdateLobbyAsServer to update ServerData fields.
*/
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | Lobby Models")
EServerDataStatus ServerDataStatus = StaticCast<EServerDataStatus>(0);
};

/** Request to leave a lobby. Only a client can leave a lobby. */
USTRUCT(BlueprintType)
struct PLAYFAB_API FMultiplayerLeaveLobbyRequest : public FPlayFabRequestCommon
Expand All @@ -388,6 +439,29 @@ struct PLAYFAB_API FMultiplayerLeaveLobbyRequest : public FPlayFabRequestCommon
UPlayFabJsonObject* MemberEntity = nullptr;
};

/**
* Preview: Request for server to leave a lobby. Only a game_server entity can leave and this is restricted to client owned
* lobbies which are using connections.
*/
USTRUCT(BlueprintType)
struct PLAYFAB_API FMultiplayerLeaveLobbyAsServerRequest : public FPlayFabRequestCommon
{
GENERATED_USTRUCT_BODY()
public:
/** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | Lobby Models")
UPlayFabJsonObject* CustomTags = nullptr;
/** The id of the lobby. */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | Lobby Models")
FString LobbyId;
/**
* The game_server entity leaving the lobby. If the game_server was subscribed to notifications, it will be unsubscribed.
* If a the given game_server entity is not in the lobby, it will fail.
*/
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | Lobby Models")
UPlayFabJsonObject* ServerEntity = nullptr;
};

/**
* Request to remove a member from a lobby. Owners may remove other members from a lobby. Members cannot remove themselves
* (use LeaveLobby instead).
Expand Down Expand Up @@ -569,6 +643,45 @@ struct PLAYFAB_API FMultiplayerUpdateLobbyRequest : public FPlayFabRequestCommon
FString SearchDataToDelete;
};

/**
* Preview: Request to update the serverData and serverEntity in case of migration. Only a game_server entity can update
* this information and this is restricted to client owned lobbies which are using connections.
*/
USTRUCT(BlueprintType)
struct PLAYFAB_API FMultiplayerUpdateLobbyAsServerRequest : public FPlayFabRequestCommon
{
GENERATED_USTRUCT_BODY()
public:
/** The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | Lobby Models")
UPlayFabJsonObject* CustomTags = nullptr;
/** The id of the lobby. */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | Lobby Models")
FString LobbyId;
/**
* The lobby server. Optional. Set a different server as the joined server of the lobby (there can only be 1 joined
* server). When changing the server the previous server will automatically be unsubscribed.
*/
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | Lobby Models")
UPlayFabJsonObject* Server = nullptr;
/**
* The private key-value pairs which are visible to all entities in the lobby and modifiable by the joined server.
* Optional. Sets or updates key-value pairs on the lobby. Only the current lobby lobby server can set serverData. Keys may
* be an arbitrary string of at most 30 characters. The total size of all serverData values may not exceed 4096 bytes.
* Values are not individually limited. There can be up to 30 key-value pairs stored here. Keys are case sensitive.
*/
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | Lobby Models")
UPlayFabJsonObject* ServerData = nullptr;
/**
* The keys to delete from the lobby serverData. Optional. Optional. Deletes key-value pairs on the lobby. Only the current
* joined lobby server can delete serverData. All the specified keys will be removed from the serverData. Keys that do not
* exist in the lobby are a no-op. If the key to delete exists in the serverData (same request) it will result in a bad
* request.
*/
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "PlayFab | Multiplayer | Lobby Models")
FString ServerDataToDelete;
};


///////////////////////////////////////////////////////
// Matchmaking
Expand Down
Loading

0 comments on commit f427d9e

Please sign in to comment.