L-duel
A duel plugin where players queue up to duel.
L-duel
THIS PLUGIN IS IN BETA PHASE!
A comprehensive duel plugin for Minecraft servers running version 1.21.1 with 1.21.x support.
Features
Multi-Language Support
- English 🇬🇧 - Turkish 🇹🇷 - Configurable language selection in `config.yml`
Data Storage
- Local file-based storage - MySQL database support (coming soon) - Player statistics tracking: - Total duels - Wins - Losses - Win ratio - Leaderboard rankings
Duel System
- GUI menu system (`/duel`) - Direct player challenges (`/duel <playername>`) - Queue-based matchmaking - Player vs player combat - Customizable arenas - Draw command for mutual agreement (`/draw`) - Configurable duel timeout (default 5 minutes) - Automatic victory when opponent leaves during duel - Configurable command restrictions with permission bypass - Restricted movement and interactions during duel preparation - Opponent info display in action bar before duels (name and win percentage) - Enhanced item collection period (winner can drop items, open inventory, and collect items)
Arena Management
- Admin commands for arena creation/deletion - Interactive Duel Wand for arena selection - Individual spawn point configuration - Arena validation before activation - Automatic arena reset after duels - BedWars-style boundary restrictions (players can only build/break within arena bounds)
Item System
- Players duel with their own inventories - Losing player's items drop on the ground - Winner can collect dropped items for a limited time - Clear messaging about item collection period and teleportation - Automatic teleportation of both players to spawn after duels - Complete arena restoration after duels (placed blocks removed, broken blocks restored)
Admin Features
- Enhanced arena management with interactive wand selection - Player spectating - Arena watching capabilities - Force stop duels - Detailed statistics - Replay system for watching past duels - Configurable replay recording (can be enabled/disabled in config) - Dedicated admin commands and permissions
Commands
Player Commands
- `/duel` - Open duel menu - `/duel <playername>` - Send a duel request to a specific player - `/duel accept` - Accept a duel request - `/duel deny` - Deny a duel request - `/duel stats [player]` - View duel statistics - `/duel help` - Show help page - `/draw` - Request a draw in an active duel (both players must use to agree)
Admin Commands
- `/duel admin arena create <name>` - Create a new temporary arena (requires Duel Wand selection) - `/duel admin arena setspawn1 <name>` - Set spawn point 1 for a temporary arena - `/duel admin arena setspawn2 <name>` - Set spawn point 2 for a temporary arena - `/duel admin arena save <name>` - Save and activate a temporary arena - `/duel admin arena delete <name>` - Delete an arena - `/duel admin arena list` - List all arenas - `/duel admin arena watch <arena>` - Watch an active arena - `/duel admin spectate <player>` - Spectate a player's duel - `/duel admin watch <arena>` - Watch an active arena (alternative) - `/duel admin forcestop <arena>` - Forcefully stop a duel - `/duel admin reload` - Reload configuration and language files - `/duel admin setspawn` - Set the global spawn point for players after duels - `/duel admin replay list` - List all available duel replays - `/duel admin replay watch <replayId>` - Watch a saved duel replay - `/duel admin replay delete <replayId>` - Delete a saved duel replay
Duel Wand Commands
- `/duelwand` or `/duelw` - Get the Duel Wand for arena selection - Left-click to select position #1 - Right-click to select position #2
Permissions
- `duel.use` - Use basic duel commands (default: true) - `duel.admin` - Access admin commands (default: op) - `duel.draw` - Use the /draw command (default: true) - `duel.bypass.command` - Bypass command restrictions during duels (default: op)
Configuration
The plugin can be configured through `config.yml`:
```
Language Settings
language: en # Available: en (English), tr (Turkish)
Storage Settings
storage-type: file # file or mysql
MySQL Configuration (only used if storage-type is mysql)
mysql: host: localhost port: 3306 database: duel_plugin username: root password: password table-prefix: dp_
Duel Settings
duel: item-collection-time: 10 # Time in seconds that winner can collect items cooldown: 30 # Cooldown between duels in seconds max-duration: 5 # Maximum duel duration in minutes (0 for no timeout) allowed-commands: # Commands allowed during duels (empty list allows all) - msg - tell - w - whisper - draw
Replay settings
replay: enabled: true # Enable or disable replay recording
Arena Settings
arena:
Spawn point for players after duel (set via admin command)
Use /duel admin setspawn to set the spawn point
```
Installation
1. Download the plugin JAR file 2. Place it in your server's `plugins` folder 3. Restart your server 4. Configure the plugin in `plugins/L-duel/config.yml` 5. Use `/duelwand` to get the arena selection tool 6. Set the global spawn point using `/duel admin setspawn` 7. Create temporary arenas using `/duel admin arena create <name>` 8. Set spawn points using `/duel admin arena setspawn1 <name>` and `/duel admin arena setspawn2 <name>` 9. Save and activate arenas using `/duel admin arena save <name>` 10. Reload configuration with `/duel admin reload` after making changes
PlaceholderAPI Support
The plugin supports PlaceholderAPI with the following placeholders: - `%duel_total_duels%` - Total duels played - `%duel_wins%` - Total wins - `%duel_losses%` - Total losses - `%duel_win_ratio%` - Win ratio percentage - `%duel_rank_wins%` - Player's rank by wins (numeric) - `%duel_rank_wins_formatted%` - Player's rank by wins (#1, #2, etc.) - `%duel_top_winner%` - Player with the most wins - `%duel_top_loser%` - Player with the most losses - `%duel_top_winner_1%` to `%duel_top_winner_10%` - Players ranked 1st to 10th by wins
SUPPORT
discord: squezsaz