其实很多游戏都是可以玩的,但是用模拟器试玩或者安装时常常有问题。为提高全民游戏水平(- -0),特写一下这个技术帖:
首先检查一下JAR文件是否为英文名,MOTO不可以用中文名的JAR文件。
模拟器 (MOTO SDK)
当一个游戏肯定可以玩而模拟器不能运行游戏时一般就是JAD的问题,有以下几个可能:
1、JAD文件名没有与JAR保持一致
2、JAD文件名内 MIDlet-Jar-URL 一行JAR文件的路径不正确
3、JAD文件内存在乱码,一般中文游戏可能会这样。将其修改成非乱码就行了,具体JAD知识后文中将介绍
4、JAD文件内格式不正确
5、JAD没有被保存成UTF-8码
6、游戏本身有错,建议拿到真机上安装尝试。
7、左右软键及导航键不起作用:因为模拟器存在BUG,C650的键值与真机不一样所致
好,现在我们来讲解一下简单的JAD知识,经常看见JAD内一行一行,都是什么意思呢?
其实JAD生成的信息都是游戏包内META-INF目录下MANIFEST.MF文件的信息。我们可以通过使用JAD生成器来生成。但是生成器生成的JAD文件未必正确,而且对中文支持力度不够,所以我们需要自己来修改。
打开JAD(使用记事本就可以):
Manifest-Version: 1.0
这个是META-INF的版本信息,必须有,而且推荐放在最前。
Created-By: 1.4.2-b28 (Sun Microsystems Inc.)
游戏打包的创建信息,无所谓,一般也无关紧要
MIDlet-Name: Adventure Island
游戏名称,想改中文名就是改这个拉~
MIDlet-1: Adventure Island, /i.png, Main
游戏信息,分别是:游戏名称,LOGO地址,主程序文件
注意这里的名称必须与上面的MIDlet-Name保持一致
MIDlet-Icon: /i.png
LOGO地址,必须与MIDlet-1内的保持一致
MIDlet-Version: 1.1.0
必选项,不可缺少
MIDlet-Vendor: Living Mobile GmbH
游戏开发者,随便填什么都可以
MIDlet-Data-Size: 1000
这也是个可选项,表示运行游戏必要的额外空间,以字节计算。如果空间不足安装时则会提示无效文件。
Media-Price: 免费
这个是软件价格,随便你填拉
MIDlet-Description: 冒险岛是一款FC移植游戏
这个是说明文字,也是可以随便改写,都无所谓的
MicroEdition-Profile: MIDP-1.0
MIDP标准,这个小召提过很多次了,MOTO手机都是MIDP2.0的,当然有时候分明2.0的游戏也会被标为1.0,这里MOTO就没有问题拉。这个是必选项。
MicroEdition-Configuration: CLDC-1.0
CLDC标准,MOTO C系列是1.0的,注意索爱一些游戏是CLDC-1.1的,这时就不能用了,会显示无效文件。
MIDlet-Jar-Size: 95052
JAR文件大小,使用JAD文件来链接安装游戏时这个参数必须正确,否则会显示无效文件。模拟器运行时可忽略。
MIDlet-Jar-URL: mxd.jar
JAR文件地址,前面没有路径就是同一目录咯~不能有错。以上这2项最好放在JAD文件的最后~
----------------------------
只要遵循以上原则,安装游戏就不会有什么问题拉~最后记得在TXT中另存为保存成UTF-8格式哦~
如果还不行,对游戏本身抱有疑问,那么请从WAP上直接下载这个游戏的JAR文件,如果这样还安装不了就说明游戏本身有问题,否则就是JAD文件有问题咯,一般通过上面的修改都可以得到改正
查看RMS文件,有6K之多,这不禁让我想到了META-INF中的MIDlet-Data-Size:这一行,这一行控制着储存所必须的额外空间。之后我拿了《英雄时代》S40和MOTOC650版本做比较,发现:
S40版的MIDlet-Data-Size: 4096
MOTO版的MIDlet-Data-Size: 8192
而《大汉王朝》在MOTO上的RMS文件也有6K之大(大于4096),于是我把该游戏的MIDlet-Data-Size: 也从4096改为8192(记得存为UTF-8格式哦),重新生成JAD,把游戏传入手机,一切OK!
记得前一段看到有朋友说他的3230在玩一些游戏时存档经常丢失,如果出现存档一类的问题,尤其是非原平台的作品时,可以将MIDlet-Data-Size:这一栏稍微改大些,就可以解决存档问题了
最近一期的箱子破解游戏似乎OS7以上的机型都不能安装,都会有授权失败的字样,最早我安装很多JAVA游戏的时候也有这种情况,开始我上网查了,好象没有专门介绍这方面的东西,后来自己找到了解决的办法,这里和大家分享下:
1.授权失败的解决办法:
通常授权失败是由于游戏文件是破解版的缘故,这里简单的说一下梦网游戏破解的简单道理和方法:每月的1号,11号,21号都是百宝箱更新新游戏的时候,“厚道”的会在推出新游戏的时候推出一次性试玩的游戏版本(S40,S60V1,SE,MOTO都有,但是惟独S60V2也就是7610的箱子没有)试玩的原理很简单,就是在原版游戏的基础上处理了下,自动生成几个class,通过生成存档来判断是否运行过一次,下下来的JAR文件会有一个com文件夹在里面,里面有fourthpass和sincetimes两个文件夹,破解的原理就是将里面处理RMS的代码进行修改,使得程序得以正常运行。一般说来,如果是直接每个游戏每次修改,理论是不会出现授权失败的问题,但是如果破解者为了省事,将一个修改好的文件直接替换,可能就会出现授权失败的问题。解决的办法其实很简单:
将下下来的JAR文件里面的COM文件夹删除,然后传到手机上,这样就不会存在安装失败的问题了,但是安装完后游戏不能运行了,再将没有删除COM文件夹的JAR文件传到手机上,用SELEQ复制到游戏安装目录下(SYSTEM/MIDLET/下,看你安装文件的名字就可以判断,不是在SYSTEM/APP下,那个只是安装产生的注册文件),覆盖原来安装的游戏,就可以正常运行了,原理和安装SIS原版游戏,然后用破解文件替换APP文件的原来是一样的不过操作相对麻烦点了。
2.文件无效的解决办法:
产生该情况的原因一般是因为JAR文件中的MF信息遭到了修改造成的,解决办法很简单,如果能找到原版的游戏,将里面的MF信息修改回来就可以了。用WINRAR打开JAR文件,里面有一个META-INF文件夹,里面的MANIFEST.MF文件就是信息了,用记事本打开,然后修改,重新保存,记住一定要用另存为,编码选择UTF-8格式。最保险的方法是你安装了WTK,新建一个工程,主MIDLET和游戏的MIDLET名字一样,把SETTING里面的信息写成游戏需要的信息,比如ICON,作者,版本什么的,这样就会在WTK的工程APP/工程文件/bin文件夹里自动生成一个MANIFEST.MF文件,使用这个文件替换原来的文件就可以解决文件无效的问题。
3.版本无效
一般是由于CLCD的版本造成的问题,同样是修改MANIFEST.MF文件,把MicroEdition-Configuration: 这一项修改,比如QD,6600都是MicroEdition-Configuration: CLDC-1.0,如果是MicroEdition-Configuration: CLDC-1.1就直接改成MicroEdition-Configuration: CLDC-1.0,但是这种方法只能解决安装的问题,不一定就能够正确运行,只有少数游戏虽然写的是1.1,但是实际上还是1.0的游戏可以,同样,QD也可以通过修改MIDP的版本来解决安装的问题,至于能不能运行就看游戏本身和RP了
首先,只要确认是可安装的MOTO游戏(别人安装能成功),那总是可以通过MIDWAY来安装的,如果出现问题(主要是报无效文件),我们一遍一遍来排除故障。
1、乱码
解压JAR包,查看其中META-INF目录下的MANIFEST.MF文件里面是否有乱码(用记事本就可以打开),如果有,则将其逐一修改为非乱码。产生乱码的地方主要是中文的游戏名、介绍开发商和游戏价格。就是以下4行:
游戏名:(红色标记的就是游戏名,改为自己想要的名字吧,注意2处保持一致)
MIDlet-Name: Adventure Island
MIDlet-1: Adventure Island, /i.png, Main
开发者:
MIDlet-Vendor: Living Mobile GmbH
游戏介绍:
MIDlet-Description: 冒险岛是一款FC移植游戏
游戏价格:
Media-Price: 免费
OK,把这上面4处的乱码全部修正就可以了!随便填什么都没有关系的!(注意标点符号用英文半角,每行的冒号和后面的文字之间有英文空格)然后另存为同名文件,选择UTF-8格式,再拖入JAR包替换原文件就可以了,重生JAD试试。
2、JAD格式有错误
JAD格式有错有2个可能,一个是JAD生成器不规范(例如生成的不是UTF-8格式的JAD文件),第二个还是MANIFEST.MF文件本身有错(箱子游戏可真麻烦呀)
JAD明显的错误包括,字符显示不完善,一串字符明显还有下文,他突然间就断掉了。例如:
MIDlet-Description: 冒险岛是一款FC移植游戏,适用于MOTO C65 (应该是C650吧??)
MIDlet-1: Adventure Island, /i.png, Ma (Main的“in”上哪去啦??)
这个明显就是出问题。
这个时候还是手工来修 MANIFEST.MF了,方法同上
3、JAD生成器无效
还有这种事?的确有,JAD生成器的程序其实笨笨的,这个时候你去查看一下META-INF这个目录名是否皆为大写,有时候变成了Meta-inf,这个时候JAD生成器就不认了。
4、文件路径和容量一定要正确
这个不用多说了,不过从WAP上下载下来的游戏JAD路径多数不正确,重新生成一下
5、CLDC不能超出标准
MicroEdition-Configuration: CLDC-1.0
1.0是符合标准的,1.1就超出了C650的标准
6、内存不够
MIDlet-Data-Size: 1000 这个表示了至少保留1K的剩余空间,如果这个数字显示为1000000,则表示至少保留1M的剩余空间,这个时候如果剩余空间不足就会“无效文件”,把这行去掉就可以了
7、缺少必要项目
以下项目是JAD内必须具备的,其他的都是可选项,去掉也没关系。但是必选项内如果少了一项可就装不了了
Manifest-Version: 1.0
MIDlet-Name:
MIDlet-1:
MIDlet-Version:
MIDlet-Vendor:
MicroEdition-Profile:
MicroEdition-Configuration:
MIDlet-Jar-Size:
MIDlet-Jar-URL:
8、JAD和MANIFEST.MF文件内容不同
这个就是提醒我们修改了MANIFEST.MF后一定要重生JAD