messages.yml
Edit, disable and translate every OptimalBattlePass message, add screen titles, and rename the reward types.
Every message lives in messages.yml, together with the reward type names. Each message supports
legacy & codes, &#hex, MiniMessage and (with PlaceholderAPI) %...%. After editing, run
/battlepassadmin reload.
Format
Section titled “Format”Messages: REWARD-CLAIMED: Message: Enabled: true Value: - '&5[&d&lPass&5] &7You claimed the &fTier {tier} {type} &7reward!'Enabled: falsesilences a message.Valueis a single string or a list; every line of a list is sent (used for the admin help panel).- Start a line with
[center]to center it in chat. - Keep the
{tokens}intact and don’t rename the message keys.
Missing keys are written back with their defaults the next time the file loads, so you can delete a block to reset it.
Titles
Section titled “Titles”Any message can also show a title and subtitle on the player’s screen. Add a Title: block next to
Message::
Messages: TIER-UP: Message: Enabled: true Value: - '&5[&d&lPass&5] &7You reached &fTier {tier}&7. Open &f/battlepass &7to claim your rewards!' Title: Enabled: true Title: '&2&m━━━&r &a&lTier &f&l{tier} &a&lCompleted &2&m━━━&r' Sub-Title: '&7Claim your reward in &f/battlepass&7!' Fade-In: 10 Stay: 60 Fade-Out: 10| Key | Default | Description |
|---|---|---|
Enabled |
false hides only the title; the chat message is independent. |
|
Title |
The large center line. Can be ''. |
|
Sub-Title |
The smaller line beneath it. Can be ''. |
|
Fade-In |
10 |
Fade-in time in ticks. |
Stay |
60 |
Time on screen in ticks. |
Fade-Out |
10 |
Fade-out time in ticks. |
The same {tokens} the message uses resolve in the title and subtitle. TIER-UP ships with this
title enabled, and it is written back if you remove it; set its Enabled: false to turn it off.
You can also add an Action-Bar: block with Enabled and Value (one line) to show a message above
the hotbar.
Reward-Types
Section titled “Reward-Types”Reward-Types: Free: "Free" Premium: "Premium"| Key | Default | Description |
|---|---|---|
Free |
Free |
What {type} shows in REWARD-CLAIMED for a free reward. |
Premium |
Premium |
What {type} shows in REWARD-CLAIMED for a premium reward. |
This section sits next to Messages, not inside it. Both keys are required. (The {type} label on
the reward icons is set separately, by Free-Label/Premium-Label in
config.yml.)
Message keys
Section titled “Message keys”Errors: PLAYER-ONLY, NO-PERMISSION, INVALID-PLAYER, INVALID-NUMBER,
PROFILE-LOAD-FAILED.
Progress: EXP-GAINED, TIER-UP.
Claiming: REWARD-CLAIMED, REWARD-LOCKED, ALREADY-CLAIMED, PREMIUM-REQUIRED.
Purchases: MULTIPLIER-PURCHASED, MULTIPLIER-MAXED, MULTIPLIER-NOT-PURCHASABLE,
PREMIUM-PURCHASED, PREMIUM-ALREADY-OWNED, PREMIUM-NOT-PURCHASABLE, INSUFFICIENT-FUNDS,
PURCHASE-UNAVAILABLE.
Admin: EXP-GIVEN, EXP-TAKEN, EXP-SET, MULTIPLIER-SET, PREMIUMPASS-GIVEN,
PREMIUMPASS-TAKEN, PASS-RESET, RELOAD, BATTLEPASS-ADMIN-HELP.
Tokens per message
Section titled “Tokens per message”| Message | Tokens | Sent when |
|---|---|---|
EXP-GAINED |
{amount}, {exp} |
Every EXP award (ships disabled). {amount} is the EXP just gained, {exp} the new total. |
TIER-UP |
{tier} |
A new tier is reached. If one award crosses several tiers, it is sent once with the highest. |
REWARD-CLAIMED |
{tier}, {type} |
A reward is claimed. {type} comes from Reward-Types. |
REWARD-LOCKED |
{tier}, {required}, {exp} |
A reward of an unreached tier is clicked. |
ALREADY-CLAIMED, PREMIUM-REQUIRED |
none | A claimed reward, or a premium reward without the pass, is clicked. |
MULTIPLIER-PURCHASED |
{multiplier} |
A multiplier step is bought. |
MULTIPLIER-MAXED |
{max} |
The multiplier is already at Max. |
INSUFFICIENT-FUNDS |
{price} |
The player can’t afford a purchase. |
MULTIPLIER-NOT-PURCHASABLE, PREMIUM-NOT-PURCHASABLE |
none | That product has Purchasable: false. |
PURCHASE-UNAVAILABLE |
none | That product’s currency is not available. |
PREMIUM-PURCHASED, PREMIUM-ALREADY-OWNED |
none | The pass is bought, or already owned. |
EXP-GIVEN, EXP-TAKEN, EXP-SET |
{player}, {amount} |
Admin EXP commands. |
MULTIPLIER-SET |
{player}, {multiplier} |
/battlepassadmin multiplier. |
PREMIUMPASS-GIVEN, PREMIUMPASS-TAKEN, PASS-RESET |
{player} |
Admin pass and reset commands. |
INVALID-PLAYER |
{player} |
The named player has never joined the server. |
INVALID-NUMBER |
{input} |
An amount is not a number, is negative, or a multiplier is below 1.0. |
RELOAD |
{ms} |
Reload finished, in milliseconds. |
PROFILE-LOAD-FAILED |
none | Shown as the kick / login refusal text when a player’s data cannot be loaded. |
A token only resolves in the messages that provide it.
EXP-GAINEDships disabled, along with its sound in config.yml. At the default 100% chance per block it would fire on every block. Enable it only with a lowExperience.Chance.- Admin commands work on offline players, so
INVALID-PLAYERis only sent for names the server has never seen. Servers set up before this wording changed keep their old “is not online” text inmessages.ymluntil they edit it. - Offline admin commands send their confirmation once the database write has finished.
