模组拦截器

创作者: Ashr4f
已更新:2026-07-16 04:49:55
38KB

关于此 MOD

预加载补丁器,阻止黑名单中的模组加载。允许整合包维护者通过一行配置更新,远程为所有玩家禁用某个模组。

模组拦截器

来源与问题: https://github.com/Ashr4f/ModBlocker

一个用于《英灵神殿》(以及其他 BepInEx 游戏)的 BepInEx 5 预加载器补丁程序,它可以 阻止列入黑名单的模组加载 ——无需卸载它们。

为什么?

模组包维护者无法 移除 来自玩家机器的模组:更新整合包会安装新依赖项,但从不卸载被移除的依赖项。ModBlocker 解决了这个问题。将其连同配置文件一起放入你的整合包中,在下一次整合包更新时,为所有玩家移除某个模组只需修改一行配置即可。

工作原理

游戏启动时——在BepInEx链式加载器扫描插件之前——ModBlocker会读取 BepInEx/配置/modblocker.cfg 并将黑名单模组的DLL重命名为 .dll.已阻止被阻止的模组对游戏而言根本不存在。移除条目后,DLL会在下次启动时恢复。任何内容都不会被删除。

配置: BepInEx/config/modblocker.cfg

逗号分隔的条目。支持两种格式,匹配不区分大小写:

[Blocklist] Mods = SomeAuthor-SomeMod, SomeOldPlugin.dll

在游戏内编辑

同伴插件 模组拦截界面 在配置管理器窗口(F1)中将阻止列表显示为文本字段。更改会立即保存并应用于 下一次发射 (阻塞发生在插件加载之前,这是有意设计的)。

每次屏蔽/重新启用的操作记录都会写入 BepInEx/ModBlocker.log.

服务器强制措施(v1.3+)

在服务器(或游戏内主机)以及所有客户端上安装 ModBlocker:

  • 那个 服务器的黑名单会被推送到每个连接的客户端 (服务器同步, 锁定配置 = true)并应用于他们的 下一次发射.
  • 玩家 未安装ModBlocker的玩家会被踢出 连接时(需要模组),就像AzuAntiCheat为其白名单所做的那样。
  • 服务器值不会覆盖客户端的本地值 模组拦截器.cfg;它们被镜像到 模组拦截器.服务器 并在启动时由预加载器合并。

服务器同步嵌入自 blaxxun的ServerSync ——一切归功于blaxxun。

安全网

  • 核心保护BepInEx 和 Jotunn 永远不会被屏蔽——针对它们的条目会被拒绝并记录。
  • 层叠阻挡:如果你屏蔽了其他模组所依赖的模组,那些依赖它的模组将会 也被自动屏蔽了,递归地(2、3、5个模组——整条链)。每次级联都会记录为 同时被阻挡:X(取决于Y)移除原始条目后,下次启动时将恢复整个链条。
  • 自我保护针对 ModBlocker 自身组件的条目将被忽略。

警告

  • 屏蔽一个被其他模组依赖的模组,也会连带屏蔽其依赖项(参见上方的级联关系)——请检查 BepInEx/ModBlocker.log 查看完整连锁。
  • 屏蔽内容模组(物品/生物)对现有世界的影响与卸载模组相同:被屏蔽期间其对象将会缺失。

从源代码构建

cd src dotnet build -c Release

补丁程序: dotnet build src → src/bin/Release/net472/ModBlocker.dll → BepInEx/补丁器/ 插件: dotnet build src/Plugin → src/Plugin/bin/Release/net472/ModBlockerUI.dll → BepInEx/plugins/

常见问题

格挡会删除任何东西吗? 不。DLL 被重命名为 被格挡,永不删除。移除条目后,它们会在下次启动时恢复。

它能挡住自己吗? 不——针对 ModBlocker 自身组件的条目会被忽略并记录日志。

它在英灵神殿之外能用吗? 它应该适用于任何 BepInEx 5 游戏,但仅在 Valheim 上测试过。

贡献

欢迎提交问题和拉取请求。每次推送时,CI 都会构建 DLL 并打包好可直接上传的 Thunderstore 包(见 Actions 构件)。推送一个 vX.Y.Z 标签会创建一个GitHub Release并附带该包。

许可

麻省理工学院 — © 2026 Ashraf

Valheim: 英灵神殿 的热门 MOD

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

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