Compatibility
Minecraft: Java Edition
Platforms
Links
Tags
Creators
Details
🌌 ExoTPA — Modern Teleport Requests
Fast teleport requests with clickable chat buttons, player settings, confirmation GUIs, and countdown-based teleports.
🔍 What is ExoTPA?
ExoTPA is a modern TPA plugin focused on making teleport requests cleaner and easier for players to manage.
Players can send /tpa or /tpahere requests, accept or deny them directly from chat, toggle auto-accept, and control incoming requests through a built-in settings GUI. Teleports use a configurable countdown system with movement cancellation support to prevent instant escapes.
✨ Features
💬 Clickable Chat Requests Incoming teleport requests include clickable accept and deny buttons directly in chat.
🖥️ Settings GUI Players can manage TPA preferences from an in-game GUI instead of commands only.
⚡ Auto Accept
Toggle automatic acceptance for incoming teleport requests with /tpauto.
⏳ Teleport Countdown Accepted requests use a configurable countdown before teleporting.
🚫 Movement Cancel Support Teleportation cancels automatically if the player moves during the countdown.
🎨 Fully Configurable
Messages, sounds, colors, countdown length, and request timeout values can all be changed in config.yml.
🌈 Hex Color Support
Supports modern hex colors using &#RRGGBB.
📋 Commands
| Command | Description |
|---|---|
/tpa <player> |
Send a teleport request |
/tpahere <player> |
Request a player to teleport to you |
/tpaccept |
Accept a teleport request |
/tpdeny |
Deny a teleport request |
/tpacancel |
Cancel your outgoing request |
/tpasettings |
Open the settings GUI |
/tpauto |
Toggle auto-accept |
⚙️ Requirements
- Minecraft: 1.21+
- Server Software: Paper, Spigot, or compatible forks
📦 Installation
- Drop
ExoTPA.jarinto yourplugins/folder. - Restart the server.
- Edit
plugins/ExoTPA/config.ymlif needed. - Done.
🛠️ Configuration
ExoTPA config.yml:
# ExoTPA Configuration File
# Hex color format: &#RRGGBB
# Standard color codes: &a, &c, &f, etc.
# Request timeout in seconds
request-timeout: 30
# Teleport countdown in seconds
teleport-countdown: 5
messages:
# TPA Request Messages
tpa-sent: "&fTeleport request sent to &#FF4D6D{player}&f!"
tpahere-sent: "&fTeleport here request sent to &#FF4D6D{player}&f!"
# Incoming Request Messages (Action Bar)
tpa-received: "&#FF4D6D{player} &fsent you a teleport request!"
tpahere-received: "&#FF4D6D{player} &fsent you a teleport here request!"
# Incoming Request Messages (Chat with buttons)
tpa-received-chat: "&#FF4D6D{player} &fsent you a teleport request!"
tpahere-received-chat: "&#FF4D6D{player} &fsent you a teleport here request!"
# Response Messages
tpa-accepted: "�F986Teleport request accepted!"
tpa-denied: "&#FF4D6DTeleport request denied."
tpa-cancelled: "&#FF4D6DTeleport request cancelled."
# Error Messages
no-pending-request: "&#FF4D6DYou don't have any pending teleport requests."
player-not-found: "&#FF4D6DPlayer not found or offline."
cannot-tpa-self: "&#FF4D6DYou cannot send a teleport request to yourself!"
already-have-request: "&#FF4D6DYou already have a pending teleport request!"
target-has-request: "&#FF4D6D{player} &falready has a pending teleport request!"
# Request Status Messages
request-expired: "&fYour teleport request to &#FF4D6D{player} &fhas expired."
request-expired-target: "&fTeleport request from &#FF4D6D{player} &fhas expired."
request-accepted-sender: "&#FF4D6D{player} &faccepted your teleport request!"
request-denied-sender: "&#FF4D6D{player} &fdenied your teleport request."
request-cancelled-target: "&#FF4D6D{player} &fcancelled their teleport request."
# Settings Messages
tpa-disabled: "&#FF4D6D{player} &fhas disabled TPA requests."
tpahere-disabled: "&#FF4D6D{player} &fhas disabled TPA Here requests."
settings-updated: "�F986Settings updated!"
auto-accept-enabled: "�F986Auto-accept enabled!"
auto-accept-disabled: "&#FF4D6DAuto-accept disabled!"
auto-accept-reminder: "&#FF4D6DREMINDER: &fYou have &#FF4D6DTPA AUTO &fenabled!"
# Teleportation Messages
teleporting-sender: "&fTeleporting &#FF4D6D{player} &fto you..."
teleporting-target: "&fTeleporting to &#FF4D6D{player}&f..."
teleport-countdown: "&fTeleporting in &#FF4D6D{seconds}s"
teleport-cancelled-move: "&#FF4D6DTeleportation cancelled because you moved!"
teleport-success: "�F986Teleported!"
📸 Visual Representation
images here


