Basic Setup
After installing, navigate to "Edit/Plugins". Enable 'Player Statistics' and restart the editor.
All configuration is performed inside the Player Statistics projects settings menu. To find this menu, simply select “Edit/Project Settings”, it can then be found under the ‘Game’ section.
Defining Statistics/Statistic Groups
Within the first section of the settings menu a list of all player statistics can be found. Each of these is broken into a Group/Category with a list of all stats related to it. All stats must have a unique key to ensure that they can easily be referenced in blueprint code/C++. Define all stats you wish to have in your game here.
There are a number of properties which can be set to customise each player statistic. These are described below.
Statistic Group
Property | Description |
---|---|
Display Name | The name of the statistic group which the player will see in-game. |
Description | A description of the type of statistics within this group. The player will see this in-game. |
Stats | An array of all statistics part of this group. See Player Statistic. for more information |
Player Statistic
Property | Description |
---|---|
Key | A unique key used to identify a player statistic in blueprint/C++ code. |
Suffix | A string to add to the end of a statistic when viewing on the UI. |
Prefix | A string to add to the beginning of a statistic when viewing on the UI. |
Types | Controls how a player statistic is adjusted/displayed to the player. There are 8 options to select from. See Types for more information. |
AsTime | Treat the current statistic as a time. This works for any number based type. Displays the value in a formatted time converting from milliseconds |
Types
Property | Description |
---|---|
Average | Takes all values added and displays the average. Examples : Average score, Average completion time. |
Binary Percentage | Takes a number of bools and displays the percentage of true inputs. Examples : Bullet hit accuracy, Kill Death ratio (KD). |
Int Counter | Simple int counter. Examples : Bullets Shot, Jumps made, Total Kills. |
Float Counter | Simple float counter. Examples : Distance Traveled, Money Collected. |
Custom Text | Stores a custom string value which can be set to anything. Examples : Last Visited Town. Most used weapon. |
High Score | Only updates saved value if larger than previous. Examples : Furthest Distance traveled, Most points in one game. |
Low Score | Only updates saved value if smaller than previous. Examples : Worst performance, Least damage taken in single game. |
Timer | Automatically keeps track of time passed between two defined points. Examples : Total Playtime, Total time spent in taverns. |
After adding, removing or rearranging any player statistic or group from the list, you must delete the save file from ** “ProjectName/Save/NameOfSaveFile.sav” **. Failure to do this may result in unexpected behaviour.
Other Settings
Setting | Description |
---|---|
SaveGameName | The name of the save game slot used to keep track of player statistics states. |
UseAutoSave | If true the states of all player statistics will be saved to a SaveGame at every SaveFrequency seconds. |
SaveFrequency | The number of seconds between each auto save. |
SaveOnExit | If true, all player statistics will be saved as the game shuts. Should be used with AutoSave or manual saving to prevent data loss if the application force exits or crashes. |
SaveAnLoadTimersOnExit | If true, all active timers will be saved when exiting the game and restarted automatically next launch. |
TimerUpdateFrequency | The frequency that timers recalculate and add the amount of time passed. |
DisplayShortTime | If true UI representations of time will be shortened e.g. Minutes becomes Mins. |
FloatingPointPrecision | Round all floating point representations to this number of decimal places. |
ConstantlyUpdateOnUIList | If true, the values of all player states including timers will be updated to the UI constantly while viewing the statistics list. |