Duels¶
1v1 arenas with schematic paste clones, direct challenges, ranked queue, Elo, spectating, and post-match loot.
Module key: duels
Config: plugins/DonutSMPCore/duels/
Requirements¶
| Requirement | Why |
|---|---|
| FastAsyncWorldEdit (or WorldEdit) | Arena schematic paste / cleanup |
| Loaded world named in config | Default paste world: duels |
settings module (recommended) |
Duel request + after-duel song toggles |
Folder layout¶
duels/
├── config.yml # Match rules, arena grid, protection
├── messages.yml
├── sounds.yml
├── spawn.yml # Return spawn (/duelsadmin spawn)
├── arenas/ # Per-theme YAML (corners, spawns)
└── schematics/ # <theme>.schem files from wand save
First-time setup¶
- Create/load a dedicated world (example name:
duels). - Set return spawn:
- Build an arena somewhere, then: Select two corners with the wand, set player spawns, then save:
- Confirm theme appears in
/duelsadmin list/ schematics.
Each match pastes a clone of the schematic into the duel world grid (arena.clone-grid in config.yml) and clears it when the match ends.
Player commands¶
Permission: donutsmpcore.duels.use (default: true)
| Command | Description |
|---|---|
/duel <player> |
Open challenge GUI / send request |
/duel accept [player] |
Accept a request |
/duel deny [player] |
Deny a request |
/duel queue |
Join ranked / queue GUI |
/duel leave |
Leave queue or active flow |
/duel draw |
Request a draw |
/duel spectate <player> |
Spectate a match |
/queue |
Alias for queue |
/leave |
Alias for leave |
/draw |
Alias for draw |
/spectate <player> |
Alias for spectate |
Settings GUI toggles (when settings is enabled):
- Duel requests on/off
- After-duel songs on/off
Admin commands¶
Permission: donutsmpcore.duels.admin
| Command | Description |
|---|---|
/duelsadmin help |
Help |
/duelsadmin reload |
Reload duels configs |
/duelsadmin list |
List arena themes |
/duelsadmin schematics |
List schematic files |
/duelsadmin cleanup |
Force-clean stuck arenas |
/duelsadmin spawn |
Set post-duel return spawn |
/duelsadmin wand <theme> |
Give arena setup wand |
/duelsadmin corners |
Save selection as arena corners |
/duelsadmin playerspawn <1\|2> |
Set fighter spawn |
/duelsadmin save |
Write theme + schematic |
/duelsadmin cancel |
Cancel setup session |
Match behaviour (defaults)¶
Configured in duels/config.yml:
- Duration, loot window, heal/feed on start
- Block break protection outside arena
- Banned items list
- Optional shrinking world border
- Ender chest blocked until winner (optional)
- Active leave counts as forfeit
Tips¶
- Keep
arena.duel-worldempty of survival builds — clones paste on a grid. - Raise
clone-grid.max-active-clonesif many concurrent fights. - Use
/duelsadmin cleanupif a paste was left after a crash.
Related¶
- Combat tagging — tags still apply in open-world PvP; duels manage their own match state
- Permissions