手机游戏修改教程

上传人:kms****20 文档编号:40551184 上传时间:2018-05-26 格式:DOC 页数:15 大小:46.50KB
返回 下载 相关 举报
手机游戏修改教程_第1页
第1页 / 共15页
手机游戏修改教程_第2页
第2页 / 共15页
手机游戏修改教程_第3页
第3页 / 共15页
手机游戏修改教程_第4页
第4页 / 共15页
手机游戏修改教程_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《手机游戏修改教程》由会员分享,可在线阅读,更多相关《手机游戏修改教程(15页珍藏版)》请在金锄头文库上搜索。

1、手机游戏修改教程手机游戏修改教程手机游戏修改教程-让所有的游戏在你的手机上完美的运行大家有没有过这样的经历:当你在别人那里看到一个好玩的游戏,兴冲冲地下载到自己的手机上时,结果发现原本漂亮的界面变得乱七八糟,应该显示的文字也显示不出来;还有的游戏虽然显示没有问题,但游戏里的按键定义却和自己的手机不一样,没办法进行正常的操作。确实,由于目前各大手机生产厂商的 JAVA 系统标准没有统一,导致了手机游戏开发公司在设计手机游戏时,需要针对不同的手机做出不同的版本,所以我们把这些游戏直接传到型号不相符的手机上时,当然就不能正常运行了。目前,NOKIA 手机的市场占有量全球第一,而且 NOKIA 对手机

2、游戏开发公司的支持也很全面,所以大家平常见到的绝大多数手机游戏都是为 NOKIA 手机量身定做的,几乎每出来一款新游戏,第一个版本肯定是 NOKIA 版的。那其它的手机用户怎么才能玩上精彩的游戏呢?手机不仅仅是用来玩游戏的,我们不可能为了游戏就把我们的手机换成 NOKIA。其实,我们大可不必眼红 NOKIA 手机用户,他们众多的游戏资源我们完全可以拿过来,经过修改,就能为我们为其他手机所用了。因为我用的是阿尔卡特的机子,这里就用阿卡的 ot735i 做例子对于修改来说,首先要备齐工具,这里推荐 winhex(16 位进制编辑器)ultraedit, 小颖 Java 源代码反编译专家,当然还有你

3、的手机所对应的模拟器,至于 java 环境一类的你也可以选装,因为阿尔卡特的模拟器不需要,我也就没有装。还有一个 IDA-Pro,这个是java 的必备软件,遇到一些复杂的游戏需要分析的时候就有很大的用处了,因为这个软件在修改的时候可以对比着 16 位进制的数据查看数据所对应的源代码。不过在手机修改上我们只需用到它的这个功能。好了,我们步入正题。首先,我们先来看看一般情况下的全屏解决的问题,对于阿尔卡特ot735i 的手机来说,受着黑条的痛苦很久了(什么是黑条?就是游戏时屏幕下方的黑黑的一条,moto c650 等一些机子也有这种情况,对此,可以直接用 fulljava 1.5 来处理,735

4、i 注意调成128*128 的哦-当然这个方法只能解决一般的屏幕的问题,不过这种方法已经可以解决目前 90%以上的游戏的屏幕问题了。而那些特殊的游戏主要是在游戏源代码里锁死了,需要修改源程序才可以而且修改的方法异常的复杂,不过这些游戏一般都集中在特定的手机型号上,我发现的主要是在游戏公司为 moto 开发的部分游戏上,这里我们研究的是如何让 nokia 的游戏完美的转化为其他手机的游戏,所以就不多谈了。然后,我们再来看看关于中文字体的显示问题,这点在于 735i 和三星 x108/x608 中尤为明显。对了,关于字体,主要是游戏调用了小号字体的缘故,而 735i 和三星用的是中号字体,而且无法

5、和 moto一样自动调用中号字体,所以一般的中文游戏都没有任何显示在修改时,一般就针对于 getfont(0,0,8)就可以了,那些使用getfont(0,0,16),getfont(32,0,8)一类的游戏大致也差不多主要的差异也就是在 16 位进制的转换上有所不同在开始时,打开游戏 jar 文件,从第一个 class 文件开始,挨个打开,在里面查找 getfont 或者 getfong(0,0,8),在找到后,看一下getfont 的位置,大概记一下,改完后在来看看有些什么变化,注意,多看看程序的习惯要养成!_之后把有 getfont 的 class 拉到 jar 文件之外,用 winhe

6、x 打开,在搜索中点击查找 16 位进制数,一般情况下(getfont(o,o,8)时)输入 03031008b8(其他的也只是改了最后的数字 8,自己也可以推一下) ,将其改为 03031000b8 即可,之后看一下程序,和之前的对比一下不同,然后就传回 jar 文件,之后用模拟器试一下就行了。相应的比如 getfont(0,1,16)所对应的值是 03041010b8,而需要改成的值是 03041000b8.大家可能看着这些数据有点糊涂了吧,没事,这里我为大家详细解释一下:现在游戏主要是用的 getfont(*,*,*),这三个*分别对应外观,样式,大小1。外观参数有三种:A。定宽字体外观

7、。对应数值 32B。比例字体外观。对应数值 64C。系统字体外观。对应数值 02。样式参数共四种:A。常规样式常数。对应数值 0B。加粗样式常数。对应数值 1C。倾斜样式常数。对应数值 2D。加下划线样式常数。对应数值 43。大小常数共三种:A。大号字体,对应 16B。中号字体,对应 0C。小号字体,对应 8之后我们再来看看按键的修改,这个是很重要的哦,因为一般我们用 fulljava 改后的游戏虽然可以运行,但是却无法正常的操作,这个让很多人非常的痛苦,其实这个只是游戏游戏中相应的指令的调用的按键不同而已,我们只需要将按键值修改一下就好了。一般情况下,按键的修改方法都是大同小异的,在我改过的

8、游戏中一般遇到的有 if 和 case 情况,这两种情况呢,又以 if 较为简单,他不用太多的东西就可以轻松实现,所以也是我们最喜欢碰到的情况,呵呵,关于 if 语句,主要方法和改字体一样,搜索查找,用winhex 修改,不过对应的就是 faa0 和 f9a0 了,将其修改为所对应的按键就行了,为什么是 fa,f9 呢?大家往下看:阿尔卡特 557/556moto c 系列 诺基亚: 阿尔卡特 ot735i moto v300 以后的机型按键 键值 16 进制值 按键 键值 16 进制值 按键 键值 16 进制值 键名左软键 -21 EB 左软键 -6 FA 左软键 21 15 soft1右软

9、键 -22 EA 右软键 -7 F9 右软键 22 16 soft2上方向键 -1 FF 上方向键 -1 FF 上方向键 1 01 up左方向键 -2 FE 左方向键 -3 FD 左方向键 2 02 left下方向键 -6 FA 下方向键 -2 FE 下方向键 6 06 down右方向键 -5 FB 右方向键 -4 FC 右方向键 5 05 rightaction(735i)/ok: 20 14 select 其他的数字键手机上都一样,具体如下:按键 键值 16 进制值 键名0 键 48 30 num01 键 49 31 num12 键 50 32 num23 键 51 33 num34 键

10、52 34 num45 键 53 35 num56 键 54 36 num67 键 55 37 num78 键 56 38 num89 键 57 39 num9*键 42 2A star#键 35 23 pound大家只需将查到的键改为想要的就行了,而我们一般只要改左右的软键就行了,所以一般都先搜索 fa a0 ,这个语句反过来就是表示if i= = -6 的意思,大家看程序就是看这个!当然要 s40 的游戏才是这样的,如果改其他按键,只要替换相应的代码就行了,比如我要把 moto 的游戏的左软键改为 735i 的,在 class 中搜-21 或者 keypressed(调用按键的命令) ,找

11、到后,用 winhex 查 eba0,然后替换成 15ao 就行了这里,我在说说 case 的一般的修改方法,case 是比较复杂的,特别是有些循环的我开始的时候弄了半天不明白,一头雾水在那里狂汗不已这里大家要多想想,多思考一下,硬来是没有什么好下场的,最好是用 ida-pro 边分析边改。 首先,大家顺被一些第三方的软件比如记事本,word 之类的,待会儿有用,先打开。当然你的先判断一下是 nokia 的还是其他的游戏,比如 nokia 的就是左软为-6,右软为-7,moto 和卡记等的就是-21,-22,这个比较重要,要自己在 class 中判断方法就是查找汗(最烦琐却最实用)之后要注意你

12、所找到的-6 -7 或-21 -22 的位置,记清楚了,改完回来在看看这里的变化! 现在我们用 winhex 打开你所确认的那个 class,查找 ff ff ff f9 或者 ff ff ff fa,一般光标会停在你所找到的第一个 fff 语句,注意他前面的 7 个 0 和数字 x,即 00 00 00 0x,这里 x 是多少,表示后面有多少个组,所谓组,是我取的名字,便于理解而已,大家想叫什么都行,而组共有 16 个代码,一般形式为 xx xx xx xx xx xx xx xx,而每 8 个代码为一个小组(这里我用 xx 来表示程序中的 16 位进制数值) ,每个小组内的顺序不可以打乱!

13、注意!这里大家看看这就是要找的数据!00 00 00 02 /ff ff ff fa 00 00 xx xx / xx xx xx xx xx xx xx xx/分组就是这样分的,前面的 0000 最好保留一起用!此主题相关图片好,在 winhex 里找到后(就是先搜索出来的)用鼠标把你刚才找的16 位代码圈出来,现在就点击工具栏的编辑-全部复制-16 位进制数值,点了后把 winhex 最小化,在事先准备好的记事本(word)里粘贴两次, (其中一个作为对照用,另外,此后还要用!小心不要搞混了,放在哪里不管)好了,现在对照前面的各机型的按键 16 位数值进行修改了!是在记事本中哦_具体的操作

14、是,比如说这种代码,00 00 00 02 /ff ff ff fa 00 00 xx xx / xx xx xx xx xx xx xx xx/,直接用 00 00 00 xx 代替,这里的 xx 代表你所要改的键值,一般就是你的左右软键的值(16位的哦) ,记住不要改错了,记住这里只替换 ff ff ff fa 或者 ff ff ff f9 因为只替换左右软键,将这两个替换为 00 00 00 xx 就行了,之后在为刚替换的数据排序!重要!比如:改后:00 00 00 03 / 00 00 00 16/xx xx xx xx /00 00 00 15/yy yy yy yy/zz zz zz zz/zz zz zz zz这个需要将 00 00 00 16/xx xx xx xx 与 00 00 00 15/ yy yy yy yy整体对换 00 00 00 03 / 00 00 00 15/yy yy yy yy/00 00 00 16/xx xx xx xx /zz z

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号