游戏开发论坛

 找回密码
 立即注册
搜索
查看: 5030|回复: 0

一个人也能完成?手把手教你做一个游戏DEMO

[复制链接]

5万

主题

5万

帖子

8万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
88642
发表于 2020-12-8 14:09:19 | 显示全部楼层 |阅读模式
作者:江西恐龙(Dino)
(腾讯互动娱乐 游戏策划)

从行走逻辑上区分,横版动作游戏一般分为单线横版、纵深横版。从玩法上区分,还可以细分为格斗、射击、动作等。

微信图片_20201208135309.JPG

微信图片_20201208135312.jpg

横版动作游戏在手游的比重越来越大。如果可以尝试着自己制作一款动作游戏DEMO——

对自己,可以学到更多游戏开发的知识。包括角色设计、关卡构成等等。

对项目,可以一两周内就可以出一个简单的DEMO给老板演示。

现在市面上有哪些现成的游戏开发软件可以使用?

微信图片_20201208135317.JPG

微信图片_20201208135318.JPG

微信图片_20201208135320.jpg

2DFM:全称是“2D格斗游戏制作工具2nd”。它是由日本OUTBACK制作、EB发行的一款2D格斗游戏制作工具。利用这款软件玩家可以独立制作出属于自己的PC格斗游戏——台湾FK小组制作的《超级COSPLAY大战final02版》。本人制作的《东东不死传说》都是用2DFM开发完成的。

微信图片_20201208135322.JPG

AGM:全称为ActionGameMaker,同样由日本EB发行。拥有ACT,ARPG,STG等组件,使用这些组件就能制作出相应的PC、XBOX360、PS3游戏,并且组件可以混合使用,例如可以做出地图上是ARPG,迷宫里是STG的游戏。可以说非常强悍。

微信图片_20201208135323.jpg

OPENBOR:横版过关游戏开发软件。BOR软件的原名是《Beats of Rage 》,名字有向SEGA的MD游戏《Streets of Rage》致敬的意思。开发者开源发布后改名为OPENBOR。它可以输出PC、安卓、PSP、XBOX等平台版本。上图是本人制作的横版DEMO。

微信图片_20201208135325.JPG

接下来,让我们试试用OPEN BOR来制作一款DEMO——

微信图片_20201208135326.JPG

如果要制作横版过关游戏DEMO,我们先了解一下动作游戏的构成。通常一款横版动作游戏,包含了哪些元素?

恐龙世纪的第一关可以拆解成这样:

微信图片_20201208135328.JPG

微信图片_20201208135330.JPG

所谓的关卡,其实就是一群角色在一个房间里打架的过程:

微信图片_20201208135332.JPG

关卡的核心体验其实大同小异,这是另外一群角色在另外一个房间打架的过程。

微信图片_20201208135334.JPG

微信图片_20201208135335.JPG

说白了,这个就是一款动作游戏的基础框架:房间、人、打架。

微信图片_20201208135337.JPG

那么我们接下来,针对这个房间,分解出一款DEMO需要用到的素材:

1.角色素材
2.场景素材
3.UI素材
4.音频素材

微信图片_20201208135339.JPG

OPENBOR这款软件没有操作界面,纯文件夹操作。并且资源全部为熟悉的GIF、WAV等资源。可以从网上下载到OPENBOR的最新版本,容量只有几M。

微信图片_20201208135341.JPG

角色素材分为:主角、杂兵、特效。

微信图片_20201208135343.JPG

破解资源随意混搭会出现比例失调的情况。因此一定要规划好尺寸。

微信图片_20201208135344.JPG

角色资源整理好以后,放到Chars里面的次级文件夹里,以本人这个DEMO为例:\data\chars\mukui文件夹里。

微信图片_20201208135346.JPG

场景素材:同理。要么自己画,要么先用网络资源。

微信图片_20201208135348.JPG

场景资源的透视关系也是很重要的。经过对比发现最常用的角度一般是30度或者45度。60度比较少见了。

微信图片_20201208135350.JPG

微信图片_20201208135352.JPG

微信图片_20201208135354.JPG

场景资源整理好以后,放到Bgs里面的次级文件夹里,以本人这个DEMO为例:\data\bgs\city文件夹里。

微信图片_20201208135356.JPG

UI素材:一般分为战斗UI和主菜单UI。OPENBOR自带了一套战斗UI资源,因此这个步骤可以缓一缓。等DEMO打磨得非常精美的时候,再替换成自己的UI也不迟。

微信图片_20201208135358.JPG

微信图片_20201208135359.JPG

音频素材:一般包含了背景音乐、音效。整理好以后,放到\data\music文件夹里。

微信图片_20201208135401.JPG

音频资源网络上可以轻易下载到。也可以暂时用OPENBOR自带的资源。背景音乐OPENBOR采用的是BOR或OGG格式。

音效:OPENBOR采用的是WAV格式。可以用GoldWave这个软件来切割。

微信图片_20201208135403.JPG

音效:音频整理好以后,放到\data\sounds文件夹里。

微信图片_20201208135405.JPG

通常一款横版动作游戏包含的模块:

1.角色编辑器
2.AI编辑器
3.场景编辑器
4.关卡编辑器

有些软件会把这几个模块都放置到同一个面板。例如2D格斗软件2DFM就是同一个页面。但从程序开发角度来说,这些模块都是独立模块。每一个模块的开发周期可能1周-数月。

微信图片_20201208135406.JPG

OPENBOR的编辑采用纯TXT文本操作。用户可以很容易找到各个模块的位置。资源准备就绪,我们就开始来编辑关卡了。OPENBOR的角色编辑是这个样子的。

微信图片_20201208135408.JPG

打开\data\chars\mukui下的角色TXT文本,可以看到很多可配参数——

name  mukui
type  player
health  300
speed  30
#被投掷的长、高
throw  8 6
#被投掷的伤害
throwdamage   50
#影子种类
gfxshadow  1
#跑的速度、跳高、跳长倍数、是否上下跑、跳跃着地后是否继续跑
running  60 7 1.4 1 0
#烟尘动画,在MISC里
dust    dust3
#跳跃高度、速度、是否反向、重力
jumpheight  7
jumpspeed  30
jumpmove  0 0
antigravity  -110

开发者只需要按照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动画的编辑逻辑,只不过在合适的帧数里加入了攻击判断。

角色编辑小诀窍1:打击感的由来

一套完整的打击感包括了以下几个基础因素:

1.音效
2.光效
3.打中人的瞬间,双方的抖动帧数

微信图片_20201208135410.JPG

微信图片_20201208135412.JPG

经过研究发现,不同的动作游戏其顿帧的时间不同。似乎动作游戏的顿帧时长都偏低呢,比格斗游戏还短。分析其原因,就是因为动作游戏频繁攻击,如果顿帧时间太长很容易视觉疲劳。

通常来讲,顿帧越长就意味着那一拳越带劲,打击感爆满。但是当一款游戏,所有攻击的顿帧都很长的时候,会显得非常无趣。就好比黑客帝国里整部电影都是子弹时间,或者某个宴席里所有菜都是烤乳猪。用户会非常腻烦……

微信图片_20201208135414.JPG

因此建议大部分攻击,其顿帧都维持在6-12之间的某个数,部分超必杀或者必杀技的收尾一击时,可以把数值配大。这个顿帧的应用,不仅可以用在2D项目上,其实3D项目也是共通的……

角色编辑小诀窍2:判定框的绘制。

判定框分为受击框、攻击框、碰撞框。下图是受击框的一个范例。猜猜看哪种绘制方法是正确的,哪种是错误的?

下图左边是正确的绘制,不随主角呼吸而晃动。右边是错误的绘制,过于强调跟随身体,会严重影响高玩的攻击判断。

微信图片_20201208135416.JPG

格斗之王的受击框,在体形上相差不会很大。下蹲和跳跃姿态的时候甚至简化了一个框。

微信图片_20201208135418.JPG

街头霸王4的判定框也采用类似做法,一切从简。以打击感的稳定为目标。

微信图片_20201208135420.jpg

判定框的绘制肯定也不需要随角色胳膊的晃动来变化,没必要每张都画。如果某个动作,其身体摆动幅度不大,那么其受击框应该尽量只绘制一套。(OPENBOR的逻辑是某一个指令会通吃下面所有脚本行,除非遇到了下一个同样的指令。)

微信图片_20201208135422.JPG

角色编辑小诀窍3:动画帧数的调配。

角色的动作是由图片组成的,每一张图片的停留时间将决定了动画的快慢与否,流畅与否。

通常一个动作包含了“发招,攻击,收招三”个阶段。也有些玩家习惯称之为“前摇、攻击、后摇”。

微信图片_20201208135424.JPG

制作统一的受击图,可以节约编辑工作。要知道SNK公司是做了十几年的格斗游戏,在手感这一块是顶尖的代表。因此虚心学习SNK公司的动画帧数数据是非常有必要的。

微信图片_20201208135426.jpg

下图是拳皇98的帧数表,可以适当参考。

微信图片_20201208135428.JPG

那么我们这个角色的第一拳,参数就参考一下金家潘,先这么设置吧。

微信图片_20201208135430.JPG

这里并非叫大家照着金家藩的手感来制作这个角色,而是通过一种低学习成本来尽早学会编辑角色。事实上当游戏完成后,自己完全可以微调各种参数。如果要自己去原创尝试,数值该怎么填?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里面配置新的特效。

微信图片_20201208135432.JPG

关卡方面,打开\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,它是由哪些东西构成的。

微信图片_20201208135433.JPG

积少成多,小关卡可以组成大关卡,大关卡可以组成大章节。

微信图片_20201208135435.JPG

微信图片_20201208135437.JPG

关卡就像是一枚螺丝钉,它的最终服务对象是游戏的各大核心系统。

微信图片_20201208135438.JPG

制作DEMO的过程中,大家将学到哪些功能是必须的,哪些是可有可无的。

OPENBOR演示

当这些知识运用到我们工作中时,就会大大地节约策划、美术、程序之间的沟通成本。

谢谢阅读!

文/江西恐龙(Dino)  
来源:腾讯GWB游戏无界
原文:https://mp.weixin.qq.com/s/CIKfvDwgqjJzHKfdxNfEcA

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-5-29 06:37

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表