Skip to content

messages.yml

The file is plugins/Carousel/messages.yml. Missing keys inherit defaults without overwriting your file. Empty strings suppress messages; mount and dismount feedback is empty by default.

New templates use Adventure MiniMessage:

commands:
created-carousel: "<green>Created and started carousel <white>{0}</white>.</green>"
no-permission: "<red>You do not have permission to use this command.</red>"
carousel:
mount: "<gray>Enjoy the ride, <aqua>%player_name%</aqua>!</gray>"
dismount: ""

Legacy &a, &c and similar templates still work. Use one formatting system per template; do not mix legacy codes and MiniMessage tags. Parsing is lenient, so unknown tags may remain visible.

Numbered arguments such as {0} and {1} are inserted literally. IDs and command syntax cannot introduce colors or click actions. Apostrophes remain ordinary text. Use arguments in visible text, not inside MiniMessage tag attributes.

When installed, PlaceholderAPI expands %...% tokens in templates for players. Console output has no player context. Expansion results may include legacy colors, but do not become MiniMessage markup. Tokens inside numbered argument values remain literal.

GroupContent
commandsErrors, changes, cleanup, reload and root information.
carouselRiding permission feedback and optional rider messages.
editorChat feedback for editor actions and bounds.
panelsHelp, list and environment headings, descriptions, rows and footers.
detailsHover descriptions for commands.

Inventory titles, item names and lore retain their built-in legacy formatting. Panel interactions are attached by the renderer: clicks suggest a command without immediately changing a ride.

Use /carousel reload. Malformed YAML and non-text message values are rejected before replacing active messages. Read the console error, repair the file and retry. A message-file validation failure retains existing messages and does not restart rides; successful reload also restarts saved rides.