Kratos:說明書/計數器及觸發器
特性&注意事項
- 真正的計數器(以及計數器觸發器)。計數器和計數觸發器分開擺放,具有非常高的靈活性。計數器是AE的一種效果器。一個AE上寫了Counter.Mark後,在單位獲得這個AE時,單位也就得到計數器。這個AE被移除時,計數器也移除。
- 用Counter初始化計數器,CountTrigger(注意不是Count
ERTrigger,沒有ER)進行計數器變更。根據初始化Num和計數器模式,可以直接實現護盾(第二血條),並擁有極其多的擴展效果,並可以接入AE系統。 - 附著計數器(以及觸發器)的單位知道自己身上計數器的來源、觸發器的來源,原生支持3個對象的互動,比復仇不知高到哪裡去了。
- 可以拿來做許許多多奇奇怪怪的效果。比如用計數器模擬AMMO或MP,武器設為無傷害無視覺效果。在攻擊時,給自己反饋計數器觸發器,判定計數器數值是否位於可釋放技能或開火的區間,如是,將計數器減少一次釋放或攻擊的COST值,觸發自動武器,攻擊同目標或貼上其他AE。回復則是貼上一個無條件觸發的觸發器即可。 以後或許會將自然衰減作為計數器的固有特性。
計數並轉換的實現方法:初始化計數器後,每有一些操作,如SHIELD模式下受擊,或Feedback給自己貼CountTrigger變更計數器,將計數器減少,記錄結束後,在0-初始值的觸發條件下內無限次執行CountTrigger把計數器補回去,同時每觸發一次Trigger就觸發一次額外效果,比如加血,發射武器之類的。
單位獲得復仇,每次受擊時,使用Stack反向器令單位獲得來自攻擊者的持續性無限觸發Stack。經過初始延遲後,使用計數觸發器將計數器補滿,每次補充,令單位獲得持續性Stack檢測的信號AE,每觸發一次激發一次自動武器

計數器
Counter.Mark=(Special)
計數器組名稱,默認Counter1
Counter.Num=(Int or Special)
賦予時的計數值,默認0
Int:指定的數值
HP:被下個標籤指定的目標當前血量
MAXHP:被下個標籤指定的目標最大血量
Counter.NumFromSource=(boolean)
當Num使用特殊值時,優先讀取來源,默認no
Counter.Min=(Int)
計數器的最小值,默認0
Counter.Max=(Int)
計數器的最大值,-1表示不限制,默認-1
Counter.Action=(Special)
計數器的操作,如有同組計數器,後貼的計數器做運算對象。默認ADD
ADD:在原Counter當前值的基礎上增加Counter.Num指定的值
INIT:調整原Counter當前值上設置為Counter.Num指定的值
SUB:在原Counter當前值的基礎上減少Counter.Num指定的值
MUL:在原Counter當前值的基礎上乘以Counter.Num指定的值
Counter.AttachIfNotFound=(boolean)
此Counter是否只能在目標身上存在有同組計數器時,才能被附加並作為運算對象。
Counter.Action=ADD/INIT:作為新的計數器賦予
Counter.Action=SUB/MUL:僅為計算,不會賦予,視作無效AE
CounterX.RemoveWhenNum=(Int),(Int)
計數器值在該範圍內時移除該計數器,最大值大於0且大於等於最小值時有效,默認0,-1 X可取0-127
注意移除的只是計數器,承載計數器的AE不會消失。
自動調整計數模式
Counter.Reaction=(Special)
響應計數模式,默認NORMAL
NORMAL:常規計數器算法,只受CountTrigger影響
HITPOINT:自動記錄受到的最終傷害,並按下列標籤額外設置扣除相應數值。
SHIELD:同HITPOINT,但是計數器存在時本體不會受傷,直到計數器消失。就是護盾。計數器數值就是護盾的血量。
Counter.Reaction.Limit=(boolean)
最高可保護的傷害值,超過的傷害不參與轉換,默認-1
Counter.Reaction.Protect=(boolean)
使用傷害的比例,默認100%
Shield模式下剩餘部分不會被抵扣
Counter.Reaction.Percent=(boolean)
使用的傷害數值轉換為計數的比例,優先扣除計數,默認100%
Shield模式下若計數不足抵扣,剩餘傷害會照常反饋
例:
Counter.Num=300
Counter.Reaction.Protect=30%
Counter.Reaction.Percent=50%
HITPOINT:單位受到100傷害,Counter減去100*30%*50%=15後變成285
SHIELD:單位受到100*(1-30%)=70傷害,Counter減去100*30%*50%=15後變成285
彈頭響應相關設置
Counter.Reaction.OnlyReactionWarheads=(boolean)
只對這些彈頭進行響應,默認none
Counter.Reaction.NotReactionWarheads=(boolean)
不對這些彈頭進行響應,默認none
計數觸發器
與計數器分離的單獨觸發器,在執行時檢查監視的計數器值,滿足條件時觸發效果
CountTrigger.Watch=(boolean)
待監視的計數器組名稱,默認None
觸發條件,X=[0-127],觸發可有多個,按ID順序執行
CountTriggerX.Range=(Int),(Int)
監視計數器在[0, 100]時觸發,最大值小於最小值時表示無條件觸發,默認0,-1
CountTriggerX.TriggeredTimes=(Int)
觸發多少次後移除自身,默認-1
僅對X值對應的觸發器相關標籤有效
例如CountTrigger1.TriggeredTimes=1,那麼CountTrigger1會在觸發一次後移除,而不影響CountTrigger2,CountTrigger3等等
操作計數
操作計數會影響後續執行的觸發器檢查條件,但不影響本次觸發執行
以下X=[0-127]
CountTriggerX.Num=(Int)
操作的計數,可以用特殊值HP、MAXHP讀取當前單位的血量作為計數,對於拋射體,HP即拋射體的威力,默認0
CountTriggerX.NumFrom=(Special)
當Num使用特殊值時,ME\SOURCE\COUNTERSOURCE,自身、自身來源、計數器來源,默認ME
CountTriggerX.Action=(Special)
計數器的操作,ADD=增加,INIT=設置,SUB=減少,MUL=倍數,默認ADD
CountTriggerX.ResetNum=(boolean)
重置計數器為計數器初始值Num,默認no
CountTriggerX.RemoveCounter=(boolean)
移除計數器,若存在多個觸發器,後續的觸發將停止執行,默認no
賦予效果
CountTriggerX.AttachEffects=(List of AttachEffectTypes)
觸發後賦予的新AE,默認AE1,AE2
CountTriggerX.AttachChances=(List of Precent)
附加效果的成功率,默認100%,100%
CountTriggerX.AttachTo=(Special)
觸發後向誰附加AE,ME\SOURCE\COUNTERSOURCE,默認ME
CountTriggerX.AttachFrom=(Special)
附加效果的來源設置,ME\SOURCE\COUNTERSOURCE,默認SOURCE
CountTriggerX.RemoveEffects=(List of Precent)
觸發後移除的AE,默認AE1,AE2
CountTriggerX.RemoveEffectsLevel=(List of Int)
觸發後移除的AE對應的層數,默認0,0
CountTriggerX.RemoveEffectsWithMarks=(Special)
觸發後移除帶這些標記的AE,默認none
CountTriggerX.RemoveEffectsSkipNext=(boolean)
觸發後移除的AE將跳過Next,默認no
CountTriggerX.RemoveWho=(Special)
觸發後移除誰身上的AE,ME\SOURCE\COUNTERSOURCE,默認ME
[WarheadType]
IgnoreCounterReaction=(Boolean)
不觸發計數器響應彈頭,默認no