建造资源需求_已更新

创作者: eoger
已更新:2026-09-16 08:04:32
149KB

关于此 MOD

每个建造类别可配置建造资源需求。Jammerbam模组的分支版本,已针对英灵神殿1.0更新。

建造资源需求(已更新至英灵神殿1.0)

这是以下内容的分支: 干扰弹的建造资源需求 (Thunderstore 原始列表),为以下内容重建: 英灵神殿 1.0 (Unity 6)。该模组本身的全部功劳归Jammerbam所有;此分支仅将其更新至当前游戏版本。来源: https://github.com/eoger/BuildResourceRequirements

建造资源需求 是一个允许控制特定建造类别、工具和部件是否需要资源的模组。它支持原版和模组类别,以及配置同步。我制作这个模组是因为我不太喜欢禁用资源的世界修正会关闭所有东西,包括耕耘机。

功能

  • 基于类别的资源需求: 为特定建造类别(例如制作、家具、杂项)配置资源需求。
  • 工具专用配置: 启用或禁用对耕种器和锄头等工具的资源需求。
  • 部件例外: 指定个别部件无论其类别如何都永远不需要消耗资源。
  • 模组分类支持: 自动检测并配置新增的模组分类。
  • 基于技能的资源需求: 根据玩家制作技能等级降低资源需求的可配置选项。
  • 多人同步: 确保所有玩家连接到多人服务器时共享相同的配置。

需求

  • 英灵神殿 1.0.x (Unity 6)。较旧的游戏版本(0.22x 及更早)需要模组版本 1.1.0。
  • BepInExPack_Valheim 5.4.2350 或更高版本(BepInEx 5.4.23.5,已支持 Unity 6)。

安装

  1. 安装 BepInEx (BepInExPack_Valheim 5.4.2350+)。
  2. 提取 BuildResourcesMod.dll 进入 BepInEx/plugins 文件夹。
  3. 启动英灵神殿以生成配置文件。

从源码构建

该项目是一个SDK风格的csproj,使用.NET 8 SDK构建(无需Visual Studio)。 服务器同步 作为 git 子模块拉取并直接编译进插件,因此克隆时请包含子模块:

git clone --recurse-submodules https://github.com/eoger/BuildResourceRequirements.git

或在现有签出处, 更新并初始化子模块然后:

dotnet build -c Release -p:GamePath="C:\Program Files (x86)\Steam\steamapps\common\Valheim"

游戏路径 默认为标准Steam位置。 BepInEx核心 默认为 <GamePath>\BepInEx\core 并且可以用同样的方式覆盖。输出是单个 bin/Release/BuildResourcesMod.dll.

配置

配置文件已生成于 BepInEx/config/Jammerbam.buildresourcesmod.cfg.

类别

以下是可用的类别及其默认值:

[Categories] MiscRequiresResources = true CraftingRequiresResources = true FurnitureRequiresResources = false BuildingWorkbenchRequiresResources = false (Build) BuildingStonecutterRequiresResources = false (Heavy Building) DeepNorthRequiresResources = false (new in Valheim 1.0: the 67-degree steep roof/wall pieces) CultivatorRequiresResources = true HoeRequiresResources = true

异常

单件物品可添加到例外列表中:

[Exceptions] ## 逗号分隔的始终可建造部件列表。 # 设置类型:字符串 # 默认值:PieceExceptions = darkwood_wolf,darkwood_raven,wood_dragon1

将棋子名称添加为逗号分隔列表。例外项会覆盖基于类别的设置,且永远不需要资源。

基于技能的消耗降低

该模组有一个选项,可根据玩家的制作技能等级启用一项功能来降低资源需求。
这是一个百分比效果,因此如果玩家的制作技能为50,所需资源将减少50%。
还有另一个选项,可以在玩家的制作技能达到100时完全禁用资源需求。如果此选项被禁用,所有部件将至少需要每个所需物品的1个。

模组分类

该模组会检测模组分类并将其添加到配置文件中。这些分类通常在你加载世界时添加。如果你想配置某个模组分类,请先加载一个世界,然后关闭游戏。
目前,模组分类在配置文件中以数值形式显示,该数值是在游戏加载时分配的。

## 模组分类需要资源:<零件表中的标签> # 设置类型:布尔值 # 默认值:true 9RequiresResources = true

如果你需要找到类别,请启用调试选项,然后从该类别中选择一个部件。在日志中应该会显示类似这样的内容:

[信息:Unity 日志] [BuildResourcesMod] 类别“9”中的部件“Armory_TW”需要资源:True

你也可以用同样的方法找到棋子的名称,将其添加到例外中。

免责声明

这是我的第一个模组,也是我第一次用C#写代码。由于我无法测试所有情况,难免会有一些东西出问题。如果遇到任何异常,请反馈给我,我会修复。

更新日志

1.2.1

  • 资源消耗和需求钩子现在以最高 Harmony 优先级运行。修复了安装 AzuCraftyBoxes 时免费部件仍被收费的问题(包括来自附近宝箱的部件)。

1.2.0

  • 已针对英灵神殿1.0(Unity 6)更新。基于1.0.7游戏程序集和BepInExPack_Valheim 5.4.2350重新构建。
  • 为1.0重新构建的捆绑ServerSync(旧版本在加载时崩溃,错误为 缺失字段异常)。
  • 新增了新的 深北之地 将分类添加到配置中。尽管名称如此,它包含了新的67度陡坡屋顶、墙壁和梁部件,因此像其他建筑标签页一样默认为免费。
  • 模组分类配置描述现在使用部件表中的分类标签,而不是未本地化的 $category_N 令牌。
  • 修复了在检查需求时无法解析棋子导致的空引用问题。
  • 配置版本要求已提升至1.2.0,因此1.2.0服务器将拒绝1.1.0客户端(反正它们在Valheim 1.0上也无法运行)。

计划变更

  • 修复配置中的命名方案,使其更加用户友好。
  • 继续更新并支持游戏更新。

制作人员

几乎所有代码都是我编写的,不过配置同步功能由以下提供支持: https://github.com/blaxxun-boop/ServerSync

Valheim: 英灵神殿 的热门 MOD

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

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