[戴森球计划Mod制作教学]2.新建项目及HelloWrold
2023-06-12 22:40 作者:知世就是力量_or_1 | 我要投稿

- 类库 .NetFramework 文件
- up主教的的项目命名是配方自定义(但是看到最后其实并没有讲那么大的主题。实际主题是怎么加载自定义的mod。让游戏加载自定义的mod,mod功能是控制台打hello world的日志)。
- 命名空间下默认的类名可以自己改一下更具备业务意义的名字。
- 项目-右键-属性-生成事件-生成后事件。
这一步的核心目的是,利用cmd脚本在生成dll文件后杀死游戏,然后复制新生成的mod到游戏的mod目录下。然后重新启动游戏,方便进行测试。具体脚本的执行如下:
- 杀死戴森球进程
- 游戏目录下的Plugins下创建mod文件夹
- 强制删除之前生成的mod dll文件。
- 复制新生成后的mod dll文件到Pulgins目录下。
- 启动戴森球游戏。
taskkill /f /im DSPGAME.exe
mkdir "F:\SteamLibrary\steamapps\common\Dyson Sphere Program\BepInEx\plugins\$(ProjectName)"
del /q "F:\SteamLibrary\steamapps\common\Dyson Sphere Program\BepInEx\plugins\$(ProjectName)\$(TargetFileName)"
copy "$(TargetPath)" "F:\SteamLibrary\steamapps\common\Dyson Sphere Program\BepInEx\plugins\$(ProjectName)\$(TargetFileName)"
start steam://rungameid/1366540
visual studi 引用导入游戏的dll文件(可能存在拼写错误或者下划线和减号混用)。
- assembly-csharp.dll
- unity-engine.dll
- unity-engine-core.dll
以及引入mod框架的
- bepinex/core/bepinex.dll
- 0harmony.dll
复制本地可以设为False(节约一点空间)
定义GUID,NAME,

继承BaseUnityPlugin
常用的是
- Start();
- Update();
- OnGUI
Unity生命周期。
修改配置文件bepinex/config/bepinex.cfg,开启日志的控制台输出。