NanoLimbo 是一个极简、轻量的 Minecraft limbo 服务器,适合作为代理网络中的后备服务器,或离线模式项目中的授权等待服务器。它的核心目标是在尽可能少发送和处理数据包的前提下,保持高效与稳定。
这是什么
这是一个轻量级的 Minecraft limbo 服务器,可用于:
- 作为代理网络中的后备服务器(Velocity / BungeeCord / Waterfall)
- 作为离线模式项目中的授权等待服务器
项目的主要目标是
- 最大限度保持简单
- 以最少的数据包发送与处理实现运行
这个 limbo 是“空的”
- 不支持加载 schematic 建筑
- 因为该功能对这类用途并非必需
你可以通过以下方式向玩家发送有用信息
- 聊天栏
- boss bar
- title
- 玩家列表 header/footer
该服务器的用途,是在主服务器宕机或玩家认证期间,让大量玩家保持在线连接。
重要说明
- 该服务器不能运行 Bukkit/Spigot/Paper 插件
- 它不是上述任意服务端的 fork
- 请不要请求支持 Spigot 插件
如果你需要玩家处于 limbo 时具备某些功能,请在你的代理层实现:
- BungeeCord
- Velocity
功能特性
- 高性能
limbo 不会保存或缓存任何无用数据
- 不会为每个玩家单独创建线程
使用固定线程池
- 原生 Netty 传输开箱即用
- Linux(x86_64 / aarch64)支持
epoll和io_uring - macOS(x86_64 / aarch64)支持
kqueue - 若原生传输不可用,会自动回退到 NIO
- 广泛的协议支持
从 1.7.2 一直到最新的 1.21.11 与 26.1 客户端
- 支持 BungeeCord 与 Velocity 信息转发
同时支持 BungeeGuard 握手格式
- 支持外部密钥文件
Velocity-MODERN的 secretBungeeGuard的 tokens
可通过 @ 前缀从文件加载,例如:secret: '@secret.txt'
非常适合
- Docker secrets
- Kubernetes secrets
- SOPS 管理的凭据
- 所有文本字段均支持 MiniMessage 格式
包括
- chat
- title
- subtitle
- boss bar
- player-list header/footer
- MOTD
同时仍兼容
- 传统
&颜色代码 - 原始 JSON
- 按连接进行数据包速率限制
配置中的可选 traffic 模块可限制尝试洪泛数据包或字节流的客户端
- 更注重隐私的日志
logPlayersIp 配置项可在连接日志中隐藏玩家 IP 地址,更符合 GDPR 友好实践
- 完全可配置且体积轻巧
约 ~5 MB jar,且已打包原生依赖
版本支持
支持范围
- 符号
X表示该大版本下所有小版本
1.7.X1.8.X1.9.X1.10.X1.11.X1.12.X1.13.X1.14.X1.15.X1.16.X1.17.X1.18.X1.19.X1.20.X1.21.X(包括1.21.2,1.21.3,1.21.4,1.21.5,1.21.6,1.21.7,1.21.8,1.21.9,1.21.10,1.21.11)26.1.X
不支持
- 不支持 snapshots
命令
以下命令可在服务器控制台中使用
help- 显示帮助信息conn- 显示当前连接数mem- 显示内存使用统计version(或ver)- 显示 limbo 版本stop- 停止服务器
其他说明
- 服务器也支持通过
Ctrl+C正确关闭
安装方法
运行要求
- 需要 Java 17 或更高版本
安装步骤
- 从以下地址下载最新版本:
https://github.com/Nan1t/NanoLimbo/releases
- 将 jar 文件放入你选择的文件夹中
- 创建启动脚本,方式与启动 Spigot/BungeeCord 类似:
java -jar NanoLimbo.jar- 首次运行后会生成
settings.yml - 按需修改配置后,重启服务器即可
从 1.8.x 升级
自 1.12.0 起(即 1.21.2+ 协议重写版本),现有配置会涉及以下不兼容变更:
- 需要 Java 17+(之前为 Java 11)
dimension: NETHER已重命名为dimension: THE_NETHER
useEpoll: true已替换为netty.transportType: EPOLL
NIOIO_URINGKQUEUE
- 新增顶级配置项:
secureProfilelogPlayersIptraffic模块
默认值是安全的;如果你不关心这些项,通常无需手动修改
- 构建产物现统一命名为
NanoLimbo.jar
不再包含版本后缀
- 文本字段默认支持 MiniMessage
但你现有的传统 & 颜色代码和原始 JSON 配置仍可继续使用,无需改动
玩家信息转发
服务器支持三种转发类型
LEGACY
BungeeCord IP 转发
MODERN
Velocity 原生信息转发
将 Velocity 配置中的 secret 填入 secret 字段,或者使用 secret: '@secret.txt' 从文件加载
BUNGEE_GUARD
BungeeGuard 握手格式
你可以
- 直接在配置中写入 tokens
- 或使用
tokens: '@tokens.txt'指向外部文件(每行一个 token)
致谢
NanoLimbo 1.12.0 是多个社区分支共同协作的成果。感谢:
Nan1t
NanoLimbo 原作者与维护者
BoomEaro (Valentine)
负责 1.21.2 到 1.21.11 / 26.1 的协议重写、MiniMessage 栈、原生传输支持、构建现代化以及 GitHub Actions CI。该版本的大部分工作由其完成
YueMi-Development
实现了通过 @ 前缀加载外部 secret/token 文件的支持
Biquaternions
提供了 logPlayersIp 隐私配置项
更多完整致谢及按功能划分的相关链接,请参见项目 README。
相关链接
- 源代码与发布页:
https://github.com/Nan1t/NanoLimbo - 提交 Bug 或请求功能:
https://github.com/Nan1t/NanoLimbo/issues - Discord:
https://discord.gg/4VGP3Gv