游戏的连招动作是怎么设计的?代码上又是怎样实现的?
首先你必须了解一个概念,每一个角色的动作(包括跳、走路还有通常说的技能、轻拳、重脚之类的),我们都把它归纳为“一个动作”,通常来说,一个动作是不具备任何属性的,除非这些属性是可以简单归纳的(下面详细说),这里是一个游戏设计师通常会犯的错误,他们认为一个技能=一个动作=所有属性归这个动作,但是动作游戏(ACT,这里还包括FTG也就是格斗类)里面,每一个动作都包含了许多帧,每一帧才是这个动作的特点,每一帧通常包含以下属性:
1,动作贴图:也就是你一套美术动作序列帧的第几帧(通常这个都是一一对应的,虽然说逻辑和视觉应该分开才能做好游戏程序)。
2,攻击矩形:用于判断自己攻击命中别人的矩形,通常一些受伤、格挡之类没有攻击性的动作是不带攻击矩形的,在攻击矩形中,还会扩展出以下属性:
1)伤害:通常是百分比,用于和角色的攻击力相乘得到这个矩形框造成的伤害。
2)破坏:这个矩形框如果作为命中判断的话,它会造成目标失去平衡多少,这里是一个很重要的概念,在一些蹩脚动作游戏中,你会发现可以无限抽血抽到死,因为他的动作没有破坏属性,所以不会因为你连续做一个动作导致目标被打飞或者倒地(等保护动作),他们都简单的采用“连招的最后一下”这个设定来作为打破平衡的,所以你发现,只要你不连招,就能抽血抽到死。
3)推动:多方向的力,通常有x和y方向,决定如果命中后,目标发生的位移。
在这里你还可以扩展很多属性,具体根据项目的需要进行。
4)归类:这个归类其实可以看做是一个TAG,因为这是一个动作中的一帧中的一个矩形,每一个动作会有若干帧连续的,每一帧有若干个攻击矩形,如果他们都能生效,那么目标很可能会被一击毙命等,所以我们约定统一归类的攻击矩形,再一次动作中仅生效一次,比如我们在一个踢腿动作中定义了Kick作为归类,所有的攻击矩形归类都是Kick,那么这个动作帧任何一帧的任何一个攻击矩形命中了目标之后,该目标就不会受到这个动作的第2次影响。
5)特殊标志:用于一些面对受攻击、防御矩形时候特殊处理逻辑的参数,通常不推荐使用,但如街霸中“锁骨割”,侍魂中“不意打”之类攻击矩形在下半段,却要破坏下半段防御矩形效果的攻击动作会有这样的使用。
3,受击矩形:若干个受攻击矩形,受到攻击的时候进入受伤处理的流程,这里有一个技巧就是,一些需要保护的动作,比如角色倒地了的时候,是不需要受攻击矩形的。每个受攻击矩形一样会有一些扩展属性:
1)免伤:受到伤害降低多少,通常很多游戏是不用的,但如果做现在的游戏,尤其是类DNF的,应该会用得上。
2)平衡:对抗破坏的,如果平衡高于破坏,那么角色的动作不会因为受到攻击而被中断,否则应该当前动作就被中断了,你可以想象街霸中2个角色对踢,然后一起受伤,就是因为踢脚动作的破坏都高于平衡。
3,防御矩形:角色的防御判定矩形,在遭到攻击矩形碰撞的时候,与攻击矩形相交的面积和攻击矩形与受攻击矩形相交的面积通过一系列算法可以得出本帧是否是防御成功的,防御成功的应当按照防御矩形的属性来算(属性同受攻击矩形,但处理上通常还是会有些区别,这个因游戏而异)。这里通常出现的一个概念问题就是方向,因为每一帧这个概念本身是静态,你也不应该根据前后帧(尤其是后面的你根本不知道)判断攻击来的方向,所以这个算法是个有点意思的东西,我在GameRes上曾发帖说过。
4,Cancel标志和可Cancel标志:这里是题主问的问题的关键回答了!这是2个属性,但我把他们放在一起说,因为他们的作用是互相的,假如A动作的第5帧到第8帧的“可Cancel标志”=FF(举例,所以就算编乱起一个),而B动作具有(不论是否作为动作的属性)Cancel标志=FF,那么当A动作播放到5-8帧的任何一帧,都可以由B动作来终结A动作转而进入B动作,通常的,Cancel标志北方在每一帧里面,B动作的第一个具有Cancel标志=FF的帧,就是在Cancel了A动作之后开始播放的帧。通过这个,策划在合理的设置之后,就能够将一连串动作形成连招,甚至连招并不是简单地一条直线的,你可以A->B->C,也可以A->D->C,也可以A->B->D->C,你想到什么都可以,只要策划填写对路。
1,在无法把握全部动作的前提下,把握好人物每个动作衔接过程中的着力点
2,适当地通过特效、光影等弥补动作上可能存在的不足
3,嗯之前忘了说,但是也许是最重要的一点:在做连招的过程中保持与美术的沟通,单个动作方面可能他是专家但连招的整体还是需要你们共同完成
以上,仅仅是如何做一套“连贯”的连招。但是如何做“好”的连招,则除了这些注意点之外,还需要对连招的节奏进行把握。
还是以上面的Ragna的民工连为例。
A~C,可以认为是连招的“起”部分,整个从轻到重的动作都是一刀完成不拖泥带水
D,是连招中的一个大分水岭,因为D之后,普通技完结了,后面的是可以有多择的搓招必杀技部分,因此D的攻击持续时间非常长,自身就带有2连击,玩家可以在这段时间内有充分(当然是对于熟手来说)的时间考虑之后的衔接。因此整个D的持续时间,与之前的A~C3连击持续时间相仿。同时在视觉效果上也开始加入了华丽的特效。
必杀技24A,作为我选择的连招的终结技,具有快速的1段冲拳及追加的2段气浪,除了本身攻击的持续之外更有将敌人击飞后充足的欣赏、确认、调整时间。特效也最华丽。
因此,一套完整的连招,和一篇吸引人的文章,其注意点应该是一样的:
起:干脆利落,让人一目了然.
承:较多的铺垫,让玩家对之后的走向有充分的准备.
转:丰富的分支,让人对其后的发展更有期待.
合:之前所有的积累在此爆发,造成最大的爽快感.
一般连招的定义,就是命中后对方无法再逃避掉的一系列攻击。所以基本的时间要求就是两次攻击判定的出现间隔小于敌人被前一招命中后的受创动作持续时间就行。
当然,这个”受创动作“的时间,根据实际情况也可能不同,例如地面受创时就可以单纯地认为是受创动画的持续时间,而如果是浮空的招式的话,一般情况下都是敌人从浮空到落地为止的时间。这个时间一般都会比地面的受创长得多,留给玩家操作的时间也更宽裕。因此现在大部分的动作游戏大多采用的是浮空系的连招系统而非硬直系的连招系统了。
第二就是整个连招的时间。
这一般就根据具体的游戏节奏而定了。但一般说来,一套完整的连招,高强度的(参考传说系列)持续时间不宜超过5秒,即使再低强度的也尽量不要超过10秒,不然在一次闯关过程中很容易让人产生疲劳。当然较轻松就能无限连击的话在放宽也无所谓,但是这样真的能算是动作游戏么--