我们可怜得驾驶员只有这么一个动画,而且只在故事介绍场景中出现。
敌机集结!要想看到最终BOSS的风采,请在游戏中坚持到最后一刻!BOSS拥有最复杂的动画,其动作循环由CAT插件产生,身上不断凋落的石块由PF粒子流制作。
本来考虑如果反响强烈而且有收益,会设计其他的关卡,所以针对BOSS的特点设计了一个关卡名:
这是伸缩炮台的所有动画帧,在游戏中你也许不会注意得到:炮台升起后舱门打开,伸出炮管,上方伸出“潜望镜”。
【特效设计部分】
玩射击游戏的人追求的是破坏的感觉,所以我要在细节上满足这种需求。
(1)每种机体爆炸都会飞散出碎片,这个是在3DSMAX中用PF制作的,在flash中有些颗粒根本看不到,大多数很模糊,而正是这种碎片表面受光区域变化而引起的黑白闪烁造就了真实感。
(2)子弹打到机体上会有白色火花弹出,伴有轻微音效。
(3)爆炸分干脆型、烟火型、和连续型。
(4)铁皮听号复活时的闪烁效果,这时是无敌的。
(5)被击中的敌人的闪烁。
(6)铁皮听号爆炸后产生强大的冲击波,对敌人造成伤害,并消去敌方炮弹。
(7)地方的炮弹会闪烁,让人产生危险的感觉。
【音效设计部分】
不要以为这部分很轻松,有时配音比做动画还辛苦。比如炮台升起的音效,首先是升起时液压杆的摩擦声,然后是到位后卡住的康当的声音,接着炮台旋转的声音,炮管伸出的声音。不过有些音效是要忽略的,比如频繁发射的炮弹,如果也发声就会产生混乱。而主机体在不同等级发射的声音也是要仔细琢磨的,因为者影响到游戏的爽快感。另外敌人的爆炸声也同样带来爽快感,不可或缺。
【程序设计部分】
制作周期1~2个月,全天工作(包括美工等);我不熟悉OOP,这里使用的都是最简单的方法,没有创建一个类,不过我使用了OOP的思想,把一个个功能设计成了组件:比方说我需要一个MC曲线前进,我就扔进一个曲线前进的组件,这样的组件有几十个,有用键盘控制方向的,有定义Hp的,有复杂发射炮弹的等等,这样我就很容易的设计不同的敌人。而整个场景的行进就是一条时间轴。射击游戏的逻辑很简单,我看重的主要是场景搭建的方便程度,也就是说我的引擎就是一个关卡设计器,这样我可以把更多的精力投入到场景设计中来,而不是去研究那些酷得要死的高级代码。而且我的代码执行方式也很落后,只是每帧执行,没有那种固定时间调用的代码。所以:在慢的机子上,你会很容易躲避,很容易得高分。flash本来效率就低,如果再跳帧得话简直没法玩了。话说回来,组件得方式效率很低,权衡利弊我只能使用这样得方式,别忘了我是个人制作。
【场景流程设计】
一开始当然是出比较简单的敌人,炮台也很早出现,玩家不小心就会被快速的炮弹击中,炮台下方留有空挡,需要仔细靠近。大部分敌人的炮弹是瞄准玩家方向的。在较强硬的蜗牛出现同时,配件升级的机会也出现了,强硬的敌人要同时配合一些其他的敌人来进行骚扰,不让你安心的攻击。到达两个穿梭机小队的双螺旋弹幕时,场景停止,这是第一个高潮。之后简单的休息后,鸭子战舰出现,同样的也是中BOSS级别。注意到现在为止没有一次你能使用同样方法对付不同的敌人,而且任何时候你都不能定住不动。最终BOSS分3种弹幕形态,如果发现其规律,不难击破。
【游戏场景截图】
主菜单:背景是白线勾勒的云和浮动的铁皮听号。
画面大小:我设计时是按640x400设计,在网页上为了流畅度,显示为480x300;
帧数:设计目标帧数30fps,但是我发现在网页上执行都会减少几帧,所以我设定到了35fps。
帮助界面:这是个不可缺少的东西,在游戏中也可以随时调出。
战机的控制:战机的控制在方向上我使用了加速的设定,这样控制起来就不像是在控制一张生硬的纸片。不少玩家反应操作不灵活,那是因为在网页上玩的缘故,可以下载到本地玩,你会感觉流畅许多,安全设定正确的话也不影响上传积分。
战斗中画面:可以发现背景的卷轴相当简单,由于容量的限制和速度的限制我必须简化这些东西。
游戏GAME OVER画面,要上传积分或者抽奖需要点“到高分榜”按钮。
在游戏中,用鼠标点击坐下角的菜单,游戏就会暂停,在这里可以显示帧数,观看帮助以及退出和重新开始游戏,还能变化音量。暂停可使用P键,这个功能费了很大的周折,可以看到一个有趣的现象,一些动画在暂停后并未停止,如穿梭机还在自转,当然这些都是不影响游戏逻辑的东西。
游戏结束画面:每次玩可能你的分数都会不同,这里面没有什么随机的成分。一些东西是固定的:首先要宣扬的是“活下来”,机数剩余越多分数越高;然后的是节约炸弹资源,就是追求所谓的“no bomb”;然后是你击落敌机所得分数;射击评定是看你射出子弹的命中率;移动评定:如果你老是在神经质的摆动,这个分数就会低些。明白了这些道理,就去冲击最高分吧。厉害的是一些玩家得到的分数比我这个设计者得到的还高,甚至于我开始怀疑我设计的游戏是否会有这么多分。。。
另外,现在“快钱”的系统就是只记录你的最高分。
[1] [2]
