Skip to content

Messages

Leaf26 edited this page Jun 17, 2026 · 2 revisions

messages.yml holds every player- and console-facing string RTP emits. It is the file to edit for wording, color, and formatting changes - read it before requesting formatting support, since most "can I change this text?" questions are answered by a single key here.

Edit on disk and /rtp reload, or change one key at runtime with /rtp config messages <key>=<value>.

Formatting

Message values accept, in any combination:

  • Bukkit legacy color codes - e.g. &a, &e, &c.
  • Hex color codes - e.g. #2636ef.
  • MiniMessage tags - e.g. <gradient:#5e4fa2:#f79459>, <rainbow>, <#rrggbb>.
    • On Paper/Folia all MiniMessage tags are supported.
    • On Spigot, gradient/rainbow/transition tags are expanded to per-character hex codes; other MiniMessage tags are stripped by the legacy pipeline.
  • PlaceholderAPI placeholders - resolved when PlaceholderAPI is installed.

Placeholders

  • Shared [Pn] placeholders come from the placeholders: list at the top of the file. [P0] is the plugin prefix (a rainbow [RTP] by default) and is reused in nearly every message. Add more entries to the list to define [P1], [P2], etc.
  • Per-message placeholders (e.g. [attempts], [world], [delay], [remainingCooldown], [money], [spot]) are documented in a comment directly above each message that uses them. Only the placeholders listed for a given key are substituted in that message.

Disabling a message

To silence a message entirely, set its value to an empty string. An empty (or absent) value is treated as "send nothing": RTP skips the output instead of printing a blank line, and this applies to every channel a key can drive - chat, titles, subtitles, action bars, and boss bars.

# Stop the "Teleporting in [delay]" countdown from showing at all:
delayMessage: ""

# Disable the cooldown reminder:
cooldownMessage: ""

You can do the same at runtime:

/rtp config messages delayMessage=

Note Disabling a message only hides the text; it does not disable the underlying behavior (the cooldown, delay, or gate still applies). Empty the value only when you want the action to stay silent. To change wording instead of hiding it, give the key a non-empty value.

Layout

The file is divided into commented sections so related strings stay together:

Section Contents
1. General Configuration The shared placeholders list.
2. Teleportation Player-facing teleport flow: delay, success, cancel, cooldown, lockout, no-locations, queue position, not-enough-money.
3. Time Formatting Unit suffixes for time placeholders (days, hours, minutes, seconds, millis).
4. System & Management Reload, version, permission-denied, and other management strings.
5. Administrative Logs Console audit/log lines.
6. Scan Command /rtp scan progress and result strings.
7. Info Command /rtp info output.
8 / 8b. Command Descriptions & Menu Framework Help text and the generalized book/chat menu rows, headers, and dividers.
9. PlaceholderAPI Support PAPI-specific strings.
10. Visuals Visualization-related strings.
11. Metadata Internal version marker (do not change).
12. Developer Options Developer-facing toggles/strings.

Notes

  • Icon glyphs are intentional. Some values embed single-codepoint UI icons (type-a-value, paginator arrows, run/row markers, the section sign). Preserve them verbatim; do not ASCII-fold or delete them.
  • Localization. When a non-English locale is active (see language.yml), the translated messages.yml is read from lang/<code>/ instead of this baseline file. Mirror any custom key you add into each locale you ship, or it falls back to English.
  • version is an internal config version - do not change it.

Clone this wiki locally