LodestoneTPA
Cross-Server Teleportation & Persistent Homes for Modern Networks
A comprehensive teleportation suite with cross-server proxy support, persistent homes, interactive GUIs, economy integration, and intelligent safe-location detection. Built for networks running BungeeCord, Velocity, or similar proxies, and equally functional on standalone servers.
Features
Core Teleportation
- Two-way request system: teleport to a player, or request a player to teleport to you
- Cross-server requests routed through the proxy with synchronized player data — requests work seamlessly whether the target is on the same server or across the network
- Configurable request timeout with auto-expiry
- Warmup period before teleport fires, cancelled on movement or damage
- Per-player cooldowns with bypass permission
- Mass request commands for events and gatherings
- Per-player ignore lists and a global toggle for incoming requests
- Return-to-previous-location functionality across server boundaries
Homes System
- Persistent named home locations stored per player, accessible from any server on the network
- Configurable home limit per permission group, with the ability to grant additional slots
- Default home shortcut when no name is specified
- Set, delete, rename, and list operations
- Cross-server home teleportation: setting a home on one server and using it from another transfers the player automatically
- Optional public homes that other players can visit with permission
Interactive GUIs
- Menu-driven interface for all major actions — no need to memorize commands
- Request management GUI showing all pending incoming and outgoing requests with accept, deny, and cancel buttons
- Homes browser with sortable icons, optional custom display items, and one-click teleport
- Player selector GUI for choosing TPA targets without typing names
- Settings panel for toggling ignore status, request privacy, and notification preferences
- Confirmation prompts for paid actions and destructive operations
Economy Integration (Vault)
- Configurable costs for each teleport type: tpa, tpahere, home use, home creation, back command, and cross-server transfers
- Per-permission cost overrides, allowing donor ranks to receive discounts or free use
- Optional charge-on-completion mode that only deducts funds if the teleport succeeds
- Refund logic for cancelled, denied, or interrupted teleports
- In-GUI cost display so players see prices before confirming
- Currency formatting respects the active Vault economy provider
Safe Location Detection
- Pre-teleport scan of the destination block and surrounding area
- Detects unsafe conditions: lava, void, suffocation hazards, fall damage drops, fire, cactus, and unloaded chunks
- Configurable resolution behavior on unsafe destinations: cancel the teleport, search nearby for the closest safe spot within a configurable radius, or teleport to the world spawn as a fallback
- Asynchronous chunk loading on cross-server teleports to avoid placing players in ungenerated terrain
- Optional combat-tag check that blocks teleportation while in PvP
- World blacklist and per-world cost or permission overrides
Additional
- Hot-reloadable configuration
- Full message localization with placeholder support
- PlaceholderAPI integration for use in scoreboards, chat, and other plugins
- Database backend supporting SQLite for single servers and MySQL or MariaDB for networks
- Compatible with major proxy plugins for player messaging and server transfers
Commands
| /tpa |
Send a request to teleport to the target player, including across servers |
| /tpahere |
Request the target player to teleport to you |
| /tpaccept [player] |
Accept the most recent or a specific incoming request |
| /tpdeny [player] |
Deny the most recent or a specific incoming request |
| /tpacancel |
Cancel your active outgoing request |
| /tpalist |
Open the GUI listing all pending requests |
| /tpatoggle |
Toggle whether you accept incoming requests |
| /tpaignore |
Add a player to your ignore list |
| /tpaunignore |
Remove a player from your ignore list |
| /tpaall |
Request to teleport to every online player on the network |
| /tpahereall |
Request every online player to teleport to you |
| /tpamenu |
Open the main GUI menu |
| /sethome [name] |
Save your current location as a home |
| /home [name] |
Teleport to one of your homes, opening the GUI if no name is given |
| /delhome |
Delete a saved home |
| /renamehome |
Rename an existing home |
| /homes [player] |
List your homes, or another player's public homes |
| /back |
Return to your previous location, including across servers |
| /tpabypass |
Toggle warmup, cooldown, and cost bypass |
| /tpareload |
Reload the plugin configuration |
Permissions
| tpa.use |
true |
Access to basic request commands |
| tpa.cross-server |
true |
Send requests across the proxy network |
| tpa.toggle |
true |
Use the toggle and ignore system |
| tpa.all |
op |
Use mass request commands |
| tpa.gui |
true |
Access to GUI menus |
| tpa.home.use |
true |
Use saved homes |
| tpa.home.set |
true |
Create new homes |
| tpa.home.limit. |
— |
Override the default home limit |
| tpa.home.public |
false |
Create homes other players can visit |
| tpa.back |
true |
Use the return command |
| tpa.economy.bypass |
op |
Skip all teleport costs |
| tpa.bypass |
op |
Skip warmup and cooldown |
| tpa.admin |
op |
Reload and administrative commands |
Dependencies
- A supported proxy plugin for cross-server functionality (BungeeCord, Velocity, etc.)
- Vault for economy integration, with any compatible economy plugin
- PlaceholderAPI for placeholder support
- MySQL or MariaDB for network-wide data synchronization on multi-server setups (SQLite included for standalone)
Configuration
All timing, costs, safe-location behavior, GUI layouts, home limits, world restrictions, message formatting, and per-permission overrides are defined in the plugin's configuration files (config.yml and messages.yml). Both support hot-reload via
/tpareload.
Installation
- Drop TPA-1.0.0-slim.jar into your server's plugins/ folder
- Start the server once to generate config.yml and messages.yml
- Edit configs to taste, then /tpareload or restart
- Optional: install Vault + economy plugin for paid teleports, PlaceholderAPI for placeholders
Tested on Spigot/Paper 1.20 through latest. Built against the Paper API for full compatibility with Spigot, Paper, and forks.