本帖最后由 Free-Man 于 2014-11-23 02:26 编辑
使用到的工具
ApkIDE
.NET Reflector
怎么判定它是Unity游戏呢
一般的路径格式是这样的assets\bin\Data\Managed
[如果是个Unity游戏 却找不到dll文件 那么 骚年放弃吧。。。
一般情况下都是修改上图的这个dll文件 [如果想要搜索的东西不在这个dll文件 可借用notepad++辅助搜索 来判断对哪个dll文件进行修改
以RunningMan这款游戏为例来作以下分析:
内购破解部分就不讲了,因为下面将要修改的比内购的要来的痛快
用ApkIDE反编译之后 找到dll文件 就是上图的那个文件 用.NET Reflector打开 .NET Reflector工具的基本使用方法 在论坛里找Dawn老湿的unity教程 在手机上试玩了下这个游戏 游戏人物居然把女神宋智孝 画的那么抽象 真是太刺激了。。。。
金币-Coin、钻石-Gem、生命-Hp 那么着重修改这三个值吧 金币修改: 按下F3搜索,切换到方法搜索 搜到的内容这么多 改哪个呢, 容我百度翻译几分钟 红色部分是我现在要修改的 蓝色框选到的应该也是能够修改的 我就只拿红色框选的作修改吧 修改方法是一样的 有兴趣的童鞋也可以把蓝色框选的尝试修改修改~
看Declaring Type那列的 暂且理解为游戏数据统计 ,那么综合前面的get_coins可以猜测成游戏金币的统计 动手修改试试吧
双击进入, Toolsàreflexilv1.6 删掉引用的ldfld代码 即第二行
然后修改第一行 看到左边的get_coins():Int32 这个是int32 类型的值,所以OpCade对应选择的是ldc.i4 保留ret是为了 从当前方法返回,并将返回值(如果存在)从调用方的计算堆栈推送到被调用方的计算堆栈上。
点击Upadate 确认修改 保存Dll文件用IDE编译出来apk 看看效果
蛋痛。。。。。
改掉的是每跑一局都会固定获得999999999金币和其他额外金币
好吧,不要在意这些细节 也算是达到金币用不完的目的了。。。
钻石修改:
GemCount 钻石总数
同样的方法进行修改 ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- 点击Update确定修改,保存dll,在用IDE编译出来 测试效果。
钻石也修改好了 那么有兴趣的童鞋可以自己尝试着修改人物的血量 我这里就不操作了 自己练练手吧~
|