
EzRTP
Advanced Random Teleport (RTP) plugin for Paper, Spigot, Purpur and Folia. Safe random teleportation with biome filters, GUI world selection, Vault economy support, cooldowns, WorldGuard integration and high-performance teleport caching for Minecraft serve
Tags
Creators
Details
3.4.0
Compatibility
Changes
Added
- EzCountdown integration (optional soft-dependency):
- RTP countdown display can now be delegated to EzCountdown for richer, configurable display channels.
- Configurable display types per RTP world:
ACTION_BAR,BOSS_BAR,TITLE,CHAT,SCOREBOARD,DIALOG. - Configurable MiniMessage format string with
{formatted}placeholder for remaining time. - Each teleporting player receives an ephemeral, per-player countdown with permission-scoped visibility.
- Falls back to the built-in bossbar/chat countdown automatically when EzCountdown is absent or
ezcountdown.enabled: false. - New
countdown.ezcountdown.*config section inrtp.yml(disabled by default).
EzCountdownadded as optional soft-dependency inplugin.yml.- Factions RTP (TeamsAPI):
- Added
/rtp factionto open a claim-selection GUI from all TeamsAPI claims available to the player's team. - Added TeamsAPI subcommand integration for
/f rtpvia the TeamsAPI subcommand API (when provided by the installed TeamsAPI version). - Claim selection now sets the selected claim chunk as RTP center and then applies normal per-world RTP behavior/settings.
- Added
- New
faction-gui.ymlfile for full claim-GUI configuration. - Heatmap claim overlays (admin insight):
- Added claim border overlay mode for
/rtp heatmapand/rtp heatmap saveviaclaims-overlayflag. - Added
rtp.ymloptions underheatmap.claims-overlay.*:enabledstyle(border)colorline-width
- Added claim border overlay mode for
- Claim-constrained fake RTP simulation:
- Added
/rtp fake <amount> claims [world]to generate simulated points on faction claims owned by the executor’s team.
- Added
Changed
- TeamsAPI dependency bumped from
1.4.1to1.8.0. - TeamsAPI
/f rtpsubcommand integration rewritten: replaced the reflection-basedProxyapproach with a properAbstractTeamsSubcommandsubclass (requires TeamsAPI ≥ 1.8.0). - TeamsAPI subcommand registration now uses an explicit
isPluginEnabled("TeamsAPI")guard instead of relying onNoClassDefFoundErrorsuppression. - Faction claim GUI icons now attempt to use player skulls when claimant/owner identity is available, with configurable fallback material when unavailable.
- Added configurable title, size, claim item format/lore, skull toggle, and navigation slot/name settings for faction GUI pages.
- Update checker refactored to use
mc-plugin-update-notifierwith Modrinth as primary source and GitHub Releases as fallback source.
Fixed
- Heatmap enablement now resolves correctly for inherited/fallback world settings (
heatmap.enabled) and no longer reads as disabled unexpectedly in world/GUI override paths. /rtp heatmapno longer hard-requires biome cache for non-biome heatmaps. Biome cache is only required for biome-filtered heatmap requests.- Spigot startup compatibility fixed in update checking (
JavaPlugin#getDescription().getVersion()used instead of Paper-only metadata calls). - Message loading now supports both top-level keys and nested
messages.*language-file layouts. - Language file handling is now non-destructive: startup repair only targets clearly corrupted message files, with automatic backfill of missing message keys while preserving existing translations/customizations.
Optional dependencies
Supplementary resources
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:14xPXPKx:qqW3qMTG"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:14xPXPKx:qqW3qMTG"
}
