DyRTP 1.1.0
This is the largest DyRTP update so far. Players can choose the biome they want to land in. Ranks can get their own cooldown, price and distance. Servers get PlaceholderAPI placeholders, three new languages, MiniMessage formatting and a developer API. Every new system has its own switch in config.yml. Settings, aliases and player preferences are kept, and servers upgrade by replacing the JAR.
Biome choice
What changed. Until now RTP always searched the whole world. Players can now ask for a biome.
/dyrtp biome <biome>(Turkish:/dyrtp biyom) searches only that biome. TAB lists the biomes that can be chosen.biome-selection.biomeslimits the choice. An empty list allows every biome that is not blacklisted.- Blacklisted biomes such as oceans can never be chosen, and a world's own
allowed-biomeslist still applies. - Biome searches have their own limits:
biome-selection.max-attempts(default 1000) andbiome-selection.timeout-seconds(default 60). If nothing safe is found, the player is told and nothing is charged. - Price, cooldown, warmup and confirmation work exactly like a normal RTP.
- Permission
dyrtp.biome(everyone by default). Switch:biome-selection.enabled.
Cooldown, price and distance by rank
What changed. Every player used to share one cooldown, one price and one radius. Now permissions can change them per group:
| Permission | Effect | When a player has several |
|---|---|---|
dyrtp.cooldown.<seconds> | Replaces the cooldown, for example dyrtp.cooldown.60 | The lowest wins |
dyrtp.price.<amount> | Replaces the price, for example dyrtp.price.25 | The lowest wins |
dyrtp.radius.<blocks> | Replaces the farthest distance, for example dyrtp.radius.10000 | The highest wins |
dyrtp.cooldown.0removes the wait for that group.- A radius permission cannot go below the world's
min-radius. - Players without these permissions keep the normal settings, so nothing changes on servers that do not use them.
- Switches:
cooldown.permission-overrides,economy.permission-pricesandrtp.permission-radius.
PlaceholderAPI
DyRTP now registers its own placeholders when PlaceholderAPI is installed. No eCloud download is needed.
| Placeholder | Shows |
|---|---|
%dyrtp_cooldown% | Seconds left, 0 when ready |
%dyrtp_cooldown_formatted% | The same as text, for example 4m 12s |
%dyrtp_ready% | true or false |
%dyrtp_price% | The player's price as a number |
%dyrtp_price_formatted% | The price with the economy's currency |
%dyrtp_world% | The world the next RTP goes to |
Switch: integrations.placeholderapi.enabled.
German, Spanish and Russian
DyRTP now ships complete message files in German, Spanish and Russian, next to English and Turkish.
- With
language.default: auto, players get these languages from their Minecraft language setting. - Players can choose with
/dyrtp language de,esorru. Administrators can force one for everyone with/dyrtp admin language. - The new files
messages_de.yml,messages_es.ymlandmessages_ru.ymlare created in the plugin folder and can be edited like the others.
MiniMessage
On Paper and Purpur, every message can now use MiniMessage tags next to the usual & codes, for example <green>, <#55ff55> or <gradient:#55ff55:#55ffff>Teleported!</gradient>.
- Existing message files keep working unchanged;
&codes and tags can be mixed. - Spigot does not include Adventure, so there only
&codes apply. DyRTP does not bundle Adventure. - Player names and other inserted values are never read as tags.
Automatic RTP to another world
first-join-rtp.world and death-rtp.world can now send players to a different world, for example from a lobby into the survival world. Left empty, the current world is used as before.
Developer API
Other plugins can use dev.dyrtp.api.DyRTPAPI:
isAvailable(),getCooldownRemaining(player),getPrice(player),getDestinationWorld(player)andisTeleporting(player);randomTeleport(player)starts a teleport like/forcertp.
The existing request, pre-teleport, post-teleport and failure events stay the same.
bStats
DyRTP now sends anonymous statistics to bStats: server and player counts, Minecraft and plugin versions, and a few DyRTP charts (language mode, economy, cooldown, automatic RTP, PlaceholderAPI and DyClaim use). No player names, locations or chat are sent. Turn it off with metrics.enabled: false, or for every plugin in plugins/bStats/config.yml.
Smaller changes
- New license. DyRTP 1.1.0 and later use the DyRTP Source-Available License 1.0, the same terms as DyClaim: free to use and modify on any server, no paid distribution, and distributed versions must share their source. Earlier versions keep LGPL-3.0-only.
- New installations follow the vanilla
/worldborderby default (use-world-border: true);max-radiusstill caps the distance. Existing configurations keep their value. Destinations outside the world border were and are always rejected. - Help and language texts that you never edited now list the new languages after the upgrade. Edited texts are kept.
Performance
The BetterRTP comparison was repeated with DyRTP 1.1.0 on the same world snapshot, settings and client as for 1.0.1. DyRTP had the lower median command-to-teleport time in all five scenarios:
| Scenario | DyRTP 1.1.0 | BetterRTP 3.6.13 |
|---|---|---|
| Overworld 16–96, first pass | 2.22 ms | 100.50 ms |
| Overworld 16–96, second pass | 1.67 ms | 100.25 ms |
| Overworld 500–1000, first pass | 76.25 ms | 127.49 ms |
| Nether 16–96 | 1.67 ms | 100.89 ms |
| End 16–96 | 1.34 ms | 99.92 ms |
Each plugin completed 70 teleports with no failures. This is command-to-teleport time with one client on Paper 26.1.2, not CPU or memory use, and not a general guarantee. Method and limits
Upgrading
- Stop the server.
- Back up the old JAR and the whole
plugins/DyRTPfolder. - Replace the JAR with
DyRTP-1.1.0.jarand start the server.
Missing settings and messages are added without resetting your values.
Verification
- Automated tests. 105 tests passed, covering ranks, radius, languages, client-language detection, migration, biome choice, MiniMessage, placeholders, the API and packaging.
- Live test on Purpur 1.20.4 with LuckPerms, PlaceholderAPI, Vault and EssentialsX: 22/22 checks passed. They included first-join and death RTP, rank cooldown, price and radius, the placeholders, a MiniMessage gradient, German, Spanish and Russian help, biome TAB, biome landing (checked by the server) and reload.
- Live test on Spigot 26.3: 5/5. RTP worked,
&codes applied and a MiniMessage tag was shown as written. - Bedrock/Geyser and every protection plugin were not retested for 1.1.0.
License
DyRTP Source-Available License 1.0 Effective date: 25 October 2026 Copyright (c) 2026 Claww / DyPlugin and DyRTP contributors. All rights reserved except as expressly granted below. 1. Scope "Software" means the DyRTP code, binaries and documentation distributed with this license, to the extent the relevant copyright holders may grant these permissions. "Modified Version" means a modification or derivative of that Software. This is a custom source-available license, not the GNU GPL and not an OSI-approved open-source license. 2. Permitted use You may download, inspect, run, copy and modify the Software, including for personal, educational and commercial Minecraft servers. Running a server that accepts donations or sells server access does not itself constitute selling the Software. You may redistribute the Software or Modified Versions without charge if you meet all conditions below. 3. No paid distribution Without separate written permission from the relevant copyright holders, you must not sell, sublicense for a fee, offer paid downloads of, or require payment or a donation to obtain the Software or a Modified Version. You must not include it in a paid software bundle or use another arrangement to charge for access to its source or binaries. Voluntary donations are allowed only when access to the Software is not conditional on donating. 4. Source availability on distribution Whenever you distribute the Software or a Modified Version, provide a public, free-of-charge link to its complete corresponding source code, including your changes and the build files needed to produce the distributed version. Keep that source available for as long as you offer the distribution. Do not distribute a closed-source Modified Version. Private modifications that you do not distribute do not have to be published. 5. Attribution and notices Retain this license and existing copyright and attribution notices in source and binary distributions. Identify DyRTP and Claww / DyPlugin visibly in the plugin description, README or equivalent documentation, and any public distribution page. Modified Versions must identify their changes and must not imply that they are official releases or endorsed by the original authors. 6. Same terms for redistribution Distribute covered Software and Modified Versions under this license, with no additional terms that remove the permissions granted here or defeat its conditions. No ownership of the Software, project name or branding is transferred. Attribution does not grant permission to impersonate the project. 7. Third-party material and earlier distributions Third-party components, dependencies and contributions remain subject to their applicable rights and licenses. This license does not override those licenses or grant rights the relevant copyright holders do not possess. Earlier copies distributed under another license retain their applicable license; this notice does not retroactively revoke previously granted rights. If you cannot satisfy all applicable licenses, do not redistribute that combination without obtaining the required permissions. 8. Termination Permissions under this license terminate if you fail to comply with its conditions. They are reinstated when the violation is fully cured, unless the relevant copyright holder has separately terminated them in writing. Termination does not remove any rights you have independently under law or under an applicable license for an earlier distribution. 9. Disclaimer of warranty and liability TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. THE AUTHORS AND COPYRIGHT HOLDERS ARE NOT LIABLE FOR ANY CLAIM, DAMAGE OR OTHER LIABILITY ARISING FROM THE SOFTWARE OR ITS USE, WHETHER IN CONTRACT, TORT OR OTHERWISE. MANDATORY LEGAL RIGHTS REMAIN UNAFFECTED. 10. Separate permissions For permissions beyond this license, contact Claww / DyPlugin through https://github.com/DyPlugin/DyRTP. A separate permission is valid only when granted in writing by the relevant rights holder.

