茜香
茜香
发布于 2026-01-25 / 35 阅读
0

服务器的实验记录

问题一:在使用Velocity+FabricProxy-Lite结构的fabric服务器上,基岩版玩家(无论使用后端的Geyser-Fabric还是Geyser独立版)的Floodgate模式登陆被拦截并提示This server requires you to connect with Velocity的情况。

解决方法:打开FabricProxy-Lite.toml配置文件中的hackEarlySend开关,将其修改为true。问题就可以迎刃而解,但我暂不知道这其中的深层原理是什么。

问题二:在Velocity+Multilogin+FabricProxy-Lite结构的fabric服务器上,白名单无法正确添加的原因

问题所在:由于套了一层Velocity代理,后端服务无法在白名单机制拦截之前正确获取玩家昵称与UUID并写入usercache.json(在常规单服务端环境下, Java版玩家可以正常写入但是基岩版玩家不可以,结论是只要是套了一层代理进来的,都无法敢在白名单拦截之前被服务端计入usercache.json)。更要命的是此时online-mode处于false状态,服务端生成的UUID是随机生成的离线模式UUID。于是就给人一种“我成功添加了白名单呀”,然后玩家说“不是啊系统还提示我没加入白名单呀”。

解决方法:这里需要将之前服务器基岩版玩家录入白名单的方法应用至所有玩家,我将该方法称之为“大象法”,灵感来源于“把大象装进冰箱需要几步”。原理很朴素,关闭白名单,让玩家进入服务器加入白名单,开启白名单。

另外在Fabric服务器且有FabricProxy-Lite模组的情况下,你可以放心打开后端服务器的online-mode,而不会对Velocity产生影响。

问题三:如何让基岩版高版本加入服务器

前言:由于服务器本体为Java版1.21.5,在这个版本下的Geyser支持的基岩版仅为1.21.51-1.21.93,这无法修改。截至2026年1月24日,Java版最新版本为1.21.11,基岩版最新版本为1.21.132。最新版Geyser可将基岩版1.21.111-1.21.132的基岩版客户端与支持Java版1.21.11的服务端进行对接。

解决方法:使用Geyser独立版配合VIA插件。注意VIA插件一定是要支持到1.21.11的。若要使用Floodgate登录,需要前往[服务端目录]/config/floodgate也就是Floodgate的配置文件目录下,将里头的key.pem复制粘贴进Geyser独立版的文件夹内,位置与Geyser-Standalone.jar处于同一目录,Geyser独立版就可以正常使用。

Geyser独立版可以始终保持更新,保证基岩版最新版的玩家可以加入,但是更新时一定要注意后端服务器的VIA所支持的版本。