segment_display (example config files)

Machine config examples

Here are some example machine-wide config files that show real-world examples of how these configs are used.

Note that there are multiple machine config examples here. They’re just included to show different options. You wouldn’t actually use more than one.

#config_version=5

segment_displays:
  display1:
    number: 1
  display2:
    number: 2
  display3:
    number: 3
  display4:
    number: 4
  display5:
    number: 5

segment_display_player:
  # empty all displays on game start and setup display5
  game_start:
    display1:
      text: ""
    display2:
      text: ""
    display3:
      text: ""
    display4:
      text: ""
    display5:
      text: "{current_player.ball:d}"

  # clear only display5 after game
  game_ended{machine.player1_score > 0}:
    display1:
      text: "{machine.player1_score:d}"
  game_ended{machine.player2_score > 0}:
    display2:
      text: "{machine.player2_score:d}"
  game_ended{machine.player3_score > 0}:
    display3:
      text: "{machine.player3_score:d}"
  game_ended{machine.player4_score > 0}:
    display4:
      text: "{machine.player4_score:d}"
  game_ended:
    display5:
      text: ""

  # flash display on player turn
  player_turn_started.1{number==1}:
    display1:
      action: flash
  player_turn_ended.2{number==1}:
    display1:
      action: no_flash
  player_turn_started.3{number==2}:
    display2:
      action: flash
  player_turn_ended.4{number==2}:
    display2:
      action: no_flash
  player_turn_started.5{number==3}:
    display3:
      action: flash
  player_turn_ended.6{number==3}:
    display3:
      action: no_flash
  player_turn_started.7{number==4}:
    display4:
      action: flash
  player_turn_ended.8{number==4}:
    display4:
      action: no_flash

  # show score when adding players
  player_added.1{num==1}:
    display1:
      text: "{players[0].score:d}"
  player_added.2{num==2}:
    display2:
      text: "{players[1].score:d}"
  player_added.3{num==3}:
    display3:
      text: "{players[2].score:d}"
  player_added.4{num==4}:
    display4:
      text: "{players[3].score:d}"
#config_version=5

modes:
 - mode1

segment_displays:
  display1:
    number: 1
  display2:
    number: 2

segment_display_player:
  test_event1:
    display1: "HELLO1"
    display2:
      text: "HELLO2"
  test_event2:
    display1:
      action: remove
  test_event3:
    display2:
      action: remove

  test_flashing:
    display1:
      action: flash
  test_no_flashing:
    display1:
      action: no_flash

  test_score:
    display1:
      text: "1: {players[0].score:d}"
    display2:
      text: "2: {machine.test:d}"

  test_score_two_player:
    display1:
      text: "{players[0].score:d}"
    display2:
      text: "{players[1].score:d}"

  test_flash:
    display1:
      priority: 10
      key: flash
      text: "TEST"
      expire: 2s

Mode config examples

Here are some example mode config files that go along with the machine-wide config above.

#config_version=5

mode:
  priority: 100

segment_display_player:
  mode_mode1_started:
    display1:
      text: "MODE1"
    display2:
      text: "MODE1"
      expire: 10s