Content generated with AI — it may contain mistakes.

Reference

Configuration

Every key in config.yml, with its default and what it changes.

config.yml is version 2 and carries eighteen sections. Every one is generated on first boot with the defaults below.

Every value here is read fresh on each access, so /epc reload is enough to apply an edit — with the one exception noted under duel below.

arena

KeyDefaultWhat it does
max-clones-per-arena10Hard ceiling of simultaneous copies of one arena
clone-spacing1500Blocks of empty space between clones
clone-paste-y64The Y a clone's copy region is pasted at

pvp-regions

KeyWhat it does
combat-tag-bossbarThe boss bar shown while combat-tagged in a PvP zone. %time% is the seconds left.

season

KeyDefaultWhat it does
progress-bossbarThe bar shown during a rotation, with %phase% and %percent%
restart-after-rotationtrueRestart the server once a rotation finishes
restart-delay-seconds15The countdown before that restart

game

KeyDefaultWhat it does
countdown-seconds5Length of the pre-match countdown
countdown-titleShown each second, with %time%
fight-titleShown when the match starts
you-won-title / you-lost-title / draw-titleThe three results
match-actionbarThe live combat readout
barrier-blocks-pearltrueAn ender pearl hitting a barrier block is stopped
countdown-tick-soundBLOCK_NOTE_BLOCK_HAT|1.0|1.0
countdown-fight-soundENTITY_ENDER_DRAGON_GROWL|0.5|1.3
you-won-soundUI_TOAST_CHALLENGE_COMPLETE|1.0|1.0
you-lost-soundENTITY_VILLAGER_DEATH|1.0|1.0
draw-soundBLOCK_NOTE_BLOCK_PLING|1.0|0.5

queue

KeyDefaultWhat it does
in-queue-actionbarThe bar a queued player sees: %kits%, %time%, %elo%
match-found-titleShown when a pairing happens
match-found-actionbarShown while the arena is prepared, with %spinner%
no-clone-extra-delay40Ticks added when no clone was needed, so an instant match is not jarring
teaser-enabledtrueThe rotating queue advertisement
teaser-rotation-seconds5How long each queued player is featured
teaser-max-kits-shown3Kits listed before collapsing to +N
teaser-bossbarIts appearance, with %player% and %kits%

party

KeyDefaultWhat it does
min-size2The smallest a leader may set the maximum to
default-max-size10The maximum for a leader with no max_slots node
max-size100The absolute ceiling, whatever the permission says
ffa-spawn-radius7How far around the FFA spawn players are scattered
announce-cooldown-seconds60Rate limit on /party announce

duel

KeyDefaultWhat it does
request-expiry-seconds30How long a challenge stays open
round-end-delay-ticks80The pause between rounds
round-won-title / round-lost-title / round-draw-titleWith %my_wins% and %their_wins%
request-expiry-seconds is read once

The expiry is baked into a cache when the plugin enables. It is the one key in this file that a /epc reload cannot pick up — changing it needs a restart.

leaderboard

KeyDefaultWhat it does
max-entries50Rows a leaderboard holds. Also the cut-off %exyliapracticecore_stats_rank_position% reports as #51+.

elo

KeyDefaultWhat it does
starting-mmr400Where a new player starts
matchmaking-base-radius150Initial search band
matchmaking-expand-rate50Added per interval
matchmaking-expand-interval-seconds15How often it widens
matchmaking-max-radius600The widest it gets
matchmaking-ignore-elofalsePair anybody with anybody
lp-max-per-game25Cap on the movement per match
asymmetric-threshold-mmr200Rating gap at which loss reduction starts
asymmetric-reduction-per-100-mmr5LP added back per 100 MMR of gap
asymmetric-min-loss5Bound on the reduced loss
placement-game-count10Ranked games before placements end
placement-k-multiplier2.0K multiplier during placements
flat-elo-enabledfalseReplace the formula with two fixed numbers
flat-elo-win25
flat-elo-loss25

elo-security

KeyDefaultWhat it does
enabledtrueThe master switch
same-ip-protectiontrueNever pair two players from one address
opponent-cooldowntrueNever re-pair two players too soon
opponent-cooldown-seconds300How soon is too soon

spectator

KeyDefault
toggle-hiding-materialGRAY_DYE
toggle-hiding-name{error}Spectators Hidden
toggle-visible-materialLIME_DYE
toggle-visible-name{success}Spectators Visible

join-quit

KeyDefaultWhat it does
join-enabledtrueBroadcast the plugin's own join message
quit-enabledtrueThe same for quitting

Vanilla join and quit messages are suppressed either way.

ui

KeyDefaultWhat it does
status-enabled-materialLIME_DYEThe "on" icon in every toggle menu
status-disabled-materialGRAY_DYEThe "off" icon

jumpad

KeyDefault
launch-cooldown-ms500
only-lobby-areatrue
launch-soundENTITY_SLIME_JUMP|1.0|1.2

lobby-visibility

The defaults a player who has never opened /settings gets.

KeyDefaultWhat it does
show-vip-defaulttrueSee players with exyliapractice.lobby.vip
show-party-defaulttrueSee your own party
show-others-defaultfalseSee everybody else

lobby

KeyDefault
double-jump-enabledtrue
double-jump-vertical-power0.9
double-jump-forward-power0.6
double-jump-cooldown-ms500
double-jump-soundENTITY_ENDER_DRAGON_FLAP|0.6|1.8
effects[SPEED|2]

command-whitelist

KeyDefaultWhat it does
enabledtrueRestrict commands in a match, in a queue and in a PvP zone
commandssee belowThe allowed list
commands: [msg, message, tell, w, whisper, reply, r, respond,
           leave, lq, leavequeue, epc, exyliapracticecore, kitsave, leave]

web-api

KeyDefaultWhat it does
enabledfalseTurn the whole integration on
key""Your server key. Blank keeps it off even when enabled is true.
sync-on-startuptruePush ranks and kits shortly after boot
player-count-interval-seconds300How often the online count is reported

See the web API page.

Migration from ExyliaCommons

A config.yml with no config-version is treated as version 1 — the ExyliaCommons layout — and migrated in place. Every title, action bar and boss bar block is moved into the nested section the library expects, title durations are converted from ticks to seconds, and the obsolete %time_decimal% token is rewritten to %time%.

The six sections ExyliaCommons registered against this same file — debug, formatters, text, tasks, chat-input, discord — were the library's own settings and are removed on first load, each reported once as UNKNOWN_KEY. They live in ExyliaLib's files now.

Something missing on this page? Tell us on Discord