ALOL-TPA
🌀 tpaplugin
A clean, all-in-one teleportation plugin for Paper/Spigot servers.
Handles player-to-player teleport requests, home points, and death-location recall
✨ Features
/tpa— Request to teleport to another player/tpahere— Request another player to teleport to you- 60-second request timer — Requests auto-expire if ignored
/sethome//home— Save and return to a personal home location/back— Return to your last death location, even after rejoin or server restart- Smart safety checks —
/backnever drops you into lava, fire, water, solid blocks, the Nether roof, or a mob swarm - Nearest safe fallback — If your death spot is dangerous, the plugin automatically finds the closest safe position nearby
📋 Commands
| Command | Description |
|---|---|
/tpa <player> |
Request to teleport to a player |
/tpahere <player> |
Request a player to teleport to you |
/tpaccept |
Accept an incoming teleport request |
/tpacancel |
Cancel or decline a teleport request |
/sethome |
Save your current location as home |
/home |
Teleport to your saved home |
/back |
Teleport to your last death location |
🛡️ Safety System
The /back command runs a full safety check before teleporting you to your death location.
Dangers detected:
| Danger | Check |
|---|---|
| Suffocation | Solid block at feet or head level |
| Fall / void | No solid ground directly below |
| Lava | Lava at ground, feet, or head |
| Fire / Soul Fire | Fire at feet or head |
| Magma Block | Standing surface is magma |
| Water | Water at feet or head (drowning) |
| Cactus / Berry Bush / Wither Rose | Contact damage blocks |
| Powder Snow | Freezing damage |
| Too many monsters | 3+ hostile mobs within 5 blocks (configurable) |
If any danger is detected, the plugin searches outward (up to 64 blocks by default) for the nearest safe position and teleports you there instead.
Nether support — The plugin never uses
getHighestBlockYAt()in the Nether (which returns the bedrock roof). All Nether teleports are kept strictly within the playable Y range defined in your config.
📦 Installation
- Download the
.jarfile - Drop it into your server's
plugins/folder - Start or reload the server
- A
config.ymlwill be generated automatically inplugins/tpaplugin/ - Edit any values and use
/tpaplugin reloadto apply changes without restarting
Requires: Paper or Spigot 1.20+
🗂️ Data Storage
Player homes and death locations are saved to YAML files inside the plugin folder:
plugins/tpaplugin/
homes.yml ← one home per player (persists across restarts)
back.yml ← last death location per player (persists across restarts)
No database setup required.
🐛 Issues & Source
Found a bug or want to contribute?
Open an issue or pull request on GitHub.
Made with ❤️ by pSyChO