Messages Config
Source file:
modules/chat/Private Message/config.yml
Important
Set privacy and target-validation rules first, then tune formatting and receive notifications.
Module Preview

Configuration Files
modules/chat/Private Message/config.yml
Targeting and Privacy Rules
Self and Reply Behavior
settings:
allow-message-self: false
reply-expiry-seconds: 300
- Purpose: Controls self-message policy and
/replymemory window. - Options:
allow-message-self: falseprevents accidental self-PM spam.- Increase
reply-expiry-secondsfor long-form conversations.
Availability and Visibility Filters
settings:
block-vanished-targets: true
block-spectator-targets: true
hide-unavailable-target-names: true
vanish-respect-can-see: true
- Purpose: Prevents messaging unavailable/hidden players and avoids information leaks.
- Options:
- Keep these enabled on moderated servers.
Message Format Pipeline
Each block in formats defines:
structureplayersegmentmsgsegment- optional hover/action behaviors
Sender Format
formats:
sender:
structure: "<dark_gray>[</dark_gray>%player%<dark_gray>]</dark_gray> %msg%"
player:
format: "<yellow><smallfont:you></yellow> <dark_gray>-></dark_gray> <smallfont:%target%>"
msg:
format: "<dark_gray>></dark_gray> <white>%message%</white>"
- Purpose: Defines how outgoing private message appears to sender.
Target Format
formats:
target:
structure: "<dark_gray>[</dark_gray>%player%<dark_gray>]</dark_gray> %msg%"
player:
format: "<smallfont:%sender%> <dark_gray>-></dark_gray> <yellow><smallfont:you></yellow>"
msg:
format: "<dark_gray>></dark_gray> <white>%message%</white>"
- Purpose: Defines how incoming private message appears to recipient.
Self Format
formats:
self:
structure: "<dark_gray>[</dark_gray>%player%<dark_gray>]</dark_gray> %msg%"
player:
format: "<yellow><smallfont:you></yellow> <dark_gray>-></dark_gray> <yellow><smallfont:yourself></yellow>"
msg:
format: "<dark_gray>></dark_gray> <white>%message%</white>"
- Purpose: Defines loopback message style when self-messaging is enabled.
Interactive Actions
Suggest Reply / Report Actions
player:
action:
suggest_command:
- "PLAYER_COMMAND:/msg %target% "
msg:
action:
run_command:
- "PLAYER_COMMAND:/report %target% private-message"
- Purpose: Adds quick-action controls from PM lines.
- Options:
- Keep report action consistent with moderation workflow.
On-Receive Notifications
Title Notification
on-receive:
title:
enabled: true
title: "<gold>New Message</gold>"
subtitle: "<gray>From: <white>%sender%</white></gray>"
fade-in: 5
stay: 40
fade-out: 10
- Purpose: High-visibility PM alert.
- Options:
- Lower
stayfor less intrusive display time.
- Lower
Actionbar and Sound
on-receive:
actionbar:
enabled: true
text: "<yellow>%sender%</yellow> <gray>messaged you.</gray>"
sound:
enabled: true
name: "ENTITY_EXPERIENCE_ORB_PICKUP"
volume: 1.0
pitch: 1.2
- Purpose: Lightweight PM awareness channels.
- Options:
- Disable one channel if alerts feel redundant.
Recommended Profiles
Quiet PM Profile
on-receive:
title:
enabled: false
actionbar:
enabled: true
sound:
enabled: false
- Result: Minimal-disruption notification style.
High-Attention PM Profile
on-receive:
title:
enabled: true
actionbar:
enabled: true
sound:
enabled: true
- Result: Strong notification visibility for busy chats.
Owner Validation
- Test
/msgand/replyflow including expiry timeout. - Test vanished/spectator target restrictions.
- Test sender/target/self format rendering with placeholders.
- Test suggest/reply and report click actions.
- Test receive notifications in dark/light/sunset themes.