BepInex Plugin开发教程 02 开发环境准备

一、VisualStudio 安装

虽然有C#基础的读者,这个软件肯定都是有的,不过作为流程,这里还是记录一下安装过程。

首先我们打开VS的官网 https://visualstudio.microsoft.com/ 选择下载最新的社区版(Community),当前是VS2019社区版,社区版是完全免费并且满足开发需求的,所以不需要找别的版本。

下载好之后我们打开安装,这是一个安装器,因为VS可以开发的内容非常多,但是并不是所有内容都是开发者需要的,所以微软使用这种安装器的形式让开发者选择自己需要的模块,如果你不知道如何选择,那这里就跟着我选择 Net桌面开发 和 使用Unity的游戏开发,记得把它自动选中的Unity编辑器去掉,后面我们需要用到Unity的时候,再根据情况选择安装。

等待安装完成,然后重启电脑,使用VS需要一个微软账号,如果没有的话记得注册一个。

二、反编译工具Dnspy

写插件的时候我们经常需要查看游戏的逻辑,Dnspy可以很好的帮助我们完成这部分工作。

下载地址:  https://github.com/0xd4d/dnSpy/releases

这是一个绿色软件,不需要安装,我们下载好之后解压好,在文件夹中找到Dnspy.exe,创建一个快捷方式方便我们以后使用。

三、BepInex安装

这个自然不用多说,我们既然是要开发BepInex插件,那BepInex肯定是要准备好的。

下载地址:  https://github.com/BepInEx/BepInEx/releases

需要注意的是,BepInex这里分为x64和x86版本,分别对应64位的游戏和32位的游戏,我们以《装机模拟器》为例,打开游戏根目录,我们可以看到UnityCrashHandler后面跟着数字64,表明这是64位的游戏,所以我们将64位的BepInex解压缩到游戏根目录,如图所示。

这个时候,打开游戏,BepInex的目录下应该就会生成配置文件了,代表BepInex安装成功。

你可能会疑惑,为什么我们没有运行任何程序,也没有什么注入dll的操作,BepInex就加载成功了?

这其实是因为,应用程序总是会用的系统目录的一些库文件,而程序加载的时候,是先从自己的文件夹内搜索库文件,如果找不到,再去系统目录查找。利用这个原理,BepInex将加载插件的逻辑嵌入到winhttp.dll这个库中,同时不动它原来的其他逻辑。这样,就在保证了原功能不变的情况下,加载了我们的插件。

为了方便我们的开发,我们还需要将BepInex的控制台打开,这样可以让我们随时观察日志输出,方便排错,在BepInex/config文件夹中打开BepInEx.cfg,可以用记事本打开,但是推荐使用VSCode之类的高级文本编辑器,用起来更舒服。在BepInEx.cfg中,我们将[Logging.Console]下的Enabled = false修改为Enabled = true,如图所示。

打开游戏,会发现和游戏一起有一个控制台窗口出现。

发表评论

电子邮件地址不会被公开。必填项已用 * 标注