先说我对holo不熟
也没看过任何holo的卖块影片或实况
以下就我对Minecraft这个游戏的理解说明一下
※ 引述《attacksoil (第三方程式)》之铭言
: 跟其他服务器比好像也还好?
: 怎么服务器好像快撑不住了
: 屑兔还要把那个产金的门关掉
: 还是其实盖了很多东西只是平常没给观众看到?
其实Minecraft的写法有个特性,
几乎所有的东西都挤在同一条执行绪上面
所以多核心几乎没有什么效果…
要快就只能拿单核效能高的CPU硬上
这也是为什么你开一个一般的服务器
通常很难超过30人同时上线…
因为人越多 = 同时加载的地图越多
同时也会加载更多的 entities
entity是什么?就是玩家/生物/怪物/矿车/掉地上的道具…那类的东西
跟方块不一样,他们每个tick都需要被处理一次
(他们有物理效果/可能有寻径AI/会与其他东西互动…)
也就是一秒20次,
这些东西只要数量一多
服务器很容易就撑不住了
另一个东西叫做block entity 或是tile entity
这些东西本身是方块,
但他们不是一般的方块
有些block entity同样有每个tick被处理的需要
像是熔炉/漏斗/…之类的
这些没有一般的entity吃效能,但数量一多还是可以很明显的
这两类是只要在玩家加载范围,就会持续需要效能处理的东西
人多,加载范围大,就是那样囉
至于你说paper还是spigot?
啊…相较于原版的server是有些不错的小功能/可以用一些插件
跟效能改进/偷吃步(比如说减少漏斗tick频率的设定那类的)
但本质还是没有变…牛牵到北京还是牛
一般来说要减轻这个问题
就是你知道会有效能疑虑的东西
尽量盖到远离人群的地方
有需要才过去
然后spawn chunks内因为是24小时加载的(即使没人)
尽量不要在里面放没必要24小时加载但又会吃效能的东西
另一个解答就是…
多开几个server,减少所有人同时出现的机率
同时稍微缓解只吃单核的问题
再用别的外部工具同步玩家资料
有些服务器会有的资源世界就是这个方案
那些小游戏服务器也是这样的
外面显示同时在线几千人,但其实不同的游戏房间/大厅
都是运作在不同的机器上的
讲了这么多
其实lag程度跟开发程度不一定正相关啦
还是要看你到底做了什么…