DSPOutputCap
Limit how many finished items a building stacks in its output buffer before it stops. 限制工厂输出缓存堆叠上限,达到上限即停止生产并停止耗电,物品运走后自动恢复。可在游戏内按 F7 调整。更新日志
0.1.0
首个公开版本。
功能
- 限制生产设备输出缓存的成品堆叠上限,达到上限即进入游戏原版的 「产物堆积」状态:停止生产、停止耗电
- 物品被运走后自动恢复生产
- 游戏内按 F7 打开设置面板,实时调整数值,改动立即生效
- 冶炼炉 / 制造台 / 化工厂等其他配方类型可分别设定上限
- 配电快速设定按钮:全部设为 5 / 10 / 20 / 50
已知限制
- 冶炼炉(电弧熔炉)暂不支持:其产能判定在编译后的代码里用的是 加法而非乘法结构,没有可替换的常量,无法用与其他设备相同的方式改写。 该设备会保持游戏原版行为。
- 研究站(矩阵研究站)暂不支持:未能在其代码中找到对应的容量判定。 同样保持原版行为。
- 停产判定按物品个数计算,对一次产出多个成品的配方, 可能在略低于上限处停下。
技术说明
- 通过改写游戏产能判定式中的数值实现,不修改存档结构
- 停产时通过写入电力消费者组件的电力需求实现断电
- 兼容游戏的并行工厂 tick(使用线程本地状态,无跨线程共享)
- 如果游戏更新导致内部结构变化,Mod 会拒绝打补丁并在日志中记录警告, 不会导致游戏崩溃
验证环境
- 游戏:Unity 2022.3.62f3c1
- 加载器:BepInEx 5.4.23.5
- 补丁库:HarmonyX 2.9.0.0
