跳到正文

YuRandomTeleport 配置说明

主配置文件位于:

text
plugins/YuRandomTeleport/config.yml

消息文件位于:

text
plugins/YuRandomTeleport/messages.yml

配置结构

区块用途
economy是否启用 Vault 经济扣费。
cooldown随机传送冷却。
world-blacklist禁止 RTP 的世界列表。
world-whitelist只允许 RTP 的世界列表,非空时优先于黑名单。
teleport等待秒数与等待期间打断规则。
default全局默认费用、半径、高度和安全检查。
worlds按世界覆盖默认配置。
commands传送开始、成功、失败时由控制台执行的命令。
debug是否输出详细安全点查找日志。
config-version配置版本,由插件维护。

经济配置

yaml
economy:
  enabled: false

economy.enabled 只决定插件是否尝试挂钩 Vault。实际扣费金额由 default.costworlds.<世界名>.cost 决定。

如果 cost > 0 但没有成功挂钩 Vault,插件不会扣费。控制台会输出 Vault 或经济服务缺失提示。

冷却配置

yaml
cooldown:
  seconds: 3

冷却单位为秒。传送成功后会刷新冷却;找不到安全点或等待被取消时会移除本次冷却。

生产服建议:

服务器类型建议冷却
普通生存30120
资源世界1060
高并发服务器60 秒以上,配合较低 max-attempts
活动服根据玩法节奏设置,必要时给予 VIP 绕过权限

世界访问控制

黑名单模式:

yaml
world-blacklist:
  - lobby

world-whitelist: []

白名单模式:

yaml
world-blacklist:
  - lobby

world-whitelist:
  - resource
  - resource_nether

只要 world-whitelist 非空,插件就只允许白名单内的世界进行随机传送,此时黑名单不再决定是否允许。

等待与打断

yaml
teleport:
  wait-seconds: 5
  cancel-on-move: true
配置说明
wait-seconds传送前等待秒数。设置为 0 表示立即传送。
cancel-on-move等待期间是否因移动、受伤、交互、聊天、执行命令而取消。

视角转动不会取消传送,只有坐标方块发生变化才会按移动处理。

拥有 yurtp.bypass.wait 的玩家会跳过等待。

默认传送范围

yaml
default:
  cost: 0.0
  radius:
    min: 500
    max: 2000

插件会随机生成正负方向的 X/Z 坐标,距离范围基于 minmax。如果 max 小于 min,插件内部会交换两者以保证范围可用。

示例:

yaml
default:
  radius:
    min: 1000
    max: 8000

这会让玩家落点大致分布在世界中心外侧,适合减少出生点周围资源压力。

高度范围

默认配置中 height 留空时,插件会自动读取世界高度:

yaml
default:
  height:
#    min: -64
#    max: 320

旧版本服务端不支持 World#getMinHeight 时,插件会使用 0 作为最低高度;新版服务端会通过反射读取真实最低高度。

限制高度的示例:

yaml
worlds:
  resource:
    height:
      min: 60
      max: 120

安全检查

yaml
default:
  safety:
    check: true
    allow-void: false
    allow-water: false
    allow-lava: false
    max-attempts: 32
    min-air-above: 8
    blocked-materials:
      - "MAGMA*"
      - "CACTUS"
      - "SWEET_BERRY_BUSH"
      - "COBWEB"
      - "*FIRE*"
    allowed-materials: []
配置说明
check是否启用安全检查。正式服建议保持 true
allow-void是否允许脚下为空或最低高度附近落点。
allow-water是否允许玩家身体或脚下液体为水。
allow-lava是否允许玩家身体或脚下液体为岩浆。正式服通常不要开启。
max-attempts每次传送最多尝试多少组随机坐标。
min-air-above玩家头顶上方额外需要多少格空气。
blocked-materials禁止作为脚下站立方块的材质。
allowed-materials白名单。非空时只允许匹配的脚下方块,优先于黑名单。

材质匹配支持通配符:

写法含义
CACTUS精确匹配。
MAGMA*前缀匹配。
*STONE后缀匹配。
*FIRE*包含匹配。
*匹配全部。

插件还会拒绝常见不稳定站立面,例如半砖、楼梯、地毯、雪层、床、栅栏、墙、玻璃板、铁栏杆、活板门、门和告示牌。

按世界覆盖

yaml
worlds:
  resource:
    cost: 50.0
    radius:
      min: 500
      max: 5000
    safety:
      max-attempts: 48
  world_nether:
    cost: 200.0
    height:
      min: 32
      max: 118
    safety:
      allowed-materials:
        - "NETHERRACK"
        - "SOUL_SAND"
        - "SOUL_SOIL"
        - "NETHER_BRICKS"
  world_the_end:
    cost: 500.0
    safety:
      allowed-materials:
        - "END_STONE*"

世界配置没有填写的字段会继承 default。列表字段有一个特殊行为:如果在世界配置中显式写成 [],表示清空默认列表;如果完全不写,才会继承默认列表。

自定义命令回调

yaml
commands:
  on-teleport:
    - "title {player} title {\"text\":\"随机传送\",\"color\":\"yellow\",\"bold\":true}"
    - "title {player} subtitle {\"text\":\"正在寻找安全位置...\",\"color\":\"gray\"}"
  on-success:
    - "title {player} title {\"text\":\"传送成功\",\"color\":\"green\",\"bold\":true}"
    - "title {player} subtitle {\"text\":\"坐标: X={x} Z={z}\",\"color\":\"white\"}"
  on-fail:
    - "title {player} title {\"text\":\"传送失败\",\"color\":\"red\",\"bold\":true}"
    - "title {player} subtitle {\"text\":\"原因: {reason}\",\"color\":\"gray\"}"

所有命令都由控制台执行,不要在命令前写 /

可用占位符:

占位符阶段说明
{player}全部被传送的玩家名。
{sender}全部命令执行者名。
{world}全部目标世界名。
{x}on-success成功落点 X。
{z}on-success成功落点 Z。
{reason}on-fail失败原因,例如 no_safe_location

调试模式

yaml
debug: false

开启后插件会输出安全点查找细节,包括找到的安全位置、跳过的坐标和拒绝原因。调试会增加控制台日志量,建议只在测试服或排障期间开启。