Skip to main content

Configuration

The plugin uses config.json for all settings. This page documents every available option.

Complete Configuration Example

{
"language": "en-US",
"loadDefaultAchievements": true,

"display": {
"displayMode": "both",
"titlePosition": "prefix",
"nametagFormat": "{title} {name}",
"chatFormat": "{title} {name}: {message}",
"titleColor": "#FFD700"
},

"notifications": {
"enabled": true,
"displayMode": "both",
"displayDurationMs": 5000,
"showRewardsInBanner": true,
"broadcastToChat": false,
"broadcastFormat": "{player} unlocked: {achievement}"
},

"tracking": {
"saveIntervalSeconds": 300,
"enableExploration": true,
"enableCombat": true,
"enableProgression": true,
"enableSocial": true
},

"admin": {
"cascadeRevoke": true,
"cascadeRevokeWarning": true,
"bypassPrerequisites": true
},

"export": {
"enabled": false,
"intervalSeconds": 300,
"exportGlobalStats": true,
"exportLeaderboards": true,
"exportRecentUnlocks": true,
"leaderboardSize": 100,
"recentUnlocksSize": 50,
"includePlayerTotals": true
},

"groupPrefixes": {
"admin": {
"prefix": "<red>[Admin]</red> ",
"priority": 100
},
"vip": {
"prefix": "<gold>[VIP]</gold> ",
"priority": 50
}
}
}

Configuration Sections

General Settings

OptionTypeDefaultDescription
languagestring"en-US"Language for UI and messages. Options: "en-US", "de-DE"
loadDefaultAchievementsbooleantrueLoad built-in achievements. Set to false for fully custom setups

Display Settings

Controls how titles appear on player nametags and in chat.

"display": {
"displayMode": "both",
"titlePosition": "prefix",
"nametagFormat": "{title} {name}",
"chatFormat": "{title} {name}: {message}",
"titleColor": "#FFD700"
}
OptionTypeDefaultDescription
displayModestring"both"Where to show titles: "nametag", "chat", or "both"
titlePositionstring"prefix"Title position: "prefix" (before name), "above", or "below"
nametagFormatstring"\{title\} \{name\}"Format for nametag display
chatFormatstring"\{title\} \{name\}: \{message\}"Format for chat messages
titleColorstring"#FFD700"Default color for titles (hex)

Placeholders:

  • \{title\} - Player's active title
  • \{name\} - Player's username
  • \{message\} - Chat message content (chat format only)

Notification Settings

Controls achievement unlock notifications.

"notifications": {
"enabled": true,
"displayMode": "both",
"displayDurationMs": 5000,
"showRewardsInBanner": true,
"broadcastToChat": false,
"broadcastFormat": "{player} unlocked: {achievement}"
}
OptionTypeDefaultDescription
enabledbooleantrueEnable/disable notifications
displayModestring"both"Notification type: "chat", "banner", or "both"
displayDurationMsnumber5000Toast banner duration in milliseconds
showRewardsInBannerbooleantrueShow rewards in toast notification
broadcastToChatbooleanfalseAnnounce unlocks to all players
broadcastFormatstring"\{player\} unlocked: \{achievement\}"Broadcast message format

Tracking Settings

Controls which achievement categories are tracked.

"tracking": {
"saveIntervalSeconds": 300,
"enableExploration": true,
"enableCombat": true,
"enableProgression": true,
"enableSocial": true
}
OptionTypeDefaultDescription
saveIntervalSecondsnumber300Auto-save interval (5 minutes default)
enableExplorationbooleantrueTrack exploration achievements
enableCombatbooleantrueTrack combat achievements
enableProgressionbooleantrueTrack progression achievements
enableSocialbooleantrueTrack social achievements

Admin Settings

Controls administrative behavior.

"admin": {
"cascadeRevoke": true,
"cascadeRevokeWarning": true,
"bypassPrerequisites": true
}
OptionTypeDefaultDescription
cascadeRevokebooleantrueRevoke dependent achievements when parent is revoked
cascadeRevokeWarningbooleantrueWarn admin before cascade revoke
bypassPrerequisitesbooleantrueAdmin grant bypasses prerequisites

Export Settings

Controls statistics export for external tools.

"export": {
"enabled": false,
"intervalSeconds": 300,
"exportGlobalStats": true,
"exportLeaderboards": true,
"exportRecentUnlocks": true,
"leaderboardSize": 100,
"recentUnlocksSize": 50,
"includePlayerTotals": true
}
OptionTypeDefaultDescription
enabledbooleanfalseEnable statistics export
intervalSecondsnumber300Export frequency
exportGlobalStatsbooleantrueInclude global statistics
exportLeaderboardsbooleantrueInclude player leaderboards
exportRecentUnlocksbooleantrueInclude recent unlock history
leaderboardSizenumber100Number of top players
recentUnlocksSizenumber50Number of recent unlocks
includePlayerTotalsbooleantrueInclude per-player totals

Group Prefixes (LuckPerms Integration)

Configure custom prefixes per LuckPerms group.

"groupPrefixes": {
"admin": {
"prefix": "<red>[Admin]</red> ",
"priority": 100
},
"moderator": {
"prefix": "<blue>[Mod]</blue> ",
"priority": 75
},
"vip": {
"prefix": "<gold>[VIP]</gold> ",
"priority": 50
},
"default": {
"prefix": "",
"priority": 0
}
}
OptionTypeDescription
prefixstringPrefix text with MiniMessage formatting
prioritynumberHigher priority takes precedence

Supported Color Formats:

  • MiniMessage tags: <red>, <gold>, <#FF5555>
  • Gradients: <gradient:#FF0000:#00FF00>Text</gradient>
  • Rainbow: <rainbow>Text</rainbow>
  • Legacy codes: &a, &b, &c, etc.
LuckPerms Integration

If LuckPerms is installed, the plugin automatically retrieves prefixes from LuckPerms groups. The groupPrefixes config serves as a fallback or override.