Skip to main content

Basic Setup

After installing, navigate to "Edit/Plugins". Enable 'Achievement System' and restart the editor.

Segments

All configuration is performed inside the Achievement System projects settings menu. To find this menu, simply select “Edit/Project Settings”, it can then be found under the ‘Game’ section.

Settings

Defining Achievements

Within the first section of the settings menu a list of all achievements can be found. Here you will define every achievement that the player will be able to unlock. Each achievement must have a unique key to ensure that they can easily be referenced in blueprint code/C++.

Define Data

There are a number of properties which can be set to customise each achievement. These are described below.

PropertyDescription
KeyA unique key used to identify an achievement in blueprint/C++ code.
Display NameThe name of the achievement which the player will see in-game.
DescriptionA short description which tells the player how to earn the achievement.
Locked and Unlocked IconsThe icon displayed when the achievement is locked and unlocked. If "Lock overlay" is set to true, the lock icon overlays the unlocked version.
SpoilerTreat the current achievement as a spoiler for the game. Hidden from the player until unlocked.
ProgressIf true, this achievement will count to a certain amount before unlocking. Example: Race a total of 500 km, collect 10 coins, or reach a high score of 25.
Progress GoalThe goal which must be reached for the achievement to unlock. Used only for progression-based achievements.
Int ProgressIf true, any progress calculations will be treated as integers.
Notification FrequencyThe rate that progress updates are displayed on-screen. Example: If Progress Goal = 100 and Notification Frequency = 25, progress is shown at 25, 50, 75, and 100.
Progress SuffixA string displayed with a progress achievement, such as $, KM, or Miles.
High Score ProgressIf true, the progress value only updates if larger than the saved number. Example: Reach 500 meters in one game. Should only be used with SetAchievementProgress, not AddAchievementProgress.
TagsTags group and filter achievements. Example: Use a tag for DLC achievements to display them separately from the base game.
Other Achievement DataA String-String TMap for storing custom data related to an achievement.
danger

(v1.10 or lower) After adding, removing or rearranging an achievement from the list, you may wish to delete the save file from “ProjectName/Save/NameOfSaveFile.sav”. Failure to do this may result in unexpected behaviour.


Completionist Achievement

At the bottom of the achievement list, there is a section where a final game achievement can be defined. This achievement will automatically be unlocked once all others have been completed. Check the checkbox and type in the key of the achievement you wish to use.

Complete All

Other Settings

SettingDescription
Show Achievement UnlocksIf true, default achievement unlock notifications will be displayed on the players screen.
Show Achievement UnlocksIf true, default achievement progress update notifications will be displayed on the players screen.
Main Notification Provider SettingSee Here.
Show Exact ProgressIf true, progress notifications will display their exact progress, if false it will show the closest bracket.
Example - Notification frequency is set to 25 and the current progress is 79.
True: Display 79
False: Display 75
MaxDecimalPlacesThe max number of decimal places which can be displayed on a UI Achievement
AchievedWord + UnachievedWordAppends to the progress bar when an achievement is achieved/Unachieved.
UI Achievement OverrideDefine a custom widget class to be displayed on the players screen. If left blank, the default achievement representation will be used. See Here
AutoSaveIf true, the state of all achievements will be saved without any user input. If false, achievement states must be saved manually by calling SaveAchievementState().
SaveGameNameThe name of the save game slot used to keep track of achievement states.

Main Notification Provider Settings

SettingDescription
Screen LocationDefine the corner of the screen that progress and unlock notifications will be displayed.
Total On ScreenThe total number of achievement notifications which can be on the screen at any one time.
Screen TimeThe number of seconds an achievement will display on the screen once unlocked or progress is made.
SpacingThe space between each achievement widget in the stack.
Notification Horizontal MarginThe space between the achievement notification and the side of the screen.
Notification Vertical MarginThe space between the achievement notification and the top/bottom of the screen.
Interact BlockableIf true, notifications will be able to block UI under them.
Exit AnimationThe animation that is played when notifications are removed from the screen. Options: Fade, Disappear, Slide, Scale Down, or Custom.
Exit Animation LengthThe number of seconds an achievement notification takes to leave the screen.
Entrance Animation LengthThe number of seconds an achievement notification takes to enter the screen.
Unlocked SoundThe sound that plays when an achievement is unlocked and displayed to a user. Only plays if ShowAchievementUnlocks is true.
Progress Made SoundThe sound that plays when a progress update is displayed to a user. Only plays if ShowAchievementProgress is true.