DonutDuels
ᴀ ᴄᴏᴍᴘʀᴇʜᴇɴsɪᴠᴇ ᴅᴜᴇʟɪɴɢ ᴘʟᴜɢɪɴ ꜰᴏʀ ᴍɪɴᴇᴄʀᴀꜰᴛ
Version: 1.0.0 |
Author: GamingHuzai
✨ Features
⚔️ Dueling System - Challenge players to intense 1v1 battles with customizable arenas and time limits
Statistics & Leaderboards - Track wins, losses, K/D ratios, and win streaks with persistent player data
Arena Management - Create unlimited arenas with automatic regeneration and spawn point configuration
Queue System - Join casual matchmaking queues for automatic opponent pairing
Spectator Mode - Watch ongoing duels from any player's perspective
⚙️ Dual Storage - Choose between lightweight YAML or robust SQLite database storage
License System - Automatic IP-based license key generation for server security
Interactive Menus - Beautiful GUI menus for queue management and duel requests
Commands
Player Commands
| /duel player; |
Challenge a player to a duel |
donutduels.duel |
| /duel accept <player> |
Accept a duel request |
donutduels.duel |
| /duel decline <player> |
Decline a duel request |
donutduels.duel |
| /duel toggle |
Toggle duel requests on/off |
donutduels.duel |
| /duel stats [player] |
View duel statistics |
donutduels.duel |
| /duel top |
Show top 10 leaderboard |
donutduels.duel |
| /duel queue |
Join/leave casual queue |
donutduels.duel |
| /duel draw |
Request or accept a draw |
donutduels.duel |
| /spec <player> |
Spectate a player's duel |
donutduels.spectate |
| /spec leave |
Stop spectating |
donutduels.spectate |
| /queue [join|leave] |
Manage queue status |
donutduels.duel |
| /leave |
Exit match during loot phase |
donutduels.duel |
Admin Commands
| /dd help |
Show all admin commands |
donutduels.admin |
| /dd reload |
Reload plugin configuration |
donutduels.admin |
| /dd wand |
Get arena selection wand |
donutduels.admin |
| /dd setspawn |
Set global spawn location |
donutduels.admin |
| /dd createarena <name> |
Create new arena |
donutduels.admin |
| /dd setspawn <arena> 1|2 |
Set arena spawn points |
donutduels.admin |
| /dd delete arena <name> |
Delete an arena |
donutduels.admin |
| /dd arenaregen on|off |
Toggle arena regeneration |
donutduels.admin |
| /dd forcestop <player> |
Force-stop a player's duel |
donutduels.admin |
Permissions
| donutduels.admin |
Access to all admin commands |
op |
| donutduels.duel |
Use duel commands |
true |
| donutduels.spectate |
Spectate duels |
true |
Requirements
- Minecraft Version: 1.16.5 or higher (Spigot/Paper)
- Java Version: Java 8 or higher
- Dependencies: None required (SQLite JDBC optional for database mode)
- Build System: Maven
Configuration
config.yml Example
Code (YAML):
SETTINGS:
LOOT-TIME
: 60
# In seconds
MATCH-TIME
: 15
# In minutes
REGION
:
"NA East"
# Server region name
MAX-MATCH-TIME
: 15
# Maximum selectable match time
PROTECTED-BLOCKS
:
-
"SHORT_GRASS"
-
"STONE_BRICKS"
-
"IRON_BLOCK"
MESSAGES:
JOINED-QUEUE
:
"&7You joined the casual queue."
MATCH_WINNER_MESSAGE
:
"&eYou have won the duel!"
DUEL_REQUEST_SENT
:
"&aDuel request sent to %target%!"
database.yml Example
Code (YAML):
TYPE
:
"YAML"
# Options: YAML or SQLITE
YAML Mode: Lightweight, human-readable, no dependencies
SQLite Mode: For larger servers (requires sqlite-jdbc driver)
Installation
- Download DonutDuels-1.0.0.jar from the target/ directory
- Place in your server's plugins/ folder
- Restart your server
- License key will be automatically generated
- Configure files in plugins/DonutDuels/
- Use /dd wand to create arenas
- Set spawn points with /dd setspawn <arena> 1|2
Building from Source
Code (Text):
mvn clean package
The compiled JAR will be in target/DonutDuels-1.0.0.jar
Configuration Files
| config.yml |
Match settings, messages, sounds, protected blocks |
| menus.yml |
GUI menu configurations and items |
| database.yml |
Storage type selection (YAML/SQLite) |
| arenas.yml |
Auto-generated arena data and spawn points |
| license.yml |
Auto-generated license key storage |
Statistics Tracked
- Wins & Losses
- Draw matches
- Win Rate percentage
- Current win streak
- Best win streak
- Total kills & deaths
- K/D ratio
- Top 10 leaderboard rankings
Customization
Messages: All plugin messages support Minecraft color codes using & symbol
Example: &aGreen text &cRed text &eYellow text
Sounds: Fully customizable sound effects for queue, duel start, and victory
Menus: Complete GUI customization through menus.yml
Support
Made with ❤️ by GamingHuzai
Enjoy DonutDuels!