1

ハイスコ​​アを Game Center リーダーボードに保存するゲームを設計しました。今、私のプロジェクトマネージャーは言います。「そのため、Game Center を有効にしていない人は、ローカルにハイスコアを保存させてください。」

わかりましたが、次のような場合に混乱を招く可能性があります。

  • ユーザーは GC なしでプレイし、ハイスコアを取得します。その後、ユーザーは GC にサインインし、ゲームに再び切り替えます。ローカル ハイスコアの表示をすべて削除する必要がありますか?

この状況になると、一般的な「これを行う」ということはありますか?

4

3 に答える 3

1

IMO の最大の関心事は、ユーザーのハイスコアを維持することです。ユーザーがローカルで高いスコア A を持ち、Game Center で高いスコア B を持っている状況がある場合は、max(A, B) を表示します。

于 2012-07-24T04:26:36.153 に答える
1

常にハイスコアをローカルにキャッシュまたは保存します。これにより、Game Center が有効になっているユーザーでも、オフラインの場合にスコアを確認し、再接続したときに送信することができます。オフライン スコア用の独自の UI を作成し、特定のスコアが Game Center に送信されたことを示すインジケーターを追加できます。次に、Game Center のスコアを表示する方法を提供します。(カスタム ビュー コントローラーまたは標準のビュー コントローラーのいずれかを使用できます。)

于 2012-07-24T05:56:27.077 に答える
0

この状況で「ベストプラクティス」があるかどうかはわかりませんが、両方を実行するゲームがあり、最終的に次のことを実行しました。

  • GCが無効になっている場合、ローカルに保存されたハイスコアを取得します。
  • GCを有効にすると、GCのハイスコアが得られます。ローカルハイスコアはありません。

さて、私がこのゲームを開発したとき、GCは真新しく、多くのユーザーがそれを持っていなかったので、ローカルのハイスコアは要件のようでした。今日それを開発するなら、私はおそらく地元のハイスコアを完全にスキップするでしょう。あなたがGCを持っていない場合、あなたはハイスコア、期間を取得しません。

ただし、特にGCが無効になっていることについて話していることに注意してください。ユーザーがGCにサインインしているが、それが利用できない場合(たとえば、ネットワーク接続がない場合)、ネットワークが再び利用可能になったときにいつでもGCに送信できるように、獲得したハイスコアを絶対にキューに入れる必要があります。

于 2012-07-24T06:07:01.193 に答える