礁石礼包阿祖界面修复

创作者: CTRLALT
已更新:2026-09-14 03:33:33
14KB

前置 MOD

使用 礁石礼包阿祖界面修复 时将自动安装

关于此 MOD

仅界面兼容:在 AzuCraftyBoxes 1.8.18 中显示已穿戴 ReefPacks 的材料数量。不改变消耗。

礁石包阿祖界面修复 1.0.2

为ReefPacks + AzuCraftyBoxes提供最终的文本兼容补丁。替换了1.0.0/1.0.1版本中失败的UI存储方案。

安装

关闭英灵神殿。替换旧的 ReefPacksAzuUIFix.dll 你当前活跃个人资料中的 BepInEx/plugins/ReefPacksAzuUIFix/ 包含新DLL的文件夹。只保留此插件的一个副本。重启Valheim并查看锤子配方。此版本尚未自动安装到你的配置文件中。

发布用的 zip 采用 Thunderstore 布局。源码和构建脚本另行提供。1.0.2 版本可作为更新上传至同一 Thunderstore 团队/包下。

发生了什么变化

插件现在会修补 仅 背包界面.设置需求,带有标记的和谐后缀 [和谐优先级(优先级.最后)] 和 [和谐后("Azumatt.AzuCraftyBoxes")]。注册还会把它排在该方法上已存在的其他所有者之后。允许其他Harmony所有者。之后安装的模组若具有冲突的显式排序,或存在单独的UI刷新路径,则无法保证在此补丁之前运行。

它找到 根元素.transform.Find("资源数量"),获得 文本网格专业版,从以下位置读取资源共享名称 部件需求,并将已穿戴的礁石背包数量加到显示的可使用分子上。分母保持不变。示例:

  • 0/3 + 37 木材 -> 37/3
  • 10/3 + 37 木材 -> 47/3
  • 0/2 + 40 石头 -> 40/2

当修正后的计数满足显示要求时,组件颜色变为白色。否则保留阿祖的现有颜色。仅 文本 和 文本颜色 被写入。没有返回值,配方、库存、资格状态、消耗方式、容器列表或UI银行缓存都不会改变。没有 物品银行界面 方法被修补或调用时不使用二进制哈希或所有者允许列表。

这是明确要求的附加显示修正。它假定Azu显示分子中不包含ReefPack。它不会查询容器来判断未来的Azu版本是否已包含该包。如果原生集成开始包含它,请禁用此兼容插件以避免重复计数。Azu的缩写K/M分子可以被解析,但原始缩写计数已经经过四舍五入,因此所得总和是近似值。不支持的自定义格式将保持不变并记录日志。

装备包访问

使用已检查的珊瑚礁包 磨损背包(玩家) 方法,读取本地玩家的肩部装备引用并识别ReefPack物品。仅该确切物品现有的 缓存数据 通过以下方式进入条目 如果存在则获取值; 背包装备道具 身份已验证, 背包数据.物品栏 已读取。不执行随身背包扫描、主物品栏成员假设或帧缓存检查。物品匹配使用共享名称和Valheim的世界级过滤器。

从不打电话 获取包数据,因为它可以初始化、调整大小、保存或弹出项目。不可用的缓存条目贡献为零并产生诊断信息。缺少依赖项/API签名会阻止注册;运行时空值或异常只跳过单个UI元素,后续元素会重试。

配置与诊断会话

BepInEx/config/local.ReefPacksAzuUIFix.cfg:

[常规] 启用 = true 诊断日志记录 = true

测试期间已启用日志记录。重复的相同消息会被抑制;变化的结果会被记录,每次启动最多记录200条消息。测试后请禁用DiagnosticLogging。启动时会报告依赖项以及成功的 背包界面.设置需求 注册。预期消息:

设置需求后缀已执行 设置需求 $item_wood 原始=0/3 背包=37 修正=37/3;读取磨损背包 设置需求 $item_stone 原始=0/2 背包=40 修正=40/2;读取磨损背包

读取 BepInEx/LogOutput.log 或《英灵神殿》的 Player.log 打开锤子配方后。这些诊断信息可区分缺失的包数据、不支持的文本格式,以及之后被其他 UI 路径覆盖的成功修正。错误不会禁用整个会话。

构建与测试

针对已安装的 Valheim 1.0.12、TextMeshPro 和 BepInExPack 5.4.2350 程序集构建。无需编译时引用 ReefPacks/Azu/Hearthkeeper/ValheimQoL。使用带有 MSBuild 和 C# 编译器的 Visual Studio Build Tools:

.\build.ps1 -GameDir 'D:\SteamLibrary\steamapps\common\Valheim' -BepInExDir 'C:\path\to\profile\BepInEx' .\tests\run.ps1 -Compiler 'C:\path\to\Roslyn\csc.exe' -HarmonyDir 'C:\path\to\profile\BepInEx\core' .\package.ps1

完整的 .csproj 使用 Roslyn MSBuild 任务和 Valheim 的 Mono 程序集;无需下载 .NET SDK/NuGet。输出为 dist/ReefPacksAzuUIFix.dll游戏及依赖DLL文件不随附分发。

38项自动检查通过,包括一个实际的Harmony绕行测试,证明该后缀即使在两者都使用Priority.Last时也会在模拟的Azu后缀之后运行。该测试针对游戏/模组测试替身编译生产源码,而非运行中的Valheim世界。所需游戏复测见TEST-CHECKLIST.md。1.0.0和1.0.1版本未修复用户的游戏显示问题;1.0.2尚未经过游戏验证。

独立兼容插件,MIT许可证。非ReefTeam/Azumatt官方发布。已检查公开源代码: 阿祖工艺盒子。已从安装的 0.2.0 托管 DLL 中检查 ReefPacks API,以确认互操作性。

Valheim: 英灵神殿 的热门 MOD

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

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