Skip to content

Achievement Groups

Related Config File Sections:

Achievement groups are used to group together individual achievements.

If you look at the real-world examples we used in the achievements documentation, each of the entries in that list is an achievement "group" that's made up of individual achievements.

For example, in The Addams Family, the mansion awards would be individual achievements, for example:

  • 9 Mil
  • 6 Mil
  • 3 Mil
  • Thing
  • Quick Multiball
  • Grave Yard at Max
  • Raise the Dead
  • Etc.

Each of those individual achievements has a state (enabled, started, completed, etc.)

If you were building a config for The Addams Family (TAF) with MPF, you would create an achievement group called "Mansion Awards", and then you would add the individual achievements to that group.

The achievement group will let you perform group-level actions on the achievements in the group. For example:

  • Randomly select one of the incomplete achievements (so you can flash that achievement's light to indicate it's selected).
  • Change which achievement is selected. (In TAF, each hit to a pop bumper changes the lit achievement, so you'd configure your achievement group to pick a new achievement when the pop bumper hit event was posted.)
  • Post an event when all achievements are complete (to start a wizard mode, etc.)
  • Post a "start" event for whichever achievement is lit (In TAF, you shoot the lit electric chair or the swamp to start the flashing achievement.)

Monitorable Properties

For dynamic values and conditional events, the prefix for achievement groups is device.achievement_groups.(name).

enabled

: Boolean (true/false) as to whether this achievement group is enabled.

selected_member

: The achievement in the group that is currently in the selected state, or None if no achievement is selected.

  • Custom events as defined in the achievement's configuration in your config files.

Something missing or wrong? You can fix it!

This website is edited by people like you! Is something wrong or missing? Is something out of date, or can you explain it better?

Please help us! You can fix it yourself and be an official "open source" contributor!

It's easy! See our Beginner's guide to editing the docs.

Page navigation via the keyboard: < >

You can navigate this site via the keyboard. There are two modes:

General navigation, when search is not focused:

  • F , S , / : open search dialog
  • P , , : go to previous page
  • N , . : go to next page

While using the search function:

  • Down , Up : select next / previous result
  • Esc , Tab : close search
  • Enter : go to highlighted page in the results