CHAPTER 01 · 公开阅读
认识群组服与选择学习路线
本系列整理自 LiamCraft 教程第二版(2026-08-28)。配置、版本与项目结构按原教程快照保留,实际搭建前请核对上游文档。

这是一套面向第一次开服者的实战教程,也是一份对当前 LiamCraft 项目的结构说明。第二版增加了白底演示图、思维导图、完整三后端搭建实验、配置逐项说明、数据库实战和上线变更流程。它不包含世界存档、玩家数据、商业插件 JAR、密码或密钥;读者会从官方来源下载程序,再按模板自行配置。
你最终会得到什么
- 一个可以先在本机验证的 Paper 单服。
- 一个只有 Velocity 对玩家开放、后端服不直接暴露的群组服。
- Lobby、小游戏、生存服等彼此隔离但能切换的结构。
- Windows 启动脚本、Linux
systemd服务、备份和排障方法。 - 路由器端口转发、第三方隧道、自建阿里云 FRP 三种公网方案。
- 正版验证路线,以及确有需要时的离线账号认证路线。
认识单服与群组服
单服
玩家直接连接 Paper。Paper 同时负责网络接入、世界、实体、插件和玩家数据。

优点是简单;缺点是不同玩法互相影响,崩溃和维护都会影响全服。
群组服
Velocity 是入口代理,每个 Paper 是一个后端。代理不运行世界,Paper 后端也不应该让公网玩家直接连接。

各组件职责
| 组件 | 做什么 | 不做什么 |
|---|---|---|
| Velocity | 接收玩家、验证身份、转发 IP/UUID、切服 | 不加载世界,不运行 Bukkit 插件 |
| Lobby Paper | 默认入口、菜单、NPC、引导 | 不应保存重要生存进度 |
| 游戏 Paper | 运行 BedWars/UHC/Arena 等玩法 | 不直接暴露公网 |
| 生存 Paper | 保存长期世界和玩家进度 | 不与小游戏背包混用 |
| MySQL/MariaDB | 共享权限、封禁、统计等结构化数据 | 不替代世界文件备份 |
请求实际怎么走
- 玩家连接
play.example.com:25565。 - DNS 把域名解析到路由器、隧道服务或云主机。
- TCP 流量抵达 Velocity。
- Velocity 完成正版验证,或进入额外的离线认证流程。
- Velocity 根据
try列表把玩家送进 Lobby。 - 玩家通过
/server bedwars或菜单触发切服。 - Velocity 使用
forwarding.secret向后端证明自己并转发玩家信息。
端口规则
同一 IP 上每个进程必须占用不同端口。教程示例:
| 服务 | 监听地址 | 端口 | 对公网开放? |
|---|---|---|---|
| Velocity | 0.0.0.0 |
25565 |
是 |
| Lobby | 127.0.0.1 |
25566 |
否 |
| Survival | 127.0.0.1 |
25567 |
否 |
| Minigame | 127.0.0.1 |
25568 |
否 |
| MySQL | 127.0.0.1 或管理内网 |
3306 |
否 |
0.0.0.0 表示所有网卡,127.0.0.1 只允许本机。多机部署时后端监听内网 IP,并通过防火墙只允许代理 IP。
数据是否会自动跨服
不会。不同 Paper 的背包、经验、末影箱、位置、世界和大多数插件数据默认独立。LuckPerms 共库只能共享权限,不能自动共享背包。需要共享什么就为对应数据选择明确插件或数据库设计;小游戏和生存服通常应故意隔离。
先选路线,再动手
三种常见目标
A. 朋友单服
一台 Paper、一个世界、少量插件。最低复杂度,适合 2–20 人。完成 01–03、07、09,并选择一种公网方式即可。
B. 同机群组服
一台机器同时运行 Velocity 和多个 Paper。玩家只连接 25565,代理把人送到 Lobby、小游戏或生存服。适合先验证玩法,也是本项目在 Windows 上的本地结构。
C. 多机群组服
Velocity 与后端分布在不同主机,常配合 MySQL、内网 VPN、防火墙和独立备份。管理成本最高,稳定后再迁移。
推荐的实施顺序

本机 Paper 单服
↓
加入第二个 Paper,确认端口互不冲突
↓
加入 Velocity,改用 Modern Forwarding
↓
只允许本机或代理 IP 访问后端
↓
安装基础插件并做备份恢复
↓
选择公网方案,小范围白名单测试
↓
域名、监控、自动备份与长期维护
每一步都先验证再继续。一次性安装二十个插件、同时开公网、同时改认证,出错时几乎无法定位。
开工前决策表
| 问题 | 推荐起点 | 影响 |
|---|---|---|
| 只让正版 Java 版玩家加入? | 是 | 代理 online-mode=true,安全和 UUID 最简单 |
| 必须兼容离线账号? | 否 | 若必须兼容,需要代理层认证、密码保护和额外测试 |
| 所有服务在同一机器? | 先是 | 后端可绑定 127.0.0.1,安全最直观 |
| 家宽有公网 IPv4 且能改路由器? | 检查后决定 | 有则直转发;没有则隧道或云 FRP |
| 是否用商业插件? | 尽量先用开源/免费方案 | 商业 JAR 不得随便转发,更新和授权要单独管理 |
| 预计同时在线多少人? | 用真实压测决定 | 决定 CPU、内存、带宽和地图预生成策略 |
你需要准备
- 一台 64 位 Windows 或 Linux 主机,SSD 强烈推荐。
- 稳定网络;开服机器不要依赖休眠。
- Java JDK/JRE,版本按 Paper 版本匹配。
- Minecraft Java 版客户端和至少两个不同账号/测试者。
- 文本编辑器,推荐 VS Code;不要用会破坏 UTF-8 的旧编辑器。
- 备份目标盘或对象存储,不能只备份在服务器同一块硬盘。
不在这个压缩包里的内容
- Mojang/Microsoft 游戏客户端。
- Paper、Velocity 和插件 JAR。
- 当前项目的世界、玩家数据库与自研插件成品。
- 任何授权不明或付费插件。
- 真实 IP、口令、数据库密码、认证数据和 forwarding secret。
本章观看人数 4 人
仅统计已登录读者,同一账号只计一次