不支持Flash
新浪首页 > 游戏世界 > 新闻动态 > 单机游戏 > > 魔兽争霸3 >>  正文
魔戒重现——《魔兽争霸3》地图编辑器进阶教程(下)
http://games.sina.com.cn 2004-08-06 15:07 游戏世界

  嗨,各位未来的“天神”大人,欢迎再度来到“创世界讲习班”,在上次的课程中,我们已经知道如何创造一个全新的世界,并让“阿拉贡”和“莱戈拉斯”再次降临这个世界。现在,让我们继续引导他们去触发未尽的使命!

  触发是《魔兽3》地图编辑器(以下简称WE)中最重要、最复杂环节!触发器(Trigger)又被称为“开关”,是创造游戏事件的关键工具。所谓触发器,就是当某个条件达成时会
触发某个剧情或项目的机器,例如,当敌人的HP小于20时逃跑。当然,这只是触发器的最基本形态,WE的触发还包含有事件、条件等很多内容,大量的触发器和事件动作的相互结合就构成了整个游戏的剧情和特殊事件秒杀,甚至可以这样说,一个RPG地图就是由一系列的触发器构成的。

  工欲善其事,必先利其器。要设置触发必先搞弄清楚触发器面板的界面,点击“a”按钮打开一个触发器面板。如果是一个默认地图,你会在左边的触发器框中看见唯一的一个触发——“对战初始化”。右上是这个触发器的文字注释,有些地图作者会在这里写上这个触发器的用途,加强地图的可阅读性。右下角的触发器功能框中会显示这个触发的具体内容,一个触发器越复杂,这里的项目就越多,你可以直接在这里添加修改条件。至于左边框上的文件夹图标一样的“类”,只是起一个说明作用,让触发更容易看懂,无论触发属于哪一个类都和其本身的工作都没有任何关系。在左边框的“类”上点击鼠标右键可新建一个触发或一个类;在右下的框内用鼠标右键点击任意项目都可建立新的事件开端、环境或动作,而双击一个已经存在的项目则可修改它。

  让我们先从默认的地图触发来了解一下如何设置触发。触发器构成了RPG,我们的首要任务是搞清楚触发器的构成。一般来说,一个触发器由事件(Events)、环境(Conditions)、动作(Actions)三部分构成。

  事件:这是启动这个触发器的条件,当这个条件达成以后,程序将自动进行下一步——环境检查。

  环境:限制条件,当满足条件时候就进行动作。当然,在很多时候限制条件为空,就可以跳过这一步。

  动作:发生事件需要导致的结果,设置这个触发的最终目的。

  现在,让我们用一个简单的触发来引导主人公们的命运,当“阿拉贡”死亡后,任务就会失败。

  首先,我们设置事件开端为“单位‘死亡’”。这样当某一个单位死亡时,程序就会开始检测环境。环境我们设置为“‘触发单位’‘等于’‘阿拉贡'”(详细的设置方法请见下文),这样,当死亡的单位不是“阿拉贡”时,动作不会发生,而“阿拉贡”死亡,系统就会自动运行动作——“失败‘触发玩家’ 信息提示‘阿拉贡死亡’”,游戏将会弹出“阿拉贡死亡”对话框提示,点击“确定”后退出游戏。简单地说,“事件开端”是钥匙,而“环境条件”就密码,当钥匙和密码都正确时才能打开“动作”这个保险箱。我们可以发现,触发器设置其实就和编程的基本思想是类似的,就是一连串的If…then/else 语句的组合,当然,它可比编程容易多了。

  理解了触发的基本构成和运作方式,现在可以设置一些简单的触发了,比如,我们可以为“阿拉贡”安排一次简单的试炼,当他进入某个区域时,安排几个兽人袭击他。

  首先,在地图上画出几个地区,一个是进入后触发剧情的地区,一个是出现兽人的地区。用地区面板上的添加按钮在地图上划出地区,分别改名称为“chufaqu”(触发区)和“tuxiqu”(突袭区)(名称只是为了方便区分,并无实质作用)。现在就可以建立一个新的触发器,命名为tuxi(突袭)。

  首先设置触发的“事件”,要启动的条件当然就是“阿拉贡”进入“触发区”,我们就可以先添加一个“单位-单位进入区域”的事件,点击下面的Region(地区)将这一项设置成“变量”,并选择为刚才设置的“chufaqu”。然后在条件处将触发事件的单位限制在“阿拉贡”上。建立的条件可以选择成“单位-类型 比较”,然后将最后一项的类型的值改成“阿拉贡”。这样,当上面的条件完成后就会启动触发器的动作。这里的动作至少有两个:1.创建两个兽人步兵;2.让他们向“阿拉贡”发起攻击。第一个动作可以使用单位类型中的“创建单位面对点”,这里可以设置创建的单位数量、类型、单位的拥有者以及位置,最后的面对方向可以忽略不管。第二个动作则使用单位类型中的“给单位发送命令到 单位”,属性设置为“最后创建的单位”、“攻击”、“事件响应-触发单位”。在这里的最后创建单位当然就是刚才创建的两个兽人,而触发单位则是阿拉贡。到此,这个触发器就设置完成了。

  对于触发器各个项目的作用一定要多熟悉,需要时才能很快找到最合适的项目。下面介绍一些常用的触发器项目的用途:

  1.事件篇

  地图初始化:地图一开始就执行这个触发,用于设置游戏开始时各个玩家的资源、阵营、敌人的AI以及一些默认的设置。在默认的对战地图中,唯一的触发器就是使用了这个事件来设置对战时的所有起始项目。一般这个触发不加环境限制。

  可破坏的-可毁坏物死亡:所谓可毁坏物就是指地形装饰物中的可毁坏物类型的单位,一般是用来设定门之类被攻破后发生的事件。

  游戏-游戏时间改变:游戏中到某个时间段触发,一般用来设置一些特殊事件,比如晚上6点后怪物的出现几率增加。

  游戏-英雄学习技能按钮被点击:当玩家点击英雄升级按钮时执行触发,一般用来设置对技能的讲解等。注意,这个事件只能用于单人游戏地图。

  玩家-聊天信息:这一项有几个可以修改的属性,分别是:玩家、文本和匹配性,点击这些文字可以直接修改它们。当指定玩家输入与text的值匹配的聊天信息时执行触发。通常被用于设置游戏作弊码或者调试码,也可以在多人游戏中踢掉出口成“脏”的玩家。

  玩家-按Esc键(跳过动画):注意这个项目不是仅仅在显示动画时生效,只要指定玩家按下Esc键就会执行触发。

  玩家-选择单位事件:当玩家点击某个单位时执行触发,可以用作设置和NPC对话的触发。其中的“选择”属性可以改成“取消选择”,效果和选择相反。

  玩家-属性:这一项相当重要,其中第二个属性有很多变化,可以用于设置当指定玩家开采资源或者建造单位到达多少后发生的剧情。

  玩家-失败:指定玩家失败后执行的触发,类似的还有“玩家-胜利”,不过完全不实用。

  玩家-离开游戏:指定玩家退出游戏而不是失败被强制踢出。

  时间-游戏开始逝去时间:很重要的一项,设置游戏进行一定时间后发生的剧情。注意单位是秒,如果属性直接用“值”则包括了战役动画的时间

  时间-循环逝去的时间:也是很重要的一项,设置每隔一定时间就执行的触发,比如怪物刷新。

  单位-详细的单位事件:相当重要的一项,指定某一个单位发生事件后执行触发。最常见的有:死亡、被攻击、升级、施放一个技能、购买物品等等。

  单位-单位的事件:任何单位响应这个事件都能够触发这个触发器,因为范围太广了,所以在使用时往往要加上某种环境限制。

  单位-单位进入区域:任何单位进入特定区域(可以用地区面板设置,也可以指定坐标或以某单位为中心的一片区域),同样没有限制单位,所以必须和环境限制搭配使用。

  单位-单位离开区域:和上面相反,也要和环境限制搭配使用。

  单位-生命值:指定单位的生命值在设置数值的以上或者以下时执行触发,多用于设定剧情时的触发。

  2.条件篇:

  稍稍观察就可发现,条件中的项目后面都带有一个“比较”的字样。这是因为环境条件大多数都是判定某个项目的属性是某否等于需要的值。所以条件必须和事件配合使用,比如事件中使用了“英雄施放技能”的开端,那么事件中就可以加上“技能比较”来确定英雄施放的技能是不是符合需求。也可加上“单位比较”来确认施放技能的英雄是否指定的英雄。当然,两个条件可一起加上,那就要加上后面的“或,多样条件比较”或“和,多样条件比较”这两项来决定到底要满足几个条件才能执行下一步的动作。

  3.动作篇

  如果说事件和条件是触发的导火线,那么动作就是触发的火药。因为动作才是制作触发的目的,事件和条件只是决定动作的发生时间,这就导致了动作是整个触发器中数量最多,种类最繁杂的,这里不能将所有项目一一介绍,只能粗略地将它们进行分类介绍。

  AI:AI用于设置电脑玩家的人工智能,对战AI和战役AI等一般都在游戏初始化时设置好,而其他的命令则是改变现有单位的AI设定。

  动画:制作即时动画的一系列命令,很多是控制单位的行为和外形的,制作剧情全靠它。

  镜头:设置游戏界面视角,很多动画的演示都是通过视角的转变达到动画的效果的。

  电影:和以上两个类别配合能够制作出类似动画的自动演示,主要是一些游戏界面的变化和控制。

  倒数计时器:设置或修改倒数计时器,当倒数计时器归0时则可以用作另一个触发器的事件。

  可破坏的:装饰物和树木等的设置,比如战役中半神赛那留斯将森林复活的动作就是用这里面的复活一项。

  环境:这个和触发器的环境条件的意义不同,是指游戏中的自然环境。能够修改天气和地形,比如可以让游戏时间过了多久后开始下雨。

  漂浮文字:设置类似剑圣的致命一击或恶魔猎人的闪避一样漂浮在游戏界面中的文字。

  游戏:可对游戏进行相关的动作设置,例如改变游戏速度等。

  英雄:很重要的一类,能够修改英雄属性,比如可以制作成完成任务后让英雄获得一定经验或提升基本属性。

  物品:关于物品的动作,包括创建,给予,去除等等。

  对战游戏:这一类全部是对战游戏的基本设置。

  中立建筑:修改金矿、中立商店等的属性。

  玩家:设置单一玩家属性。

  触发器:很重要的一项,能够通过这一项的动作来关掉不再需要的触发器或者打开已经被关掉的触发器。

  单位:最重要的一类,设置单位的属性和动作,杀死单位、消除单位、甚至让单位执行指令等都靠这一类的项目。

  文/Lucky_Angel

   (以上文章刊载于《游戏世界》2004年7月刊,由《游戏世界》杂志授权转载)

评论】【推荐】【打印】【关闭

 相关链接
新浪游戏 魔兽争霸3 专区
新浪游戏 魔兽争霸3 论坛
 相关专题:游戏世界

 发表评论:  匿名发表  笔名:   密码:


新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

Copyright © 1996 - 2007 SINA Corporation, All Rights Reserved

新浪公司 版权所有
北京市通信公司提供网络带宽