When editing formats.yml, you will rely on placeholders to inject dynamic data into the chat.

Internal Placeholders

These placeholders are processed directly by Scribe and are available everywhere in formats.yml:

Placeholder Description
{player} The raw Minecraft username of the player.
{display_name} The player’s active nickname. Falls back to username.
{message} The actual text the player typed.
{time} The time the message was sent (formatted via config.yml).
{tag} The player’s equipped chat tag (from /tags).
{prefix} The player’s LuckPerms prefix. Empty when LuckPerms is not installed or disabled.
{suffix} The player’s LuckPerms suffix. Empty when LuckPerms is not installed or disabled.

Roleplay Placeholders

These are specific to the roleplay section in formats.yml.

Placeholder Description
{action} The action described in /me, /do, or /try.
{result} The number rolled in /roll.
{max} The maximum bounds of the /roll command.

PlaceholderAPI (PAPI)

Scribe supports full PlaceholderAPI integration. If you have PlaceholderAPI installed, you can use any %placeholder% directly inside formats.yml or config.yml.

For example, to display a player’s faction or town in their chat format:

default: "<gray>[%towny_town%]</gray> <primary>{display_name}</primary>: <white>{message}</white>"

MiniPlaceholders

MiniPlaceholders is not implemented in the current MVP. Keep integrations.miniplaceholders disabled unless a future release explicitly adds support.