【杂谈】混沌与秩序!三国杀技能“时机”简述
写在前面
注:时机结算各服不一,且存在上述问题导致技能实际结算顺序和本文说明并不相符,本文只说明理论情况和理想情况,对于实际BUG等问题由线上长期处理。
不知看过设计杂谈的小伙伴们是否还记得“武将技能结构”的六大要素:“类型、时机、条件、消耗、效果、代价”(要是不记得了可以复习一下往期的杂谈)。今天我们就来专门聊一聊“时机”这个要素。

技能时机
虽然“技能类型”这个要素是写在时机前面的,但大部分“普通”技能是不写“技能类型”的,而且技能类型只有三个字,所以我们通常在读技能的时候首先看到的就是技能发动时机。这个时机可以给我们一个对技能基础的印象,简单易懂的技能时机不必让我们在读懂技能方面增加额外的理解成本,而复杂的时机可能会让我们第一眼就对技能产生本能的反感。
当然,这里所说的复杂的时机一般都是掺杂了条件的,时机和条件可以分开也也可以写一起,取决于哪种写法会尽量少增加理解成本。关于条件的部分我们以后再讲,今天只讲发动时机,所以这里就举几个简单的例子说明:
第一种写法:没有掺杂条件的时机只描述时机本身,比如“出牌阶段结束时”
第二种写法:有掺杂条件的时机,写一起:“当你成为一名手牌数比你多的其他角色使用牌的唯一目标时”
第三种写法:条件和时机分开写:“当你成为其他角色使用牌的唯一目标时,若其手牌数比你多” 或者 “当你成为其他角色使用牌的目标时,若其手牌数比你多且你是唯一目标”
具体怎么写,哪一种写法好,以后在写“条件”的专栏中再加以说明。
说回时机本身。众所周知,三国杀的技能本就体系庞大,结算复杂,加上线上BUG繁多,设计师本意遍地横行,技能描述又混乱不堪,能够完全理解技能体系可谓比登天还难。为什么会发展至如今这个情况,“时机”正是罪魁祸首。复杂的结算问题都是由逐渐增加的时机衍生出来的。对比十年前的三国杀,技能效果仍然没有脱离五维图,但时机已经从50多个变成500多个了…

时间线简述
先来回顾一下之前专栏所说的时机构成。一局完整的游戏是由几条时间线组成的,每条时间线都由一些具体的时机组成。
这几条时间线分别为:游戏线、回合线、出牌线、伤害线。
他们基本上是从大到小依次包含的关系,游戏线搭建了一局游戏的开始和结束,中间的过程由一个个回合填充。一个完整的回合由各个阶段依次组成,其中主要的出牌阶段由出牌线主要驱动,而出牌线又会引发伤害线、死亡线、技能结算线或者一些其他时机。所以如果我们要梳理清楚这些时间线,就可以按照这个顺序解读。
游戏线

游戏开始前是系统准备时间,比如安排座位,读取数据等等(面杀的话就是开盒洗牌环节),可以忽略不计。
游戏准备阶段,开始分发身份牌、武将牌、起始手牌等,从这个阶段起就开始有技能生效了,比如多选将框,多起始手牌等等。
前期准备工作完成后,正式开始游戏,进入回合线之前还有一个重要的时机,就是“游戏开始时”。有很多武将在这个时机触发技能,按照座次顺序依次结算即可。之后便进入回合线,开始第一个回合。
注:线上结算中,有些地方把回合开始时的技能做进的回合线里,也就是比“回合开始前”这个时机还晚,会造成一些奇异的结算情况,但这是不正常的。
接下来在游戏进行中任何时机触发了游戏结束条件则会立即结束游戏,判定胜负。
这个游戏结束条件通常是某个角色死亡,但在PVE等其他场次中也有可能是别的条件比如牌堆用完、时间走完或是达成通关条件等等。也有可能有些技能在这个时机会改变胜负结果,但无论怎样游戏会在这个时机结束。
回合线

回合开始前:
在这个时机,回合还没有真正开始,主要用于处理跳过回合的事件,比如翻面。当一名角色处于翻面状态时,在这个时机翻回正面,然后接下来这名角色回合的所有时机都没了。
回合开始时:
到了这个时机,一名角色的回合正式开始,会按照流程把接下来的时机全部走完。在这个时机点会处理掉一些状态,比如“直到回合开始”的持续状态,到这里就会停止。如果是这个时机刚触发的技能,也需要在结束掉之前持续的状态才能继续触发。
六大阶段:
一个完整的回合又六个阶段构成,这些阶段有不同的事件需要触发,也有可能无事发生直接跳过。这六个阶段都具有“XX阶段开始前”这个时机,同“回合开始前”类似,主要是用来跳过接下来的阶段用,比如发动技能跳过,或是延时锦囊效果等,后面再介绍六个阶段时不再重复说明。
准备阶段(以前叫回合开始阶段):
通常有准备阶段开始时、准备阶段、准备阶段结束时三个时机,不过因为这个阶段并没有系统事件,所以常用的只有中间这个(毕竟字少),想在准备阶段发动技能,写出这四个字就足够了。除非有想针对准备阶段技能发动的技能,可以放在前一个或者后一个时机,不过一般这种情况更好的处理是放在“回合开始时”或者下一个阶段触发更好一些。
判定阶段:
这个阶段有一个系统事件,就是判定区有延时锦囊的情况下需要对延时锦囊依次进行判定(最后放的最先判,最先放的最后判)。所以如果想在判定之前触发技能,就放在“判定阶段开始时”这个时机(比如韩浩史涣的“勇略”),这个时机的技能通常是针对延时锦囊来做的;在判定之后触发,就在“判定阶段结束时”,这个时机的技能通常可以做延时锦囊效果的延伸或是后续的一些展开效果。
摸牌阶段:
这个阶段同样有一个系统事件,就是摸两张牌。摸牌阶段的技能要比判定阶段多很多,所以对于开始和结束的时机区分更加严格。摸牌阶段开始时这个时机触发的技能通常会影响摸牌(比如李典的“恂恂”),或是用摸牌这个系统动作作为消耗换取其他效果(比如神吕蒙的“涉猎”)。直接改变摸牌数的技能通常与摸牌这个动作放一起,不必单写一个时机(比如周瑜的“英姿”、鲁肃的“好施”)。摸牌这个时机之后,就是摸牌阶段结束时这个时机,这个时机的技能通常会和刚刚摸到的牌有关(比如辛宪英的“忠鉴”),或是在出牌阶段执行一些不影响出牌的效果,这个效果基本都不会是持续性的(比如法正的“眩惑”)。
出牌阶段:
这是游戏的主要阶段,也是一局游戏耗时最长的阶段。作为阶段本身,只有“开始时”和“结束时”这两个时机,在这两个时机中间会插入无数个“空闲时间点”他们本身不是时机,是玩家用来思考出牌的一段时间。当使用牌或发动技能时,就会产生新的时机。
出牌阶段开始时,这个时机的技能通常用来触发一些影响出牌效果或持续整个阶段的技能(比如郭图逢纪的“急功”),也可以作为一种发起性质的典故体现(之前的专栏有提到过)。
出牌阶段结束时,这个时机通常是对出牌阶段所作事情的一个“总结”,所以这个时机触发的技能很多都带有条件,在出牌阶段满足某些条件后才能在这个时机触发技能(比如刘辟的“踞营”,也有不带条件的比如董允的“秉正”),或者是前序技能触发的后续效果在此结算,这类技能一定会带有条件或成为代价。
在出牌的过程中引发的时机我们下一个“出牌线”再具体说明,先把回合线继续说完。当玩家在出牌阶段没事情可做之后,就进入了下一个阶段。
弃牌阶段:
弃牌阶段触发的系统事件需要检测角色状态,满足“手牌超出上限”的条件才会触发。“无手牌上限”或是“某些牌不计上限”的效果属于状态,是帮助角色跳过检测的一种手段,所以虽然有触发时机,实际也不算有。
弃牌阶段开始时,这个时机触发的技能一般是影响角色手牌上限的,这个和摸牌阶段有些类似。当然也有很多技能不影响手牌上限,放在这个时机主要是为了在还没有弃牌之前、出牌阶段可能被跳过之后,找一个时机用“可能会弃掉”的牌当做一些消耗,这也是变相减少消耗的一种体现(比如大小乔的“星舞”、淳于琼的“粮营”)。
弃牌,这个时机是玩家可操作的,选择多余的牌弃掉,这里需要注意的是弃牌是一次性的,即使分开选,在结算弃牌的时候也是统一结算进入弃牌堆。这里可能会引发一些奇异技能的结算。
弃牌阶段结束时,到达这个时机说明角色的手牌通过了手牌上限的检测,手牌数“比弃牌阶段开始时少”。所以在这个时机触发的技能,和手牌上限基本无关了,用于触发技能时消耗的牌看上去也比弃牌阶段开始时要珍贵一些。不过,其实这种技能很少,因为这类技能会放在下一个阶段去触发,不会放在这里。这里触发的技能通常和弃牌阶段的弃牌挂钩,比如弃牌达成某些数量或是种类等条件(比如神周瑜的“琴音”、王桃的技能“摇佩”)。
结束阶段:
这个阶段是回合六大阶段的最后一个阶段,和准备阶段类似,没有系统事件,但仍然很敬业的存在结束阶段开始时、结束阶段、结束阶段结束时三个时机。由于这个阶段基本不会被跳过,所以这个阶段触发的技能只需要满足条件即可。“结束阶段结束时”这种描述比较拗口,所以技能一般不放在这里触发,只放在前两个时机,而前两个时机其实也没有太大区别,可能会造成一些体力流失或是其他角色触发的技能,建议放在开始时,而自己触发没什么影响的放在结束阶段。
回合结束时:
这个时机不在六大阶段里,而且看似一个时机,比较简单,实际上这里是结算最复杂的两个时机之一(另一个就是回合开始时)。起初这个时机是用来清理一些“直到回合结束”的状态使用的,但后来随着技能复杂程度的提高,技能优先级逐渐层层区分后,这里的时机也拆的越来越多(但描述没变,玩家看不出来)。我们接下来就给他们简单起个名字(非官方用语)
回合结束触发技能后续效果时:这个时机主要结算技能后续的代价性质的效果,如果产生额外结算,回合内的状态大概率还是生效的(比如张让的“滔乱”)
回合结束清算时:这个时机主要清理“直到回合结束”的状态,清理之后再触发的技能不再享受回合内效果,但此时仍然属于当前回合角色的回合里,所以用回合内和回合外区分的技能此时还可以明确划分。
回合结束其他人触发技能:有很多武将的技能在其他角色的回合结束时触发,就放在这个时机点,此时回合内状态已经清算完毕。(程序在这里可能会有结算不统一的地方)
回合结束后:
在这个时机点,当前回合人的回合已经结束,下一个角色的回合还没开始,这个时机的技能通常和额外回合有关,触发额外回合的技能则优先进入额外回合角色的回合。这个时机结算完毕后就进入了下一个角色的回合开始前,就回到了回合线的开始。
出牌线:

使用牌时:这个时机也是技能触发的“重灾区”。首先在使用牌时这个时机之前,玩家在选择使用哪张手牌时,就已经有技能开始作祟了,通常是一些加减目标或是不能指目标的技能,这类技能虽然是在后续的时机点明确触发,但选择的目标会受到“限制”。
选择好目标,卡牌离手,进入使用牌时这个时机,执行在此时机触发的技能效果,这里的效果通常不会针对目标也不会和目标加减挂钩,而是伴随卡牌本身或衍生的效果(比如严畯的“观潮”)。
这个时机在很多技能里也会由特定的牌代替,这类技能可以看做是加入了一些条件,比如使用【杀】时,使用点数为5的牌时,使用字数小于3的牌时等等。
这里还是应该多说一句,在使用牌时这个时机之前其实还有时机,就是“需要使用XX牌时”,这个时机严格来说也不算一个时机,而是伴生时机,毕竟就算没有技能,该用到什么牌的时候也需要玩家去选择是否使用。
指定目标时:这个时机主要用于主动方加减或改变目标(也就是进攻方),因此这个时机指定的目标不一定就是最终卡牌结算的目标。
成为目标时:这个时机主要用于被动方加减或改变目标(也就是防守方),和上个目标同理。
指定目标后:在这个时机下,基本已经确定了目标,不会在改变(但仍然有可能无效),这个时机触发的技能主要是主动方针对目标发动的技能效果。
成为目标后:同上,但主要是由被动方触发技能效果。
结算效果:这不是一个时机名,而是一个过程,结算卡牌效果的过程。在这个过程里仍然会产生很多时机。
生效前:卡牌对目标的效果通常是在这里决定是否有效,也是【无懈可击】的使用时机。也有部分技能在指定/成为目标后这个时机产生效果另卡牌无效,如果有的话就跳过后续结算的时机进入最后一个时机。
生效时:确定卡牌已经生效,此时准备结算卡牌效果但还没有真正结算(结算一张卡牌真的好麻烦…千呼万唤要结算,犹抱琵琶又打断),这个时机可能让防守方做一次最后的挣扎(比如界陆逊的“谦逊”)。
接下来是生效过程中的各种结算,可能会产生各种时机,其中最主要的是产生伤害结算出现的伤害线,同样的我们在整理完出牌线后再进行说明。
生效后:这个时机通常不会有技能,而作为条件出现在下一个时机的结算里。
结算后:出牌线的最后一个时机(其实不是,还有牌进弃牌堆,不过有可能没进去,也有可能是虚拟牌,不管那么多了),不管卡牌是否生效都会有这个时机,只不过生效且结算后是更常见的做法。
伤害线:

说起来这张图可有年头了,大概是2009年左右整理规则的时候所使用的伤害流程图。这个图里的时机远没有现在这么多,正好也验证了开始说的,后续丰富了武将技能,增加了太多太多的技能发动时机。
造成伤害前:这个时机目前没有哪个技能在描述里用到,但有个别技能是在这个时机触发的(比如春哥的“绝情”),可能会改变伤害事件的走向,这个有点像跳过回合或者阶段的时机点。
造成伤害时:确定伤害事件触发后的第一个时机,这个时机主要是造成伤害的一方触发技能。这是一个可以细分的时机点,已经扩充了多个时机①②③……理想情况下,先在①的时机点触发效果中涉及防止伤害的技能,如果伤害防止了就停止伤害事件,然后在②③④等时机点触发加减伤害的技能(以前有段时间是先触发加后触发减的结算,后来又按照统一结算规则改了),在此过程中,伤害不会减至负数,但减至0也会被认定为防止伤害,停止伤害事件的后续结算。如果伤害继续结算,在这个时机下的最后一个时机点还会检测伤害数值,再触发与伤害数值有关的技能(比如陆凯的“忠壮”)。
受到伤害时:这个时机主要是受到伤害的一方触发技能。同上一个时机一样,也可以细分成①②③……并且结算方式也类似,先触发涉及防止伤害的技能,再触发伤害加减的结算,减至0则伤害防止。如果伤害继续结算,最后一个时机点检测伤害数值触发相关技能(比如白银狮子)。
扣减体力:扣减体力可能有两种情况,造成伤害和体力流失。造成伤害是伤害事件正常结算值此的时机,还会继续结算伤害事件的后续时机,而体力流失不触发伤害事件,只会有扣减体力这个时机,没有伤害事件的其他时机,但同样可能触发濒死事件。如果希望一个技能不管用什么方式减少了体力,则会使用这个描述(比如周泰的“不屈”),也有一些技能的检测时机放在这里,方便后续的结算。
濒死事件
如果体力扣减至0或更少,则触发濒死事件。在濒死事件里同样有多个时机一次执行
进入濒死状态时:在这个时机里,还没有开始“求桃”,所以这个时机的技能效果虽然主要也是回复体力等,但可能存在失败的情况(比如吴国太的“补益”)。
处于濒死状态时:这个时机是“求桃”的时机,也就是从当前会和人开始每人选择是否对濒死的角色使用桃,所以轮到拥有技能的角色选择是否使用桃时才会触发。这个时机触发的技能效果通常和用桃挂钩,当然也会有很多直接回复体力的技能。在这个时机触发的“回血”技能通常不加失败的概率,有失败概率的建议放在“进入时”。
脱离濒死状态时:处于濒死状态的角色体力回复至1以上时脱离濒死状态。这个时机点通常不会触发一些奇怪的技能,只安排一些没什么影响的小效果(比如神赵云的“绝境”),毕竟此时伤害事件还没有结束。
如果濒死没有救回,则进入角色死亡事件的结算,死亡同样有很多时机,其中包括了一些系统操作比如将死亡角色的牌弃置到弃牌堆、亮出身份牌、结算击杀奖惩等。如果经历了死亡事件的结算,则伤害事件可能还会有“造成伤害方”的技能结算,但受到伤害方的结算不再有了,毕竟人已经噶了。
造成伤害后:造成伤害的一方触发技能的时机,此时伤害已经造成了,可以根据伤害的属性
点数等特征进行一些条件判断或后续效果的执行。
受到伤害后:受到伤害的一方触发技能的时机,也就是我们常说的“卖血将”触发技能的时机。
至此伤害事件结算完成,虽然看上去写了不少但需要注意的是这仍然只是一个“简易”的流程,实际效果要复杂的多。除了同时机不同顺序的结算以外,很多技能的检测时机和发动时机也是分开的,也会造成实际效果和描述的“错位”(比如魏延的“狂骨”)。
其他流程

除了上述的四条时间线,还有很多时机点在游戏中会提及,这些时机点也都是又技能“创造”出来的,当然也不止图里的这些。这里就不一一举例了,就算举也并不完整。
出现在技能描述里的时机基本就是上述这些了,如何应用,具体把技能放在哪个时机点触发,就要根据实际情况(或者以往的专栏)来设计了,这里不再做具体展开,只要能帮助大家梳理时间线的流程,有个清晰的印象,就达到目的了。
其他注意事项:
在理清楚时机流程之后,有些重要的问题其实并没有解决,还有一些关键点需要注意。这也就是所谓的“系统设定”。
1.同一时机触发多个同一名角色所拥有的技能时,按照武将技能>游戏牌技能>游戏规则的顺序依次结算;
2.同一时机触发多个不同角色所拥有的技能时,按照从当前回合人开始的逆时针顺序依次结算;
3.不同时机触发的技能在同一个时机结算效果时,按照效果触发顺序>逆时针结算顺序依次结算;
4.在濒死事件结算过程中,可能会触发一些武将技能的时机,但濒死事件是一个“封闭性质”的事件,所以可能会屏蔽大部分技能的发动时机,避免“双濒死”等特殊情况出现。
应该不止这些,其他有待补充,欢迎讨论。
总结
当我们理清楚大致的流程和时机以后,虽然不需要死记硬背,但印象很重要,在设计技能的过程中有对时机的印象可以帮助我们规避一些技能和技能之前产生的不好解决的问题,毕竟不管做什么都是越早发现问题越好。
最后还是再次强调,上述理论仅是“理论情况”和“理想情况”实际效果可能和此篇文章有出入,和不同服务器不同结算以及程序和设计师思想不一致或是BUG的问题导致。但即便如此,也基本可以应对大部分情况了。
实在抱歉专栏拖了这么久才发,接下来大家可以期待本月开始的新一期旭说啦。