Random Teleport [All world types supported] [1.19.1] icon

Random Teleport [All world types supported] [1.19.1] -----

Teleport players to a random safe location. Supports protection plugins and all world types.




Nothing really needed to be changed for 1.19.1 to work but wanted to point it out that it works.

  • Cleaned up some logic regarding ChunkSnapshots and how the chunktraverser works. Nothing changes for the end user.
----------, Jul 28, 2022

  • Add backward compatibility to at least 1.16.x
----------, Jul 27, 2022

  1. Re-add cooldown reset commands
  2. Bump Adventure to work properly with 1.19
  3. Prepped some work for better debugging (next update)
----------, Jul 13, 2022

Changes:
  • Made biome validator more efficient by skipping more blocks that are more or less guaranteed to be the same biome.
  • Fixed some issues with the particle settings in the config (no changes required for the end user)
----------, Jun 23, 2022

No major changes here. Just updating libraries to increase compat with mc 1.19
----------, Jun 17, 2022

Due to a mistake on my part i was building against paper instead of spigot and did not realize a method didn't exist in spigot.

I am now building against spigot and replaced the method with a spigot equivalent
----------, May 14, 2022

previously only <time> template was accepted which produced a fixed string (1h 12m 16s) now you can define them yourself with the following placeholders:
Code (YAML):
  #valid placeholders: <time> a preformatted string, <hours>, <minutes>, <seconds>, <total_hours>, <total_minutes>, <total_seconds>
 
these just return the numbers so you can format them however you want.
----------, Apr 10, 2022

- Fix issue where the plugin would not load properly if the particle is set to NONE
- Fix issue where the autocomplete of nicknames would mess up the autocompletion. It uses the actual username instead.
----------, Apr 5, 2022

This version is specifically for 1.18.2 and up.
It will NOT work for 1.18.1.

In a recent update a small fix was made to the way height is determined for chunk snapshots and this causes older versions to break.
This version adresses that.

If you run into issues try resetting your config (you can just rename it to copy values over later)

If you want a more or less up to date version for 1.18.1 you can use #159
https://ci.darkeyedragon.me/job/Random Teleport/159/
Anything above 159 will not work on anything below 1.18.2

Updates:

- Revamped a bunch of config settings
- Signs are still not implemented there are other plugins for that
- Switched to a tick based location searcher. Which is less heavy on the server.
- Improved search performance significantly to deal with bigger chunks in 1.18
- Fixed various bugs since last update. Mostly related to eco and cooldowns
- Added per world eco options
- Added debug commands (/rtpdebug)
----------, Mar 19, 2022

It's been a long time since i've released an update for this plugin. However that doesn't mean i haven't been working on it.

Here are some of the key improvements
- Vastly improved the location searcher. It is now faster than ever.
- Implemented a blacklist system which supports regex and Tags
- Cleaned up code
- Added bstats
- Added more config options
- A lot of stuff i already forgot about.
For a full list of changes check this link: https://github.com/DarkEyeDragon/RandomTeleport/pull/80

Edit: If you're updating from an older version you'll need to make a copy of the plugin.yml and remove it so it will generate a new one at startup. Then you can copy over your previous settings if you so please.
----------, Nov 18, 2020

A list of all the changes can be found here: https://ci.darkeyedragon.me/job/Random Teleport/changes

Most notable changes:
- Added full end support.

- Fixed location searcher, so now takes surrounding blocks into account. And fixed edge cases that would get you teleported in lava.
- Added a death timer. If you still somehow ended up dying you wont lose your stuff in the first 10 seconds after rtp (configurable).
- Fixed a sync chunk call when validating if a location is still safe.
- General improvements
- Experimental: Detect worldborder changes. Reload world queues when a worldborder change is detected (there is no event for it so i have to check command execution). It is not guaranteed to work. So check your console after changing it and /rtp reload if it doesnt trigger.

This update adds a new config option hence the version bump from 1.5.2 to 1.6.0. However if you don't care about the death timer you can just leave your config as is. If you want add it without resetting the config:

add
Code (YAML):
death_timer : 10s
under the
Code (YAML):
teleport:
section.
----------, Aug 15, 2020

Quick fixes
  • Eco was not reimplemented after teleport rewrite. This update fixes that.
  • Added placeholders for messages.teleport. %posX, %posY, %posZ
----------, Jul 9, 2020

Update 1.5.1
  • Added full nether support. No more teleporting on the nether roof! Get exploring.
  • Added Towny support
  • Dropped GriefDefender support. No maven repo, so too much work to get it working on Jenkins. Also paid plugin.
  • Reimplement the Teleport system. Now the command sender is used to determine delays rather than the target. So console teleports will not have any delay or cooldown.
  • Validate locations when teleporting to make sure the location is still safe when its pulled from the queue.

Added a jenkins build server. You can now always get the latest builds from https://ci.darkeyedragon.me/job/Random Teleport/ this is still heavily experimental and is subject to change at any time.
----------, Jul 7, 2020

Support has been added for 1.16

Added RGB support. You can use RGB now anywhere in the message section of the config.
It uses the following format:
Code (YAML):
[&x00FF00+GREEENNN ]

[&xRRGGBB+whatever text u want in that color ]

Real world examples
:
no_world_permission
: "[&xAACC00+I'm sorry, you cannot rtp in][&xffbf00+%world]"
initteleport
: "[&x00FF00+GREEENNN] &aSearching for safe location to teleport to... [&xAA0000+YEET]"
 
If you have a better way of displaying it, feel free to let me know.

Fixed a small bug that would always show "invalid config" message when reloading the config
----------, Jun 25, 2020

Fixes and improvements
- Non existing worlds in the config would disable the plugin on startup
- Improved error handling and messages.
- In some rare cases Bukkit/Spigot would not respect load order of plugins. This would cause issues with the validators not being loaded before RandomTeleport. I've added a workaround for this. They will now added when they are loaded.
- Added Redprotect support
- Added GriefDefender support
- Slight performance boost for paper users
- Fixed not all values updating on /rtp reload
(no config changes were made)

Note: You can remove all the validators you dont need in the config. If the plugin isn't found it (obviously) wont load them. And will show red in the console. So if you dont want to see that just remove them.
----------, Jun 19, 2020

Fixed a small bug that would give a no permission message when the player had the correct permission to teleport to a world but did not have the "rtp.teleport.other" permission.

Thanks mvez73 for making me aware of this issue
----------, Jun 6, 2020

A lot of internal changes. Config system has been mostly rewritten to avoid having to resolve config strings all the time.

Added economy support.

Added proper world support each with permissions

Reimplemented the queue system.

Fixed some minor bugs

Added a bunch of commands for ease of use.
/rtp addworld <world>
/rtp removeworld <world>

/rtp resetcooldown <player>
/rtp setprice <price>

(setting the price to 0 will disable economy)

Vault is required if you want to use the economy features

Added a whole bunch of permissions to go with the new commands (check the plugin page for a full list)

Updated the config so its recommended to let it regenerate and copy your settings over.
----------, May 30, 2020

Update 1.3.0

Added:
  • Delayed teleport
  • Cancel teleport when moving in delay (toggleable)
  • Updated the config (once again) but still compatible with old versions
  • Added
    Code (Text):
    rtp.teleportdelay.bypass
    permission node
upload_2020-4-20_18-0-42.png
(messages customizable ofcourse)
Planned for next release:
  • Add support for world based radius and offset
  • clean up code
  • improve config
----------, Apr 20, 2020

Update to version 1.2.0 (important bugfixes!)
  • Add queue_init delay to config
  • Fixed LocationSearcher (again) to now take offsets into account properly. Before it would not convert location offsets to chunk offsets resulting in offsets being 16x too big. Now rtp actually works as intended.
  • Fix 0 argument commands failing to execute
  • Added option to disable the queue population messages
  • Added depleted queue message to config
It's recommended to let your config regenerate, however its not entirely needed. As default values have been provided if the fields are missing.

Or you can copy the config from below

Code (YAML):
message:
  initteleport
: "&aSearching for safe location to teleport to..."
  teleport
: "&bA safe place has been found! Teleporting..."
  depleted_queue
: "&6Locations queue depleted... Forcing generation of a new location"
  #valid placeholders: %hp (hours partial) %mp (minutes partial) %sp (seconds partial) %h (total hours) %m (total minutes) %s(total seconds)
  countdown
: "&cYou cannot teleport for another &6%mp minutes %sp seconds"
  nopermission
: "&cYou do not have permission to execute this command!"
  blacklisted
: "&cI am sorry, that world is blacklisted!"
#The amount of pre-generated locations in the queue
queue
:
  size
: 5
  #The delay in ticks (20 ticks = 1 second) for the queue to kick in, lower is faster but searching at the same time as teleporting the player
  #can be heavy on the server, if the player that just got teleported also needs to generate chunks. So generally not a bad idea to delay it a least a little bit
  init_delay
: 60
size
:
  #Use the worldborder (if set) for offset. This is the vanilla worldborder.
  use_worldborder
: true
  #Will be ignored if use_worldborder is true
  radius
: 21474836
  offsetX
: 0
  offsetZ
: 0
teleport
:
  #m = minutes, s = seconds
  #default: "60m"
  cooldown
: "60m"
blacklist
:
  isWhitelist
: false
  worlds
:
   - "world_nether"
    - "world_the_end"
#Plugins to take into consideration when teleporting. A player will not be teleported in those regions
#Currently supports Factions (FactionsUUID), WorldGuard, GriefPrevention
#If you want more plugins to be supported: https://github.com/DarkEyeDragon/RandomTeleport/issues
plugins
:
 - "Factions"
  - "WorldGuard"
  - "GriefPrevention"
debug
:
  #Safe location added for world(3/5)
  #Location removed from world(2/5)
  show_queue_population
: true
----------, Apr 15, 2020

Fixed console not being allowed to execute the /rtp <player> <world> command.

Removed world blacklist bypass as blacklisted words dont generate random locations anyway.
----------, Apr 14, 2020

version 1.1
- Added a queue system, now a location is always ready when needed.
- Vastly improved location searching
- When reloading the config you the queue gets repopulated with the new parameters
- Reformatted the config (it is highly recommended to generate a new one!)
- Added Java 8 support (previously only Java 9+ was supported)
- Added Grief prevention support
----------, Apr 14, 2020

Resource Information
Author:
----------
Total Downloads: 20,705
First Release: Mar 13, 2020
Last Update: Jul 28, 2022
Category: ---------------
All-Time Rating:
41 ratings
Find more info at github.com...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings