モバイルゲームのプレーヤー評価の作成(Unity + Google Play Game Services)

モバイルゲームのプレーヤー評価(リーダーボード、スコア)は、興味深いものであり、必要な場合もあります。 この記事では、Unityで作成されたアプリケーションにプレーヤーのレーティングを追加する方法について説明します。 RuNetでは、これに関する情報はそれほど多くありません。 さらに、レーティングはクロスプラットフォーム(Android + iOS)になりますが、Windows Phoneのサポートはありません。

画像

セクション1.開発者のコ​​ンソール

1.アプリケーションは既にGoogle Playで公開されている、つまり パッケージ名があります(例:com.AnonymousInteractives.NakedSnake)

2. [開発者コンソール](開発者コンソール)に移動し、左側で[ゲームサービス](ゲームサービス)を開きます

画像

3. [新しいゲームの追加]をクリックして、ゲームの名前とカテゴリを指定します。 混乱が生じる可能性があります。 ここでいう「ゲーム」とは、ゲームサービスを意味します。 名前は、アプリケーションの実際の名前と一致しない場合があります。 ゲームサービスには、88171208539などの一意の識別子があります
画像

4. [ゲーム情報]に入力-説明と写真

5. [関連アプリケーション]セクションでは、最大20個のアプリケーションをゲームサービスに関連付けることができます。 Android、iOS、およびWebアプリケーションにすることができます。 Androidを選択します。 次に、ポイント1からアプリケーションパッケージの名前を入力するだけです。

画像

6. [アチーブメント]セクションで、アチーブメントを追加する必要があります。 テストの場合はアイテムをスキップできますが、公開の場合は少なくとも5つの実績を追加する必要があります。 ゲームに実績がない場合は、偽の実績1、2、3、4、5を作成し、それらを忘れます。

7.最後に、[player rating]セクションに進みます。 必要な評価を作成します。ここではすべてが明確です。 その結果、CgkI276nu8gCEAIQAAなどの識別子を使用して評価を取得します。 その後、Unityでプラグインを構成し、サービスにアクセスするために、それとゲームサービス識別子が必要になります

画像

8. [テスト]セクションで、テスト用のアカウントを追加できます。 また、ゲーム自体をテストするときのように、Google +グループではなく、メールアカウントを指定できます

9. [publication]セクションでは、ゲームを公開できますが、これはテストには必要ありません。 以上で、デベロッパーコンソールは不要になります

セクション2. Unity

1.プロジェクトページplay-games-plugin-for-unityに移動して、プロジェクトをダウンロードします(リンク「ZIPをダウンロード」)。 アーカイブには、GooglePlayGamesPlugin-0.9.02.unitypackageファイルがあります

2. Unityでアプリケーションプロジェクトを開きます

3. GooglePlayGamesPlugin-0.9.02.unitypackageをダブルクリックし、パッケージをプロジェクトにインポートします

画像

4. [ファイル/プレイゲーム-Androidセットアップ]メニューに移動し、サービスの識別子を入力します(前のセクションの手順3を参照)。 以上で、セットアップは完了です!

画像

5.これで、数行のコードを追加する必要があり、プレーヤーの評価があります。 評価GUIはAndroid SDKに含まれているため、時間を費やす必要はありません。 同時に、UIのカスタマイズは提供されません(開発者のコ​​ンソールの設定-評価アイコンとユニットを除く)。 プラグインページには十分な背景情報があります(ポイント1を参照)。コメントなしで、プレイヤーのレーティングにエントリを入力するためのコードと、その後の表示を提供します。 プロセスは非同期であり、各アクションにコールバックが来ることに注意してください。 このため、一度に複数の評価でエントリを作成することは困難です。 オプションとして-コールバックからのチェーンの実装。 または、ReportScoreを並行して呼び出し、すべてのコールバックを処理して、ShowAchievementsUIを呼び出して最後のコールバックのみが評価を開くようにすることもできます。

PlayGamesPlatform.DebugLogEnabled = true; PlayGamesPlatform.Activate(); Social.localUser.Authenticate(authenticated => { if (!authenticated || !Social.localUser.authenticated) { throw new Exception(); } Social.ReportScore(1000, "CgkI276nu8gCEAIQAA", (bool success) => { if (success) { Social.ShowAchievementsUI(); } else { throw new Exception(); } }); }); 


セクション3.結論

残念ながら、Windows Phoneはまだサポートされていません。 ここではすべてが悲しいものであり、Azureとの対話の低レベルの実装と独自のUIの記述があり、既製の実用的なソリューションは見つかりませんでした。
これですべてです。見てくれてありがとう。 将来、誰かが興味を持っている場合、評価を緩和するためのWebアプリケーションを作成するプロセスを検討できます(たとえば、不正行為者を削除する)。 開発者コンソールではこれを行う手段はありません。

Source: https://habr.com/ru/post/J227361/


All Articles