{"id":68690,"date":"2026-06-04T01:04:28","date_gmt":"2026-06-03T22:04:28","guid":{"rendered":"https:\/\/vpesports.com\/minecraft\/mods\/fancytpa-lyrinth\/"},"modified":"2026-06-04T01:04:28","modified_gmt":"2026-06-03T22:04:28","slug":"fancytpa-lyrinth","status":"publish","type":"mod","link":"https:\/\/vpesports.com\/minecraft\/mods\/fancytpa-lyrinth\/","title":{"rendered":"FancyTPA"},"content":{"rendered":"<p># FancyTPA<\/p>\n<p>FancyTPA is a Paper plugin for Minecraft 1.21+ that adds a polished teleport system with GUI menus, configurable countdowns, safety checks, homes, warps, and `\/back` support. The codebase is split into small layers so commands stay thin and the actual logic lives in managers.<\/p>\n<p>## Features<\/p>\n<p>&#8211; **TPA \/ TPAHere** with request expiry, withdraw support, toggle, and auto-accept.<br \/>\n&#8211; **GUI player selector** for `\/tpagui`, built with `InventoryHolder` menus instead of title checks.<br \/>\n&#8211; **Homes** with per-player slot limits driven by permissions like<br \/>\n`fancytpa.home.max.<number>`.<br \/>\n&#8211; **Warps** with GUI browsing, tab completion, and case-insensitive lookup.<br \/>\n&#8211; **\/back** for returning to a previous teleport or death location.<br \/>\n&#8211; **Countdown teleport flow** for TPA, homes, warps, and `\/back`.<br \/>\n&#8211; **Safety checks** that prevent unsafe destinations and can fall back to a nearby safe location.<br \/>\n&#8211; **Config-driven sounds** and **MiniMessage**-based messages.<br \/>\n&#8211; **PlaceholderAPI support** for `%fancytpa_tpatoggle%` and `%fancytpa_tpaauto%`.<\/p>\n<p>## Installation<\/p>\n<p>1. Download the plugin JAR and place it in your server&#8217;s `plugins\/` folder.<br \/>\n2. Install PlaceholderAPI only if you want to use placeholders.<\/p>\n<p>## Commands and Permissions<\/p>\n<p>### TPA<br \/>\n![TPA GUI](https:\/\/media.lyrinth.com\/MCplugin-assert\/Plugins\/fancytpa_tpa_gui.png)<br \/>\n![AcceptMSG](https:\/\/media.lyrinth.com\/MCplugin-assert\/Plugins\/fancytpa_tpa_msg1.png)<br \/>\n![WithdrawMSG](https:\/\/media.lyrinth.com\/MCplugin-assert\/Plugins\/fancytpa_tpa_msg2.png)<br \/>\n| Command | Description | Permission |<br \/>\n| &#8212; | &#8212; | &#8212; |<br \/>\n| `\/tpa <player>` | Send a teleport request to another player. | `fancytpa.tpa` |<br \/>\n| `\/tpahere <player>` | Request another player to teleport to you. | `fancytpa.tpahere` |<br \/>\n| `\/tpaccept` \/ `\/tpyes` | Accept the latest pending request. | `fancytpa.accept` |<br \/>\n| `\/tpacancel` \/ `\/tpdeny` \/ `\/tpno` | Deny or cancel a pending request. | `fancytpa.deny` |<br \/>\n| `\/tpawithdraw` \/ `\/tpaundo` | Withdraw a request you sent. | `fancytpa.withdraw` |<br \/>\n| `\/tpatoggle` | Toggle whether you receive TPA requests. | `fancytpa.toggle` |<br \/>\n| `\/tpaauto` | Toggle auto-accept for TPA requests. | `fancytpa.auto` |<br \/>\n| `\/tpagui` | Open the player selection GUI. | `fancytpa.gui` |<br \/>\n| `\/tpareload` | Reload config, messages, homes, and warps. | `fancytpa.reload` |<\/p>\n<p>### Homes<br \/>\n![Home GUI](https:\/\/media.lyrinth.com\/MCplugin-assert\/Plugins\/fancytpa_home_gui.png)<br \/>\n| Command | Description | Permission |<br \/>\n| &#8212; | &#8212; | &#8212; |<br \/>\n| `\/home` \/ `\/homes` \/ `\/fhome` | Open the home GUI. | `fancytpa.home` |<br \/>\n| `\/sethome [slot]` | Save your current location into a home slot. | `fancytpa.home.set` |<br \/>\n| `\/delhome <slot>` | Delete a home slot. | `fancytpa.home.delete` |<\/p>\n<p>### Warps<br \/>\n![Warp GUI](https:\/\/media.lyrinth.com\/MCplugin-assert\/Plugins\/fancytpa_warp_gui.png)<br \/>\n| Command | Description | Permission |<br \/>\n| &#8212; | &#8212; | &#8212; |<br \/>\n| `\/warp [name]` \/ `\/warps` \/ `\/fwarp` | Open the warp GUI or teleport to a warp. | `fancytpa.warp` |<br \/>\n| `\/setwarp <name> [displayName] [lore&#8230;]` | Create a new warp at your current location. | `fancytpa.admin` |<br \/>\n| `\/delwarp <name>` \/ `\/deletewarp` \/ `\/removewarp` | Delete a warp. | `fancytpa.admin` |<\/p>\n<p>### Back<\/p>\n<p>| Command | Description | Permission |<br \/>\n| &#8212; | &#8212; | &#8212; |<br \/>\n| `\/back` \/ `\/fback` | Return to your previous location. | `fancytpa.back` |<\/p>\n<p>## Configuration Highlights<\/p>\n<p>### `config.yml`<\/p>\n<p>&#8211; `settings.teleport-delay`: countdown before teleporting.<br \/>\n&#8211; `settings.request-expiry`: how long a pending TPA request stays valid.<br \/>\n&#8211; `settings.cancel-on-move`: cancel countdown when the player changes block coordinates.<br \/>\n&#8211; `settings.back.back-on-death` and `settings.back.back-on-teleport`: control what `\/back` stores.<br \/>\n&#8211; `settings.back.allowed-worlds`: restrict `\/back` to specific worlds, or use `*` for all worlds.<br \/>\n&#8211; `world-restriction.enabled` and `world-restriction.type`: apply a global whitelist\/blacklist for all plugin commands.<br \/>\n&#8211; `sounds.*`: fully configurable sounds for GUI open, request sent\/received, countdown, teleport success, cancellation, and home\/back actions.<\/p>\n<p>### `messages.yml`<\/p>\n<p>&#8211; Uses **MiniMessage** formatting.<br \/>\n&#8211; Messages are versioned and automatically merged when the plugin ships new keys.<br \/>\n&#8211; `{prefix}` is cached and injected into messages automatically.<\/p>\n<p>## Storage and Runtime Files<\/p>\n<p>FancyTPA creates and manages these files in the plugin data folder:<\/p>\n<p>&#8211; `config.yml`<br \/>\n&#8211; `messages.yml`<br \/>\n&#8211; `homes.yml`<br \/>\n&#8211; `warps.yml`<\/p>\n<p>Home data is stored per player UUID and warp names are saved case-insensitively.<\/p>\n<p>## PlaceholderAPI<\/p>\n<p>FancyTPA registers a PlaceholderAPI expansion with the identifier `fancytpa`.<\/p>\n<p>Available placeholders:<\/p>\n<p>&#8211; `%fancytpa_tpatoggle%`<br \/>\n&#8211; `%fancytpa_tpaauto%`<\/p>\n<p>Each placeholder returns `Enabled` or `Disabled` based on the player&#8217;s current state.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>FancyTPA brings modern TPA, HOME, and WARP features to your server with sleek GUIs, countdowns, and fully configurable behavior.<\/p>\n","protected":false},"featured_media":68691,"template":"","meta":{"_minecraft_slug":"fancytpa-lyrinth","_minecraft_project_id":"Me7EaUfj","_minecraft_author":"nqanh2k6","_minecraft_license":"MIT","_minecraft_downloads":4,"_minecraft_follows":0,"_minecraft_client_side":"unsupported","_minecraft_server_side":"required","_minecraft_storage_type":"zip","_minecraft_archive_name":"fancytpa-lyrinth.zip","_minecraft_size_bytes":98869,"_minecraft_version_count":1,"_minecraft_updated_at":"2026-05-16T12:13:34.729182Z","_minecraft_date_created":"2026-05-12T00:32:08.475398Z","_minecraft_date_modified":"2026-05-04T05:51:07.095876Z","_minecraft_project_url":"https:\/\/modrinth.com\/mod\/fancytpa-lyrinth","_minecraft_icon_attachment_id":68691,"_minecraft_imported_at":"2026-06-03T22:04:29+00:00","_minecraft_import_hash":"b153e043a70590056e2a3122a67a7027","_minecraft_versions":"","_minecraft_links":"","_minecraft_gallery":"","_minecraft_api_metadata":""},"mod_category":[87,89,126,127,128,92],"mod_loader":[132,133],"minecraft_version":[62,37,40,41,73,74,38,78,79,80,81,82,83,167,163],"class_list":["post-68690","mod","type-mod","status-publish","has-post-thumbnail","hentry","mod_category-adventure","mod_category-game-mechanics","mod_category-management","mod_category-paper","mod_category-purpur","mod_category-utility","mod_loader-paper","mod_loader-purpur","minecraft_version-1-21","minecraft_version-1-21-1","minecraft_version-1-21-10","minecraft_version-1-21-11","minecraft_version-1-21-2","minecraft_version-1-21-3","minecraft_version-1-21-4","minecraft_version-1-21-5","minecraft_version-1-21-6","minecraft_version-1-21-7","minecraft_version-1-21-8","minecraft_version-1-21-9","minecraft_version-26-1","minecraft_version-26-1-1","minecraft_version-26-1-2"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>FancyTPA - Minecraft<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vpesports.com\/minecraft\/mods\/fancytpa-lyrinth\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"FancyTPA - Minecraft\" \/>\n<meta property=\"og:description\" content=\"FancyTPA brings modern TPA, HOME, and WARP features to your server with sleek GUIs, countdowns, and fully configurable behavior.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vpesports.com\/minecraft\/mods\/fancytpa-lyrinth\/\" \/>\n<meta property=\"og:site_name\" content=\"Minecraft\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/fancytpa-lyrinth\\\/\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/fancytpa-lyrinth\\\/\",\"name\":\"FancyTPA - Minecraft\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/fancytpa-lyrinth\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/fancytpa-lyrinth\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/fancytpa-lyrinth-icon-2e927dcf1fe4fca2e60033050881ce24b7c9cc47_96.webp\",\"datePublished\":\"2026-06-03T22:04:28+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/fancytpa-lyrinth\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/fancytpa-lyrinth\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/fancytpa-lyrinth\\\/#primaryimage\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/fancytpa-lyrinth-icon-2e927dcf1fe4fca2e60033050881ce24b7c9cc47_96.webp\",\"contentUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/fancytpa-lyrinth-icon-2e927dcf1fe4fca2e60033050881ce24b7c9cc47_96.webp\",\"width\":96,\"height\":96},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/fancytpa-lyrinth\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mods\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"FancyTPA\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\",\"name\":\"Minecraft\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"FancyTPA - Minecraft","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vpesports.com\/minecraft\/mods\/fancytpa-lyrinth\/","og_locale":"en_US","og_type":"article","og_title":"FancyTPA - Minecraft","og_description":"FancyTPA brings modern TPA, HOME, and WARP features to your server with sleek GUIs, countdowns, and fully configurable behavior.","og_url":"https:\/\/vpesports.com\/minecraft\/mods\/fancytpa-lyrinth\/","og_site_name":"Minecraft","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/vpesports.com\/minecraft\/mods\/fancytpa-lyrinth\/","url":"https:\/\/vpesports.com\/minecraft\/mods\/fancytpa-lyrinth\/","name":"FancyTPA - Minecraft","isPartOf":{"@id":"https:\/\/vpesports.com\/minecraft\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/fancytpa-lyrinth\/#primaryimage"},"image":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/fancytpa-lyrinth\/#primaryimage"},"thumbnailUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/fancytpa-lyrinth-icon-2e927dcf1fe4fca2e60033050881ce24b7c9cc47_96.webp","datePublished":"2026-06-03T22:04:28+00:00","breadcrumb":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/fancytpa-lyrinth\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vpesports.com\/minecraft\/mods\/fancytpa-lyrinth\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/vpesports.com\/minecraft\/mods\/fancytpa-lyrinth\/#primaryimage","url":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/fancytpa-lyrinth-icon-2e927dcf1fe4fca2e60033050881ce24b7c9cc47_96.webp","contentUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/fancytpa-lyrinth-icon-2e927dcf1fe4fca2e60033050881ce24b7c9cc47_96.webp","width":96,"height":96},{"@type":"BreadcrumbList","@id":"https:\/\/vpesports.com\/minecraft\/mods\/fancytpa-lyrinth\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vpesports.com\/minecraft\/"},{"@type":"ListItem","position":2,"name":"Mods","item":"https:\/\/vpesports.com\/minecraft\/mods\/"},{"@type":"ListItem","position":3,"name":"FancyTPA"}]},{"@type":"WebSite","@id":"https:\/\/vpesports.com\/minecraft\/#website","url":"https:\/\/vpesports.com\/minecraft\/","name":"Minecraft","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vpesports.com\/minecraft\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod\/68690","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod"}],"about":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/types\/mod"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media\/68691"}],"wp:attachment":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media?parent=68690"}],"wp:term":[{"taxonomy":"mod_category","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_category?post=68690"},{"taxonomy":"mod_loader","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_loader?post=68690"},{"taxonomy":"minecraft_version","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/minecraft_version?post=68690"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}