Configuration
This page covers common formatting used across SkinEngine configs.
| File | Location in /plugins/SkinEngine/ |
|---|---|
| Main config | config.yml |
| Translations | translations/ |
| GUIs | guis.yml |
Common components
This page covers the shared formatting rules you will use across messages, GUI text, and other visible parts of the plugin.
MiniMessage formatting
SkinEngine uses MiniMessage for message text, GUI names, GUI lore, and other visible text.
For the full reference, see the official MiniMessage guide.
This page is a quick reference for the parts you will actually use most often.
Basic rules
- MiniMessage uses tags like
<red>Text</red>. - You can nest multiple tags inside each other.
- Some tags can take arguments, for example
<click:run_command:/help>Help</click>.
Combining tags
You can combine tags freely. Close them with </tag> when you want formatting to stop.
Example
<white>White text with a <gold>gold part</gold> and then back to white.</white>
Colors
MiniMessage supports all normal Minecraft named colors:
| Tag | Example |
|---|---|
<black> |
<black>Text</black> |
<dark_blue> |
<dark_blue>Text</dark_blue> |
<dark_green> |
<dark_green>Text</dark_green> |
<dark_aqua> |
<dark_aqua>Text</dark_aqua> |
<dark_red> |
<dark_red>Text</dark_red> |
<dark_purple> |
<dark_purple>Text</dark_purple> |
<gold> |
<gold>Text</gold> |
<gray> |
<gray>Text</gray> |
<dark_gray> |
<dark_gray>Text</dark_gray> |
<blue> |
<blue>Text</blue> |
<green> |
<green>Text</green> |
<aqua> |
<aqua>Text</aqua> |
<red> |
<red>Text</red> |
<light_purple> |
<light_purple>Text</light_purple> |
<yellow> |
<yellow>Text</yellow> |
<white> |
<white>Text</white> |
Aliases:
grayandgreyboth workdark_grayanddark_greyboth work
Hex colors also work:
<#FFFFFF>White text</#FFFFFF>
<#FDA130>Orange text</#FDA130>
You can also use the verbose color form:
<color:red>Red text</color>
<color:#FDA130>Orange text</color>
Decorations
| Tag | Example |
|---|---|
<bold> or <b> |
<bold>Bold text</bold> |
<italic> or <i> or <em> |
<italic>Italic text</italic> |
<underlined> or <u> |
<underlined>Underlined text</underlined> |
<strikethrough> or <st> |
<strikethrough>Strikethrough text</strikethrough> |
<obfuscated> or <obf> |
<obfuscated>Secret text</obfuscated> |
You can turn a decoration off with :false or by using !:
<bold>Bold <bold:false>normal
<!italic>Not italic
Reset
<reset> clears all current formatting at that point.
Example
<gray><bold>Styled text <reset>normal text
New lines
Use <newline> or <br> to force a new line inside MiniMessage text.
Example
<gray>Line 1<newline>Line 2
Gradients
<gradient:red:green:blue>Gradient text</gradient>
<gradient:#FFFFFF:#FDA130>Gradient text</gradient>
MiniMessage also supports:
<rainbow>for rainbow text<transition:...>for picking one color from a gradient at a chosen phase
Example
<rainbow>Rainbow text</rainbow>
<transition:red:yellow:0.25>Transition text</transition>
Interactive tags
These are useful in chat messages, but not every context in Minecraft will render every interactive feature the same way.
Click
Use <click:action:value>.
Example
<click:run_command:/skinengine>Open SkinEngine</click>
Hover
Use <hover:show_text:"...">.
Example
<hover:show_text:"<gray>Extra info">Hover me</hover>
Insertion
Use <insert:text> if you want shift-click insertion behavior in supported chat contexts.
Example
<insert:/skinengine>Shift-click me</insert>
MiniMessage with SkinEngine tags
MiniMessage also works together with SkinEngine's own tags such as:
{$msg:key}{$msglist:key}{$sound:...}
Example:
text_error: "#ffa79e"
blocked_item: '<{$msg:text_error}>You cannot apply skins to this item.</{$msg:text_error}>'
[!INFO] SkinEngine's tags are parsed first. This makes them useful in combination with MiniMessage, as you can make reusable formats.
In this example, {$msg:text_error} is inserted first, then MiniMessage reads the final result like a normal color tag.