Overview
Supercharge every message on your server. MiniMessage, sparks, bolts and custom commands, in any plugin.
Lightning
v0.2.1 betaSupercharge every message on your server.
FreePaper and FoliaMinecraft 1.21 to 26.xJava 21+
Coming from before 0.2.0?
Lightning was rebuilt from scratch in 0.2.0, so configs from older versions won't work with it. Move your old plugins/Lightning folder somewhere safe, let Lightning create a fresh one, and bring your settings over by hand. Getting started walks you through it.
What it does
Every server runs many plugins, and each one formats text its own way. Some speak MiniMessage, some only know &c, and some won't let you change a word.
Lightning sits at the very end of the line, right before a message leaves your server. If the text holds a real tag, Lightning lights it up. Your own tags fill in, actions fire, and the plugin that wrote the message never has to know Lightning exists.
You don't mark anything, either. <gradient:gold:yellow>Welcome</gradient> lights up, while /home <name> stays exactly as written.
Features
Smart detection
Only text with a real tag gets touched. Everything else passes straight through.
Everywhere players read
Chat, action bars, titles, boss bars, tab list, scoreboards, menus, items, holograms, dialogs, kick screens and the server list.
Sparks
Your own tags, written once and used anywhere: colors, prefixes, math, rotating lines, ranks and languages.
Bolts
Tags that do something: move a message to the action bar, show a title, play a sound or hide it.
Faces
<face> puts the reader's own head right in the text. Needs 1.21.9 or newer.
Rewires
Restyle messages you can't edit anywhere else, like vanilla's ban screen or text baked into a plugin.
Custom commands
Real commands with tab completion, arguments, subcommands, cooldowns and limits.
Kitchen tools
Find where a message came from, catch broken tags in every config, and convert old & codes.
Guard
Whatever players type always shows as plain text, so nobody can sneak tags into your messages.
Light on the server
Text without tags is skipped after one quick look, and repeated text is only prepared once.
Quick example
Write MiniMessage straight into any plugin's config, the same way you would anywhere else:
welcome: "<gradient:#FFE259:#FFA751>Welcome back, %player_name%!</gradient>"
balance: "<spark:prefix> You have <spark:balance>"
home-set: "<actionbar><green>Home set.<sound:entity.player.levelup>"The first line is plain MiniMessage. The second uses two of your own sparks. The third moves the message to the action bar and plays a sound, using bolts.
Where to next
Last updated on