从容器中制作进化版

创作者: KodeMansMods
已更新:2026-09-27 23:19:14
37KB

关于此 MOD

从附近容器中制作、建造和升级,遵循严格所有者权限、领地感知访问规则及服务器强制策略。

从容器中制作 进化版

作者:KodeMan

开发中: 此版本尚未经过完整游玩测试。可能存在粗糙之处,如发现问题请反馈至 Discord.

利用附近容器中的资源进行制作、建造和升级——同时别让其他玩家把你的储物箱当成他们的私人仓库。

这是为 Valheim 1.0 独立重新实现的经典“从容器中制作”功能,并配备了专为共享世界设计的安全模型:你的箱子只对你实际共享的人有效,服务器也可以强制执行这些规则。

它的作用

  • 使用附近容器中的资源时 制作, 升级中 和 建筑.
  • 制作界面会显示你的物品栏加上允许使用的容器中可用的总量,例如 87/40.
  • 当资源仅存在于容器中时,计数显示为琥珀色;完全缺失时显示为红色;仅靠你的物品栏就足够时显示为白色。
  • 范围内的容器会自动使用,无需额外的栏位、标签页或菜单。
  • 拉取顺序默认优先最近的容器,可选的“留一”规则会在每个堆叠中保留单个物品(需要堆叠中最后一个物品的配方将被视为无法制作)。
  • 船只、推车、木箱、加固箱、黑金属箱、个人箱和墓碑的容器类型过滤器。
  • 兼容个人箱子和守卫:如果容器通过了游戏自身的访问检查,则可以根据当前的安全模式使用。

不再有工作台恶意破坏

在共享世界中,玩家可以在你的储物箱旁边(甚至贴着外墙)建造制作站,再配合旧版的容器拉取模组,就能悄无声息地使用你的材料制作物品。Craft From Containers Evolved 默认阻止了这种情况:

  • 每个容器都必须通过游戏在玩家打开时所用的相同访问规则。正被他人使用的容器、你并不拥有的私有宝箱,以及你没有权限进入的受守护保护的容器,绝不会被触碰。
  • 所有者严格 (默认):仅当部件为 由你创建。所有权是游戏为每个玩家放置的物体存储的创建者ID,因此它能经受重启,不需要守护结界。陌生人的工作台放在你的箱子旁边什么也找不到,因为你的箱子不属于他们。
  • 结界仍是共享机制:使用 包含守卫许可 已启用,在你拥有权限的已启用领地内的容器也会被使用,因此队友可以像原版游戏共享门和箱子那样共享存储。

安全模式

模式 行为
所有者严格 (默认) 仅由你创建的容器,或外加你有权限的病房内的容器。
严格守卫 游戏自身的权限检查加上:切勿进入你无权进入的已启用法阵内的容器,即使该容器是公开的。
香草 只镜像游戏自身的检查:任何你能手动打开的东西都可以用于制作。

服务器强制策略

也在服务器上安装该模组,服务器将成为权威端:

  • 服务器会在玩家出生时以及设置发生更改时广播其安全设置。
  • 客户端只会比服务端更严格,绝不会更宽松。如果服务端使用 严格所有者,一个设置为 香草 仍然会得到 所有者严格 行为。
  • 拉力范围受服务器数值限制,容器类型的忽略项会合并,因此服务器可以强制追加排除项。
  • 服务器端写保护: 服务器会验证每一次容器写入和容器请求。来自被修改客户端的伪造消息会在触及箱子之前被丢弃,声明的玩家ID会根据真实发送者进行核验,拒绝操作会记录审计日志,并且当请求被拒绝时会告知已安装模组的客户端。世界容器(地牢宝箱)保持原版行为。

与 服务器/强制写入模式 = true 默认 访问模式 同样适用于写入:在……下 严格所有者 只有创建者和获得领地许可的玩家才能修改容器。由于服务器无法区分脚本拉取和手动拾取,这也意味着没有领地许可的玩家无法手动拾取队友的公共箱子——请通过领地共享,或将选项设置为 假 仅用于纯原生战利品获取,并仅执行隐私与守卫措施。

制作界面

  • 需求行显示 可用/所需 包括允许的容器。
  • 琥珀色表示缺失数量来自容器,红色表示各处都有缺失。
  • 资源消耗, 容器可用颜色 和 颜色不足 让你可以更改格式和颜色。

配置

配置文件: BepInEx/config/CraftFromContainersEvolved.cfg.

设置 默认 描述
通用/已启用 真 启用该模组。
通用/调试 假 记录容器被跳过的原因以及资源的来源。
通用/容器范围 10 最大拉伸距离(米)。 0 表示无限。
通用/应用于制作 真 制作和升级时使用容器。
通用/应用于建筑 真 建造时使用容器。
按距离拉拽 真 优先从最近的容器中拿取。
通用/离开一个 假 每个容器堆叠中至少保留一件物品;需要最后一件物品的配方将被视为无法制作。
安全/访问模式 严格所有者 香草, 监守严格 或 所有者严格.
安全/包含守卫许可 真 在 严格所有者,也允许受监护人许可的容器。
容器类型/忽略舰船容器 假 忽略船上的集装箱。
容器类型/忽略货车容器 假 忽略推车上的容器。
容器类型/忽略木箱 假 无视木箱。
容器类型/忽略强化箱子 假 无视强化宝箱。
容器类型/忽略黑金属宝箱 假 忽略黑色金属宝箱。
容器类型/忽略私人宝箱 假 忽略个人箱子。
容器类型/忽略墓碑 真 忽略墓碑。
界面/显示容器数量 真 显示合并背包和容器数量。
界面/资源消耗字符串 {0}/{1} 资源计数器格式。
界面/容器可用颜色 FFEB04 当资源仅存在于容器中时的颜色。
界面/颜色不足 #FF4040 资源缺失时显示的颜色。
服务器/强制执行服务器策略 真 应用已连接服务器的安全策略。
服务器/服务器执行 真实 在服务器上验证容器写入和请求。
服务器/写入时强制模式 真 将访问模式应用于写入操作; 假 以纯原版体验为准。
服务器/记录拒绝尝试 真 限流拒绝日志记录。
服务器/通知被拒绝的玩家 真 当服务器拒绝访问某个容器时,向使用模组客户端的玩家发送消息。

安装

  1. 为英灵神殿安装 BepInEx 5.4.23 或更高版本。
  2. 放置 从容器制作进化版.dll 和 从容器中制作进化版.Core.dll 在 BepInEx/plugins/ (一个子文件夹,例如 BepInEx/plugins/CraftFromContainersEvolved/ 也有效)。
  3. 使用 r2modman 或 Thunderstore 模组管理器时,请使用 设置 > 从文件导入模组 然后选择发布压缩包,或从此页面安装该软件包。

不要与任何其他从容器制作的模组(包括原版从容器制作及其分支)同时运行:它们会修改相同的玩家方法,结果将不可预测。

多人游戏说明

  • 在服务器上安装此模组以实现服务端强制管控。仅靠客户端总是可以被修改过的客户端绕过;服务器的关卡才是阻止他们的关键。
  • 未安装该模组的玩家仍受服务器限制,只是无法使用容器合成功能。仅服务器需要安装该模组才能获得保护。
  • 客户端上的访问检查对UI和单人模式仍然有用,服务器会验证它能看到的一切。
  • 当服务器拒绝访问时,安装了模组的客户端会显示一条简短消息。未安装该模组的玩家则会被静默拒绝。

已知限制

  • 附近容器的内容对客户端仍如原版一样可见;强制执行会阻止未授权的 写,不是只读同步。
  • 这保护了存储访问。它不是通用的反作弊:通过其他原版信任漏洞生成或复制物品不在范围内。
  • 内部机制为 Valheim 1.0.16 专属。插件会在启动时验证其补丁目标,若游戏更新破坏了执行层,则记录错误。

兼容性

  • 为英灵神殿 1.0.16(极北之地)配合 BepInEx 5.4.23.5 构建。
  • 不会替换方法,因此与其他制作模组共存时比完全替换方法更优雅。
  • 与其他从容器制作的模组冲突,只能同时运行其中一个。

反馈与问题

服务器所有者和玩家:请在本模组页面的评论区或Discord上报告问题、误报拒绝或功能请求。请附上你的Valheim和BepInEx版本,以及你是在客户端、服务器还是两端都运行该模组,并附上相关的 日志输出.log 尽可能使用多行。

制作人员

受aedenthorn的“从容器中制作”功能启发。这是一个独立实现,采用不同的安全模型,且无共享代码。

根据 MIT 许可证授权。

支持

问题、错误报告和测试反馈: https://discord.gg/W8vMj3PfVT

Valheim: 英灵神殿 的热门 MOD

探索适用于 Valheim: 英灵神殿 的最佳MOD,带来新功能、升级画面,以及令人兴奋的方式来改变您的游戏体验。

使用 Xmod 解锁 Valheim: 英灵神殿 的全部潜力 — 今天就探索这些顶级 MOD!