【触发器】-计时器

更新时间2021/7/31558 浏览攻略
计时器,或者说延时器,用来解决当某个设计的事件触发后,需要在一定回合数后生效的问题。
TapTap
【设计依据】
1.当多个触发器的触发条件同时满足时,这些触发器都将生效。触发效果执行的先后顺序为,优先执行靠前的触发器,同一个触发器里,优先执行靠前的触发效果。触发效果的执行顺序暂时称为生效顺序。
2.触发条件中的回合开始和回合结束,回合数小的先满足条件。回合数都满足的情况下,条件满足的先后顺序如下(默认,暂时称这些顺序为触发顺序):
蓝初→蓝末→红初→红末→绿初→绿末→紫初→紫末→橙初→橙末→青初→青末→灰初→灰末。
当某种颜色的军团死亡后,有些条件会消失,最好选择无胜利条件。
3.触发效果中的开关触发器可以开启触发器或关闭触发器(包括本身)。
原理:
【循环计时器】
TapTap
TapTap
1.循环节
一定数量的不同名触发器,均为重复触发,触发条件均为同一颜色的回合初或回合末,均有一个关闭自身触发器的触发效果。另有一个触发效果为开启下一个触发器,最后一个为开启第一个触发器。这样的循环结构设计两个或多个。
还需要另外一个触发器在循环节触发前将这些循环节关闭。图片中后两个触发效果有其他用处,其他循环触发器中可能没有。这些后面还会再提。
2.组合循环
将两个(多个也行)循环节组合起来,循环的周期是两个循环数的最小公倍数。两个循环节都先第一个触发器开启,然后每回合向下一个传递,当两个循环节中指定的触发器(如图片中的1-1和2-8是事件1的指定触发器)同时开启时,才能使事件生效。而要同时达到指定触发器,需要经过一定的回合数。指定触发器的选择,用需要延时的回合数(不能大于循环周期)去除于两个循环数,得到的余数就是相应的指定触发器,整除为最后一个。证明略。例如,事件1设定的延时回合为8,除于7余1,在1循环节中为第一个触发器,整除8,在2循环节为最后的触发器。
3.补充说明
如何实现只有同时达到指定触发器时才能使事件生效,则需要下一个装置-与门开关器。且两个(或多个)循环节的循环数最好互质且相差最小,这样的循环周期最大且用到的触发器最少。循环节最多五个,三个为9、10、11的循环节就可以延时最多990回合。
【与门开关器】
TapTap
TapTap
TapTap
TapTap
TapTap
1.触发器设计
一个事件的与门开关器需要用到的触发器为图片中事件开关、开关3、开关2、开关1和事件效果(后面的1用于区分事件)。这些触发器均为重复触发(事件效果除外)。触发条件为不同的“颜色军团的回合初末”,触发顺序为事件开关、开关3、2、1和事件效果,事件开关的触发顺序最前且和循环节相同,但生效顺序要更后,事件效果的触发效果为下回合的蓝初。触发效果均为关闭下一个触发器(事件效果除外)和关闭自身触发器(事件开关和效果除外),事件效果的触发效果即为延时后的效果,通常会再加上关闭计时器的效果(后面再提)。例如,图中事件开关1……事件效果1的触发条件为橙末(同循环器)、青末、灰初、灰末、蓝初。
2.原理解释
计时器关闭时,这5个触发器均会处于关闭状态,只有同时满足事件开关开启,循环节1、2达到指定触发器三个条件时,事件效果才能生效。要生效,则事件效果必需开启,但开关1会在开启后会关闭事件效果,则必需用开关2来关闭开关1,再看循环节中指定触发器的触发效果,当循环1不满足时,事件效果会处于初始的关闭状态,当仅循环1满足时,开关1会关闭事件效果,只有当循环1、2都满足时,开关2会关闭开关1,事件效果能生效。而要使事件开关也开启时才成立,则可以在上述情况下,再对开关2的开启作限制,把开关2、开关3和事件开关看作上面的事件效果、开关1和开关2,则开关2要开启的条件为循环2满足和事件开关为开启状态。
3.延伸
对于多个循环节的情况,则需要在事件开关和开关3之间增加新的触发器,每多一个循环节,多增加两个触发器,且这些触发器的内容相同,但触发条件的触发顺序要从事件开关递减到比开关3前。
【其他触发器】
1.计时器开关
TapTap
重复触发,触发条件要先于循环节,最好晚于玩家回合,触发效果为关闭自身、所有循环节和所有事件开关。计时器开关开启后将会关闭整个计时器结构,可以在其生效前关闭。开局默认开启状态,游戏第一回合后将关闭整个计时器,在事件触发开启前不再运行。
2.计时开始
TapTap
重复触发,触发条件同计时器开关,但要比它靠前,触发效果为开启循环节中的第一个触发器并关闭其余触发器,且关闭自身。计时开始用来让循环装置开始计时,并会重置循环装置中正在进行中的计时。
3.事件触发
TapTap
用来触发事件,最好在玩家回合内触发,触发效果为开启“计时开始”和相应的“事件开关”,只有两个同时开启才能延时事件。也可以略去这个,用其他事件效果来触发这两个效果。
*这些触发器的先后触发顺序和生效顺序(斜杠后更晚生效)如下:
玩家回合(蓝)回合内触发事件→计时开始/计时器开关→循环器/事件开关→开关3→开关2→开关1→事件效果→玩家下回合。
可以通过观察图片中的触发条件和触发器位置再进行比较。
其他说明:
1.事件开关的存在是为了让事件可控且使计时器可以循环使用,让计时器可以先后对不同事件延时,但不能同时对两个或多个事件延时,所以最多只能有一个事件开关处于开启状态。如果要同时对多个事件延时,则只能另外建计时器。只关闭事件开关,循环器仍会进行延时,在规定回合前开启事件开关,事件仍然延时后生效。
2.开启计时开始后会让正在进行的延时重新开始。如果要让一个事件不断进行延时触发,则需要将相应的事件效果中的关闭事件开关和开启计时器开关去除,加上开启计时开始。
3.如果要增加事件或对事件作修改,则要增加事件开关……事件触发等六个触发器,内容相同,复制后简单修改就行,再在计时器开关中增加关闭相应的事件开关,然后根据延时回合数在循环器中相应的触发器中增加相应的效果。最后对事件的触发和效果做设计。
4.计时器不能在第一回合使用,所以事件触发和事件效果中的回合数要大于1。
5.这个计时器是多功能任意回合计时器,可以根据需求在其基础上做删减。如果回合数少,则可以不用双循环计时,用单循环,则开关3和开关2可以去除,最后对一些细节做调整。如果只是一个事件,则可以删除事件开关和开关3以及计时器开关中的一些效果,最后做调整。如果是短回合单事件,则可以只用一个循环结构做延时,最后做一些优化。
PS:这里描述的计时器只是一个整体框架,在使用过程中,必需对原理清晰,再根据自己的需求去做一些小细节上的更改。我设计过了好几个延时器,就这个是最优化的,功能多,且对手机的消耗最少,建立起来也方便。目前已经对一些简单的自定义事件做过延时测试,发现的问题都已经改正并说明了,最后也成功运行了。
评论11
只看作者
最热
TapTap
写下你的想法...
逍遥灬随风
问题一,延迟一回合需要几个触发器?问题二,也是我目前遇到的最大困难,我做的挑战测试你应该看触发器了吧,涉及各种因素都要考虑到,同解决各种因素,一个英雄已经很复杂了。多个英雄昨晚测试了一下,会发生同时触发的问题,比如一个英雄已经获得技能,那么进入挑战区不会触发挑战,这时另一个没有技能的英雄进入可以触发挑战,结果就特别混乱,哎,后来专心做出一个英雄的,在此基础上但愿能做出来多英雄交叉挑战。
User70955952
单事件的话回合数+1,你用的回合数不多,弄一个循环就行了。
逍遥灬随风
详细解释一下,一个回合+1呗,谢谢!我决得这个回合延迟应该比我目前的更加准确,毕竟伤害有20%的上下浮动以及天气影响等。
全部 4 条回复
wangyao500
wangyao500
我去,果然玩家的力量是无穷的,我还是帮你做个简单的设置吧
User70955952
主要当做是一个挑战吧!如果要弄的话,把随机发生器也加一下,我都打算下一个弄基于回合数、击杀数等多因素的伪随机器。还有,能不能把随机地图的大小改为可调的,巨图感觉还是太小了。
逍遥灬随风
老大动动手加个延迟X回合的设定,其他都简单了😁我们也不用绞尽脑汁了
User70955952
分享下设计计时器时放弃的一个设计(发现了一些问题,做了一点修改)。
TapTap
如图,这是一个与门开关器,效果和计时器里的与门开关器相同。事件1至3均为重复触发,触发条件自定(不能为灰初),事件1至3的触发效果为分别关闭条件1至3,事件3多一个开启事件效果。条件1至3,重复触发,触发条件为第一回合灰初,触发效果为开启其他两个条件以及关闭事件效果。事件效果触发条件为第一回合灰末,触发效果自定。
整体效果有点像所有条件满足的触发器,但它的触发条件更严格,要求在同一回合同时满足事件1至3才能使事件效果生效。
把事件3看成事件开关,就可以用作双循环计时器的与门开关器,事件1和2去除,触发效果分别加到循环1和2的指定触发器。
这个的原理比计时器里的更简单,但有个缺陷,就是当事件开关关闭时,条件1和2仍然需要处于开启并生效的状态下,如果需要依次延时的事件少的情况下还行,但是当需要依次延时的事件很多的情况下,一直处于开启且生效就会有很多,可能会增加对手机的消耗,所以被我舍弃了。
与门开关器除了用作一些装置的零件外,我最近还发现了一个新用途,可以用来设计类似不朽骑士的头盔效果的boss,同时设计两个或多个boss,只有同时击杀这几个boss时,才能获得胜利,一但有一个boss存活,则会重新复活其他boss。
User70955952
有需要的玩家有什么问题可以问我,我看到了就会回复。另外我上传了测试地图(100868)供学习,自己导出来就行。
逍遥灬随风
你这个对我的帮助太大了,完全可以改进我的挑战系统,完全进行回合制,我先研究一下,不懂问你。
已经到底了
5
3
11