首先是提取Assembly-CSharp.dll文件,参见简单Unity 3D游戏加密dll文件提取
然后使用dnSpy找到要修改代码的特征码:

在set上鼠标右键“在十六进制编辑器中显示方法体”,高亮部分就是hex代码,复制出来,对照il指令,查Opcode就可以直接改代码了。
如Mathf.Clamp(value, 0, this.maximumAmmo);中的0中间语言为ldc.i4.0十六进制代码16,gg搜索结果十进制22,改成十进制30就是十六进制1E,就代表ldc.i4.8。
本方法需要在进入游戏前搜索hex特征码,修改的是内存中的Assembly-CSharp.dll文件,登录之后实例化出来的对象就不用再修改了。
本文介绍如何提取并修改Unity3D游戏中的Assembly-CSharp.dll文件。通过使用dnSpy定位特征码,将特定代码从十六进制进行转换和修改,实现游戏参数的调整。该方法适用于游戏启动前对内存中DLL文件的改动。

4985

被折叠的 条评论
为什么被折叠?



