messages.yml
Edit, disable and translate every message OptimalMilestones sends, plus screen titles and action bars.
Every message lives in messages.yml. Each supports legacy & codes, &#hex, MiniMessage and (with
PlaceholderAPI) %...%. After editing, run /milestonesadmin reload.
Format
Section titled “Format”Messages: MILESTONE-CLAIMED: Message: Enabled: true Value: - '&5[&d&lMilestones&5] &7You claimed the rewards of &f{category} Milestone {milestone}&7.'Enabled: falsesilences a message entirely.Valuecan be a single string or a list. Every line of a list is sent (used for the multi-line admin help panel).- A line containing
[center]is centred 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: MILESTONE-UNLOCKED: Message: Enabled: true Value: - '&5[&d&lMilestones&5] &7You can now claim &f{category} Milestone {milestone} &7in &f/milestones&7!' Title: Enabled: true Title: '&2&m━━━&r &a&l{category} Milestone &f&l{milestone} &a&lUnlocked &2&m━━━&r' Sub-Title: '&7Claim your reward in &f/milestones&7!' Fade-In: 10 Stay: 70 Fade-Out: 20| Key | Default | Description |
|---|---|---|
Enabled |
- | false hides only the title, the chat message is untouched. |
Title |
'' |
The large centre line. |
Sub-Title |
'' |
The smaller line beneath it. |
Fade-In |
10 |
Fade-in time in ticks (20 ticks = 1 second). |
Stay |
70 |
How long the title stays, in ticks. |
Fade-Out |
20 |
Fade-out time in ticks. |
The same {tokens} the message uses work in the title and subtitle. Titles only show to players.
MILESTONE-UNLOCKED ships with a title, and it is written back if you delete it (set
Enabled: false to turn it off instead). Add a Title: block to any other key the same way.
Action bars
Section titled “Action bars”Any message can also show one line above the hotbar. Add an Action-Bar: block next to Message::
Messages: MILESTONE-CLAIMED: Message: Enabled: true Value: - '&5[&d&lMilestones&5] &7You claimed the rewards of &f{category} Milestone {milestone}&7.' Action-Bar: Enabled: true Value: '&a+ {category} Milestone {milestone}'None of the default messages use an action bar.
Message keys
Section titled “Message keys”| Key | Sent when |
|---|---|
PLAYER-ONLY |
The console runs /milestones. |
NO-PERMISSION |
A player without permission runs /milestones or /milestonesadmin. |
INVALID-PLAYER |
An admin command names a player the server has never seen. |
PROFILE-LOAD-FAILED |
A player’s data could not be loaded. Shown as the login refusal / kick message. |
INVALID-NUMBER |
The admin <amount> is not a whole number of 0 or more. |
INVALID-CATEGORY |
A command names a category that does not exist (or, for /milestones, is disabled). |
CATEGORY-NOT-TRACKED |
/milestonesadmin progress targets a PLACEHOLDER category. |
MILESTONE-CLAIMED |
A milestone is claimed. |
MILESTONE-LOCKED |
A milestone below its threshold is clicked. |
ALREADY-CLAIMED |
An already claimed milestone is clicked. |
MILESTONE-UNLOCKED |
Progress reaches a milestone (from the unlock check). |
PROGRESS-GIVEN |
/milestonesadmin progress give finished. |
PROGRESS-TAKEN |
/milestonesadmin progress take finished. |
PROGRESS-SET |
/milestonesadmin progress set finished. |
MILESTONES-RESET |
/milestonesadmin reset finished. |
RELOAD |
/milestonesadmin reload finished. |
MILESTONES-ADMIN-HELP |
/milestonesadmin with no or wrong arguments. |
Tokens per message
Section titled “Tokens per message”| Message | Tokens |
|---|---|
MILESTONE-CLAIMED, MILESTONE-LOCKED, MILESTONE-UNLOCKED |
{category}, {milestone} (Roman numeral), {number}, {progress}, {required} |
INVALID-CATEGORY, CATEGORY-NOT-TRACKED |
{category} |
PROGRESS-GIVEN, PROGRESS-TAKEN, PROGRESS-SET |
{player}, {category}, {amount} (comma-grouped) |
INVALID-PLAYER, MILESTONES-RESET |
{player} |
INVALID-NUMBER |
{input} |
RELOAD |
{ms} (reload time in milliseconds) |
The other keys take no tokens. A token only resolves in the messages that provide it.
MILESTONE-UNLOCKEDcomes from the unlock check, not from opening the menu. How often it runs isSettings.Notify-Intervalin config.yml. Disabling the message, its title and theMILESTONE-UNLOCKEDsound makes unlocks silent.CATEGORY-NOT-TRACKEDis the answer when an admin tries to change aPLACEHOLDERcategory. Those have no counter of their own - change whatever feeds the placeholder instead.PROFILE-LOAD-FAILEDprotects player data: if it cannot be loaded, the player is not let in rather than playing with an empty profile.- Player names typed by admins are shown as plain text, so color codes or tags in them are not applied.
