前提

本教程基于阿里云服务器搭建饥荒联机版服务器,使用的操作系统是64位的Ubuntu 16.04 LTS,饥荒联机版使用的平台是Steam平台,实现了饥荒服务器地上地下部分的搭建和mod的引入。

ps:关于作者为啥写这篇文章,因为网上的教程都有些过时了,我想提供一个最新的教程来给一些有需要的动手党。有时候看到一些网上的教程写得五花八门的,总是会萌生自己写一篇能够有代表性的教程的想法,也担心自己也写得渣渣 [可怜],但我会尽量写好来的。

基本步骤

  1. 安装依赖
  2. 安装SteamCMD、Steam客户端
  3. 安装饥荒联机版服务器软件
  4. 试运行服务器
  5. 配置存档与mod
  6. 运行服务器
  7. 测试服务器

步骤详细描述

1. 安装依赖

  • Ubuntu 32位环境
sudo apt-get update
sudo apt-get install libstdc++6:i386 libgcc1:i386 libcurl4-gnutls-dev:i386

  • Ubuntu 64位环境
sudo apt-get update
sudo apt-get install libstdc++6 libgcc1 libcurl4-gnutls-dev

如果是Centos或其他基于RHEL的Linux系统,安装依赖使用yum,方法类似。以下是参考:

  • Centos 32位环境(参考,因为没试过)
yum -y install glibc.i686 libstdc++.i686 libcurl4-gnutls-dev.i686 libcurl.i686

  • Centos 64位环境(参考,因为没试过)
yum -y install glibc libstdc++ libcurl4-gnutls-dev libcurl

2. 安装SteamCMD、Steam客户端

  • 在家目录下新建steamcmd目录
mkdir ~/steamcmd

  • 下载SteamCMD安装文件
wget -P ~/steamcmd https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz

  • 解压压缩包
tar -xvzf ~/steamcmd/steamcmd_linux.tar.gz

  • 运行steamcmd.sh脚本安装Steam客户端并进入SteamCMD模式
cd ~/steamcmd
./steamcmd.sh

耐心等待Steam客户端安装,Steam客户端安装完成后会出现“:steam>”代表进入了SteamCMD模式。

如果出现问题多半是网络不好,重新运行脚本再试试。

3. 安装饥荒联机版服务器软件

  • 使用匿名账户登录Steam
login anonymous

  • 指定饥荒联机版服务器软件的安装目录到家目录下
force_install_dir ~/myDSTserver

  • 安装饥荒联机版服务器软件
app_update 343050 validate

安装过程请耐心等待。

  • 安装完成后,使用以下命令退出SteamCMD模式
quit

4. 试运行服务器

试运行服务器就是不带参数运行服务器软件,使其生成默认的配置文件,不用自己创建。

运行以下命令:

cd ~/myDSTserver/bin
./dontstarve_dedicated_server_nullrenderer

当看到如下提示时,按下Ctrl+C中断进程。

[200] Account Failed (6): "E_INVALID_TOKEN"
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!! Your Server Will Not Start !!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

当在家目录使用ls -al命令查看时,会发现存在.klei目录,其含有默认的配置文件,后续步骤再加以完善。

5. 配置存档与mod

  • 在Steam上购买饥荒联机版

Steam上商店搜索Don`t Starve Together,付款后下载。

  • 订阅mod

下载后在个人所有库中找到Don`t Starve Together点击打开游戏详情界面。

点击页面中的Workshop到创意工坊页面,如下图所示:

搜索想要的mod,譬如“Global Position”,点击Subscribe订阅。

点击Subscribe订阅mod后,Steam会下载mod到本地。

到本地mod安装目录中找到mod对应的id。譬如我订阅并下载了“Global Position”mod后,本地mod安装目录会出现“workshop-378160973”文件夹,此文件夹对应于“Global Position”mod,“378160973”为“Global Position”mod的id。

ps:Windows下,本地mod安装目录为:你的Steam安装目录steamappscommonDon't Starve Togethermods)。

订阅你想要的mod,记住它们的id,接下来的配置有需要。

  • 创建本地存档,在本地存档中启动mod

Steam上打开饥荒联机版游戏,登录账户后点击本地游戏,创建一个本地存档,启动你想要加载的服务器mod,开始游戏,直到加载出角色选择界面,可以继续选择一个角色进入游戏世界界面后退出也可以直接退出。

  • 复制本地存档

找到本地存档文件夹,复制一份到桌面用于后续操作。

ps:Windows下,本地存档文件一般在文档目录下Klei文件夹里,存档名为Cluster_X,X是存档编号。

我创建的本地存档对应的文件夹为Cluster_1,如下图所示:

  • 从Klei官方添加服务器并获取服务器票据token

这一步获取用于修改上述文件的服务器票据token。

步骤如下:

1)登录https://accounts.klei.com/login,使用Steam账户登录后,可以见类似下图:

2)点击“游戏”,见类似下图:

3)继续点击“饥荒联机版的游戏服务器”,见类似下图:

4)点击“添加新服务器”,名字自定义。添加完成后,就会在上方的服务器列表中看到注册的服务器(譬如我注册了服务器“myDSTserver”),其含有一串token(譬如我用红色涂鸦遮住的部分),记住这串token,用于下面的操作。

  • 修改复制的本地存档

在复制的本地存档文件夹中创建“cluster_token.txt”文件,将获取的token写入创建的“cluster_token.txt”文件。

  • 上传本地存档到服务器

将复制的本地存档文件夹完整上传到服务器的~/.klei/DoNotStarveTogether目录下。上传完成的效果如下图所示:

  • 修改饥荒联机版服务器软件的dedicated_server_mods_setup.lua

修改服务器的~/myDSTserver/mods目录下的dedicated_server_mods_setup.lua文件,添加已订阅并且将在服务器存档中启动的mod的id。添加效果如下:

红色框内的内容即为添加需要加载的服务器mod的配置项,其格式为:

ServerModSetup("mod_id") --mod_id是需要加载的服务器mod的id,即服务器存档将启动的mod的id

有多少需要加载的服务器mod,就有多少配置项。

ps:饥荒联机版服务器需要先下载服务器mod,然后才能在服务器存档中启动服务器mod。

至此,配置存档与mod完成。

6. 运行服务器

在真正运行服务器之前,需要先写一个服务器启动脚本。

脚本命名为startup.sh,放置于家目录下。

脚本代码如下:

#!/bin/bashsteamcmd_dir="$HOME/steamcmd"
install_dir="$HOME/myDSTserver"
cluster_name="Cluster_1"
dontstarve_dir="$HOME/.klei/DoNotStarveTogether"function fail()
{echo Error: "$@" >&2exit 1
}function check_for_file()
{if [ ! -e "$1" ]; thenfail "Missing file: $1"fi
}cd "$steamcmd_dir" || fail "Missing $steamcmd_dir directory!"check_for_file "steamcmd.sh"
check_for_file "$dontstarve_dir/$cluster_name/cluster.ini"
check_for_file "$dontstarve_dir/$cluster_name/cluster_token.txt"
check_for_file "$dontstarve_dir/$cluster_name/Master/server.ini"
check_for_file "$dontstarve_dir/$cluster_name/Caves/server.ini"
check_for_file "$install_dir/bin"cd "$install_dir/bin" || failrun_shared=(./dontstarve_dedicated_server_nullrenderer)
run_shared+=(-console)
run_shared+=(-cluster "$cluster_name")
run_shared+=(-monitor_parent_process $$)
run_shared+=(-shard)"${run_shared[@]}" Caves | sed 's/^/Caves: /' &
"${run_shared[@]}" Master | sed 's/^/Master: /'

赋予脚本文件以执行权限:

chmod u+x ~/startup.sh 

打开一个虚拟窗口:

screen -S myDSTserver

运行脚本:

./startup.sh

观察情况,若未发生错误,按下Ctrl+A+D最小化虚拟窗口,后台运行服务器。

至此,服务器就搭建完成了,下面进行服务器的测试。

7. 测试服务器

Steam上打开饥荒联机版,点击“浏览游戏”,查询搭建的服务器名字(服务器存档的名字)可以找到搭建的服务器。

ps:当饥荒联机版有更新时,饥荒联机版服务器软件也需要更新,不然可能会出现查询不到搭建的服务器的情况,如何更新饥荒联机版服务器软件参考上面的基本步骤的第三点。

至此,本教程结束,后续可能有相关补充。

linux mc服务器 mod_使用阿里云服务器搭建饥荒联机版服务器(最新有效2020.2.9更新)...相关推荐

  1. Ubuntu云服务器搭建饥荒联机版服务器教程

    Ubuntu服务器搭建饥荒联机版服务器教程 为方便各位小伙伴开荒,弄了一个dst-admin的开源项目,方便小伙伴搭建服务器. 本教程主要介绍的是如何安装dst-admin饥荒管理平台,使用他来快速的 ...

  2. 饥荒腾讯云服务器带宽要求,用腾讯云轻量服务器搭建饥荒联机版专用服务器

    前言 放寒假了,于是又把饥荒捡起来快乐的玩耍. 玩过饥荒联机版的小伙伴应该都遇到过这种情况:房间中的某人延迟飘红,严重的时候直接掉线. 此外,如果房主把游戏关了,那么房间内的其他人也会掉线(因为房主是 ...

  3. 饥荒联机版服务器搭建_饥荒联机独立服务器搭建教程(一):Windows篇

    2015年的圣诞,怂恿了一大波小伙伴入手了 Steam 的 Don't Starve Together.然而截止 2016 年 1 月 9 日,Cave 洞穴服务器依然是 Beta 测试,并且直接用 ...

  4. qq饥荒联机版服务器没有响应,饥荒联机版专用服务器卡顿原因及解决方法汇总...

    饥荒联机版中自己的专用服务器会经常卡顿,那么是什么原因造成的呢?相信很多玩家都不太了解,下面带给大家的是饥荒联机版专用服务器卡顿原因汇总. 饥荒联机版专用服务器卡顿原因汇总 ①猪人兔人鱼人房 卡顿等级 ...

  5. 饥荒交际服务器显示,饥荒联机版服务器挂礼物教程

    在steam中,我们可以利用<饥荒联机版>服务器进行挂礼物,挂礼物方法不是很难,参考下面流程即可. 第一步-下载游戏:下载Don't Starve Together Beta 第二步-订阅 ...

  6. 饥荒联机版服务器搭建教程-WeGame

    Don't Strave Together 服务器搭建教程之WeGame 目录结构 文档\Klei\DoNotStarveTogetherRail\MyDediServerRail MyDediSer ...

  7. 饥荒联机版 服务器未响应,饥荒联机版常见问题汇_饥荒联机版常见问题大全_快吧单机游戏...

    饥荒联机版常见问题大全,饥荒游戏自从开放联机之后,各位玩家也相继遇到了很多各式各样的问题,而今天笔者要给大家介绍的就是饥荒联机版常见问题大全.希望能给大家带来一些帮助. 3.找不到没有房间:右边的页面 ...

  8. 饥荒联机版服务器mod模组在哪个文件夹,饥荒联机版MOD使用图文教程_饥荒联机版MOD怎么用_牛游戏网...

    饥荒联机版相信大家都玩得不亦乐乎,在饥荒中使用MOD也是一大乐趣,不少萌新可能还不知道饥荒联机版怎么使用MOD,饥荒联机版MOD要怎么安装使用呢,下面小编就为大家带来了饥荒联机版MOD使用图文教程,给 ...

  9. 饥荒联机版 服务器未响应,饥荒联机版常见问题及解决方法一览

    <饥荒>联机内测版终于与各位玩家见面了,接下来蟹么么介绍的是联机版中大家经常会遇到的一些问题及解决方法,一起来看看吧. 找不到没有房间:右边的页面翻页过去有个show lan点yes 4. ...

  10. 饥荒联机版连不上服务器_饥荒联机版常见问题汇总_饥荒联机版服务器无响应怎么办_牛游戏网攻略...

    <饥荒>游戏近日腾讯上线了TGP联机版,相信不少玩家都入手了吧.但也有一些玩家遇到了问题,这里小编带来了<饥荒>TGP版常见问题汇总,有遇到问题的不妨来看看,希望能对各位有所帮 ...

最新文章

  1. Kendo UI Web教程分享
  2. python项目2019_2019 年 11 月精选 GitHub 上 几个牛逼 Python 的项目
  3. ES profile 性能优化用——返回各个shard的耗时
  4. Vue 脚手架||Vue 脚手架的基本用法
  5. LVM逻辑卷容量的增减
  6. 聚焦新基建,腾讯云十余项自研技术应用集中亮相
  7. 华为2014校园招聘的机试题目
  8. leecode 题解 || Merge k Sorted Lists 问题
  9. 查看远程Redis服务器的版本
  10. 大数据之-Hadoop之HDFS_HDFS的内容介绍---大数据之hadoop工作笔记0047
  11. python wechatpay微信支付回调_python服务器 实现app微信支付:支付异步通知
  12. Adaptive Feature Recombination and Recalibration for Semantic Segmentation: Application to Brain Tum
  13. Ajax动态滚动加载数据
  14. 算法:(BFS)迷宫寻路算法
  15. php接入支付宝app支付接口,php支付宝App支付生成预支付订单(统一下单接口)
  16. 洛谷P3403 跳楼机(最短路)
  17. python操作word文档,表格中插入文字及照片
  18. 我校全力开展抗洪救灾工作
  19. 那些踩过的declared implicitly的坑
  20. 一种以STC89C51为核心控制器的积水清除与利用装置解决方案

热门文章

  1. web 3d 资源库大全
  2. 另类多线程生产者与消费者模式
  3. 箭头函数和Buffer对象
  4. 最大对称字符串的长度
  5. 七言 感大兴安岭大火
  6. PLSQL复合变量与参照变量
  7. 车间调度建模系列2|复杂车间调度问题描述
  8. 【pymongodb】去除重复记录
  9. 从零基础入门Tensorflow2.0 ----六、27 卷积神经网络
  10. icesat2:strong beam and weak beam