一小批独立的Harmony补丁,每个都修复一个特定的反复出现的bug——大多是 空引用异常重复的 你在本次游戏剩余时间里的每一帧 一旦触发(日志刷屏并浪费CPU),再加上偶尔出现的资源泄漏缺陷会悄然累积直至引发卡顿或死机。每个补丁针对不同的根本原因,且可能完全独立于其他补丁触发(或不触发)。
空引用修复是一个集合了多个相互独立的小型 Harmony 补丁的模组。大部分补丁一旦触发,直到会话结束前 每帧反复爆发 空引用异常 负责处理漏洞,其中一部分会悄然累积,最终引发卡顿或冻结的资源泄漏。每个补丁的成因各不相同,且彼此完全独立触发——也就是说,根据所安装的其他模组组合,某些补丁可能一辈子都不会触发。
当前修复5个bug:
移除场景对象)ZSFX 声音对象泄漏(无自毁逻辑——重复播放会导致卡顿/冻结)| 模组 | 版本 | 必须与否 |
|---|---|---|
| BepInExPack_Valheim | 5.4.2200+ | 必需 |
| 阿祖合成箱 | 任意版本 | 选择 — 仅在安装后该补丁才会激活 |
| 史诗MMO系统 | 任意版本 | 选择 — 即使未安装,另外两个补丁也能正常运行 |
无论以何种组合安装此模组都是安全的。即使没有上述模组,也只会静默停用对应补丁,其余补丁仍照常运作。
同一帧内某个 网络视图如果该GameObject先通过其他路径被销毁,则原版
ZNetScene.RemoveObjects是那个对象的内部追踪字典(实例还没来得及从)中移除 空引用异常抛出异常。由于这个异常,有问题的entry最终未能从字典中被移除,从而残留下来,结果 下一帧同样发生了相同的异常 — 这个过程会在会话结束前每帧无限重复。
这不是某个特定模组造成的bug,而是英灵神殿引擎本身的老旧缺陷。即使不安装任何模组也可能发生,且怪物生成/消失越频繁的情况(战斗、大规模召唤等)越容易触发。
这个模组的功能: 场景移除对象给 Harmony 终结者 添加补丁以精确捕获该异常,已破坏的(伪空) 网络视图 条目 实例请从那里直接移除。
AzuCraftyBoxes会将在附近看到的所有制作箱 HashSet<Container>持续静态堆放在那里。当箱子被拆除时, 容器.销毁时 通过补丁删除条目,但部分销毁路径(区域/区块卸载等)不经过此方法而直接销毁GameObject,导致已死亡(fake-null)
容器会原样留在套装中。之后在制作菜单打开期间,每帧执行的材料检查逻辑会将该已失效项 获取预制体名称()同时呼叫 空引用异常这会反复发生——直到关闭制作菜单为止。
这个模组的功能仅在安装了AzuCraftyBoxes时才会激活的补丁,用于捕获该异常并破坏 容器 直接从套装中移除物品。
一部分派系/市场类模组会自行 敌人界面.延迟更新 在补丁中 敌人界面.显示界面尝试直接强制重新调用以立即刷新HUD。但如果此重新调用针对的是已登出或已销毁的角色,则该角色的HUD条目(HUD)可能仍处于未整理状态,基于此运作的其他模组的 显示HUD 补丁(例:EpicMMOSystem的PvP玩家名称颜色显示补丁
怪物颜色文本因触碰了死者的残影
空引用异常这反复发生。
这个模组的作用不针对EpicMMOSystem或特定模组进行专门补丁,而是英灵神殿基础
显示敌人状态栏对Finalizer设置陷阱 任何模式的后缀里爆开 抓住,问题的老旧 HUD 直接清理项目和剩余的 HUD GameObject。这样下一帧就会正常创建新的项目。
英灵神殿的声音播放组件 ZSFX即使播放结束 完全没有自我消亡的逻辑。.
网络视图附着并通过网络同步的对象会根据自身的生命周期(死亡、消失等)进行清理,但在本地即时播放英灵神殿默认音效的(ZNetScene.GetPrefab +
实例化使用图案的模式在播放结束后也没有人销毁那个对象,所以会在整个会话期间不断堆积。而且英灵神殿本身的 单一更新器.更新()活着 ZSFX
全部 每一帧 由于会循环执行,每个泄漏的对象都会增加永久性的每帧开销——在反复使用音效华丽的法师系技能/武器模组时尤为明显,随着游玩时间增长会越来越卡,最终 资源.卸载未使用资源() 视角有时会导致游戏卡住(重新连接后场景会强制重新加载,暂时会有所改善)。这不是特定模组的问题,而是英灵神殿引擎本身的缺陷。
这个模组的功能: 自定义更新为 Postfix 打上补丁,已播放完毕、非循环播放、且已过初始播放延迟区间,网络视图仅自动销毁没有的实例——绝不触碰通过网络同步的对象。
瓦尔海姆原版·TMP内置字体(例: 瓦尔海姆-预启动, LiberationSans SDF仅覆盖拉丁字符,韩文、日文、中文、阿拉伯文、希伯来文、泰文等非拉丁文字字形未包含在其自身的字形表和回退链中。每当玩家昵称、公会名等用户直接输入的非拉丁文本通过使用此类字体渲染的TMP_Text对象(例如EpicMMOSystem的名牌/公会名/信息面板)显示时,就会反复输出“The character with Unicode value ... was not found in the [...] font asset...”警告,且相应字符会被替换为空格或方块(□)。英灵神殿为其自身的多语言本地化,按文字系统使用了Noto系列字体(思源黑体韩文,
思源黑体, 思源黑体, NotoSansArabic 等11个脚本+表情符号)虽然已经内置在游戏文件中,但尚未连接到供玩家直接输入文本使用的TMP全局回退列表。
这个模组的功能:查找 Valheim 支持的每种语言的字体,每个会话一次将 TMP 的全局回退列表(回退字体资源全部注册到其中。不会捆绑新字体,仅使用瓦尔海姆已有的资源,无论文本来自哪个模组的TMP文本、属于哪种语言,都能正常显示,而不会出现空白或方块。
不是回避(无视),而是清理。 捕获异常的补丁在异常本身第一次发生时仍会照常触发,随后该模组会将其捕获,并真正清除导致问题的损坏状态(字典/集合中的死项)。因此同一个 entry 不会再次崩溃——这并不是仅仅隐藏日志、任由损坏状态继续存在的方式。像 ZSFX 补丁这样处理非异常类资源泄漏的情况,也是直接填补根本原因(缺少自身销毁逻辑),而非只掩盖症状的临时手段。每个补丁只触及目标方法(若不存在则为不做任何事的可选目标),不会修改其他模组的代码。
空引用修复.dll을 BepInEx/plugins/ 复制到文件夹这些虫子无法通过网络同步 本地状态问题因此,服务器和各个客户端可能会各自独立地遇到这种情况。只在一侧安装的话,就只有那一侧会被修复——如果是多人游戏环境的话 所有连接到服务器的客户端建议安装在
空引用修复 是一系列独立的、小型Harmony补丁的集合。其中大多数修复了一个特定的bug,即 空引用异常触发后重复 本次会话剩余的每一帧;有几个补丁修复了资源泄漏的漏洞,这类漏洞会悄无声息地不断累积,直到导致卡顿或游戏冻结。每个补丁的根源和触发条件都各不相同,完全独立触发(或不触发)——取决于你的模组列表,有些补丁可能根本不会生效。
它目前修复了5个错误:
ZNetScene.移除对象)敌人界面 (EpicMMOSystem及类似模组)ZSFX 声音对象泄漏(无自毁逻辑——重复播放时会导致卡顿/冻结)| 模组 | 版本 | 需要 |
|---|---|---|
| BepInExPack_Valheim | 5.4.2200+ | 需要 |
| 阿祖工艺盒 | 任何 | 可选——该补丁仅在已安装时生效 |
| 史诗MMO系统 | 任何 | 可选——另外两个补丁没有它也能正常运行 |
可任意组合安全安装。如果上方某个模组未安装,其对应的补丁只会保持未激活状态;其余部分仍可正常运行。
如果 网络视图游戏对象在同一帧中被其他东西销毁了
ZNetScene.RemoveObjects 尝试清理它时,该方法抛出了一个 空引用异常
在它到达从其内部跟踪字典中删除过期条目的那一行之前(实例)。因为该条目永远不会被移除,所以完全相同的异常会在下一帧再次触发——并且在此后的每一帧、直至会话结束都会如此。
这是原版引擎的行为,不是任何特定模组导致的。即使没有安装任何模组也会发生;游戏越繁忙(更多怪物生成/消失、激烈战斗)只是更频繁地触发底层的竞态条件。
该补丁的作用:添加一个 Harmony 终结者 到 移除网络场景对象 只捕获那个特定异常并移除已销毁的(过期的) 网络视图 来自
实例 直接。
AzuCraftyBoxes保持静态 哈希集合<容器> 它见过的附近每一个制作容器。 容器.销毁时 当一个箱子被拆除时,会通过补丁移除对应条目,但某些销毁路径(例如区域/区块卸载)会直接销毁GameObject而不经过该方法,从而留下一个被Unity销毁的(伪空)引用 容器 坐在片场里。下一次对附近容器进行配方检查时会调用 获取预制体名称() 一进门就扑向死者并抛出
空引用异常 ——制作菜单每多开一帧。
此补丁的作用仅在安装了AzuCraftyBoxes时激活;捕获该异常并移除已销毁的 容器 直接从集合中获取条目。
某些阵营/市场风格的模组会调用 敌人状态栏.显示状态栏 直接来自他们自己的
敌人界面.延迟更新 补丁以强制立即刷新HUD。如果该重入调用针对的角色已经登出或消失,其HUD条目(HUD) 仍可能一直没被清理,而另一个模组的 显示HUD 假定存在活动条目的补丁——例如EpicMMOSystem的PvP玩家名字颜色补丁, 怪物颜色文本 — 解引用已失效的引用并抛出异常 空引用异常 反复地。
这个补丁的作用:而不是针对EpicMMOSystem或任何特定模组,它修补的是原版 敌人界面.显示界面 自身与终结器绑定,从而捕获异常 无论哪个已安装模组的后缀抛出它然后清除过期的 HUD 条目(以及其残留的 HUD GameObject),以便下次调用时重建一个干净的。
《英灵神殿》的音效播放组件, ZSFX,有 完全没有自毁逻辑 播放结束后。被追踪的对象 网络视图 会在自身的生命周期中(死亡、消失等)被清理掉,但任何在本地实例化原版音效的模组(例如
ZNetScene.GetPrefab + 实例化 播放一次性音效)不会留下任何可供销毁的实例——它只会在整个游戏会话期间一直存在。更糟的是,Valheim 自带的 单更新器.更新()
迭代 全部 直播 ZSFX 列出每一帧,因此每个泄漏实例都会增加一项永久的逐帧开销——在那些会反复施放、音效繁重的法师职业技能/武器模组上最为明显,会导致卡顿逐渐加重,最终可能在以下过程中冻结游戏:
Resources.UnloadUnusedAssets() (重新登录会强制重新加载场景并暂时修复该问题)。这是原版引擎的行为,不是任何特定模组导致的。
此补丁的作用:为……添加后缀 自定义更新 在播放完成后仅销毁一次实例,不循环,已过初始播放延迟窗口,且没有
网络视图 ——绝不碰任何可能被网络同步的东西。
原版/TMP内置字体(例如 瓦尔海姆-普尔斯特塔克, LiberationSans SDF)它们只覆盖拉丁字形——韩语、日语、中文、阿拉伯语、希伯来语、泰语及其他非拉丁文字系统都不在其各自的字形表或回退链中。每当玩家自创的非拉丁文本——例如昵称或公会名——通过这些字体之一经由 TMP_Text 对象渲染时(例如 EpicMMOSystem 的名牌/公会名/信息面板对象),Unity 会反复记录“未在 […] 字体资产中找到 Unicode 值为……的字符……”的警告,并将该字符替换为空格或缺失字形方框(□)。Valheim 已为其自身本地化支持的每种非拉丁文字系统随附了 Noto 系列字体资产(思源黑体韩文, 无衬线日文,
思源黑体, 思源阿拉伯体,以及另外 7 个,再加上一套表情符号)都在它自己的游戏文件里,但它们都没有接入 TMP 的备用列表,用于处理玩家任意编写的文本。
本次补丁内容: 查找 Valheim 自带的每种语言字体,并将它们全部注册到 TMP 的全局后备字体列表中 (TMP_Settings.fallbackFontAssets每次会话一次。不捆绑新字体——它复用 Valheim 已自带的资源——并且能修复任何模组在任意上述语言中的 TMP 文本渲染,不仅限于韩语,也不仅限于某一个特定模组。
清理,而非逃避。 对于异常捕获补丁,异常本身仍会触发一次——此模组会捕获那一次异常,然后真正删除导致异常的损坏状态(已失效的字典/集合条目)。同一条目不会再次抛出异常。它不仅仅是隐藏日志而将损坏状态留在原处。ZSFX补丁将同样的理念应用于资源泄漏而非异常:它从真正的根源补全缺失的自毁逻辑,而非仅仅掩盖表面症状。每个补丁只触及自己的目标方法(或者,如果目标不存在,则完全不执行任何操作)——不会修改任何其他模组的代码。
NullReferenceFix.dll 进入 BepInEx/plugins/这些问题是本地状态,不是通过网络同步的——服务器和每个客户端都可能各自遇到。只在一端安装只能修复那一端。在多人游戏中,请在 服务器和每个已连接的客户端 保险起见。
开发者 - 科队长
享受更安静的日志文件!

修改前置工具
2026-09-12 14:33:53
修改前置工具

史诗战利品
randyknapp2026-09-09 21:20:10
为英灵神殿添加战利品掉落、魔法物品和附魔。

制作 建造 熔炼 烹饪 燃料 从容器中取出
aedenthorn2025-06-30 08:34:14
让你在制作、建造、使用熔炉和窑炉、添加燃料、烹饪食物等时,可以使用附近容器中的资源。

种植一切
Advize2025-09-09 11:15:37
重写了bkeyes93的种植增强模组。允许你的种植者种植浆果丛、蓟、蒲公英、蘑菇、此前无法获取的树种以及其他装饰性植物。还包括许多其他杂项功能(详见

无限制传送门
frostedplaything4102023-09-02 17:39:40
无限制传送门是一个客户端模组,允许玩家通过传送门传送任何物品。该模组提供广泛的自定义选项,让玩家能够控制物品限制、移除限制,

农场格子
Sarcenzzz2023-06-14 11:38:34
允许所有通过种植器种下的植物自动对齐并放置在网格中,确保它们有足够的生长空间。

更好的UI
MKMasa2021-04-15 09:19:42
这个模组对游戏界面做了一些细微的调整。你可以编辑并选择想要启用的更新内容。

更好的射箭
Ishid42026-09-10 16:16:51
为弓术玩法添加了许多功能和改动,包括全新的箭袋系统、可回收的箭矢、更精准的瞄准以及逼真的箭矢物理效果。