Supported MC Versions1.16, 1.15, 1.14, 1.13, 1.12, 1.11, 1.10, 1.9, 1.8, 1.7

NOTE: Please make sure to set the world border (center/radius)

NOTE: It now supports WorldBorder plugin!  You can now use this plugin with WorldBorder plugin even on 1.7 servers!

This plugin allows you to teleport yourself to randomly selected location.  The selected location will always be on the ground.  The following conditions will be avoided:
 
  • on a tree,
  • on an ocean/a lava pool,
  • on someone else's Faction claimed area.
For regular players, you can set the default cooldown time to avoid the misuse of this feature.

It currently supports:
 
Commands (aliases : randomteleport, rt, randomtel, wild, wildtp)
 
  • /rt [w:worldname][rx:x-radius][rz:z-radius][r:radius] : Teleports you to a randomly selected location (option) in the specified world.
  • /rt <player> [w:worldname w:another_worldname ...][rx:x-radius][rz:z-radius][r:radius] : Teleports <player> to a randomly selected location (option) in the specified world.
  • /rt reload : reloads the config.
if [rx:x-radius][rz:z-radius][r:radius] are specified, it will ignore the radius setting in the config.yml and world border radius.

Permissions
 
  • randomteleport.teleport - Teleports you to a randomly selected location.
  • randomteleport.teleport.other - Allows you to teleport other players.
  • randomteleport.reload - Allows a player to use /rt reload command.
  • randomteleport.nocooldown - Allows a player to bypass the cooldown.
  • randomteleport.sign.create - Allows you to create a RandomTeleport sign.
  • randomteleport.sign.use - Allows you to use (click) the Random Teleport sign.
  • randomteleport.no_cancel - Allows you to teleport even if you move while waiting for teleport.
  • randomteleport.economy.bypass - Allows you to bypass economy charge upon teleport.
RT Sign
If you have the "randomteleport.sign.create" permission node, you can place a RT sign.  To put a RT sign, do:
 
  1. place a sign,
  2. put [RT] on the 1st line
  3. put the world_id (which is in your config.yml) on the 2nd line.

Config

# This is a template config file
# define your parameter and its value like:
Messages:
  ErrorMsg : "&c[RandomTeleport] : Some error occured."
  NoSuchPlayer : "&c[RandomTeleport] : No such player online!"
  NoSuchWorld : "&c[RandomTeleport] : No such world on this server!"
  Teleported : "&a[RandomTeleport] : You've been teleported to a random location!"
  CooldownMsg : "&a[RandomTeleport] You have to wait for &b%remaining% &aseconds."
  NoPermission: "&c[RandomTeleport] : You don't have a permission to do so."
  NotInThisEnvironment: "&c[RandomTeleport] : You cannot random teleport in this environment(&e%env%&c)."
  TPDelayMsg : "&aYou will be teleported in %time% seconds."
  NotEnoughFundMsg : "&cYou need at least &e$%amount% &cto use this."
  DeductionMsg : "&a[RandomTeleport] &e%amount% &a(%type%) have been charged for your random teleport."
  WaitingForTP : "&c[RandomTeleport] You're already waiting for TP."
  TPCancelled : "&c[RandomTeleport] Your TP has been cancelled."
  NoSafePlace : "&c[RandomTeleport] Could not find a safe place to land."

HelpMessages:
  banner:
    msg: "=== &e[&aRandomTeleport Commands List (%version%)&e] &r==="
  help:
    msg: "&a/rt help : displays this help menu."
  reload:
    msg: "&a/rt reload : reloads config file."
    permission: "randomteleport.reload"
  debug:
    msg: "&a/rt debug <true|false> : turn on / off the debug mode."
    permission: "randomteleport.debug"
  teleport:
    msg: "&a/rt [w:worldname][cx:center-x][cz:center-z][rx:x-radius][rz:z-radius][r:radius] : Teleports you to a randomly selected location (option) in the specified world"
    permission: "randomteleport.teleport"
  teleportOther:
    msg: "&a/rt otherplayer [w:worldname][cx:center-x][cz:center-z][rx:x-radius][rz:z-radius][r:radius] : Teleports you to a randomly selected location (option) in the specified world"
    permission: "randomteleport.teleport.other"

# Default radius, for old server whcih does not have World.getWroldBorder() method
# this value will be used as a default radius.
DefaultRadius: 100

# Default center.
DefaultCenter:
  x: 0
  y: 0
  z: 0

# economy related
# choices of economy system: "Money", "Token" or "Exp"
Economy: "Money"
Price: 10

# delay til the teleportation is initiated (in seconds)
TPDelay: 0

Cooldown: 300  #in seconds

EnabledEnvironment:
  - NORMAL

#if you set this option to true, the cooldown will be tracked for each world.
UseWorldBased: false

# Timeout in seconds before it gives up looking for a safe location to land.
TimeOut: 10

# a player with randomteleport.sign.use can click the sing to execute /rt w:world
# a player with randomteleport.sign.create can create the RT sign.
# 1st line of the RT sign is reserved for [RT]
# 2nd line of the RT sign is reserved for world id.

RTSign:
  world:   #short world id  (incase the world name is long)
    world: "world"
    lore:
      - "&aTeleport to"
      - "&arandom place"
#  nether:
#    world: "world_nether"
#    lore:
#      - "&aTeleport to"
#      - "&arandom place"
#  end:
#    world: "world_the_end"
#    lore:
#      - "&aTeleport to"
#      - "&arandom place"

# you can nominate the min/max boundaries of each world if you do not wish to
# use the worldborder.
# if the limits are not specified here, by default, the plugin will use the worldboarder
#
# you can also specify the center of the specified world.
WorldLimits:
#  smallworld:
#    xRadius: 300
#    zRadius: 200
#    xCenter: 0
#    yCenter: 100
#    zCenter: 200
#  bigworld:
#    xRadius: 3000
#    zRadius: 2000

#
# RT will try not to select the blocks listed here as the landing block
AvoidBlocks:
#  - SAND
#  - GRAVEL

#
# No-Go WorldGuard Region
AvoidWGRegions:
#  - spawn

#
# if this option is true, all player who joined will be teleported to a random location.
RandomTPOnJoin: false
# this is the world a player wil be randomly teleported when they join.
JoinTPWorld: undefined
# if this option is true, random tp on join is executed only if a player joined the server
# for the first time.
OnlyAtFirstJoin: true

#
RegionPlugins:
  world:
    - WorldGuard
  plotworld:
    - WorldGuard
    - PlotSquared
  pvp:
    - WorldGuard
    - Factions

# if the destination worlds are not specified as command line argument
# worlds listed below will be randomly picked to find a safe landing place.
TargetWorlds:
  - world
  - plotworld



Donation:
It would be greatly appreciated for your donation for the provision of support for this plugin. (PayPal: vk2gpz@gmail.com)