File: config/frontier/config.conf
The main config controls queue behavior, match settings, anti-boost protection, replay recording, sound effects, and post-match teleportation. Here’s what the generated file looks like:
defaultQueueTimeoutSeconds = 600
maxRatingExpansionCap = 500.0
maxRatingExpansionPerSecond = 10.0
declineQueueCooldownSeconds = 30
maxMatchDurationTicks = 36000
turnTimerRegenPerTurn = 10
match3PlusMultiplier = 0.1
arenaReturnToOrigin = true
world = "minecraft:overworld"
Controls how the matchmaking queue processes and expands rating search ranges over time.
Field Type Default Description tickIntervalInt 20How often (in ticks) the queue processes matchmaking. 20 = once per second. maxRatingExpansionPerSecondDouble 10.0How many rating points the search range expands per second of waiting. maxRatingExpansionCapDouble 500.0Maximum total rating range expansion. At cap, a 1500-rated player can match anyone from 1000-2000. defaultQueueTimeoutSecondsInt 600Seconds before a player is automatically removed from the queue.
Controls the team preview timer, turn timer, and match duration limits.
Field Type Default Description teamPreviewSecondsInt 30Duration of the team preview phase before battle. turnTimerInitialInt 150Starting turn timer in seconds. turnTimerRegenPerTurnInt 10Seconds added back to the timer after each turn. turnTimerMaxInt 180Maximum the turn timer can reach with regen. declineQueueCooldownSecondsInt 30Cooldown applied when a player declines a found match. maxMatchDurationTicksLong 36000Maximum match duration in ticks (36000 = 30 minutes). 0 = no limit.
Prevents rating farming by punishing repeated matchups between the same players.
Field Type Default Description windowHoursInt 24Time window for tracking repeated matchups. match1MultiplierDouble 1.0Rating change multiplier for the first match against an opponent. match2MultiplierDouble 0.5Multiplier for the second match in the window. match3PlusMultiplierDouble 0.1Multiplier for the third+ match. blockSameIpBoolean falseBlock matchmaking between players on the same IP address.
Here’s how the multipliers work in practice: if a win would normally give +25 rating, the second match against the same opponent only gives +12.5, and the third gives +2.5. The window resets after windowHours.
Field Type Default Description enabledBoolean trueWhether to record match replays. directoryString "replays"Directory to store replay files, relative to the server root.
Controls where players go after a match ends.
Field Type Default Description arenaReturnToOriginBoolean trueTeleport players back to their original location after a match. fallbackSpawn.worldString "minecraft:overworld"Fallback world if the original location is unavailable. fallbackSpawn.x/y/zDouble 0.0, 64.0, 0.0Fallback coordinates.
Sound effects for every event. Set any sound to an empty string ("") to disable it.
join = "minecraft:block.note_block.chime"
leave = "minecraft:block.note_block.bass"
found = "minecraft:block.note_block.bell"
battleStart = "minecraft:entity.ender_dragon.growl"
victory = "minecraft:ui.toast.challenge_complete"
defeat = "minecraft:entity.wither.death"
arenaTeleport = "minecraft:entity.enderman.teleport"
confirm = "minecraft:block.note_block.pling"
select = "minecraft:ui.button.click"
opponentReady = "minecraft:block.note_block.bit"
received = "minecraft:entity.experience_orb.pickup"
accepted = "minecraft:block.note_block.chime"
declined = "minecraft:block.note_block.bass"
milestoneAchieved = "minecraft:entity.player.levelup"
turnTimerWarning = "minecraft:block.note_block.hat"
turnTimerExpired = "minecraft:entity.elder_guardian.curse"
seasonEnd = "minecraft:ui.toast.challenge_complete"
Field Type Default Description volumeFloat 1.0Master volume multiplier for all sounds (0.0 = silent, 1.0 = full). pitchFloat 1.0Pitch multiplier for all sounds (0.5 = lower, 2.0 = higher).
Field Default Plays When joinminecraft:block.note_block.chimePlayer joins the matchmaking queue. leaveminecraft:block.note_block.bassPlayer leaves the queue.
Field Default Plays When foundminecraft:block.note_block.bellA match is found. battleStartminecraft:entity.ender_dragon.growlThe battle begins. victoryminecraft:ui.toast.challenge_completePlayer wins a match. defeatminecraft:entity.wither.deathPlayer loses a match. arenaTeleportminecraft:entity.enderman.teleportPlayer is teleported to the arena.
Field Default Plays When confirmminecraft:block.note_block.plingPlayer confirms team selection. selectminecraft:ui.button.clickPlayer selects/deselects a Pokemon in preview. opponentReadyminecraft:block.note_block.bitOpponent has confirmed their team.
Field Default Plays When receivedminecraft:entity.experience_orb.pickupPlayer receives a challenge invitation. acceptedminecraft:block.note_block.chimeA challenge is accepted. declinedminecraft:block.note_block.bassA challenge is declined.
Field Default Plays When milestoneAchievedminecraft:entity.player.levelupPlayer reaches a season milestone. turnTimerWarningminecraft:block.note_block.hatTurn timer warning (60s, 30s, 10s). turnTimerExpiredminecraft:entity.elder_guardian.curseTurn timer runs out. seasonEndminecraft:ui.toast.challenge_completeA season ends (played to all online players).
Field Type Default Description debugBoolean falseVerbose debug logging. Only useful for development or troubleshooting.