エンティティ オブジェクトを使用してプレイヤー データを格納する

エンティティ オブジェクトを使用すると、エンティティにアタッチされた小さな JSON シリアル化可能オブジェクトの読み取りと書き込みが可能になります。 すべてのエンティティの型は、同じ GetObjects メソッドと SetObjects メソッドをサポートしています。

次に示す例では、title_player_account での Object の設定と読み取りの方法を示します。

var data = new Dictionary<string, object>()
{
    {"Health", 100},
    {"Mana", 10000}
};
var dataList = new List<SetObject>()
{
    new SetObject()
    {
        ObjectName = "PlayerData",
        DataObject = data
    },
    // A free-tier customer may store up to 3 objects on each entity
};
PlayFabDataAPI.SetObjects(new SetObjectsRequest()
{
    Entity = new EntityKey {Id = entityId, Type = entityType}, // Saved from GetEntityToken, or a specified key created from a titlePlayerId, CharacterId, etc
    Objects = dataList,
}, (setResult) => {
    Debug.Log(setResult.ProfileVersion);
}, OnPlayFabError);
var getRequest = new GetObjectsRequest {Entity = new EntityKey {Id = entityId, Type = entityType}};
PlayFabDataAPI.GetObjects(getRequest,
    result => { var objs = result.Objects; },
    OnPlayFabError
);

ゲーム マネージャーとエンティティ

ゲーム マネージャーを使用して、プレイヤーのオブジェクトとファイルを操作できます。 プレイヤーの概要を更新し、タイトル プレイヤーとマスタ プレイヤーのアカウント情報の両方を表示しました。

ゲーム マネージャー - エンティティ - プレイヤーの概要

さらに、ファイルとオブジェクトは、[プレイヤー] タブに独自のセクションができました。

ゲーム マネージャー - エンティティ - プレイヤーのファイルとオブジェクト

エンティティ オブジェクトとファイルは、複数の PlayFab 機能で使用され、それぞれが異なるエンティティの種類を対象としています。

機能 エンティティの種類 ユース ケース
ゲーム サーバーの構成 game_server サーバー側の設定とサーバー主導データ
タイトル データ namespace, title すべてのプレイヤー間で共有されるグローバル キー/値構成
プレイヤー データ title_player_account, master_player_account, character プレイヤーごとのプロファイル、進行状況、基本設定のストレージ
グループ group プレイヤー グループまたはギルド内で共有されるデータ