9

GKScore と GKLeaderboard のドキュメントを調べたところ、GameCenter の特定のリーダーボードにプレイヤーによって報告されたスコアをリセットする方法はありません。私は正しいですか?

実績をリセットできるため、これはかなり矛盾しているようです。

[GKAchievement resetAchievementsWithCompletionHandler:^(NSError *error) { ... }];

何かご意見は?

4

1 に答える 1

5

あなたは正しいです。Game Center リーダーボード カテゴリをリセットする方法や、ライブ アプリで起動されたカテゴリを削除する方法はありません。

Apple は実績をリセットする方法を許可しました。

私が知っている唯一の回避策は、古いカテゴリを終了させ、それらを一番下に戻し、カテゴリに関連付けられたラベルを「ハイスコア(アーカイブ済み)」のようなものに変更してから、新しいカテゴリを作成してラベルを付けることです「ハイスコア」で上に並べ替えます。これにより、新鮮なものが得られます。しかし、もちろん、リーダーボードのカテゴリは 25 に制限されているため、古いものを再利用する方法を考え出さない限り、ある時点で沈んでしまいます。(たとえば、すべてのスコアを 10 倍にして、全員が以前のスコアをすぐに上回るようにします)

編集...最近のバージョンでは、最近のアプリの更新でリーダーボードのカテゴリを実際に再利用しました。このカテゴリの本来の用途は、1000 点台前半のかなり低いスコアでした。このカテゴリの新しい用途は、その 10 倍から 1000 倍になる予定でした。そのため、そのカテゴリの古いスコアは、ゲームの最初の数回のプレイで消去されることを知っていました. もちろん、カテゴリ ID (com.company.app.category) は変更できませんが、説明 (英語またはその他) は変更できます。まったく別のもののスコアを保存するときに、あるものの ID を持つカテゴリを使用しているため、混乱する可能性があります。しかし、#define kBlahBlahBlah to @"com.company.app.blah" を使用すると、コードで名前を使用できるため、物事を簡単に整理できます。それが役立つことを願っています。

于 2012-06-21T19:32:54.047 に答える