PurpleTravel
Modern homes, warps, spawn, teleportation, TPA, RTP and /back for Paper 1.21+ — The superior HuskHomes alternative with zero GUIs, pure chat interactions, and innovative active/inactive home management.
✨ Highlights
Homes
/home, /homes, /homelist, /sethome, /delhome, /edithome, /phome, /phomelist
Warps
/warp, /warps, /warplist, /setwarp, /delwarp, /editwarp
Teleportation
/tp, /tphere, /tpoffline, /tpall, /back, /rtp, /spawn, /setspawn
Requests
/tpa, /tpahere, /tpaall, /tpaccept, /tpdecline, /tpignore
Admin
/purpletravel reload|status|dump|import|delete|homeslots (aliases: /purplehomes, /pt)
Key Features
Active/Inactive Homes System
Enable in config to share homes across servers:
Soft:
Part of the PurplePlugins ecosystem—matches PurplePunish's design:
Permissions
Modern homes, warps, spawn, teleportation, TPA, RTP and /back for Paper 1.21+ — The superior HuskHomes alternative with zero GUIs, pure chat interactions, and innovative active/inactive home management.
✨ Highlights
- Chat-only UI — No inventory GUIs. Everything is interactive Adventure Components with hover tooltips, click-to-teleport buttons, and elegant pagination
- Homes never disappear — When a player's home limit decreases, excess homes become inactive (hidden, unusable) but stay permanently in the database. They auto-reactivate when the limit rises or older homes are deleted—solving HuskHomes' core flaw
- Per-group warmup — Countdown before ANY teleport is fully customizable per group with purpletravel.teleport_warmup.<seconds> (like HuskHomes). Instant TP for staff with purpletravel.teleport_warmup.0
- Cooldowns only on /rtp and /back — Home, warp, and spawn teleports have zero cooldown delays; only random teleport and back command are rate-limited
- Cross-server ready — Shared MySQL database + broker (Plugin Messaging or Redis). Homes, warps, global spawn, TPA, /tp and /back all work across servers
- SQLite or MySQL — Abstract database layer, swap at runtime via config
- Full economy integration — Vault support for paid home slots, public home conversion, and RTP
- HuskHomes importer — Migrate all data (homes, warps, users, cooldowns) from HuskHomes in one command—creation dates preserved, active/inactive state maintained
- Auto-updating config — New keys from plugin updates merge into your config and language files automatically, preserving all your edits and comments
- PlaceholderAPI expansion — 7 placeholders for scoreboards and signs
- Public API — 13 cancellable events + full developer API with async CompletableFuture support
Homes
/home, /homes, /homelist, /sethome, /delhome, /edithome, /phome, /phomelist
Warps
/warp, /warps, /warplist, /setwarp, /delwarp, /editwarp
Teleportation
/tp, /tphere, /tpoffline, /tpall, /back, /rtp, /spawn, /setspawn
Requests
/tpa, /tpahere, /tpaall, /tpaccept, /tpdecline, /tpignore
Admin
/purpletravel reload|status|dump|import|delete|homeslots (aliases: /purplehomes, /pt)
Key Features
Active/Inactive Homes System
- Player with purpletravel.max_homes.10 can have 10 active homes
- Create 15 homes? The 11 newest ones turn inactive—they stay in the database forever
- Delete an active home? The oldest inactive one auto-reactivates
- No data is ever lost; homes just become temporarily unusable
- Staff see an inactivity note in /homes
- With LuckPerms → read purpletravel.teleport_warmup.<seconds> from the player's highest-weight group only
- Without LuckPerms → scan all permissions, lowest value wins
- Fallback → teleport.warmup_time from config (default 5s)
- Bypass → purpletravel.bypass_teleport_warmup
- Only on /rtp (600s default) and /back (30s default)—fully configurable per action
- Same resolution logic as warmup (LuckPerms group → permissions → config)
- Bypass with purpletravel.bypass_cooldowns
Enable in config to share homes across servers:
- All servers use the same MySQL database + table_prefix
- Broker: PLUGIN_MESSAGE (requires proxy) or REDIS (more reliable)
- Global /spawn stored as a network-wide warp
- Player lists sync every 30 seconds
- TPA requests, RTP, and /tp all cross-server aware
Soft:
- LuckPerms (enables weight-based warmup/cooldown overrides)
- Vault (economy support)
- PlaceholderAPI (expansion)
- HikariCP 5.1.0
- SQLite JDBC 3.46.1.3
- MySQL Connector/J 8.4.0
- Jedis 5.1.5 (Redis support)
- Drop the JAR into /plugins
- Restart the server (libraries auto-download on first boot)
- Edit config.yml to set language, database, cross-server mode
- Import from HuskHomes with /purpletravel import huskhomes confirm (optional)
- Done! No additional setup required
Part of the PurplePlugins ecosystem—matches PurplePunish's design:
- Gradient small-caps prefix in chat
- Consistent color palette (info blue, success green, error red)
- Tutoiement français + full English localization
- Elegant hover menus and click interactions
Code (Java):
PurpleTravelAPI api
= PurpleTravelAPI.
getInstance
(
)
;
// Get homes
api. getHomes (player. getUniqueId ( ) ). thenAccept (homes -> {
player. sendMessage ( "You have " + homes. size ( ) + " homes" ) ;
} ) ;
// Check warmup for a player
int warmupSeconds = api. getTeleportWarmup (player ) ;
// Teleport with all features (warmup, effects, economy, cooldown)
api. timedTeleport (player, api. positionOf (targetLocation ) ) ;
// Listen to events
@EventHandler
void onHomeCreate (HomeCreateEvent e ) {
e. setCancelled ( true ) ; // block home creation
}
// Get homes
api. getHomes (player. getUniqueId ( ) ). thenAccept (homes -> {
player. sendMessage ( "You have " + homes. size ( ) + " homes" ) ;
} ) ;
// Check warmup for a player
int warmupSeconds = api. getTeleportWarmup (player ) ;
// Teleport with all features (warmup, effects, economy, cooldown)
api. timedTeleport (player, api. positionOf (targetLocation ) ) ;
// Listen to events
@EventHandler
void onHomeCreate (HomeCreateEvent e ) {
e. setCancelled ( true ) ; // block home creation
}
- purpletravel.command.* — Per-command access
- purpletravel.max_homes.<n> — Cap of active homes
- purpletravel.teleport_warmup.<seconds> — Custom warmup
- purpletravel.cooldown.random_teleport.<seconds> — Custom RTP cooldown
- purpletravel.admin — Admin commands
- GitHub: PurpleTravel Repository
- Discord: PurplePlugins Community
- Docs: Wiki
Quick facts
- Edition: Minecraft Java
- File type: .jar
- Minecraft versions listed: 1.20, 1.20.6, 1.21
- How to install: Install the matching mod loader (Forge, Fabric or NeoForge) for your Minecraft version. → Download the .jar. → Put it in the .minecraft/mods folder and launch that loader profile.
- Where to get it: Opens on Spigot — not every file is mirrored on our own servers.
Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.
PurpleTravel is a free Minecraft Java mod. Compatible with Minecraft 1.20, 1.20.6, 1.21, 26.1 and newer. Downloaded 9 times (via Spigot). Download it and open it directly in the game.