本文介绍了如何使用腾讯云Lighthouse服务器搭建一个属于你自己的minecraft服务器。
1.背景概述
在minecraft游戏火爆全球的今天,几乎每个人的旁边都有玩mc的朋友,但是苦于网络等因素的影响,并不能随时随地的进行联机。现在可以利用腾讯云的轻量服务器,搭建一个属于你自己的私人服务器,可以随时随地的召唤你的好友上线,一起游玩。
2.服务器准备
服务器方面,如果平时只有几人游玩,那么1核2g或者是2核2g就足够用了,如果人数较多的话建议再升级配置。
几个腾讯云服务器优惠推荐:
关于地区选择的话建议就是选择距离你最近的就好,如果有特殊需求可以选择其他地区的。
这里作为示范选择的是轻量服务器2核4g Windows2016的配置作为演示
有的人可能好奇为什么选择Windows系统而不选择Linux系统,因为Windows系统在对服务器进行管理的时候是最方便的,特别适合小白用户。如果你对系统有特殊需求的话,可以自行更换。
注意:如果选用Windows系统的话请选择Windows2016及以上的版本!!
3.配置环境
首先
先去微软官网下载Visual Studio 链接放在下面了
支持的最新Visual C++ 可再发行程序包下载 | Microsoft Docs
然后下滑,找到x64,点击后方链接,下载即可。
然后一直点击下一步即可。
4.下载服务端
如果你选择开最新版的服务器可以去Minecraft官网或者是Minecraft Wiki上进行下载
这里以Wiki为例,进入Wiki官网后,点击右侧的版本号
然后稍等片刻进入详细页面后点击服务端选择Windows,点击即可下载
如果你出现无法进入网站或者是无法下载(下载速度过慢)可以考虑去国内的论坛网站上找一些人搬运过来的文件。
Minecraft Wiki地址:中文Minecraft Wiki – 最详细的我的世界百科 (fandom.com)
Minecraft官网:官方网站 | Minecraft
5.运行服务器
打开下载好的压缩包,将其解压出来
解压出来后一共有这么多文件,可更改文件的功能都已经表明出来。
正常情况下,此时你仅需双击bedrock_server.exe文件即可成功开服,它会自动生成服务器地图。
但是正常开服后,此时你还是无法正常的链接到服务器,因为此时没有给服务器所需要的端口放行。
这时候我们打开腾讯云的控制台,找到轻量服务器,点击防火墙
然后点击添加规则
然后按照图上的选择(注意,基岩服一定要选择udp协议,否则玩家则无法进入服务器)
然后点击确定。
控制台设置完毕后还要在服务器上关闭防火墙,部分服务器防火墙是默认关闭的,可以不进行设置。
怎么关闭防火墙?
在电脑桌面右下角右键它,然后选择 打开“网络和Internet设置”
然后你就会进入到这个界面,点击Windows防火墙
如果你的防火墙默认是开启的,那么应该和下图一样,此时你需要点开每一个选项将其关闭
最后使其成为这样就可以了
此时在双击bedrock_server.exe 打开服务器,应该就是这样的
其中图中Version表示的是游戏版本
Level Name表示的是服务器存档名称
Game mode表示的是游戏默认的模式
opening表示的是游戏地图的位置
IPv4 supported表示的是ipv4的端口
如果你的服务器也出现了如上的信息,那么证明你服务器就已经开起来了,第一步已经完成了。
6.修改配置文件
服务器的配置文件是server.properties,如果你没有专业的工具来打开,记事本也是可以的。
打开后你可以看见各种选项,如图
很多小伙伴打开后可能就一脸懵了,不明白这些说的是什么,这里我做了一个翻译的版本,可以自行查看(注意:机翻后人工修改的,可能不太准确)
server-name=Dedicated Server # 用作服务器名称 # 允许值:任何不带分号的字符串。 gamemode=survival # 为新玩家设置游戏模式。 # 允许值:"survival"、"creative"或"adventure" force-gamemode=false # force-gamemode=false(或者在 server.properties 中没有定义 force-gamemode) # 防止服务器向客户端发送其他游戏模式值 # 比创建世界时服务器保存的游戏模式值 # 即使这些值是在世界创建后在 server.properties 中设置的。 # # force-gamemode=true 强制服务器向客户端发送游戏模式值 # 除了创建世界时服务器保存的游戏模式值 # 如果这些值是在世界创建后在 server.properties 中设置的。 difficulty=easy # 设置世界的难度。 # 允许值:"peaceful(和平)"、"easy(简单)"、"normal(普通)"或"hard(困难)" allow-cheats=false # 如果为真,则可以使用类似命令的作弊。 # 允许值:"true"或"false" max-players=10 # 服务器上可以玩的最大玩家数。 # 允许值:任何正整数 online-mode=true # 如果为 true,则所有连接的玩家都必须通过 Xbox Live 的身份验证。 # 无论此设置如何,连接到远程(非 LAN)服务器的客户端始终需要 Xbox Live 身份验证。 # 如果服务器接受来自 Internet 的连接,那么强烈建议启用在线模式。 # 允许值:"true"或"false" allow-list=false # 如果为 true,则所有连接的玩家必须列在单独的 allowlist.json 文件中。 # 允许值:"true"或"false" server-port=19132 # 服务器应该监听哪个 IPv4 端口。 # 允许值:[1, 65535] 范围内的整数 server-portv6=19133 # 服务器应该监听哪个 IPv6 端口。 # 允许值:[1, 65535] 范围内的整数 view-distance=32 # 以块数表示的最大允许查看距离。 # 允许值:等于或大于 5 的正整数。 tick-distance=4 # 世界将与任何玩家相距这么多块。 # 允许值:[4, 12] 范围内的整数 player-idle-timeout=30 # 在玩家闲置了这么多分钟后,他们将被踢出。如果设置为 0,则玩家可以无限期地闲置。 # 允许值:任何非负整数。 max-threads=8 # 服务器将尝试使用的最大线程数。如果设置为 0 或删除,那么它将尽可能多地使用。 # 允许值:任何正整数。 level-name=Bedrock level #注:这里是存档的名称,可在服务器根目录的worlds文件夹查看 # 允许值:任何不带分号的字符串或文件名非法符号:/\n\r\t\f`?*\\<>|\": level-seed= #注:这里是地图种子,如果你输入了,那么即使地图删除再次生成的地图依旧是这个种子,如果不输入,那么每次生成的地图都是随机的。 # 用于随机化世界 # 允许值:任何字符串 default-player-permission-level=member # 新玩家首次加入的权限级别。 # 允许值:"visitor"、"member"、"operator" texturepack-required=false # 强制客户端在当前世界中使用材质包 # 允许值:"true"或"false" content-log-file-enabled=false # 允许将内容错误记录到文件中 # 允许值:"true"或"false" compression-threshold=1 # 确定要压缩的原始网络负载的最小大小 # 允许值:0-65535 server-authoritative-movement=server-auth # 允许的值:"client-auth"、"server-auth"、"server-auth-with-rewind" # 启用服务器权威移动。如果是"server-auth",服务器将重播本地用户输入 # 服务器并在客户端的位置与服务器的位置不匹配时向下发送更正。 # 如果启用"server-auth-with-rewind"并且服务器发送更正,客户端将被指示 # 将时间倒回到更正时间,应用更正,然后重播此后玩家的所有输入。这导致更平滑和更频繁的校正。 # 只有将正确玩家移动设置为 true 时才会发生更正。 player-movement-score-threshold=20 # 在报告异常行为之前需要的不一致时间间隔的数量。 # 以服务器的能力运动禁用。 player-movement-action-direction-threshold=0.85 # 玩家的攻击方向和视线方向可以不同的数量。 # 允许值:[0, 1] 范围内的任何值,其中 1 表示 # 玩家视野的方向和玩家攻击的方向 # 必须完全匹配,值为0表示两个方向可以 # 相差最多 90 度(包括 90 度)。 player-movement-distance-threshold=0.3 # 在检测到异常行为之前需要超过的服务器和客户端位置之间的差异。 # 被服务器权威运动禁用。 player-movement-duration-threshold-in-ms=500 # 服务器和客户端位置可能不同步的持续时间(由 player-movement-distance-threshold 定义) # 在异常运动得分增加之前。此值以毫秒为单位定义。 # 被服务器权威运动禁用。 correct-player-movement=false # 如果为真,客户端位置将被更正到服务器端如果运动得分超过阈值,则定位。 server-authoritative-block-breaking=false # 如果为真,服务器将与客户端同步计算块挖掘操作,以便它可以验证客户端应该能够在它认为可以时打破块。
各位腐竹可以根据自己的情况进行不同的修改。
6.玩家进入服务器
腐竹开好服务器后,就可以进入服务器了,由于基岩版涉及平台较多,操作方式可能略有不同,请以实际情况为准。
具体进入服务器方法
1.首先点击游戏,进入第二个界面
2.然后点击服务器进入服务器列表
3.下滑点击添加服务器
4.然后输入ip和端口,服务器名称随意 (如果ip绑定了域名,也可以输入域名进入)
5.点击保存,然后点击刚才添加的服务器点击加入服务器即可进入
然后你就可以和小伙伴一起玩耍了
7.可能会遇到的问题
1.腐竹开服时出现缺少xxx.dll
问题原因:此情况是没有安装vc运行库造成的
解决:请看本文档 第三步配置服务器 重新进行配置
2.服务端明明还在显示,但是玩家无法进入服务器
原因:可能是bds服务端出现了假死的情况,你输入任意字符或者是直接按空格看看服务端是否出现提示,
如果没有,那么就是假死了。
解决:直接关闭,重启服务器。
3.玩家进入服务器显示无法连接过期的服务器
原因:你的游戏版本高于服务器的版本
解决:自行降低版本或者是联系腐竹更新服务器
4.玩家进入服务器显示无法连接过期的客户端
原因:你的游戏版本低于服务器的版本
解决:自行更新版本或者是联系腐竹降低服务器版本(后者估计是不可能的啦)
5.暂无
8.关于腐竹如何更新服务器
注意,此操作有风险,建议操作前提前备份服务器文件
首先,关闭服务器(建议在控制台输入指令stop关闭)
然后从Wiki或者是官网上下载最新的服务端,然后打开压缩包,将以下文件直接解压到服务器的根目录即可
9.导出服务器存档
打开服务器的根目录,可以看到一个名为worlds的文件夹
打开后可以看到一个名为Bedrock level(如果没有修改,那么默认都是这个名字)文件夹
然后再双击打开Bedrock level文件夹,选中里面的全部内容然后压缩
此时你的服务器存档已经压缩好了
接下来你可以选择保存到其他地方或者是导入到本地设备上
10.如何导入到本地设备?
注意:不同设备可能有不同的操作方法,请以实际为准
方法一:
首先选中服务器存档,将其名字由level.zip改为level.mcworld
正常情况下图标会发生更改,如图
然后双击打开,会自动启动游戏自动导入
等待显示导入完成,我们点击游戏,存档下面就会多出来一个Bedrock level的世界,默认图片是灰色的
如果已经有了,那么恭喜你,世界已经成功导入了
如果提升世界导入失败(如图)
那么可能是压缩包没有正常压缩或者是文件损坏了。
请再次尝试第9步导出服务器存档。
方法二:
如果你是1.18.0.21版本之前的玩家
请将存档文件解压到 /games/com.mojang/minecraftWorlds/这里直接新建一个 文件夹
然后重启游戏,即可看见存档,具体情况和上图一样
如果你是1.18.0.21及以后的版本
请将存档文件解压到 /Android/data/com.mojang.minecraftpe/files/games/com.mojang/这里新建一个文件夹 文件夹
然后重启游戏,即可看见存档,具体情况和上图一样
可能遇到的问题:
1.我的世界打不开/Android/data文件夹或者是/Android/data文件夹下面没有东西
原因:Android 11 中增强了对 Android/data 目录的管控,不同的 app 间不能互相访问 Android/data 目录,正常情况下用户也不能进行访问。
解决:下载MT管理器,点击Android/data文件夹,会自动跳出授权,按照步骤进行,即可访问到Android/data文件夹了。
11.如何将本地存档导入到服务器
首先压缩本地的游戏存档,具体压缩内容和第九步一样,然后将压缩包传输到服务器上
如果服务器还没有开过
自建一个worlds文件夹,再在里面新建一个Bedrock level文件夹,然后将传输到服务器的压缩包解压到Bedrock level文件夹中即可。
如果已经开过
只需要将Bedrock level文件夹下面的文件全部删除,然后将传输过来的压缩包解压到Bedrock level下即可
注意:此步骤均需关闭/重启服务器
总结
到此为止,服务器就算是成功开服了,但这仅仅是入门,还有许多东西没有写,如果以后有机会,我会继续更新的,也希望各位腐竹和即将成为腐竹的人多多支持,也感谢大家能够阅读此文章,感谢大家。
对于开mc服来说,我个人还是比较喜欢选用轻量的服务器采用Windows系统的,Windows系统操作相对来说还是比较容易入门,比较方便的。在带宽方面,轻量带宽虽小,但也是足够了,如果你有多余的钱想要提升带宽,倒不如提升一下服务器配置。