ZenTPA
PluginMIT

ZenTPA

Fully featured, interactive teleport requests.

5
Downloads
0
Followers
1 months ago
Updated
📦
1
Versions

📖About ZenTPA

ZenTPA

ZenTPA

paper
purpur
github
discord-plural

A teleport-request plugin for Paper 1.21.x servers. Players send /tpa or /tpahere requests, the recipient gets clickable [Accept] and [Deny] buttons in chat, and the teleport fires after an optional warm-up countdown.


Installation

  1. Download the latest ZenTPA-*.jar from Releases or Modrinth.
  2. Drop it in your plugins/ folder and restart.
  3. Edit plugins/ZenTPA/config.yml and messages.yml to your liking.
  4. Run /zentpa reload to apply changes without a full restart.

Commands

Command Description
/tpa <player> Request to teleport yourself to <player>.
/tpahere <player> Request that <player> teleports to you.
/tpaccept [player] Accept a pending request.
/tpdeny [player] Deny a pending request.
/tpcancel Cancel your outgoing request.
/tptoggle Toggle whether you accept incoming requests.
/tplist List all pending requests with action buttons.
/zentpa reload Reload config.yml and messages.yml.

Permissions

Permission Default Description
zentpa.use everyone Access to all player-facing TPA commands.
zentpa.admin op Use /zentpa reload.
zentpa.bypass.cooldown op Skip cooldown.
zentpa.bypass.cost op Skip costs.

Configuration

All settings live in plugins/ZenTPA/config.yml with inline comments. Key areas:

  • Requests — timeout, cooldown, default accept state, allow multiple incoming
  • Warm-up — delay in seconds (0 for instant), cancel-on-move
  • Costs — hunger, XP, or Vault money (charged to the teleporting player)
  • Effects — post-teleport blindness, nausea, invulnerability, fire resistance
  • Sounds & titles — six individually configurable sounds, title fade timings

Edit messages.yml to customize all chat messages, including the clickable accept/deny buttons (pure MiniMessage — no Java changes needed). Both MiniMessage (<red>…</red>) and legacy (&c) formats are supported.


Optional Dependencies

  • Vault — required only if using currency-cost
  • PlaceholderAPI — enables %zentpa_accepting%, %zentpa_incoming_count%, %zentpa_outgoing_count%, and %zentpa_cooldown%

Building

git clone https://github.com/maybeizen/zentpa.git
cd ZenTPA
./gradlew shadowJar

Output: build/libs/ZenTPA-*.jar


Author: maybeizen · MIT License · Companion plugin: ZenRTP