焦油游泳虫修复

创作者: sighsorry
已更新:2026-04-29 15:41:27
159KB

关于此 MOD

修复了游泳与焦油状态残留、LiquidVolume 生命周期、ZNetScene 清理、Character 与 StatusEffect 销毁、EnemyHud 清理,以及可选的 MagicPlugin 投射物、传送、注册表和外观 ZDO 问题。

被炸的游泳的涂焦油的漏洞修复


针对陈旧液体状态、场景与角色生命周期清理、可选的MagicPlugin互操作性以及F2玩家列表中的韩文名称的防御性运行时修复。

当前源目标为英灵神殿 1.0.12使用原始1.0.12游戏程序集构建;它不包含旧版游戏的兼容路径。

修复内容

  • 在远离水域的地方随机游泳。
  • 离开平原焦油坑后随机进入沾焦油状态。
  • 传送门、地下城或场景切换时遗留旧的液体状态。
  • 推车或漂浮物在触发退出失败后仍保持水/焦油状态。
  • 无条件处置未分配 液体体积 射线检测数组。
  • 场景清理失败:目标缺失、已销毁或不匹配 网络视图 数据。
  • 状态的开始效果格式错误,打断了角色的销毁流程。
  • 角色注册表和敌人界面条目在未完全销毁后仍存在。
  • 魔法插件投射物补丁重复注册配置处理器。
  • 魔法插件召唤传送与角色注册补丁读取已销毁或不完整的对象。
  • 魔法插件:火焰、雷电与极地法杖发射外观、雷电/极地投射物命中效果,以及共享冰块破坏时生成短暂的由对等端拥有的ZDO。
  • 魔法插件冰霜权杖新星光环留下的装饰性网络对象缺少销毁路径。
  • 韩文角色名在F2玩家列表中显示为缺失字形,因为其所分配的TMP字体不包含韩文。

运作方式

液体与场景保护

  • 当来源不再与目标重叠时,拒绝过时的正向液体更新。
  • 从以下位置移除过期条目 水体体积 和 液面 在漂浮物更新之前。
  • 钳制水/焦油计数器,使遗漏的出口不会使其降至零以下。
  • 仅当没有当前液体触发器与目标重叠时,才清除清除状态。
  • 传送成功开始后清除玩家的液体状态。
  • 守卫 液体体积 射线检测数组销毁方式 已创建. Valheim 1.0.7 和 1.0.12 已使用 持久分配器,因此他们的分配代码保持原样。
  • 清除无效或不匹配的 网络场景 条目引用已销毁视图时不会解引用。

角色生命周期保护

  • 安全移除缺失或无效的StatusEffect起始效果 网络同步组件 组件。
  • 修复角色注册表和敌人界面记录时 角色.销毁时 不完整或会抛出异常。
  • 在场景销毁后,Prunes 追踪了生物移除状态。

可选魔法插件互操作性

当安装MagicPlugin后,每个兼容修复仅在其预期类型、方法、字段、Harmony补丁和外观预制体图均通过验证后才会独立启用:

  • 替换受影响的 攻击.发射连射弹 以受保护的实现作为前缀。
  • 仅当玩家传送成功后,才可进行有效移动和后续召唤。
  • 在MagicPlugin读取全局注册表之前移除已销毁的角色。
  • 在 MagicPlugin 2.1.9 及更高版本中,每个场景对每个受支持的预制体图探测一次,并且仅启用其完整抑制/重放结构仍然匹配的外观路径。
  • 在本地重放兼容的火焰/雷电/寒冰发射与命中特效时,保持游戏玩法投射物、新星范围伤害和寒冰方块同步联网。
  • 为现有的法杖投射物ZDO添加标签,使共享这些投射物预制件的火焰和闪电法杖不会获得仅限法杖的发射效果。
  • 在本地根据网络同步的冰霜权杖新星范围效果播放冰霜权杖新星光环,并赋予每个光环与该范围效果相同的显式存活时间。

Valheim 1.0.7 和 1.0.12 中带有明确手柄接收者的效果会保留其原始网络对象,从而保留接收者元数据。仅在地形上停止的穿透投射物也会保留其原始命中效果路径,因为中间命中不会发送外观回放所需的完成 RPC。

当前的契约检查也已针对MagicPlugin 2.2.0进行了验证。MagicPlugin是可选的,不是Thunderstore包的依赖项。

F2 玩家列表字体兼容性

  • 准备实际F2 连接面板 输入名称模板 开始,在其玩家行创建之前。名称过滤、玩家身份和网络状态保留在原版代码中。
  • 添加瓦尔海姆内置的动态 NotoSansKR-Regular SDF 字体位于现有回退字体之后。TMP 在渲染期间生成缺失字形;拉丁文本保留其源字体。
  • 该回退同样适用于共享该源字体的其他标签。不会克隆或销毁任何字体资源、材质或图集,也不会安装额外的逐帧钩子。
  • 跳过无头图形路径,并在卸载时移除自身的回退条目,同时保留其他模组对活动回退表的更改。

自动适配

  • MyPitsDontLeak禁用集成的 液体体积 处置卫兵。
  • 景观会禁用集成场景清理模块。
  • 当预期的插件或补丁结构不存在时,MagicPlugin 支持将保持未激活状态。
  • 低于2.1.9版本的MagicPlugin,以及未来版本中未能通过验证的个别外观图形,将保留其原有的外观ZDO行为。

配置

[同步] LockConfiguration = true [液体] Enabled = true BoundsPadding = 0.75

仅同步液体设置。角色生命周期与兼容性模块为自动运行,没有配置开关。

1.2.0 配置布局不会从旧布局迁移。删除 BepInEx/config/sighsorry.blastedswimmingtarredbugfix.cfg 如果你想删除过时条目并重新生成一份干净的文件,可以执行一次。

建筑

该插件面向 netstandard2.1 并使用 C# 12。基于 Valheim 托管程序集和 BepInEx 核心文件进行构建,使用 瓦尔海姆受控 和 BepInEx核心; 该项目还会检测默认的Windows Steam路径。内嵌的ServerSync副本包含1.0.7 所有人 持续修复;其来源和复现说明位于 库/README.md.

若要在 Windows 上进行开发,请运行 dotnet build -c Debug -p:DeployToGame=true服务器同步合并成功后,最终DLL文件会被复制到默认的Steam Valheim BepInEx/plugins 文件夹。使用 部署到游戏=false 跳过复制,或设置 瓦尔海姆插件目录 覆盖目标位置。

对于明确请求的发布, dotnet build -c Release 将 ServerSync 合并到插件中并创建 Thunderstore/BlastedSwimmingTarredBugFix-<version>.zip打包的清单版本来自生成的程序集,并且必须在其中具有匹配的行 Thunderstore/变更日志.md。版本同步仅更新以下位置的暂存副本 对象/;它不会重写 Thunderstore/manifest.json如果Mod发布管理器监视该文件夹并启用了自动发布,创建发布ZIP文件后即可将其上传至项目选定的网站。

制作人员

GitHub

https://github.com/sighsorry1029/BlastedSwimmingTarredBugFix

Valheim: 英灵神殿 的热门 MOD

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

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