前几天我一朋友在steam上邀请我一起玩饥荒,可是联机的时候,总是一卡一卡的,好不容易玩的正尽兴的时候,我朋友突然有事就离开了房间,好不容易打的怪,建的家,房主一退就不能再次玩了只能等待他回来。

针对这样个的问题,我决定自己搭建饥荒的专有服务器,解决两个问题,

1、在服务器有个长时间运行的房间,如果房间内没有任何玩家则世界暂停,

2、我的阿里云服务器有1mb的带宽足够我们6个人一起玩了(解决不卡顿)

我的阿里云服务器是Ubuntu 64位的机器

首先使用ssh 连接服务器:

1、安装依赖关系

64位机器:

sudo apt-get install libstdc ++ 6:i386 libgcc1:i386 libcurl4-gnutls-dev:i386

32位机器:

sudo apt-get install libstdc ++ 6 libgcc1 libcurl4-gnutls-dev

2、安装steamcmd

按照以下说明下载并安装steamcmd:https : //developer.valvesoftware.com/wiki/SteamCMD#Linux

//本指南将假定您已将steamcmd安装到〜/ steamcmd。如果您愿意,可以跳过关于创建新用户的部分。

缩短版本的必要命令:

mkdir〜/ steamcmd

cd〜/ steamcmd

wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz

tar -xvzf steamcmd_linux.tar.gz

3、创建专有服务器文件夹(目录)

您需要创建这些文件夹:

~/.klei/DoNotStarveTogether/MyDediServer/Master

~/.klei/DoNotStarveTogether/MyDediServer/Caves

您可以使用以下命令:

mkdir -p ~/.klei/DoNotStarveTogether/MyDediServer/Master

mkdir -p ~/.klei/DoNotStarveTogether/MyDediServer/Caves

4、创建cluster_token.txt

从steam上运行饥荒 点击play

点击Acct Info按钮

点击”Generate Server Token“ 按钮并复制token粘贴到一下文件中

~/.klei/DoNotStarveTogether/MyDediServer/cluster_token.txt

您可以通过运行以下命令快速执行此操作,将YourServerTokenHere替换为服务器令牌(将引号保留在令牌周围)。

echo 'YourServerTokenHere' > ~/.klei/DoNotStarveTogether/MyDediServer/cluster_token.txt

5、创建cluster.ini 文件

拷贝以下文本

~/.klei/DoNotStarveTogether/MyDediServer/cluster.ini

[GAMEPLAY]

game_mode = survival

max_players = 6

pvp = false

pause_when_empty = true

[NETWORK]

cluster_description = This server is super duper!

cluster_name = Super Server

cluster_intention = cooperative

cluster_password =

[MISC]

console_enabled = true

[SHARD]

shard_enabled = true

bind_ip = 127.0.0.1

master_ip = 127.0.0.1

master_port = 10889

cluster_key = supersecretkey

你也可以使用这个自动执行的命令

base64 -di > ~/.klei/DoNotStarveTogether/MyDediServer/cluster.ini <<< 'W0dBTUVQTEFZXQpnYW1lX21vZGUgPSBzdXJ2aXZhbAptYXhfcGxheWVycyA9IDYKcHZwID0gZmFsc2UKcGF1c2Vfd2hlbl9lbXB0eSA9IHRydWUKCgpbTkVUV09SS10KY2x1c3Rlcl9kZXNjcmlwdGlvbiA9IFRoaXMgc2VydmVyIGlzIHN1cGVyIGR1cGVyIQpjbHVzdGVyX25hbWUgPSBTdXBlciBTZXJ2ZXIKY2x1c3Rlcl9pbnRlbnRpb24gPSBjb29wZXJhdGl2ZQpjbHVzdGVyX3Bhc3N3b3JkID0gCgoKW01JU0NdCmNvbnNvbGVfZW5hYmxlZCA9IHRydWUKCgpbU0hBUkRdCnNoYXJkX2VuYWJsZWQgPSB0cnVlCmJpbmRfaXAgPSAxMjcuMC4wLjEKbWFzdGVyX2lwID0gMTI3LjAuMC4xCm1hc3Rlcl9wb3J0ID0gMTA4ODkKY2x1c3Rlcl9rZXkgPSBzdXBlcnNlY3JldGtleQo='

6、编辑你的cluster.ini文件

使用文本编辑器中打开~/.klei/DoNotStarveTogether/MyDediServer/cluster.ini,并更改所需的所有内容。你可以将cluster_name从“Super Server”更改为别的内容。这是在服务器列表中显示的名称。

7、创建你主机的server.ini

拷贝一下文本到文件

~/.klei/DoNotStarveTogether/MyDediServer/Master/server.ini

[NETWORK]

server_port = 11000

[SHARD]

is_master = true

[STEAM]

master_server_port = 27018

authentication_port = 8768

或使用一下快捷命令

base64 -di > ~/.klei/DoNotStarveTogether/MyDediServer/Master/server.ini <<< 'W05FVFdPUktdCnNlcnZlcl9wb3J0ID0gMTEwMDAKCgpbU0hBUkRdCmlzX21hc3RlciA9IHRydWUKCgpbU1RFQU1dCm1hc3Rlcl9zZXJ2ZXJfcG9ydCA9IDI3MDE4CmF1dGhlbnRpY2F0aW9uX3BvcnQgPSA4NzY4Cg=='

8、建Caves server.ini文件

复制以下文本到文件

~/.klei/DoNotStarveTogether/MyDediServer/Caves/server.ini

[NETWORK]

server_port = 11001

[SHARD]

is_master = false

name = Caves

[STEAM]

master_server_port = 27019

authentication_port = 8769

或使用以下快捷命令:

base64 -di > ~/.klei/DoNotStarveTogether/MyDediServer/Caves/server.ini <<< 'W05FVFdPUktdCnNlcnZlcl9wb3J0ID0gMTEwMDEKCgpbU0hBUkRdCmlzX21hc3RlciA9IGZhbHNlCm5hbWUgPSBDYXZlcwoKCltTVEVBTV0KbWFzdGVyX3NlcnZlcl9wb3J0ID0gMjcwMTkKYXV0aGVudGljYXRpb25fcG9ydCA9IDg3NjkK'

9、创建 Caves worldgenoverride.lua 文件

复制以下文本到文件中

~/.klei/DoNotStarveTogether/MyDediServer/Caves/worldgenoverride.lua

return {

override_enabled = true,

preset = "DST_CAVE",

}

也可以使用这里的快捷命令

base64 -di > ~/.klei/DoNotStarveTogether/MyDediServer/Caves/worldgenoverride.lua <<< 'cmV0dXJuIHsKICAgIG92ZXJyaWRlX2VuYWJsZWQgPSB0cnVlLAogICAgcHJlc2V0ID0gIkRTVF9DQVZFIiwKfQo='

10、创建将运行服务的脚本

复制以下文本到文件

~/run_dedicated_servers.sh

头部一定加上”#!/bin/bash” 或者直接运行下面的快捷命令

#!/bin/bash

steamcmd_dir="$HOME/steamcmd"

install_dir="$HOME/dontstarvetogether_dedicated_server"

cluster_name="MyDediServer"

dontstarve_dir="$HOME/.klei/DoNotStarveTogether"

function fail()

{

echo Error: "$@" >&2

exit 1

}

function check_for_file()

{

if [ ! -e "$1" ]; then

fail "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"

./steamcmd.sh +force_install_dir "$install_dir" +login anonymous +app_update 343050 validate +quit

check_for_file "$install_dir/bin"

cd "$install_dir/bin" || fail

run_shared=(./dontstarve_dedicated_server_nullrenderer)

run_shared+=(-console)

run_shared+=(-cluster "$cluster_name")

run_shared+=(-monitor_parent_process $$)

"${run_shared[@]}" -shard Caves | sed 's/^/Caves: /' &

"${run_shared[@]}" -shard Master | sed 's/^/Master: /'

也可以使用快捷命令

base64 -di > ~/run_dedicated_servers.sh <<< 'IyEvYmluL2Jhc2gKCnN0ZWFtY21kX2Rpcj0iJEhPTUUvc3RlYW1jbWQiCmluc3RhbGxfZGlyPSIkSE9NRS9kb250c3RhcnZldG9nZXRoZXJfZGVkaWNhdGVkX3NlcnZlciIKY2x1c3Rlcl9uYW1lPSJNeURlZGlTZXJ2ZXIiCmRvbnRzdGFydmVfZGlyPSIkSE9NRS8ua2xlaS9Eb05vdFN0YXJ2ZVRvZ2V0aGVyIgoKZnVuY3Rpb24gZmFpbCgpCnsKICAgICAgICBlY2hvIEVycm9yOiAiJEAiID4mMgogICAgICAgIGV4aXQgMQp9CgpmdW5jdGlvbiBjaGVja19mb3JfZmlsZSgpCnsKICAgIGlmIFsgISAtZSAiJDEiIF07IHRoZW4KICAgICAgICAgICAgZmFpbCAiTWlzc2luZyBmaWxlOiAkMSIKICAgIGZpCn0KCmNkICIkc3RlYW1jbWRfZGlyIiB8fCBmYWlsICJNaXNzaW5nICRzdGVhbWNtZF9kaXIgZGlyZWN0b3J5ISIKCmNoZWNrX2Zvcl9maWxlICJzdGVhbWNtZC5zaCIKY2hlY2tfZm9yX2ZpbGUgIiRkb250c3RhcnZlX2Rpci8kY2x1c3Rlcl9uYW1lL2NsdXN0ZXIuaW5pIgpjaGVja19mb3JfZmlsZSAiJGRvbnRzdGFydmVfZGlyLyRjbHVzdGVyX25hbWUvY2x1c3Rlcl90b2tlbi50eHQiCmNoZWNrX2Zvcl9maWxlICIkZG9udHN0YXJ2ZV9kaXIvJGNsdXN0ZXJfbmFtZS9NYXN0ZXIvc2VydmVyLmluaSIKY2hlY2tfZm9yX2ZpbGUgIiRkb250c3RhcnZlX2Rpci8kY2x1c3Rlcl9uYW1lL0NhdmVzL3NlcnZlci5pbmkiCgouL3N0ZWFtY21kLnNoICtmb3JjZV9pbnN0YWxsX2RpciAiJGluc3RhbGxfZGlyIiArbG9naW4gYW5vbnltb3VzICthcHBfdXBkYXRlIDM0MzA1MCB2YWxpZGF0ZSArcXVpdAoKY2hlY2tfZm9yX2ZpbGUgIiRpbnN0YWxsX2Rpci9iaW4iCgpjZCAiJGluc3RhbGxfZGlyL2JpbiIgfHwgZmFpbCAKCnJ1bl9zaGFyZWQ9KC4vZG9udHN0YXJ2ZV9kZWRpY2F0ZWRfc2VydmVyX251bGxyZW5kZXJlcikKcnVuX3NoYXJlZCs9KC1jb25zb2xlKQpydW5fc2hhcmVkKz0oLWNsdXN0ZXIgIiRjbHVzdGVyX25hbWUiKQpydW5fc2hhcmVkKz0oLW1vbml0b3JfcGFyZW50X3Byb2Nlc3MgJCQpCgoiJHtydW5fc2hhcmVkW0BdfSIgLXNoYXJkIENhdmVzICB8IHNlZCAncy9eL0NhdmVzOiAgLycgJgoiJHtydW5fc2hhcmVkW0BdfSIgLXNoYXJkIE1hc3RlciB8IHNlZCAncy9eL01hc3RlcjogLycKCgo='

11、给脚本一个执行权限

在终端运行

chmod u+x ~/run_dedicated_servers.sh

12、运行专有服务器的启动脚本

在终端运行

~/run_dedicated_servers.sh

运行之后大概十多秒后你就可以在steam中查找你的专有服务器名称,进去如果你设置了密码输入密码,就可以打开你的饥荒世界了。。。。。。

云服务器饥荒_如何用阿里云服务器搭建饥荒专用服务器?相关推荐

  1. 如何查阿里云mysql地址_怎么查看阿里云服务器数据库

    怎么查看阿里云服务器数据库,阿里云安装数据库. 对于大多数小型或初期项目来说,我们可能常用的做法是先将web.数据库全部安装在一起,后期根据需要来看是否将数据库单独迁移分离.传统物理服务器可以这么多, ...

  2. 买个云服务器有啥用_如何用阿里云轻量应用服务器配置一个WordPress网站?

    轻量应用服务器是面向单机应用场景的新一代计算服务,提供精品应用一键部署,支持一站式的域名.网站.安全.运维.应用管理等服务,极大优化搭建简单应用的体验,降低了入门级用户使用云计算产品的门槛. 那么,我 ...

  3. 阿里云 mysql升级_如何升级阿里云MySQL实例的版本?

    从MySQL 5.5升级至MySQL 5.6 RDS控制台提供了MySQL 5.5到MySQL 5.6一键升级的功能,详细步骤请参见升级数据库版本. •从MySQL 5.6高可用版升级至MySQL 5 ...

  4. 将虚拟主机加入到netskills.net域环境_网站建设阿里云虚拟主机、ECS服务器、企业邮箱选择购买指南...

    对于刚接触阿里云的人来说可能看到阿里云的产品介绍页面会比较头晕,各种产品分类,而且同一个产品在不同的分类目录下都能看到,下面简单介绍一下制作网站过程中常用的阿里云的产品. 阿里云在网站建设方面常用的服 ...

  5. 反转!美光、英特尔等多家美企恢复对华为供货;首例云服务器存储侵权案改判,阿里云不担责;英国政府拟严格审查Libra……...

    戳蓝字"CSDN云计算"关注我们哦! 嗨,大家好,重磅君带来的[云重磅]特别栏目,如期而至,每周五第一时间为大家带来重磅新闻.把握技术风向标,了解行业应用与实践,就交给我重磅君吧! ...

  6. 阿里云最新可申请试用云产品汇总(免费领阿里云服务器)

    有不少用户在付费购买阿里云产品之前,都希望先试用下阿里云产品,目前,阿里云官网开启试用中心,只需0元即可试用阿里云ECS云服务器.云数据库.云安全等云产品,完成个人和企业实名认证即可领取.其中用户最为 ...

  7. 阿里云服务器代金券如何领取?阿里云高防GPU云服务器有优惠吗?

    阿里云服务器代金券如何领取?阿里云高防GPU云服务器有优惠吗? 大家好,又来给大家带来服务器最新活动了,今天赵一八笔记分享的是阿里云服务器数据库以及各种云产品的优惠券代金券,同时还打折价秒杀,可以说是 ...

  8. 阿里云白嫖计划:在阿里云搭建自己的云服务器

    阿里云白嫖计划:在阿里云搭建自己的云服务器 最近阿里云推出了学生"在家实践"计划,经过认证的在校生可以免费获得6个月的一台入门云服务器! 总的来说这次阿里云的优惠力度还是挺大的,使 ...

  9. java项目如何部署服务器-----如何传输文件到阿里云服务器(三)

    步骤 1 : ftp做什么用 接下来就要在Linux上安装ftp服务器了. ftp的全称是 File Transfer Protocol : 文件传输协议.  顾名思义,ftp就是用来我们把本地的文件 ...

最新文章

  1. 虚拟机忘记密码解决方法
  2. 有没有python与机械结合的工作-用 Python 自动化办公,我与大神之间的差距一下就...
  3. python 查看已经安装的模块_教你用Python查看模块的帮助文档,方法和帮助信息...
  4. SpringBoot常用配置简介
  5. vc6下c++编译器通不过,c编译器通过
  6. 【杭州】Hack for Cloud Beginner微软黑客松大赛
  7. TypeScript 基础类型 1
  8. Bootstrap 可切换的标签导航
  9. css3 shapes是什么意思,CSS Shapes有哪些让人兴奋之处
  10. 关于constraint 的disable和enable
  11. 8.从Paxos到Zookeeper分布式一致性原理与实践---Zookeeper 运维
  12. jdbc:mysql:replication_使用Mysql的Replication功能实现数据库同步
  13. NERO8.3.6.0(官方完整版+序列号)
  14. 计算机office2010excel试题,将计算机二级Office2010Excel试题中会出现的所有公式汇总...
  15. springboot网上电子书店下载购买系统-图书商城网站961h3-java-ssm二级分类
  16. CTFshow_萌新(密码)
  17. 假设有一个字类型的数值arry1,试编写程序统计arry1数值及其后若干数值,在字单元中存储时每个数据中含“1”数据位的个数,并将统计结果保存在res1数组中。数据段的代码定义如下: data seg
  18. [转] Attach、Detach和DeleteObject
  19. 计算机专业前沿算法,CNCC2018 | 研究经典计算机算法已经过时了吗?
  20. Jenkins + Gitlab+ Docker + SpringBoot 构建流水线

热门文章

  1. java+socket 简易聊天工具
  2. Vue报错:Can‘t resolve
  3. 极家精装怎么样?让我们抽丝剥茧,一探究竟
  4. Linux(固定USB摄像头硬件端口,绑定前后置摄像头)
  5. java税务软件_java税务管理系统
  6. Arch设置开机自动连接wifi网络:
  7. Android开发中如何设置字体
  8. java 将千分位转为数字_java让数字显示千分位 mark
  9. 基于Hough变换的直线和圆的检测与提取
  10. Android内存优化--使用SparseArray和ArrayMap代替HashMap