心灵终结3.3.6地图编辑器萌新教程第3篇:触发的基本原理
从这一篇开始,我们正式进入触发的讲解。在一场战役中,不管是任务目标的确定、任务成功与失败的判定,还是各种文本提示信息、非支援技能的倒计时甚至任务的特殊bgm,都是由触发决定的。这一篇先讲触发的基本原理,后面会举更多的例子来说明这些都如何实现。
什么是触发?简单来说就是:如果怎么样,就会怎么样。前后两部分分别称为触发的“条件”和“结果”。
触发的结构和数学中“命题”的结构是相同的,都是“如果……,那么……”。只不过,数学中的“命题”是一种判断:“如果前面的条件成立,我们就会得到后面的结论”;而“触发”是一种行为:“如果前面的条件成立,就会去做后面的事情”。
在地图编辑器中,新建地图之后,通过打开“编辑——触发编辑”,可以看到触发编辑器的窗口。如果你在新建地图时没有选择“设置自动生产触发”,那么此时的触发编辑器应该是一片空白;如果选了,此时触发编辑器里就会有一些名称为“AI Auto Production”的触发。这对下面的内容也没有什么影响,无视即可。
如何创建一个触发?首先需要点击触发编辑器中的“新建触发”,此时你会看到一个名称为“New trigger”(新触发)的触发,然后下面有三项:“触发选项”“条件”“结果”。
1、触发选项
首先可以在触发选项中可以给触发命名,名称对触发没有影响,但最好能方便理解和自己查找。名称中可以使用中文、英文、空格和一些符号,例如“[Intro] 建立战场控制”,不过使用英文逗号的时候可能会出问题(大家可以自行尝试)。
然后下面有一个“所属方”的选项,这个“所属方”在许多情况下是没什么用的,只会在一些特定的触发条件和结果中才会起作用。“类型”和“关联触发”选项以及下面的“禁止”标记后面再说,目前保持默认即可。
最下面还有三个“简单”“中等”“终结”的按钮,这是与进入任务时的难度选项关联的。勾选了哪个选项,就会在相应的难度下实现该触发。比如说:在“简单”难度下玩家可以获得额外的援军,那么你就需要在相应的援军触发中勾选“简单”,取消“中等”“终结”。
2、条件
一个触发的条件由若干个事件组成,只有当条件中的所有事件都发生时(注意不是其中之一发生即可),才会判定满足该触发的条件。可以通过“新建事件”和“删除事件”按钮来添加或删除事件,并且选择事件类型。
有些事件类型还需要在下面选择或输入一些参数值,根据事件的描述自行尝试即可。另外,有一些事件看似并没有“主语”,也没有参数可选,而是在事件描述中提到了“关联对象”,这一点放到下一篇再讲。
3、结果
当满足所有条件时,会自动开始执行所有结果,一个触发的结果也是由一系列事件组成的,具体的细节和“条件”差不多相同,在此不再赘述。
关于“条件”和“结果”的一些其他事项:
(1)“条件”和“结果”的事件类型很多,刚开始肯定非常难找,甚至有时候自己并不知道这里面有没有想要的那个事件。但其实里面的很多事件用处不大,对于一些非常常用的事件,一段时间之后就记住了,在写条件和结果时可以直接手动输入序号,比拉动滑条去选快得多。
(2)“条件”和“结果”不是万能的,尤其是一些设定,需要的条件可能比较复杂,单靠一个触发是搞不定的,这时候还需要结合触发的禁止与允许、局部变量和一些其他技巧来实现。
(3)“条件”和“结果”的数量不要太多,否则可能会弹窗(15个还是20个忘了。。。)。一般条件不会有那么多,如果结果有很多个,可以分成若干个触发。
(4)“条件”和“结果”中的事件显示时的排序是按照字符串“条件(结果)x”的字典序进行排列的,从0开始。比如你有12个结果,那么显示的顺序是“结果0,结果1,结果10,结果11,结果2……结果9”(注意:上面只是触发编辑器里面多个结果显示的顺序,实际触发时各个结果是同时发生的,并无顺序之分),所以当你已经有了“结果9”时,新建事件之后,记得去“结果1”后面找。
一般一个触发对应一个标记,但什么是标记在此不必深究,这里只需要注意一点:当你要删除一个触发时,点击“触发编辑器”里的“删除触发”,然后,如果你真的要删除,请点击“是”;如果你又不想删除了,请点击“取消”,不要点“否”!当然,如果你不小心手滑点到了“否”,在“编辑——标记编辑”中把该触发对应的标记删除就可以了。
以上就是触发的基本原理,我们下面可以通过制作一个简单的任务来展示触发的具体应用。完全没有接触过触发的朋友可以跟着一起做。
新建地图,最好取消“设置自动生产触发”,玩家所属方选美国。

在地图一侧摆一个美国的谭雅,可以加上两个军医,然后在另一侧摆一个苏联的基地,建造厂有且只有一个,其他随意。然后在左侧“游戏者位置”中选“游戏者1”,点击谭雅附近的位置,这时你会发现路径点98,99都被移到了谭雅附近(所谓路径点就是给一个位置编了一个号,可以在触发中使用),也就是说你一进入游戏,视野就会居中到这两个路径点。当然,这两个路径点其实并没有什么特殊的,完全可以拆开当成普通的路径点来用,要想确定刚进任务时的视野位置,只需要使用触发结果112就可以了。然后,在苏军建造厂上面建立一个路径点,序号默认为0.

我们的任务目标是让谭雅摧毁苏联建造厂,这就是我们的成功条件。而失败条件就是谭雅阵亡。明确了这一点,我们就可以写出任务成功和失败的触发。
触发1:
名称:任务失败
所属方(就是触发编辑器里第一栏里的那个“所属方”,在这里有用):United States
条件:82,所属方不存在科技类型。下面有两个参数:科技类型填TANY (,这里的TANY是谭雅的注册名,加上一个空格和一个英文左括号。你可以只填TANY,然后点右面的箭头就可以自动出现第一个开头为你所填字符串的选项(这种参数值肯定不是让你一个一个找的。。。)。还有一个参数“数值”填0.那么整个这个条件的意思就是:美国所拥有的谭雅数量小于等于0,也就是“谭雅阵亡”。
结果:2,失败者是……,参数选择United States,这个结果就是通常的任务失败,显示“Mission Failed”并结束任务。
触发2:
名称:任务完成
所属方:Russia
条件:82,所属方不存在科技类型。科技类型填NACNST (,也就是苏联建造厂,数值填0.
结果:1,胜利者是……,参数选择United States,这个结果就是通常的任务完成。
注:1、这两个触发的条件在这里都可以由另外的事件来代替,例如条件61,科技类型不存在。不过在不同场合下这些条件可能是有区别的。请大家想一想,如果这一关中玩家可以使用工程师,并且占领建造厂也算“摧毁”,那么任务成功的条件是否还能使用61和82?另外,触发条件7和48也可以作为该触发的条件,但要引入“关联对象”的概念,放在下一篇讲解。
2、添加这两个触发后,任务表现为一旦建造厂摧毁立即显示“任务完成”,一旦谭雅阵亡立即显示“任务失败”,但一般任务的完成与失败会有几秒的延迟,这需要“53,允许触发”这一结果来控制,以后会详细讲解。
有了这两个触发,本关实际上就已经是一个具有完整流程的任务了,不过为了且展示一些其他常用触发的用法,我们再添加以下几个触发。
触发3:
名称:[Intro1]建立战场控制
条件:8,任何事件(或者13,流逝时间,参数填0)
结果0:46,禁止玩家输入。这个结果就是使玩家的鼠标失去控制。
结果1:21,播放语音,参数填:EVA_EstablishBattleFieldControl,这个就是每关一开始副官会说:“Establishing Battle Field Control , stand by.”(正在建立战场控制,请稍候)
触发4:
名称:[Intro2]视野居中至敌方基地
条件:13,流逝时间,参数填5(指任务开始5秒后)
结果0:112,视野居中至路径点,参数路径点填0(就是我们之前在苏联基地那里建立的序号为0的路径点)
结果1:17,显示路径点周围区域,参数路径点填0
结果2:19,播放音效,参数填CameraSwitch,就是任务中切换镜头的“咔嚓”声。
结果3:55,建立小地图事件,参数路径点填0,事件填1,这个事件就是在右上角的小地图上出现方框(首先你需要在“编辑——基本设置”中开启无偿小地图)。事件参数填0-5即可,不用管点击右面箭头之后出现的选项。0,3,4为红框,1,2为黄框,5为蓝框(另外我也不知道三种红框,两种黄框之间有什么区别。。。)
触发5:
名称:[Intro3]作战控制连线
条件:13,流逝时间,参数填15
结果0:112,视野居中至路径点,参数路径点填98,也就是谭雅所在的地方。
结果1:19,播放音效,参数填CameraSwitch
结果2:47,允许玩家输入,也就是玩家可以用鼠标操控。
结果3:21,播放语音,参数填EVA_BattleControlOnline
这些触发写好之后,保存,由于是盟军任务,所以可以命名为areddawn.map,地图类型选择“单人任务”,保存到根目录中,运行盟军第一关就可以玩了。
好了,现在你已经学会触发的基本原理了,快去复刻“通天之塔”吧。
以上就是触发基本原理的介绍,以后会结合作战小队、局部变量等内容进一步说明触发的应用。感谢大家的支持。