一般来说,一个2d游戏的攻击形式,本质上都比较死板。
这个死板主要说的是互动效果,也就是你在2d游戏里挥动武器砍一下,除了对怪物造成伤害,它基本不会出现第二种情况。
2d游戏不像3d游戏,业界最有名的那几个开发引擎,像虚幻和unity,更多都是为3d游戏开发服务的。
这些引擎会自带一些模拟现实的物理系统,比如最常用的刚体系统,就是可以模拟出一个物体该有的质量、空气阻力、重力影响等等。
无论你是碰撞到这么一个刚体,还是将它从高空往下扔,它都会根据自带的物理性质,产生出非常直接的互动效果。
所以说在3d游戏里,哪怕你没有编写任何的代码,你挥舞的武器也能发挥出一些稀奇古怪的效果。毕竟物理系统摆在那,就算你不做格挡之类的游戏内容,它说不定什么时候也能给你来一下振刀。
2d游戏可就没那么幸运了,你3d游戏做把剑出来,那就是真的有这把剑;2d游戏做把剑,实质上剑只是人物身上的一张贴图,假的很。你就算真砍出去了,靠的也是生成的剑气判定触发器范围,而不是真的有把剑戳到敌人身上。
“也就是说,我们要根据角色的攻击动画,逐帧调整他的碰撞体范围,直至每一帧都吻合动画显示出来的剑气范围。”
姜山解释了接下来的工作。
到这一步,其实还属于正常2d游戏的范畴。
哪怕姜山不说,团队其他人根据网上的视频教学,或者自己根据unity帮助文档摸索两天,马上就能掌握如何实现2d游戏的人物攻击。
但空洞骑士的攻击很有意思,它比许多2d游戏多考虑了一个维度,那就是它的攻击系统,是融合在平台跳跃系统里的!
在场景中许多关卡,都需要玩家熟练掌握“下劈”这一个需要点操作量的技巧,才能通过游戏里的主线流程——没错,是主线流程!
玩家要是连下劈特殊敌人或者下劈特殊障碍物,来延长且增加跳跃幅度的操作都不会的话,连正常通关都成问题!
这也是空洞骑士被誉为魂游戏的一大要点,那就是这游戏上手是真的需要些门槛。哪怕在很多玩家眼里,跳在空中的同时,再找准下坠的时机往按住向下方向键,再按攻击键一劈,简直是有手就行的操作,但轻量且手残的玩家永远占多数,从通关率就可见一斑。
通过steam的成就榜可知,空洞骑士在开局教程就已经劝退了26%的玩家。到了第一次boss战时又损失了32%的玩家。等到后面一个接一个难度越来越高的boss出现,空洞骑士通关率最终也就定格在了18%上。
能在这样一款近乎千万销量级别的游戏中打通关,说明你的操作水平已经战胜了百分之八十多的玩家!
毛源也不知道他们将要做的是一款怎样恐怖的高难度游戏,只听姜山继续讲解道:
“我相信刚才说的攻击动画以及如何触发,你们都是能很容易做到的。”
在理解2d游戏是如何实现攻击后,剩下的难点其实也没什么了。
接下来就是做敌人的受击表现,这一块也是2d游戏比3d游戏简单的地方。在2d游戏中,攻击剑气碰撞器只要碰到了敌人,那就在代码事件中触发一次敌人掉血。
同时敌人会有一个僵直的动画状态——在开发引擎里有个叫做“动画树”的概念,角色的所有动画状态都像一棵树一样,分枝岔叶,“站立”动画会连着“行走”动画,所以才能实现站立与行走这两个状态之间的衔接。
同理,只要把僵直做成跟其他动画状态冲突,那角色在受击后也就会立刻停下别的动作,保持僵直一会儿。
“但空洞骑士这款游戏,它的攻击是有后坐力的。”姜山说道。