Prime31 Game Center plugin could not report extreme large score?

hello, anyone here is using Prime31’s Game Center plugin?

I bought it last month and it worked very well.

but today when i try to report an extreme large score to game center then the plugin failed.

the failed means the score didn’t being reported to gamecenter and when the i called “showLeaderboardWithTimeScope()” it never worked again.

the score is 1,000,000,000,000,000.

when i change the score to a small value like 1 the plugin worked again.

so i tried to get the limit value and i found it is 2,000,000,000.

but the strange thing is i had already set the “Score Range” from 0 to 999,999,999,999,999,999(almost the maximum value) in the iTunes Connect…

so i think the problem is on the plugin side.

anyone knows how to solve this?

thank you!

you might need to change the data type

@dongliang28, the plugin simply marshals the int64 through to the report score method. You are limited by the max value of an int64 which is 9,223,372,036,854,775,807 so your score should work assuming you are using int64’s to count it. What error are you seeing reported by the report score failed event? The fact that you are seeing a limit of 2,000,000,000 makes me think you are not using a data type that can handle high enough numbers. 2,000,000,000 is suspiciously close to the max value of an int (2,147,483,647). Ensure you are using a proper data type (int64) for your scores.

thanks for the help!

i changed the date type to int64 and it works fine now!

thanks again!

Hello Prim31,

I am trying to post the score via game center in leader board from past 4-5 hours, but its always showing me the error in console that “reportScoreFailed”.
The code that i am trying is here:

Void OnGUI()
{
        if(GUI.Button( new Rect(sw/1.93f,sh/2.25f,sw/3.5f,sh/9.0f),System.String.Empty,GUIStyle.none))
	{
		if(!GameCenterBinding.isPlayerAuthenticated())
			AuthenticateGameCenterUser();
		else
		{
			GameCenterBinding.reportScore(PlayerPrefs.GetInt("_kHighScore"), "iTS_LeaderBoard123");//LeaderBoard Id
			GameCenterManager.categoriesLoaded += HandleGameCenterManagercategoriesLoaded;
			GameCenterManager.reportScoreFinished += HandleGameCenterManagerreportScoreFinished;
			GameCenterManager.reportScoreFailed += HandleGameCenterManagerreportScoreFailed;
			isHighScoreClicked = true;
		}
	}
        if(isHighScoreClicked)//Game Center Integration
	{
		if(!GameCenterBinding.isPlayerAuthenticated())
			AuthenticateGameCenterUser();
		else
		{
			GameCenterBinding.loadLeaderboardTitles();
			GameCenterBinding.showLeaderboardWithTimeScope( GameCenterLeaderboardTimeScope.AllTime );
		}
	}
}

void HandleGameCenterManagerreportScoreFailed (string obj)
{
	Debug.Log("bye = " + obj);
	GameCenterBinding.reportScore(PlayerPrefs.GetInt("_kHighScore"), "iTS_LeaderBoard123");//LeaderBoard Id
}

void HandleGameCenterManagerreportScoreFinished (string obj)
{
	Debug.Log("Hello = " + obj);
}

void HandleGameCenterManagercategoriesLoaded (System.Collections.Generic.List<GameCenterLeaderboard> obj)
{
	isHighScoreClicked = false;
}

please point me if i am doing any thing wrong any where in my code…

Thanks
Niki.j

@niki, your other post has already answered. Please do not SPAM the forums with duplicate posts in the future. It wastes our time and everyone elses who reads these forums.

Hello Prime,

Yes, you answered my post, but what should i do if i am not getting the response of my reply for your response.
and i am still facing the same problem,please suggest…

Thanks and i am extremely sorry for my duplicate posts. but that all are for you.
Niki.j