跳到正文

eztp

作者:s3xybun

EZTP is a lightweight Forge teleportation mod for Minecraft 1.12.2. It provides return-to-previous-location, homes, a global spawn, safe random teleportation, player teleport requests, cooldowns, and permission control.

收藏

介绍

中文介绍正在准备中,下面暂时显示原文。

EZTP

Lightweight, server-friendly teleportation for Minecraft 1.12.2

Version (refer to github)
Minecraft 1.12.2
Forge 14.23.5.2860
Java 8
MIT License

EZTP is a lightweight Forge teleportation mod for Minecraft 1.12.2. It provides return-to-previous-location, homes, a global spawn, safe random teleportation, player teleport requests, cooldowns, and permission control.


Highlights

  • Complete essentials: /back, homes, global spawn, safe RTP, and clickable TPA requests.
  • Server-friendly multiplayer: only the dedicated server needs the mod; players may join without EZTP.
  • Survival-minded defaults: warmups, movement and damage cancellation, independent cooldowns, and conservative RTP generation.
  • Easy administration: hot-reloadable gameplay settings, Forge PermissionAPI support, and server-side English/Chinese localization.
  • Compatibility first: no CoreMod, ASM, vanilla class replacement, custom portal generation, or required client packets.

Quick start

  1. Install Forge 14.23.5.2860 for Minecraft 1.12.2 and use Java 8.
  2. Copy the EZTP Universal JAR into the mods directory.
  3. Start the game or server once to generate config/eztp.cfg.
  4. Adjust the documented settings as needed, then run /eztp reload for runtime-safe changes.

Multiplayer: install EZTP only on the dedicated server. Vanilla clients and Forge clients without EZTP can connect normally.

Stop the game or server before replacing the EZTP JAR. In singleplayer, the JAR belongs in the client mods directory so the integrated server can load it.

Commands

| Command | Default access | Description |
| — | — | — |
| /back | Everyone | Return to the location before the last teleport or to the last death location |
| /sethome [name] | Everyone | Save the current position; an existing name is replaced |
| /home [name] | Everyone | Teleport home; the name may be omitted when only one exists |
| /homes [page] | Everyone | Show a clickable, paginated home list |
| /delhome [name] | Everyone | Delete a home; the name may be omitted when only one exists |
| /setspawn | Operators | Set the global spawn to the current position and rotation |
| /spawn | Everyone | Teleport to the global spawn |
| /rtp | Everyone | Find a safe random destination in the current dimension |
| /tp <player> | Operators | Immediately teleport yourself to a player; other /tp forms remain vanilla |
| /tpa <player> | Everyone | Ask to teleport to another player |
| /tpahere <player> | Everyone | Ask another player to teleport to you |
| /tpaccept [player] | Everyone | Accept a request; alias /tpyes |
| /tpdeny [player] | Everyone | Deny a request; alias /tpno |
| /tpacancel | Everyone | Withdraw the current outgoing request |
| /eztp reload | Operators | Reload runtime-safe configuration |

Home names are case-insensitive and saved in lowercase. They may contain 1–16 ASCII letters, digits, or underscores.

When a player is riding an entity, EZTP dismounts the player and teleports only the player on the next server tick. The mount remains behind. Modded mounts that follow Minecraft’s standard riding relationship usually need no special handling.

Teleport behavior

  • /back, /home, /spawn, /rtp, /tpa, and /tpahere have independent cooldowns by default. Set shareTeleportCooldowns=true to make them share one player-wide cooldown pool.
  • Regular players may save up to five homes by default.
  • The default delay is 3 seconds. Movement or actual damage cancels the teleport, and a successful teleport starts a 30-second cooldown by default.
  • Operators bypass the delay, cooldown, and home limit by default, but movement still cancels their teleports.
  • Optional sounds play during the final three countdown seconds and after a successful arrival.
  • Death, logout, or a dimension change cancels a pending teleport.

Successful EZTP player teleports save their origin, while death saves the death location. A successful /back saves its own origin as the next previous location, so it can toggle between two places. The location persists across reconnects and server restarts. Automatic first-spawn and respawn placement do not overwrite a death location. When EZTP’s /tp extension is active, players moved by vanilla /tp also have their origin recorded.

When back.deathOnlyOnce is true, ordinary teleports no longer create return points and each death grants one successful use of /back. Movement, damage, or another teleport failure does not consume the opportunity. This option is disabled by default.

Global spawn

After /setspawn has been used:

  • First-time players spawn at the custom global spawn.
  • Players without a bed or another personal respawn point respawn there.
  • Beds and respawn points supplied by other mods always take priority.

Until a custom spawn is set, initial spawn and respawn placement remain vanilla. /spawn uses the vanilla Overworld spawn in this state. If a destination later becomes obstructed, EZTP searches upward for space that fits the player.

Random teleport

/rtp is allowed only in the Overworld by default and searches 1,000–5,000 blocks from world spawn. It tries at most three different chunks by default and checks up to 64 surface positions in each chunk.

Search work is spread across server ticks so one command does not generate many chunks consecutively. The randomTeleport category controls dimensions, origin, radius, Y range, retries, per-tick budget, and unsafe blocks. Large retry counts or tick budgets can increase terrain generation and lag.

Teleport requests

  • Requests expire after 60 seconds by default.
  • A player may receive up to 10 pending requests by default.
  • Each player keeps only their latest outgoing request.
  • With multiple incoming requests, use /tpaccept <player> or /tpdeny <player> to choose the requester.
  • Accept, deny, and withdraw actions are available as clickable chat buttons.

Configuration

Main configuration categories:

| Category | Purpose |
| — | — |
| general | Default home name, home limit, teleport delay, damage cancellation, optional shared cooldown, fallback cooldown, and /tp extension |
| commandCooldowns | Independent cooldowns for six teleport sources; -1 inherits the fallback |
| back | Optional one-use death-only behavior for /back |
| effects | Countdown and arrival sounds and volume |
| spawn | First-join and unbound-respawn behavior |
| randomTeleport | RTP dimensions, range, safety checks, and performance budget |
| teleportRequests | Request rate limit, lifetime, and incoming limit |
| chatDisplay | Home and request list display limits |
| permissions | Default levels for fixed permission nodes |

The generated file documents each setting’s default, valid range, and risks associated with extreme values.

Default profile: five homes, a 3-second warmup, a separate 30-second cooldown per teleport source, and cancellation on movement or damage. Shared cooldowns are opt-in. RTP searches 1,000–5,000 blocks from world spawn, tries at most three chunks, and processes one chunk per tick. Requests use a 3-second send throttle, a 60-second lifetime, and a limit of 10 incoming requests. These defaults preserve exploration, combat pressure, and server performance.

Reloading configuration

After saving config/eztp.cfg, run this from the server console or as an authorized player:

/eztp reload

Most settings apply immediately, including shareTeleportCooldowns, cancelTeleportOnDamage, and back.deathOnlyOnce. Changing the shared-cooldown option changes how existing timers are viewed without resetting them: shared mode uses the longest active source timer. RTP searches and teleport requests that have already started keep the parameters captured at creation, and active cooldown durations are not recalculated.

These settings require a full game or server restart:

  • enableTpExtension
  • default access levels under permissions

If either changes, the reload command reports that a restart is required and prevents partial application in the current process. Replacing or reloading the mod JAR while the server is running is not supported.

Permissions

Default access levels:

  • EVERYONE: all players
  • OPERATORS: server operators only
  • NOBODY: no players by default
Show the complete permission matrix

| Permission node | Default |
| — | — |
| eztp.command.back | EVERYONE |
| eztp.command.home | EVERYONE |
| eztp.command.sethome | EVERYONE |
| eztp.command.delhome | EVERYONE |
| eztp.command.spawn | EVERYONE |
| eztp.command.setspawn | OPERATORS |
| eztp.command.rtp | EVERYONE |
| eztp.command.reload | OPERATORS |
| eztp.command.tp | OPERATORS |
| eztp.command.tpa | EVERYONE |
| eztp.command.tpahere | EVERYONE |
| eztp.command.tpaccept | EVERYONE |
| eztp.command.tpdeny | EVERYONE |
| eztp.command.tpacancel | EVERYONE |
| eztp.teleport.cross_dimension | EVERYONE |
| eztp.bypass.home_limit | OPERATORS |
| eztp.bypass.teleport_delay | OPERATORS |
| eztp.bypass.teleport_cooldown | OPERATORS |
| eztp.bypass.movement_cancel | NOBODY |

Permission mods compatible with Forge PermissionAPI may override these defaults. Node names are stable API and should not be changed.

Compatibility

  • Multiplayer clients do not need EZTP installed.
  • Singleplayer requires the JAR on the client so its integrated server can load EZTP.
  • Messages are localized on the server. English and Simplified Chinese are included; unsupported languages fall back to English.
  • EZTP does not modify vanilla classes, use a CoreMod or ASM, or create portals.

常见问题

eztp 支持哪些 Minecraft 版本?

eztp 支持 Minecraft Java 版 1.12.2,可用的加载器:Forge。下载时注意选择和你游戏版本一致的文件。

eztp 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Forge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。运行环境:客户端 / 服务端。

评论

登录后评论和评分

s3xybun 的其他作品

查看全部 →