从不咕咕的鸽纸 2022-04-29 20:08

WaterdogPE —— 新时代基岩版群组服的最佳选择!

前言: Nemisys现在已经不再积极维护更新,没有开发能力的服主很难仅依靠少数人维护的Nemisys继续开群组服,无法保持及时更新。在Nemisys式微之时,Waterdog(以下简称WD)已经小有名气。不过当时的Waterdog本质上还是魔改的BungeeCord(以下简称BC),主要为Java版(以下简称JE)服务器服务,但也有对基岩版(以下简称BE)协议的支持。虽然本意是为了让基岩版玩家也能进入JE服务器,但当时已经有部分基岩版服主选择用WD支持BE的功能来开设BE的群组服。面对日益增长的需求,WD也改为了WaterdogPE(以下简称WDPE),着重针对基岩版进行优化。因此,WDPE与BC可以算得上是远房亲戚,两者在诸如原理等很多方面都是相通的,甚至配置方法和部分教程也是可以照猫画虎学来的。如果你曾经在JE使用BC开设过群组服,那么相信你对WDPE会很快上手;从来没接触过BC和WD的也没有关系,本教程会尽量通俗易懂地讲解WDPE的使用方法。本人还是保持一贯的写教程习惯,注重实用性,着重介绍如何使用,而不过多对原理进行讲解。

使用WaterdogPE开设群组服的优势: 群组服可以通过把玩家分散到多个服务器,来降低CPU的负荷,并且充分利用多核CPU(使用WaterdogPE跨服技术可以让每个服务端的主线程都使用到单独的核心,提升整体负载能力)。你可以把不同的游戏内容搭载到不同的子服务器上面,例如一个服务器开生存模式,一个服务器开创造模式,而且不同服务器的背包等数据还可以不互通,或利用数据库实现互通。 相对于原来的Waterdog而言,WaterdogPE也做出了许多改进,例如:减少内存使用、更简洁的插件API、更方便的配置、易于进行修改、对基岩版新版本的积极支持、支持基岩版多版本(1.2.X——最新版本)加入服务器(前提是你的子服是支持多版本的核心,如NukkitPM1Edition等)、积极维护的开发文档等等,具体优点还是要亲自体验的好。

使用WaterdogPE前的准备: 首先,你要清楚群组服的定义。跨服群组是很流行的一种分布式部署Minecraft服务端从而提高服务器硬件资源利用率的技术。说人话,就是当你的玩家数量和游戏数量较多,单服务端已无法支撑如此庞大的数据量时,可以通过搭设群组服将压力分散到各个子服。换句话说,如果你的玩家数量没有那么多,比如日均也就十几人的,那搭设群组服实在是没有必要,还会占用你大量资源(如果你只是想开群组服装自己很厉害,那当我没说。不过2H2G的那种服务器就别凑热闹了,万一到时候内存溢出可别怪我没提醒)。 由于WaterdogPE和BungeeCord几乎是远房亲戚的关系,BungeeCord的一些原理也能在WaterdogPE这里通用,比如说工作原理:首先是玩家用客户端登陆WaterdogPE代理服务端(这个服务端本身只是起一个网络转发的作用,它本身并不会创建地图,也就是说单独开启WaterdogPE服务端是无法登入的),然后WaterdogPE代理服务端会把你的数据转发到子服务器上面,子服务器可以是普通的Nukkit/PowerNukkit/PocketMine等服务端。假设我们在这里有“登陆服、生存服、游戏服”三个服务端,并且将“登陆服”设置为默认登陆到的服务器,那么当玩家连入WaterdogPE代理端时,实际上就会进入到“登陆服”中。 然后玩家可以使用一些命令在“登陆服”、“生存服”、“游戏服”之间互相传送,而这个传送过程就和单服内多世界的切换一样简单,跳过了传统使用Transfer命令跨服时保存本服务器世界、定位其他服务器、加载世界的繁琐且耗时较长的过程,玩家仅仅看到一个短暂的跨世界画面之后就进到了另一个服务器里,可以说是无缝跨服了。 但是WaterdogPE仅仅是起到了转发玩家的功能,本身是没有跨服同步玩家背包、经济数据等功能的。如果你有这方面需要,你就要搭配数据库和支持数据库的插件使用来达到同步玩家数据的功能。当然,如果你的服务器各个子服玩法不同且无需同步数据,那就不用操心数据库的事情了,把WaterdogPE当成一个快速跨服工具即可。所以,对数据库这方面知识没有掌握的服主,也不建议搭设需要跨服同步数据群组服,否则十分容易弄巧成拙。 WDPE是基于Java11开发的,因此你用来运行WDPE的Java版本也要是11及以上版本。在运行WDPE前,请先检查自己服务器主机上的Java版本,因为通常情况下大部分服主用的都是Java8。别担心,Java拥有向下兼容性,通常情况下你的服务器升级到Java11不会有任何影响(除非你的服务器插件都是基于Java8编写且有不可替换的变量等内容);实在不放心,也可以通过一些方法实现Java8与其他版本并存,并用不同的Java路径启动服务器,但这暂时不在本教程的讨论范围内,请自寻方法。

相关文章

Nemisys —— 搭建一个无缝跨服的群组服吧!

By 从不咕咕的鸽纸 / 2022-03-25 12:00 / 217阅读 · 8喜欢 · 3评论

群组是一种分布式部署服务端从而提高服务器资源利用率的技术。当你玩家很多时,单端以至于双端已经无法容纳这么多玩家,这时你就可以考虑搭建群组服来将玩家分散到一个个子服来减轻服务器压力。

网易我的世界租赁服无法导出存档?不存在的!(结构方块教程)

By 从不咕咕的鸽纸 / 2018-10-07 09:33 / 4570阅读 · 68喜欢 · 55评论

自从我的世界中国版增加了租赁服功能以来,很多玩家都会去租一个服务器和自己的基友们愉快的玩耍,也有很多人会在租赁服里建一些建筑。但是租赁服却不能直接将存档导出,因此很多玩家的作品只能在租赁服中摆着却不能给别人欣赏。但是现在有一个东西可以解决这个问题!

关注

持续获得更多我的世界游戏经验.