Skip to content

config.yml

Save interval, EXP sources and rates, multiplier, premium pass, progress bar, reward and progression icons, and sounds.

Global settings. After editing, run /battlepassadmin reload.

Defaults below are the shipped values. If you delete a key, the value in the Code default column is used instead (they differ in a couple of places, so prefer editing a key over deleting it).

Settings:
Save-Interval: 60
Key Default Description
Save-Interval 60 Seconds between saves of changed player data to the database. 0 or lower turns the timer off (data is then saved on quit, shutdown, and on every claim, purchase and tier-up).

How players earn pass EXP.

Experience:
Chance: 100.0
Min-Amount: 1
Max-Amount: 1
Ignore-Creative: true
Worlds: []
Blocks: []
Events:
Block-Break: true
Block-Place: false
Mob-Kill: false
PinnaPrison: false
EdDungeons: false
RivalHarvesterHoe: false
OptimalGens: false
Key Default Code default Description
Chance 100.0 100.0 Percent chance that an action pays EXP at all.
Min-Amount 1 1 Lowest EXP paid per successful roll. Values below 1 become 1.
Max-Amount 1 1 Highest EXP paid per successful roll. Raised to Min-Amount if lower. The amount is a random whole number between the two, inclusive.
Ignore-Creative true true Players in creative mode earn nothing.
Worlds [] [] World names where EXP can be earned (case-insensitive). Empty = every world.
Blocks [] [] Block materials that pay EXP. Empty = every block. An invalid material fails the load. Ignored by sources without a block (Mob-Kill, and any hook that reports no block).
Events Which sources pay EXP, see below.

The amount rolled is then multiplied by the player’s multiplier, with probabilistic rounding: at 1.25x, a 1 EXP award pays 2 EXP a quarter of the time.

Key Default Source
Block-Break true Breaking a block.
Block-Place false Placing a block.
Mob-Kill false Killing a non-player entity.
PinnaPrison false PinnaPrison block mining.
EdDungeons false EdDungeons sword swings.
RivalHarvesterHoe false RivalHarvesterHoes block breaks.
OptimalGens false Blocks dug by hand in an OptimalGens mining or farming region. Every block in the harvest rolls Chance and the amount on its own, then the total is paid as one award.

The four plugin sources only work when that plugin is installed at startup. The toggles themselves are read live, so a reload turns a source on or off immediately.

The personal EXP multiplier players can buy with the potion button in the menu.

Multiplier:
Purchasable: true
Economy: RivalCredits
Price: 250
Step: 0.1
Max: 1.5
Key Default Code default Description
Purchasable true true false disables buying; a click sends MULTIPLIER-NOT-PURCHASABLE.
Economy RivalCredits RivalCredits The currency charged. See currencies.
Price 250 250 Price per step, a whole number. Negative values become 0.
Step 0.1 0.1 Added to the multiplier per purchase. Must be above 0 or the load fails.
Max 1.5 1.5 Highest multiplier a purchase can reach. Values below 1.0 become 1.0. The last step is cut to land exactly on Max.

Multipliers start at 1.0. They are shown with one or two decimals (1.0, 1.1, 1.25).

The Premium Pass, bought with the profile head in the menu. It unlocks claiming the premium reward track.

Premium-Pass:
Purchasable: true
Economy: RivalCredits
Price: 2500
Free-Status: "&fFree"
Premium-Status: "&bPremium"
Key Default Code default Description
Purchasable true false false disables buying in-game; a click sends PREMIUM-NOT-PURCHASABLE. Use this when the pass is sold on a webstore.
Economy RivalCredits RivalCredits The currency charged. See currencies.
Price 2500 2500 One-time price, a whole number. Negative values become 0.
Free-Status &fFree &fFree What {status} shows in the menu for a player without the pass.
Premium-Status &bPremium &bPremium What {status} shows for a player with the pass.

Multiplier.Economy and Premium-Pass.Economy each take one of:

Value Currency
Vault Your Vault economy (needs Vault plus an economy plugin).
PlayerPoints PlayerPoints points.
RivalCredits RivalCredits credits.
<PROVIDER>_<currency> A currency registered by another Optimal plugin, e.g. OPTIMALCREDITS_CREDITS, OPTIMALMOBCOINS_MOBCOINS or OPTIMALGENS_<currency id>.

Names are case-insensitive. Only purchasable products hook their currency. If the currency is missing at load, the console logs a warning and clicks are refused with PURCHASE-UNAVAILABLE. A value that matches none of the forms above fails the load. More in Selling the Pass.

The bar drawn by {progress-bar} in the progression icons.

Progress-Bar:
Length: 30
Symbol: "|"
Complete-Color: "&a"
Remaining-Color: "&c"
Key Default Code default Description
Length 30 26 Number of symbols in the bar. Minimum 1.
Symbol | | The character repeated to draw the bar.
Complete-Color &a &a Color of the filled part.
Remaining-Color &c &c Color of the empty part.

{percent} next to it is the same progress as a number with two decimals (37.50). A tier with Required-Exp: 0 shows a full bar and 100.00.

The icons shown in the free and premium reward rows. One template per claim state; the tier only supplies its reward Lore lines (from rewards.yml).

Reward-Icons:
Free-Label: "&8Free Reward"
Premium-Label: "&8Premium Reward"
Unclaimed:
Material: CHEST_MINECART
Primary: "&e"
Secondary: "&6"
Name: "{primary}&lTier {secondary}&l{tier}"
Lore:
- "{type}"
- ""
- "{primary}Rewards:"
- "{reward-lore}"
- ""
- "{primary}&lUNCLAIMED"
Locked:
Material: TNT_MINECART
Primary: "&c"
Secondary: "&4"
# same Name and Lore, ending in "{primary}&lLOCKED"
Claimed:
Material: MINECART
Primary: "&a"
Secondary: "&2"
# same Name and Lore, ending in "{primary}&lCLAIMED"
Key Default Description
Free-Label &8Free Reward What {type} shows on a free reward icon.
Premium-Label &8Premium Reward What {type} shows on a premium reward icon.
Unclaimed Shown when the player has reached the tier and not claimed that reward yet.
Locked Shown when the player has not reached the tier’s Required-Exp.
Claimed Shown once that reward is claimed.

All three states are required. Each is a normal item plus two color fields:

Field Code default Description
Primary &f Fills {primary} in this icon and in the tier’s reward Lore.
Secondary &7 Fills {secondary} the same way.

That is how one reward line like " {secondary}- &f3x Pearl Keys" renders gold, red or green depending on state.

A premium reward shows its normal state even for players without the pass; the pass is checked when they click it.

Token Value
{tier} The tier number.
{type} Free-Label or Premium-Label.
{primary} / {secondary} This state’s colors.
{exp} The player’s pass EXP, comma-grouped.
{required} The tier’s Required-Exp, comma-grouped.
{reward-lore} A lore line containing it is replaced by every line of the tier reward’s Lore. Give it a line of its own.

The middle row: one icon per tier showing progress toward it.

Progression-Icons:
Complete:
Material: LIME_STAINED_GLASS_PANE
Name: "&a&lTier &2&l{tier}"
Lore:
- "&8Tier Progression"
- " "
- "&a&lCOMPLETE"
Locked:
Material: RED_STAINED_GLASS_PANE
Name: "&c&lTier &4&l{tier}"
Lore:
- "&8Tier Progression"
- ""
- "&cProgress:"
- "&4 - &7EXP: &a{exp}&8/&c{required}"
- "&4 - &7{progress-bar} &7({percent}%)"
- ""
- "&c&lLOCKED"
Key Shown when
Complete The player’s EXP has reached the tier’s Required-Exp.
Locked It has not.

Both are required. Tokens: {tier}, {exp}, {required}, {progress-bar}, {percent}. The stack size is always the tier number (capped at 64), so any Amount you set is replaced.

Named sounds in "NAME;volume;pitch" form. Set a key to "" to silence it.

Inventories-Sounds:
"MENU-OPEN": "ENTITY_BAT_TAKEOFF;1;0.5"
"EXP-GAINED": ""
"TIER-UP": "UI_TOAST_CHALLENGE_COMPLETE;1;1"
"CLAIM": "ENTITY_PLAYER_LEVELUP;1;1.5"
"PURCHASE": "ENTITY_PLAYER_LEVELUP;1;1.5"
"PAGE-CHANGED": "ENTITY_CHICKEN_EGG;1;1"
"NO-PAGE-FOUND": "BLOCK_NOTE_BLOCK_PLING;1;0.5"
"DENY": "ENTITY_VILLAGER_NO;1;0.5"
Key Played when
MENU-OPEN The battle pass menu or a confirm menu opens.
EXP-GAINED Every EXP award. Ships silent, see the note on EXP-GAINED in messages.yml.
TIER-UP The player reaches a new tier.
CLAIM A reward is claimed.
PURCHASE A multiplier step or the Premium Pass is bought.
PAGE-CHANGED The menu turns a page.
NO-PAGE-FOUND A page arrow is clicked on the first or last page.
DENY Any refused click (locked, already claimed, no pass, no funds, maxed, disabled).

A sound key you delete from the file falls back to the shipped value; use "" to really silence it.