Apple の Game Center を使って iOS のゲームアプリを設計すれば、ゲームスコアやアチーブメントをサーバーへ送信し、プレイヤーのスコアを元にランキングを表示することが出来ます。
以下の4回に分けて、iTunes Connect の設定や Swift のスコア送信の実装を、説明していきたいと思います。
- iTunes Connect: Game Center の Leaderboard を設定する
- Swift: Game Center の Leaderboard へスコアを送信する
- iTunes Connect: Game Center の Achievement を設定する
- Swift: Game Center へ Achievement を送信する
今回は iTunes Connect で Game Center の Achievement の設定を行います。
※この説明は Xcode で アプリが開発されていること、iTunes Connect で新規 iOS App の作成までは完了していることを前提としています。
手順の概要
- Achievement の追加
- 達成項目 -> 達成項目の参照名 を入力
- 達成項目 -> 達成項目 ID を入力
- 達成項目 -> 点数 を入力
- 達成項目 -> 非表示 を選択
- 達成項目 -> 複数達成可能 を選択
- 達成項目のローカリゼーション
- 言語を追加 -> 言語 を選択
- 言語を追加 -> タイトル を入力
- 言語を追加 -> 達成前に表示する説明 を入力
- 言語を追加 -> 達成後に表示する説明 を入力
- 言語を追加 -> 画像(オプション)で ファイルを選択 から画像を登録する
- Leaderboardを編集 -> Save をクリック
Game Center の Achievement を設定 を設定する
ここからは SQN プレイ回数の Achievement を例に説明していきたいと思います。
上から順に設定していくと Game Center での Achievement の設定は完了します。
Achievement の追加
- iTunes Connect -> マイ App -> アプリを選択 -> Game Center をクリック
- 達成項目を追加 をクリックし、アプリに Achievement を追加する。
- 達成項目 -> 達成項目の参照名 を入力
この値は iTunes Connect 上で Achievement の識別に使用します。
命名規則にルールはありませんので、分かりやすい名称にすればいいかと思います。例)sqn.achievement.playFirst (アプリ名.アチーブメント.達成項目名)
- 達成項目 -> 達成項目 ID を入力
この値はアプリのコーディングで参照する値となります。
命名規則にルールはありませんので、分かりやすい名称にすればいいかと思います。例)sqn.achievement.playFirst (Achievement の参照名と同じ)
- 達成項目 -> 点数 を入力
項目達成時に獲得する点数です。
アプリ内で使用できる合計得点は 1000 点までとなっているので、後のアップデートでアチーブメントを追加することを考慮し、全ての点数を使いきらないよう設計することをお勧めします。 - 達成項目 -> 非表示 を選択
非表示 とした場合、この Achievement をプレイヤーが達成するまで Game Center で達成項目が表示されません。
- 達成項目 -> 複数達成可能 を選択
Yes を選択すると、ユーザはすでに達成した達成項目に対する Game Center のチャレンジを受け入れることができます。
達成項目のローカリゼーション
- Leaderboard のローカリゼーション -> 言語を追加 をクリック
- 言語を追加 -> 言語 を選択
- 言語を追加 -> タイトル を入力
Game Center で表示される、ローカライズされた達成項目のタイトルです。
- 言語を追加 -> 達成前に表示する説明 を入力
達成項目を達成する前に Game Center ユーザに表示される達成項目の説明です。
例)未達成、Not achieved、??? など - 言語を追加 -> 達成後に表示する説明 を入力
達成項目を達成後に Game Center ユーザに表示される達成項目の説明です。
例)達成!、Did it!、Complete! など - 言語を追加 -> 画像(オプション)で ファイルを選択 から画像を登録する
512x512px の .jpg .png ファイルのみアップロードが可能です。
※ファイルを選択しないと Save が出来ません。画像が準備出来ていない場合は、適当な仮の画像を用意しておくといいと思います。 - 言語を追加 -> Save をクリック
- Leaderboardを編集 -> Save をクリック
Game Center の変更内容の保存
- Game Center -> Done をクリック
以上の工程を作成したい Achievement 分繰り返すことで、複数の達成項目を設定することが可能です。
まとめ
Achievement はアプリ内で使用する様々な数値を、達成項目として設定することが可能です。
次回は Game Center へ Achievement を送信する Swift コードを説明したいと思います。
本投稿のサンプルで使用している iOS ゲームアプリ SQN では Game Center の Achievement を使って、プレイ回数やゲーム中に発生するユニークな値を送信しています。
SQN は完全無料ですので、よかったらダウンロードして遊んでみてください。
↓SQN のダウンロードはこちらから
SQN はユニバーサルアプリなので、すべての iOS デバイス(※) でお楽しみいただけます。
※iOS 8.0 以降がインストールされているデバイスが対象となります。
この記事がみなさんのお役に立ちましたら、下記「Share it」よりブックマークやSNSで共有していただければ幸いです。