破解Unity3D游戏“滑雪大冒险”内购
本帖最后由 lushihao 于 2019-2-12 17:44 编辑今天看了夜步诚的帖子:《破解Unity3D游戏“滑雪大冒险”金币方法(非内购法)<详细>》https://www.52pojie.cn/thread-859885-1-2.html
然后跟着教程做了一下,实现了他的效果。后面按照他的操作方式,尝试着也把内购给做了。在此表示感谢{:1_892:}
1.首先下载原版的滑雪大冒险,还有dnspy, androidkiller,然后解压apk,将assets\bin\Data\Managed\Assembly-CSharp.dll拖到dnspy里面打开
2.然后按快捷键或者ctr+shift+k或者点击菜单里面的搜索程序集
3.搜索paysuccess,然后双击搜到的内容,可以看到这个枚举里面包含支付的各种结果,有支付取消,支付成功,支付失败等
4.然后我们右击他,在右键菜单里面选择“分析”,看他在哪里被使用了
5.我们选择一个看起来像是支付相关的回调函数payment*.Callback()
6.我们看到这确实是应该支付后的回调函数,这里判断resultCode是否等于1,然后进行相关的业务处理
7.然后我们点击这个函数,查看他在哪里被调用,这时候我们跳转到另一个函数,可以看到,resultCode使用的是num2这个变量
8.这时候我们在这个方法里面,右击,选择编辑方法
9.然后我们在他进行各种判断得出num2的值后面,把num2写死成1,也就无论前面怎么样,都是支付成功,然后编译,保存模块
10.最后就是打包和签名了,打包前要把原来那个签名的文件夹删掉(没删掉可能安装不了),我用的是androidkiller签名
11.这时候进游戏,就能购买商店里面的东西,点击购买然后返回就成功了,但是两个冲刺道具买不了,不过可能买金币送这两个道具。
其实我也是找了一段时间才能找到关键修改的地方,主要是我第一次使用这些工具,第一次不是按教程来,经验上有点匮乏,而且打印的日志好像还有签名什么的没搞?
需要注意的是,因为只修改了一行代码,后面的支付代码还是正常的,如果你真的一路支付下去,是真的可能被扣费的,切记!
原版和破解版的滑雪大冒险
链接:https://pan.baidu.com/s/1O2VZkrT-p285ns52pdxkEg
提取码:bfwi
edwinchang 发表于 2019-2-13 11:33
楼主好强~ 目前看到不用 幸运破机器或 Xpose 破解的高手
楼主请问下 您能 破解这个大型游戏 王国纪元 内 ...
看了下这个用mono加密了比较麻烦点 AcsZeg 发表于 2019-5-7 18:19
看了下这个用mono加密了比较麻烦点
加油当作挑战~ 以前我破解过一次之后更新了。
我就不会了。
希望楼主慢慢研究 感谢您分享专业知识{:1_893:} 有傻瓜的吗?。。我是小白看不懂。 感谢分享 感谢分析 我小白看不懂,还是支持了 感谢楼主 谢谢分享,谢谢 欢迎分析讨论交流 欢迎分析讨论交流 谢谢分享,谢谢分析