跳转至

延迟消除工具

简介

  • 【独行长路/Don't Starve Alone】 是一个消除延迟的辅助mod,主要面向单人玩家,特别是从饥荒单机版转到饥荒联机版后,非常讨厌联机版的延迟感的玩家。
  • 正如其名字 Dont't Starve Alone 中 Alone 一词的含义,本mod只适合单人模式,后续版本也不会支持多人游戏。
  • 本mod不修改原版的数值和机制,除了消除延迟,其他事情尽量都不碰。
  • 主要的bug来源是地面和洞穴切换过程中的时间同步。如发现bug,可在创意工坊反馈,让我们一起把这个mod变得更好。

运行原理

如果你感兴趣,可以看看这个mod的运行原理:

点击展开

许多玩家发现,即便是在自己电脑上开服玩饥荒,只要存档带有洞穴,就能感受到延迟。这是怎么会事呢?

在多人游戏中,客户端和服务器之间需要进行网络通讯,饥荒联机版的网络通讯频率是每秒15次,这意味着玩家的操作(比如点击鼠标)发送到服务器(威尔逊向鼠标处跑动)会有一个延迟,最高为66毫秒。

这种延迟与网速无关,即使客户端和服务器在同一台电脑上(比如本地开洞穴房,或者本地开专服然后自己加入),延迟依旧存在。

想要完全消除延迟,就得让玩家处于服务端。在一些多人游戏中,开房间的玩家会处于服务端,不受延迟影响,加入房间的其他玩家处于客户端,会感受到和服务器的延迟。

但饥荒这个游戏比较特殊,它有“地面”和“洞穴”两个世界,假如房主目前处于地面服务器,那么当房主进入洞穴时,地面世界会关闭,导致其他在地面的玩家无法正常游戏。为了避免这一点,在饥荒中房主也以客户端的形式连接到服务器,在进出洞穴时,玩家客户端只需要切换连接的世界,而不会关闭世界。因此,即使你是房主,也会感到延迟。

这个机制其实可以优化。在“单人联机”,即只有一名玩家的特殊情况下,不需要考虑队友,只运行这名玩家所处的世界就行了。玩家在地面,运行地面世界;玩家在洞穴,运行洞穴世界。保证玩家一直是主机,延迟就不存在,还能减轻电脑的负担。

于是有了这个mod。


启动条件

1. 开启本mod

这是一个服务器mod,在启动世界前,你需要在服务器mod列表中勾选它。

2. 单人世界

世界人数必须设置为1,否则无法启动。

3. 世界带有洞穴

不含洞穴的世界本身就不存在延迟问题。当然,你可以把mod开启,但它不会有任何实际效果。

注意事项

1. 存档格式

开启【独行长路】的世界,存档格式和饥荒联机官方格式有所不同,所以会存在一些兼容性问题。

  • 创建新世界前,在mod列表中添加本mod,这个世界的存档会采用特殊的储存格式,以支持延迟消除。

  • 你也可以给一个活了100天的旧存档添加本mod。在读档时,官方存档格式会被mod自动转换为特殊格式。

  • 一个存档如果已经开启了本mod,就不要关闭。因为官方代码并不能识别mod存档文件的洞穴部分,一旦关闭mod,你会丢失在洞穴的所有游戏进度。

  • 存档恢复功能开发中...

注意

本mod适合从开局到结档都是一个人自己玩的存档。

如果你的存档有时候一个人玩,有时候和朋友一起玩,那就不要使用。

2. 回滚

本mod已支持回滚,可在游戏中或读档时恢复到更早的存档,操作方法和原版一致。

如果游戏内回滚行为异常,可以先退出世界,然后在读档界面回滚。

注意

云同步存档的游戏内回滚功能可能尚不稳定,如果你的存档是云同步的,建议不要在游戏内直接回滚,而是在读档界面进行回滚操作。
如果游玩时需要频繁回滚,推荐在本地存档内使用【独行长路】。

注意

一个旧存档添加了【独行长路】后,将无法回滚至开启mod前的游戏进度。

3. 自动保存

和单机版类似,每次下洞穴或者回到地面都会额外触发一次自动保存。

由于你始终是主机,所以每次保存时都会出现轻微的卡顿,这是正常现象。

4. 重新生成世界

该功能已完成,你可以在游戏内重新生成一个新世界。

由于一些底层限制,【独行长路】无法同时生成两个世界。在重置世界过程中,它会先生成洞穴,等洞穴生成完毕后再自动生成地面,最后弹出选人界面,整个过程不需要任何操作,耐心等待即可。

5. 无法在专服使用

不要把本mod加到专服,会强制崩溃的。

6. 时间同步

正常情况下,洞穴和地面的时间会自动同步,植物生长、boss刷新、四季、月相等计时器也会照常运行。

部分依赖于世界运行的机制将失效,例如:当你位于洞穴时,地面的蚁狮不会在你脚底挖坑;当你位于地面时,洞穴内的海星不会每隔一段时间造成范围伤害。(详见偏执模式

如果遇到时间不同步的情况,请向我反馈,并附上一份存档文件。

常见问题

出现一些bug

如果遇到bug,请先确认是否由【独行长路】造成。

  1. 创建新存档,只添加【独行长路】这一个mod,观察bug能否被重现。
  2. 也可创建新存档,不开洞穴,不添加【独行长路】,观察bug能否被重现。
  3. 如果bug确实和【独行长路】相关,再向作者反馈。

阿比盖尔花只显示一阶段贴图

这是一个官方bug,我已在论坛反馈(见下方链接),但是官方不修,所以我也没办法。

https://forums.kleientertainment.com/klei-bug-tracker/dont-starve-together/abigail-flower-inventory-image-doesnt-change-on-load-in-host-r33515/


下面是一些有用的控制台命令,有助于排查模组bug:

命令 功能
c_freecrafting() 开启物品全制造
c_godmode() 开启无敌,死亡后输入该指令可以复活
c_save() 立刻保存
c_gonext"cave_entrance" 传送到洞穴入口
LongUpdate(480) 跳过一定的时间,数字代表秒数,如480秒代表饥荒的一天
LongUpdate(480, true) 跳过一定的时间,但不影响玩家三围
TheWorld.minimap.MiniMap:EnableFogOfWar(false) 小地图全显示(该指令仅在主机生效)
SetDefaultTimeScale(2) 将游戏速度设置为2倍速

游戏掉帧卡顿

按如下流程处理:

  1. 创建新存档,只添加【独行长路】这一个mod,进去玩几分钟。
  2. 如果仍然有掉帧,说明你的电脑带不动,建议订阅一些能清理地面物品的防卡mod(如掉落物自动堆叠)。假如你财力雄厚,也可以考虑换一台12900k,5950x或者m1。
  3. 如果不掉帧了,那说明是一些mod的原因。一些大型mod(如【Tropical Experience,三合一】)和一些优化较差的mod(如【tips,提示猎狗和BOSS的攻击时间】)会对游戏性能造成很大的负担,关闭这些mod可能会改善掉帧的问题。

关于tips为什么优化差,因为这个mod会频繁遍历全局实例哈希表Ents(大小约为30000),这对性能弱的电脑就是个灾难...


进出洞穴闪退

我无法复现这个bug,有部分玩家指出是144hz刷新率导致的问题,但是我没有电竞显示屏,没法求证。

如果你遇到了进出洞穴游戏闪退的情况,可以试试把显示屏刷新率从144hz调成60hz,看看问题能否解决。如果确实能成功解决,可在创意工坊评论区留言。

(这大概是klei在游戏引擎里留下的诡异bug)

某个物品无法带进/带出洞穴

请先查一查这个物品本身究竟能否带进洞穴,比如切斯特眼骨是没法带进洞穴的。

多人版本

正如名字所示,【独行长路/Don't Starve Alone】只适合单人世界,后续的版本也不会支持多人游戏。

如果你需要改善多人联机模式下的延迟问题,我觉得你应该去找klei的程序员,这是他们的工作。


开发进度

  • 跨世界传送
    • 上下洞穴
    • 控制台c_migrateto命令
    • 旺达的传送锚点
  • 绚丽大门换人
  • 存档转换

    • 官方存档转换为mod存档。
    • mod存档恢复为官方存档。
  • 回滚

  • 重新生成世界

  • 支持修改世界设置

友情链接

回到页面顶部