我们今天以火箭试飞中文版来演示如何制作无敌版小游戏。
首先从这里把FLASH下载下来:
http://www.4399.com/flash/42336_1.htm
下载好工具FFDEC:
http://www.free-decompiler.com/flash/
该工具需要JAVA运行环境,
没有装JAVA的从这里下载安装:
http://www.java.com/zh_CN/download/ie_manual.jsp?locale=zh_CN
一切都准备好后,打开FFDEC
选第一个,打开刚下载下来的FLASH。
我们这里可以直接搜索关键字money,看能不能找到什么
如图,点击搜索money,等一小会就会出来结果了,
_loc5_.money=uint(_loc4_.getParam("reward",0));
看起来不像是我们要改的地方,点击右箭头,到下一个结果
var _loc2_:int = UserData.instance.getData("money",0) as int;
可以看出是买东西时取得金钱数,所以我们只要找到
UserData.instance.setData("money",xxx)
这样的代码就有了,往后一直找到
UserData.instance.setData("money",uint(_loc2_.getParam("money")));
这看起来是设置金钱的地方,我们可以把它改成UserData.instance.setData("money",999999);
这样就相当于无限金币了。
我们点击这一行
右边出现如下的内容,点击Edit,
可以看出这一句话对应的P-CODE是
getlex m[49]"com.bglabs.data.UserData"
getproperty m[23]"instance"
pushstring "money"
findpropstrict m[20]"uint"
getlocal_2
pushstring "money"
callproperty m[117]"getParam" 1
callproperty m[20]"uint" 1
callpropvoid m[164]"setData" 2
我们把
findpropstrict m[20]"uint"
getlocal_2
pushstring "money"
callproperty m[117]"getParam" 1
callproperty m[20]"uint" 1
换成
pushint 999999,点击确认。
即可看见代码变成了UserData.instance.setData("money",999999);
我们选择File-Save,
进游戏,第一次试飞后,可以看到金钱已经变得很大了
这里只是简单地告诉大家一个修改制作FLASH小游戏无敌版的一个基本流程,
大家可以通过搜索money gold这样的关键字来找关键的地方,
如果找不到的话需要自己看脚本文件慢慢来分析,需要一定基础。
大家可以多实践来提升自己的水平,当你改了多后自然就会很有感觉。
本文写给新手看的,高手看了莫笑。