展开全部
去找教程学习,光说也比较难明白。
由四个主编辑器还有个功能强大的物件管理器(Object Manager)组成。四大编辑器分为地形编辑器(Terrain Editor)、单位编辑器(Unit Editor)、触发编辑器(Trigger Editor)、音效编辑器(Sound Editor),四者关系如图,其中要属地形编辑器和触发编辑器功能最为强大。本文将以四大编辑器为主线介绍WE,并以官方RPG地图WarChasers的制作方法为例,由浅入深地讲解构建一幅魔兽地图的思路。(注:本文使用的软件为英文版WarCraft World Editor 1.05版)
搭建舞台场景——地形编辑器
WE基本元素之一。光用地形编辑器就能制作出简单的对战地图。由于它被设计得“傻瓜化”,就算是新手操作起来也非常容易,仿佛Windows画板一样。
通过魔兽争霸快捷程序组运行World Editor之后看到如图1界面,这便是最基础的地形编辑器。
①上方为菜单栏,与其它的Windows软件类似,在这里可进行WE的所有指令操作。
②WE的主编辑视窗,通过它看到所编辑地图的全貌。
③辅助视窗,对你编辑地图有一定帮助,不过会影响到速度。
④工具面板,相当于一个巨大的素材库,能很方便地添加物件到地图。
⑤状态栏,记录了包括鼠标位置、鼠标所选物件的名称等附加信息。
看过地形编辑器的构造之后,我们来学习如何绘制地图的基本场景。第1步,新建一张地图(File→New)(如图2),这时你会看到网格——暴雪为了方便玩家合理安排地图构造而设计的类似一些图像编辑软件的引导线(可通过View→Grid→None来消除它)。首先,我们使用工具面板的地形面板(Terrain Palette)(图3)来创建一些山和水之类的自然地貌。A部分用来调整地形纹理以及绘制分界线。B部分调整悬崖、海水以及地表类型,不过在这里请注意两点:第1,只能在高度差为1,而且宽度至少为三个中型网格,长度在五个中型网格以上的地形间创建坡道(Ramp);第2,不要在小范围内同时使用两种悬崖类型(Cliff Type),这样可能会造成地表贴图错误。在完成了地形纹理设计和悬崖调整以后,使用C部分的地形高度选项来使地形变得更自然点儿。在调整高度时,建议使用D部分的笔刷选项,将笔刷调整到最大,这样可省下不少力气(图4)。
对自己创造的地形满意吗?光秃秃的可不好看,想加些树木、小鸟还有瀑布之类的修饰就需要用到摆设面板(Doodad Palette)了,点选工具面板上方的选择框或点击Layer→Doodad来切换到摆设面板(图5)。当你创建类似箭靶的物品时,会发现大小与方向都是随机的,这时你既可将四部分的随机大小和随机方向取消,然后重新添加摆设,也可通过双击调整摆设,然后输入数值来改变大小、方向和种类。如果你只想大致地调整一下方向,则使用Ctrl+鼠标左键点击/拖拽(图6)。
嘿嘿,接下来就是为你的地图添加有生力量了,用相同的方法切换到单位面板(Unit Palette),相信到这里魔兽玩家应该不会陌生,你可随意添加任何兵种和建筑到地图上(图7),不过要注意,当准备创建中立生物或构建敌人基地时,别忘了更改上方的玩家哦(默认是Player1 Red)。同样能通过双击已建立的单位来更改所有者,也可使用鼠标框选或用Shift+鼠标左键来选择多个单位进行批量修改。除了所有者以外,单位的属性面板和摆设的属性面板还有很多不同的地方,其中的技能栏可激活所编辑单位的技能,而掉落物品栏多半用于设置中立生物死亡时掉落的物品。当然,游戏地图都需要有起始点,在单位面板中Buildings的最后一栏找到起始点(Start Location),然后将它创建在地图上的任意地方。别忘了作为对战地图,至少要有两个起始点。接下来需要做的就是为你的对战地图加上一些小修饰了:点击菜单Scenario→Map Description,在Description栏里你可修改地图名称、游戏人数和地图说明,作者栏里签上你的大名(图8)。最后测试一下地图(Ctrl+F9)就可存盘了。一张简单的对战地图不就出来了?
排练演员——单位编辑器
大家肯定不会满足于只创造简单的对战地图,就像有了电脑不光只学打字一样。想学会如何驾御WE添加一些有个性的元素,这时我们就要用到下面的单位编辑器了。
单位编辑器功能很强大,因为官方经常用来调整平衡性,所以使用它就好像编辑QQ个人资料一样简单。本节将介绍如何使用它,并且主要对各个可修改选项加以解释,让大家可尽情发挥想象力创造新的单位——善恶美丑高矮胖瘦,完全由你选择。
用F5打开它以后,我们可看到A部分是与地形编辑器同样的菜单栏和快捷按钮栏,单位编辑器的菜单命令非常少且比较简单。B部分是单位树,在这里你可全览所有单位。C部分则是显示在B部分选择单位的详细数据,你要做的就是在此对各项数据进行修改。通过点击菜单File→New Custom Unit新建自定义单位,弹出新建单位窗口,其中名字可在创建后再编辑,最主要的是选择参照单位,也就是要你选择想在哪个单位的基础上进行编辑。选择了之后会在单位树的最下方看到新建的单位被放在了Custom Units目录下,点选刚才新建的自定义单位,通过右方的编辑窗口对数据进行修改(图9)。
因为编辑器里面可编辑元素多得恐怖,而且有一些玩家在游戏中都没有见过,所以我只对常见的项目进行解释(见表1)。
注释 伤害值的计算:例如9级石头人的基本伤害值为60,伤害值随机数为1,随机伤害值为8,我们就可算出石头人对地攻击的最大伤害为60+1×8=68,最小伤害为60-1×8=52,即伤害值范围为52~68。金钱奖励的计算方法同理。
以上是普通单位的编辑介绍,在编辑英雄单位时,有以下特有的修改选项(见表2)。
在设置完了这些让人眼花缭乱的单位数据及属性后,不要忘了通过点击菜单File→Export Unit Settings来将所改动的单位数据存储到文件中,然后再在你自己设计的地图上使用Import Unit Settings来调入修改了的数据。
展开剧情——触发编辑器
触发编辑器是WE的灵魂,魔兽RPG无限的内涵就是因为它的存在。在此节,我们通过分析经典RPG地图WarChasers(大家可在魔兽争霸游戏目录的Maps\Scenario下找到它)中的几个设计要点,来对触发编辑器有基本的认识。
打开地图WarChasers可看到它的全貌(图10),不要光顾着欣赏地形,这些在上面讲述的地形编辑器中你同样能做到。在讲解范例之前,先来了解一些触发器的基本常识。首先是域(Region)的概念,它是地形编辑器与触发编辑器之间最重要的一道桥梁,绝大多数的触发器(Trigger)都与它有关系。通过工具面板→域面板(Region Palette)来显示地图上的域,大家会看到地图上有许多不同颜色的矩形框,这便是域了,其中每个矩形框都是一个域。域面板简单地分为两部分:一部分仅为一个快捷键按钮,当激活时(绿色)为增加域,当取消激活时(灰色)为编辑域的大小或移动/删除域;另外一部分是域列表,在这里通过双击域名,视窗会跳转到该域所在区,并且还可在域名上单击鼠标右键→编辑域属性(Edit Region Properties)来修改该域的详细资料,除了修改名字和微调域大小以外,还能改变域的颜色(Select Color)、天气效果(Weather Effect)和声效(Ambient Sound)(图11)。
了解过域以后,可进入触发编辑器的学习了。按快捷键F4打开触发编辑器,有一个类似单位编辑器的窗口摆在了面前。让我们来看看它的结构(图12):最上方的是菜单栏。往下左边是触发器树,类似于单位编辑器里的单位树。目录下出现的文件便是触发器,左键单击触发器会打开编辑视窗。位于编辑视窗上方的文本框为备注框。备注框下方的便是触发器编辑主视窗了,这里需要讲解的是触发器分为事件(Events)、条件(Conditions)、行为(Actions)三部分,即当发生什么事件,并且满足什么条件时执行什么行为。是不是感觉有点像计算机语言一样枯燥,那么现在让我们试着读懂WarChasers中几个触发器制作的效果实例吧。
实例一:如何实现游戏开始时的选择英雄,这是绝大多数RPG地图所必备的。
实例效果:进入游戏后,将树精灵移动到英雄附近时,则选择该英雄(图13)。
实例讲解:进入触发器树中Hero Selection目录下的Robo X触发器,我们可看到主视窗中的事件、条件、行为三大部分(图14)。
事件部分:此处的意思是当一个单位进入Robo X域,则引发该触发器。(通过双击可以编辑为你所需要的语句)
条件部分:在这个实例中条件部分为无,即当事件发生时无条件运行该触发器。
行为部分:(下文中提到的玩家1为玩家自己,玩家12为电脑)
1.在Start2域中心为进入单位的拥有者新建一个名为Megotron X的单位(在这句中,你可以更改生成的单位数量、类型以及在哪个域新建该单位和该单位被建立时的角度)。
2.给刚才建立的英雄一个复活十字勋章(由于这是给英雄添加物品,所以不能设置数量,不过你依然可以更改物品的类型。Last Created Unit代指的便是刚才新建的Megotron X)。
3.如果进入的单位属于玩家1则将刚才新建的Megotron X赋予单位类型变量Player1,否则什么都不做。(这里利用了Set行为语句来设置变量,为什么要设置变量呢?就像为什么我们每个人都有名字一样。If Then Else是经常用到的行为语句,它常会通过条件来判断该执行哪个行为)
4、5、6.三句横线标注的语句功能同第3句一样,大家很容易读懂。
7.移出进入Robo X域的单位(这里的Entering Unit同样指的是进入域的树精灵)。
8.启动触发器Snap Camera to Player(检查条件)。(执行Camera Control目录下的Snap Camera to Player触发器,你也可通过使用类似以Trigger开头的语句的触发类型语句来建造触发器链,相当于连锁反应)。
实例总结:现在我们知道RPG地图开始时用一个精灵选择自己喜欢的英雄来作战,这个最基础的触发器实例是怎么样通过事件、条件、行为这3个部分来组合的,还了解了基本的语句构成。
实例二:类似Tower Defense的兵海,在这个例子中你将认识到触发编辑器的差异性,即类似的语句却会产生不同效果。
实例效果:在WarChasers地图中会有一个开着坦克前进,然后很多骷髅兵向你涌来的效果,著名的Tower Defense地图中也有类似的触发器影子(图15)。
实例讲解:目录Monster下面的TankRun1~9触发器,鉴于这九个触发器有相似性,所以我就拿触发器TankRun1来作分析了(图16)。
事件部分:意思是当一个单位(坦克)进入TankSpeak域时,则引发该触发器。
条件部分:进入该域的单位必须属于Playersgroup(这里出现了条件,不满足条件时行为部分就不会被执行。其中Playersgroup是一个玩家组类型的变量,在其它触发器中,已设定了Playersgroup包括了游戏中的四个玩家,所以这里也可理解为任何一个属于玩家的单位进入TankSpeak域时,才能满足执行行为的条件)。
行为部分:
1.关闭此触发器(这个语句便是控制该触发器,使它只运行一次,这里我们需要注意到的是行为部分的语序性,即语句是按照从上到下依次执行的)。
2.为玩家12在MakeSlimers域中任意一点新建两个通过单位编辑器创建的名为Giant Skeleton Warrior的骷髅战士(请注意到这个语句执行的效果是先确定任意一点,再在该点建立两Giant Skeleton Warrior)。
3.为玩家12在TankSkels1域中任意一点新建一个单位名为RoadKill Skeleton的骷髅,并执行30次(其实效果便是在TankSkels1域内建立30个RoadKill Skeleton。玩家可能会觉得这个等同于上面的语句,但是请注意,因为域内的随机点在每次执行语句时都会变化,所以这30个RoadKill Skeleton不会像上个语句里的两个Giant Skeleton Warrior一样聚集在一起,这样才会有骷髅海的效果,请大家注意我用横线标注的单位类型语句是相同的)。
实例总结:通过这个例子我们不仅学会制作Tower Defense效果,而且还看到For语句可简化很多繁琐的效果,大家应该多多练习使用。是不是觉得简单了?那我们就来个难一点的!
实例三:瞬间移动。通过此实例我们可发现触发编辑器不仅有差异性,也有多样性,即用多种方法达到同一个目的,正是因为如此,触发编辑器才可让大家尽情发挥想象。
实例效果:当坦克到了终点以后,将玩家的英雄传送到Waygate2 A域(图17)。
实例讲解:目录Tanks下面的Player 1 Leaves Tank触发器(图18)。
事件部分:当一个单位(坦克)进入Tank Leave 02域时,则引发该触发器。
条件部分:进入的单位为变量Player1(这里请大家不要被迷惑了,这个Player1只是一个单位类型变量,而非玩家1,这个变量指代的便是坦克)。
行为部分:
1.关闭此触发器。
2.取消变量TempPlayer1的隐藏状态(当你的英雄进入坦克时,在其它触发器中已将你的英雄隐藏,并赋予单位类型变量TempPlayer1,●表示单位相关语句)。
3.将TempPlayer1移动到Waygate2 A域(这个移动没有等待时间,可算是瞬间移动)。
4.在Tank Leave 02域创造“传送”特效(这是一个用来创造特效的语句,大家可能会问,英雄都被传送到了Waygate2 A域了,怎么还能在Tank Leave 02域看到特效?其实在玩家进入坦克时,视角已被固定在了坦克身上,在没有新的语句来改变视角之前,视角依然只是坦克,▲表示特效相关语句)。
5.将刚才建立的特效赋值给特效类型变量列TankSFX[1](这里出现了变量列(Array)的概念,所谓变量列,就是将同类型变量集中在一起,便于操作,就像把书都放在一个包里便于携带一样)。
6.等待0.10秒(等待语句在触发编辑器里作用也比较显著)。
7.隐藏变量Player1。由于坦克在以后的游戏中不会再使用到,所以我们完全可使用Remove命令将它删除,你可新建移除单位的行为语句(Unit-Remove),然后将Triggering Unit值更改为变量(Variable)Player1,这样便做到和隐藏变量Player1等同的效果了。
8.将TempPlayer1值赋予Player1(执行后,Player1便是指代的玩家的英雄了)。
9.执行Snap Camera to Player(忽略条件)(当选择忽略条件时,就算执行的触发器有条件也不会被考虑,这便是转换视角的语句)。
10.等待2.00秒。
11.摧毁特效TankSFX[1]。(将刚才建立的特效摧毁)
实例总结:这个例子有些复杂,大家可反复看注释并结合游戏来分析。我们从这个例子了解到在触发编辑器中达到一个目的不是只有一种方法。另外,编辑触发器中经常用到变量,但请大家注意使用变量时要有逻辑性,逻辑错误会导致整个地图出现问题。
主题曲及配音——音效编辑器
四大编辑器中最后一个组员——音效编辑器,不过它并不像其它编辑器那样强大,使用它为的是渲染地图内涵的气氛。
按F5键启动声效编辑器,结构与单位编辑器类似(图19),上方的菜单栏中,可输出/输入声音或者乐曲,在左方的声效树状列表中,能找到出现在魔兽争霸游戏中的所有声音和乐曲。双击可播放该文件,若想在触发编辑器中能调用该音效,则需要通过点击菜单File→Use Internal Sound将该文件导入到右方的声音变量列表,以使它成为一个变量。当然,这样还不能算完工,还需要在触发编辑器中调用它才行,在触发器的行为部分加入播放声音/乐曲(Sound-Play Sound或Sound-Play Music)的行为语句,便可播放刚才所加入的声音/乐曲了。虽然声音类型的行为语句很多,不过对于初学者来说,掌握这两个和中止声音/乐曲(Sound-Stop Sound或Sound-Stop Music)就差不多了。
OK,至此我们已了解WE的基本核心内容了,即通过四大编辑器来进行自主设计,为了能使大家有个较清晰的脉络,我们为大家整理一下制作地图的基本思路(图20):
1.运用地形编辑器绘制出地图的全貌,这是一张地图能否吸引人的首要条件。
2.运用单位编辑器在地图中创建游戏可能出现的任何单位,包括人物、建筑等。
3.在策划的前提下,合理使用触发编辑器来让整个地图“动”起来。大体步骤为:初始化数据→建立游戏系统(即设置人物变量等,可以增加一些类似贩卖物品系统等新元素)→游戏任务。初学者可根据上文介绍的实例进行模仿,平时多多分析高手的地图设计,有了经验后向更复杂阶段挑战。
4.地图的后期制作,包括用音效编辑器添加背景音乐、游戏音效等,然后再进行一些其它方面的润色。
5.调试阶段,如果你想做出一张受大家喜爱的地图,那么设计完地图后不要急于推出,首先让自己不断地去调试,去试玩,玩到自己都不想看到这张地图时,就大功告成啦!
既然我们了解了运用WE制作地图的方法,那么介绍几张人气很旺的地图下载后进行游戏,并运用学到的知识分析高手是怎样设计出这些经典地图的。
Kaggz RPG-Shadow of Evil(图21)
这张地图首次出现是在去年秋季。特色之一是多个分支任务,在游戏中,玩家可通过收集空瓶子来换取隐藏的装备或去寻找某个NPC来学习技能;特色之二便是可“进入房屋”,即走到房屋门口便可进入房内购买道具等,其实便是基于前文所介绍的“瞬间移动”实例制作的;特色之三是通过了声效编辑器插入了一首非常符合游戏节奏的MP3,使得玩家可充分融入游戏。
由四个主编辑器还有个功能强大的物件管理器(Object Manager)组成。四大编辑器分为地形编辑器(Terrain Editor)、单位编辑器(Unit Editor)、触发编辑器(Trigger Editor)、音效编辑器(Sound Editor),四者关系如图,其中要属地形编辑器和触发编辑器功能最为强大。本文将以四大编辑器为主线介绍WE,并以官方RPG地图WarChasers的制作方法为例,由浅入深地讲解构建一幅魔兽地图的思路。(注:本文使用的软件为英文版WarCraft World Editor 1.05版)
搭建舞台场景——地形编辑器
WE基本元素之一。光用地形编辑器就能制作出简单的对战地图。由于它被设计得“傻瓜化”,就算是新手操作起来也非常容易,仿佛Windows画板一样。
通过魔兽争霸快捷程序组运行World Editor之后看到如图1界面,这便是最基础的地形编辑器。
①上方为菜单栏,与其它的Windows软件类似,在这里可进行WE的所有指令操作。
②WE的主编辑视窗,通过它看到所编辑地图的全貌。
③辅助视窗,对你编辑地图有一定帮助,不过会影响到速度。
④工具面板,相当于一个巨大的素材库,能很方便地添加物件到地图。
⑤状态栏,记录了包括鼠标位置、鼠标所选物件的名称等附加信息。
看过地形编辑器的构造之后,我们来学习如何绘制地图的基本场景。第1步,新建一张地图(File→New)(如图2),这时你会看到网格——暴雪为了方便玩家合理安排地图构造而设计的类似一些图像编辑软件的引导线(可通过View→Grid→None来消除它)。首先,我们使用工具面板的地形面板(Terrain Palette)(图3)来创建一些山和水之类的自然地貌。A部分用来调整地形纹理以及绘制分界线。B部分调整悬崖、海水以及地表类型,不过在这里请注意两点:第1,只能在高度差为1,而且宽度至少为三个中型网格,长度在五个中型网格以上的地形间创建坡道(Ramp);第2,不要在小范围内同时使用两种悬崖类型(Cliff Type),这样可能会造成地表贴图错误。在完成了地形纹理设计和悬崖调整以后,使用C部分的地形高度选项来使地形变得更自然点儿。在调整高度时,建议使用D部分的笔刷选项,将笔刷调整到最大,这样可省下不少力气(图4)。
对自己创造的地形满意吗?光秃秃的可不好看,想加些树木、小鸟还有瀑布之类的修饰就需要用到摆设面板(Doodad Palette)了,点选工具面板上方的选择框或点击Layer→Doodad来切换到摆设面板(图5)。当你创建类似箭靶的物品时,会发现大小与方向都是随机的,这时你既可将四部分的随机大小和随机方向取消,然后重新添加摆设,也可通过双击调整摆设,然后输入数值来改变大小、方向和种类。如果你只想大致地调整一下方向,则使用Ctrl+鼠标左键点击/拖拽(图6)。
嘿嘿,接下来就是为你的地图添加有生力量了,用相同的方法切换到单位面板(Unit Palette),相信到这里魔兽玩家应该不会陌生,你可随意添加任何兵种和建筑到地图上(图7),不过要注意,当准备创建中立生物或构建敌人基地时,别忘了更改上方的玩家哦(默认是Player1 Red)。同样能通过双击已建立的单位来更改所有者,也可使用鼠标框选或用Shift+鼠标左键来选择多个单位进行批量修改。除了所有者以外,单位的属性面板和摆设的属性面板还有很多不同的地方,其中的技能栏可激活所编辑单位的技能,而掉落物品栏多半用于设置中立生物死亡时掉落的物品。当然,游戏地图都需要有起始点,在单位面板中Buildings的最后一栏找到起始点(Start Location),然后将它创建在地图上的任意地方。别忘了作为对战地图,至少要有两个起始点。接下来需要做的就是为你的对战地图加上一些小修饰了:点击菜单Scenario→Map Description,在Description栏里你可修改地图名称、游戏人数和地图说明,作者栏里签上你的大名(图8)。最后测试一下地图(Ctrl+F9)就可存盘了。一张简单的对战地图不就出来了?
排练演员——单位编辑器
大家肯定不会满足于只创造简单的对战地图,就像有了电脑不光只学打字一样。想学会如何驾御WE添加一些有个性的元素,这时我们就要用到下面的单位编辑器了。
单位编辑器功能很强大,因为官方经常用来调整平衡性,所以使用它就好像编辑QQ个人资料一样简单。本节将介绍如何使用它,并且主要对各个可修改选项加以解释,让大家可尽情发挥想象力创造新的单位——善恶美丑高矮胖瘦,完全由你选择。
用F5打开它以后,我们可看到A部分是与地形编辑器同样的菜单栏和快捷按钮栏,单位编辑器的菜单命令非常少且比较简单。B部分是单位树,在这里你可全览所有单位。C部分则是显示在B部分选择单位的详细数据,你要做的就是在此对各项数据进行修改。通过点击菜单File→New Custom Unit新建自定义单位,弹出新建单位窗口,其中名字可在创建后再编辑,最主要的是选择参照单位,也就是要你选择想在哪个单位的基础上进行编辑。选择了之后会在单位树的最下方看到新建的单位被放在了Custom Units目录下,点选刚才新建的自定义单位,通过右方的编辑窗口对数据进行修改(图9)。
因为编辑器里面可编辑元素多得恐怖,而且有一些玩家在游戏中都没有见过,所以我只对常见的项目进行解释(见表1)。
注释 伤害值的计算:例如9级石头人的基本伤害值为60,伤害值随机数为1,随机伤害值为8,我们就可算出石头人对地攻击的最大伤害为60+1×8=68,最小伤害为60-1×8=52,即伤害值范围为52~68。金钱奖励的计算方法同理。
以上是普通单位的编辑介绍,在编辑英雄单位时,有以下特有的修改选项(见表2)。
在设置完了这些让人眼花缭乱的单位数据及属性后,不要忘了通过点击菜单File→Export Unit Settings来将所改动的单位数据存储到文件中,然后再在你自己设计的地图上使用Import Unit Settings来调入修改了的数据。
展开剧情——触发编辑器
触发编辑器是WE的灵魂,魔兽RPG无限的内涵就是因为它的存在。在此节,我们通过分析经典RPG地图WarChasers(大家可在魔兽争霸游戏目录的Maps\Scenario下找到它)中的几个设计要点,来对触发编辑器有基本的认识。
打开地图WarChasers可看到它的全貌(图10),不要光顾着欣赏地形,这些在上面讲述的地形编辑器中你同样能做到。在讲解范例之前,先来了解一些触发器的基本常识。首先是域(Region)的概念,它是地形编辑器与触发编辑器之间最重要的一道桥梁,绝大多数的触发器(Trigger)都与它有关系。通过工具面板→域面板(Region Palette)来显示地图上的域,大家会看到地图上有许多不同颜色的矩形框,这便是域了,其中每个矩形框都是一个域。域面板简单地分为两部分:一部分仅为一个快捷键按钮,当激活时(绿色)为增加域,当取消激活时(灰色)为编辑域的大小或移动/删除域;另外一部分是域列表,在这里通过双击域名,视窗会跳转到该域所在区,并且还可在域名上单击鼠标右键→编辑域属性(Edit Region Properties)来修改该域的详细资料,除了修改名字和微调域大小以外,还能改变域的颜色(Select Color)、天气效果(Weather Effect)和声效(Ambient Sound)(图11)。
了解过域以后,可进入触发编辑器的学习了。按快捷键F4打开触发编辑器,有一个类似单位编辑器的窗口摆在了面前。让我们来看看它的结构(图12):最上方的是菜单栏。往下左边是触发器树,类似于单位编辑器里的单位树。目录下出现的文件便是触发器,左键单击触发器会打开编辑视窗。位于编辑视窗上方的文本框为备注框。备注框下方的便是触发器编辑主视窗了,这里需要讲解的是触发器分为事件(Events)、条件(Conditions)、行为(Actions)三部分,即当发生什么事件,并且满足什么条件时执行什么行为。是不是感觉有点像计算机语言一样枯燥,那么现在让我们试着读懂WarChasers中几个触发器制作的效果实例吧。
实例一:如何实现游戏开始时的选择英雄,这是绝大多数RPG地图所必备的。
实例效果:进入游戏后,将树精灵移动到英雄附近时,则选择该英雄(图13)。
实例讲解:进入触发器树中Hero Selection目录下的Robo X触发器,我们可看到主视窗中的事件、条件、行为三大部分(图14)。
事件部分:此处的意思是当一个单位进入Robo X域,则引发该触发器。(通过双击可以编辑为你所需要的语句)
条件部分:在这个实例中条件部分为无,即当事件发生时无条件运行该触发器。
行为部分:(下文中提到的玩家1为玩家自己,玩家12为电脑)
1.在Start2域中心为进入单位的拥有者新建一个名为Megotron X的单位(在这句中,你可以更改生成的单位数量、类型以及在哪个域新建该单位和该单位被建立时的角度)。
2.给刚才建立的英雄一个复活十字勋章(由于这是给英雄添加物品,所以不能设置数量,不过你依然可以更改物品的类型。Last Created Unit代指的便是刚才新建的Megotron X)。
3.如果进入的单位属于玩家1则将刚才新建的Megotron X赋予单位类型变量Player1,否则什么都不做。(这里利用了Set行为语句来设置变量,为什么要设置变量呢?就像为什么我们每个人都有名字一样。If Then Else是经常用到的行为语句,它常会通过条件来判断该执行哪个行为)
4、5、6.三句横线标注的语句功能同第3句一样,大家很容易读懂。
7.移出进入Robo X域的单位(这里的Entering Unit同样指的是进入域的树精灵)。
8.启动触发器Snap Camera to Player(检查条件)。(执行Camera Control目录下的Snap Camera to Player触发器,你也可通过使用类似以Trigger开头的语句的触发类型语句来建造触发器链,相当于连锁反应)。
实例总结:现在我们知道RPG地图开始时用一个精灵选择自己喜欢的英雄来作战,这个最基础的触发器实例是怎么样通过事件、条件、行为这3个部分来组合的,还了解了基本的语句构成。
实例二:类似Tower Defense的兵海,在这个例子中你将认识到触发编辑器的差异性,即类似的语句却会产生不同效果。
实例效果:在WarChasers地图中会有一个开着坦克前进,然后很多骷髅兵向你涌来的效果,著名的Tower Defense地图中也有类似的触发器影子(图15)。
实例讲解:目录Monster下面的TankRun1~9触发器,鉴于这九个触发器有相似性,所以我就拿触发器TankRun1来作分析了(图16)。
事件部分:意思是当一个单位(坦克)进入TankSpeak域时,则引发该触发器。
条件部分:进入该域的单位必须属于Playersgroup(这里出现了条件,不满足条件时行为部分就不会被执行。其中Playersgroup是一个玩家组类型的变量,在其它触发器中,已设定了Playersgroup包括了游戏中的四个玩家,所以这里也可理解为任何一个属于玩家的单位进入TankSpeak域时,才能满足执行行为的条件)。
行为部分:
1.关闭此触发器(这个语句便是控制该触发器,使它只运行一次,这里我们需要注意到的是行为部分的语序性,即语句是按照从上到下依次执行的)。
2.为玩家12在MakeSlimers域中任意一点新建两个通过单位编辑器创建的名为Giant Skeleton Warrior的骷髅战士(请注意到这个语句执行的效果是先确定任意一点,再在该点建立两Giant Skeleton Warrior)。
3.为玩家12在TankSkels1域中任意一点新建一个单位名为RoadKill Skeleton的骷髅,并执行30次(其实效果便是在TankSkels1域内建立30个RoadKill Skeleton。玩家可能会觉得这个等同于上面的语句,但是请注意,因为域内的随机点在每次执行语句时都会变化,所以这30个RoadKill Skeleton不会像上个语句里的两个Giant Skeleton Warrior一样聚集在一起,这样才会有骷髅海的效果,请大家注意我用横线标注的单位类型语句是相同的)。
实例总结:通过这个例子我们不仅学会制作Tower Defense效果,而且还看到For语句可简化很多繁琐的效果,大家应该多多练习使用。是不是觉得简单了?那我们就来个难一点的!
实例三:瞬间移动。通过此实例我们可发现触发编辑器不仅有差异性,也有多样性,即用多种方法达到同一个目的,正是因为如此,触发编辑器才可让大家尽情发挥想象。
实例效果:当坦克到了终点以后,将玩家的英雄传送到Waygate2 A域(图17)。
实例讲解:目录Tanks下面的Player 1 Leaves Tank触发器(图18)。
事件部分:当一个单位(坦克)进入Tank Leave 02域时,则引发该触发器。
条件部分:进入的单位为变量Player1(这里请大家不要被迷惑了,这个Player1只是一个单位类型变量,而非玩家1,这个变量指代的便是坦克)。
行为部分:
1.关闭此触发器。
2.取消变量TempPlayer1的隐藏状态(当你的英雄进入坦克时,在其它触发器中已将你的英雄隐藏,并赋予单位类型变量TempPlayer1,●表示单位相关语句)。
3.将TempPlayer1移动到Waygate2 A域(这个移动没有等待时间,可算是瞬间移动)。
4.在Tank Leave 02域创造“传送”特效(这是一个用来创造特效的语句,大家可能会问,英雄都被传送到了Waygate2 A域了,怎么还能在Tank Leave 02域看到特效?其实在玩家进入坦克时,视角已被固定在了坦克身上,在没有新的语句来改变视角之前,视角依然只是坦克,▲表示特效相关语句)。
5.将刚才建立的特效赋值给特效类型变量列TankSFX[1](这里出现了变量列(Array)的概念,所谓变量列,就是将同类型变量集中在一起,便于操作,就像把书都放在一个包里便于携带一样)。
6.等待0.10秒(等待语句在触发编辑器里作用也比较显著)。
7.隐藏变量Player1。由于坦克在以后的游戏中不会再使用到,所以我们完全可使用Remove命令将它删除,你可新建移除单位的行为语句(Unit-Remove),然后将Triggering Unit值更改为变量(Variable)Player1,这样便做到和隐藏变量Player1等同的效果了。
8.将TempPlayer1值赋予Player1(执行后,Player1便是指代的玩家的英雄了)。
9.执行Snap Camera to Player(忽略条件)(当选择忽略条件时,就算执行的触发器有条件也不会被考虑,这便是转换视角的语句)。
10.等待2.00秒。
11.摧毁特效TankSFX[1]。(将刚才建立的特效摧毁)
实例总结:这个例子有些复杂,大家可反复看注释并结合游戏来分析。我们从这个例子了解到在触发编辑器中达到一个目的不是只有一种方法。另外,编辑触发器中经常用到变量,但请大家注意使用变量时要有逻辑性,逻辑错误会导致整个地图出现问题。
主题曲及配音——音效编辑器
四大编辑器中最后一个组员——音效编辑器,不过它并不像其它编辑器那样强大,使用它为的是渲染地图内涵的气氛。
按F5键启动声效编辑器,结构与单位编辑器类似(图19),上方的菜单栏中,可输出/输入声音或者乐曲,在左方的声效树状列表中,能找到出现在魔兽争霸游戏中的所有声音和乐曲。双击可播放该文件,若想在触发编辑器中能调用该音效,则需要通过点击菜单File→Use Internal Sound将该文件导入到右方的声音变量列表,以使它成为一个变量。当然,这样还不能算完工,还需要在触发编辑器中调用它才行,在触发器的行为部分加入播放声音/乐曲(Sound-Play Sound或Sound-Play Music)的行为语句,便可播放刚才所加入的声音/乐曲了。虽然声音类型的行为语句很多,不过对于初学者来说,掌握这两个和中止声音/乐曲(Sound-Stop Sound或Sound-Stop Music)就差不多了。
OK,至此我们已了解WE的基本核心内容了,即通过四大编辑器来进行自主设计,为了能使大家有个较清晰的脉络,我们为大家整理一下制作地图的基本思路(图20):
1.运用地形编辑器绘制出地图的全貌,这是一张地图能否吸引人的首要条件。
2.运用单位编辑器在地图中创建游戏可能出现的任何单位,包括人物、建筑等。
3.在策划的前提下,合理使用触发编辑器来让整个地图“动”起来。大体步骤为:初始化数据→建立游戏系统(即设置人物变量等,可以增加一些类似贩卖物品系统等新元素)→游戏任务。初学者可根据上文介绍的实例进行模仿,平时多多分析高手的地图设计,有了经验后向更复杂阶段挑战。
4.地图的后期制作,包括用音效编辑器添加背景音乐、游戏音效等,然后再进行一些其它方面的润色。
5.调试阶段,如果你想做出一张受大家喜爱的地图,那么设计完地图后不要急于推出,首先让自己不断地去调试,去试玩,玩到自己都不想看到这张地图时,就大功告成啦!
既然我们了解了运用WE制作地图的方法,那么介绍几张人气很旺的地图下载后进行游戏,并运用学到的知识分析高手是怎样设计出这些经典地图的。
Kaggz RPG-Shadow of Evil(图21)
这张地图首次出现是在去年秋季。特色之一是多个分支任务,在游戏中,玩家可通过收集空瓶子来换取隐藏的装备或去寻找某个NPC来学习技能;特色之二便是可“进入房屋”,即走到房屋门口便可进入房内购买道具等,其实便是基于前文所介绍的“瞬间移动”实例制作的;特色之三是通过了声效编辑器插入了一首非常符合游戏节奏的MP3,使得玩家可充分融入游戏。
展开全部
基础刷兵方式解说
因为涉及到触发.所以大家也需要对触发有一点了解.可以看死蚊子关于触发的说明.这次要说的是如何刷兵.虽然在置顶帖上有了.但是因为是用英文版的.而对讲解的比较含糊(个人认为).新人不容易学习.所以我自己也写了一份.触发以事件.环境.动作三大部分组成.而事件就是一件事的起点.如果事件没有设定好.下面的内容就不会执行.既然以刷兵为目的.常用的像守护类地图.以时间来刷兵.而有些RPG地图.以进入区域刷兵.这个按需要来定.而我这次解说的.是以单位死亡为事件来进行刷兵.就好像这个单位死亡了.然后再刷同类型的单位来.也是刷兵方式的一种.既然确定了事件.所以我们的事件就可以这样写:
事件:
单位
-
A
unit
death
然后是环境部分.环境就是条件.我们需要确定什么样的条件呢.打个比方.如果有红蓝两个阵营.而你希望红色的阵营单位死亡后消失.而蓝色的单位死亡后会复活(刷兵).也就是说可以判断单位是否是蓝色玩家的.于是环境这样写(当然环境也可以不写):
环境:
(Color
of
(Owner
of
(Triggering
unit)))
等于
蓝色
然后就是动作了.如果发生了事件.一个单位死亡了.然后确定这个单位是蓝色的.于是我们就可以执行我们的刷兵动作了.那么这个动作你需要写什么呢.如果说需要蓝色死亡的单位类型的话.那么可以写成:
动作:
单位
-
Create
1
(Trained
unit-type)
for
玩家
2
(蓝色)
at
(Center
of
(Playable
map
area))
facing
默认的建筑朝向
degrees
这个触发会创造一个类型和你死亡的单位一样的单位给蓝色的玩家(也就是我们需要刷兵的玩家)在指定的区域.这个区域是可以更改的.默认的是可玩的区域的中心.一般是地图中心.也可以是地区.这个就需在你地图上指定一个地区.比方我画了一个区域.命名为TX.然后你就可以写成:
动作:
单位
-
Create
1
(Trained
unit-type)
for
玩家
2
(蓝色)
at
(Center
of
TX
<情报>)
facing
默认的建筑朝向
degrees
如果想把创造的单位直接在单位死亡的位置复活.那么只要把
(Center
of
(Playable
map
area))
部分改成
(Position
of
(Triggering
unit))
.这样子创造的单位就可以直接在单位死亡的位置复活.同样可以应用到物品掉落的情况.
再接着就是单位的朝向度.默认的应该是270度吧.这个可以由你自己定.就是创造的单位面对的方向.做好这些步骤一个基础刷兵的触发就做好了.而刷兵其实涉及到不少的东西也有很多种方式.像前面说的.创造1个.这个1就是刷出来的单位的数量.可以由你来调整.而后面的触发单位.其实就是刷出的单位的类型.可以直接选择或使用变量(比较深一点了).而为了玩家2
(蓝色).就是这个刷出来的单位的归属问题.可以刷给玩家.也可以刷给中立敌对
(玩家13)
之类的电脑控制玩家.而区域不但可以在指定的地区还可以指定在”触发单位的位置”等.这个看需要而定.后面的
中心
.是可以更改的.可以在这个区域的某一个偏移位置或者随机点.角度这个情况并不严重.影响也不大.随自己高兴而更改.
因为涉及到触发.所以大家也需要对触发有一点了解.可以看死蚊子关于触发的说明.这次要说的是如何刷兵.虽然在置顶帖上有了.但是因为是用英文版的.而对讲解的比较含糊(个人认为).新人不容易学习.所以我自己也写了一份.触发以事件.环境.动作三大部分组成.而事件就是一件事的起点.如果事件没有设定好.下面的内容就不会执行.既然以刷兵为目的.常用的像守护类地图.以时间来刷兵.而有些RPG地图.以进入区域刷兵.这个按需要来定.而我这次解说的.是以单位死亡为事件来进行刷兵.就好像这个单位死亡了.然后再刷同类型的单位来.也是刷兵方式的一种.既然确定了事件.所以我们的事件就可以这样写:
事件:
单位
-
A
unit
death
然后是环境部分.环境就是条件.我们需要确定什么样的条件呢.打个比方.如果有红蓝两个阵营.而你希望红色的阵营单位死亡后消失.而蓝色的单位死亡后会复活(刷兵).也就是说可以判断单位是否是蓝色玩家的.于是环境这样写(当然环境也可以不写):
环境:
(Color
of
(Owner
of
(Triggering
unit)))
等于
蓝色
然后就是动作了.如果发生了事件.一个单位死亡了.然后确定这个单位是蓝色的.于是我们就可以执行我们的刷兵动作了.那么这个动作你需要写什么呢.如果说需要蓝色死亡的单位类型的话.那么可以写成:
动作:
单位
-
Create
1
(Trained
unit-type)
for
玩家
2
(蓝色)
at
(Center
of
(Playable
map
area))
facing
默认的建筑朝向
degrees
这个触发会创造一个类型和你死亡的单位一样的单位给蓝色的玩家(也就是我们需要刷兵的玩家)在指定的区域.这个区域是可以更改的.默认的是可玩的区域的中心.一般是地图中心.也可以是地区.这个就需在你地图上指定一个地区.比方我画了一个区域.命名为TX.然后你就可以写成:
动作:
单位
-
Create
1
(Trained
unit-type)
for
玩家
2
(蓝色)
at
(Center
of
TX
<情报>)
facing
默认的建筑朝向
degrees
如果想把创造的单位直接在单位死亡的位置复活.那么只要把
(Center
of
(Playable
map
area))
部分改成
(Position
of
(Triggering
unit))
.这样子创造的单位就可以直接在单位死亡的位置复活.同样可以应用到物品掉落的情况.
再接着就是单位的朝向度.默认的应该是270度吧.这个可以由你自己定.就是创造的单位面对的方向.做好这些步骤一个基础刷兵的触发就做好了.而刷兵其实涉及到不少的东西也有很多种方式.像前面说的.创造1个.这个1就是刷出来的单位的数量.可以由你来调整.而后面的触发单位.其实就是刷出的单位的类型.可以直接选择或使用变量(比较深一点了).而为了玩家2
(蓝色).就是这个刷出来的单位的归属问题.可以刷给玩家.也可以刷给中立敌对
(玩家13)
之类的电脑控制玩家.而区域不但可以在指定的地区还可以指定在”触发单位的位置”等.这个看需要而定.后面的
中心
.是可以更改的.可以在这个区域的某一个偏移位置或者随机点.角度这个情况并不严重.影响也不大.随自己高兴而更改.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
点击equal
to将之改为not
equal
to
点击value,再点select
a
unit,在出现的单位面板中选择山丘之王,在地图上点一下创建一个山丘之王注意,按ctrl+R打开查看region的功能,确保山丘之王没有被放在刚才创建的region-HuaYuan里面,然后按下空格关闭创建单位,再点一下创建好的的山丘之王,这样就在condition里面选中山丘之王了。
连续点OK2次,这时候的condition应该是这样的:
conditions
Entering
unit
Not
equal
to
山丘之王0000
gen
山丘之王后面的数字是单位的编号,不用去管它。这时候conditions也创建完毕呼呼,好累,打字手打肿了
最后只有actions啦,有了以上的经验,我就不那么详细介绍了,过程是这样的:new
action
-
unit
-
issua
order
targeting
a
unit
-
order
“幽灵狼”(和山丘之王创建方法相同,只不过创建在“HuaYuan”内而已)
to
Attack
Entering
unit。这样创建好的action应该是这样:
actions
Unit
-
Order
幽灵之狼
(等级1)
001
<gen>
to
Attack
(Entering
unit)
最后,在unit
editor里面把山丘之王的名字改成“主人”,幽灵狼的名字改成“狗”,再把“HuaYuan”这个区域铺上草,在区域外面放些unit就ok啦(打开unit面板的快截键是U),按ctrl+F9测试一下吧~~,怎么样除了“主人”以外的所有unit进入“花园”都要被“狗”K吧。遇到什么问题参照给出的演示自己修改吧~
to将之改为not
equal
to
点击value,再点select
a
unit,在出现的单位面板中选择山丘之王,在地图上点一下创建一个山丘之王注意,按ctrl+R打开查看region的功能,确保山丘之王没有被放在刚才创建的region-HuaYuan里面,然后按下空格关闭创建单位,再点一下创建好的的山丘之王,这样就在condition里面选中山丘之王了。
连续点OK2次,这时候的condition应该是这样的:
conditions
Entering
unit
Not
equal
to
山丘之王0000
gen
山丘之王后面的数字是单位的编号,不用去管它。这时候conditions也创建完毕呼呼,好累,打字手打肿了
最后只有actions啦,有了以上的经验,我就不那么详细介绍了,过程是这样的:new
action
-
unit
-
issua
order
targeting
a
unit
-
order
“幽灵狼”(和山丘之王创建方法相同,只不过创建在“HuaYuan”内而已)
to
Attack
Entering
unit。这样创建好的action应该是这样:
actions
Unit
-
Order
幽灵之狼
(等级1)
001
<gen>
to
Attack
(Entering
unit)
最后,在unit
editor里面把山丘之王的名字改成“主人”,幽灵狼的名字改成“狗”,再把“HuaYuan”这个区域铺上草,在区域外面放些unit就ok啦(打开unit面板的快截键是U),按ctrl+F9测试一下吧~~,怎么样除了“主人”以外的所有unit进入“花园”都要被“狗”K吧。遇到什么问题参照给出的演示自己修改吧~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
先用本子设计一下图里的所有数据.物品,兵种,英雄,建筑.还有其他随你定.然后就是地形设计图.地形装饰物随你定的.你想怎么设计就按你喜好了.(触发器)人人都知道,这是个宝贝.了解认识了它的所有,你绝对是高手.技能也靠它索造成完美的模式,英雄飞天遁地都行.触发事件刷怪条件什么都靠他.就这些吧...数据很重要.输出性伤害,其他属性数据.全图就靠这东东诱起别人的喜爱了.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
http://bbs.uuu9.com/viewthread.php?tid=419227&extra=page%3D1这里有关于魔兽制作的东西,包括房主提出的问题==都有得解决哦!!不过太复杂
我就简单点一下剩下的你就去上面自己学上面一步一步教你
技能制作分为很多种,
非T技能、T技能、非J技能、纯J技能、纯T技能。
T技能就是触发技能,用事件编辑器制作的技能。
J技能就是Jass技能,用Jass编写的技能,这个需要相当高深的WE(World
Editor)[魔兽争霸地图制作器]。
技能效果也分很多种。
我曾经特别喜爱制作其他游戏中的魔法效果,将其转化为魔兽争霸技能效果。比如我模仿风色幻想I-风色幻想IV中所有技能,那真的是相当复杂。
最简单的技能就是多重单位,对目标点释放不同技能,产生不同技能效果,这个就是T技能。
其次就是用循环变量制作圆圈技能及范围效果技能,这是纯T技能。
难点的就是三角函数技能,这可能涉及Jass。
还有就是复数技能,这个和三角函数相当难度,切涉及Jass多一点。
如果你想要制作出风色幻想里的技能,用到的几乎全是J技能。
Wow8(魔兽吧)站点,有制作技能的专区。
bbs.wow8.com.cn
U9站点有外国大型技能演示.
www.uuu9.com
一般制作技能需要一定构思和创意,还要有精确度。
建议你找个师傅,慢慢琢磨。
制作技能一定要有耐心,要多次测试,因为T技能、J技能产出的Bug很有可能造成电脑死机,T技能、J技能容易出现内存泄露问题,所以一定要做好技能释放后的处理。例如删除效果、删除单位等。
这
这
这这这
我就简单点一下剩下的你就去上面自己学上面一步一步教你
技能制作分为很多种,
非T技能、T技能、非J技能、纯J技能、纯T技能。
T技能就是触发技能,用事件编辑器制作的技能。
J技能就是Jass技能,用Jass编写的技能,这个需要相当高深的WE(World
Editor)[魔兽争霸地图制作器]。
技能效果也分很多种。
我曾经特别喜爱制作其他游戏中的魔法效果,将其转化为魔兽争霸技能效果。比如我模仿风色幻想I-风色幻想IV中所有技能,那真的是相当复杂。
最简单的技能就是多重单位,对目标点释放不同技能,产生不同技能效果,这个就是T技能。
其次就是用循环变量制作圆圈技能及范围效果技能,这是纯T技能。
难点的就是三角函数技能,这可能涉及Jass。
还有就是复数技能,这个和三角函数相当难度,切涉及Jass多一点。
如果你想要制作出风色幻想里的技能,用到的几乎全是J技能。
Wow8(魔兽吧)站点,有制作技能的专区。
bbs.wow8.com.cn
U9站点有外国大型技能演示.
www.uuu9.com
一般制作技能需要一定构思和创意,还要有精确度。
建议你找个师傅,慢慢琢磨。
制作技能一定要有耐心,要多次测试,因为T技能、J技能产出的Bug很有可能造成电脑死机,T技能、J技能容易出现内存泄露问题,所以一定要做好技能释放后的处理。例如删除效果、删除单位等。
这
这
这这这
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询