要素一:时间
帧
帧是动作游戏中的时间单位,大多数动作游戏均为60HZ,即画面每秒60帧。也就是说帧这个时间单位的准确值为1/60秒,这个单位也是游戏处理输⼊指令的最小时间单位。帧数是准确且可靠的计时标准,通常简写为F(frame)
时序
大多数攻击行为都可拆分为3部分:1. 起手时间(前摇)2. 攻击时间3. 收招时间(后摇)如起手时间,⼀般有两种方向:1. 长起⼿时间,攻击数值高,⼀般来讲为高爆发技能(高DPH,Damage Per Hit)2. 短起⼿时间,数值较低,⼀般⽤于抢先手权或打断敌⼈的攻击攻击时间,两种方向:1. 长攻击时间,⼀般为范围类技能或用于持续输出2. 短攻击时间收招时间:1. 长,高风险高收益,如果技能试探失败,则会陷入僵直状态,有被攻击的风险;如果成功,伤害数值往往比较可观。2. 短,低风险低收益,试探失败也无所谓;试探成功则可以实现POKE,机动性高。帧数表
利用帧数表可以直观展示角色招式在时间上的分布,也可以作为游戏设计时的参考。
受击时间
角色从受到攻击进⼊受击动作和受击状态,直到重新回到待机所用的时间叫做受击时间,在受击时间期间,角色⼀般不受玩家控制。
合适的受击时间长度可以给玩家带来良好的打击感和连招体验,敌⼈既不会因为受击时间太短而快速恢复Idle状态或走出玩家攻击范围,也不会因为受击时间太⻓⽽⼀直处于受击和僵直状态(导致不和谐的视觉体验)
受击动作帧数
受击动作帧数不必太多,需要考虑的是以下几点:1. 受限于手机性能2. 资源制作的成本,包括时间和人力3. 游戏类型和重心同时,受击动作帧数的多少也会影响受击机制如果帧数较多且是完整的动画,则需要考虑取消机制(即取消受击动画,后面会提到)来调整战斗平衡,比如倒地动画帧数过多,时间过长,则会影响玩家的战斗乐趣,需要⼀个取消后摇的机制来减少这种挫败感。
如果帧数较少,可以利用数值来计算受击时间,让⼿机时间变为可控值。如DNF采用的僵直度和硬直度,用这两个值计算出停留在受击帧的时间。不同类型的游戏对受击时间的设计思路也是不同的。如果强调手感统⼀,则要在受击动画上下功夫;如果强调数值养成,则要⽤数值和物理环境来设计受击动作和时间。
打断/取消/Cancel
当角色释放某⼀技能并处于其后摇状态时,另⼀个技能可以跳过其后摇并被直接释放。如果打断的条件设置得很苛刻或者说根本没有这个机制,就会给玩家带来⼀种笨重的感觉,或者被称为“手感生涩”。合理的取消机制设计能给玩家带来良好的战⽃体验,让玩家觉得很爽⸺因为这提高了玩家操作的容错率和自由度,能让玩家更好地连段。
要素二:位移
角色在使用技能时通常会有⼀定的位移(也有原地攻击),会影响角色的安全性和灵活性。
攻击方的位移
- 原地攻击2. 移动的同时进行攻击3. 移动后再攻击原地攻击难度较低,易于掌握。移动攻击安全性较高,有突进和躲避的作用。移动后再攻击对预判的要求高,需要⼀定的熟练度。
受击方的位移
⼀般来讲,受击位移的⽅向可以⼤致从y轴、与y轴垂直的平⾯来区分。
如果是2D游戏,则分为x轴和y轴,体现为击退和浮空两种状态,也有两者结合在⼀起的状态,⽐如击⻜。3D,则分为y轴和xz⾯。同时,受击⽅的位移是通过攻击⽅给受击⽅的“受击速度”来实现的,受击位移要尽可能符合玩家直觉。• 受击位移小对应力度较小的攻击,即⾼速多段;• 受击位移大对应力度较大的攻击,即低速少端。受击位移过小会导致攻击⽅逐渐越过受击⽅,最终中断连击。
摩擦力、重力等参数
⽤于受击⽅产⽣受击初速度后返回正常状态的参数,保证受击⽅的位移的视觉效果正常。如摩擦⼒,如果摩擦⼒过⼤,会导致受击位移过短,给玩家⼀种打不动的感觉;
如果过⼩,会导致受击位移过⼤,容易出现连招中断的情况。
进⼀步调优:优化连招手感调节y轴和xz⾯上的受击位移,让玩家的每⼀段连招的攻击位移和给敌⼈的受击位移相匹配,确保敌⼈⼀直在⻆⾊的攻击范围内,以相对较少的操作实现较多的连招,来带给玩家更好的连招⼿感和体验。这⾥引⼊了另⼀个概念⸺确认难度。
确认难度
在使⽤⼀个招式后,能够顺利流畅地把接下来的连招完全打完的实现难度。• 确认难度低:如果攻击命中敌⼈后,后续连招能顺利连上的话,其确认难度就相对低,也就意味着其学习成本低,招式复现稳定性⾼。• 确认难度⾼:如果攻击命中敌⼈后,玩家需要进⾏⼀定的预判才能成功连招,⽽⾮⽆脑连招。
要素三:判定
利⽤碰撞检测进⾏攻击判定。⽐如红⾊框对应攻击框,蓝⾊框对应受击框。
如果是有Z轴纵深的2dACT游戏,最好是有Z轴⽅向的攻击受击框,做成三维的碰撞盒,以免玩家在攻击时误判位置,导致攻击难以命中。
要素四:状态关系
分为⾏为状态和异常状态
行为状态通常会伴随着受击⽅的动画及位移表现(也有程序中涉及到的状态变化,如状态机中的某种状态),⽐如空中、站⽴、倒地等⾏为状态,在这三种状态判定成⽴后,受击⽅⼜有不同的动作状态,⽐如眩晕、击⻜等状态。
异常状态通常没有受击⽅的动画或位移表现,但能在数值或⾏为上做出⼀些限制。⽐如中毒(持续掉血)、冰冻(脱离操控)和⿊暗(致盲,视野变⼩)等等。也就是通俗讲的buff和debuff,只是在ACT类型中,这些状态⼀般是由攻击⽅赋予受击⽅的,且多为负⾯状态。