Don't Starve 中文維基
Advertisement
Don't Starve 中文維基

前言[ | ]

更新日志[ | ]

修改:2021/1/8|Don't Starve Together版本:446681|添加了管理员名单

完稿:2021/1/7|Don't Starve Together版本:446681

立稿:2021/1/3|Don't Starve Together版本:446029|系统:win10家庭中文版

本攻略目标[ | ]

解决联机时的网络连接不稳定

原理[ | ]

基于steam平台在个人电脑上建立服务器,通过端口映射/局域网/虚拟局域网进行联机

需求[ | ]

一台能做服务器的个人电脑,steam,windows,愿意折腾的人

建立服务器[ | ]

服务器下载[ | ]

打开steam客户端,在工具中下载

工具

找不到工具的看这里

Don't Starve Togethe Delicate Server

服务器的验证文件(token)[ | ]


  • 打开游戏本体,左下角账户,游戏,饥荒联机版的游戏服务器,添加新服务器,然后将图示的一串字符复制下来
Token

点击可放大


注:复制字符时建议不要跨系统,甚至跨设备进行传输,容易出现错误

注2:由于klei服务器的地点问题,中国大陆等玩家可能在上一步遇见网页加载缓慢或是无法加载等问题,请耐心等待或科学上网。

  • 然后新建一个txt文件(记事本文件),将你所复制的粘贴进去即可,文件名为
cluster_token



服务器配置及mod设置[ | ]

  • 打开游戏本体,创建世界,记得添加自己需要的mod,然后生成世界,当生成世界完成后断开连线即可。
  • 打开资源管理器,进入我的文档,Klei,DoNotStarveTogether,*********(这是一串数字,代表你的账户),里面有刚才所创建的存档,存档是一个文件夹,名为
cluster_x  (x为1,2,3等,如不能确定是哪一个请按修改日期查找,是离你现在时间最近的那个)
(此时存档路径为C:\Users\x\Documents\Klei\DoNotStarveTogether\*******)(x代表计算机用户名)
  • 接下来是创建服务器文件,在电脑上任意一个地方创建一个文件夹,(我一般是将文件放在游戏存档的下面,路径就是C:\Users\x\Documents\Klei),文件夹名称可以任意,(我是DoNotStarveTogetherDedicated)
  • 将刚才所复制的文件夹(名称为Cluster_x)放入上一步创建的服务器文件夹中,并将该文件夹命名Cluster_1(即Cluster_x→Cluster_1)
  • 将前面创建的txt文件(文件名为cluster_token)覆盖服务器存档槽1(文件夹名为cluster_1)中的cluster_token.txt文件,这样服务器配置及mod设置就完成了
服务器存档夹示意图(无管理员)

此时文件夹应该是这个样子的

mod添加[ | ]

注:先在客户端下载所有mod

  • 将游戏目录下的mods文件夹下的mod复制,黏贴到服务器目录下的mods文件夹(只需复制服务器所需mod即可,全复制也没问题)

游戏目录文件夹路径x\Steam\steamapps\common\Don't Starve Together

服务器目录文件夹路径x\Steam\steamapps\common\Don't Starve Together Dedicated Server

找不到的请搜索引擎或是看下面

服务器开启及关闭[ | ]

  • 打开服务器所在的位置(是指Don't Starve Togethe Delicate Server,从steam工具中下的),(路径为x\Steam\steamapps\common\Don't Starve Together Dedicated Server,找不到的在steam右键这个工具,管理,浏览本地文件)
  • 进入bin,scripts,(路径为x\Steam\steamapps\common\Don't Starve Together Dedicated Server\bin\scripts),应该有一个bat文件(windows批处理文件)(文件名为launch_preconfigured_servers),右键,编辑
  • 接下来因为个人的服务器存档位置不同,请自行根据下面的服务器命令行说明进行修改
此时找到             start "Don't Starve Together Overworld" /D "%~dp0.." "%~dp0..\dontstarve_dedicated_server_nullrenderer.exe"
如果服务器存档路径跟我的一样的话在后面覆盖为    -console -conf_dir DoNotStarveTogetherDedicated -cluster Cluster_1 -shard Master
服务器脚本设置

此时应该长这样

如果有开启洞穴的话再另起一行

输入        start "Don't Starve Together Caves" /D "%~dp0.." "%~dp0..\dontstarve_dedicated_server_nullrenderer.exe" -console -conf_dir DoNotStarveTogetherDedicated -cluster Cluster_1 -shard Caves

服务器开启[ | ]

打开上一步的bat文件即可

注:如果有洞穴的话启动服务器时应该会有两个命令行程序

服务器关闭[ | ]

在命令行中输入c_shutdown(),(直接×的话可能会丢失不超过一天的存档)

服务器命令行[ | ]

这是官方论坛的说明,虽然是英文的,Dedicated Server Command Line Options Guide

下面是我大概挑选解释一下,并不算做翻译

命令行 解释(机翻为主)
-console 使用命令行
-persistent_storage_root 更改您的存档目录所在的目录。这必须是绝对路径。文件的完整路径为<persistent_storage_root> / <conf_dir> /,其中<conf_dir>是-conf_dir设置的值。
-conf_dir 更改您的存档目录的名称。此名称不应包含任何斜杠。文件的完整路径为<persistent_storage_root> / <conf_dir>,其中<persistent_storage_root>是-persistent_storage_root选项设置的值。默认值为:“ DoNotStarveTogether”。
-cluster 设置此服务器将使用的群集目录的名称。服务器将期望在以下位置找到cluster.ini文件:<persistent_storage_root> / <conf_dir> / <cluster> /cluster.ini,其中<persistent_storage_root>和<conf_dir>是-persistent_storage_root和- conf_dir选项。默认值为“ Cluster_1”。
-shard 设置此服务器将使用的分片目录的名称。服务器将期望在以下位置找到server.ini文件:<persistent_storage_root> / <conf_dir> / <cluster> / <shard> /server.ini,其中<persist ent_storage_root>,<conf_dir>和<cluster>是由-persistent_storage_root,-conf_dir和-cluster选项设置的值。默认值为“ Master”。Master为地上,Caves是洞穴(地上和洞穴会分别各自开启一个服务器)

例:服务器存档在D:\Program Files\dst\Cluster_2且开启的是地上世界,那么命令行为

-console -persistent_storage_root D:\Program Files -conf_dir dst -cluster Cluster_2 -shard Master

服务器联机和加入[ | ]

在特殊情况下,如果您的计算机直接连接到Internet(公网IP和本地IP相同),则可以跳过本节。如果服务器和客户端在同一台机器上的话,本机联机ip地址可以为127.0.0.1,其他机器的联机方式参照下面。

局域网[ | ]

如果你和你的小伙伴在同一个网络下的话,这是最简单的,虽然我觉得有局域网的也不会来看这里

  • 在打开服务器后,打开steam,点击左上角的查看,服务器,添加服务器,输入创建服务器的电脑的ip地址(例如192.168.43.82),将此地址添加至收藏夹,以后只要从服务器收藏夹进行连接即可

虚拟局域网[ | ]

  • 通过各种软件建立虚拟局域网

例如:TeamViewer实现虚拟局域网联机 - 独行者博客 AloneBlog(注:这不是我写的,随便从网上找的)

  • 建立完按照局域网教程操作即可。

端口转发[ | ]

注:需要公网ip[ | ]

  • 情况1:如果路由器的IP与服务器管理器中的公用IP相同

这是最常见的情况。继续按照以下说明设置端口转发

  • 情况2:如果路由器到服务器管理器中的公共IP

您的路由器很可能已连接到另一个路由器。如果您有已连接的电缆或DSL调制解调器,然后有单独的无线网桥设备,则可能会发生这种情况。在这种情况下,路由器的IP可能看起来像192.168.0。*,这意味着您登录的路由器没有公用IP地址。您将需要在此路由器连接的路由器上重复以下端口转发说明。

  • 情况3:路由器的IP与公共IP不同,看起来像fe80 :: 5ca6:b3e1:eb29 ...

该地址是IPv6地址,而不是IPv4地址。如果找不到路由器的IPv4地址,则可能无法从网络托管服务器。联系您的网络运营商,并让他们为您提供一个IPv4地址。

方法[ | ]

  • 现在,在路由器中找到“端口转发”或“虚拟服务器”页面-它可能位于WAN设置下。在此页面上,您需要启用端口转发,并在服务器管理器中的服务器配置文件中为服务器和查询端口添加新条目。如果路由器接受一定范围的端口,请为范围的开始和结束输入相同的数字。例如7777-7777和27015-27015。确保为每个端口选择了同时转发TCP和UDP的选项。在上面的示例中,您将为服务端口和本地端口输入7777-7777。
  • 每个端口转发条目可能还需要一个本地IP。这应该与创建服务器的电脑的本地IP相同。
  • 注意:如果你属于上述第二种情况下,路由器/调制解调器,你的路由器连接到(不是你的服务器连接到一个)必须指定第一个路由器的IP,而不是你机器的本地IP。链接如下所示:
  • 您的服务器<->第一路由器<->第二路由器/调制解调器<->互联网。第一路由器正在转发到您的服务器。第二路由器/调制解调器正在转发到第一路由器。您不能直接从第二路由器/调制解调器转发到您的服务器,因为它们不在同一网络上。
  • 关于DHCP和本地IP的说明:如果您的计算机通过DHCP自动从路由器获取其本地IP,则应确保为计算机分配了静态IP(如果可以)。这样可以确保如果您的计算机重新启动,则每次继续接收相同的地址。否则,您的计算机每次收到新的IP地址时,都必须重复端口转发过程。如果您有多个路由器,则该相同原理适用于您专用网络上的路由器(那些未直接连接到Internet的路由器。)
  • 请确保您保存/应用更改。如果您处于情况2,请对网络链中的所有路由器重复此过程。

联机[ | ]

  • 同局域网教程,不过服务器地址改为公网ip+端口,例10.010.41.26:27015

服务器更新[ | ]

服务器无需手动更新,steam自动更新

mod更新的话,客户端下载完重复mod添加即可

服务器管理员名单[ | ]

在服务器的存档槽里(例如Cluster_1)里,新建一个名为adminlist的txt文件,内容为管理员的klei用户id(例如KU_********)

找不到id的打开游戏,点击左下角的账户

吐槽一下[ | ]

过时的攻略比没有攻略还糟糕,请观看时注意更新日志

这篇攻略写完我就不管了,如有错误,最好你自己修改,留言我也不一定能看见

至于其他系统的攻略,咱也没见过,咱也没用过啊

Advertisement