跳到正文

YuRandomTeleport 常见问题

执行 /rtp 后提示找不到安全传送点

常见原因:

  • default.radius.mindefault.radius.max 范围内地形不可用。
  • height.minheight.max 限制过窄。
  • allowed-materials 白名单过于严格。
  • blocked-materials 覆盖了目标世界大量地表方块。
  • safety.max-attempts 太低。
  • 下界高度范围没有覆盖可站立洞穴。

排查建议:

  1. 临时开启 debug: true
  2. 查看控制台拒绝原因。
  3. 放宽 allowed-materials 或临时清空它。
  4. 提高 safety.max-attempts64 测试。
  5. 针对目标世界单独设置 worlds.<世界名>.height

为什么玩家移动后传送取消

这是等待打断机制。默认:

yaml
teleport:
  wait-seconds: 5
  cancel-on-move: true

等待期间玩家移动位置、受伤、交互、聊天、执行命令或离线都会取消传送。视角转动不会取消。

如果希望立即传送:

yaml
teleport:
  wait-seconds: 0

如果只想给特定玩家跳过等待,给予:

text
yurtp.bypass.wait

开启经济后没有扣费

请按顺序检查:

  1. economy.enabled 是否为 true
  2. default.cost 或世界配置中的 cost 是否大于 0
  3. 是否安装 Vault。
  4. 是否安装经济插件并成功注册 Vault 经济服务。
  5. 命令执行者是否拥有 yurtp.bypass.cost

注意:扣费发生在成功传送后。找不到安全点或等待被取消时不会扣费。

控制台能不能执行 /rtp

控制台不能执行无参数 /rtp/yurtp,因为控制台没有当前世界和玩家位置。

控制台可以执行:

text
yurtp <玩家>
yurtp <玩家> <世界>
yurtp reload

白名单和黑名单同时配置时谁优先

白名单优先。只要 world-whitelist 非空,插件就只允许白名单内世界执行随机传送。

示例:

yaml
world-blacklist:
  - lobby
world-whitelist:
  - resource

此时只有 resource 允许 RTP,其他世界都会被拒绝,即使不在黑名单里。

玩家有权限但仍无法代传送其他人

代传送需要满足两个条件:

  1. 命令执行者拥有 yurtp.teleport.others
  2. 目标玩家拥有 yurtp.use

如果目标玩家没有 yurtp.use,插件会返回权限不足。

下界随机传送容易失败怎么办

下界没有可靠的最高地表概念,插件会在高度范围内随机扫描候选 Y。建议给下界单独配置:

yaml
worlds:
  world_nether:
    height:
      min: 32
      max: 118
    safety:
      max-attempts: 64
      allowed-materials:
        - "NETHERRACK"
        - "SOUL_SAND"
        - "SOUL_SOIL"
        - "NETHER_BRICKS"

如果仍然失败,先关闭材质白名单测试,确认是高度问题还是方块限制问题。

为什么自定义 title 命令没有效果

检查这几点:

  • 命令不要以 / 开头。
  • JSON 文本中的双引号需要保持 YAML 字符串合法。
  • 低版本服务端的 title 命令格式可能不同。
  • 先在控制台手动执行展开后的命令,确认服务端本身支持。

修改配置后需要重启吗

大多数配置可以通过以下命令重载:

text
/yurtp reload

重载会重新读取配置、消息、世界覆盖和 Vault 状态。若你替换了 jar、安装了 Vault、安装了经济插件或更新了服务端核心,建议重启服务器。

bStats 可以关闭吗

可以在服务器的 bStats 配置中关闭。关闭后不会影响随机传送、冷却、扣费或世界规则。