Mastering Server Teleportation with the Excursion Plugin
Running a Minecraft server often means juggling multiple worlds—creative plots, survival realms, minigame arenas. Keeping players from getting lost or frustrated when hopping between dimensions is a constant challenge. The Excursion plugin for Bukkit (and its forks like Spigot and Paper) solves this elegantly by remembering where each player left off, so they always return to the exact spot they departed from. Whether you manage a small community server or a sprawling network, Excursion brings a layer of smart navigation that feels intuitive and polished.
What Exactly Does Excursion Do?
At its core, Excursion is a teleport plugin that tracks every player’s last location in each world they visit. Instead of dumping everyone at the default spawn point whenever they use a portal or command, it restores their previous coordinates. This simple mechanic eliminates the disorientation of reappearing far from your build site and makes world-hopping feel seamless. The plugin also introduces world grouping and configurable delays, giving server owners fine-grained control over how players move between dimensions.
Key Features That Set Excursion Apart
- Per-world location memory: When a player leaves a world via the
/visitcommand, their exact position is saved. Returning to that world later teleports them right back to that spot. - World blacklisting: Some worlds, like a central hub, should always drop players at spawn. You can exclude any world from the location-saving behavior, forcing a fresh spawn every time.
- World grouping: Worlds can be clustered into logical groups. If a player leaves a grouped world, both the world and the location are remembered. Revisiting the group brings them back to the exact world and coordinates they left from. For instance, group “Survival” might contain an overworld, a nether, and an end. A player who exits the nether to visit a creative world will later return directly to the nether, not the overworld spawn.
- Primary worlds in groups: When a player visits a group for the first time, they are sent to the designated primary world’s spawn point. This ensures a consistent entry experience while still preserving later return locations.
- Aliases for worlds and groups: Long world folder names can be shortened to friendly aliases, making commands like
/visit survivalmuch cleaner. - Teleport delays: You can set a per-world delay (in seconds) before a player actually leaves. This prevents instant escapes during combat or risky situations. Optionally, the teleport can be cancelled if the player takes damage, attacks, or moves too far during the countdown.
- Permission-based access: Fine-grained permissions let you control who can visit specific worlds, bypass delays, or teleport other players.
Installation and Basic Setup
Getting Excursion running is straightforward. Download the JAR file—either the standard version (which requires ToHPluginUtils.jar) or the standalone build that bundles the dependency—and place it in your server’s plugins folder. Restart or reload your server, and Excursion will generate its own directory with a default config.yml. Open that file to define your worlds, groups, aliases, and delay settings. The comments inside the configuration are clear and guide you through every option.
While Excursion handles server-side teleportation beautifully, players looking to enhance their client-side experience often turn to modpacks. For those who want a hassle-free way to install mods and manage different game versions, the foxygame.net launcher provides a modern, flexible platform where you can download mods directly from its menu. It complements server tools like Excursion by making client setup just as smooth.
Commands and Permissions in a Nutshell
The main command players will use is /visit , where is either a world name or a group alias. Server administrators also get /excursion reload to hot-reload the configuration without a full restart.
Permissions are equally simple:
excursion.visit– allows using the/visitcommand.excursion.visit.now– lets a player add the-n(or--now) flag to bypass any configured delay.excursion.visit.other– permits specifying another player as the target, e.g.,/visit creative ZerothAngel. This is handy for scripts or automated systems.excursion.access.– grants access to a specific world. The world name must match the directory name on your server.excursion.access.*– wildcard permission for all worlds.excursion.reload– allows reloading the config.
Operators have all permissions by default, so testing is easy right out of the box.
Practical Examples: How World Groups Work
Imagine three worlds: WorldA, WorldB, and WorldC. You group WorldA and WorldB together, with WorldA as the primary world. When a player types /visit WorldA for the first time, they land at WorldA’s spawn. Later, they move to WorldB (via a nether portal, for example) and then decide to visit WorldC using /visit WorldC. When they eventually return to the group with /visit WorldA or /visit WorldB, Excursion teleports them back to their saved location in WorldB—not WorldA’s spawn. This memory persists until they leave the group again, making multi-world adventures feel coherent.
Because groups rely on the /visit command for inter-world travel, you’ll need another method for players to move between worlds inside a group—nether portals, command blocks, or other plugins work perfectly for that.
Customizing Delays for Balance and Safety
Delays are a powerful tool to prevent combat logging or to add a cooldown for world switching. In the config, you can set a delay per world or group. If you enable the optional interruption conditions, the teleport will cancel if the player attacks, receives damage, or moves beyond a threshold distance. This is especially useful on survival servers where players might try to escape PvP by quickly warping away.
Conclusion
Excursion transforms the way players navigate your server’s worlds. By remembering locations, grouping dimensions, and offering delay controls, it removes the friction of constant respawning at spawn points and gives server owners the flexibility to craft a truly interconnected experience. The plugin is lightweight, well-documented, and released under the Apache 2.0 license, with source code available on GitHub for those who like to tinker. Whether you run a tight-knit survival community or a large minigame hub, Excursion is a small addition that makes a big difference in player satisfaction.