CSharpLoader
黑神话悟空使用USharp作为脚本引擎,很多逻辑使用C#实现,提供接口给UE使用,而一些内部接口不能通过UE c++/lua访问。
这个mod加载器可以加载c#写的mod。C# mod可以调用USharp端提供的api,包括游戏内部的和C#包装的UE引擎的接口,也可以往游戏内部的事件和委托增加回调。
使用说明
mod的dll需要放在
BlackMythWukong\b1\Binaries\Win64\CSharpLoader\Mods\<ModName>\<ModName>.dll
例如
BlackMythWukong\b1\Binaries\Win64\CSharpLoader\Mods\CSharpExample\CSharpExample.dll
配置文件 CSharpLoader/b1cs.ini
Develop: 开启开发模式,可以按ctrl+f5重新加载C# mods
Console: 显示控制台窗口,打印log
EnableJit: 开启jit模式
注意
C# loader 0.0.7之后的版本为了支持C# patch/hook,把游戏的mono运行时的运行模式从默认的解释执行模式,改成了jit(运行时编译执行)模式。jit一定程度上可能会带来一些性能提升,但可能并未经过游戏开发商的充分测试,可能会对游戏的稳定性带来一些影响。同时由于修改了游戏的底层执行代码,目前与一些修改器不兼容,包括风灵月影在内的一些修改器会失效,请根据你使用的mod的说明,决定是否使用支持hook的C# loader。
与其他插件的兼容
version.dll是常用的插件名字,如果你使用了其他有名称冲突的插件,可以把这些插件的dll,改成除version.dll外的其他名字(后缀得是.dll),放到CSharpLoader/Plugins/目录里,C# loader会一起加载这些插件
如果你想了解如何用C# 开发黑神话悟空的mod,可以看这里:
https://github.com/czastack/B1CSharpLoader/
感谢禽兽-云轩等mod作者的使用和反馈,帮助完善了这个C# loader,期待他们做出的优秀mod.
也感谢之前我修改器的用户们的使用和赞助,C# loader最开始在修改器上实验,并逐渐完善。
作者:chenstack
