3-1 剧情篇:显示文章、选择项、增减物品、开关变量操作、条件分歧、移动路线等

本段教程制作实例:游戏开始,主角会自言自语介绍故事背景(……)随后主角的师父走过来让主角选择接一个任务去取5个某物品,取够之后完成任务。

首先,游戏中设置好角色的初期位置(游戏刚开始的时候角色默认脸向下),然后新建一个新事件,图形设置好,将事件开始条件设置为自动执行,表示一开始进入游戏,主角就会立刻开始说话。然后选择事件指令的“显示文章”,编辑主角将要说的话。在这个显示文章的框里写字的时候要注意,不要把整个文字框写满,每一行要在还剩下两个字的时候就换行,因为RM的对话框在显示对话的时候,最后两个字是显示不完整的。写完一段话之后,可以按F2预览你当前的这段话。当然,显示文章里面还有很多特殊的代码用途,按一下F1可以看到,比如给文字加上特殊的颜色,直接显示数据库里1-N号角色的姓名或者开启金钱窗口之类的。这些在后面我们都慢慢应用。每一条事件指令都可以自由编辑,写错了的话选中按空格就能再次编辑了。

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三]

主角简介之后,加一个旁白——这时主角的师傅走过来。这一段为了显示出一个旁白的效果,可以把文字从屏幕下面放到中间来并且把文字换一个颜色,同时窗口透明。使用“更改文章选项”,将位置改为“中”,然后窗口改为“不显示”,那么在游戏里就只会显示字并且位置在中间了。但是,要记得旁白完毕之后改回来,否则后面的文章都会这么显示了。

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三]

旁白的字最好和正常对话的字不一个颜色,那么就在显示文章中使用“c[n]”的代码,n可以等于1-8八个不同的数字,指代八种不同的颜色。按F2就能预览出来效果了。在这个实例里我同样用了“n[n]”的代码来直接读取数据库的角色名字,用n[1]的时候,RM会自动显示数据库1号角色的名字。

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三]

接下来,就要控制角色的师傅,也就是你目前设置的这个事件向角色走过来了。事件处理第二页,“设置移动路线”指令就是这样使用的。选择它以后,先在最左上角确定好要移动的对象——“角色”“本事件”或者是在下拉列表里选择其他事件。也就是说一个事件其实可以操纵另一个事件的移动。虽然这张地图上我们目前只有一个事件,但是以后会增加更多的话,也要记得别弄错了对象。然后就是具体的移动设置,右边有很多按钮操作,都很直观。每点选一次出现一个“向右移动”,就表示该对象向右移动一步。所以我们这里要他走三步,就要有三个向右移动。然后因为移动完它的脸是冲右的,为了让他和主角说话,加一个“面向主角”的指令就可以了。在移动路线里面也可以控制开关的开合,并且临时更改一个事件的移动速度、频率、以及“选项”(移动动画、静止动画等)。“更改角色图片”的设置会在后面一起讲到,更改不透明度和合成方式也很简单,如果想要让一个人突然变得透明,将不透明度改小一点就行了。“脚本”不属于此教程研究范畴,所以不再多说。左下角有个“重复移动”和“忽略不能移动的场合”,也很容易明白,当“重复动作”勾上之后,事件会一直这么走下去。“忽略不能移动的场合”可以表示为当前方有不能通行处的时候,会自动跳过剩下的那些移动指令。如果因为移动到了不能走的地方造成游戏卡死,也可以检查这里并且勾选上避免致命的bug。

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三] 

设置完移动路线之后,可以在事件指令第二页找到一个“等待移动结束”的命令,加上之后事件就会等移动路线里的对象走完再继续执行下面的部分——而如果事件在重复行走或者走到不能动的地方卡住了,游戏整个就会卡死。所以使用起来要稍微小心一点。

然后是交代任务。主角的师傅让主角打开房间里锁住的柜子然后拿五个回复剂。主角可以选择做还是不做——做的话则接到该任务,不做的话则自动事件中断,主角的师傅在屋子里溜达,然后和他对话可以再次接任务。这里就有一个选择项的使用——它也是条件分歧类判断的一种。在第一页找到“显示选择项”,就可以看到RM里最多有四个选择项可以供设置。而事实上,分歧可以最多创造五个——右边有一个“取消的场合”,表示当你按下ESC的时候,会跳转到哪个分歧。在这个实例里如果你按下了ESC,默认为第二个选择,即和选择“呃,等我一会儿好吗?”的场合相同。而如果你想在四个选择之外多出第五个选择,就选择那个“分歧”即可。同理,如果不需要按ESC,选择“无效”,那么在出现选择项时,你按ESC就不会有任何反应了。

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三]

然后根据不同的选择,师傅可能会说不同的话。接下来,就是重点,(全局)开关和独立开关操作。首先用不同的两个独立开关将自动运行的事件页终止,否则此段剧情会自动反复执行。没接任务的时候师傅会继续要求你接任务,那么打开独立开关A,新建一个事件页,设置出现条件为『独立开关A为ON』,图形等都还是原来的,开始条件为“决定键”。内容可以再次复制这个选择项的内容过去,只不过那时候就不用再打开独立开关A了。接下任务的时候师傅会等你完成任务,那么打开独立开关B,新建第三个事件页,设置出现条件为『独立开关B为ON』,图形等都还是原来的,开始条件为“决定键”。在第二个事件页的选择项里,不要忘记页添加上在接受任务的时候打开独立开关B。这样无论是你一开始就接下来,还是后来再去找师傅对话接下来,都可以自动跳转到接完任务之后的这个事件页。独立开关的数量只有四个,并且只是在单个事件里面控制页面,不能全局调用。

接下来是开关的使用方法。它是整个游戏的全局操控引擎,无论在哪张地图里都可以根据判断这个开关是否为ON来执行事件内容。本实例里面的情景是,如果不接任务,虽然主角也可以溜达,但走到柜子那里是拿不到东西的。这里就需要使用开关来操作了。选择“开关操作”,可以看到单个开关的打开和关闭或者是一个范围之内所有的开关的打开和关闭。按右边的小三角,即可列出游戏里所有的开关。你可以通过更改最大值设定可用开关的数量,然后给你的开关起个名字方便管理。只要主角接了任务,这个开关就打开。

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三]

接下来,设置那个“拿药”的事件。选择在柜子上的那个方格,单击打开,由于它是在接到了任务才能拿药的,所以出现条件设置为“接到拿药任务”的开关为ON。本实例要实现的效果是:主角调查柜子可以拿药,一次一个并且能看到自己有了几个。当药的数量够了5个的时候,提示拿完,不能再拿。这个步骤看似简单,实际上包含了很多个操作:“显示文章”、“增减物品”、“变量操作”和“条件分歧”等。首先,使用“变量操作”,把角色手头的回复剂数量代入一个变量,然后条件分歧,判断此变量是否大于等于5,如果是,则显示已经拿完了。如果否,则增加一个回复剂,同时显示文章提示『你得到一个回复剂,目前你的回复剂数量为X。』

详细来说,首先是变量操作。它也是整个RPG游戏制作过程中的重头之一,可以用来代替开关控制你的游戏流程,用得好了能大幅节省开关数量。操作变量的时候首先也像开关一样,选择好你需要的变量并且命个名,然后对这个变量进行操作——所有能够用数字代替的数值,常理来说都可以代入变量。变量与变量之间也可以互相代入,并且也可以做加减乘除这样的运算。变量能代入的那些数值在下面都有,不一一讲解你可以自己去看,在这里我们选择代入回复剂的数量。

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三]

这之后就是条件分歧,它代表某个条件满足的时候如何如何,同时你也可以设置不满足的时候如何。如图所示,我们将要判断当代入了回复剂数量的那个1号变量是否大于5(这里的大于实际上是大于等于,如果要设置大于应该选择“超过”)。然后也要勾选一个“当条件不符合的场合”表示“否则”如何如何。没拿够的场合里面,可以继续拿,那么就要使用“增减物品”的指令了,也在事件第一页。增减物品的数量可以自己设定好,也可以代入某个变量数。这里注意,由于变量可以为负数,所以得到负数个物品的时候,等于减少了该物品。然后使用显示文章的时候,因为你的物品数量变化了,所以要再次代入变量,同时在显示文章的框内用v[n]代码——显示n号变量。由于1号变量表示你的回复剂数目,所以用v[1]就可以了。

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三]

整个具体的事件制作过程差不多是这样,当回复剂拿满五个的时候,可以回去找师傅——也就是那个独立开关C的事件页,判断主角是否拿够了,同样是条件分歧的操作。本实例的工程可以在下面下载,看不懂图文描述的话请结合工程理解。

 

3-2 地图事件设置地图篇:场所移动、显示图片、天气操作、渐变和画面色调、地图设置等
本段教程制作实例:代表正义的勇者和法师出现抓走了主角的师傅,于是主角要出发去解救他们。出门的时候已经是黑夜,并且下着大雨,乌云密布。

那么首先接续着上面的实例,在主角拿齐回复剂并且和师傅对话之后,剧情继续推进,勇者和法师出现。此处需要增加代表“勇者”和“法师”的两个事件,但是为了不让他们在剧情发生前就出现在地图上,我们要设定开关。在开关列表里新增加一个开关名为“勇者出现”,然后在两个勇者的事件上勾选它。这样如果不打开开关,他们就不会出现了。

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三]

接下来,就是“出现”的画面了——在这里制作的时候,主要被应用的效果是“播放动画”“显示图片”“画面闪烁”等主要烘托地图效果的功能。选择师傅那个事件,在第三个事件页完成任务那里继续剧情。可以用“等待”功能暂时等待40帧表示停顿——在RM里20帧约等于1秒,等待期间事件不会继续,善用这个功能能够很好地控制游戏节奏。

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三]

然后是两位勇者出现的剧情。为了表现出突然的效果,我们可以使用一个画面闪烁,然后播放一个光动画。这就需要用到画面闪烁和动画播放功能——事件处理第二页这里,可以看到有个“画面的闪烁...”,它就是负责处理画面一闪的效果。也就是说画面会有一瞬变成这个颜色,然后自动变回原来的色调。闪烁的颜色可以自己调整,长度也能自己调整。要注意的是画面闪烁过程中接下来的事件内容还会继续执行,所以如果只想看画面闪烁,就等待和闪烁相同的帧数吧。

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三]

画面闪烁之后可以播放一个动画,伴随着动画两位勇者登场。此处就要用到“播放动画”的功能了,同样在事件处理第二页。在这里你可以选择在数据库里设定好的动画来播放,然后需要选定一个播放的对象,也就是地图上的一个事件抑或角色本身。如果事件多了,找起来非常麻烦。所以在这里给事件命名是很重要的,或者你对记住事件编号有把握的话也可以不用命名。动画播放和画面闪烁等一样,在播放的时候下面的内容会继续执行下去,所以如果想让动画播放完再执行下面的内容,就要用“等待”功能等待和动画相同长度或者更长一点的帧数。

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三]

动画播放完毕之后,就可以打开让两个勇者的事件显示的开关了。接下来的剧情都是已经学过的内容,显示文章,移动路线,然后依旧用打开开关的方式让事件消失。这些内容就不再赘述,忘记了的请下载本期的范例工程研究。接下来,附加一个“显示图片”的教程,用于显示一些特殊的图片或者人物头像等。由于这个功能相对复杂一点,我一个一个来说。首先在事件处理第二页找到这个功能。

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三]

然后选择1-50的序号来显示这张图片——序号代表图片的优先级,序号大的会压在序号小的图片上面。接下来,在“图片图形”里面选择好你要显示的图片(事先要把图片放在pictures文件夹下)。接下来设定显示位置,“原点”代表以什么为端点,如果是“左上”就以你那张图片的左上角端点来对齐位置,如果是“中心”就以你这张图片的对角线交点作为对齐位置。然后是X和Y的坐标,学过一点平面直角坐标系相关知识的人都应该知道它代表在平面上的横向和纵向距离,这个距离可以自己慢慢调试。对于“左上”和“中心”搞不清的同学画个直角坐标系就明白了,整个画面就是个640×480的直角坐标平面,你的图片原点代表那个点。还要不明白的……= =|||看下面这张图吧,处在同样位置的一个点,图片左上对齐和中心对齐的区别。

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三]

选择好了图片的显示位置之后,可以选择“放大率”和“不透明度”等参数。X如果调整了表示横向拉宽或压瘦,Y调整了表示纵向拉长或者压扁。接下来可以调整关于“合成方式”,这个和动画一样,不用多说,自己可以看看效果。要注意的是,如果要同时显示多张图片的话,一定要排在不同的序号,否则后面的会替代前面的显示。即是说,一个编号只能显示一张图片。

本实例需要制作的显示图片相关的效果是,两位勇者轮流说话,一个人说话的时候另一个人的图片半透明,轮到他的时候就不透明。这里不光要用到显示图片,也要用到“移动图片”的功能。它表示该图片“在已经显示出来的基础上的变化”,不光有移动,其实也有改变大小、透明度等等,总之只要有和原图不一样的地方,就会渐渐过渡到移动后的效果。这个功能除了前面有点不一样,后面的都是一模一样的。首先选择“移动图片”,然后选定你需要改变的图片编号,以及改变的时间。和动画一样,可以等待一下,也可以不等待。

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三]

移动图片下面有个“更改图片色调”,这个也是类似的功能,只不过是将图片改变颜色。同样需要选择改变的图片序号以及图片改变颜色的时间。接下来要说的是,显示出来的图片是不会自动消失的,必须你手动让其消失。所以这里有个“图片消失”功能,可以删除特定编号的图片。在你显示完图片之后,务必记得将其消失,否则图片会一直在屏幕上留存着。

 

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三]

主角们说完话之后,画面变黑,一阵打斗声,然后主角的师傅被抓走了。那么这段剧情需要用到的是“更改画面色调”。它和画面闪烁是不一样的,画面更改色调之后会永久维持更改后的状态。所以很适合做黑屏。当然,画面更改色调的时候也会继续执行接下来的内容,记得等待(我觉得我自己变罗嗦了- -等待的功能其实就是在这里最常用的……)等待剧情执行完毕之后,别忘了把画面色调改回原来的(0,0,0,0)。否则画面还会一直黑着。

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三]

然后可以使用“播放SE”功能来播放刀剑声等,中间别忘了几帧等待。然后等画面恢复的时候,主角的师傅已经被抓走了——打开独立开关C,然后新建“独立开关C为ON”的空白事件页。记得同时也要用另外一个开关(此处就是全局开关了)把另外两个事件也用空白事件页弄消失。接下来主角恢复自由活动的状态,就可以出门去找师傅了。在门那里新建一个事件,条件为这段剧情结束之后新打开的开关ON。该事件作为移动点来使用,就不需要任何图形了,留透明就好。然后在里面编辑“场所移动”功能——同样是事件处理第二页。你可以直接指定地图的位置,也可以用变量指定地图ID和X、Y坐标,这里建议直接指定。按那个向右的箭头,就可以去选择一个落足点了,当角色接触到事件,就会被“传送”到那个你选好的点。为了能够让过渡柔和一些,我们可以在“淡入淡出”那里选择“有”,或者选择“无”然后自己加一个切换过去的渐变。这两种效果选择其一就可以了。“方向”那里可以选择角色切换过去的时候脸是朝向哪个方向的。

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三]

接下来就说说这个渐变。它是为了表现两个画面之间的切换效果而使用的功能。首先,你必须“准备渐变”(事件处理第二页),也就是让当前的画面凝固住,方便切换。一旦“准备渐变”了,接下来的画面变化都将不会表现了,因为被“凝固”了。然后“执行渐变”,选择你要渐变的渐变图。它将会用渐变过渡的方式表现出你凝固的画面和变化之后的画面。在范例工程里我提供了两个不同的场景移动效果,一个是出门的采用了渐变的场景移动,一个是进门的用默认淡入淡出的场景移动。可以进行一下比对,看看具体效果。

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三]

出门之后是阴天下大雨——阴天可以通过更改“画面色调”来使用,这个同样也放在出门的那个事件上,注意一定要等场所移动完毕之后,否则就是屋里下雨黑天了。然后是表现乌云密布的状态,这里需要用到“更改地图设置”,同样在事件处理第二页。这里可以临时更改一张地图的全景图、雾图形和战斗地图。其设置法和数据库的设置法大同小异。

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三]

然后是天气的设置,在事件处理第二页同样能够看到。RMXP默认有风、雨、雪三种天气可以选择。同样你可以调整这些天气的强度,制造出小雨和大雨的效果。下面那个时间是表示这个天气是慢慢地开始还是一下子就开始的。在这个范例里我们为了表现一出门就发现已经下雨的效果,选择0帧,也就是立刻开始。选择完天气之后,你也可以选择播放一个雨声的BGS(背景音效),这个使用“演奏BGS”功能就能实现,很简单。

[转载](转)完全不懂RPG <wbr>Maker <wbr>XP的来这里看下[三]

截止到这里,这一章涉及的功能就都讲完了。如果有什么不懂的部分,请下载这段的最新的范例工程来帮助你理解。有问题欢迎提出。

arrow
arrow
    全站熱搜

    戮克 發表在 痞客邦 留言(0) 人氣()