Compatibility
Minecraft: Java Edition
Platforms
Tags
Creators
Details
⚔️ RtpqX — Crystal PvP RTP Queue & Killstreaks
High-performance, lag-free Crystal PvP RTP Queue and Killstreak Paper plugin designed for competitive servers.
💎 What is RtpqX?
RtpqX is a modern Minecraft server plugin built from the ground up for competitive Crystal PvP and practice servers running on Paper / Purpur 1.21.x.
Unlike generic random teleport plugins that cause massive server lag spikes during chunk generation, RtpqX uses an asynchronous terrain generation engine that finds safe surface coordinates across configured worlds and places both duelists facing each other for immediate combat without dropping server TPS.
⚡ Key Features
-
🏎️ Instant 2-Player Matchmaking (
/rtpq,/rtpqueue):- Fast FIFO queue system designed for 1v1 duels.
- Players can queue from anywhere and easily leave with
/rtpq leaveor toggle off. - Allows re-queuing while in a match if enabled.
-
🌍 Asynchronous Safe Arena Generation:
- Randomly selects an arena world from your configured list (e.g.
badlands,plains,desert,mushroom). - Non-blocking chunk loading (
world.getChunkAtAsync) with extensive biome vegetation checks (safely accepts dead bushes, grass, flowers, and snow). - Spawns both combatants separated by a configurable distance (default 14 blocks) facing each other.
- Configurable radius up to 12,000+ blocks to prevent players from fighting in old craters.
- Randomly selects an arena world from your configured list (e.g.
-
🔥 Crystal PvP Killstreak System:
- Kills are tracked strictly for RTPQueue fights (casual spawn fights do not affect streaks).
- Robust death attribution: Accurately credits the opponent even when deaths are caused by End Crystal explosions, Respawn Anchors, fall damage, or pearl recoil.
- Winner gets +1 Killstreak, loser resets to 0.
- Server-wide chat broadcasts for major milestones:
3, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50... 100.
-
🏆 Monthly Leaderboard & Interactive GUI (
/killstreak//ks):- Built-in SQLite persistence with in-memory caching for zero performance overhead.
- Automatic monthly rotation that resets monthly tops while preserving all-time personal bests.
- Sleek Custom GUI:
- Center: Player skull of the #1 Monthly Top killstreak fighter.
- Left: Player skull of the viewer's All-Time Highest killstreak and win stats.
- Right: Player skull of the viewer's Current Active killstreak.
- Solid Black Stained Glass borders with anti-theft item locking and upright, non-italic styling.
-
📢 Real-Time Action Bar Notifications:
- When someone queues: Broadcasts a clean notification across the server (
<player> is looking for a fight in rtpqueue). - When queue is empty: Displays server IP (
kittenprac.xyz) in the action bar (toggleable inconfig.yml).
- When someone queues: Broadcasts a clean notification across the server (
-
🔌 EasySettings Integration:
- Seamless soft-dependency with the EasySettings plugin.
- Players can open
/settingand toggle RTPQueue action bar notifications on or off according to their preference.
-
🔄 PlugMan & Hot-Reload Friendly:
- Fully hot-reloadable with
/rtpq reloador/plugman reload RtpqX. - Proper task shutdown, open inventory auto-close, database lock release, and listener unregistration to guarantee zero memory leaks.
- Fully hot-reloadable with
📜 Commands & Permissions
| Command | Aliases | Permission | Description |
|---|---|---|---|
/rtpq |
/rtpqueue |
rtpq.use |
Join or leave the RTP queue |
/rtpq leave |
- | rtpq.use |
Leave the queue |
/rtpq reload |
- | rtpq.admin |
Fast reload config.yml and msg.yml |
/killstreak |
/ks, /rtpks |
rtpq.killstreak |
Open the Killstreak Leaderboard GUI |
/rtpqadmin reset <player> |
/rtpqa |
rtpq.admin |
Reset a specific player's killstreak |
/rtpqadmin resetall |
/rtpqa |
rtpq.admin |
Reset all killstreaks |
/rtpqadmin reload |
/rtpqa |
rtpq.admin |
Reload configuration files |
🛠️ Requirements & Installation
- Server Software: Paper, Purpur, or compatible 1.21+ fork (Java 21).
- Download
RtpqX-1.21.11.jarand place it in yourplugins/directory. - (Optional) Install EasySettings if you want player-toggleable
/settingintegration. - Restart your server or load via PlugMan.
👨💻 Author & Credits
- Developer: X3vro
- Platform: Paper 1.21.x


