Sueta

Enes RtpZone | Plugin

1.0

Advanced RTP Zone System with global countdown, instant teleportation, and multi-platform support (Paper/Folia/Purpur). Features configurable target worlds, async chunk loading, and safe location dete

·Config
  1. 1.0latestEnesRtpZone PurpurJun 27, 2026

    EnesRTPZone — Advanced Random Teleportation Zone System (Paper / Folia / Purpur)

    What is EnesRTPZone?

    EnesRTPZone is a Paper-compatible (API 1.21+), Folia-supported, and Purpur-friendly Minecraft plugin that transforms any designated region into an interactive teleportation hub. Players are automatically transported to safe random locations after a synchronized global countdown.

    Who should download EnesRTPZone?

    - Server owners who want a shared global countdown teleport system for all players in a zone - Staff who need wand-based zone creation and configurable RTP radius settings - Anyone searching for: Minecraft RTP plugin, random teleport zone, Paper 1.21 teleport, Folia teleport zone, global countdown teleport, safe location finder

    Complete feature list

    Commands - /rtpzone — Displays the help menu with all available subcommands. - /rtpzone wand — Gives you the selection wand (wooden axe) to define zone boundaries. Left-click sets position 1, right-click sets position 2. - /rtpzone create <name> — Creates a new RTP zone from your selected positions. Selections are cleared automatically after creation. - /rtpzone delete <name> — Deletes a named zone permanently. Tab-completion shows existing zone names. - /rtpzone reset (or /rtpzone clear) — Clears your current position 1 and position 2 selections. - /rtpzone reload — Reloads config.yml, messages.yml, and all zone data without a server restart. Permissions - rtpzone.admin — Grants access to all commands (zone creation, deletion, wand, reload, selections). Global synchronized countdown - All players inside any RTP zone see the same countdown timer, synced via a server-wide scheduler. - Countdown displayed as immersive title/subtitle messages, updated every second. - Configurable duration via rtp.countdown in config.yml (default: 30 seconds). - When the timer reaches zero, every player currently inside a zone is teleported simultaneously to a random safe location. - Players who enter mid-cycle join the current countdown immediately. - Players who leave before the timer ends are removed from the queue; no teleport occurs. Intelligent safe-location finder - Random X/Z coordinates within configurable min-radius and max-radius bounds. - Scans from the top of the world downward to find the first solid block (avoids air spawns). - Built-in hazard rejection: lava, water, cactus, and void-adjacent positions are detected and skipped. - Retries up to 15 times before giving up with a "safe area not found" message. Wand-based zone selection - Administrative players receive a wooden axe with a custom display name and lore via /rtpzone wand. - Left-click a block to set position 1; right-click a block to set position 2. - Both positions are stored per-player and cleared automatically after zone creation (or manually via /rtpzone reset). - Zone bounds are saved to config.yml under zones.* with world name and min/max coordinates. Player entry/exit tracking (`CountdownManager`) - Thread-safe ConcurrentHashMap-backed set tracks which players are currently inside any zone. - PlayerMoveEvent handler detects zone entry and exit with block-level movement filtering (ignores rotation/fluid jitter). - Entering a zone starts the per-player title task and sends an "entered-zone" message. - Leaving a zone cancels the title task, removes the player from the countdown set, and sends a "left-zone" message. - Player quit event cleans up the title task automatically. PlaceholderAPI integration - Placeholder: %rtpzone_cooldown% — Returns the remaining seconds before the next global teleport. - Time-based (System.currentTimeMillis), so the placeholder is always in sync with the displayed countdown. Hologram support - Compatible with FancyHolograms and DecentHolograms (auto-detected at startup). - Displays the remaining countdown time on a hologram named rtpzone_cooldown. Fully customisable messages (`messages.yml`) - All player-facing text is YAML-driven with & colour codes and hex support (&#RRGGBB). - Configurable chat prefix, wand name/lore, zone creation/deletion messages, countdown title/subtitle text, and help menu entries. - Reloaded via /rtpzone reload without restart. Multi-platform support - Declared api-version: '1.21' and folia-supported: true in plugin.yml. - Uses GlobalRegionScheduler, RegionScheduler, and EntityScheduler from the Paper/Folia API. - Fully functional on Paper, Folia, and Purpur servers from a single jar. - Maven build profiles produce platform-specific artifacts (-paper, -folia, -purpur) with ProGuard obfuscation.

    Typical staff journey (in-game)

    1. Staff runs /rtpzone wand — receives the selection wand with a gradient-coloured name and lore. 2. Staff left-clicks a block to set position 1 and right-clicks another block to set position 2 — chat confirms both selections. 3. Staff runs /rtpzone create spawnrtp — the zone is saved to config.yml and is now active. 4. A player walks into the zone — they see the countdown title and an "entered-zone" chat message. 5. When the global timer reaches zero, the player is teleported to a random safe location with a confirmation message. 6. Staff runs /rtpzone delete spawnrtp — removes the zone and its configuration entry. 7. Staff runs /rtpzone reload after editing messages.yml — all messages and zones reload without restart.

    Installation

    1. Download the EnesRtpZone jar matching your server platform (-paper, -folia, or -purpur) and place it in the plugins folder. 2. Start the server once to generate default config.yml and messages.yml under plugins/EnesRTPZone/. 3. Edit config.yml to set your countdown duration, radius bounds, and target world. 4. (Optional) Customise messages.yml to change the prefix, wand name, countdown titles, and all other player-facing text. 5. Run /rtpzone reload to apply changes without a full restart.

    Configuration files

    config.yml — Main plugin settings:
    rtp:
      countdown: 30
      max-radius: 10000
      min-radius: 1000
      target-world: "world"
    
    zones: {}
    messages.yml — All player-facing messages including prefix, wand display name/lore, zone creation/deletion/entry/exit messages, countdown titles, help menu entries, and error messages. Supports & colour codes and &#RRGGBB hex colours.
    41 downloads

Similar projects

Config →