Description
Gives admins the ability to teleport anywhere around the game world. A menu interface for your favorite teleport locations. Additionally allows teleporting back to the last bed you slept in, the last place you died, the global world spawn point, or a configurable home location. Includes yaw and pitch rotation for each location.
- Teleports using /tp target x y z yaw pitch command functionality to locations saved in world save directory tpLibrary.json file. Can teleport to overworld, nether, and end locations.

- Filter displayed locations by category, pre-defined categories include: Ancients" (Ancient Cities), "Caves", "Farms", "End", "Houses", "Mansions", Mines", "Nether", "POI" (Points of Interest), "Resources", "Trains", "Trials" (Trial Chambers), "Villages", or "Witches" (Witch hut locations)

- A configurable controller (Controlify) button mapping opens the library's menu interface
- A sub-menu for freuquently used commands:

- Set game mode to Creative
- Set game mode to Survival
- Set game mode to Specator
- Set time to Sunrise (23460 ticks)
- Set time to Day (1000 ticks)
- Set time to Noon (6000 ticks)
- Set time to Sunset (12000 ticks)
- Set time to Night (13000 ticks)
- Set time to Midnight (18000 ticks)
- Clear current weather


- Commands:
- addmarker <required marker name>: Add a teleport marker at the player's current location, yaw, pitch, and dimension given the required name argument. The location ID is saved as the location's name in snake case ("required_marker_name"). A menu will be displayed that asks the user to select the required category for this location. Location ID is normalized as lower case and location name is normalized as Title Case.
- removemarker <required_marker_id>: Removes the given marker from the saved database. Takes the marker ID, not the marker name.
- removeclosestmarker: Finds the closest marker to the player's current location and removes it from the database.
- printmarkers: prints the entire marker database
- renamemarker <required_marker_id> <new marker name>: Renames the marker with the given ID to the provided new name
- setpriority <required_marker_id> <priority>: Sets marker priority [Display order] (1 - 999), lower priorities are displayed before markers with higher values or no priority at all. Markers are displayed in alphabetical order within a given priority.
- setcategory <required_marker_id> <category>: Sets the category of the marker with the given ID to the provided category name.
- teleportlocation <required_marker_id>: Teleport to the marker location matching the provided ID
- createlibrary: Creates a Teleport Library block at the player's current location. Clicking the block opens the library menu.
- lib: Opens the Teleport Library menu, same as clicking the library block, but without the block.
- sethome: Sets the player's arbitrary home location to their current position. Saves X/Y/Z, yaw, pitch, and dimension.
- home: Teleports the player back to their saved home position
- back: Teleports the player back to where they last died
- bed: Teleports the player back to the last bed they slept in
- spawn: Teleports the player to the global world spawn location
- setspawn: Sets the global world spawn location to the player's current position. Pretty much the same as setworldspawn command, was required at one point (Manually saved Y value), but no longer strictly needed now, it's left mostly for legacy reasons.
Example tpLibrary.json file:
{ "version": 1, "world": { "spawnY": null }, "players": { "Player1": { "home": { "name": "Home", "yaw": 82.28376, "pitch": 13.779417, "dimension": "minecraft:overworld", "x": 10473.3, "y": 126.4, "z": 10743.7 }, "death": { "name": "Death", "yaw": 93.10635, "pitch": -90.0, "dimension": "minecraft:overworld", "x": 400.5, "y": -182.7, "z": 257.5 } }, "Player2": { "death": { "name": "Death", "yaw": -158.00166, "pitch": 13.962875, "dimension": "minecraft:overworld", "x": 10343.6, "y": 60.0, "z": 11459.7 }, "home": { "name": "Home", "yaw": -125.07152, "pitch": 26.008137, "dimension": "minecraft:overworld", "x": -10163.5, "y": 77.0, "z": 1297.2 } }, "Player3": { "death": { "name": "Death", "yaw": -107.790405, "pitch": 4.921179, "dimension": "minecraft:overworld", "x": 9729.7, "y": 29.0, "z": 14799.7 }, "home": { "yaw": -105.376205, "pitch": 14.353791, "dimension": "minecraft:overworld", "x": -384838.9, "y": 165.0, "z": 342953.2 } } }, "markers": [ { "id": "library", "name": "Library", "category": "Houses", "yaw": 24.031982, "pitch": 89.55263, "dimension": "minecraft:overworld", "x": 235.4, "y": 67.0, "z": -905.5 }, { "id": "sitka_1", "name": "Sitka 1", "category": "Villages", "yaw": 91.86862, "pitch": 52.370735, "dimension": "minecraft:overworld", "x": 754.5, "y": 64.0, "z": 385.1 }, ] }





