◉RORK LABEN
●GPT-6.1 SOL — Rork のモデルメニューに追加(09-29)。Low/Medium/High を選べ、Pro・Max に含まれます●SONNET 5.5 — UI づくりが得意で、Sonnet 5 より出力が速いモデルが選べます(09-28)●SDK 58 — Beta が 09/15 から。stable の案内はまだなく、Expo Go でのプロジェクト実行は 09/03 からログインが必要です●WIDGET — iOS のウィジェットが本番ビルドだけ真っ黒になる原因を追った報告が出ています●OBSERVE — EAS Observe がネイティブクラッシュも記録します(SDK 57.0.21 以降・10/07)●NEW — 起動広告が、背面から戻った回にしか出ていませんでした。「前面に戻った」合図が、…●GPT-6.1 SOL — Rork のモデルメニューに追加(09-29)。Low/Medium/High を選べ、Pro・Max に含まれます●SONNET 5.5 — UI づくりが得意で、Sonnet 5 より出力が速いモデルが選べます(09-28)●SDK 58 — Beta が 09/15 から。stable の案内はまだなく、Expo Go でのプロジェクト実行は 09/03 からログインが必要です●WIDGET — iOS のウィジェットが本番ビルドだけ真っ黒になる原因を追った報告が出ています●OBSERVE — EAS Observe がネイティブクラッシュも記録します(SDK 57.0.21 以降・10/07)●NEW — 起動広告が、背面から戻った回にしか出ていませんでした。「前面に戻った」合図が、…
記事一覧/アプリ開発
◇ アプリ開発/2026-07-02中級

Rork Max のゲームに Game Center を組み込む — 認証・リーダーボード・実績とスコア改ざんへの向き合い方

Rork Max で作った iOS ゲームに Game Center を組み込む手順を、認証・リーダーボード・実績の動く Swift コードと、スコア改ざんへの現実的な向き合い方まで含めて整理します。

Rork Max236Game CenterGameKitリーダーボードSwift48

✦ プレミアム記事

個人開発で小さなパズルゲームを出したとき、最初はランキングを自前の API で作りました。スコアの受け口を書き、重複投稿を弾き、表示用のエンドポイントを整え——気づけばゲーム本体より、周辺の保守に時間を取られていました。

その反省から、次のゲームではランキングを Game Center に寄せました。サーバーは持たず、認証もランキング UI も Apple 側に任せる構成です。Rork Max はネイティブ Swift を出力するので、GameKit のような「React Native からは届きにくい」フレームワークにもそのまま手が届きます。

以下、Rork Max で生成したゲームに Game Center を組み込む流れを、App Store Connect の設定から認証・スコア送信・実績、そして避けて通れないスコア改ざんの話まで、私が実装した順序のまま追っていきます。

ランキングを自前で持つか、Game Center に任せるか

まず判断の分かれ目から。私自身は次の基準で使い分けています。

観点自前 APIGame Center
実装コスト受け口・認証・UI を全て自作クライアント実装のみ。UI は標準提供
運用コストサーバー費・監視・スパム対策が継続的に必要ほぼゼロ。Apple 側が保持
不正対策サーバー側で検証ロジックを組めるクライアント申告制。検証の仕組みはない
UI の自由度完全に自由標準 UI が基本。カスタム表示は API 経由で可能
対応範囲任意のプラットフォームApple プラットフォームのみ

競技性が高く賞金や報酬が絡むゲームなら、サーバー検証を組める自前 API に分があります。一方、個人開発の規模で「友達と競える」「昨日の自分を超える」体験を届けたいだけなら、Game Center の運用コストゼロは強力です。

Android 版を同じコードベースで出す予定があるかどうかも効きます。Rork Max はネイティブ Swift 出力なので、この記事の構成は iOS 専用が前提です。

App Store Connect 側の準備

コードより先に、App Store Connect の設定を済ませます。ここを後回しにすると、実装が終わっているのにテストできない時間が生まれます。

  1. App Store Connect で対象アプリを開き、「サービス」から Game Center を有効にします
  2. リーダーボードを作成します。参照名・ID(例: com.example.puzzle.highscore)・スコア形式(整数か小数か)・並び順(高い方が上か低い方が上か)・スコアの提出範囲を決めます
  3. 実績を作成します。ID・ポイント(合計 1,000 まで)・達成前に隠すかどうかを設定します
  4. 少なくとも1言語分のローカライズ(表示名・画像)を埋めます。ここが空だと保存できません
  5. Xcode 側でターゲットの Signing & Capabilities に Game Center capability を追加します

ひとつ注意点があります。リーダーボードの ID は作成後に変更できません。アプリの bundle ID と同じ要領で、逆ドメイン形式で命名しておくと、ゲームが増えても衝突しません。

✦

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
✦GKLocalPlayer 認証からスコア送信・ランキング表示までを動く Swift コードで確認できます
✦App Store Connect のリーダーボード・実績設定を、審査を意識した順序で進められます
✦クライアント申告制スコアの改ざんに対する現実的な緩和策と異常値監視の考え方が分かります
Stripe による安全な決済 · いつでもキャンセル可能
✦

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Rork Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • ✦コピー&ペーストで使える実装コード付き
  • ✦毎日新しい上級ガイドを追加
  • ✦¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

⬡ 開発ツール2026-04-05
Rork Max × WidgetKit・ライブアクティビティ実装ガイド 2026 — Dynamic Island 対応まで
Rork Max で iOS Widget・ロック画面ウィジェット・Dynamic Island 対応のライブアクティビティを実装した記録。Timeline の焼き込み設計、APNs のヘッダーと優先度、push-to-start、stale-date の扱いまで実運用の判断を残します。
◇ アプリ開発2026-10-15
購読が切れても広告が戻りませんでした。「いま ad-free でなければ false」と書いていた、判定の向きを直した記録
購読が失効しても広告非表示のままになる不具合の原因は、判定の向きの逆転でした。二系統の購入確認を待って合成し、失敗した回は前回を保つ部品を、手元で動かして確かめた記録です。
◇ アプリ開発2026-10-15
adjustsFontSizeToFit で特定の1行だけ極小になるとき、疑うのは文字列ではなく枠の高さです
一覧の10行目だけ文字が4ptまで縮む。データも文字列も正常なのに起きる iOS の症状を、Yoga の丸めと縮小判定のソースで確かめ、Node で再現率を数えた記録です。