UnityでPlayfabを使ったランキングの実装

PlayFabの登録

PlayFabアカウントが必要なので、登録をします。

PlayFab

正しく登録できると管理画面に進めます。
スタジオとタイトルがあり、スタジオというグループの中に各タイトルが所属する構成になってます。
サンプルのためスタジオ名はblankとしてますが、名称はいつでも変更できます。

スタジオのメニューから新しいタイトルを追加できます。
blankスタジオで追加したので、blankに所属するタイトルになります。

名前はランキングゲームとしました。
その他は何も設定しなくても作成できるので、そのままタイトル作成します。

成功すると、スタジオにタイトルが追加されて表示されます。
これでタイトルにランキングを作成できるようになりました。

ランキングの作成

ランキングという項目があるので、そこから新しいランキングを作成します。

統計情報名というのはランキングの名称だと思えばいいです。
わかりやすくハイスコアという名称にしました。

リセット頻度を設定すると、設定した間隔でランキングがリセットされます。
手動ならば管理画面でリセットしない限りリセットされません。

集計方法は、ユーザーがスコア送信した時の判定方法です。

最新だと既に登録されているスコアの値は無視して、送信されたスコアで更新されます。
例えば、1000点で登録されているユーザーが100点で送信すると登録スコアは1000点から100点になりますので、順位が下がる可能性があります。
最小だと既に登録されているスコアよりも小さい場合のみ更新します。
最大だと既に登録されているスコアよりも大きい場合のみ更新します。
合計だとスコアが加算されていきます。
今回はハイスコアなので最大に設定します。

タイトルの設定を変更します。
設定メニューから全般で「一意でないプレイヤー表示名を許可する」にチェックを入れます。

続いてAPI機能タブを押してAPI機能に関する設定をします。
「クライアントにプレイヤー統計情報のポストを許可する」にチェックを入れます。

以上でPlayFab側の設定が完了しました。

UnityにPlayFabPackageをインポート

UnityにPlayFabEditorExtensionsをインポートします。

Unity 用 PlayFab SDK のインストール - PlayFab
このガイドは、PlayFab Unity 3D SDK をインストールし、プロジェクトを構成するのに役立ちます。

Packageのインポートが完了すると、PlayFabEdExというウィンドウが自動で開きます。
LOGINを押します。

PlayFabに登録したメアドとパスワードでログインします。

ログイン後、PlayFabSDKのインストールがチェックされます。
最初はインストールされていないので、「Install PlayFab SDK」を押してインストールします。

インストール完了すると、PlayFabSDKがAsset直下に生成されます。
そのままタイトル設定できるので「SET MY TITLE」を押します。

STUDIOとTITLE IDはPlayFab側で設定したものを選択できます。
PlayFab管理画面でスタジオやタイトルを増やすと、ここに表示される仕組みです。
該当するスタジオとタイトルを選びましょう。

以上でインポートしてPlayFabの準備が完了です。

ゲーム内の実装

ログインとランキングの処理に関して、こちらのブログを参考にして作成しました。

初回はIDが無いため、自動でIDが作成されてPlayFab側に送信されますので
ユーザーが何かを設定する手間はありません。
生成したIDは端末にローカル保存しますので、アンインストールすればデータ削除となり
再インストール時には再度IDが生成されますが、削除されたIDとは別IDになります。

スコア、ユーザー名の送信など基本的な処理を参考に
開発するゲームに合わせて処理を呼び出すタイミングを考えて実装していけばいいだけです。

ログイン、ランキングの機能自体は、PlayFabでわりと簡単に動作するようにはなるのですが
ランキングを表示したり、ユーザー名変更するなどのUIや、ランキング更新演出などは自分でデザインして作成する必要があります。
必要なデータはPlayFabから取得できますので、どこまでやるかはゲーム次第です。
以上です。

コメント

タイトルとURLをコピーしました