【Minecraft】阿里云上搭建Minecraft我的世界Spigot服务器

玩过Minecraft的人都知道,Minecraft(我的世界)是一款开放式的沙盒类的生存、创作游戏。在世界中,可以开拓探索,可以创意搭建,可以模拟养成,但莫大的世界中孤零零的一人打造一个人世界略显孤独(难道玩游戏的宅男都是单身狗?)而看着那些大触们的世界,只能默默地感叹自己完了一个假Minecraft,仰望着别人的世界。

http://www.yxdown.com/news/201509/219520_2.html

在每一个人成长为大触的时候,甚至在成为大触的路上之时,大家都希望能邀请朋友来自己世界里探险,成长。在本地的局域网内自然不用说可以让好友加入,但随时随地的分享却需要服务器才能实现,正因如此官方的Minecraft提供了Realm服务器的服务,通过账号就可以建立官方的服务器并于好友一起进行游戏,官方的服务器当然是最简单的方式,但是一个月需要50元的服务器费用,如果仅仅是需要在正常的生存模式以及创作模式下体验游戏乐趣的,官方的Realm当然是最佳的选择。但Minecraft服务器的乐趣并不仅仅如此,在原有的官方服务器的基础上,大触们可以用第三方Mod服务器实现服务器中使用插件,服务器Mod各种各样厉害的功能。

Mod服务器选择

现在主流的支持Mod的服务器有Bukkit(https://bukkit.org/),Spigot,MCPC。对于Bukkit,服务器Mod就是CraftBukkit.jar; 而 Spigot 是基于Bukkit 优化的服务器Mod在支持Bukkit所有API情况下优化了服务器的效率,MCPC也是同理的服务器Mod。 至于选择什么样的服务器开服取决于你想将来怎么为你的服务器加Mod,先做好Mod需要的准备然后再决定服务器的种类。因为我需要用到ResberryJuicy API 以及 Scriptcraft API的功能所以我选择了 Spigot,因此后续的教程我将讲如何在阿里云上搭建Spigot服务器,也就是我们所说的水龙头服务器。

Minecraft 服务器可以实现与朋友间共享世界,一起搭建的乐趣, 使用Spigot服务器可以添加插件,Mod的功能,也可以方便于服务器管理与维护,可以让服务器更有乐趣。

设置阿里云服务器

登录阿里云网站,注册账号,在产品 -> 云计算基础服务 -> 弹性计算 -> 与服务器ECS中选择相应的配置服务器。个人推荐选择基础型 1核 2GB内存的。 选好支付后,跟着(可选择安装ubuntu 64位的系统)步骤设置完成了,你就会在个人账户的管理控制台中看到你运行的服务器实例了。

记住服务器实例的公有IP 这将是邀请你朋友连接你的服务器的地址!(当然这个地址可以随时查到的)登录远程连接的控制界面(跟着阿里云的提示设置),这样你就远程进入到了阿里云上的服务器实例了!

设置Spigot服务器

首先确定系统已经安装Java环境, 然后下载Spigot服务器build的工具:

在根目录下建立一个文件夹存放服务器相关文件:

mkdir SpigotMC_Server

然后进入这个文件夹

cd SpigotMC_Server/

下载BuildTools。

wget -O BuildTools.jar https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar.

运行BuildTools。

java -jar BuildTools.jar

如果后面不加 --rev 的参数则,BuildTools会默认建立最新的版本,当前是1.11.2, 如果你想建立特定的版本号的服务器,则需要加 --rev 的参数,如果想要 1.9.2 的版本则需要

java -jar BuildTools.jar --rev 1.9.2

当程序正确的Build 完成后,你能在当前目录下找到 (craftbukkit-1.10.jarandspigot-1.10.jar). Y你能找到 Spigot-API in\Spigot\Spigot-API\target\(spigot-api-1.10-R0.1-SNAPSHOT.jar).

运行服务器

创建一个服务器运行脚本,建立一个start.sh文件

touch start.sh

用vim编辑文本

vim start.sh

将下列代码写入文本

Code (Example):

#!/bin/sh

java -Xmx1G -jar spigot.jar

让start.sh变成可执行文件

chmod +x start.sh

运行脚本

./start.sh

赋予脚本权限

然后,我们需要修改一下EULA文件来让start.sh脚本顺利运行,输入:

vim eula.txt

进入编辑器,将 “eula=false” 改为 “eula=true”。

对服务器属性进行配置

#Minecraft server properties

gamemode=0 # 游戏模式,0=生存,1=创造,2=极限

difficulty=1 # 游戏难度,默认为1,0为和平,不同难度会影响一些怪物的行为

pvp=true # 允许pvp,如果不想玩家互掐的话可以关了

max-players=5 # 最大玩家数量,限制同时可以在线的玩家数目,默认20

network-compression-threshold=128 # 封包压缩阈值,超过这个大小的封包进行压缩,适当改小可以减少网络延迟,默认256

server-port=25590 # 服务端监听哪个端口,默认25565,防止其他人陌生人扫描或者尝试登录可以改成其他值

server-ip=  # java监听IP,默认全部IP,多网卡服务器可以指定一个

view-distance=10 # 游戏中视野距离,影响玩家在游戏中的可见距离,越大越占用服务器资源,在spigot.yml中的配置会覆盖这里

online-mode=true  # online模式,防止盗版用户连接服务器

level-seed=  # 地图种子,留空会随机生成一个,如果有好图可以指定

motd=A Minecraft Serve r# 服务器motd

登陆服务器开始游戏

开始游戏吧!

推荐阅读更多精彩内容

  • 继续接着上一篇教程Minecraft个人私服搭建指南(2):服务器环境配置,目前我们已经有了一个具有环境基础的云服...
    喵哼魚阅读 19,630评论 33 20
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 105,273评论 12 126
  • 通过Python编程在《我的世界》中用彩色羊毛绘制世界名画《蒙娜丽莎》。 前置条件 一台安装了Java8(JRE)...
    FunFeast阅读 2,225评论 1 3
  • 此刻眼眶湿润,原谅我一直是一个特别感性的人。 一不小心点开了个视频,陈小春在唱《相依为命》,精神气十足的鸡冠头,妆...
    上帝的小虫子阅读 286评论 0 1
  • 上一章 下一章 不肖看着范少帛的眼睛,噗嗤一笑道:“原来范先生好菜好酒的招待,不过只是想要那几块印着‘织造局’的金...
    翔桑阅读 71评论 9 7