Messages & localisation
All player-facing text lives in messages.yml, so server owners can reword or
translate it without touching the jar.
plugins/ProjectOne/messages.yml
prefix: '<gray>[<aqua>ProjectOne<gray>]<reset> '
no-permission: '<red>You do not have permission to do that.'
player-not-found: '<red>No player named <yellow><player><red> is online.'
reloaded: '<green>Configuration reloaded in <ms>ms.'
Formatting
Messages use MiniMessage tags
such as <red> and <bold>, not the legacy &c codes.
Legacy codes still work for now but are deprecated — say clearly which your plugin accepts, because mixing the two is a common source of "why is my colour literal text" reports.
Placeholders in messages
| Placeholder | Replaced with |
|---|---|
<player> | The relevant player's name |
<ms> | Elapsed time in milliseconds |
<prefix> | The prefix value from this file |
These are message placeholders, filled in by the plugin. PlaceholderAPI placeholders that other plugins can read from this one are documented under Placeholders — worth keeping the two clearly apart, since the names collide constantly.
Translating
Copy messages.yml, translate the values, keep the keys. Do not translate keys
or placeholder names.