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:

  • gray and grey both work
  • dark_gray and dark_grey both 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.