加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
本帖最后由 nsgc732047 于 2010-8-19 01:12 编辑
RMXP中战斗的几个常用战斗系统的分析
——原版战斗系统
超级纵版战斗系统 超级横板战斗系统 全动画战斗系统
(适合新手和老手阅读)
战斗系统——RPG游戏中最重要的一个子系统,也是RPG游戏的魂。无论是在传统RPG、ARPG还是SRPG中,一直以来战斗系统的设计都是RPG游戏研究的重点对象。该系统设计的好坏也一直都是判定一个RPG游戏设计成功与否的标志。以下将介绍几个在RMXP中比较流行的战斗系统。 一、原版战斗系统 作为一款游戏设计软件,RMXP不失为优秀。它本身自带的纵版战斗系统已经足以实现RPG游戏所要求的战斗。但是,其自带的纵版战斗系统所表现出来的战斗效果根本就不足以令人满意。在这里我们首先来解释一下什么叫纵版战斗,纵版战斗就是敌人和玩家所控制的角色在战场上按照上下分布平行对持。图1-1是一张RMXP自带战斗系统的截图。 file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image-2208.png
图1-1原版战斗系统
明显可以看到在这个原版的纵版战斗系统中,角色和敌人是分布于战斗画面上下平行的两边。上面一排是敌人,下面一排是角色。原版战斗系统的特点是战斗画面呆板,敌人和角色没有待机动作,就像一张精致的贴图,完全没有什么动态效果可言。无论是物理攻击方式,还是技能攻击方式下的角色打击或是敌人打击,角色和敌人都是站在固定的位置,完全看不到移动,这样近乎静态的效果,并不能让人感觉到是一场战斗。 现在RMXP中比较流行的战斗系统有三个:超级纵版战斗系统,超级横版战斗系统,全动画战斗系统。 二、超级纵版战斗系统 超级纵版战斗系统是在原版的战斗系统上加强的。系统通过对原版战斗系统数据库的重写来得到动态的效果,使得战斗看起来更像战斗。这套战斗系统在强大的数据库的支持下,利用默认素材实现了使用行走图来做战斗图,以及描绘动态效果的人物待机动画。这样就为那些想要使用RMXP编写游戏,但是又对代码、美工都一无所知的开发人员提供了一个傻瓜式的战斗系统。简单的说,这一套战斗系统拿到自己的脚本工程里就可以使用,游戏开发人员根本就不用去关心脚本修改的问题,也不用去担心脚本冲突的问题。图1-2是该战斗系统的截图从超级战斗系统的截图可以看到,角色和敌人的相对位置仍然不变,但是战斗画面明显的较原版赏心悦目的多。人物也更加的可爱,并且在战斗的过程中,物理攻击除去远程兵种之外都能走到敌人面前打击敌人,大大的提高了动态的效果。 file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image-31234.png
图1-2超级纵版战斗系统
三、超级横版战斗系统 超级横版战斗的原理和超级纵版战斗的原理如出一辙,就数据库的修改来说,不同的只是敌人和角色的站位坐标计算不同角色使用的行走图方向不同,其他的效果都是相同的。超级横版战斗系统中,敌人和角色分布在战场的左右两侧,行走图选择的都是侧面的部分。图1-3是超级横版战斗系统的截图。图中不难发现超级横版战斗系统所表现出来的战场,较纵版系统来说要宏大的多,在攻击技能的表现上,也要比横版战斗华丽。因此,在拿来就用的脚本里,这个脚本在使用上要更受到不懂代码、美工的开发人员的欢迎。 file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image-9232.png
图1-3超级横板战斗系统
四、全动画战斗系统。 全动画战斗系统,和之前两个流行的战斗系统是完全不同的。无论从战斗的场面,人物角色,还是动画效果来说在RMXP中都是一流的。在这款自制的游戏里笔者也使用了这个战斗系统。要想使用全动画战斗系统,就必须得遵守使用该系统的第一原则就是,放弃默认素材和部分脚本。在这里我们要详细的介绍一下这个战斗系统所能实现的功能。先来看图1-4一张该系统的截图。 file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image-6839.png
图1-4 全动画战斗系统
正如图1-4所示全动画战斗系统,是一个45°斜版的战斗系统、当然也可以制作成一个横版的,这里我们只介绍比较常用的45°战斗。如何来理解这个斜版呢?说的就是角色和敌人平行的处在和水平面成45°角的位置处。该系统不依靠庞大的战斗图——其实系统所使用的战斗图都只是空图,目的仅仅只是用来表示战场上人物的大小,只是通过数据库中原有的动画编码来实现待机、攻击、防御、挨打、胜利、死亡六个状态的动态效果。该战斗系统突破了不同人物,不同帧数的限制,方便了单帧动画单帧修改,看似小小的突破但却成了该系统的点睛之笔。这里解释一下,在原版的战斗中对战斗中所有以上提到的动画效果,都要通过数据库加载多个状态的显示动画才能在战斗中被看到,加载的过程是一个复杂而耗费内存的过程。全动画战斗系统不需要通过大量的数据库加载,而只需要通过对同一张战斗图的多个状态按照动画编排的序号连续命名即可实现。这样就不用在角色行走图文件包中放入所有状态所需要的图片,而只需在动画设置的过程中,将这些动画制作好就可以了,战斗时游戏会根据战斗图的命名顺序来自动适应状态。
虽说,全动画战斗系统是一个强大的战斗系统,但是,其使用率并不如之前介绍过的两个超级战斗系统那么广泛。原因在于这个系统并不是一个可以拿来就用的系统,要使用他要解决的问题是很多的。全动画战斗系统一开始就是一个摒弃默认素材和部分默认脚本的系统,他对图片有着特殊的要求,特别对战斗图的要求。系统要求角色战斗图必须要有待机,防御,挨打,死亡动态,死亡静态,胜利动态,胜利静态动画这七个动画,而且战斗图要求只是一个指定大小功能的透明图,与普通的人物实体的战斗图不一样。敌人战斗图必须要有待机,挨打,死亡动态,死亡静态动画这四个动画。只要缺少其中的一个状态在战斗测试时系统都会报错。另一方面,对命名的要求有一定的规范,恰当的命名意味着“了解名称就可以理解对象”。角色命名要求:“名字★待机动画序号★防御动画序号★挨打动画序号★死亡动态动画序号★死亡静态动画序号★胜利动态动画序号★胜利静态动画序号”,敌人命名要求:“名字★待机动画序号★★挨打动画序号★死亡动态动画序号★死亡静态动画序号★”。值得特别注意的是,这些“序号”是你在数据库中动画项目一栏中每个动画对应的序号。如图1-5角色玄青战斗图的命名方式就应该是:“玄青★005★006★009★010★011★007★008”,如图1-6敌人三皇子的命名方式该是:“三皇子★199★★201★202★★★”
file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image-18943.png file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image-27997.png
图1-5 角色动画序号 图1-6敌人动画序号 多数RMXP游戏设计者在应用全动画战斗系统时经常会出错的地方就是图片存放的路径,和战斗图命名的方式,因为不能理解战斗图的命名的方式所以多数设计人员在战斗测试的时候都会发现,在战场上能够使用所有的技能动画,也能看到伤害数值,但是却看不到自己控制的角色和敌人。更为头疼的一点,一个完全不懂得代码知识的设计者,在拿到这个系统的时候根本就不知道系统中所使用图片是从哪个文件包里调用的。新的图片又该放到哪个文件包内才能在自己的游戏中使用。正因如此,大部分的RMXP游戏设计者在使用过全动画战斗系统之后就决定放弃了。 即使学会了如何使用全动画战斗系统,如果没有绝对的耐心来设置战斗图的命名,以及使用PS来设计一些缺少的人物战斗开启状态下的状态动画,那么想使用全动画战斗系统来制作一款华丽的基于RMXP平台下的RPG游戏几乎就是不可能的。
总之,选择怎样的战斗系统都要根据自己的技术水平,以及游戏类型的需要决定。
|