π¬ Messages
Every chat message is in messages.yml. Screens are in menus.yml, item text in items.yml.
Colours
Both formats work, everywhere:
# MiniMessage
subject-required: "<#eb4b30>Your letter needs a subject."
# Legacy
subject-required: "&cYour letter needs a subject."
MiniMessage gives you gradients, hover text and click events. Legacy codes are converted for you.
The prefix
prefix: "<b><#eb4b30>PO<#f3842c>LA<#f2c42f>RO<#95d027>ID <#289bd0>MAIL <#315a7a>β</b> "
<prefix> is a tag you can drop into any line. Change it once here and every message follows.
Placeholders
Each message takes the values relevant to it:
| Placeholder | Where |
|---|---|
%player% | Anything naming a player |
%count% | Claim-all, clear, broadcasts |
%max% | Length errors |
%seconds% | Cooldown |
%id% | Server-mail errors |
%sender% | New-mail notification |
Player-typed text is escaped before it reaches MiniMessage. A subject containing <click:run_command:...> is shown as literal text, never executed. That is not a setting β it is not optional and cannot be turned off.
Sections
errors: # something was refused
success: # something worked
notifications: # new mail, mail waiting
Errors worth knowing
| Key | Fires when |
|---|---|
player-not-found | The name has never joined this server |
player-offline | /mail open or /mail give-mailbox on someone not connected |
blocked-by-recipient | They blocked the sender |
insufficient-funds | Send cost plus attached money exceeds their balance |
blacklisted-item | An attachment is on the blacklist |
not-enough-slots | The mail does not fit, or declares free-slots the player lacks |
command-disabled | /mail used while mail-mode: BLOCK |
no-recipients | A broadcast that reached nobody |
player-offline is not about sending. Mail reaches offline players fine β that message is only for the two commands that need somebody present to show a screen or hand over an item.
Success worth knowing
| Key | Fires when |
|---|---|
mail-sent | A letter was stored |
broadcast-sent | Server mail queued, with %count% recipients |
mail-extracted | Staff took a copy in /mail admin. This is logged |
player-blocked / player-unblocked | The block list changed |