
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
Автор: Shadow4840214,9 тыс.11обновлён 27 июл. 2026 г.
ПриключенияЭкономикаМеханики игры
Описание
Advanced Random Teleport Plugin
Production-ready random teleport plugin for modern Minecraft servers.
Documentation: https://ez-plugins.github.io/EzRTP
Installation guide: https://ez-plugins.github.io/EzRTP/overview-installation.html#installation
< 3.0.0build on Java 17 (MC 1.13 - 1.21.11.*) for Bukkit/Paper/Spigot/Purpur/Folia>= 3.0.0build on Java 25 (MC 26.1.*) for Bukkit/Paper/Spigot/Purpur/Folia>= 3.1.0build on Java 17 (MC 1.13 - 1.21.11.*) for Bukkit/Paper/Spigot/Purpur/Folia
Modrinth • SpigotMC • Hangar • Discord
Feature Summary
- Safe random teleport with configurable unsafe-block filtering and recovery behavior.
- Biome include/exclude filtering, pre-cache, and rare-biome optimization (weighted search + hotspot tracking).
- Search pattern control:
random,circle,square,triangle,diamond. - Queue controls and cooldown/usage limits per world and per group.
- GUI destination selector with per-destination permissions.
- Heatmap tools (
/rtp heatmap,/rtp heatmap save) and simulated samples (/rtp fake). - Named centers (
/rtp addcenter,/rtp <center-name>) and center editing (/rtp setcenter). - Optional network selector entries via
network.yml. - Optional Chunky pre-generation command (
/rtp pregenerate [world] [radius]). - Optional performance and unsafe-location monitoring exports.
- Folia-compatible runtime behavior for modern server scheduling models.
Feature Preview
Biome Statistics Dashboard

Heatmap Visualization

World Selector GUI

Subcommands
Main Commands
| Command | Description | Permission |
|---|---|---|
/rtp | Default RTP flow (GUI or direct teleport based on setup) | ezrtp.use |
/forcertp <player> [world] | Force RTP for a target player | ezrtp.forcertp |
/rtp Subcommands
| Subcommand | Usage | Permission | Notes |
|---|---|---|---|
reload | /rtp reload | ezrtp.reload | Reload configuration |
stats | /rtp stats | ezrtp.stats | Overall RTP metrics |
stats biomes | /rtp stats biomes [page] | ezrtp.stats | Biome activity + paging |
stats rare-biomes | /rtp stats rare-biomes | ezrtp.stats | Rare-biome optimization stats |
stats performance | /rtp stats performance | ezrtp.stats | Percentile/timing metrics |
unsafe-stats | /rtp unsafe-stats | ezrtp.stats | Unsafe rejection breakdown |
heatmap | /rtp heatmap [biome] | ezrtp.heatmap | Gives in-game heatmap map |
heatmap save | /rtp heatmap save | ezrtp.heatmap | Saves heatmap PNG to plugin folder |
fake | `/rtp fake <amount | clear> [world]` | ezrtp.heatmap.fake |
setcenter | /rtp setcenter <x> <z> or /rtp setcenter <world> <x> <z> | ezrtp.setcenter | Updates world center and reloads |
addcenter | /rtp addcenter <name> | ezrtp.setcenter | Stores named center at player location |
pregenerate | /rtp pregenerate [world] [radius] | ezrtp.pregenerate | Starts Chunky-assisted warmup tasks |
Extra RTP Routing
/rtp <center-name>: teleports usingcenters.named.<name>fromrtp.yml./rtp <region-id>: WorldGuard region-based RTP whenworldguard.region-command.enabled: true.
Permissions
Declared in plugin.yml
| Permission | Default | Purpose |
|---|---|---|
ezrtp.use | true | Use /rtp |
ezrtp.reload | op | Use /rtp reload |
ezrtp.stats | op | Use stats/unsafe-stats |
ezrtp.heatmap | op | Use heatmap generation/export |
ezrtp.heatmap.fake | op | Use /rtp fake |
ezrtp.queue.bypass | op | Bypass queue |
ezrtp.forcertp | op | Use /forcertp |
Used by Runtime/Config
| Permission | Source | Purpose |
|---|---|---|
ezrtp.setcenter | command code | Access setcenter and addcenter |
ezrtp.pregenerate | command code | Access /rtp pregenerate |
ezrtp.bypass.cooldown | limits.yml defaults | Cooldown bypass |
ezrtp.bypass.limit | limits.yml defaults | Daily/weekly limit bypass |
ezrtp.gui.<name> | gui.yml entries | Per-destination GUI access |
Configuration Files
EzRTP now splits configuration by concern.
| File | Scope | Example Keys |
|---|---|---|
config.yml | Core plugin/global options | message-prefix, language, enable-bstats, worldguard.region-command.* |
rtp.yml | RTP behavior and safety | search-pattern, radius.*, countdown.*, unsafe-blocks, biomes.*, chunky-integration.* |
limits.yml | Cooldowns/usage/cost profiles | rtp-limits.default, rtp-limits.worlds, allow-gui-during-cooldown |
storage.yml | Limits storage backend | rtp-limits.storage, rtp-limits.mysql.* |
gui.yml | GUI layout and destinations | enabled, rows, worlds.*.icon, disable-cache-filtering, rare_biomes.* |
queue.yml | Queue throttling | enabled, max-size, start-delay-ticks, interval-ticks |
network.yml | Proxy/server selector | enabled, lobby, servers.<name>.* |
force-rtp.yml | /forcertp behavior | default-world, bypass.cooldown, bypass.permission, bypass.safety |
performance.yml | Optional perf monitoring | performance.monitoring.enabled, warnings.*, metrics.*, percentiles.* |
unsafe-location-monitoring.yml | Optional unsafe tracking | unsafe-location-monitoring.monitoring.enabled, logging.*, metrics.* |
messages/en.yml | User-facing text templates | teleport-*, queue-*, forcertp-*, heatmap-*, fake-*, stats-* |
Current Core Defaults (selected)
# config.yml
message-prefix: "&7[&bEzRTP&7] &r"
language: en
enable-bstats: true
worldguard:
region-command:
enabled: false
autocomplete: false
# rtp.yml
search-pattern: random
max-attempts: 16
countdown-seconds: 5
heatmap:
enabled: false
biomes:
enabled: true
pre-cache:
enabled: false
rare-biome-optimization:
enabled: false
chunky-integration:
enabled: false
# limits.yml
rtp-limits:
default:
cooldown-seconds: 300
daily-limit: 10
weekly-limit: 50
bypass-permissions:
- ezrtp.bypass.cooldown
- ezrtp.bypass.limit
allow-gui-during-cooldown: true
# storage.yml
rtp-limits:
storage: yaml # yaml or mysql
Requirements
- Java 17 or newer.
- Bukkit, Paper, Purpur, Spigot, or Folia 1.7+.
- Optional: Vault/EzEconomy for pricing.
- Optional: WorldGuard/GriefPrevention for claim-aware behavior.
- Optional: Chunky for pre-generation workflows.
Support
- Discord: https://discord.gg/yWP95XfmBS
- Project and releases: https://github.com/ez-plugins/EzRTP
Галерея
Последние версии
Все версии →release
EzRTP 3.4.3
3.4.327 июл. 2026 г.6,1 тыс.Minecraft: 1.13, 1.13.1, 1.13.2, 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, folia, paper, purpur, spigot
Что нового
### Fixed
- Fixed `/rtp` intermittently failing (observed on Purpur) with `CompletionException - java.lang.IllegalArgumentException: argument type mismatch` during async location search. The Folia region/global-scheduler reflection bridges in `PaperPlatformScheduler` and `BukkitPlatformScheduler` only caught `ReflectiveOperationException` around `Method.invoke()` calls; they now also catch `RuntimeException` and fall back to the standard Bukkit scheduler instead of letting the exception propagate. This can occur even on non-Folia servers whose classpath carries the Folia regionized-runtime marker class.
- `BukkitPlatformScheduler#executeRegion`/`executeGlobal`/`executeGlobalDelayed`/`executeRegionDelayed` now consistently fall back to the standard Bukkit scheduler when the reflective Folia scheduler call fails, instead of silently dropping the task (matching existing `PaperPlatformScheduler` behavior).
### Added
- Regression test coverage for the scheduler reflection-fallback fix:
- `PaperPlatformSchedulerReflectionFallbackTest` and `BukkitPlatformSchedulerReflectionFallbackTest` simulate a broken region/global-scheduler reflection call and verify the submitted task still runs via the standard scheduler fallback.
- `PlatformRuntimeCapabilities.PURPUR_REGIONIZED` constant documenting the exact capability combination that triggered the bug.
---
release
EzRTP 3.4.2
3.4.27 июл. 2026 г.1,2 тыс.Minecraft: 1.13, 1.13.1, 1.13.2, 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, folia, paper, purpur, spigot
Что нового
### Fixed
- `/rtp reload` now immediately applies GUI configuration updates from `gui.yml` by rebuilding GUI rendering from the current in-memory configuration instead of startup-cached values.
- Reload now closes both standard RTP GUI sessions and faction-claim GUI sessions so open inventories cannot retain stale pre-reload settings.
### Added
- Focused regression test coverage for GUI reload behavior:
- `RandomTeleportGuiManagerReloadConfigTest` verifies that opening the GUI after configuration replacement uses the updated title and row count immediately.
---
release
EzRTP 3.4.1
3.4.16 июл. 2026 г.110Minecraft: 1.13, 1.13.1, 1.13.2, 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2, 26.2bukkit, folia, paper, purpur, spigot
Что нового
### Added
- Minecraft `26.2` compatibility updates:
- added `SULFUR_CAVES` to rare-biome defaults/search paths,
- updated biome compatibility handling for modern registry-based lookup paths.
### Changed
- CI server download resolution migrated to PaperMC Fill API (`fill.papermc.io`) and now sends an explicit non-generic `User-Agent` header as required by the service.
- Smoke testing workflow expanded from a single Folia target to a matrix that validates:
- latest Folia build, and
- Paper `1.13.x` for earliest supported compatibility coverage.
- Dependency and tooling updates merged via Dependabot:
- `com.github.ez-plugins:teams-api` `1.8.0` -> `2.4.0`.
- GitHub Actions `actions/checkout` `v6` -> `v7`.
- GitHub Actions `DavidAnson/markdownlint-cli2-action` `v23` -> `v24`.
- Kyori Adventure BOM and related versions moved to `5.2.0` for current Paper API compatibility.
### Fixed
- GitHub Actions workflow resolver for smoke-test target versions:
- fixed YAML parsing issues in embedded resolver scripting,
- fixed selector propagation into Python resolver invocation,
- fixed mixed-type version sort key handling that could fail on Paper version token comparisons.
- Removed a duplicate stale block in `messages/en.yml` that produced duplicate-key warnings at startup.
- Replaced deprecated `Biome.valueOf`/`Biome.values` usage with compatibility-safe registry-backed resolution paths used across biome-related logic.
---
release
EzRTP 3.4.0
3.4.024 мая 2026 г.1,5 тыс.Minecraft: 1.13, 1.13.1, 1.13.2, 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2bukkit, folia, paper, purpur, spigot
Что нового
### Added
- **EzCountdown integration** (optional soft-dependency):
- RTP countdown display can now be delegated to [EzCountdown](https://modrinth.com/plugin/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 in `rtp.yml` (disabled by default).
- `EzCountdown` added as optional soft-dependency in `plugin.yml`.
- **Factions RTP (TeamsAPI)**:
- Added `/rtp faction` to open a claim-selection GUI from all TeamsAPI claims available to the player's team.
- Added TeamsAPI subcommand integration for `/f rtp` via 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.
- **New `faction-gui.yml` file** for full claim-GUI configuration.
- **Heatmap claim overlays** (admin insight):
- Added claim border overlay mode for `/rtp heatmap` and `/rtp heatmap save` via `claims-overlay` flag.
- Added `rtp.yml` options under `heatmap.claims-overlay.*`:
- `enabled`
- `style` (`border`)
- `color`
- `line-width`
- **Claim-constrained fake RTP simulation**:
- Added `/rtp fake <amount> claims [world]` to generate simulated points on faction claims owned by the executor’s team.
### Changed
- **TeamsAPI** dependency bumped from `1.4.1` to `1.8.0`.
- TeamsAPI `/f rtp` subcommand integration rewritten: replaced the reflection-based `Proxy` approach with a proper `AbstractTeamsSubcommand` subclass (requires TeamsAPI ≥ 1.8.0).
- TeamsAPI subcommand registration now uses an explicit `isPluginEnabled("TeamsAPI")` guard instead of relying on `NoClassDefFoundError` suppression.
- 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-notifier` with 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 heatmap` no 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.
---
release
EzRTP 3.3.0
3.3.016 мая 2026 г.312Minecraft: 1.13, 1.13.1, 1.13.2, 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2bukkit, folia, paper, purpur, spigot
Что нового
### Added
- **PvP tag integration**: EzRTP now detects when a player enters combat and cancels their
pending teleport or active countdown. Three plugins are supported out of the box:
- **[CombatLogX](https://www.spigotmc.org/resources/combatlogx.31689/)** — auto-detected at startup; soft dependency.
- **[PvPManager](https://modrinth.com/plugin/pvpmanager)** — auto-detected at startup; soft dependency.
- **[Simple Combat Log](https://modrinth.com/plugin/simple-combatlog)** (NikeyV1/CombatLog) — auto-detected at startup; soft dependency.
- All three are added to `softdepend` in `plugin.yml` so they load before EzRTP when
present. No configuration change is required on servers that do not use any of them.
- New `pvp-tag-integration` section in `rtp.yml`:
- `cancel-countdown-on-pvp-tag` (default `true`): cancel an active countdown the moment
the player is tagged.
- `cancel-queued-on-pvp-tag` (default `true`): skip a queued teleport if the player is
already in combat when their slot is dispatched.
- New message keys `countdown-pvp-cancel` and `queue-pvp-tag-cancel` in `messages/*.yml`
for the cancellation notifications.
- Modrinth release metadata now declares `pvpmanager` and `simple-combatlog` as optional
dependencies.
---
release
EzRTP 3.2.3
3.2.316 мая 2026 г.58Minecraft: 1.13, 1.13.1, 1.13.2, 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2bukkit, folia, paper, purpur, spigot
Что нового
### Fixed
- **Folia teleport crash** (`UnsupportedOperationException: Must use teleportAsync while in
region threading`): `BukkitPlatformScheduler` now overrides `teleportAsync` and, when running
on Folia (`regionizedRuntime` capability), calls `player.teleportAsync(Location)` via
reflection instead of the forbidden synchronous `player.teleport()`. The Bukkit module was
the only scheduler that still used the synchronous fallback from the interface default;
`PaperPlatformScheduler` already called `teleportAsync` directly.
---
release
EzRTP 3.2.2
3.2.212 мая 2026 г.130Minecraft: 1.13, 1.13.1, 1.13.2, 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2bukkit, folia, paper, purpur, spigot
Что нового
### Fixed
- `BukkitPlatformScheduler` now handles Folia servers correctly. Previously, running EzRTP on
Folia without the Paper runtime module caused an `UnsupportedOperationException` during plugin
enable because the Bukkit `CraftScheduler` rejects all synchronous task scheduling on Folia.
The scheduler now detects `regionizedRuntime` capabilities and routes all scheduling calls
through Folia's `GlobalRegionScheduler` / `RegionScheduler` via reflection, matching the
behaviour already present in `PaperPlatformScheduler`.
---
release
EzRTP 3.2.1
3.2.111 мая 2026 г.90Minecraft: 1.13, 1.13.1, 1.13.2, 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2bukkit, folia, paper, purpur, spigot
Что нового
### Fixed
- `PerformanceSnapshot#fmt` now passes `Locale.US` to `String#format`, ensuring decimal separators are always locale-independent (dots, not commas).
### Changed
- Dependency scope for `ezrtp-common` in the `ezrtp-paper` and `ezrtp-purpur` modules changed to `provided`; the common module is bundled by the main plugin JAR and must not be re-included by platform modules.
---
release
EzRTP 3.2.0
3.2.010 мая 2026 г.77Minecraft: 1.13, 1.13.1, 1.13.2, 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2bukkit, folia, paper, purpur, spigot
Что нового
### Added
- **TeamsAPI claim avoidance**: EzRTP now integrates with [TeamsAPI](https://modrinth.com/plugin/teams-api) to skip chunk-claimed areas during RTP destination search.
- New protection provider id: `teamsapi`. Works alongside the existing `worldguard` and `griefprevention` providers.
- Enabled automatically when TeamsAPI (with a compatible claim provider) is installed. Silently skipped when absent, no errors, no configuration changes required.
- `teamsapi` added to the default `protection.providers` list in `rtp.yml`.
- `TeamsAPI` added to `softdepend` in `plugin.yml`.
- Claim availability is evaluated dynamically per check, so a claim plugin that loads after EzRTP is picked up without a reload.
---
beta
EzRTP 3.1.0-nightly.20260510
3.1.0-nightly.2026051010 мая 2026 г.64Minecraft: 1.13, 1.13.1, 1.13.2, 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2bukkit, folia, paper, purpur, spigot
Что нового
### Added
### Changed
### Fixed
### Removed
---
#### Notes
> 🌙 Automated nightly beta build from `v3.x` (May 10, 2026).
>
> Built from [`a335e34`](https://github.com/ez-plugins/EzRTP/commit/a335e3437e138f29a8ae5f6f7aa86825d5aa892f)




