クイック スタート: プレイヤーのインベントリに最初のアイテムを追加する
Important
エコノミー v2 が一般提供になりました。 サポートとフィードバックについては、 PlayFab フォーラムにアクセスしてください。
PlayFab Beta SDK を使用してアイテムを購入し、プレイヤーのインベントリに追加されたことをチェックすることで、プレイヤー インベントリについて理解します。 API を介してタイトルと対話するエンティティ トークンを取得した後、カタログ内のアイテムを検索し、アイテムを購入した後、プレイヤーのインベントリを取得して購入したアイテムを見つけます。
前提条件
- PlayFab 開発者アカウント
- PlayFab Beta SDK (詳細については、(Postman クイック スタートを参照してください)
- カタログ内の少なくとも 1 つのアイテム (詳細については、Economy v2 クイック スタートを参照してください)
- アイテムを購入するのに十分な仮想通貨を持つ少なくとも 1 人のプレイヤー
プレイヤーとしてサインインする
このクイック スタートの残りの API 呼び出しに必要なセキュリティ トークンを受け取るには、まずプレイヤーにサインインする必要があります。 詳細については、「プレイヤー認証」ページを参照してください。
アイテムを検索する
カタログ内のアイテムを見つけるには、 Search
を呼び出す必要があります。 呼び出し本文で:
{
"Search": "[Item Title]",
"Top": 1
}
-
Search
は、カタログ内のすべてのアイテムのタイトル、説明、キーワードに対してあいまいに検索される検索文字列です。 -
Top
は、返す結果の数を決定する整数です。この場合、必要なものは 1 つだけです
注意
検索クイックスタートで学習できるその他のフィールドがあります。
応答で、次のフィールドを取得します。
-
Items
>Id
- アイテムのカタログ ID -
Items
>PriceOptions
>Prices
>Amounts
>ItemId
- アイテムの購入に使用される仮想通貨の ID -
Items
>PriceOptions
>Prices
>Amounts
>Amount
- アイテムの購入に必要な仮想通貨の金額
注意
アイテムの価格を設定できるのはタイトル エンティティだけです
アイテムを購入する
アイテム呼び出しを購入するには、PurchaseInventoryItems
を呼び出します。 呼び出し本文で:
{
"Item": {
"Id": "{{ItemID}}",
},
"Amount": 1,
"PriceAmounts": [
{
"ItemId": "{{CurrencyId}}",
"Amount": 15
}
]
}
-
Item.Id
はアイテムの ID です (前の手順でSearch
応答からプルされました) -
Amount
は、プレイヤーが購入しているアイテムの数です -
ItemId
は、アイテムの購入に使用された仮想通貨の ID です (前の手順でSearch
応答からプルされました) -
Amount
は、アイテムを購入するために必要な仮想通貨の金額です (前の手順のSearch
応答からプルされました)
プレイヤーのインベントリ アイテムを取得する
GetInventoryItems
を介してプレイヤーの新しく購入したアイテムを表示します。 呼び出しでは、本文が空であることを確認します。本文にはエンティティを指定できますが、ヘッダー内のエンティティ トークンを介して情報が既に渡されているため、必要ありません。
応答には、プレイヤーが所有する各アイテムの ID と各アイテムの金額が含まれます。 新しく購入したアイテムはプレイヤーのインベントリに含まれます。
注意
プレイヤーが同じ StackId
を持つアイテムをインベントリに既に持っている場合は、購入後に別のアイテム インスタンスが表示されません。代わりに、Amount
フィールドの増加が表示されます。
トラブルシューティング
- 資金不足
-
PurchaseInventoryItems
を呼び出 して422: InsufficientFunds
エラーを受け取った場合、プレイヤーはアイテムを購入するのに十分な仮想通貨を持っていません。AddInventoryItems
を呼び出すか (タイトル エンティティ トークンが必要)、ゲーム マネージャーで、[タイトル]>[プレイヤー]>[プレイヤー]>Inventory (V2)
に移動することで、プレイヤーに仮想通貨を付与できます。
-
- 指定した価格でアイテムを購入することはできません
-
PurchaseInventoryItems
を呼び出して1071
エラー コードを受け取った場合、PriceAmounts
フィールドはカタログで指定された価格と一致しません。
-
次の手順
プレイヤーの最初のアイテムを購入したので、アイテムを使用できます。アイテムをストアに追加して販売し、アイテムを含むバンドルを作成して購入できます。