可任意转换职业(单位)时的保镖保护模式
<FONT face=宋体>我们知道在有一些</FONT>RPG<FONT face=宋体>类型的战役中</FONT>,<FONT face=宋体>主角身边的角色</FONT>(<FONT face=宋体>非自己控制</FONT>)<FONT face=宋体>会不断跟随自己,因为触发乱所以我在最后有个范例附件。</FONT><FONT face=宋体>这个触发大致是这样设置的</FONT>:
<B><FONT face=宋体>触发</FONT></B><B>0:</B><B><FONT face=宋体>循环</FONT></B><B></B><FONT face=宋体><B>开启</B><B></B></FONT>
<B><FONT face=宋体>条件</FONT></B><B>0:</B><B><FONT face=宋体>对象不可视</FONT></B><B> (</B><B><FONT face=宋体>目标</FONT></B><B>:</B><B><FONT face=宋体>保镖</FONT></B><B>)</B>
<B><FONT face=宋体>效果</FONT></B><B>0:</B><B><FONT face=宋体>任务目标</FONT></B><B> (</B><B><FONT face=宋体>对象</FONT></B><B>:</B><B><FONT face=宋体>保镖</FONT></B><B></B><B><FONT face=宋体>目标</FONT></B><B>:</B><B><FONT face=宋体>主角</FONT></B><B>)</B>
<FONT face=宋体>这样的触发就可以让保镖跟着自己了,但假如在这个战役中可以转换职业(重复转换)的话,那么如何保证保镖是不断跟着那个职业已转换的玩家呢?不是说不可以,但一般来设置的话可能会太复杂,不过我们还是可以将其简化的。</FONT>
<FONT face=宋体>整个大致方法是这样的:</FONT>
<FONT face=宋体>当转换职业的时候,根据转换职业后玩家所拥有的那名角色的不同,在一个预定好的一块区域上因职业不同在不同的地方生产城墙(在生产之前先消除那块块区上所有城墙,为了避免跟踪错误,只允许这块地区上只有一个城墙),然后根据这个城墙的位置来决定保镖应该跟踪谁。</FONT>
<FONT face=宋体>(</FONT>PS:<FONT face=宋体>因为开始有个默认主角,所以要预先在地图上指定的地方放个城墙)</FONT>
<FONT face=宋体>举个例子说明,一个战役里面,包括默认的主角总共</FONT>3<FONT face=宋体>个职业,接下来我们要让他转换别的职业,并且让保镖们跟随正确的角色,下面先说明几个数字的作用:</FONT>
<FONT face=宋体>玩家</FONT>1=<FONT face=宋体>主角</FONT> <FONT face=宋体>玩家</FONT>2=<FONT face=宋体>同盟</FONT> <FONT face=宋体>玩家</FONT>3=<FONT face=宋体>保镖</FONT>
1<FONT face=宋体>号,</FONT>2<FONT face=宋体>号和</FONT>3<FONT face=宋体>号是主角可重复</FONT>3<FONT face=宋体>个职业,其中</FONT>1<FONT face=宋体>号是原始的。</FONT>
A<FONT face=宋体>是保镖。</FONT>
<P >首先我们要完成职业重复转化的简易触发:
<P ><B>触发<FONT face="Times New Roman">0</FONT></B><B>:<FONT face="Times New Roman"> </FONT></B><B>开启<FONT face="Times New Roman"> </FONT></B><B>不循环</B>
<P ><B>条件<FONT face="Times New Roman">0</FONT></B><B>:区域内的对象<FONT face="Times New Roman"> </FONT></B><B>(玩家<FONT face="Times New Roman">1</FONT></B><B>拥有单位:<FONT face="Times New Roman">1</FONT></B><B>个数量<FONT face="Times New Roman"> </FONT></B><B>区域:<FONT face="Times New Roman">2</FONT></B><B>号玩家前的旗子)</B>
<P ><B>效果<FONT face="Times New Roman">0</FONT></B><B>:改变所有权<FONT face="Times New Roman"> </FONT></B><B>(玩家<FONT face="Times New Roman">2 </FONT></B><B>变为<FONT face="Times New Roman"> </FONT></B><B>玩家<FONT face="Times New Roman">1</FONT></B><B>对象:<FONT face="Times New Roman">2</FONT></B><B>号)</B>
<P ><B>效果<FONT face="Times New Roman">1</FONT></B><B>:改变所有权<FONT face="Times New Roman"> </FONT></B><B>(玩家<FONT face="Times New Roman">1 </FONT></B><B>变为<FONT face="Times New Roman"> </FONT></B><B>玩家<FONT face="Times New Roman">2</FONT></B><B>对象:<FONT face="Times New Roman">1</FONT></B><B>号)</B>
<P ><B>效果<FONT face="Times New Roman">2</FONT></B><B>:改变所有权<FONT face="Times New Roman"> </FONT></B><B>(玩家<FONT face="Times New Roman">1 </FONT></B><B>变为<FONT face="Times New Roman"> </FONT></B><B>玩家<FONT face="Times New Roman">2</FONT></B><B>对象:<FONT face="Times New Roman">3</FONT></B><B>号)</B>
<P ><B>效果<FONT face="Times New Roman">3</FONT></B><B>:任务目标<FONT face="Times New Roman"> </FONT></B><B>(对象:<FONT face="Times New Roman">1</FONT></B><B>号<FONT face="Times New Roman"> </FONT></B><B>目标:<FONT face="Times New Roman">1</FONT></B><B>号位置)</B>
<P ><B>效果<FONT face="Times New Roman">4</FONT></B><B>:任务目标<FONT face="Times New Roman"> </FONT></B><B>(对象:<FONT face="Times New Roman">3</FONT></B><B>号<FONT face="Times New Roman"> </FONT></B><B>目标:<FONT face="Times New Roman">3</FONT></B><B>号位置)</B>
<P ><B>效果<FONT face="Times New Roman">5</FONT></B><B>:移除目标<FONT face="Times New Roman"> </FONT></B><B>(区域:城墙区<FONT face="Times New Roman"> </FONT></B><B>玩家:任意)</B>
<P ><B>效果<FONT face="Times New Roman">6</FONT></B><B>:生产目标<FONT face="Times New Roman"> </FONT></B><B>(对象:城墙<FONT face="Times New Roman"> </FONT></B><B>位置:<FONT face="Times New Roman">2</FONT></B><B>号主角城墙所在地<FONT face="Times New Roman"> </FONT></B><B>玩家:任意,但要跟效果<FONT face="Times New Roman">5</FONT></B><B>相同。)</B>
<P ><B>效果<FONT face="Times New Roman">7</FONT></B><B>:激活触发<FONT face="Times New Roman"> </FONT></B><B>(触发<FONT face="Times New Roman">1</FONT></B><B>)</B>
<P ><B>效果<FONT face="Times New Roman">8</FONT></B><B>:激活触发<FONT face="Times New Roman"> </FONT></B><B>(触发<FONT face="Times New Roman">2</FONT></B><B>)</B>
<P > <FONT face="Times New Roman"> </FONT>
<P >上面的这个触发便是可以重复循环转职触发的其中之一,希望大家能理解其意思,接下来按照上面的触发<FONT face="Times New Roman">0</FONT>来建立触发<FONT face="Times New Roman">1</FONT>(转换成<FONT face="Times New Roman">1</FONT>号玩家,记住这个地方的触发是关闭的,因为是默认的嘛)和触发<FONT face="Times New Roman">2</FONT>(<FONT face="Times New Roman">3</FONT>号玩家),就类似于上面的触发<FONT face="Times New Roman">0</FONT>(不是完全一样),并稍做改动即可。
<P > <FONT face="Times New Roman"> </FONT>
<P >当转职的<FONT face="Times New Roman">3</FONT>个触发制作完毕后,接下来就要开始制作保镖一类的系统了,在此之前,先检查一下触发有没有错误。
<P >没错误之后,就开始保镖系统了,系统大致制作是这样的:
<P > <FONT face="Times New Roman"> </FONT>
<P >根据不同的城墙位置来判断保镖跟随谁。
<P > <FONT face="Times New Roman"> </FONT>
<P >根据上面例子继续说明:
<P >开始建立
<P ><B>触发<FONT face="Times New Roman">3</FONT></B><B>:<FONT face="Times New Roman"></FONT></B><B>开启<FONT face="Times New Roman"></FONT></B><B>循环</B>
<P ><B>条件<FONT face="Times New Roman">0</FONT></B><B>:对象不可视<FONT face="Times New Roman"> </FONT></B><B>(对象:<FONT face="Times New Roman">A</FONT></B><B>)</B>
<P ><B>效果<FONT face="Times New Roman">0</FONT></B><B>:激活触发<FONT face="Times New Roman"> </FONT></B><B>(触发<FONT face="Times New Roman">4</FONT></B><B>)</B>
<P ><B>效果<FONT face="Times New Roman">1</FONT></B><B>:激活触发<FONT face="Times New Roman"> </FONT></B><B>(触发<FONT face="Times New Roman">5</FONT></B><B>)</B>
<P ><B>效果<FONT face="Times New Roman">2</FONT></B><B>:激活触发<FONT face="Times New Roman"> </FONT></B><B>(触发<FONT face="Times New Roman">6</FONT></B><B>)</B>
<P >这上面就是该保镖要追踪前的判断了。
<P > <FONT face="Times New Roman"> </FONT>
<P ><B>触发<FONT face="Times New Roman">4</FONT></B><B>:<FONT face="Times New Roman"> </FONT></B><B>关闭<FONT face="Times New Roman"> </FONT></B><B>不循环</B>
<P ><B>条件<FONT face="Times New Roman">0</FONT></B><B>:区域内的对象<FONT face="Times New Roman"> </FONT></B><B>(区域:<FONT face="Times New Roman">1</FONT></B><B>号角色城墙所在地<FONT face="Times New Roman"> </FONT></B><B>对象:任意玩家,但要跟上面触发<FONT face="Times New Roman">0~2</FONT></B><B>中的效果<FONT face="Times New Roman">5</FONT></B><B>或<FONT face="Times New Roman">6</FONT></B><B>一样)</B>
<P ><B>效果<FONT face="Times New Roman">0</FONT></B><B>:任务目标<FONT face="Times New Roman"> </FONT></B><B>(对象:玩家<FONT face="Times New Roman">3[</FONT></B><B>这里选择玩家<FONT face="Times New Roman">3</FONT></B><B>是为了后面多个保镖而考虑的<FONT face="Times New Roman">] </FONT></B><B>目标:<FONT face="Times New Roman">1</FONT></B><B>号<FONT face="Times New Roman">[</FONT></B><B>同上条件<FONT face="Times New Roman">0]</FONT></B><B>)</B>
<P ><B>效果<FONT face="Times New Roman">1</FONT></B><B>:关闭触发<FONT face="Times New Roman"> </FONT></B><B>(触发<FONT face="Times New Roman">5</FONT></B><B>)</B>
<P ><B>效果<FONT face="Times New Roman">2</FONT></B><B>:关闭触发<FONT face="Times New Roman"> </FONT></B><B>(触发<FONT face="Times New Roman">6</FONT></B><B>)</B>
<P > <FONT face="Times New Roman"> </FONT>
<P >希望上面的大家能理解,也就是确定好了追踪,然后按照这个触发<FONT face="Times New Roman">4</FONT>来建立触发<FONT face="Times New Roman">5</FONT>和触发<FONT face="Times New Roman">6</FONT>吧,之后就大功告成了,测试看看吧。这个触发系统有点乱,我们先来整理一下:
<TABLEcellSpacing=0 cellPadding=0 border=1>
<TR >
<TDvAlign=top width=284>
<P ><FONT size=2>转职系统类触发</FONT> </TD>
<TDvAlign=top width=284>
<P ><FONT size=2>触发<FONT face="Times New Roman">0</FONT></FONT>
<P ><FONT size=2>触发<FONT face="Times New Roman">1</FONT></FONT>
<P ><FONT size=2>触发<FONT face="Times New Roman">2</FONT></FONT> </TD></TR>
<TR >
<TDvAlign=top width=284>
<P ><FONT size=2>保镖判断追踪对象系列</FONT> </TD>
<TDvAlign=top width=284>
<P ><FONT size=2>触发<FONT face="Times New Roman">3</FONT></FONT> </TD></TR>
<TR >
<TDvAlign=top width=284>
<P ><FONT size=2>保镖追踪对象</FONT> </TD>
<TDvAlign=top width=284>
<P ><FONT size=2>触发<FONT face="Times New Roman">4</FONT></FONT>
<P ><FONT size=2>触发<FONT face="Times New Roman">5</FONT></FONT>
<P ><FONT size=2>触发<FONT face="Times New Roman">6</FONT></FONT> </TD></TR></TABLE>
<P > <FONT face="Times New Roman"> </FONT>
<P > <FONT face="Times New Roman"> </FONT>
<P ><FONT face="Times New Roman">-------------------------------------------------</FONT>超可爱分割线<FONT face="Times New Roman">---------------------------------------------------</FONT>
<P >那么,假如我们拥有超过<FONT face="Times New Roman">1</FONT>个保镖怎么办?我们还是可以良好简化,在这里先说明下大致方法:
<P >将“保镖判断追踪对象系列”触发里面的效果(仅仅效果)全部删除,然后我们需要腾出一格子的空间,来建造另个类型的城墙(不管后面有多少个保镖,只需要一个格子),然后利用格子来判断什么时候要追踪。
<P > <FONT face="Times New Roman"> </FONT>
<P > <FONT face="Times New Roman"> </FONT>
<P >我们根据上面做好的系统来继续;首先,我们要先改变一下“保镖判断追踪对象系列”的触发,以上面的触发<FONT face="Times New Roman">3</FONT>为例:
<P ><B>触发<FONT face="Times New Roman">3</FONT></B><B>:<FONT face="Times New Roman"></FONT></B><B>开启<FONT face="Times New Roman"></FONT></B><B>循环</B>
<P ><B>条件<FONT face="Times New Roman">0</FONT></B><B>:对象不可视<FONT face="Times New Roman"> </FONT></B><B>(对象:<FONT face="Times New Roman">A</FONT></B><B>)</B>
<P ><B>效果<FONT face="Times New Roman">0</FONT></B><B>:生产目标<FONT face="Times New Roman"> </FONT></B><B>(对象:城墙<FONT face="Times New Roman"> </FONT></B><B>位置:格子<FONT face="Times New Roman">[</FONT></B><B>不管有多少个保镖只要一个格子即可<FONT face="Times New Roman">] </FONT></B><B>玩家:任意)</B>
<P > <FONT face="Times New Roman"> </FONT>
<P >这里的触发就变的简单的,但是我们要多个保镖,这里以建造<FONT face="Times New Roman">2</FONT>个保镖为例子,保镖<FONT face="Times New Roman">2</FONT>为<FONT face="Times New Roman">B</FONT>。
<P >新建一个触发
<P ><B>触发<FONT face="Times New Roman">7</FONT></B><B>:<FONT face="Times New Roman"> </FONT></B><B>开启<FONT face="Times New Roman"> </FONT></B><B>循环</B>
<P ><B>条件<FONT face="Times New Roman">0</FONT></B><B>:对象不可视<FONT face="Times New Roman"> </FONT></B><B>(对象:<FONT face="Times New Roman">B</FONT></B><B>)</B>
<P ><B>效果<FONT face="Times New Roman">0</FONT></B><B>:生产目标<FONT face="Times New Roman"> </FONT></B><B>(对象:城墙<FONT face="Times New Roman"> </FONT></B><B>位置:格子<FONT face="Times New Roman">[</FONT></B><B>不管有多少个保镖只要一个格子即可<FONT face="Times New Roman">] </FONT></B><B>玩家:任意)</B>
<P > <FONT face="Times New Roman"> </FONT>
<P >这样<FONT face="Times New Roman">2</FONT>个保镖设定完了,这样子表示有一个保镖已经不在视野范围内,需要进行追踪了。
<P >但因为是多个保镖,所以我们需要再建立一个触发,这个触发来判断要追踪谁:
<P ><B>触发<FONT face="Times New Roman">8</FONT></B><B>:<FONT face="Times New Roman"> </FONT></B><B>开启<FONT face="Times New Roman"> </FONT></B><B>循环</B>
<P ><B>条件<FONT face="Times New Roman">0</FONT></B><B>:区域内拥有的对象<FONT face="Times New Roman"> </FONT></B><B>(对象:城墙<FONT face="Times New Roman"> </FONT></B><B>区域:格子)</B>
<P ><B>效果<FONT face="Times New Roman">0</FONT></B><B>:激活触发<FONT face="Times New Roman"> </FONT></B><B>(触发<FONT face="Times New Roman">4</FONT></B><B>)</B>
<P ><B>效果<FONT face="Times New Roman">1</FONT></B><B>:激活触发<FONT face="Times New Roman"> </FONT></B><B>(触发<FONT face="Times New Roman">5</FONT></B><B>)</B>
<P ><B>效果<FONT face="Times New Roman">2</FONT></B><B>:激活触发<FONT face="Times New Roman"> </FONT></B><B>(触发<FONT face="Times New Roman">6</FONT></B><B>)</B>
<P > <FONT face="Times New Roman"> </FONT>
<P >大家看的懂上面的意思了吧?接下来保镖系统类的触发就全部连接起来了!然后,测试!当其中<FONT face="Times New Roman">1</FONT>个保镖不见时,就全部往主角那靠了一步吧?等等,发现问题,哈!原来保镖们不断追踪追不停,为什么呢?原因就是因为那个“格子”的城墙一直健在,所以就一直跟踪,怎么办捏?很简单,只需要在“保镖追踪对象”系列的触发<FONT face="Times New Roman">4~6</FONT>中,各添加一个效果:
<P > <FONT face="Times New Roman"> </FONT>
<P ><B>效果<FONT face="Times New Roman">3</FONT></B><B>:移除目标<FONT face="Times New Roman"> </FONT></B><B>(区域:格子)</B>
<P > <FONT face="Times New Roman"> </FONT>
<P >好了!大功告成!
<P > <FONT face="Times New Roman"> </FONT>
<P > <FONT face="Times New Roman"> </FONT>
<P >如果还有出现什么问题不懂的话<FONT face="Times New Roman">M</FONT>我或<FONT face="Times New Roman">qq;317540026</FONT>
<P ><FONT face="Times New Roman"></FONT>
这样……保镖与上敌人会自动攻击吗? 并不会,除非你故意的不去看保镖~因为你都是控制着主角~假如还有额外自己军队的话,那就没什么设置保镖的必要了对了补充下:利用 AI也可以达成,而且更方便 表跟我说看8懂 要远程的 哇,写得好长,一定很辛苦吧,喝口茶哈粗略地看了1下,大概是讲关闭\激活触发的等效替代吧?这个东西呢,我在《触发优化设计》里粗略地提到了一点。先说这个城墙系统吧。看起来是无论什么时候,只能存在1个城墙,所以在建立之前必须移掉其他城墙。像这样的情况,其实我们还可以再简化。如果换用VDML,只使用1个任务目标,就等于1个移动目标+1个建立目标的效果了。而要激活触发可以使用将指定物件带到指定区域,这个条件设置起来比区域中的物件要快。然后,再看看具体情况吧。这里其实并不需要使用这种复杂的代换系统。因为主角是事实存在的单位呀,给跟随触发加上1个玩家1捕获物件的条件就够了,不需要城墙,也不需要VDML,更不需要激活\关闭触发。至于保护触发,推荐使用三联逆向触发,“未将单位带给指定物件”即任务目标。这样保镖就不受玩家视野限制,只要距离变远就会跟上了。对哦,AI的方法是怎么一回事?说来听听吧`~~ AI方式就是利用数字AI作弊增加玩家资源,然后再判断追踪哪个,最后集体追踪其实也就是省了"<FONT size=4>保镖判断追踪对象系列"中的触发数量(本来的触发设计是根据保镖的增多而增多的)</FONT><FONT size=4>但如果用了数字AI的话</FONT><FONT size=4>触发3那类型的触发就只需要1个了~~</FONT> 对了~VDML是什么?刚才急着发了~呵呵 是I love the monkey head,11 寒~~~~听不懂.......................... 即密集 就是VMDL 所以我才问那是什么啊 晕,对..是VMDL...我一直以为是VDML....哎,无意义字符毕竟容易弄反,就像把曼查(西班牙地名)看成查曼,把桑乔看成乔桑....如故我没记错,天使以前做RH时还有过把理查弄成查理...11 还没解释什么是VMDL啊........... 玩玩僵尸杀手就知道啦 不是吧我说,“我爱猴头出僵尸”
页:
[1]