- ◆ 游戏版本
- 全版本
- ◆ 服务端核心
- Paper / Purpur / Spigot
作者 Aisen | 联系 QQ 1797950 | 插件交流群 974349582
承接插件定制 · 玩法开发 · 功能扩展,低至 10 元起。
MagicRTP
跨服随机传送插件。一条指令把玩家送到指定子服的指定世界,并随机落在安全点上。
适合 Velocity / Bungee 群组服:大厅一键前往生存服、资源服、竞技场,落地即安全,不用再手搓传送脚本。
和同类插件相比,MagicRTP 刻意做减法:没有菜单、没有组队匹配、没有花活,只保留跨服随机传送本身,配置一份文件就能跑起来。
功能特性
-
一条指令跨服 —
/rtp survival:world_nether,格式固定为服:世界 -
智能判断本服 — 人已经在目标服时自动走本地传送,不用改写法
-
全网共享冷却 — 四台子服共用同一冷却,换服刷不了次数
-
落地才扣冷却 — 目标服离线、世界禁传、找点失败都不扣
-
安全落点检测 — 自动避开岩浆、水、仙人掌等危险方块,可配置黑名单
-
下界适配 — 下界按 Y 轴扫描安全空隙,不会把人扔进岩浆湖
-
站定等待 — 传送前需站定 5 秒(可配),移动或受伤自动取消
-
世界黑名单 — 每个子服在自己的配置里禁掉不能进的世界
-
异步找点 — 基于 PaperLib 异步加载区块,不卡主线程
-
子服心跳 — 自动判断目标服是否在线,离线直接提示
命令
/rtp <服>:<世界> 跨服随机传送,例如 /rtp survival:world_nether
/rtp reload 重载插件配置
别名:/magicrtp
权限
magicrtp.use 使用 /rtp(默认 true)
magicrtp.reload 重载配置(默认 OP)
magicrtp.bypass.delay 跳过站定等待(默认 OP)
magicrtp.bypass.cooldown 跳过全网冷却(默认 OP)
不需要按服、按世界配权限。能去哪由配置里的世界黑名单决定。
配置示例
# 本子服在 Velocity 里的名字,每台各不相同
server-name: "spawn"
# 网络内所有子服名
servers:
- spawn
- survival
- resource
- arena
options:
cooldown: 600
delay: 5
max-attempts: 32
cancel-on-move: true
cancel-on-damage: true
world-blacklist:
- world_prison
mysql:
host: "127.0.0.1"
port: 3306
database: "magicrtp"
username: "root"
password: "password"
table-prefix: "magicrtp_"
# 本服可 RTP 的世界与半径
worlds:
world:
min-radius: 100
max-radius: 5000
center-x: 0
center-z: 0
四台子服配置结构相同,只需改 server-name 和各自的 worlds。
安装说明
-
将
MagicRTP-1.0.0.jar放入每台子服的plugins/目录 -
确保代理端(Velocity/Bungee)已正确配置各子服名称
-
准备一个所有子服都能连上的 MySQL,建库
magicrtp -
启动一次生成配置,修改每台的
server-name、servers、mysql与worlds -
重启或
/rtp reload生效
兼容性
服务端:Paper / Spigot 1.8.8 ~ 1.21.x / 26.x
代理端:Velocity、BungeeCord、Waterfall(使用标准 BungeeCord Connect 通道,代理端无需另装插件)
数据库:MySQL 5.7+ / MariaDB 10.3+
常见问题
Q:跨服没反应 / 一直提示目标服不在线?
A:检查每台子服的 server-name 是否与 Velocity 配置里的键名完全一致,以及各服是否都成功连上 MySQL。心跳每 30 秒更新一次,刚启动的服最多等 1 分钟。
Q:能限制某个玩家只能去某几个服吗?
A:1.0.0 不做按人授权,统一用 options.world-blacklist 管控。全体玩家去向一致。
Q:为什么落地没扣冷却,却被提示冷却中?
A:冷却是全网共享的,在任意子服落地成功都会写入。换服后仍受同一冷却约束。
Q:传送前站定期间能攻击别人吗?
A:受到伤害会取消传送。移动一格也会取消。OP 可用 magicrtp.bypass.delay 跳过等待。
感谢使用,欢迎反馈建议!