Compatibility
Minecraft: Java Edition
Platforms
Links
Tags
Creators
Details
RandomTeleport
RandomTeleport is a random-teleportation plugin: multiple zones, biome filtering, a warmup with countdown, smart safety checks, a pre-generated point pool with a binary index, a disk budget, optional region protection and economy, and full multilingual support. No hard dependencies; works on Bukkit, Spigot, Paper, Purpur and Folia from 1.12.2 to 26.x (Java 8+).
Features
- Zones - rectangle or circle, per-world, per-zone overrides, world-border validation.
- Instant teleports - a pool of ready points + an index of existing chunks.
- Background refill -
on-demand,idleorboth, with TTL, spread and per-zone limits. - Smart search - parallel candidates, biome prefilter; async chunks on Paper/Folia, bounded sync generation on Spigot (no Watchdog).
- Warmup - title/actionbar, cancel on move/damage, ignored causes.
- After teleport - freeze and invulnerability until chunks are ready, preload queue, skip points near players.
- Protection - WorldGuard 6/7, GriefPrevention, Towny, Residence, Lands.
- Economy - optional Vault.
- Disk budget - free-space/weight/reserve limits, chunk registry.
/rtpstats- pools, index, disk, searches, queue, protection providers (active + installed).- Languages - EN/RU included, custom
lang_XX.json, auto-detect.
Requirements and installation
- Java 8+; Bukkit/Spigot/Paper/Purpur 1.12.2–26.x, Folia 1.19.4+.
- Optional: Vault + economy, WorldGuard, GriefPrevention, Towny, Residence, Lands.
Commands
Players
| Command | Description |
|---|---|
/rtp |
Teleport to the default zone |
/rtp <zone> |
Teleport to a specific zone |
/lang <code> / /lang list |
Change your language / list languages |
Administrators
| Command | Description | Permission |
|---|---|---|
/centre check [zone] / /centre clear [zone] |
Show / reset the zone center | random_teleport.centre.* |
/set radius <X> <Z> [zone] / /set radius check [zone] |
Set / show the radius | random_teleport.set_radius.* |
/set center <X> <Z> [zone] |
Set the center | random_teleport.set_radius.* |
/rtpzone list |
List zones | random_teleport.zone.* |
/rtpzone create <name> <X> <Z> <radiusX> <radiusZ> |
Create a zone (sender's world; console - world) |
random_teleport.zone.* |
/rtpzone delete <name> / /rtpzone info <name> |
Delete / inspect a zone | random_teleport.zone.* |
/rtpbiome list | exclude <biome> | include <biome> | reset |
Manage excluded biomes | random_teleport.biome.* |
/rtpreload [force] |
Reload config/zones/biomes/languages; force repeats migration |
random_teleport.reload |
/rtpstats |
Show plugin statistics | random_teleport.stats |
Aliases: /rtp - randomtp, wild; /centre - center; /rtpzone - zone, tpzone; /rtpbiome - biome; /rtpreload - rtprl; /rtpstats - rtpinfo.
Permissions
| Permission | Default | Purpose |
|---|---|---|
random_teleport.rtp |
true | Use /rtp |
random_teleport.centre.* |
op | Manage zone centers |
random_teleport.set_radius.* |
op | Radius and center |
random_teleport.zone.* |
op | Zone management |
random_teleport.biome.* |
op | Biome management |
random_teleport.reload |
op | Reload and migration |
random_teleport.stats |
op | /rtpstats |
random_teleport.cooldown.admin / premium / vip |
op / false / false | 0 / 5 / 15 s cooldown |
| Default cooldown | — | 30 s |
Configuration
| Key | Default | Purpose |
|---|---|---|
default-language / auto-detect-language |
EN / true |
Language of new players / client detection |
cooldown.default |
30 |
Default cooldown, seconds |
warmup.delay / warmup.display |
3 / title |
Countdown delay / title, actionbar, both |
teleportation.min-height / max-height |
60 / 0 |
Height limits (0 = no max) |
teleportation.sync-generation-budget-ms |
3000 |
Sync generation time budget on Spigot |
pool.replenish.mode |
both |
Background refill mode |
pool.disk-budget.max-gb |
20 |
Disk budget cap |
index.enabled / scan-existing |
true / true |
Index of existing chunks |
zone-defaults.pool.low / high |
4 / 12 |
Refill thresholds |
zone-defaults.min-delivery-distance |
256 |
Minimum spread between deliveries |
zone-defaults.protection.providers |
[] |
WORLDGUARD, WORLDGUARD6/7, GRIEFPREVENTION, TOWNY, RESIDENCE, LANDS |
zone-defaults.economy.cost / economy.enabled |
0 / false |
Per-zone cost / Vault hook |
Zones live in zones; any zone-defaults key can be overridden as zones.<name>.<path>:
zones:
default:
center: { x: 0, z: 0 }
radius: { x: 10000, z: 10000 }
worlds: [world]
nether:
center: { x: 0, z: 0 }
radius: { x: 1000, z: 1000 }
worlds: [world_nether]
Languages
Create plugins/RandomTeleport/languages/lang_XX.json from lang_en.json, translate values, keep keys unchanged; restart or /rtpreload. Players use /lang XX; console sets the default language. auto-detect-language: true uses the client language on first login.
Notes
- Spigot: synchronous chunk generation is bounded by count, delay and
sync-generation-budget-ms; lower the budget on weak hardware. - Folia: supported; the pool may fill slower in idle because of region scheduling.
- Nether:
worlds.world_nether.max-height: 125keeps points off the roof; setmin-heightthere if you need points below the global 60. - Ocean-only zone: the pool may stay empty with
avoid-water: true; shrink/move the zone or relaxsafety-checks.


