After the player is connected, you can use leaderboards API.

Show UI

You can show achievements UI using this method:


Working with achievements progress

Example how to update achievement progress.

string achievementId = TEST_ACHIEVEMENT_2_ID;
float progress = 88.66f
bool isCompleteNotification = false;
GameCenterManager.SubmitAchievement(progress, TEST_ACHIEVEMENT_2_ID, isCompleteNotification);

NOTE: There is a know Game Center bug, when achievement completion notification does not appear even if isCompleteNotification set as true.  As workaround, you can handle notification by your self. Keep isCompleteNotification as false, and when you reporting progress as 100, you can use ShowGmaeKitNotification to show GameCenter style notification.

GameCenterManager.ShowGmaeKitNotification("some title", "some message");

 Here is example how we can increment an achievement progress: 

GameCenterManager.submitAchievement(GameCenterManager.getAchievementProgress(TEST_ACHIEVEMENT_1_ID) + 2.432f, TEST_ACHIEVEMENT_1_ID);

If you want to reset the player progress for all achievements, call the following method:


All interactions with the Achievements API triggers corresponding events so you can always find the result of your API call.  

The following Actions are currently available:

public static Action<ISN_Result> OnAchievementsReset = delegate{};
public static Action<ISN_Result> OnAchievementsLoaded  = delegate{};
public static Action<ISN_AcheivmentProgressResult> OnAchievementsProgress  = delegate{};

For example, if we want to find out the achievements progress, we need to listen for when the achievements data is loaded. The load request will be sent automatically by the plugin after the player is connected, so we need only listen for the loaded event:

GameCenterManager.OnAchievementsLoaded += OnAchievementsLoaded;

private void OnAchievementsLoaded(ISN_Result result) {

	if(result.IsSucceeded) {
		Debug.Log ("Achievemnts was loaded from IOS Game Center");
		foreach(AchievementTemplate tpl in GameCenterManager.achievements) {
			Debug.Log ( + ":  " + tpl.progress);

After the achievements are loaded, you can get the Achievement progress by ID using following code:

float progress = GameCenterManager.getAchievementProgress(TEST_ACHIEVEMENT_1_ID)

NOTE: This feature can only be used after Achievements data is loaded (OnAchievementsLoaded action fired). However, if you enable Auto Caching Achievements progress with PlayPrefs, you will be able to access this data at any time, even without an Internet connection. You can read more about IOS Native Game Center Settings


Full API use Example can be found in the GameCenterGeneral example scene.