Yet Another TPA

Yet Another TPA

YATPA: A combination of various project ideas into one, but still lean and simple enough to be a viable replacement or solution to teleporting. Suitable for Fabric and Paper.

by
636 Downloads
bukkitfabricfoliapaperpurpurspigotgame-mechanicsmanagementutility
Rent Server with this Mod

Screenshots

Yet Another TPA Screenshot 1

About this Mod

YATPA

YATPA

YATPA is a teleport plugin/mod project for modern Minecraft servers:

  • paper/: Paper plugin (1.21.x API target)
  • fabric/: Fabric dedicated-server mod (1.21.x Mojmap/Fabric API scaffold)

What makes YATPA stand out is that it combines full teleport-request/home/back/spawn/RTP/death tooling with a clickable in-chat command UX (/tp menu, paged pickers, and paged logs), while also exposing granular cost controls per teleport type. Economy mode is configurable as NONE, XP_LEVELS, ITEM, or CURRENCY; Paper supports CURRENCY through Vault (with EssentialsX or another Vault economy provider). OPs have an optional GUI menu to fine tune settings in-game.

Screenshots

Help (via /TPAHELP)

Help

Clickable TP Menu (via /TP)

TP

Clickable TP Logs for OPs (via /TPLOG)

LOG

Clickable Home List (via /TPHOME LIST)

HOMES

Clickable User List (via /TPA with no username specified)

LISTS

Features

  • Clickable teleport menu:
    • /tp
    • Includes shortcuts for homes, RTP, spawn, death-back, TPA/TPHere, toggle, block, and unblock.
    • Player pickers are paginated (5 per page) for /tpa, /tphere, /tpablock, and /tpaunblock.
  • Player teleport requests:
    • /tpa <player>
    • /tpahere <player> or /tphere <player>
    • /tpaccept
    • /tpdeny
    • /tpatoggle
    • /tpablock <player>
    • /tpaunblock <player>
  • Homes:
    • /tphome set [name]
    • /tphome set default <name>
    • /tphome delete <name>
    • /tphome list
    • /tphome [name] or /tpahome [name]
    • Home list is clickable and shows coordinates.
    • The default home is marked with (default).
  • Utility teleports:
    • /rtp
    • /spawn
    • /tpaback or /tpdeath (last death location, one use per death)
  • OP commands:
    • /ytp <player>
    • /ytp <player> <targetPlayer>
    • /ytp <player> <x> <y> <z> [realm]
    • /ytp <x> <y> <z> [realm]
    • /tpoffline <player>
    • /tpalog [page]
  • In-game admin config (OP):
    • /yatpa settings
    • /yatpa gui (Paper, paginated inventory editor for all settings; click to toggle/edit)
    • /yatpa set <path> <value>
    • /yatpa reload
    • /setspawn
  • Player help page:
    • /tpahelp
    • /tphelp
    • /yatpa help
    • Public help intentionally excludes admin commands.
    • When teleport costs are enabled, a Costs section is shown at the bottom listing only teleports with non-zero costs.

Notable Behavior

  • Requests:
    • Timeout + cooldown are enforced.
    • Accept/deny messages are clickable.
    • If an accepted delayed teleport is cancelled (move/damage), the other player is notified.
  • Teleports:
    • Delayed teleports show a countdown.
    • Costs are validated before countdown and charged on execution.
    • Players are told exactly what they paid (XP, items, or currency).
    • ytp/rtp use safe landing checks to avoid unsafe blocks and lava.
    • /tpaback and /tpdeath consume the saved death location after successful use, and require a new death to refresh.
  • Teleport logging:
    • /tpalog is paginated and clickable.
    • Log lines include context details (for example home name, target player, coords, or offline target) where relevant.
  • Costs and settings:
    • Cost modes: NONE, XP_LEVELS, ITEM, CURRENCY.
    • Realm-specific RTP costs and min/max RTP distance overrides are supported.
    • Paper /yatpa gui and /yatpa set expose currency paths directly.
  • Restrictions and routing:
    • Per-dimension restrictions can disable /rtp only or all YATPA teleports.
    • /rtp supports blacklist + optional overworld routing.
    • Spawn destination is configurable via settings.spawn.* and /setspawn.
  • Platform note:
    • Vault/EssentialsX currency charging is Paper-only in this release.
    • Command/UX behavior in this README applies to both Paper and Fabric unless noted.

Configuration

Paper config files:

  • paper/src/main/resources/config.yml
  • paper/src/main/resources/messages.xml
  • paper/src/main/resources/plugin.yml

Fabric default config/resource files:

  • fabric/src/main/resources/yatpa-fabric.properties
  • fabric/src/main/resources/yatpa-fabric.yml
  • fabric/src/main/resources/messages-fabric.xml

Runtime data (Paper) is stored under plugin data folder:

  • data/players.yml
  • data/homes.yml
  • data/offline.yml

Runtime data (Fabric) is stored under:

  • config/yatpa/store.json

Example Config YAML

settings:
  max_homes_default: 3
  request_timeout_seconds: 60
  request_cooldown_seconds: 30
  teleport_delay_seconds: 5
  cancel_on_move: true
  cancel_on_damage: true
  spawn_radius: 50
  rtp_cooldown_seconds: 300
  rtp:
    default_min_distance: 64
    default_max_distance: 2500
    rtp_to_overworld: false
    overworld_name: "world"
    blacklisted_worlds: []
    # Optional per-realm overrides
    realm_min_distance:
      overworld: 96
      nether: 48
      end: 128
    realm_max_distance:
      overworld: 3000
      nether: 1500
      end: 4000
  dimension_restrictions:
    # Use world names, realm aliases (overworld/nether/end), or namespaced ids.
    # For namespaced ids in YAML, quote the key, for example "minecraft:the_nether".
    disable_rtp:
      nether: true
    disable_teleport:
      # "minecraft:the_end": true
  landing:
    mode: EXACT # EXACT or RANDOM_OFFSET
    random_offset_max: 4
  features:
    enabled: true
    tpa: true
    tpahere: true
    homes: true
    rtp: true
  costs:
    enabled: false
    mode: NONE # NONE, XP_LEVELS, ITEM, CURRENCY
    xp_levels:
      tpa: 4
      tpahere: 4
      home: 16
      back: 0
      # Per-realm RTP overrides (optional; overrides global if set)
      rtp:
        overworld: 30
        nether: 0
        end: 0
      spawn: 8
    item:
      material: DIAMOND
      tpa: 2
      tpahere: 2
      home: 20
      back: 0
      # Per-realm RTP overrides (optional; overrides global if set)
      rtp:
        overworld: 30
        nether: 0
        end: 0
      spawn: 10
    currency:
      tpa: 0.0
      tpahere: 0.0
      home: 0.0
      back: 0.0
      # Per-realm RTP overrides (optional; overrides global if set)
      rtp:
        overworld: 0.0
        nether: 0.0
        end: 0.0
      spawn: 0.0
  spawn:
    enabled: true
    x: 0
    y: 100
    z: 0
    yaw: 0
    pitch: 0
    world: world
sounds:
  request_sent: ENTITY_EXPERIENCE_ORB_PICKUP
  request_received: BLOCK_NOTE_BLOCK_PLING
  countdown: BLOCK_BELL_USE
  success: ENTITY_ENDERMAN_TELEPORT
  cancelled: BLOCK_GLASS_BREAK
effects:
  request_sent: PORTAL
  request_received: ENCHANT
  countdown: WAX_OFF
  success: END_ROD
  cancelled: SMOKE

Fabric config.properties supports the same restrictions with either:

  • settings.dimension_restrictions.disable_rtp=overworld,minecraft:the_nether
  • settings.dimension_restrictions.disable_teleport=minecraft:the_end,my_custom_dimension
  • Dynamic keys like settings.dimension_restrictions.disable_teleport.minecraft:the_nether=true

Permissions (Paper)

  • yatpa.op.reload (default: op)
  • yatpa.op.tp (default: op)
  • yatpa.op.tpoffline (default: op)
  • yatpa.op.tpalog (default: op)
  • yatpa.op.setspawn (default: op)

License

Licensed under GNU General Public License v3.0 (GPL-3.0-only). See LICENSE.

Available Versions

YATPA v1.0.7release
MC 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2fabric
May 1, 2026
YATPA v1.0.7release
MC 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11, 26.1, 26.1.1, 26.1.2bukkit, folia, paper, purpur, spigot
May 1, 2026
YATPA v1.0.6release
MC 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11paper
April 26, 2026
YATPA v1.0.6release
MC 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11fabric
April 26, 2026
YATPA v1.0.5release
MC 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11fabric
April 26, 2026

How to Install Yet Another TPA on Your Server

1

Order Server

Order a Minecraft Java server with at least 3 GB RAM (4 GB recommended).

2

Set bukkit Loader

In the panel under "Egg", select the bukkit loader and matching Minecraft version (26.1.2).

3

Install Mod

Open the mod browser in the dashboard and search for "Yet Another TPA". Click "Install" – done! Alternatively, upload the .jar via SFTP to the /mods folder.

Compatibility

Mod Loaders

bukkitfabricfoliapaperpurpurspigot

Minecraft Versions

26.1.2, 26.1.1, 26.1 (+12 more)

Server-side

Unsupported

Recommended RAM

4 GB(min. 3 GB)

Frequently Asked Questions

Yet Another TPA server crashes on startup – what to do?

Most common cause: wrong bukkit version or insufficient RAM. Check the server log (latest.log) for "OutOfMemoryError" or "Mixin" errors. With Mado Hosting: ensure at least 3 GB RAM is allocated and the loader matches the mod version (26.1.2). You can switch loaders with one click in the panel.

Is Yet Another TPA compatible with bukkit and fabric and folia and paper and purpur and spigot?

Yet Another TPA officially supports bukkit, fabric, folia, paper, purpur, spigot for Minecraft 26.1.2, 26.1.1, 26.1. The Mado dashboard automatically detects incompatible loader combinations.

Server lagging with Yet Another TPA – how to optimize performance?

Recommended RAM: 4 GB (per 8 players). Use /spark profiler to check if Yet Another TPA consumes the most tick time. Common fixes: reduce server view-distance to 8-10, install "performant" or "starlight" as supplementary mods on Forge. With Mado Hosting, your server runs on NVMe SSDs with dedicated CPU cores for minimal latency.

Rent Modded Server

Install Yet Another TPA with just one click on your server.

Recommended RAM
4 GBab €8/mo
Min. 3 GB | +1 GB pro 8 Spieler
Create Server Now
1-Click Mod Install
NVMe SSD Storage
DDoS Protection included

Details

License
GNU General Public License v3.0 only
Server-side
Unsupported

Supported Versions

26.1.226.1.126.11.21.111.21.101.21.91.21.81.21.71.21.61.21.5+5 more