BepInEx 安装上手:把插件框架装进你的 Unity 游戏
【免费下载链接】BepInExUnity / XNA game patcher and plugin framework项目地址: https://gitcode.com/GitHub_Trending/be/BepInEx
BepInEx 是一个面向 Unity 和 .NET 游戏的插件加载框架,装进游戏后,你把下载的模组 dll 放进指定目录就能让游戏多出功能,不用自己碰任何代码。它同时覆盖 Unity Mono、IL2CPP 和 .NET(XNA、FNA、MonoGame 等)游戏,但目前只有 Unity Mono 有稳定发布版。如果你玩的是 Unity Mono 游戏、想给游戏加模组,这篇就是给你看的;如果你的游戏是 IL2CPP 或 .NET 平台,先往下读两分钟再决定要不要折腾。
🧰 动手前先备齐这几样
如果下面任何一项你还没确认,先停一下:
- 找到游戏根目录——框架文件最终要放在这里,通常是 Steam 游戏目录
steamapps/common/游戏名下。 - 备份存档和配置——模组会修改游戏行为,进度和配置先复制一份,出问题可以还原。
- 确认游戏类型——Unity Mono 版本稳定;IL2CPP 和 .NET 版本属于实验性质,非官方推荐。
- 预留一点磁盘空间并留意杀毒软件——框架会在启动时往游戏目录写入文件,个别杀毒软件会拦截 dll 加载,建议把游戏目录加进白名单。
游戏类型和版本的对应关系:
| 游戏类型 | 对应版本 | 状态 |
|---|---|---|
| Unity Mono | BepInEx 5.4.x | 稳定,官方推荐 |
| Unity IL2CPP | 开发版 | 实验性 |
| .NET / XNA | 开发版 | 实验性 |
📦 把框架放进游戏目录
你要达到的结果是:下次启动游戏时,BepInEx 先于游戏本体运行,并在游戏根目录建好自己的文件夹。
去官方发布页面下载与你游戏类型匹配的 zip 包。解压前先在文件管理器里定位游戏根目录——判断标准很简单:游戏可执行文件和游戏名_Data文件夹在哪,哪就是根目录。
接下来最关键的来了,也是新手最容易翻车的一步。⚠️ 常见错误是把整个 zip 解完又套了一层文件夹,形成BepInEx/BepInEx/的嵌套结构,框架会直接找不到核心文件。正确做法是:解压后,让BepInEx/文件夹和doorstop_config.ini直接位于游戏根目录,和可执行文件同级。
解压完成长这样:
游戏根目录/ ├── 游戏.exe ├── 游戏名_Data/ ├── doorstop_config.ini └── BepInEx/ ├── core/ ├── plugins/ ├── patchers/ └── config/到这里可以先跑一次看看。启动游戏,首次会比平时慢一些,框架在做初始化。完成后去游戏根目录找两个东西:BepInEx/LogOutput.log日志文件和自动生成的BepInEx/config/目录(里面有BepInEx.cfg)。这两样都出现了,说明框架已经在游戏里接管启动流程了——到这里其实已经能跑了。
🔌 用起来之后
加插件:插件就是一个 dll,从模组社区下载后放进BepInEx/plugins/,重启游戏即可生效;需要修改游戏代码的补丁类插件放BepInEx/patchers/。加载器按文件名字典序加载插件,想控制先后,给 dll 加数字前缀就行,比如00-base.dll先于10-ui.dll加载。
不工作的第一反应:第一动作永远是打开BepInEx/LogOutput.log,搜 "Error" 和 "Exception",答案十有八九在上下文里。如果游戏根本进不去,先看门挡有没有生效——检查根目录的doorstop_config.ini还在不在、有没有被杀毒隔离,再看日志里最后一条错误。如果游戏能进但插件没反应,先确认 dll 确实躺在plugins/里,再去日志找这个插件的加载记录,日志里压根没有它的名字,多半是路径或命名问题。
想深入:源码按模块分得很清楚,插件入口契约在BepInEx.Core/Contract/,配置系统在BepInEx.Core/Configuration/,Unity 侧的加载逻辑在Runtimes/Unity/,从这几处读起就能看懂框架在干什么。
装好之后,顺手把游戏进度再备份一次;接下来十分钟,随便挑一个轻量的功能插件丢进plugins/跑起来,日志正常、功能生效,你就毕业了。
【免费下载链接】BepInExUnity / XNA game patcher and plugin framework项目地址: https://gitcode.com/GitHub_Trending/be/BepInEx
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考