版本2.3
用于修补,更换和装饰的库
.NET和单声道方法在运行时。
关于
Harmony为您提供了一种优雅而高级的方式,可以改变C#编写的应用程序中的功能。它在游戏中效果很好,并且在类似的标题中已建立了很好的确立
•生锈
• Rimworld
• 7天死亡
•明星谷
• subnautica
•不包括氧气
•围攻
•城市:天际线
• Kerbal太空计划
•共鸣
• Battletech
•史莱姆牧场主
还有其他像拉文菲尔德(Ravenfield),庇护所,斯泰斯尔(Staxel
它也用于Microsoft和Google以及其他许多领域的单元测试WPF控件。
它如何工作
如果您在C#中开发并将代码作为模块/插件加载到主机应用程序中,则可以使用Harmony来更改该应用程序的所有可用组件的功能。在其他补丁库只允许您替换原始方法的地方, Harmony更进一步并为您提供:
•一种保持原始方法完整的方法
•在原始方法之前和/或之后执行您的代码
•使用IL代码处理器修改原件
•多个Harmony补丁共存,不要相互冲突
•在运行时工作,不触摸任何文件
安装
如果您想要一个文件,依赖关系合并组件,则应使用LIB。 Harmony Nuget软件包。这是首选的方式。
如果您想自己提供依赖项,则应使用LIB。 Harmony 。您可以获得更多的控制权,但您有责任在运行时提供所有参考。
文档
请查看文档并加入官方的Discord服务器。
贡献
我投入了数千个小时的时间及其支持。因此,每个小动作都会有所帮助:
•成为GitHub赞助商或Patreon
•向此堆叠式拨款答案
•在您的开发人员社区中传播这个词
该项目使用0x0ade和Nike4613的Great Monomod.Core库。
Harmony 1
Harmony 1被弃用,不再是积极发展。 IT的最新版本(v1.2.0.1)是稳定的,仅包含次要错误。如果您处于专门使用Harmony 1的环境中,请继续使用它。当前Harmony 1.x和2.x彼此不兼容,不应混合。旧文档仍然可以在Wiki上找到。
