Introduction¶
DonutSMPCore is an all-in-one SMP core plugin developed by OPmasterLEO. It provides a complete suite of features for running a Donut-style SMP server — economy, auction house, order market, homes, teams, TPA, crates, shops, RTP, bounties, duels, combat tagging, leaderboards, punishments, and much more — in a single plugin.
Every feature can be individually toggled in config.yml. DonutSMPCore supports single-server setups out of the box and scales to multi-server networks with Redis and a shared MySQL database.
What is included¶
| Category | Features |
|---|---|
| Economy | Vault economy, /pay, /sell (close or button GUI), worth system, shop GUI |
| Trading | Auction house, order market (buy orders), bounties |
| PvP | Combat tagging, 1v1 duels with arena schematics, Elo, queues |
| Progression | Shards currency, stats, leaderboards, spawn holograms |
| Social | Teams, homes, TPA, warps, private messages, reports |
| Gameplay | Crates, RTP, fly, double jump, custom spawners, Billford trader |
| Staff | Full punishment suite, reports, command spy, staff tools |
| Network | Cross-server TPA, economy, teams, inventory sync via Redis |
| API | Java DonutSMPApi, public HTTP /v1/ routes, webhooks |
Supported platforms¶
- Paper 1.21.x (primary)
- Folia — supported (
folia-supported: true) - Canvas — supported (
canvas-supported: true)
Quick links¶
- Installation
- Dependencies
- Module configuration
- Duels
- Combat
- Database setup
- Redis setup
- Economy setup
- Commands
- Permissions
- Java API
File layout¶
After first run, configuration lives in plugins/DonutSMPCore/:
DonutSMPCore/
├── config.yml # License key + module toggles
├── storage.yml # SQLite / MySQL / MongoDB
├── redis.yml # Cross-server network (optional)
├── core/config.yml # Spawn, chat, staff features
├── economy/config.yml # Currency settings
├── worth/ # Sell prices + sell GUI
├── duels/ # Arenas, messages, spawn
├── combat/config.yml # Combat tags
├── auction/config.yml
├── order/config.yml
├── punishments/config.yml
└── … (one folder per module)
Reload¶
Requires donutsmpcore.reload (included in donutsmpcore.admin).