BedrockX 开设基岩版插件服
bds的推出使得基岩版终于能够开设私人专用服务器,但是由于mojang并不重视服务端的开发,在bds推出一年多以后服务端依旧是bug多多,且不提供插件api,不具有行为包的完整特性,看上去就像是一个半成品。(虽然官方也说了这就是alpha版本)这也给多人服务器的开设造成了巨大的不方便,比如无法传送到他人的位置,无法使用领地保护_(曾经我们都是用命令方块来圈地的)_,无法反作弊等等。虽然官方推出的服务端就是个半成品,但是一年多来各位大佬为更好的开服体验做出了诸多的贡献,比如之前的Codehz的StoneServer,Sysca11的bdlauncher等等作品都在原版bds的基础上提供了api,Codehz的StoneServer扩展了官方的脚本api(在官方将其从bds中国移除之后Codehz还自己将api加了进去)使得用js制作服务端插件成为可能,而Sysca11在他的bdlauncher基础上还做出了圈地/传送/经济等各种插件…这些在一开始都是难以想象的,bds服能有今天那么丰富的内容首先得感谢诸位开发者的贡献。 随着时间的发展,支持插件的服务端也在变化,Stoneserver很可惜的停更了,但是Codehz在最近推出了全新的Element Zero,而bdl也发展成了bdx。这两者和之前的服务端的一个巨大的差异就是,他们都是基于windows版本的bds,据说在性能上相对linux的bds会有很大的提升,并且可以在windows server上使用了,**linux也依旧可以通过wine来使用。**这篇文章介绍如何在Linux上使用bdx,如果要在windows上使用的话则可以参考 https://www.jianshu.com/p/e1ccd0f96fd6 。 bdx项目地址
本机环境 Windows10 Ubuntu1804 (因为bdx需要在wine5.0以上运行,推荐直接使用1904以上的系统。)
在windows上生成服务端程序
据作者所说
注意:RoDB.exe在wine环境似乎工作不正常,请用相同pdb在windows下生成symdb,再复制过来
所以我们现在windows上运行程序,生成所需要的资源,在成功运行bdx之后再打包放到我们的linux服务器上。 新建一个文件夹(我这里就叫bdx了),从官网下载windows 版本的服务端压缩包放进去,然后从项目页面下载base_env.7z、release_dbg_x.7z两个文件放到该文件夹下。 解压三个文件夹,然后将得到的base_env和release_xx两个文件夹中的文件都移动到得到的两个文件夹外(bdx文件夹中)。运行 RoDB.exe,如果bedrock_server.symdb和bedrock_server.symdef两个文件生成的话就可以了。之后双击运行bedrock_server.exe,如果显示如下,就算成功在windows上配置运行了。 如果你是windows开服到这里就足够了,不过要是你想用linux开服就还要多做几步。 使用zip将整个bdx文件夹压缩,并使用sftp之类的方式传送到服务器上。
安装wine5.0
**bdx需要在wine5.0以上的环境运行,不然会出错。**可惜大部分源中的wine都是3.0左右的版本。所以我们还需要添加源并安装wine5.0。以ubuntu为例(下面的方法1604~1910都可用)。此处参考了ubuntuhandbook的教程.
1904以下的版本 ubuntu1904以下的版本如果直接安装会遇到很多依赖无法解决的问题,所以请首先安装下列依赖。
sudo apt-get install libgnutls30:i386 libldap-2.4-2:i386 libgpg-error0:i386 libxml2:i386 libasound2-plugins:i386 libsdl2-2.0-0:i386 libfreetype6:i386 libdbus-1-3:i386 libsqlite3-0:i386
龟速下载警告!! 下面这些操作使用了国外的软件源,如果你的服务器在国内,大概率在下载时遇到速度基本没有的情况(得下载几百MB的文件),所以强烈建议使用代理。 在服务器上运行代理软件之后,假设在1080端口开启了socks5代理,那么在使用apt命令的时候只需要使用 sudo apt-get -o Acquire::http::proxy=“socks5h://127.0.0.1:1080/” update 这样的形式即可。
sudo dpkg --add-architecture i386
wget -nc https://dl.winehq.org/wine-builds/winehq.key; sudo apt-key add winehq.key
# 下面的eoan请修改成和系统对应的代号 如 ubuntu1804 改成 bionic ubuntu 1604改成 xenial
sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ eoan main'
sudo add-apt-repository ppa:cybermax-dexter/sdl2-backport
# 最后开始安装wine5.0
sudo apt update && sudo apt install --install-recommends winehq-stable
如果网络够好的话很快就能装上,网络不好的话…一天都装不上。安装完毕之后使用wine –version,显示5.0即可。我在另一台服务器上遇到了缺少libfdk-aac库的情况,前往https://ubuntu.pkgs.org/18.04/ubuntu-multiverse-i386/libfdk-aac1_0.1.5-1_i386.deb.html下载amd64和i386版本的deb包手动使用dpkg -i 安装之后即可
安装C++运行库
这一步需要有图形界面的操作,你可以在linux服务器上安装图形界面并使用vnc进行下面的操作,也可以使用xshell+xmanager的方式来安装,推荐使用后者(不需要额外安装图形界面)。 在服务器上执行(vnc图形界面中执行或者xshell中执行)
wget https://download.visualstudio.microsoft.com/download/pr/8c211be1-c537-4402-82e7-a8fb5ee05e8a/B6C82087A2C443DB859FDBEAAE7F46244D06C3F2A7F71C35E50358066253DE52/VC_redist.x64.exe
wine VC_redist.x64.exe
开始运行bdx
将之前的bdx压缩包上传到服务器上并解压后,进到bdx文件夹中,使用wine bedrock_server.exe
即可开启bdx服务端了。 如果觉得大量的DEBUG信息太碍眼的话可以使用export WINEDEBUG=-all
隐藏DEBUG信息输出。