We are excited to announce a complete transformation! What you previously knew as Duels has evolved into
CosDuels, an optimized, more robust 1v1 dueling system with the features the community has been asking for.
What’s new in this version?
Official Rebranding: CosDuels
We have updated the plugin’s identity. You will now see the name
CosDuels — all under the authorship of CristobalColon!
️
New Spectator System
Want to learn from the best or just watch the action?
- Command: /duel spectate <arena>
- Visual Interface: You can now join ongoing matches and watch in spectator mode.
- Dynamic Messages: The plugin will notify you which arena you’re watching and how to leave it.
Instant Exit (Leave System)
No more waiting! We know sometimes you’re in a hurry to get back to the lobby or just want to end your spectator session.
- Usage: /duel leave
- Functionality: If you’re in an active duel, you can leave (it will count as a loss and you’ll drop your items). If you’re a spectator, you’ll be instantly returned to the lobby.
- No Delays: You no longer have to wait for the “Returning to lobby...” timer after a duel ends.
File Management & Data Persistence
In CosDuels, your data security is a priority. We’ve designed the file structure to ensure your configurations and player progress remain intact, even when updating the plugin to new versions.
Simply make sure to move your arena and stats files when updating or reinstalling the plugin to keep all your progress:
- arenas.yml: This crucial file stores all your created arenas, including spawn locations, region corners, lobby, and duel types. This file is independent of the main configuration.
- To preserve your arenas: Copy plugins/CosDuels/arenas.yml to a safe location before a major update or reinstall. Then paste it back into the plugins/CosDuels/ folder and your arenas will load automatically.
- stats.yml: Contains all player statistics (wins, deaths, kills) and rankings. This file is also completely independent.
- To preserve stats: Similarly, back up plugins/CosDuels/stats.yml and restore it after updating. Your players’ progress will continue without interruption.
- data.yml: This file manages general plugin configuration such as prefix, language, and default messages. While it is the main config file, it is designed not to overwrite your arenas or stats.
- You can safely delete data.yml to regenerate default settings and messages (useful for getting new options in future versions) without affecting arenas.yml or stats.yml.
Full Changelog:
- Rebranding: Changed from Duels to CosDuels in plugin.yml and internal logic.
- Command Improvements:
- Refactored /duel command to support spectate, leave, accept, and deny more efficiently.
- Smart TabComplete: Automatic suggestions of active arenas when using /duel spectate.
- Arena Management:
- Implemented handleLeave to safely manage teleports and inventory cleanup.
- Improved border protection: Configurable damage if players try to leave the combat area.
- User Interface (GUI):
- Optimized DuelGUIListener to reduce memory usage (GC pressure) by caching common buttons.
- New inventory holders for smoother navigation.
- Statistics & Performance:
- Asynchronous caching for Tops (Kills/Wins/Deaths) to prevent lag on the main thread.
- Atomic file saving to prevent data corruption in data.yml and arenas.yml.
- Multilingual Support: Updated messages in Spanish and English for all new spectator and leave features.
Updated Commands:
- /duel spectate <arena> — Watch a match.
- /duel leave — Leave the duel or spectator mode.
Thank you for trusting
CosDuels! We’ll keep working to bring you the best 1v1 combat experience in Minecraft.