发布网友 发布时间:2024-10-04 12:24
共2个回答
热心网友 时间:2024-10-09 23:10
先告诉你,这是很难的。目前的方法不是修改手机分辨率,而是修改游戏。
复杂的很。
先说下简单的『手机端』,下载软件后改后缀为zip或nth,用minicommander点开软件,找到META-INF下的MANIFEST.MF文本文件(UTF-8编码)。【注:一定要先在mini里的-选项-文件类型 的文本里添上MF】编辑MANIFEST.MF文件,在最后两行添上
Nokia-MIDlet-Original-Display-Size:176,220
Nokia-MIDlet-Target-Display-Size:240,320
第一行是游戏原分辨率,第二行是你要改的分辨率,改后保存退出,把后缀改回去就自动安装了呵呵…就这么简单,但是,因为太简单了,所以成功率特别低,只能改很少部分软件的分辩率下来就是第二种修改方法
『PC端』,【暴力移植游戏】所谓暴力移植游戏,就是用WINHEX等16进制修改工具直接编辑游戏的CLASS,要运用这种方法,首先要安装 JAVA反编译工具、16进制编辑工具、中文模拟器、JavaMagic 计算器。
工具齐了,就开始移植,先用JavaMagic修改好键位,然后用模拟器试运行,可以了然后解压,反编译CLASS文件,然后正式开始移植了。
首先CLASS反编译出来的文件直接用CTRL+F搜索draw,其中图片显示的函数是drawImage,文字显示的函数是drawString,搜索draw是确定CLASS文件中是否有需要改的地方,那么找到文件了,比如a.class反编译的a.jad中搜索出drawImage或drawString,就是说里面有决定 JAVA文字或图片的函数,其格式通常是:drawImage(a, 10, 20, 20)drawImage(a, 10, 20, 20)drawString(b, 100, 208, 20)或drawString("文字", 10, 20, 20)(还有其他的一些DRAWXXXX函数不一一细说了,都是差不多的,主要是我不甚记得其意义) 10,20代表图片文字开始显示的位置,左上角那点表示0,0前面那个是横 后面那个是纵其中a和b是被定义图片文字的代码在上面你基本上可以搜索到a = xx("xxx.png")b = xxx("文字")其中不是用中文软件反编译的文字是不能正常显示的。
地方找到了,就要开始修改,用WINHEX等直接打开a.class,搜索100A(16进制的10)1014(16进制的20)(需要用计算器将10进制改为16进制),搜索前最好确定上文中有多少个10,20这样的组合以确定位置,搜索到了就直接修改,比如改为0,0)100A1014 —— 10001000,这样就达到修改的目的,而a所代表的图片的起始位置就到了0,0,同样文字也是这样修改所以通常是先用模拟器确定需要修改的图片显示位置,再改到适合位置,不断调试。还有要说明的是数值显示的方式通常是0-5 03-08(通常有一些比较小的数字是这样显示的)0-127 1000-107F128-208 110080-1100D0比如132,你就要搜索110084方法是这样了。下面是技巧。
【技巧一】
因为中屏的游戏是176*220的,要移植为240*320 而很多图片是从中间显示的,比如(88,XX),只要改为(66,XX)就可以显示到中间了,即将1058改为1042,当然改的时候要搜索清楚才改。 还有是有一些可以直接改176,220,成为240,320就可以的
【技巧二】
有一些游戏其位置是用字母显示的,比如a+k,b+y等,见到这种情况的话就先看前面有没有写a = xx,b=xx,x=xx,y=xx,应为有一些是自动适应高度长度的,比如a=getlength那就不用改,但是要是没有的话就要改成适当的数字。
【技巧三】
有一些是集合数字和字母的,字母就看有没有定义个别的数值,比如A=176等,而数字就要改到适当位置。
【技巧四】
有一些位置直接修改图片而不用修改文件可以达到移植的目的。
好了,看完估计你也就知道了。尽量下载和手机分辨率匹配的游戏吧。
热心网友 时间:2024-10-09 23:08
88