Skip to main content

Changelog/Roadmap

Changelog

1.0

  • Initial Release.

1.1

  • Added a way to return the current state of an achievement.
  • Added labels to achievement structs in the project settings menu.

1.2

  • Added an editor combo box to the achievement unlock/progress nodes. Prevents the entering of an invalid key.
  • Added a way for developers to override the UI representation of an achievement.
  • Added a fix which prevents a crash when adding new achievements and failing to delete save data.
  • Fixed an issue where animations would not play on some engine versions.

1.3

  • Fixed an issue where the saved progress variable is not initialized correctly.
  • Added an option to limit the number of decimal places on a UIAchievement.

1.4

  • Fixed an issue where sound is not included in packaged games.
  • Fixed an issue where the achievement UI does not spawn when switching scenes.

1.5

  • Fixed an issue with Android builds.

1.6

  • Fixed a crash when using a NotificationFrequency of 0.

1.7

  • Added settings for customizing UIAchievement, achieved/unachieved text.
  • Added an option to display progress achievement values as integers.
  • Updated to engine version 4.27.

1.8

  • Fixed custom achievement class not being used in the achievement list.

1.9

  • Added build support for IOS, TVOS, Switch, and HTML5.
  • Added blueprint bindable unlock/progress update events.

1.9.1

  • Fixed crash when placing AchievementProgressList or AchievementProgressDetails.

1.10

  • Full localization support.
  • New padding, margin, spacing, and notification positioning options.
  • Achievement tags / filtering options.
  • Custom achievement notification providers.
  • Highscore option for progress achievement.
  • Added a rounded edge version of the default achievement.
  • Bug fixes and documentation improvements.
  • SetValue for the AchievementUI widget is now virtual and can be overridden in C++ or in a child blueprint.
  • Achievement system settings have also been exposed to blueprints. This can be retrieved with the GetSetting function.
  • New functions for retrieving achievement information:
    • FAchievementData GetAchievementDataByKey(FName Key, bool& FoundAchievement);
    • TArray<FAchievementData> GetAllAchievementData();
    • TArray<FAchievementData> GetAllAchievementDataWithTag(FName Tag);
    • TArray<FName> GetUniqueTags();
    • int32 GetAchievedCountWithTag(FName Tag);
    • int32 GetAchievementCountWithTag(FName Tag);
    • float GetAchievedPercentageWithTag(FName Tag);
    • UAchievementSystemSettings* UAchievementSubSystem::GetSettings();

1.11

  • New save format:
    • Allows achievements to be added and removed after release without losing save data.
    • Includes auto migration of the old save format.
  • Added an editor combo box to the tags.
  • Reduced unnecessary copying for structs during function calls.
  • Added GetAchievementStateDisplayData and GetAchievementDisplayData for debugging structs in blueprints.

Roadmap

  • Options to sync with OnlineSubSystem. This change would enable support for Steam, EGS, and consoles.
  • Improved custom editor for the settings page.
  • Pagination options for the achievement list.
  • Global scaling options for the built-in notification provider.