Project1

标题: 横板格斗战斗脚本使用教学(人物创建篇) [打印本页]

作者: 我爱龙    时间: 2009-2-2 00:02
标题: 横板格斗战斗脚本使用教学(人物创建篇)
第二篇教程(必杀技制作篇)地址:
http://rpg.blue/viewthread.php?tid=117333
第三篇教程(飞行道具、AI篇)地址:
http://rpg.blue/viewthread.php?tid=117455

想做出如《幻想传说》那样的横板战斗吗?想DIY一个属于自己的格斗RPG吗?用RMXP实现并不是梦想。而实现的方法,就是樱雅开发的Full-Move BattleSystem

原版范例下载
http://rpg.blue/UP_PIC/200801/Full-Move_Battle_System.rar

简化版脚本下载地址:(此脚本已经过我的修改,增强了一些格斗感,本教程也是以此版本为标准)
http://rpg.blue/UP_PIC/200801/我爱龙_横板格斗脚本.rar

使用说明:这个脚本文件是直接从我工程里拿出来的。各位要把分割线之内的Window_EquipItem和Full CBS 的几个Part一起拷到自己的工程里,其他的不要复制,否则直接用会出错。

很多网友说不会用这个脚本,由于在下近日正在用这个脚本做游戏,所以略微了解了一些皮毛,目前将我所知的部分向大家做些解释,相信看懂了之后,要做出自己的格斗RPG也不是那么困难了。

首先,这个脚本的作用是完全改变原来的战斗方式,从回合制变成了横板即时格斗。操作方式:上下左右控制方向,双击左或右是加速跑;C键(以下皆以键盘上的按键为准)为普通攻击,连按三下是三连击;X键是必杀技,X、前X、上X和下X分别是四种不同的必杀技,需要事先在技能窗口设定好;A键是跳跃;S键是防御;D键是暂停游戏,同时打开战斗选项窗口,第一个选项是使用道具,第二个选项是设定技能,第三个选项是逃跑;W键是换人,作用是当共同战斗的角色有2人以上时,按此键可以切换自己操纵的角色。

理解了基本的操作方式,接下来就是制作自己的角色人物了。由于战斗是横板格斗,因此需要各种各样的动作,包括待机、行走、攻击等等。这里我用从KOF游戏中提取出来的gif图片为例说明一下制作方法。

前期的准备:在Battlers文件夹中放一张图片,命名为weapon_001,图片内容为空也没关系,但一定要有这张图片。

万事开头难,首先我们要知道如何创建一个人物。先在游戏工程的数据库里新建一个角色,行走图可以随便设,但战斗图先不要设。然后我们打开脚本,在“FullCBS part-5 (Reflex)”里面,找到34行的case actor_id,这里就是设置一个人物的各种基本属性,大多数属性的旁边都有注释,不难看懂。我来解释一下@stand_body_rect、 @sit_body_rect和 @down_body_rect分别是人物站立、下蹲和倒地时的判定范围。相当于人物的坐标和大小。= Rect.new(X坐标, Y坐标, 人物宽度, 人物高度)设完之后我们可能对这些数字没有概念,不知道到底人物坐标在哪儿,到底有多大,别急,后面会慢慢讲到。后面的战技设定是规定了这个人物可以使用多少基本的攻击动作。比如@forte_ids[ 1]        = 121 # 弱攻撃 意思是使用弱攻击就等于使用121号特技。以下依此类推。

我们再把脚本往下拉,在设定完actor之后,会看到def setup_enemy_reflexes(enemy_id)和case enemy_id,这里是设定敌人的,方法和设定角色一样,别忘了在数据库中先建好一个敌人再到脚本中这个位置进行设置。

设定好人物之后没有战斗图怎么办?首先我们需要一张默认的战斗图,比如我要做一个二阶堂红丸,那就选一张红丸的战斗图,取名叫BENIMARU。注意这个BENIMARU一旦确定,就不要随意更改,因为后面的一系列图片都要以这个作为基础。同时在数据库中为角色设置好这张战斗图,也可以顺带新建一个敌人,也用这张战斗图,用以测试。

接下来看这张照片

为什么会有这么多红丸呢?其实这就是他的动作图。请大家搜索脚本中的“def do_stand”,会找到下面这段话
  def do_stand
    return if @me.now_form_id/10 == 0 and !@attack_motion_plan.empty?
    @dashing = false
    @attack_motion_plan = [1,nil,nil,2,nil,nil,...
  end
这里面的1,nil,nil,2,nil,nil,...就是人物站立时的动作编号。看一下,最大的数字是10,就表示人物站立待机的动作需要10帧。那么我们就需要10张战斗图,分别代表这10帧的动作。而图片的来源很简单,下载一张红丸站立时的gif图片,用gif movie gear打开,看看是不是有10帧的内容,多了就删掉重复的,少了就复制几帧贴在后面,总之补足10帧就行。然后选“另存为”,保存类型PNG,风格为“独立图像”,选“所有的”,在左边的白框中键入文件名范例“BENIMARU_00”,这时会看到下面的“文件名范例”会出现“BENIMARU_001”和“BENIMARU_002”。不错,这样保存的话,他就会自动在文件名前缀后面编号,从而得到从“_001”到“_010”的10张图片,当然,_010这张名字得改一下,默认的是_0010。

改完之后将这10张图片也都放进Battlers文件夹里。此时进入战斗测试,看看,是不是红丸在站立待机时已经会动了呢?

以此类推,其他的动作也可以通过相同的方法完成,我就不一一赘述了,只把动作对应的编号讲一下。
站立:001-010
行走:011-020
奔跑:021-026
下蹲:031
跳起上升阶段:041
跳起下降阶段:051
防御:061
挨打:071-074
倒地(或曰死亡图):091
战斗胜利动作:901-950(可以自己改得更多)
战斗险胜动作:801-850(同上)
普通攻击(第一下和第二下是一样的):111-113
普通攻击(第三下):116-120
冲跑攻击(在奔跑中按攻击键):121-130
前强攻击、上强攻击(按住前或上再按攻击键):131-140
下蹲攻击(按住下和攻击键):141-150
空中攻击:152
空中强攻击:151

以上是一个人物的基本动作。编号161-800目前都处于空闲状态,可以日后用来做必杀技。

那么,现在一个人物就算做完了吗?在战斗中攻击试试,是不是会脚本出错?那是因为虽然在脚本中设定了战技,但在数据库中还没有设定过。刚才说到的弱攻击就是121号特技,那么就在数据库的“特技”一栏中设一个121号特技,名字就叫弱攻击。同理122-127都要设好,是地面上的攻击技,而131-135是空中的攻击技。

最后,关于人物坐标,如何确定自己设置的坐标和高宽是合理的呢?其实打开脚本,在FullCBS part-8的第9行,将ENABLE_RECTLINE_WINDOW = false改成= true,这样在战斗中就会把人物设定的坐标和长宽矩形给画出来,一目了然,但是游戏速度被大幅降低,只是用于测试之用。

说了这么多,如果您能自己试着做出一个人物出来了,那我写这篇东西就没白费。如果大家支持,我会再继续介绍如何制作必杀技以及如何设定敌人AI等方法。

欢迎拍砖{/hx}

作者: 仲秋启明    时间: 2009-2-2 00:52
好强{/qiang}
作者: 柳之一    时间: 2009-2-2 01:09
我正在找这个脚本,我爱龙能不能放出原版的阿,正在找。。。{/hx}
作者: 我爱龙    时间: 2009-2-2 01:38
以下引用柳之一于2009-2-1 17:09:22的发言:

我正在找这个脚本,我爱龙能不能放出原版的阿,正在找。。。

应求放出,话说我现在用的脚本最早也是从别人的游戏里提取出来的{/hx}
作者: zjpllll    时间: 2009-2-2 02:13
提示: 作者被禁止或删除 内容自动屏蔽
作者: RXVincent    时间: 2009-2-2 02:19
终于会用那个Namco传说战斗脚本了,3Q
PS。强烈要求LZ放出下一步教程
作者: 我爱龙    时间: 2009-2-2 04:46
以下引用zjpllll于2009-2-1 18:13:34的发言:

用RM能做格斗游戏呃```` 强啊 不过不是有一个叫什么2D格斗大师的东西吗? 为什么要用RM

因为可以做出丰富多彩的剧情{/hx}
作者: swabwind    时间: 2009-2-2 08:54
咦??这个不是我N久以前转载的那个类NAMCO传说的战斗系统吗?
我爱龙你翻译了?{/fd}
记得当初我转过来的时候都是乱码的说。。
支持了

PS。。原来你藏了这么久,,,
作者: 劍之飛龍☆    时间: 2009-2-2 18:48
等这玩意等了好久……
原版一直找不到……
顶·{/qiang}
作者: RXVincent    时间: 2009-2-2 19:28
I want to see the next text.3q


                        ----By RXVincent in PSP
作者: 我爱龙    时间: 2009-2-2 19:50
以下引用RXVincent于2009-2-2 11:28:41的发言:

I want to see the next text.3q


                       ----By RXVincent in PSP

今天下午准备发必杀技教程
作者: HзO    时间: 2009-2-2 20:16
用了这个数据库里的装备还有用吗?
作者: 我爱龙    时间: 2009-2-2 20:46
以下引用HзO于2009-2-2 12:16:27的发言:

用了这个数据库里的装备还有用吗?

当然有用啦~
作者: 乱摸阿弥陀佛    时间: 2009-2-4 00:21
能不能附上红丸动作的素材啊?
作者: 我爱龙    时间: 2009-2-4 00:38
以下引用乱摸阿弥陀佛于2009-2-3 16:21:37的发言:

能不能附上红丸动作的素材啊?

EMU GIF网站上就有啊,用GIF MOVIE GEAR分解,一分钟都不用就搞定{/gg}
作者: 乱摸阿弥陀佛    时间: 2009-2-4 04:23
EMU GIF网站在哪儿呢??
作者: 电眼娃娃∮轩    时间: 2009-2-4 04:39
- -||挺好挺好滴!
作者: 我爱龙    时间: 2009-2-4 06:29
以下引用乱摸阿弥陀佛于2009-2-3 20:23:13的发言:

EMU GIF网站在哪儿呢??

http://emugif.fcmgame.com/
作者: 林Z明    时间: 2009-2-13 08:09
如果是中文就好~
作者: 苍穹的巨熊    时间: 2009-3-6 01:49
很厉害啊!最近一直在找这样的脚本!感谢!{/qiang}
作者: 407811712    时间: 2009-3-7 23:22
请问FullCBS part-3第1163行发生错误
通常是什么原因才会导致那里发生错误的
作者: ONEWateR    时间: 2009-3-15 23:56
发布完毕
http://rpg.blue/web/htm/news1244.htm
vip += 2
作者: 姬文翔    时间: 2009-3-18 22:16
虽然路子是开了,可要做出真正自己的这类型游戏可就虐待美工了{/gg}
作者: Baroque    时间: 2009-3-19 15:44
提示: 作者被禁止或删除 内容自动屏蔽
作者: lszt1001    时间: 2009-3-21 04:07
怎么好像缺玩意?原版本能成功工作,翻译版却……
作者: 我爱龙    时间: 2009-3-23 05:34
以下引用lszt1001于2009-3-20 20:07:28的发言:

怎么好像缺玩意?原版本能成功工作,翻译版却……

请仔细看我的说明,翻译版不能直接使用,只能复制必要的部分脚本到自己的工程里才行
作者: 小白的熙    时间: 2009-3-28 21:55
提示: 作者被禁止或删除 内容自动屏蔽
作者: ssssepwq    时间: 2009-3-29 13:54
提示: 作者被禁止或删除 内容自动屏蔽
作者: smart_fish    时间: 2009-4-14 18:42
提示: 作者被禁止或删除 内容自动屏蔽
作者: orzbai0593    时间: 2009-4-19 02:38
提示: 作者被禁止或删除 内容自动屏蔽
作者: super5550765    时间: 2009-10-26 15:14
楼主,在FullCBS part-8的第9行,将ENABLE_RECTLINE_WINDOW = false改成= true,
战斗时看到的地平线,怎样改低一点啊?
作者: jaiy247247    时间: 2009-11-14 21:57
翻一下吧!
跟本看不清楚!
作者: 良歌p    时间: 2009-12-10 19:20
提示: 作者被禁止或删除 内容自动屏蔽
作者: 88988976    时间: 2010-2-6 12:53
连接都失效了……

我真的很想学啊……
作者: zh99998    时间: 2010-2-6 12:57
UP_PIC部分已修复
作者: qq1029537990    时间: 2010-6-27 19:22
啊!!怎么弄都弄不会呀。。
作者: 姬文翔    时间: 2010-6-28 02:45
太强大了。膜拜
作者: tangjt    时间: 2010-7-5 12:09
一直就想做个格斗的,就是一直没有找到入口,现在好了!




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1