RTP 3.0.0-beta.1
2.0.18 was the last release of the original codebase, which I'd marked abandoned.
3.0.0-beta is a ground-up rewrite of the same plugin — same goals, same spiral-based selection, same learned bad-sector memory, same per-region / per-world config — rebuilt on a modular engine.
Genuinely new since 2.0.18
- Off-tick chunk safety check on Spigot — RTP now parses .mca region files off-tick on ForkJoinPool.commonPool() before touching the chunk API. On vanilla Spigot, most search tasks no longer drive a synchronous main-thread chunk load.
- Active resource watchdog — chunk tickets and per-attempt pipeline tasks are tracked and reaped on every exit path. Fixes the memory caveat from the old V2 README.
- Modded / namespaced biome and block IDs preserved — the Anvil
reader keeps Iris / Terra / datapack IDs intact instead of going
through Bukkit's enum.
- Modular rewrite — rtp-api / rtp-core / per-platform adapters.
Addons now compile against rtp-api, not the plugin jar.
Carried over from 2.x (unchanged in spirit)
Spiral-based selection, learned bad-sector memory, per-region / per-world config, hot reload, vertical adjustors, multi-dimension
support, PlaceholderAPI placeholders, public addon API.
Heads-up — breaking changes from 2.0.18
- Java 21+ required (was Java 8/11 era).
- New config schema. 2.x configs are not drop-in — back up
plugins/RTP/ and let 3.0.0-beta regenerate.
- /rtp fill is renamed to /rtp scan
(start | pause | resume | reset | cancel).
- Emergency landing platform default changed — safety.yml now
ships platformRadius: -1 (disabled). Set 0 or higher for legacy 2.x
behavior.
- PaperLib dependency dropped — Paper provides native async.
- Fabric ships in-tree but is not functional in this beta —
don't deploy on Fabric.
Folia operators: the Folia adapter ships in
RTP-Pro, not
in this build.
This is a beta. Bug reports → GitHub issue with platform, RTP version, configs, and the relevant server.log section. Full notes:
CHANGELOG.md.