Compatibility
Minecraft: Java Edition
Platforms
75% of ad revenue goes to creators
Support creators and Modrinth ad-free with Modrinth+Creators
Details
Teraport
Teraport is a datapack originally written for Minecraft 1.13-1.20.1 that implements /home
-, /sethome
-, and /back
-like behavior via commands and triggers accessed through a written book.
Re-implemented from scratch to take advantage of new commands and data structures in Minecraft 1.21+, Teraport aims to be a vanilla-friendly end-game quick-transport system to help players get around their worlds more effectively by allowing the player to teleport to their last set respawn point, the place they previously 'teraported' from, and where they last died.
In addition to these three default locations (found on the front page of the "Teraport Atlas"), players can create their own marked locations to warp to by holding the "Teraport Atlas" in their off-hand and using an ender pearl that has been renamed in an anvil.
Multiplayer gameplay is supported, though custom locations will not work correctly for other players if they happen to use someone else's teraport book. Solutions to this are being examined.
This pack aims to work in any dimension, even custom ones.
Features
- Generic and specific location teleportation via triggers & functions
- Endgame-balanced written book crafting recipe providing easy access to triggering warps
- Teleporting with passengers/mounts
- Truncation of renamed ender pearls that would span multiple lines, with full name in tooltip
- World-based db retaining any player-saved locations, searchable by UUID or name
- Manual book regeneration from the first page if needed
- Limited custom advancements
- Translatable text where applicable
Future Planned Features
- Marked location lookups based on book's owner, not on executing player
- Chat-based simplified help system, accessible from the first page in the "Teraport Atlas" (in progress)
Technical Info
This pack utilizes advancements, storage, triggers, and functions to record and read locations to parse into a macro function utilizing execute in <namespace:dimension> run tp @s <x> <y> <z>
.
Many .mcfunction
files will have included comments; this is to facilitate understanding in what is currently being achieved by the function in question, in order to provide a learning platform for anyone curious enough to dig through the files themselves.