Plugin Release MiniMessageAnywhere - rich json messages anywhere!

  • After careful consideration and due to limited usage, we’ve made the decision to discontinue the PaperMC forums. Moving forward, we recommend using Hangar for plugin uploads, and for all other community discussions and support, please join us on Discord.
Minecraft uses json-text with a lots of powerful capabilities for a long time. But there's a problem: Bukkit API is stuck on outdated legacy format. This plugin meant to avoid this limitation.


Plugin will work only on 1.16.5+ and only on Paper.

Features

  • Parse mini message anywhere! Chat, Titles, Scoreboard, Boss bars, Entities, Items and many more other places.
    Simply put [mm]<message>[/mm] in any plugin's config.
  • Global placeholders! You can define placeholders to use globally on the server.
  • Chat filtering to avoid json-text player abuse.
  • Configurable transformations.
How to use the plugin?
First, take a look at MiniMessage documentation:
[BUTTON=[URL]https://docs.adventure.kyori.net/minimessage.html#format]MiniMessage[/URL] docs[/BUTTON]
Usage is super simple! Just put the message you want in [mm][/mm] tags.
Example:
YAML:
text: '[mm]<red>Red text!</red>[/mm]'
name: '[mm]<gradient:blue:red>Gradient go brr</gradient>[/mm]'
How does this work?
Plugin handles messages at protocol level. Every packet that contains chat components is handled. Thats why plugin needs ProtocolLib.
Configuration
YAML:
 # What packets should we handle?
listenTo:
   # Should we handle bossbars?
  bossbar: true
   # Should we handle chat messages?
  chat: true
   # Should we handle entity nametags?
  entities: true
   # Should we handle inventory titles?
  inventory-titles: true
   # Should we handle items and books?
  items:
     # Disables italic in name and lore of the item.
    disable-italic: false
    enabled: true

   # Should we handle kick/disconnect messages?
  kick-disconnect: true
   # Shoudl we handle MoTD?
  motd: true
   # Should we handle player names?
  player-info: true
   # Should we handle scoreboard teams?
  scoreboard: true
   # Should we handle tab?
  tab: true
   # Should we handle titles? (/title)
  titles: true

 # The parsing strategy. Possible values: ALL, REGEX
 # ALL - All messages, without regex check are going to be handled.
 # REGEX - Only prefixed & suffixed messages will be handled.
 # For example: [mm]Hello <red> world[/mm] will work.
parsing-strategy: 'REGEX'
 # REGEX strategy options.
regex:
   # Prefix.
  prefix: '[mm]'
   # Suffix.
  suffix: '[/mm]'

 # Chat filter. Players without mmanywhere.ignore wouldnt be able to use minimessage.
filter-chat:
   # Should we filter items renamed in anvil?
  anvil: true
   # Should we filter books?
  books: true
   # Should we filter chat?
  chat: true

 # Should we parse messages using paper events? It is going to look fancy in console.
pretty-chat: true
minimessage-settings:
   # Global placeholders.
  placeholders:
    hello: '<red>world'

   # Allowed transformations. Possible values:
   # COLOR, DECORATION, HOVER_EVENT, CLICK_EVENT, KEYBIND
   # TRANSLATABLE, INSERTION, FONT, GRADIENT, RAINBOW.
   # if you want to include all transformations, just use *.
  transformations:
    - '*'

messages:
  info: '<gradient:#0073e6:#003cb3>MiniMessageAnywhere</gradient> <bold>|</bold> v 2.0'
  no-permission: '<gradient:#0073e6:#003cb3>MiniMessageAnywhere</gradient> <bold>|</bold> <#e60000>У вас нету права на это!'
  reloaded: '<gradient:#0073e6:#003cb3>MiniMessageAnywhere</gradient> <bold>|</bold> Плагин успешно перезагружен!'
  unknown-command: '<gradient:#0073e6:#003cb3>MiniMessageAnywhere</gradient> <bold>|</bold> Неизвестная команда!'
Screenshots

1642447447949.png
1642447463439.png
1642447482348.png


Found a bug?
Please open issue on github:
https://github.com/gepron1x/minimessage-anywhere/issues
 
Last edited: