SafeRTP
Random teleport with a way back
SafeRTP is a free random teleport plugin for Paper and Spigot, from 1.17 to 26.x. /rtp sends players somewhere between a minimum and a maximum distance from the centre, checks the spot is safe before they arrive, and /rtp back takes them back if they don't like where they landed.
How it works in play
- Distance: in the overworld, players land between 1,000 and 10,000 blocks from 0, 0. Each world has its own centre and radius.
- Safe landing: spots with lava, fire, magma or campfires are skipped, and ocean biomes are blacklisted by default. With WorldGuard, players never land inside a protected region.
- Warmup: five seconds before the teleport, shown in the action bar. Moving or taking damage cancels it.
- Arrival: five seconds of invulnerability, particles and a sound.
- New biomes: the first time a player lands in a biome, a title and a chat message tell them. Discoveries are saved.
- Going back:
/rtp backreturns you to where you teleported from, for five minutes after the jump, with its own one-minute cooldown.
How to use it
- Install: drop the jar into
/pluginsand restart once./rtpworks in the overworld; the Nether and the End are off until you enable them. English is the default; setlanguage: esfor Spanish. - Set up each world in
worlds.yml: on or off, centre, minimum and maximum radius, biome whitelist or blacklist, and an optional Vault cost. - Set the waits in
worlds.ymlandconfig.yml: a five-minute cooldown by default, the warmup, and how long/rtp backstays available. - Apply changes with
/rtp reload.
Commands and permissions
- Everyone:
/rtp [world](aliases/wild,/randomtp) withsafertp.use, and/rtp backwithsafertp.back. - Access per world with
safertp.world.<world>. - Operators (
safertp.admin):/rtp other <player>and/rtp reload. safertp.cooldown.<seconds>sets a shorter cooldown for a rank; the lowest one wins.safertp.bypass.cooldown,safertp.bypass.costandsafertp.back.nocooldownskip the waits and the cost.
Placeholders
With PlaceholderAPI installed: %safertp_cooldown% (seconds left) and %safertp_can_use%.
Requirements
- Paper or Spigot from 1.17 to 26.x, forks like Purpur included, on the Java version your server already uses.
- Optional: Vault (teleport cost), WorldGuard (skip protected regions) and PlaceholderAPI (placeholders).
None of them is required. Without Vault teleports are free. The plugin never refuses to start because an optional plugin is missing.
FAQ
Does the server lag while it looks for a spot?
Safe spots are found ahead of time and a few are kept ready for each world, so most teleports don't wait for a search.
Can I keep players out of the Nether?
Yes. Leave it disabled in worlds.yml, or give safertp.world.world_nether only to the ranks you choose.
Can I charge for teleports?
Yes. Set a cost per world in worlds.yml. It needs Vault and an economy plugin.
Can I translate the messages?
Yes. English and Spanish are included in lang/, in MiniMessage, and missing keys fall back to English.
For questions or bug reports, use the discussion tab on this page or our Discord.