This is the dev documentation for an unreleased version of MPF!
This is the documentation for MPF 0.54+, which is the “dev” (next) release of MPF that is a work-in-progress. Unless you’re specifically looking for this version, you probably want to use the version of documentation called “latest” which is for the latest released version of MPF. That documentation is at docs.missionpinball.org/en/latest.
|Related Config File Sections|
Believe it or not, the playfield in MPF is technically a ball device. This is needed since MPF wants to know where all the balls are at all times, so it needs to know which balls are “in” the playfield device.
The playfield is also responsible for tracking balls that
“disappeared” from it without going into other devices—-a process which
kicks off the ball search.
The default playfield ball device (called
playfield) is created automatically based on settings in the
mpfconfig.yaml default configuration file. Most machines only have
one playfield, though if you have a mini-playfield or a head-to-head
machine then you can configure additional playfield devices.
Ball tracking and ball search is performed per playfield in MPF. Therefore, most devices in MPF belong to one playfield and mark it as active when they see a ball. You should configure the exact playfield for every device as soon as you have more than one playfield in your machine. Otherwise, MPF will complain about unexpected balls (e.g. you will see unexpected_ball_on_(name) events), ball search might at the wrong time and ball tracking might go haywire. To transfer balls you can use playfield transfer or ball devices. A ball device might capture from one playfield and eject to another.
Playfields are configured in the playfields: section of the configuration file.
- Balls which will be available eventually. If a ball is requested it will be included in available_balls but not in balls until it arrives.
- The number of balls on the playfield.