lala.im:使用Cuberite自建高性能的Minecraft游戏服务器

運維技術·lala.im · 2018-02-18 · 121 人浏览

原文地址:https://lala.im/2653.html,請支持原作者!該處僅作轉載。

自建Minecraft服务器的教程多的数不胜数,但是用Cuberite搭建的教程,可谓寥寥无几。
Cuberite是一款轻量、快速、可扩展的Minecraft游戏服务器搭建工具,它和官方用JAVA开发的服务端相比,优势有以下几点:
1、性能完爆JAVA版本。
2、自带WEB管理面板,管理员可以在可视化的界面上对游戏服务器进行一些基础设置。
3、扩展性强,有官方的插件库,可以根据需要来增加游戏服务器内的各种功能。
4、支持的客户端众多,包括:1.8.x, 1.9.x, 1.10.x, 1.11.x, 1.12.x全部通吃~
搭建环境:
CentOS7X64,内存最好1G以上。本文所使用的服务器是Linode的Tokyo2,个人强烈建议使用国内VPS搭建,游戏服务器对延迟和丢包率要求很高,像我这种国外的机器搭建好了,在国内玩就是一个字卡!这里只是教程,所以我随便开了一台Linode的机子。
由于我们使用CentOS7,而系统内的GCC版本过低,所以Cuberite官方上面的预编译好的程序不能直接使用,接下来的安装我们采用编译的方式。
再因为我看到官方Github上面有一句这样的话:“Compiling may provide better performance (1.5-3x as fast) and it supports more operating systems.”
所以就更有编译的必要了~
进入正题:
安装编译需要的依赖和组件:

yum -y install git cmake make gcc gcc-c++

拉取Cuberite项目文件:

git clone --recursive https://github.com/cuberite/cuberite.git

进入cuberite到目录:

cd cuberite

编译:

cmake . -DCMAKE_BUILD_TYPE=RELEASE
make -j 2

编译完成后如图所示:

範例
此时在当前目录下会多出一个Server目录,进入到这个目录内,里面就有我们的Cuberite程序文件了:

cd Server

如图:

範例
我们可以先尝试运行一下,看看游戏服务器能不能正常跑起来:

./Cuberite

如果能够正常运行,会回显类似如下图的内容:

範例
此时我们通过浏览器打开VPS公网IP+端口8080应该可以访问到WEB管理面板:

範例
别着急登录,现在我们先回到Xshell内,按键盘组合键Ctrl+C退出来。
现在进行一些游戏服务器的详细设置。
首先是要把我们刚才的WEB管理面板添加上管理员以及设置一个复杂的密码:

vi webadmin.ini

请按照如下图的格式来填写:

範例
接着我们要关闭服务器的“认证”功能,这个操作很重要,如果不关闭认证,那么我们搭建的服务器就相当于是一个正版服务器,只有购买了Minecraft正版的玩家才能登录我们的服务器,这样一来就不好玩了呀,为了让所有玩家(包括盗版)在内都能顺利连接上我们的服务器,必须要这样操作一下2333~
编辑Cuberite主配置文件:

vi settings.ini

将如下图箭头所指的数字由1改为0:

範例
注意:
在此配置文件内,我们还可以修改很多的参数,比如服务器描述信息、服务器最大在线玩家、服务器运行端口等等。这里LALA就不一一介绍了。
在这里额外写一下Server目录内其他配置文件的作用:
motd.txt – 进服消息,当玩家加入您的服务器时显示。
monsters.ini – 调整游戏内怪物的行为。
crafting.txt、brewing.txt、furnace.txt – 调整制作、酿造、炉子配方。
世界名/world.ini – 可以调整游戏模式,具体都有哪些游戏模式可参考:https://book.cuberite.org/#3.3
favicon.png – 服务器图标,可以制作你自己的然后替换掉,注意大小必须为64X64。
有关Cuberite更多的配置和使用方法请参考:https://book.cuberite.org/
根据自己的需要修改的差不多了后,现在我们就可以把Cuberite的服务放到后台去持久运行了。
安装screen:

yum -y install screen

启动Cuberite:

screen -dmS Minecraft ./Cuberite

现在我们重新打开WEB管理面板,输入我们的管理员账号密码登录进去,可以看到界面是这样子的:

範例
至此,我们的Minecraft服务器就基本搭建完成了。
下面我们该如何进入自己的服务器或者邀请其他好友来我们的服务器玩耍呢?
因为我们关闭了服务器的认证,所以即便是盗版用户也能够进入我们的服务器,这里LALA给大家推荐一个不错的第三方启动器:http://www.mcbbs.net/thread-142335-1-1.html
下载好这个HMCL启动器,打开它,接下来按照我如图的操作来设置。
1、首先把启动器内的下载源改成BMCLAPI,别问为什么,官方的下载地址下的太鸡儿慢了,我没那个耐心等:

範例
记住更改完了后,要把启动器关了再打开!
2、现在来下载游戏客户端,我们的服务器端很强大,支持众多游戏客户端版本,这里LALA就选了个目前比较新的版本:

範例
3、游戏下载完成后,在普通设置内,把最大内存改成512或者1024,然后设置游戏运行的分辨率:

範例
注意,这里的内存不是越大越好,换句话说这里的内存设置的越小反而还越好!当然也不能设置的太小,所以建议512-1024就行了!内存设置的太大游戏运行不起来!
4、选择离线模式,并设置游戏用户名,开始进入游戏:

範例
5、在游戏内添加我们的服务器信息:

範例
不出意外,现在我们就可以看到我们的服务器信息了:

範例
可以正常进入哦!

範例
双开一个客户端,看看能不能找到我之前的人物!?

範例
关于Cuberite的WEB管理面板,我有必要说一下一些实用的操作:
1、将自己的游戏账号改为管理员等级,这样我们就可以使用任意游戏内的命令,会方便许多!

範例
这样就可以更改用户的等级了:

範例
2、给某个玩家发送消息:

範例
效果:

範例
3、管理游戏内的天气状况:

範例
在更改了天气状态后,务必要重载服务器才能生效!
4、重载服务器:

範例
写在最后:
如果你按照本教程搭建的服务器无法连接,一般是系统防火墙的问题,关闭即可:

systemctl stop firewalld.service
systemctl disable firewalld.service
運維技術 lala.im
Theme Jasmine by Kent Liao