要件
- PlayFab 開発者アカウント。
- プレイヤーは、同じ資格情報で 両方の タイトルにサインインする必要があります。1 つのアプローチは、Login Basics and Best Practices チュートリアルで説明されている Recoverable Credentials を使用することです。匿名アカウントに Recoverable ログインを追加する方法については、Account Linking チュートリアルを参照してください。
- この例では CloudScript の実務的な知識が必要です:
- この例では、プレイヤーのチートを避けるための基本的なデータセキュリティを示します。同様に、タイトルで使用している場合は、カスタムゲームサーバー上でサーバー API を使用することもできます。
- PlayFab を通じてトリガーされる報酬には、適切な PlayFab 機能の使用が必要です。PlayFab の報酬は Virtual Currency、Inventory Items、Custom Player Data、Statistics などの形式で提供できます。PlayFab システムの外部で報酬を配布するのは高度なトピックであり、このチュートリアルでは扱いません。
各ゲームがログインをパブリッシャーデータに報告する
各ゲームは、ログインが発生したことを報告する必要があります。簡略化のために、この例では、各タイトルにつき、他にプレイされたパブリッシャータイトルごとに 1 つ の報酬のみを提供します。 カウンターやタイムスタンプ、その他の仕組みを用いてこのアイデアを拡張し、段階的または連続的な報酬を提供することも可能です。 以下の CloudScript は、スタジオの すべての ゲームに存在する必要があります。- server.GetUserPublisherInternalData
- server.UpdateUserPublisherInternalData。
各ゲームが引き換え可能な報酬を確認する
どのタイトルがプレイされたかを追跡した後は、報酬を追跡して付与する必要があります。以下の CloudScript 関数は、他のタイトルをプレイしたかどうかに基づいて、利用可能な報酬を確認し付与します。この例では、server.GetUserPublisherInternalData (複数キーのリクエスト)、server.UpdateUserPublisherInternalData、および server.AddUserVirtualCurrency の使用を示しています。
- PlayFab からデータを取得し、ローカルデータ構造に解析する (GetUserPublisherInternalData の呼び出し)。
- データを調べ、まだ報酬が付与されていないタイトル ID を検索する。
- 報酬を付与する (AddUserVirtualCurrency の呼び出し)。
- 引き換え済みの報酬を更新する (UpdateUserPublisherInternalData の呼び出し)。
- 付与した金額を (CloudScript の return 文を介して) クライアントに提供する。
