安卓游戏资源提取抓包教学
时间:2014-12-31 15:37:53来源:k73电玩之家作者:月狂の剑热度:623次
首先声明,本人只是非计算机系的技术渣,使用的工具全部来源于网络,有更好的工具或方法欢迎相互交流,本人也处在学习阶段。
首先声明,本人只是非计算机系的技术渣,使用的工具全部来源于网络,有更好的工具或方法欢迎相互交流,本人也处在学习阶段。
软件:Fiddler(PC端)
下载:百度一下,点第一个就行
其它:安卓设备和PC在同一局域网内
抓包软件还有安卓的SniffDroid和PC端的Wireshark等,不过Fiddler不用安装安卓端,而且不读取TCP等协议,用起来可能比较简单。还有一个原因是Wireshark为了安全起见不能截获和修改数据包,但Fiddler可以,怎么使用这个功能请发挥自己的想象力
用Fiddler的缺点是不稳定,容易断网,我还没找到很好的解决方法……
Fiddler入门看看这个博客还不错,为我提供了很多思路(防度娘抽风,空格自行去掉)
安装好Fiddler后打开,Tools → Fiddler Options,按图中所示把勾打上,重启Fiddler。
最重要的选项是connections选项卡里的Allow remote computers to connect,这样就允许了其它设备把该PC作为代理服务器,利用Fiddler中能够查看HTTP和HTTPS的Request和Response。然后在安卓端进行设置,打开浏览器,地址栏写PC端的IP和你刚才在connections选项卡里设置的端口,点FiddlerRoot certificate安装证书。
再打开设置 → Wi-Fi → 长按出现修改网络 → 显示高级选项 → 代理设置(手动),填上PC端的IP和你设置的端口,保存就OK。用完了一定记得到这里把Wi-Fi设置改回来,不然Fiddler关了你的安卓设备就上不了网了。
打开游戏,按Host排列,可以在左侧看到一大堆api.wonder4world.com,其中在assets目录下面的就是游戏图片啊音乐之类的资源文件,app目录下面是用户账户文件以及所有数据文件。右上方是Request(客户端到服务器的数据),右下方是Response(服务器到客户端的数据),分析主要看右下,修改主要看右上
其实和数据相关的运算都是在服务器上进行的,客户端只提交要用的函数和接收结果,你要有能力去改也不用看这科普了。
assets目录的一些使用方式
目录里的英文应该很容易看懂,Card Frame就是卡片边框,Unit Large是大图,Unit Icon是图标,Unit Full是原图等等,复制一段链接,这个json文件就是原图的列表:
ap i.wonder4 world.c om /assets/AssetBundles/Android/Unit%20Full/bundleControlJSONFile.json
里面可以找到所有原图的命名格式,就是I1000001_full这样,再随便点开一张原图,游戏就下载原图文件,再把链接复制下来:
ap i.wonder4 world.c om /assets/AssetBundles/Android/Unit%20Full/android_I1000001_full.unity3d
就可以通过列表批量下载资源文件了。关于unity3d的解包就不说了,有兴趣搜一下disunity。
app目录的一些使用方式
只说几个关键目录,当然还有其它各种用法
ap i.wonder4 world.c om /app/master/unit/show
只在建立新账号的时候出现,里面有所有的卡牌的所有信息,如名称、对应图片、对话、简介、属性、技能等。
ap i.wonder4 world.c om /app/unit_lottery/101/lineup
ap i.wonder4 world.c om /app/unit_lottery/203/lineup
友情卡池和氪金卡池信息。
ap i.wonder4 world.c om /app/member/quest/mission_start
战斗开始时出现,战斗的相关信息,敌方单位的攻击和HP,甚至爆不爆卡都可以知道(不过这时候你体力已经扣掉了)。
上面写的内容对大部分手游来说的通用的,学了也没什么坏处,希望对大家解资源和写攻略写wiki有帮助。
我要评论查看全部评论(0)>>