WSS-5K项目是由chenmoufan发起的将我的世界WSS服务器五千格内区域下载为存档的项目。该仓库包含了运行WSS-5K项目的必要资源。当然,你也可以使用仓库内的资源来下载其他服务器的存档(先让你的服务器管理员知道这件事!)
WSS-5K项目基于我在25年初制作的另一个基于baritone机器人的项目,但是那个项目只能点亮xaero地图,不能将服务器区块下载为存档。本项目在其基础上增加了一个代理(准确来说是两个,因为我把用于版本转换的viafabric独立出来了)用于截留服务器地图数据。
接下来你需要配置这几个基于java的程序:Minecraft游戏本体以及它的模组,viaproxy代理,world-downloader代理。你需要保证你的电脑上有至少4G空余存储空间,6G可用运行内存;并且25568端口,25565端口和11451端口应保持空闲。 本项目适用于版本为1.8~1.21的我的世界服务器(这取决于viafabric代理支持的版本),且没有特别严格的反作弊,无验证码登录插件。 该教程默认你的配置环境是ubuntu22以上版本,且安装了Java17和Java21。
要获取viafabric,你可以访问 https://github.com/ViaVersion/ViaProxy/releases 并下载形如ViaProxy-3.4.4.jar的jar文件并把它保存到一个好找到的独立文件夹中。将它命名为ViaProxy.jar。
为了今后能快速启动这个代理,你可以在viaproxy所在文件夹打开终端,并使用如下创建一个start.sh文件
nano start.sh
如果你的Ubuntu没有nano编辑器,请使用sudo apt install nano来下载它。
如果你的Ubuntu有nano且已经打开了,请其中编辑如下内容
java -jar ViaProxy.jar cli
该命令将使你使用命令行模式启动viaproxy(你也可以尝试去掉cli来使用图形化运行viaproxy)
按下ctrl+x键退出,此时nano询问你是否写入缓冲区(Save modified buffer?),按y,接着询问是否保存到一个路径,按回车,之后使用nano编辑文件都是如此。
退出后使用bash start.sh运行。
如果一切正常,那么你的终端此时应出现以下内容
[16:58:44] [main/INFO] (ViaProxy) Initializing ViaProxy CLI v3.4.0 (git-ViaProxy-3.4.0:1a6580b) (Injected using Launcher Agent)...
[16:58:44] [main/INFO] (ViaProxy) Using java version: OpenJDK 64-Bit Server VM 21.0.8 (Ubuntu) on Linux
......
[16:58:59] [main/INFO] (ViaProxy) Binding proxy server to xxx.xxx.xxx.xxx:25568
[16:59:03] [Via Async Scheduler 0/INFO] (ViaVersion) Finished mapping loading, shutting down loader executor.
如果出现[16:59:04] [ForkJoinPool.commonPool-worker-1/WARN] (ViaProxy) You are running an outdated version of ViaProxy!的提示可以不必理会,这只是新版本检测。
接下来输入exit退出viaproxy,在第一次运行后,它应该创建了一些文件。
输入ls命令查看当前文件夹内的文件,如果viaproxy真的运行成功了,应该会有以下文件
ViaLoader ViaProxy.jar jars logs plugins saves.json start.sh viaproxy.yml
输入nano viaproxy.yml编辑配置。
通常来说,我们只需要修改其中的一小部分就好了(你可以根据自己需要自行修改部分配置)。
bind-address: 0.0.0.0:25568 #将其中的0.0.0.0替换为你想运行minecraft的设备ip地址,如果viafabric与minecraft在同一设备上运行,请改为127.0.0.1
target-address: 127.0.0.1:25565 #将127.0.0.1:25565替换为你想要连接的服务器地址
target-version: Auto Detect (1.7+ servers) #将Auto Detect (1.7+ servers)替换为你的服务器版本
再次运行start.sh,在确保没有影响运行的报错后viaproxy就算配置完成了。
这里选用hmcl启动器,因为我们需要用到hmcl启动器的高级配置选项,请确保你的设备安装了javafx和java17。你可以通过 https://hmcl.huangyuhui.net/download/ 下载,对于不能忍受城通网盘的人,你也可以直接下载仓库的HMCL-3.6.11.jar(不是最新的)保存到独立的文件夹中并将其重命名为hmcl.jar,这一步主要为了方便后续操作。接下来在你保存hmcl.jar的文件夹中打开终端,输入java -jar hmcl.jar启动启动器。如果一切正常,那么此时应弹出hmcl启动器,在下载游戏之前,需要先点击“通用”栏的“设置”-“全局游戏设置”,将版本隔离修改为“个版本独立”。接下来点击“下载”-“游戏”并下载1.20.1版本并选择额外下载fabric模组加载器和fabric api。
对于使用aarch64架构处理器的设备(如树莓派,香橙派)你需要补全游戏的依赖文件并使用软渲染,你需要在hmcl.jar所在文件夹中打开.minecraft/version/1.20.1文件夹,新建一个名为natives-linux-aarch64的文件夹,并将仓库中的depend.zip下载并解压,你应该得到五个以.so文件结尾的linux动态依赖库文件。接下来启用软渲染。打开启动器“版本管理”页面最底下的“高级设置”,点击“编辑高级设置”,在“调试选项”栏下将“渲染器”从“OpenGL(默认)”修改为“软渲染器”
在项目中我不会给到每一个模组的具体文件,因为许多模组的开源许可证是有传染性的,如果我把该项目采用到的所有模组上传到仓库,那么这个仓库至少要有3个不同的许可证,所以我会在mods.txt中列出所需的模组以及他们的下载链接。
第一次启动意味着可能会面临报错,不过此时应该发挥你的主观能动性,自己去搜索解决方法。在第一次启动时,由于我们不确定模组等是否安装到位,所以此处建议从启动器启动
java -jar hmcl.jar
待启动器启动后,点击启动游戏,如果启动成功了,那么恭喜你;不过失败是常有的事,你应该打开bing开始通过java给你的报错来判断问题所在。如果你发现这个问题是由于该文档误导了你,请提交一个issue给我。 现在你的游戏应该启动了,下面我们开始配置模组
在本文中,配置模组通常在由模组菜单中进行配置,只有极少部分模组需要使用指令或模组自带的界面配置。如果你的游戏正确加载了模组,那么在游戏的标题界面(即有Minecraft大字的页面)应该会出现一个写着“模组”二字的按钮,点击它,你就进入了模组列表。在模组列表中,你应该能看到部分模组,不必怀疑是否是模组未正确加载,这是正常现象。
我们使用该模组实现自动重连功能,下文我会介绍为什么不使用wurst自带的自动重连。显然AutoReconnect是支持在重连后自动发送消息的,
未完工。。。。。我的端炸了