供给清除

供给清除

每次从睡眠中醒来时,自动从你的库存中移除腐烂的食物和草药。

hoskope

游戏中最难缠的敌人——[color=#ff0000][b]腐烂的食物[/b][/color],已经无数次将我放倒。不小心吃了腐烂的食物,然后发现身上没有消化药剂,只能认命。这个模组会在你每次睡觉时自动移除你身上的腐烂食物和草药。可以想象成亨利在露营后收拾行囊,顺手把发霉的东西扔掉了。

[ProvisionPurge] 睡眠会话开始...
[ProvisionPurge] 从睡眠中醒来 → 清理变质补给
[ProvisionPurge] 扫描背包...
[ProvisionPurge] 已移除补给:herb_salvia x8
[ProvisionPurge] 已移除补给:herb_chamomile x5
[ProvisionPurge] 已移除补给:herb_belladona x7
[ProvisionPurge] 已移除补给:herb_dandelion x1
[ProvisionPurge] 已移除补给:herb_urticaria x15
[ProvisionPurge] 已移除补给:herb_urticaria x4
[ProvisionPurge] 共移除 40 个变质补给。

如果你想知道一夜好眠后具体移除了什么,可以查看控制台输出。

视频

工作原理

挂接消磨时间/睡觉事件,检查你的背包,寻找腐烂的食物和草药并将其移除。这是通过食物和草药的查找表实现的,因此目前仅支持原版物品。不过,扩展起来相当容易。

安装

    1. 安装 LuaUtils(没有 LuaUtils,睡后自动清理将不会运行)。
    1. 手动复制到 mods 文件夹。

这里有一个 ProvisionPurgeConfig.lua 文件,你可以在其中定义自己的配置值。之后只需重新打包模组,它就会使用你设置的值。在未来的版本中,我可能会加入模组菜单。

ProvisionPurge_Config = {
    rottenThresholdFood = 0.40, -- 食物新鲜度 <= 40% 时删除
    rottenThresholdHerb = 0.30, -- 草药新鲜度 <= 30% 时删除
    debugLogs = false,          -- 显示详细日志输出
    enableSleepCleanup = true,  -- 醒来后运行清理
    showMessages = true,
    requireRealSleep = true,    -- 避免在取消时清理
    minExhaustGain = 3          -- 必须获得多少休息值才算数
}

更新日志

1.0 初始发布。

1.1 睡眠取消保护,添加了新的安全措施,防止在打开跳过时间菜单并取消(未睡觉)时触发不必要的清理。

1.2 更新 Provision Purge,使用 LuaUtils 的 SKALD API 来检测睡眠/等待,取代了旧的 SkipTime UI 监听器。这修复了之前的等待时间变慢问题:睡眠和等待的性能现在应保持不受影响,同时模组仍会在真正睡眠后清理变质补给。

1.2.1 添加遗漏的本地化文本。

Github

未来计划

  • 模组菜单

作者的其他模组