RimWorld

RimWorld

RocketMan - Performance Mod
HawnHan May 11, 2021 @ 5:12am
Chinese Description
Aweslated it into Simplified Chinese for more Chinese.I am not good at English so translation isn't 100% correct.

RocketMan - Performance Mod
RocketMan是为了优化RimWorld的性能而生的Mod。本Mod最高能提升RimWorld 500TPS(应该是Transactions Per Second的缩写)以提升游戏的帧数和整体体验。此Mod已开发和测试9个月有余,游戏内实测时间已有500+小时。

请务必谨记本Mod仍处于开发阶段,仍可能出现Bug。

重点:RocketMan理应位于Mod列表中的最末位。

配置要求:
- 任意CPU
- 8GB运行内存(若想获得最佳体验)

若想获得更多优化技巧可加入https://discord.gg/mKVDMqq4

功能:
1.间隔扩增(Time dilation):间隔扩增是RocketMan的特色功能,该功能将动物和人物的Tick频率由60Hz降低为5Hz。此举使你可在殖民地地图中拥有数百位人物和动物而几乎感觉不到卡顿。此功能也移除了对RuntimeGC的需求,因为人物数量已不再是问题。该功能对大型地图和长期殖民地的性能优化极其显著。(平均+150TPS)
2.静态缓存(Statistics caching):未安装RocketMan的RimWorld每时每Tick都在为状态(装备防护,人物状态等)做相同的计算。RocketMan可将这些结果缓存,此举减少了原版90%的计算量。该功能可中度优化性能。(平均+30TPS)
3.光亮系统重做(GlowGrid rework):RimWorld使用了一个很烂的算法来实现光照系统。几乎每当地图上有一个灯/火的状态改变时,系统就要重算整个地图的光亮。RocketMan将其升级为仅计算事件发生的关联区域。该功能能让游戏体验更顺滑,基本避免了因光亮导致的卡顿。
4.世界地图可达性检测(World Reachability Checks):RocketMan在第一次载入游戏后会创建一张包含每个地图块可达性数据的表单。这样一来每个地图块之间的可达性几乎是0或1次运算即可完成。
5.稳定寻路算法(Pathfinding Stability):RocketMan会监测寻路算法的错误并在一定程度上修复它。
6.尸体移除机制(Corpse Removal):RocketMan在满足某些条件时会移除地图上的尸体。为保持游戏平衡性,RocketMan不会移除一直处于你可见范围/基地附近的尸体,但会移除处于地图边界及基地外的尸体,频率为7天(平均值)。
7.游戏日志删除机制(Game Log Removal):RocketMan将自动清空你的游戏日志以获取更好的计算能力,并进一步移除对RuntimeGC的依赖。

提示:
- 为获取最佳体验请在45分钟后禁用设置中的Mod适应(Adaptive mod)选项(若你对Mod列表进行过修改则需要重新打开此选项,目前该功能开启后,满足时长时会自动关闭,无需玩家手动关闭)
- RocketMan不兼容RimThreaded(多线程Mod)且永不考虑
- 反馈Bug时不带上日志那你不会得到回复
- RocketMan应尽可能位于Mod列表中的末位

Github地址:https://github.com/kbatbouta/RocketMan

RocketMan开源,任何人都可使用/修改/更新

免责声明:我不为RocketMan对你存档造成的任何损失担责
RocketMan已实测9个月有余。鉴于RocketMan已实测如此之久,你存档的任何损失都有可能是你自己的误操作所为。

常见问题:
问:什么是Mod自适应(Adaptive mod)以及为什么时长为30分钟?
答:这是RocketMan的自优化过程(一种简单的机械学习形式),通过使用梯度下降法,根据时间的推移,确定缓存数据失效的最佳值。在20-30分钟后,因为已获得衰减点的结果,方程会开始收敛。若不禁用此选项,可能继续吞掉一部分电脑的性能,但不会造成严重的卡顿。在后面的更新中该功能将实现自动化而不需要用户的干预。该功能重做的下一步主要计划就是引入更好的机械学习算法。(已实现)

问:什么是间隔扩增(Time dilation)以及该功能怎么作用于AI/战斗?
答:间隔扩增将野生生物以及人物从60Hz/Tick限制到5Hz/Tick(就平均而言)。对于人物的限制方法一如前面所言。然而对于野生生物来说,情况就要复杂得多。野生生物在大多数情况下也是按照这种方法限制其频率,但在以下情况时除外:玩家缩放视角查看动物。一般规则为,你看不见的野生生物平均以每秒3次/Tick刷新活动会比60好。但在你视角逐步接近时逐渐放松其限制。因此当你视角缩放大于50%时,所有动物都会被限制刷新频率(即便视角中仍存在动物),同时为了画面的流畅,在游戏速度越快时限制就会更严,越接近视角边缘时限制越严,视角越远时限制越严。因此该系统通过获取你的操作以改变事物刷新的频率,这就给了你一种视觉上流畅的感觉。至于战斗和AI的影响,本Mod不会限制正处于战斗的动物/当前正逃跑的敌人/处于失控状态的生物。那些处于失控状态的生物仅在战斗之外限制。总的来说,本Mod不会影响随时间推移所需的任何关于需求、状态等等的数据。这意味着在限制的时候,虽然频率降低了,但每次之间的幅度增大了(举个例子,移动速度增加,虽然其频率降低但一秒内的平均值不变。可理解为检测平均速度的时间间隔增大了,但实际平均速度其实没有变)。结论是,AI没有受到任何危及稳定性和兼容性的影响,因为在Mod设计之初这些都是主要考虑因素。

问:是否兼容CE(Combat Extended)?
答:是是是是是是是。

问:有的地方存在一些小问题导致我很苦恼
答:首先,在游戏中禁用RocketMan的选项。然后如果问题依旧存在,且你觉得是RocketMan所致,则取消启用RocketMan,若这样做之后问题解决了,麻烦上报日志。再次重申,本Mod已经50余位测试者实测了6个多月,这也是我们对Mod稳定性自信的来源。

问:是否存在不兼容的Mod?
答:只有两个Mod与本Mod冲突,分别为Multiplayer mod(多人游戏) (目前兼容工作已开始,请耐心等待) 以及RimThreaded(多线程Mod,永不兼容)。

再次提示请把RocketMan置于Mod列表中尽可能靠后的位置。

再次感谢Mod开发组的无私奉献。
Last edited by HawnHan; Jun 24, 2021 @ 8:40am
< >
Showing 1-5 of 5 comments
E.Klos May 14, 2021 @ 2:09am 
感谢翻译,毕业这么多年了现在看到长篇英文脑子就嗡嗡的
Alu Jun 2, 2021 @ 10:27am 
With an update yesterday translation key was finished stting up if someone wants to do that.
HawnHan Jun 2, 2021 @ 8:45pm 
Originally posted by Alu:
With an update yesterday translation key was finished stting up if someone wants to do that.
Yeah!I will translate it later
ULTRAMARINE Apr 1, 2022 @ 7:56am 
苹果系统好像不兼容这个mod:(
yac007 Aug 13, 2022 @ 11:33pm 
請問這MOD有重置按鈕嗎? 動到一些設置想要改回來:3
< >
Showing 1-5 of 5 comments
Per page: 1530 50