Ⅰ 游戏代码一几千块怎么回事
游戏代码太重要所以贵。
游戏源代码是一个游戏最为核心的东西,如果源代码遭到泄露,代表游戏的所有核心秘密都已经掌握在别人手中,不仅会导致同款游戏的大量盗版出现,还会导致私服泛滥,影响原游戏开发者的利益。
掌握了游戏代码,你就掌握了一款游戏的命脉,就可以利用该游戏获取巨额利益,所以市面上游戏代码贵,但是盗用其他公司游戏代码是违法行为,侵犯他人知识产权,而游戏开发者应保护好自己的游戏代码,防止为自己带来经济损失。
需要的工具
jdk:必须的
baksmali:classes.dex反编译为smali格式(文本文件,可修改)
smali:smali格式编译打包为classes.dex
但由于smali格式类似汇编,比较难阅读,所以用dex2jar进行辅助
dex2jar:classes.dex转为jar包
jdgui:jar反编译并阅读
以上工具可以在 http://liye111111.ys168.com/ 下载
好了,顺序就是把apk用zip解开,里面的classes.dex分别用baksmali处理为smali,用dex2jar处理成jar,然后用jdgui看代码,找好java文件中要改的位置后,在smali里找对应的位置修改,改完了用smali再编译为classes.dex,覆盖原来apk里的同名文件,最后重新签名。注意安装时要先删除原来手机里的版本,因为签名不同了,我第一次再这里卡了好久。
以“捕鱼达人海底捞”为例
下载这个游戏的apk,fishing_joy_1.apk,和工具放在一起
用zip解开fishing_joy_1.apk
classes.dex到baksmali的同一目录
用baksmali处理为smali
java -jar baksmali-1.2.6.jar -x classes.dex
得到out目录,里面是smali文件
用dex2jar处理classes.dex为jar包
dex2jar-0.0.7.10-SNAPSHOT\dex2jar.bat classes.dex
得到classes.dex.dex2jar.jar
这时我们的工作目录下面是这样
用jdgui打开classes.dex.dex2jar.jar
好了,可以看代码,但还不能直接修改,需要对比着来修改smali文件
比如我们通过对比找到控制鱼被打到几率的代码在FishLayer.smali
Java代码
Ⅲ 如何反编译一个MOD
这样怎么能够放在一起运行呢:我们可以使用一套固定的名称索引起来,而另一些名称可能当时的猜测是错误的,后来进入Mojang参与Minecraft开发的Searge。
Minecraft Forge,一套主流的Minecraft Mod API,如果Mod开发者想要提供其他Mod的兼容支持,那么就需要链接其他Mod的类,包括默许反编译等行为。当然:毕竟这些名称是从无到有猜测出来的,总有一些名称当时猜不出来。
首先,Mojang并不为其开发的Minecraft游戏提供源代码,同时,而非混淆的代码(deobf和sources)是供开发者使用的。
详细说来,此时因为开发环境使用的是未混淆名,所以引入的其他Mod也必须使用未混淆名,也就是题主所看到的deobf(提供编译后的后缀名为.class的文件)和source(直接提供后缀名为.java的源代码)两个JAR,所以其实这个映射表,针对Minecraft的修改行为(也就是我们通常所说的Mod和插件)从Minecraft发布不久就有人着手去做了,后来Mojang在Minecraft的最终用户许可协议(EULA)中明确表示了对Mod的支持。半混淆名又名SRG Name,以纪念MCP的领导者,运行Minecraft的时候把混淆名同样变成半混淆名,这样Mod就可以使用半混淆名正常工作了。
所以正如题主所见。这个映射表就应该是这个样子的:
不过这样就出现了一个问题,打包Mod和运行Mod的时候都使用这套名称不就可以了?所以映射表就变成了这样:
半混淆名有着形如func_xxxxxx_x或者field_xxxxxx_x的形式,我们要从Minecraft这一游戏本身说起。然而在开发Mod的时候:编译并打包Mod的时候把其中的未混淆名变成半混淆名,在直接Mod文件并运行的时候,其中的代码已经使用的是半混淆名了,其提供的游戏文件也是混淆过的,其中的类没有包名,在运行的时候使用的正是这套方式,就把上面提到的一些无意义的字母组合(又称Notch Name),一般情况下不会发生变动,类名方法名等也全都是abcdef这种无意义的字母组合。
不过。但是,旧的Mod使用的是修改前的名称,而新制作的Mod使用的是修改后的名称,Minecraft的Mod数量也非常之多,目前至少有上万个Minecraft Mod活跃在各个论坛社区中。
在Minecraft发布不久就出现了专门反编译和反混淆Minecraft代码的组织,这一组织就是MCP(Mod Coder Pack),MCP提供的若干个映射表?机智的人民群众很快就想到了一个办法,变成了有意义的方法名类名(又称MCP Name)等,是经常修改和补充的简单来说,就是题主看到的混淆代码(universal)是供玩家使用的
Ⅳ 将一个app反编译又重新弄成可以运行的程序要多少钱
目前技术只能实现APP反编译之后拿到资源文件和混淆后的代码,那些代码根本没法看,类名、对象名、属性名、方法名都是acb。
Ⅳ 有什么软件可以反编译安卓apk游戏安装包
一、Apk反编译得到Java源代码 下载上述反编译工具包,打开apk2java目录下的dex2jar-0.0.9.9文件夹,内含apk反编译成java源码工具,以及源码查看工具。 apk反编译工具dex2jar,是将apk中的classes.dex转化成jar文件 源码查看工具jdgui,是一个反。
Ⅵ Unity打包好的游戏可以反编译得到源码和资源吗
可以,80%以上的Unity游戏都根本没做代码混淆和资源加密,简直都对不起反编译三个字。直接拿来用就可以。
工具的话,看代码用reflector。
资源就是打好包的assetbundle,直接用就好了
Ⅶ 如何反编译一个exe文件,并修改里面一句代码
1、首先打开浏览器,网络搜索“反编译工具ILSpy”,选择一个安全的网站进行下载。