Configuration Overview¶
DonutSMPCore is fully YAML-driven. Almost every message, permission string, GUI layout, and feature toggle lives in config files under plugins/DonutSMPCore/.
Top-level files¶
| File | Purpose |
|---|---|
config.yml |
License key + module enable/disable |
storage.yml |
Database backend (SQLite / MySQL / MongoDB) |
redis.yml |
Cross-server network settings |
Module configs¶
Each enabled module has its own folder:
plugins/DonutSMPCore/
├── auction/config.yml
├── combat/config.yml
├── core/config.yml
├── duels/config.yml
├── economy/config.yml
├── home/config.yml
├── punishments/config.yml
├── shards/config.yml
├── tpa/config.yml
├── worth/config.yml
├── worth/gui/sell.yml
└── …
Module folders also contain:
messages.yml— chat messages (hex color supported:�F986)gui/— GUI layouts (where applicable)
Config versioning¶
Every module config includes a version or config-version field. On startup, DonutSMPCore migrates older configs automatically and adds missing keys with defaults.
Do not delete version keys
Removing the version field may cause duplicate keys or lost customizations on upgrade.
Feature flags (core)¶
plugins/DonutSMPCore/core/config.yml toggles individual command groups:
features:
admin-commands:
enabled: true
alts:
enabled: true
commandspy:
enabled: true
maintenance:
enabled: true
voice:
enabled: true
back:
enabled: true
# … see core/config.yml for full list
Disabling a feature prevents its commands from registering.
Messages¶
Messages support:
- Legacy
&color codes - Hex colors:
�F986or#00F986 - Placeholders:
%player%,%donutsmpcore:module:key%, PlaceholderAPI when enabled
Reloading¶
| Scope | Command |
|---|---|
| Entire plugin | /donutsmpcore reload |
| Individual module | Module-specific reload commands (e.g. /punishmentsreload, /ah reload, /duelsadmin reload) |
Cross-server config sync¶
When Redis network is active and main-server-id is set, configs sync from the main server to all backends. redis.yml is never synced (each server keeps its own server-id).
See Redis & Network.