作者:江西恐龙(Dino) 腾讯互娱 游戏策划
原载于腾讯GWB游戏无界公众号
从行走逻辑上区分,横版动作游戏一般分为单线横版和纵深横版。从玩法上区分,还可以细分为格斗、射击、动作等。
横版动作游戏是一个非常经典的游戏类型,而且最近也有复兴之势。如果可以尝试着自己制作一款动作游戏的DEMO——对自己,可以学到更多游戏开发的知识,包括角色设计、关卡构成等等;对项目,可以一两周内就出一个简单的DEMO,方便给老板演示。
全称是“2D格斗游戏制作工具2nd”。它是由日本OUTBACK制作、EB发行的一款2D格斗游戏制作工具。利用这款软件玩家可以独立制作出属于自己的PC格斗游戏——比如中国台湾FK小组制作的《超级COSPLAY大战final02版》,以及本人制作的《东东不死传说》,都是用2DFM开发完成的。
全称为ActionGameMaker,同样由日本EB发行。拥有ACT,ARPG,STG等组件,使用这些组件就能制作出相应的PC、Xbox 360、PS3游戏,并且组件可以混合使用,例如可以做出地图上是ARPG,迷宫里是STG的游戏,可以说非常强悍。
横版过关游戏开发软件。BOR软件的原名是《Beats of Rage》,名字有向SEGA的MD游戏《Streets of Rage》致敬的意思。开发者开源发布后改名为OPENBOR。它可以输出PC、安卓、PSP、XBOX等平台版本。上图是本人制作的横版DEMO。
接下来,让我们试试用OPENBOR来制作一款DEMO——
如果要制作横版过关游戏DEMO,我们先了解一下动作游戏的构成。通常一款横版动作游戏,包含了哪些元素?
所谓的关卡,其实就是一群角色在一个房间里打架的过程:
关卡的核心体验其实大同小异,这是另外一群角色在另外一个房间打架的过程。
说白了,这个就是一款动作游戏的基础框架:房间、人、打架。
那么我们接下来,针对这个房间,分解出一款DEMO需要用到的素材:
角色素材
场景素材
UI素材
音频素材
OPENBOR这款软件没有操作界面,纯文件夹操作。并且资源全部为熟悉的GIF、WAV等资源。可以从网上下载到OPENBOR的最新版本,容量只有几M。
角色素材分为主角、杂兵、特效。这部分一是可以自己画,二是可以去网上找到一些资源。但是网上资源随意混搭会出现比例失调的情况,因此一定要规划好尺寸。
角色资源整理好以后,放到Chars里面的次级文件夹里,以本人这个DEMO为例:\data\chars\mukui文件夹里。
场景资源的透视关系也是很重要的。经过对比发现最常用的角度一般是30度或者45度。60度比较少见了。
场景资源整理好以后,放到Bgs里面的次级文件夹里,以本人这个DEMO为例:\data\bgs\city文件夹里。
UI素材一般分为战斗UI和主菜单UI。OPENBOR自带了一套战斗UI资源,因此这个步骤可以缓一缓。等DEMO打磨得非常精美的时候,再替换成自己的UI也不迟。
音频素材一般包含了背景音乐、音效。整理好以后,放到\data\music文件夹里。
音频资源网络上可以轻易下载到,也可以暂时用OPENBOR自带的资源。背景音乐OPENBOR采用的是BOR或OGG格式。
音效方面,OPENBOR采用的是WAV格式。可以用GoldWave这个软件来切割。
音效音频整理好以后,放到\data\sounds文件夹里。
角色编辑器
AI编辑器
场景编辑器
关卡编辑器
有些软件会把这几个模块都放置到同一个面板,例如2D格斗软件2DFM就是同一个页面。但从程序开发角度来说,这些模块都是独立模块。每一个模块的开发周期可能都要1周到数月。
OPENBOR的编辑采用纯TXT文本操作,用户可以很容易找到各个模块的位置。资源准备就绪,我们就开始来编辑关卡了。OPENBOR的角色编辑是这个样子的。
打开\data\chars\mukui下的角色TXT文本,可以看到很多可配参数——
开发者只需要按照OPENBOR的标准ID字符来配置这些参数即可。由于功能繁多,有兴趣的同学可以自行阅读OPENBOR的开发说明文档。例如这是主角的普通直拳的一个配置——
#攻1
anim attack1
loop 0
delay 2
offset 225 360
bbox 173 153 105 212
frame data/chars/mukui/446.gif
frame data/chars/mukui/447.gif
delay 5
attack 268 193 98 51 10 0 0 0 10 50
dropv 6 3 0
frame data/chars/mukui/448.gif
attack 0
delay 3
frame data/chars/mukui/449.gif
frame data/chars/mukui/450.gif
简单地说,就是主角以不同的速度来播放了446-450整套序列帧图。并且在448号图的时候触发了攻击框。
大家有没有发现,这套编辑方法本质上就是GIF动画的编辑逻辑,只不过在合适的帧数里加入了攻击判断。
音效
光效
打中人的瞬间,双方的抖动帧数
经过研究发现,不同的动作游戏其顿帧的时间不同。似乎动作游戏的顿帧时长都偏低,比格斗游戏还短。分析其原因,就是因为动作游戏频繁攻击,如果顿帧时间太长很容易视觉疲劳。
通常来讲,顿帧越长就意味着那一拳越带劲,打击感爆满。但是当一款游戏所有攻击的顿帧都很长的时候,就会显得非常无趣。就好比《黑客帝国》里整部电影都是子弹时间,或者某个宴席里所有菜都是烤乳猪,用户会非常腻烦……
因此建议大部分攻击,其顿帧都维持在6-12之间的某个数,部分超必杀或者必杀技的收尾一击时,可以把数值配大。这个顿帧的应用,不仅可以用在2D项目上,其实3D项目也是共通的。
判定框分为受击框、攻击框、碰撞框,下图是受击框的一个范例。猜猜看哪种绘制方法是正确的,哪种是错误的?
下图左边是正确的绘制,不随主角呼吸而晃动。右边是错误的绘制,过于强调跟随身体,会严重影响高玩的攻击判断。
《拳皇》的受击框,在体形上相差不会很大。下蹲和跳跃姿态的时候甚至简化了一个框。
《街头霸王4》的判定框也采用类似做法,一切从简,以打击感的稳定为目标。
判定框的绘制肯定也不需要随角色胳膊的晃动来变化,没必要每张都画。如果某个动作,其身体摆动幅度不大,那么其受击框应该尽量只绘制一套。(OPENBOR的逻辑是某一个指令会通吃下面所有脚本行,除非遇到了下一个同样的指令。)
角色的动作是由图片组成的,每一张图片的停留时间将决定了动画的快慢与否,流畅与否。
通常一个动作包含了“发招,攻击,收招”三个阶段。也有些玩家习惯称之为“前摇、攻击、后摇”。
制作统一的受击图,可以节约编辑工作。要知道SNK公司是做了十几年的格斗游戏,在手感这一块是顶尖的代表。因此虚心学习SNK公司的动画帧数数据是非常有必要的。
那么我们这个角色的第一拳,参数就参考一下金家潘,先这么设置吧。
这里并非叫大家照着金家潘的手感来制作这个角色,而是通过一种低学习成本来尽早学会编辑角色。事实上当游戏完成后,自己完全可以微调各种参数。如果要自己去原创尝试,数值该怎么填?8、9、10?10、20、30?对于一个没有动作游戏编辑经验的策划来说,凭感觉去调整参数说不定会适得其反,效果越调越差。
特效和音效方面,OPENBOR默认播放的是flash.txt和flash.wav,图像资源位置在\data\chars\misc。
name Flash
type none
shadow 0
toflip 1
alpha 1
anim idle
loop 0
delay 2
offset 160 160
quakeframe 0 3 3
frame data/chars/misc/flash1_01.gif
frame data/chars/misc/flash1_02.gif
frame data/chars/misc/flash1_03.gif
frame data/chars/misc/flash1_04.gif
frame data/chars/misc/flash1_05.gif
frame data/chars/misc/flash1_06.gif
frame data/chars/misc/flash1_07.gif
frame data/chars/misc/flash1_08.gif
frame data/chars/misc/flash1_09.gif
当需要在某个特定的招式弃用特殊的特效和音效时,则在相应的attack里面配置新的特效。
关卡方面,打开\data\levels下的关卡TXT文本,可以看到很多可配参数。
# Street
music data/music/01_Go_Straight.bor
bossmusic data/music/menu.bor
# Load images
background data/bgs/city/city_back.gif
panel data/bgs/city/city_road.gif
frontpanel data/bgs/city/city_front.gif
order a
light 0 -128
at 0
direction both
#notime 1
#settime 0
#gravity -10
spawn Hamburger
coords 700 440
at 0
spawn Gold
coords 400 390
at 0
基本就就是列出了关卡所需的背景音乐、前后景需要的场景资源,下雨的特效、以及电话亭物件、敌兵的摆放坐标。
关卡的清版逻辑很简单,有一个wait的字符,表示当前字符以前的敌兵必须全部杀死,才可以解开锁定的区域。
时间关系,笔者不再罗列出所有脚本的功能用途。不过OPENBOR这款开源软件比较好的地方在于:所有功能都是用类似脚本的方式写入,网上可以很轻松的找到DEMO范例用来学习。
我们来回顾一下一款动作游戏的DEMO,它是由哪些东西构成的。
积少成多,小关卡可以组成大关卡,大关卡可以组成大章节。
关卡就像是一枚螺丝钉,它的最终服务对象是游戏的各大核心系统。
制作DEMO的过程中,大家将学到哪些功能是必须的,哪些是可有可无的。
当这些知识运用到我们工作中时,就会大大节约策划、美术、程序之间的沟通成本,也会加深你对于游戏制作的理解。
评论区
共 13 条评论热门最新