#
# PvP Game Manager Sample Configuration
#
# This file describes some high-level configuration about the server as a
# whole.  Map-specific configuration should be specified in the map folder.
#
# # # # # # # # # # # # # # # #
# OPTION: server              #
# # # # # # # # # # # # # # # #
#
# Sets the server mode.
#
# Available options:
# - pickup
# - communityday
# - development
#
# # # # # # # # # # # # # # # #
# OPTION: maps                #
# # # # # # # # # # # # # # # #
#
# Directory where maps are stored.  See example map.yml for more information
# about the structure of this folder.
#
# # # # # # # # # # # # # # # #
# OPTION: archive             #
# # # # # # # # # # # # # # # #
#
# Directory where completed matches will be stored.  World files will be stored
# in the form of 'match-{id}'.  If this is not specified, the plugin will
# automatically delete the world files.
#
# For example:
# archive/
#   match-1/
#   match-2/
#   etc
#
# # # # # # # # # # # # # # # #
# OPTION: rotationfile        #
# # # # # # # # # # # # # # # #
#
# File where the rotation will be stored and consists of a series of map names
# that may include comments prefixed with '#'.
#
# # # # # # # # # # # # # # # #
# OPTION: broadcastfrequency  #
# # # # # # # # # # # # # # # #
#
# Frequency in seconds that information should be broadcasted to everyone.
#
# # # # # # # # # # # # # #
# OPTION: howto-book-file #
# # # # # # # # # # # # # #
#
# XML file containing a <book> definition that will be given to observers.
#

# If false, PGM will load its classes but not enable itself
enabled: true

# Public PGM listing service
# --------------------------
# If announce is enabled, and this server is running the PGM plugin,
# the listing service will be notified whenever this server starts up
# or shuts down. If the server is reachable at the announced address,
# it will be included in the public list.
#
# WARNING: Enabling this will publish your IP address to the world,
# unless you set server-host to something else.
announce:
  enabled: false                  # Announce this server?
  # server-port: 25565            # Public port - defaults to whatever port is bound at startup
  # server-host: myserver.com     # Public hostname or IP - if not set, the listing service will use
                                  # the IP address that the announcement originates from

# Variables accessible by the XML pre-processor
environment:
  ranked: false

rotation:
  default-name: default
  initial-wait: 20000
  providers: {}

map:
  sources: {}
#    public:
#      priority: 0
#      path: /minecraft/repo/maps
#      only:
#        - CTW
#        - CTF
#        - DTC
#      url: https://maps.oc.tc/
#      depth: 99
#      global-includes: true
  include-path: []
  autoreload:
    enabled: true
    reload-when-error: false

map-ratings:
  enabled: true

autorestart:
  enabled: true
  time: 30
  match-limit: 30
  memory-limit: -1

start:
  auto: true                  # Start the match automatically when ready
  countdown: 30s              # Default match start countdown
  huddle: 0s                  # Team huddle duration
  # timeout: 30s              # Cycle if match takes longer than this to start

cycle:
  countdown: 15s              # Default countdown for cycle commands
  running-match: false        # Allow cycle commands during a running match without the -f flag
  match-empty:                # Cycle if a running match empties out
    enabled: false
    countdown: 5s
  match-end:                  # Cycle when a match ends
    enabled: true
    countdown: 30s

join:
  priority-kick: true         # Kick non-privileged players to make room for privileged ones
  mid-match: true             # Allow players to join after the match has started (does not override Blitz rule)
  commit-players: false       # Do various things to keep players in the match once committed
  capacity:
    enabled: true
    overfill: true            # Enable overfill (false disables overfill, regardless of XML)
    overfill-ratio: 1.25      # Default value, XML overrides this
  requirements:
    minimum-kills: 0

minimum-players: 1

teams:
  minimum-players: 0
  autobalance: true
  allow-choose: true       # Allow privileged players to choose their team
  allow-switch: true       # Allow players to be on multiple teams in the same match
  even: false              # Force evenly sized teams when using queued joins

broadcast:
  title: true
  periodic: true
  frequency: 600

fireworks:
  post-match:
    enabled: true
    number: 5
    delay: 40 # ticks
    frequency: 40 # ticks
    iterations: 15
    power: 2
  goals:
    enabled: true

antigrief:
  diffuse:
    enabled: false
  craft-protect:
    enabled: false
  vechicle-protect:
    enabled: false
  anvil-protect:
    enabled: false

arrowremoval:
  enabled: true
  delay: 10

fishing:
  disable-treasure: true

scoreboard:
  show-proximity: false
  precise-progress: false

wool:
  auto-refill: true

# howto-book-file:

stats:
  deaths: true
  engagements:
    enabled: false
    max-continuous-absence: oo
    max-cumulative-absence: oo
    min-participation-percent: 0

match-quotas:
#  premium:
#    permission: pgm.join.full
#    priority: 10
#    premium: true
#    interval: 24h
#    max: 4
#  default:
#    priority: 100
#    premium: false
#    interval: 20h
#    max: 1

mutations:
  enabled: true

license:
  control-access: true
  auto-grant: true
  auto-revoke: true

freeze:
  enabled: true
  remove-tnt:
    victim-radius: 10
    sender-radius: 10
