ConquestDuels v5.6.0
High-performance 1v1 / party duels with arena queues, ELO, and PlaceholderAPI integration[/CENTER]
⚡ What’s New in v5.6.0
1️⃣ Massive Join-Lag Fix (No More Mojang 429 Spam)
We’ve refactored the internal stats listener to completely remove the heavy use of:
Code (Text):
Bukkit.getOfflinePlayer(String)
on player join. This means:
- No more console spam with Mojang HTTP 429 errors.
- No more main-thread blocking just because someone with an unknown/old name joins.
- Much smoother player joins on busy servers.
Stats are now created in a lightweight way when a player first joins, without poking Mojang or iterating over every stored username.
2️⃣ New PlaceholderAPI Placeholders for Player Stats
ConquestDuels now exposes per-player duel stats directly through PlaceholderAPI, so you can use them in:
- Scoreboards
- TAB lists
- Holograms
- GUIs / menus
- Chat formats
All placeholders below use the standard format:
Code (Text):
%ConquestDuels_<placeholder>%
Player Stats Placeholders
Code (Text):
%ConquestDuels_stats.kills%
%ConquestDuels_stats.deaths%
%ConquestDuels_stats.wins%
%ConquestDuels_stats.losses%
%ConquestDuels_stats.elo%
%ConquestDuels_stats.kdr%
%ConquestDuels_stats.winrate%
%ConquestDuels_stats.totalduels%
Details:
- %ConquestDuels_stats.kills% – Total duel kills.
- %ConquestDuels_stats.deaths% – Total duel deaths.
- %ConquestDuels_stats.wins% – Total duel wins.
- %ConquestDuels_stats.losses% – Total duel losses.
- %ConquestDuels_stats.elo% – Current ELO (formatted with 2 decimals).
- %ConquestDuels_stats.kdr% – Kill/Death ratio (2 decimals).
- %ConquestDuels_stats.winrate% – Win rate as a percentage (0.00–100.00).
- %ConquestDuels_stats.totalduels% – Total duels played (wins + losses).
If you’re using something like TAB, DeluxeMenus, CMI, or any other PlaceholderAPI-compatible plugin, you can drop these in instantly.
Existing Arena / Queue Placeholders (Reminder)
These already existed, but here’s a quick refresher now that stats placeholders are live too:
Total players queued in all arenas
Code (Text):
%ConquestDuels_arena.totalQueueSize%
Total players queued for a specific gamemode across all arenas
Code (Text):
%ConquestDuels_queue.gamemode.<GAMEMODE>.total%
Example:
Code (Text):
%ConquestDuels_queue.gamemode.SUMO.total%
Per-arena queue size
Code (Text):
%ConquestDuels_arena.<arenaName>.queueSize%
Per-arena + gamemode queue size
Code (Text):
%ConquestDuels_arena.<arenaName>.<GAMEMODE>.queueSize%
Per-arena + gamemode queue status
Returns either
waiting or
empty.
Code (Text):
%ConquestDuels_arena.<arenaName>.<GAMEMODE>.queueStatus%
3️⃣ Performance & Stability Improvements
- Join-time stats handling has been simplified to avoid scanning all stored users.
- Stats file format remains the same (no data wipe on update).
- Safer error handling around placeholders to avoid spam if a placeholder is misconfigured.
How to Update
- Stop your server.
- Replace your old ConquestDuels jar with v5.6.0.
- Start the server again.
- Make sure PlaceholderAPI is installed and enabled if you want to use the new placeholders.
Your existing:
- Arenas
- Queues
- User stats (kills, deaths, wins, losses, ELO)
are all preserved automatically.
❤️ Feedback & Suggestions
If you find any issues or have ideas for more placeholders (leaderboards, winstreaks, per-gamemode stats, etc.), please drop them in the discussion thread or on my support Discord. Your feedback directly shapes future updates.