2013-11-25 31 views
1

我從我的一個應用的排行榜看到一個有趣的分數:2,147,483,647。 這個數字恰好是2^23 -1,它是已知的雙梅森素數之一。 這裏是我的代碼如何計算遊戲得分:將一個大分數錯誤地報告給iOS應用的排行榜

float highestScore = 10000; 
float factor1 = powf(0.90, (colNumber == 7 ? 0 : 1)); 
float factor2 = powf(0.90, (rowNumber == 8 ? 0 : 1)); 
float factor3 = powf(0.9, (size - 2)); 
float factor4 = rotationOn ? 1 : 0.33; 
float factor5 = powf(0.8, hintCount); 
float factor6 = pow(0.95, ((int)(tick/30))); 
float factor7 = pow(0.90, letterNum); 

theScore = (int) (highestScore * factor1 * factor2 * factor3 * factor4 * factor5 * factor6 * factor7); 

//sometime later but before reporting game score to leader board 
int64_t score64t = (int64_t)theScore; 

我不知道爲什麼一個大數目的分數報告(此數大比分的實際上是兩個例),但我不知道這涉及到越獄設備。我怎樣才能從排行榜中刪除這個分數?

+1

2,147,483,647是最大爲32位有符號整數。 – Raptor

+1

[開發人員現在可以從Game Center排行榜中刪除假分數](http://www.macrumors.com/2013/10/29/developers-can-now-delete-fake-scores-from-game-center-leaderboards/ ) –

+1

另請參閱:http://stackoverflow.com/a/5531421/188331 – Raptor

回答

1

越獄設備可以欺騙遊戲中心。有一個越獄設備的應用程序,讓用戶選擇發送的分數。這是所有遊戲都會遇到的問題。在遊戲中心配置中,您可以設置儘可能高的分數來緩解這個問題,但作弊者仍然可以評分該值,即使他們沒有真正做到這一分數。

您可以將iTunnes連接攔網得分 - >管理您的應用程序 - >選擇您的應用程序 - >管理遊戲中心 - >管理分數和播放器 - >單擊管理在管理的最高得分列