Skip to content

Scoops / Vertical up Kickers (VUKs) / Saucer holes

Related Config File Sections:

Scoops usually capture balls from a playfield (sometimes via a subway) and eject them back to the playfield after a short while. Saucer holes work like scoops but the ball stays visible all the time and they are sometimes used as a lock. Similarly, vertical up kickers (VUKs) capture from the playfield but they eject onto a ramp or a upper playfield.

Electronic details

Electronically, all of those mechs consist of a switch or opto and a coil to eject the ball.

Scoop from front

Scoop from back

Scoop from side

Connect your switch according to Mechanical Switches or How to configure opto switches depending on its type. Then connect your coil according to Coils (Solenoids).

Config

In MPF, you configure them as ball devices since they can count balls and choose to keep or eject it.

This is an example:

switches:
  s_scoop:
    number: 2
coils:
  c_scoop_eject:
    number: 4
    default_pulse_ms: 20
ball_devices:
  bd_scoop:
    ball_switches: s_scoop
    eject_coil: c_scoop_eject
    eject_timeouts: 1s

It is very common to delay the game when the ball is inside a scoop/VUK/saucer to show animations and play sounds. You can achieve this using a queue_relay_player in your mode (you might want to use conditional events to only trigger it when certain condition match):

switches:
  s_scoop:
    number: 2
coils:
  c_scoop_eject:
    number: 4
    default_pulse_ms: 20
ball_devices:
  bd_scoop:
    ball_switches: s_scoop
    eject_coil: c_scoop_eject
    eject_timeouts: 1s
##! mode: my_mode
# in your mode
queue_relay_player:
  balldevice_bd_scoop_ball_eject_attempt:
    post: start_mode_success_show
    wait_for: mode_success_show_ended
show_player:
  start_mode_success_show:
    success_show:
      loops: 0
      events_when_completed: mode_success_show_ended
shows:
  success_show:
    - duration: 10
#!       events: test_event
      # add lights/sounds/slides here
##! test
#! start_game
#! mock_event test_event
#! assert_balls_on_playfield 1
#! hit_switch s_scoop
#! advance_time_and_run .9
#! assert_balls_on_playfield 0
#! advance_time_and_run 2
#! assert_balls_on_playfield 1
#! assert_event_not_called test_event
#! start_mode my_mode
#! hit_switch s_scoop
#! advance_time_and_run 2
#! assert_event_called test_event
#! assert_balls_on_playfield 0
#! advance_time_and_run 10
#! assert_balls_on_playfield 1

When your mode is running the eject will be delayed by 10s (duration of your show). Add all your lights, shows and slides to this show. After the show ends it will eject normally.

The same can be achieved using a ball_hold device. If you want your saucer/VUK/scoop to lock a ball for a multiball use a ball_lock device instead (see multiball in the game design section for more details).


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