ゲームのリリース後は、ゲームのインサイトで主要指標のモニタリングを続けることが大切です。指標のモニタリングを続けることによって、ゲームの機能設計のヒントを得たり、オーディエンスに関するインサイトを取得したり、アップデートによってゲームが適切な状態を保っているかどうかを確認したりできます。
ゲームのインサイトでは、多くのイベントや利用者層データが自動的に記録されます。オーディエンスに関する匿名の集計情報(年齢グループ、国、使用言語など)を確認できます。さらに、リテンションやデイリーアクティブユーザーなどのエンゲージメント情報を見ることもできます。
[ウェブホスティング]セクションにある機能を活用することで、オーディエンスの一部にゲームパッケージを配布し、データの変化を綿密に追跡して、ゲームのアップデートによって指標が改善されているかどうかを検証できます。
最初の読み込みは5秒(6MB)以内に抑える: インスタントゲームはすぐにプレイできる必要があり、最初の読み込みに時間がかかり過ぎるとプレイヤーが離脱する傾向があります。ゲーム開始時に読み込むコンテンツは最大でも6MBにしましょう。バンドルの合計サイズは最大200MBですが、最初の読み込みではindex.html
が明示的に必要とするファイルのみが読み込まれます。その時間は最初のセッションに必要なアセットだけを読み込むようにして、他のアセットは必要になったときに読み込むようにしてください。
最初の読み込みの進行状況を報告する: 最初の読み込み中は、setProgress
を使用して読み込みの進行状況を知らせてください。
最初の読み込みの後に続けてロード画面が表示されることのないようにする: ネイティブの読み込みリングが100%に達したら、プレイヤーがそれ以上待つことなくすぐにプレイを開始できるようにしてください。
デスクトップ用に最適化する:バンドル設定でoverride_web_orientation
を使用することにより、デスクトップブラウザーでは違う向きにすることができます。これにより、すべてのウェブ資産を有効利用できます。
モバイル用に最適化する: インスタントゲームはデスクトップブラウザーで動作しますが、レンダリングやアスペクト比は一般的なiOSデバイスやAndroidデバイス向けに最適化することをおすすめします。
initializeAsync
と並行処理でリソースを読み込む: リソースをダウンロードする前に、initializeAsync
promiseの解決を待つ必要はありません。並行してダウンロードすることができます。
コードの縮小(minify)や難読化(uglify)を考慮する: コードアセットのダウンロードサイズとメモリ要件を大幅に削減することができ、またプロセス内のコードを難読化することでゲームでの不正行為やゲームコードの盗用を困難にすることができます。
熟練プレイヤーでも、選択すればチュートリアルに戻れるようにします。しばらくゲームをプレイしていない場合や、チュートリアルを友達に見せたい場合に利用できるようにしておきましょう。すべてのセッションでチュートリアルを強制するのではなく、遊び方がわかっているプレイヤーには、すぐにプレイできるようにします。
後でグループに参加する新しいプレイヤー向けのグループの設定を検討してください。これらのプレイヤーには、初回のプレイでチュートリアルを表示するようにします。
可能であれば、テキスト以外の要素も使った再生可能なチュートリアルを用意してください。利用者がチュートリアルであることを意識しないようなものが、理想的なチュートリアルです。
チュートリアルは初心者のプレイヤーも熟練プレイヤーも利用できるようにする必要があります。ただし、簡単にスキップできるようにしてください。
ゲームへのショートカットをホーム画面に追加するようプロンプトで促すのもおすすめです。ゲームへの恒久的なエントリーポイントが増え、長期的なリテンション向上につながります。ホーム画面ショートカットAPIを使用すれば、プレイヤーがAndroidデバイスのホーム画面にゲームのショートカットを追加できるダイアログをゲーム内に表示できます。このアクションには特典を付与できます。メソッドcanCreateShortcutAsync
を使って、現在のゲームプレイセッションがショートカットの作成に対応しているかどうかを確認することもできます。
ゲームをローカライズする: 自分が普段使っている言語でプレイできるゲームに対しては、エンゲージメントも高まるものです。ゲームコンテンツの翻訳先言語を決める際は、次の表を参考にしてください。
ランキング | 言語 | 優先度 |
---|---|---|
1位~10位の言語 | EN (英語)、ES (スペイン語)、PT (ポルトガル語)、FR (フランス語)、AR (アラビア語)、ID (インドネシア語)、VI (ベトナム語)、TH (タイ語)、PL (ポーランド語)、DE (ドイツ語) | 必須 |
11位~20位の言語 | IT (イタリア語)、ZH (中国語)、RU (ロシア語)、TR (トルコ語)、MY (ビルマ語)、MS (マレー語)、RO (ルーマニア語)、NL (オランダ語)、SV (スウェーデン語) | あるとよい |