手机中动作游戏的按键操作
//原创:蔡汝毅www.thinkofdesign.cn
动作游戏,它对玩家在按键上的要求是相对要高的。它让玩家重复地经历着反应、反射的过程:遇到什么样的情况,你就必须作出什么样的反应,然后条件反射式地做出相应的应对按键操作。
很多人会说,手机这个平台不太适合或者说不太容易设计动作游戏,它在按键操作方式上受到很大的制约。本文并不评论手机这个平台是否适合设计动作游戏这个问题,而是把重点放在当要为手机平台设计动作游戏时,可以在按键操作上如何设计的讨论上。
现在,我们来看看手机游戏在按键上存在的一些问题:
首先,无法对两个或以上的按键作出实时、准确的响应。对于大多数手机,尤其是运行KJAVA游戏的手机来说,这个问题是相当突出的。当你同一时间按下数字键1和2时,手机有可能先响应1然后响应2,也有可能先响应2然后响应1,甚至两个按键都不作响应;而当你同一时间按下三个键时,情况就变得更加复杂,手机响应的结果都是设计师所无法预期的。
虽然随着市场软硬件的发展,已经开始出现了一些能够同时响应多按键的手机。但是考虑到你设计游戏的广泛性:一方面支持同时响应多按键的手机还没成为主流普及开来,另外一方面你设计的游戏要尽可能在足够多的手机上适配运行,要移植到其他不支持多按键同时响应的手机上。你无法把同时响应多按键的设计很实质性地应用起来,想用同时按键来扩展新的功能键暂时还不是一个很好的思路。
其次,按键操作无法做到无缝连接的缺陷。当设计师要求玩家施展某个招式——使用键盘的数字键8,6,5组合依次输入时,玩家是很难在短时间内完整这个操作的,而这样一来就导致角色在游戏中的短暂停顿,最终可能错过了好的攻击机会。对于更复杂的按键组合时,玩家更加会手忙脚乱,招式没施展出来不单止,甚至还会露出破绽给了敌人攻击的机会。
纵使手机上摇杆方向盘的引入可以令玩家的操作大大灵活起来,但对于并不是大范围普及的摇杆方向盘,我们只能以它作为操作便利来设计,而不能把它作为标准硬件配置来进行设计,否则,将会令游戏在某些手机上难以得到合理的体验。
而随着手机的外形越来越小、越来越轻巧,随之而来的就是手机上按键与按键之间的距离变得越来越密集。如果要让玩家进行双手母指操作,是相当拥挤的;如果让玩家单手按上文提及的组合键依次操作,那一方面按键的效率会减低,另一方面也够让玩家容易劳累。
类似的问题其实还有很多,他们都会或多或少影响玩家就操作问题带来的游戏体验感。如果按键操作对于玩家来说不能做到贴心设计,玩家就会对游戏产生情绪,认为游戏难度过高或过于累赘,最终提前放弃这个游戏。
面对以上提及的问题,我提供几个设计的解决方案,这些解决方案需要建立在具体的某个游戏设计上进行讲述,但你可以把其中的关键点抽象出来,以备使用。
我们来看这样一个踩地雷式的动作RPG。玩家在地图上行走时会有一定机率进入战斗。战斗以俯视视觉进行。
敌人会在地图上依照AI规则行动,它们有自己的攻击规则和被攻击规则。举一个具体敌人的例子以方便下文阐述,一只螃蟹,当它检测到主角在自己正前方时,就会挥动钎子攻击,攻击分为预备动作、挥出钎子攻击动作和挥出钎子后的持续动作,其中只有挥出钎子攻击动作和挥出钎子后的持续动作存在攻击性。这只螃蟹每两秒对前方范围检测一次。
玩家的操作,以方向键上下左右进行移动为基础,当玩家与敌人产生碰撞时,如果碰撞的范围并不是敌人的攻击范围,则默认为玩家攻击。以上文为例,只要玩家不是碰到螃蟹正前方挥出的钎子或钎子挥停后的刺上时,则都默认为玩家攻击。
这样的设计有个好处,就是玩家可以省略了攻击键,只需要看准时机去碰撞敌人达到攻击效果就行了,它能够留给玩家更多精力在跑位的操作,保留了ARPG边移动边攻击一大核心玩法。
单靠以上的设计还不够,我们还需要一些额外的设计延伸——技能。我们把技能分为对敌人产生效果和对自身产生效果。
对敌人产生效果的技能,玩家可以把这些技能预先装备到数字键1、3、7、9上,按下技能键时技能会马上放出,并且该技能会被记录在攻击状态下,即下次碰撞敌人时依然会使用上次的技能进行攻击,直到玩家切换技能或返回普通攻击状态。如果手机没有数字键盘而是采用屏触的话,则把数字键盘1、3、7、9设计到屏幕上去,让玩家屏触操作。而对自身产生效果的技能,玩家按下技能键后,技能马上产生相应的效果,但是不会被记录在攻击状态下。
2003年由Sumea发行的《幻想战士》系列游戏就采取了类似操作设计,并一举取得成功。
再来举一个横版过关动作游戏的案例。游戏以正60度角俯视进行,玩家有左右两个面向,同时可以保持这两种面向中的一种在地图上下移动。在地图的左右两边会出现敌人,玩家需要操作角色使用拳脚功夫击倒敌人来晋关。
游戏中设计有普通攻击和技能给予玩家使用,整个游戏设计为玩家设计了10个技能。如果把每个技能绑定在一个按键上,那么按键是不够用的。
传统的同类动作游戏,他们会采用方向键为首、攻击键为结束的按键次序组合来让角色施展技能,例如下前拳施展一个波动拳的技能等。现在我们参考这种方法,并在它的基础上进行改良。我们采用攻击键为首、方向键为结束的按键次序组合来让角色施展技能,举例说,前手勾拳:拳拳上,这个按键的结果是,先用普通攻击来攻击敌人两下,然后施展技能上勾拳(上);又如,高抬踢腿:拳前上上,这个按键结果是,普通攻击敌人一下之后,把敌人拉到自己身边(前),然后起跳(上)并空中踢击敌人(上)。
这种设计方式,一方面为了能够让角色施展技能,另外一方面是为了在按键到施展技能之间的空隙时间能够有补充动作,让玩家角色不会出现短时间停顿。这样一来,不仅解决了按键不够的问题,还能够让玩家玩出类似传统动作游戏的操作感觉,算是一个一石二鸟的方法。
我在06年设计的《叁•正义使者》则采用了这样的设计。
第三个案例,我们举例一个类似2D《恶魔城》玩法的游戏。游戏以平视的视觉进行,玩家可以操作角色进行前后移动、跳跃和蹲下。
把起跳攻击设计为先按数字键2跳跃,腾空时按数字键5攻击。如果玩家是单手操作,母指先按数字键2,然后松开数字键2移动手指到数字键5的地方再按,那么就有可能因为玩家没能及时按键而没打中需要腾空最高点时才能打中的敌人,导致需要重复操作尝试。
把蹲着攻击设计为先按数字键8蹲下,蹲下状态时再按数字键5攻击。那么会出现两种情况,玩家按住数字键8的同时再去按数字键5,角色没反应;玩家松开数字键8,马上按数字键5,角色马上站立起来攻击,无解。
如何解决以上所提及的尴尬情况呢?我们可以采用重复按相同键的法则。
玩家按数字键2跳跃,腾空时再按数字键2进行攻击。因为按键没有要求玩家先移动手指再按而是可以在相同位置进行按键操作,这样即使玩家是单手操作也能胜任。如此一来,玩家就能轻松攻击到需要腾空至最高点才能打中的敌人了。
玩家按数字键8蹲下,程序设置松开数字键8的0.1秒后角色才恢复站立状态,在蹲下的状态,玩家只要再按一次数字键8就能发动攻击。由于是直接按相同键的操作,程序预先设置的0.1秒甚至更短的时间保持角色蹲下状态是足够玩家去完成这个蹲下攻击的动作的。
并不是每种动作游戏只能够有一种最好的操作方式,实际上,这种“最好”也是不可能存在的。我们大胆去设想一些操作方式,然后套用到游戏里加以实践,找出人性化的、能够令大多数玩家接受的作为游戏的默认操作。你也可以对此进行扩充,通过设置选项让玩家去自行选择个性化的操作调整以达到补充。