Compatibility
Minecraft: Java Edition
Platforms
Tags
Creators
Details
** UltimateTPA Plugin - Complete Summary
๐ Overview
| Property | Value |
|---|---|
| Plugin Name | UltimateTPA |
| Version | 1.0.0 |
| Minecraft Versions | 1.21.1 - 1.21.x |
| Server Software | Paper (and forks like Purpur) |
| Java Version | Java 21 |
| API | Paper API with Kyori Adventure |
๐ Description
UltimateTPA is an all-in-one teleportation plugin designed for modern Paper Minecraft servers. It combines three essential teleportation systems into a single, lightweight JAR file:
- TPA System - Player-to-player teleport requests
- RTP System - Random/Wild teleportation
- DeathTP System - Return to death location
The plugin features a modern codebase using Java 21, full MiniMessage support for colorful and clickable chat components, and highly configurable settings including optional warmup timers that can be completely disabled for instant teleportation.
๐ฏ Primary Uses
| Use Case | Description |
|---|---|
| Survival Servers | Allow players to teleport to friends and explore randomly |
| SMP Servers | Essential teleportation features for multiplayer communities |
| Towny/Nations | Players can quickly meet up for trading or collaboration |
| Adventure Servers | RTP for exploration, death back for recovering items |
| Mini-game Lobbies | Quick teleportation between players |
| Vanilla+ Servers | Adds convenience without breaking vanilla feel |
โจ Features
๐ Module 1: TPA System (Teleport Requests)
| Feature | Description |
|---|---|
| Send Requests | /tpa <player> - Request to teleport to another player |
| Open GUI (for TPA only) | /tpa - Open GUI that shows all players click on their head in GUI and tpa request sent easily |
| Accept/Deny | Recipients can accept or deny with commands or clickable buttons |
| Clickable Chat | Interactive [ACCEPT] and [DENY] buttons in chat |
| Request Expiry | Requests automatically expire after configurable time |
| Cooldowns | Prevent spam with configurable cooldown between requests |
| Toggle System | Players can block all incoming TPA requests |
| Auto-Accept | Players can enable automatic acceptance of all requests |
| Optional Warmup | Configurable delay before teleporting (can be disabled) |
| Cancel on Move | Warmup cancels if player moves (configurable) |
Commands:
/tpa - Open tpa GUI (only works for tpa)
/tpa <player> - Send teleport request
/tpaccept - Accept latest request
/tpdeny - Deny latest request
/tpacancel - Cancel your sent request
/tpatoggle - Toggle incoming requests on/off
/tpaauto - Toggle auto-accept mode
/tpreload - Reload configuration
๐ Module 2: RTP System (Random Teleport / Wild)
| Feature | Description |
|---|---|
| Random Location | Teleport to a random safe location in the world |
| Two Algorithms | CIRCLE (natural distribution) or SQUARE pattern |
| Safety Checks | Never land in lava, water, fire, or mid-air |
| Async Chunk Loading | Non-blocking location finding for better performance |
| Multi-World | Configure different settings per world |
| Configurable Radius | Set min/max distance from center point |
| Custom Center | Define origin coordinates for RTP area |
| Optional Warmup | Configurable delay (can be disabled for instant TP) |
| Cooldowns | Prevent spam with configurable cooldown |
| Admin Command | Force RTP players with custom parameters |
Commands:
/wild - Teleport to random location
/rtp - Alias for /wild
/randomtp - Alias for /wild
/wildrtp - Alias for /wild
/wild info - Show RTP settings for current world
/wild reload - Reload configuration
/wild help - Show help message
/customrtp <player> <world> <minR> <maxR> <x> <z> - Admin RTP
Safety Checks - Avoids:
- Lava and fire
- Deep water
- Mid-air spawns
- Magma blocks
- Cacti and berry bushes
- Powder snow
- Campfires
โ ๏ธ Module 3: DeathTP System
| Feature | Description |
|---|---|
| Death Location Saved | Automatically saves where players die |
| Teleport Back | /dback to return to death location |
| Private Death Message | Only the victim sees their death coordinates |
| Clickable Return | [GO BACK] button in death message |
| Hide Global Death | Option to cancel public death messages |
| Persistent Locations | Death location saved even after relog |
Commands:
/dback - Teleport to death location
/deathback - Alias for /dback
/back - Alias for /dback
/deathtp - Alias for /dback
โ๏ธ Configuration Highlights
Instant vs Delayed Teleportation
INSTANT TELEPORTATION (No warmup)
tpa:
warmup:
enabled: false
rtp:
warmup:
enabled: false
DELAYED TELEPORTATION (With warmup)
tpa:
warmup:
enabled: true
seconds: 3
cancel-on-move: true
rtp:
warmup:
enabled: true
seconds: 5
Multi-World RTP Configuration
rtp:
worlds:
world:
enabled: true
min-radius: 100
max-radius: 5000
center-x: 0
center-z: 0
algorithm: CIRCLE
world_nether:
enabled: true
min-radius: 50
max-radius: 1000
algorithm: CIRCLE
world_the_end:
enabled: false
MiniMessage Formatting
messages:
prefix: "<gray>[<gradient:00ff88:00aaff>UltimateTPA</gradient>]</gray> "
tpa:
sent: "<green>TPA request sent to <white>{player}</white>."
received: "<green>{player}</green> <yellow>wants to teleport to you!"
click:
accept: "<green><bold>[ACCEPT]</bold></green>"
deny: "<red><bold>[DENY]</bold></red>"
๐ Permissions
Player Permissions (Default: true)
| Permission | Description |
|---|---|
ultimatetpa.tpa |
Send TPA requests |
ultimatetpa.tpa.accept |
Accept TPA requests |
ultimatetpa.tpa.deny |
Deny TPA requests |
ultimatetpa.tpa.cancel |
Cancel sent requests |
ultimatetpa.tpa.toggle |
Toggle incoming requests |
ultimatetpa.tpa.auto |
Toggle auto-accept |
ultimatetpa.rtp |
Use random teleport |
ultimatetpa.rtp.info |
View RTP information |
ultimatetpa.deathtp |
Use death teleport |
Admin Permissions (Default: op)
| Permission | Description |
|---|---|
ultimatetpa.reload |
Reload configuration |
ultimatetpa.rtp.custom |
Use /customrtp command |
ultimatetpa.tpa.bypass.cooldown |
Bypass TPA cooldown |
ultimatetpa.rtp.bypass.cooldown |
Bypass RTP cooldown |
Wildcard Permissions
| Permission | Description |
|---|---|
ultimatetpa.* |
All permissions |
ultimatetpa.tpa.* |
All TPA permissions |
ultimatetpa.rtp.* |
All RTP permissions |
๐ต Sound Effects
| Event | Default Sound |
|---|---|
| Teleport | ENTITY_ENDERMAN_TELEPORT |
| Request Received | ENTITY_EXPERIENCE_ORB_PICKUP |
| Warmup Tick | BLOCK_NOTE_BLOCK_HAT |
| Warmup Cancel | ENTITY_VILLAGER_NO |
| Success | ENTITY_PLAYER_LEVELUP |
| Error | ENTITY_VILLAGER_NO |
All sounds are fully configurable with custom volume and pitch.
Design Patterns Used
| Pattern | Usage |
|---------|-------|
| **Singleton** | ConfigManager for global config access |
| **Manager Pattern** | Separate managers for each module |
| **Builder Pattern** | MiniMessage component building |
| **Observer Pattern** | Event listeners for game events |
| **Strategy Pattern** | RTP algorithms (CIRCLE/SQUARE) |
Performance Optimizations
| Optimization | Description |
|--------------|-------------|
| **Async Chunk Loading** | RTP uses Paper's async chunk API |
| **Efficient Move Check** | Only checks block changes, ignores head rotation |
| **ConcurrentHashMap** | Thread-safe data structures |
| **Lazy Cleanup** | Expired requests cleaned periodically |
| **Minimal Memory** | In-memory storage with automatic cleanup |
---
๐ Quick Start Guide
Installation
1. Download or build `UltimateTPA-1.0.0.jar`
2. Place in server's `plugins/` folder
3. Start/restart the server
4. Edit `plugins/UltimateTPA/config.yml` as needed
5. Run `/tpreload` or `/wild reload` to apply changes
Recommended First Configuration
```yaml
For most servers, start with these settings:
tpa:
warmup:
enabled: true Prevent TP abuse
seconds: 3
cancel-on-move: true
request-expiry: 60
cooldown: 30
rtp:
warmup:
enabled: true
seconds: 5
cooldown: 120 2 minutes to prevent lag
max-attempts: 15
deathtp:
cancel-death-message: false Keep vanilla death messages
private-message: true Add coordinates privately
For Instant Teleportation
If you want no delays at all:
tpa:
warmup:
enabled: false
cooldown: 10
rtp:
warmup:
enabled: false
cooldown: 60
๐ Comparison with Similar Plugins
| Feature | UltimateTPA | EssentialsX | Other TPA Plugins |
|---|---|---|---|
| TPA System | โ | โ | โ |
| RTP System | โ | โ (separate) | โ |
| Death Back | โ | โ | โ |
| Clickable Chat | โ | โ | Some |
| MiniMessage | โ | โ | Rare |
| Optional Warmup | โ | โ | Some |
| Async RTP | โ | N/A | Some |
| Multi-World RTP | โ | N/A | Some |
| Single JAR | โ | โ (large) | โ |
| Paper 1.21 Native | โ | โ | Varies |
| Lightweight | โ | โ | Varies |
๐ License & Credits
- Plugin: UltimateTPA
- Version: 1.0.0
- Target: Paper 1.21.x
- Java: 21
- Dependencies: None (standalone)
- Soft Dependencies: Vault, LuckPerms (optional)
๐ Support Checklist
Before reporting issues, verify:
- [ ] Server is running Paper 1.21.x
- [ ] Java 21 is installed
- [ ] Plugin JAR is in
/plugins/folder - [ ] No errors in server console on startup
- [ ] Players have correct permissions
- [ ] Config syntax is valid YAML
- [ ] Ran
/tpreloadafter config changes
UltimateTPA - The Ultimate Teleportation Solution for Modern Minecraft Servers ๐ฎโจ**


