RTP999 1.0.1
on Aug 23, 2025New Features (in your code)
- Disabled Worlds
Added support for a list of worlds where /rtp is blocked.
Controlled through the disabled-worlds section in config.yml.
- Nether Check
Teleporting in the Nether is now blocked entirely.
Prevents players from glitching above bedrock or into lava ceilings.
- CommandExecutor Implementation
Your main plugin class now officially implements CommandExecutor.
Makes command registration cleaner and more correct.
🛠️ Improvements (you changed this code directly) 4. Thread Safety
You moved player.getLocation() and player.getWorld() outside of the async thread.
Prevents thread safety issues with Bukkit’s API.
- Random Location Generation
Switched from square-style teleport (X ± range, Z ± range) to a circular-style spread using angles.
This creates more evenly distributed teleport locations.
- Cave Detection Logic
Replaced the basic ceiling-only check with a proper cave check.
Now checks for both a solid floor and solid ceiling to avoid caves.
- ThreadLocalRandom
Replaced the Random object with ThreadLocalRandom for better performance and thread safety in the async task.
✅ Still Present and Unchanged
Cooldown system per player
Safe location checks (air above, solid ground below)
Particle + sound effects on teleport
Config-based range, max attempts, and Y-level limits
RTP runs asynchronously to avoid server lag
RTP999 V1.0
on Jul 25, 2025the first release