Metro 是一个 Minecraft 地铁交通系统插件。管理员创建自动化的地铁线路网络,玩家右键红石铁轨即可呼叫矿车并自动乘坐。
把"服务器里的交通"做成一套可运营的基础设施,而不是一堆手搓的命令方块。 管理员用 GUI 铺线路、划停靠区、设换乘与票价;玩家的操作只有一个——右键红石铁轨。
差异化在于它是线路网络而不是单纯的传送点:停靠区有顺序、有换乘、有按距离或站数的计价, 矿车会自动发车与到站,网页地图上能看到整张网。
不做什么(避免误装):
- 不是传送插件;玩家仍然坐着矿车在世界里真实移动。
- 不接管铁轨建造,线路铺设仍是管理员的工作。
- Metro 与 Metro/Railway 的另一侧不支持同时安装(两者同源、包名相同)。
- 多线路网络 — 创建多条线路,设置停靠区和换乘
- 图形化管理 — 内置 GUI 界面
- 定价系统 — 单一票价、固定票价、按距离/站数计价;中途下车默认按坐到下一站结算(
economy.mid_route_exit_fare) - 权限管理 — 元素级信任与所有权
- 安全模式 — 保护矿车免受推动、攻击和破坏
- 矿车传送门 — 跨区域 / 跨世界传送
- 网页地图 — 支持 BlueMap / Dynmap / Squaremap
- 经济系统 — 可选 Vault 集成;没有 owner 的线路,票款可由
economy.account指定入账账户(留空 = 销毁,即旧行为) - 多语言 — 中英文等多国语言
- Folia 兼容 — 支持 Folia 多线程服务端
选区后,站在选区内准备作为停靠点的红石铁轨上,面向发车方向,执行 /m stop create central 中央站,即可一次保存 corners、stoppoint 和发车朝向。省略名称时使用 ID。如果脚下没有选区内的红石铁轨,只创建区域并提示使用 /m stop setpoint 补齐,不会猜测附近的轨道。
/m line create main 可以省略显示名称;站在唯一站台内执行 /m line addstop main 即可按顺序追加当前站台。重新选区后 /m stop setcorners、调整站位和朝向后 /m stop setpoint 也可省略站台 ID。站台重叠时必须明确填写 ID;权限和所有权检查仍然适用。传送门创建和目标设置继续使用原有的当前位置逻辑。
Title 配置支持站台常驻、到站、终点、发车和等待场景,以及各站台自定义模板。等待场景的 interval、fade_in、stay、fade_out 生效,三个文本字段都支持 <countdown> / {countdown}。发车显示一次,旧 titles.departure.interval 无效,可删除。到站和终点支持 actionbar;关闭到站 Title 不影响到站声音。多线路站台可配置 titles.stop_continuous.multi_line.title/subtitle/actionbar(额外占位符 {count}、{routes});未配置时沿用语言文件提示。always: false 每次重新进入都显示。修改站台模板后重新进入区域查看效果。
语言文件自动迁移至 v4,补齐七种语言的操作提示并更新可选参数帮助,保留其他自定义翻译。
| 概念 | 说明 |
|---|---|
| 线路 (Line) | 按顺序排列的停靠区列表,定义列车行驶路径 |
| 停靠区 (Stop) | 由两个对角点定义的三维站台区域 |
| 停靠点 (StopPoint) | 停靠区内的红石铁轨,玩家右键乘车的位置 |
| 换乘 (Transfer) | 在停靠区转乘其他线路 |
| 项 | 要求 |
|---|---|
| 服务端 | Paper 1.18+ |
| Java | 17 |
| 必需依赖 | 无 |
| 可选依赖 | Vault(经济)、BlueMap / Dynmap / Squaremap(网页地图)、PlaceholderAPI |
| Folia | 支持 |
- 把
metro-<version>.jar放进服务器plugins/。 - 启动服务器生成默认配置。
- 输入
/m或/metro打开管理 GUI 开始铺线路;/m help查看命令帮助。
部署用的是
build/libs/metro-<version>.jar;同目录的*-plain.jar不要部署。
完整命令与权限清单见 Metro Wiki。
线路 max_speed 和 settings.cart_speed 的单位是格/tick。世界启用 Minecart Improvements 后,Metro 自动适配原生实验物理,支持超过旧物理约 30 格/秒的载人直线速度,并提前减速进站。配置不会自动启用世界实验;新旧世界的启用步骤见 实验矿车物理。
已移除 speed_control.cruise_control。升级时配置自动迁移到 v5 并备份旧文件;安全模式的卡停恢复仍保留。26.1.2 运行需要 Java 25,插件产物仍保持 Java 17 字节码。
.\gradlew.bat :Metro:build # 编译 + 测试 + 部署 jar
.\gradlew.bat :Metro:test # 只跑测试
.\gradlew.bat :Metro:jarGate # 部署 jar 门禁Windows 必须用 PowerShell 跑 .\gradlew.bat(仓库路径含空格)。
- Metro 与另一侧(Railway)包名相同,不能同时安装。 这是有意设计,便于两边同步功能更新。
- 网页地图集成依赖对应地图插件在场;缺席时该能力不宣告为可用。
- 完整文档:Metro Wiki
- 待办与路线:仓库根
PLAN.md - 版本记录:
CHANGELOG.md
