Skip to content

messages.yml

Every message lives in messages.yml. Each supports legacy & codes, &#hex, MiniMessage and (with PlaceholderAPI) %...%. After editing, run /miraclecubeadmin reload.

Messages:
REWARD-SELECTED:
Message:
Enabled: true
Value:
- "&5[&d&lCubes&5] &7You selected &f{reward} &7and find it hidden on the miracle board."
  • Enabled: false silences a message entirely.
  • Value is a list - every line is sent (used for the multi-line admin help panel).
  • Keep the {tokens} intact; donโ€™t rename the message keys.

Missing keys are re-added with their defaults the next time the file loads, so you can delete a block to reset it.

Any message can also flash a title and subtitle on the playerโ€™s screen. Add a Title: block next to Message::

Messages:
REWARD-WON:
Message:
Enabled: true
Value:
- "&5[&d&lCubes&5] &7You found &f{reward} &7and you advanced to &fStage {stage}&7."
Title:
Enabled: true
Title: "&2&mโ”โ”โ”&r &a&lReward Found &2&mโ”โ”โ”&r"
Sub-Title: "&7The board reset stage {stage}&7."
  • Title is the large centre line, Sub-Title the smaller line beneath it. Either can be left ''.
  • The same {tokens} the message uses resolve in the title and subtitle.
  • Enabled: false hides only the title, leaving the chat message untouched.
  • The Title block and the chat Message are independent - keep both, or disable one and show the other.
  • Titles only show to players, with fixed 10/60/10-tick fade timings.

REWARD-WON ships with this title enabled. Add a Title: block to any other key the same way.

Errors: PLAYER-ONLY, NO-PERMISSION, INVALID-PLAYER, INVALID-NUMBER, REWARD-LOCKED, INSUFFICIENT-FRAGMENTS, DECRYPTION-PENDING.

Gameplay: FRAGMENTS-FOUND, REWARD-SELECTED, RANDOM-REWARD-WON, REWARD-WON.

Admin: FRAGMENTS-GIVEN, FRAGMENTS-TAKEN, FRAGMENTS-SET, STAGE-SET, BOARD-RESET, RELOAD, MIRACLE-ADMIN-HELP.

Message Tokens
FRAGMENTS-FOUND {amount}, {fragments} (new balance, comma-grouped)
REWARD-SELECTED {reward}
REWARD-LOCKED {required}, {stage}
INSUFFICIENT-FRAGMENTS {price}, {fragments}
RANDOM-REWARD-WON {reward} (the consolation prizeโ€™s display name)
REWARD-WON {reward}, {stage} (the new stage)
FRAGMENTS-GIVEN / -TAKEN / -SET {player}, {amount}
STAGE-SET {player}, {stage}
BOARD-RESET, INVALID-PLAYER {player}
INVALID-NUMBER {input}
RELOAD {ms} (reload time in milliseconds)

DECRYPTION-PENDING takes no tokens. A token only resolves in the messages that provide it.

  • FRAGMENTS-FOUND fires on every fragment drop. At a high Fragments.Chance that is a lot of chat - the default text is a short actionbar-style line for that reason. Set Enabled: false (and blank the FRAGMENT-FOUND sound in config.yml) to make drops silent.
  • RANDOM-REWARD-WON fires at the animation reveal, not on the click, so it lines up with the icon landing.
  • Console-sent admin messages skip PlaceholderAPI; %...% is only resolved for player targets.