Chat formats control how messages appear in chat. Each format is a YAML file in the formats/ folder, composed of parts โ individual text segments with their own hover tooltips and click actions.
Format Files
File
Purpose
formats/chat.yml
Default chat format (global fallback)
formats/msg-sender.yml
Private message format (sender side)
formats/msg-receiver.yml
Private message format (receiver side)
formats/staff-chat.yml
Staff channel format
formats/groups/*.yml
Group-specific format overrides
Structure
Each format file contains named parts separated by a configurable part-separator:
part-separator:""player:text:"{prefix}{tag} {name}"hover:-"{prefix}{tag} {name}"-"&7Messages: &f%lpcpro_messages%"-""-"&aClick to send a private message!"suggest:"/msg {name} "divider:text:"&7โฅ"message:text:"&f{message}"hover:"&eClick to report {name}'s message!"suggest:"/report {name} "
This produces chat like: [Owner] Steve โฅ Hello everyone!
Part Properties
Each part supports the following properties:
text (required)
The text displayed in chat. Supports placeholders, color codes, and MiniMessage formatting. Can be a string or a list of strings (joined with newlines).
hover
Tooltip text shown when a player hovers over this part. Can be a single string or a list:
Click Actions
Only one click action per part (first match wins):
Property
Action
Example
suggest
Pre-fills text in the chat box
suggest: "/msg {name} "
run
Executes a command immediately
run: "/ignore {name}"
open
Opens a URL in the browser
open: "https://example.com"
copy
Copies text to clipboard
copy: "{name}"
click
Generic format ACTION:value
click: "SUGGEST_COMMAND:/msg {name} "
Placeholders
Built-in Placeholders
Placeholder
Description
{name} / {player}
Player name (with nickname if set)
{nickname}
Nickname (or name if not set)
{displayname}
Player display name
{prefix}
Rank prefix (from Vault/LuckPerms)
{suffix}
Rank suffix
{tag}
Chat tag (includes leading space when set)
{world}
Current world name
{message}
The chat message content
PlaceholderAPI
Any %placeholder% from PlaceholderAPI is supported in text and hover fields. Common examples:
LPC Pro supports multiple color and formatting syntaxes:
Syntax
Example
Description
& codes
&a, &l, &o
Legacy color and formatting codes
MiniMessage
<green>, <bold>, <rainbow>
Adventure MiniMessage tags
Hex colors
&#FF5555 or <#FF5555>
Full hex color support
Gradients
<gradient:red:gold>text</gradient>
Gradient text (MiniMessage)
Group-Specific Formats
You can create format overrides per group by placing files in formats/groups/. The file name must match the player's LuckPerms/Vault primary group name:
If no group-specific format exists, the default formats/chat.yml is used.
Private Message Formats
Private message formats use additional placeholders: