休闲生电粘液MC服务器踩坑
很早之前就有开Minecraft服务器的想法,终于在最近才得到真正的实现。
最近斥巨资购入了国内某知名云厂商的服务器,并使用paper系的服务端搭建了一个休闲生电粘液Minecraft服务器。
由于服务器类型比较特殊,所以运营过程中遇到了一些技术问题,在这里记录一下踩坑经历。
Sending too many packets!
因为我们是一个生电服务器,所以免不了一些需要高速操作的地方,而一般的服务器都会禁止短时间大量发包,所以我们需要进行特别的配置。
ViaVersion
如果安装了ViaVersion插件,那么其配置文件中的max-pps
配置项可能导致玩家被踢出。将其设置为-1
来完全禁止检测或者设置为更大的数值可以修复。
server.properties
该配置文件中的rate-limit
项和上面的ViaVersion中的max-pps
其实大同小异,但是如果完全禁止则需要设置为0
。
paper.yml
我们的主角来了。傻逼paper的配置文件中有一项incoming-packet-spam-threshold
,官方文档对其解释是:
Sets the threshold at which the server will consider incoming packets spam and ignore them.
其默认值为300
。
我在网上检索相关资料时也找到了其他人对这个配置项的一些说法,比如:https://www.spigotmc.org/threads/sending-too-many-packets.440108/
5楼还建议楼主increase incoming-packet-spam-threshold。
我觉得是个正常人,就会觉得这一项代表的是数据包的量的阈值,单位是个,所以要达到高速操作的目的,就要提高这个阈值,就要调大。
但是实际上这一项是数据包发送间隔,单位是毫秒,所以实际上你应该调低他。
这个傻逼问题卡了我一个小时,多亏了paper文档不明不白的解释。
tuinity.yml
paper系的服务端实际上是指purpur,如果你也使用purpur,那你可能会有这个配置文件。
可以把packet-limiter
中的interval
全部改为-1.0
来禁用这个功能,或者按照官方wiki做更细致的修改:Config · Tuinity/Tuinity Wiki (github.com)
Geyser
BE的端口是UDP的,防火墙别选错协议。