更新更新:目前使用树莓派开基岩版服务器我能找到的最好方案是Java+Geyser
我去......这他妈的终于成功了
折腾时长长达半年啊,从学期初到末再到放寒假再到春节,今天可是大年初二
本教程制作匆忙,很多东西都是点到为止,而且也没有什么图片(以后可能会配图),也肯定会有纰漏或者错误,请多多包涵
目录:
Java版篇
基岩版篇(Nukkit(X),Pocketmine-MP,官方服务端)
好了,废话不多说,开始
mkdir minecraft && cd minecraft
Java极其简单,且容易地可跨平台,但与基岩版相比代码效率更低
mkdir Java && cd Java
sudo apt install default-jdk
不行就百度,再不行就谷歌,这篇或许有帮助
这里有多种选择,可以官方下载
也可以通过Paper或者spigot获得对应的版本,基本上是一样的,但据说spigot的效率更高一些
这里下载目前最新官方jar链接举例
wget https://launcher.mojang.com/v1/objects/bb2b6b1aefcd70dfd1892149ac3a215f6c636b07/server.jar
java -jar server.jar
之后提示需要同意EULA协议并自动退出,这时候打开同目录下的eula.txt并把false改成true就可以了,此处点到为止
修改之后再次运行,成功
仍不能解决?这篇或许有帮助
好了重头戏来了,这里我卡了太太太久
cd ../
mkdir bedrock && cd bedrock
首先,先简单介绍一下目前可供选择的服务器端软件和
官方的bedrock_server(目前只有x64而没有arm的)
国人领导开发的Nukkit(或者说NukkitX,基于Java)
只支持64位系统的PocketMine-MP(基于PHP)
注意“只支持64位系统”不是说只支持x64,树莓派上也可以安装64位Linux来运行Pocketmine-MP
Nukkit极其简单,因为它基于Java
mkdir nukkit && cd nukkit
上面不是讲过了嘛......人家不讲了
wget https://ci.nukkitx.com/job/NukkitX/job/Nukkit/job/master/lastSuccessfulBuild/artifact/target/nukkit-1.0-SNAPSHOT.jar
java -jar nukkit-1.0-SNAPSHOT.jar
之后自己选择语言,配置server.properties(上面有),这里不讲了
[0.16-1.14.x[NPS] 已配置纯净服务端合集 - Nukkit服务端整合 - Minecraft(我的世界)中文论坛 ](https://www.mcbbs.net/thread-810442-1-1.html)
[[原创] 超简单的 Nukkit 三步开服教程,Windows Linux MacOS 系统通吃 - Nukkit服务端专区 - Minecraft(我的世界)中文论坛](https://www.mcbbs.net/forum.php?mod=viewthread&tid=553920&gdbiecjmohdbimop)
但是,有个很严峻的问题,它不能完整地拥有MCPE中所有的组件,如生物自然生成,红石等,而且生成的地貌极其难看,一点都不像原版中的地形地貌
不过,有很多插件可以使用,可以模拟官方的一些功能,但是,我找不到红石的mod啊(也可能是我太菜了)
于是乎?继续下一个尝试————
mkdir pocketmine && cd pocketmine
这个相对复杂
首先,你需要一个64位Linux,这有点难搞(What?)
其次,你执行官方的自动安装脚本是行不通的(What?)
好吧,这就需要耐心了,你想,我都一路摸索过来了,你再难有我难?
第0步?是的呢
你可能也感觉有点崩溃,又要烧录一次?
没事的,不要来,慢慢急 不要急,慢慢来,给点耐心好吧
这里选择你喜欢的Linux都可以,但是我可以推荐一个「树莓派爱好者基地」推出的系统
新手甚至可能会卡在这个“第0步”
这里需要折腾的事情对于新手来说甚至可能比搭建MC服务器更多,但是,相信自己能解决所有的问题好吧
关于配置64位系统的问题去参考官方教程,我这里点到为止好了
目前,假如你配置好了64位系统,请往下面操作
你以为apt就可以了吗?No!No!No!
Pocketmine-MP需要一大堆PHP拓展,最关键的一个是php-pthreads
可以apt啊!
那你来啊!
安装这个拓展,需要在编译的时候要指定开启zts(好像是这个名字)
但是apt下来的PHP这个zts是没有打开的,要开启要只能重新编译
那...PocketMine不是给了一些编译好的二进制文件吗?
我试了啊!没一个能用的(7456)
那...源码编译可以吗?
或许可以,但是我没能成功(太烦了)
最最最后,我找到一个Pocketmine-MP帮助编译PHP的github项目
所以我们可以——
sudo apt install make libtool m4 wget gzip bzip2 bison g++ git cmake m4 bison pkg-config libtool libtool-bin
#准备编译软件
git clone https://github.com/pmmp/php-build-scripts
cd php-build-scripts
bash compile.sh
#注意,这需要大约一两个小时(真的)
完成之后,你会发现你当前目录下会多一个 bin 文件夹,这个等下再说
cd ../
直接使用git,其他的方法不要信
git clone --recursive --depth 1 https://github.com/pmmp/pocketmine-mp.git pocketmine-mp.git
之后把刚才得到的 bin 文件夹复制进去
cp -r php-build-scripts/bin/ pocketmine-mp.git/
之后需要获取PocketMine-MP.phar
你可以从它GitHub的releases找到,也可以从其他渠道
我直接从jenkins获取最新成功的phar
https://jenkins.pmmp.io/job/PocketMine-MP/lastSuccessfulBuild/artifact/PocketMine-MP.phar
之后直接运行start.sh即可
bash ./start.sh
自己根据向导配置服务器端啦
完成
但是它还是有很多不足的,缺点与Nukkit相似:很多官方的东西都没有
但是它有一个红石的插件,很赞!
出于对完美的追求,我去尝试了官方的服务器软件
官方也给出了官方的服务器端,既有Windows也有Ubantu
但是,它们是基于x64的,所以一个都用不了
所以......wine?
错了,应该尝试qemu-user,wine我试了是不能解决问题的
有人还提出了提前安卓的arm平台的APK安装包加自己制作运行程序来制成官方的服务器环境,据称性能很好,但是我尝试的教程并没有成功(我感觉它被砍掉了一部分???)
注意:下面尝试qemu的这个实例基本没有任何尝试的意义,因为即使你成功运行了,应该还是会和我一样卡得要死(我用的是顶配树莓派4)
好吧还是记录一下过程
首先准备qemu-user
sudo apt search qemu-user-static
之后获取官网的Ubantu版本的服务端软件(略)
目前假定你已经展开安装包进入目录
尝试运行,会提示缺少依赖
这时,需要从x64的Linux里cp一些库文件进来(你说烦不烦)
需要复制的目录有三个
/lib64
/lib/x86_64-linux-gnu
/usr/lib/x86_64-linux-gnu
之后可以调用wuem-user运行,但是卡的要死,CPU真的是全功率运行的
玩还是可以勉强玩的...但是真的很卡,几乎无法投入实用
所以...最终还是不尽人意啊,但是PocketMine有个红石,我觉得差强人意
我尝试之后发现Google上也有一个差不多的教程
还发现有个脚本帮你完成上面的操作(大概是)
https://raw.githubusercontent.com/TheRemote/MinecraftBedrockServer/master/SetupMinecraft.sh