GUIs and messages
gui.yml
Layout only. No text.
filler-material: BLUE_STAINED_GLASS_PANE
main-menu:
rows: 3
items:
info:
slot: 10
material: PAPER
members:
slot: 12
material: PLAYER_HEADSections: main-menu, members-menu, bank-menu, war-menu, clan-list-menu, leaderboard-menu, upgrades-menu, admin-menu.
Paginated menus (members-menu, clan-list-menu, upgrades-menu, admin-menu) fill slots 0 to 44 with entries and take previous and next items for navigation. Keep those two off the entry range and off each other's slot: in admin-menu the reload button already owns slot 53, which is why next sits at 52 there.
messages/
One file per language. en.yml and es.yml ship with the plugin and are kept at exact key parity.
Every string uses MiniMessage, so <aqua>, <gradient> and <hover> all work.
Structure
| Branch | Covers |
|---|---|
command.* | Usage lines and generic command errors |
clan.* | Every clan action, one key per possible outcome |
bank.* | Deposits, withdrawals and the movement log |
war.* | Declarations, scoring and results |
chat.* | Clan chat format, toggles and the global prefix |
relation.* | Alliances and rivalries |
leaderboard.*, stats.*, upgrade.*, admin.* | Their respective features |
gui.* | Every menu title, item name and lore line |
Placeholders inside messages
Tags like <player>, <clan>, <amount> or <score> are filled by the plugin. Which ones are available depends on the message; the shipped files show them in use.
chat.clan-prefix is special: <color> is a styling tag driven by each clan's chosen tag colour.
chat:
clan-prefix: "<color>[<tag>] </color>"Adding a language
Copy en.yml to messages/pt.yml and translate. Players whose client locale is pt get it automatically; everyone else falls back to language.default.
A missing key falls back to the default language, and then to the raw key itself, so a half-translated file never throws an error.