Achievements link

The Achievement module allows the developer to grant achievements to the player, to clear achievements, and to determine if an achievement has been granted. It also allows the recording of progress towards an achievement.

By default, the achievement stores information in the persistent file. If Steam support is available and enabled, achivement information is automatically synchronized with Steam.

achievement.Sync() link

An action that calls achievement.sync(). This is only sensitive if achievements are out of sync.

achievement.clear(name) link

Clears the achievement with name.

achievement.clear_all() link

Clears all achievements.

achievement.grant(name) link

Grants the achievement with name, if it has not already been granted.

achievement.has(name) link

Returns true if the player has been granted the achievement with name.

achievement.progress(name, complete) link

Reports progress towards the achievement with name, if that achievement has not been granted. The achievement must be defined with a completion amount.

The name of the achievement. This should be the name of the achievement, and not the stat.
An integer giving the number of units completed towards the achievement.
achievement.register(name, **kwargs) link

Registers an achievement. Achievements are not required to be registered, but doing so allows one to pass information to the backends.

The name of the achievement to register.

The following keyword parameters are optional.

The name to use on steam. If not given, defaults to name.
The integer value of the stat at which the achievement unlocks.
If the progress modulo stat_max is 0, progress is displayed to the user. For example, if stat_modulo is 10, progress will be displayed to the user when it reaches 10, 20, 30, etc. If not given, this defaults to 0.
achievement.sync() link

Synchronizes registered achievements between local storage and other backends. (For example, Steam.)