{ "AbilityName": "Ben_BlockManager", "AbilityStacking": "Unique", "AbilityMixins": [ //根据动作上对应格挡Modifier { "$type": "MoleMole.AttachStateWithModifierMixin", "ConfigList": [ //Sp防御架构 { "AnimatorStateName": "Attack_Branch_01_TracingStart", "LayerIndex": 0, "Target": "Self", "NormalizedTimeLow": 0.0, "NormalizedTimeHigh": 1.0, "ModifierNameList": [ "LowBlockModifier" ] }, { "AnimatorStateName": "Attack_Branch_01_Start", "LayerIndex": 0, "Target": "Self", "NormalizedTimeLow": 0.0, "NormalizedTimeHigh": 1.0, "ModifierNameList": [ "LowBlockModifier" ] }, { "AnimatorStateName": "Attack_Branch_01_Loop_01", "LayerIndex": 0, "Target": "Self", "NormalizedTimeLow": 0.0, "NormalizedTimeHigh": 1.0, "ModifierNameList": [ "LowBlockModifier" ] }, { "AnimatorStateName": "Attack_Branch_01_Loop_02", "LayerIndex": 0, "Target": "Self", "NormalizedTimeLow": 0.0, "NormalizedTimeHigh": 1.0, "ModifierNameList": [ "LowBlockModifier" ] }, //ExSp防御架构 { "AnimatorStateName": "Attack_Branch_02_TracingStart", "LayerIndex": 0, "Target": "Self", "NormalizedTimeLow": 0.0, "NormalizedTimeHigh": 1.0, "ModifierNameList": [ "HighBlockModifier" ] }, { "AnimatorStateName": "Attack_Branch_02_Start", "LayerIndex": 0, "Target": "Self", "NormalizedTimeLow": 0.0, "NormalizedTimeHigh": 1.0, "ModifierNameList": [ "HighBlockModifier" ] }, { "AnimatorStateName": "Attack_Branch_02_Loop_01", "LayerIndex": 0, "Target": "Self", "NormalizedTimeLow": 0.0, "NormalizedTimeHigh": 1.0, "ModifierNameList": [ "HighBlockModifier" ] }, { "AnimatorStateName": "Attack_Branch_02_Loop_02", "LayerIndex": 0, "Target": "Self", "NormalizedTimeLow": 0.0, "NormalizedTimeHigh": 1.0, "ModifierNameList": [ "HighBlockModifier" ] }, { "AnimatorStateName": "Attack_Branch_02_Loop_03", "LayerIndex": 0, "Target": "Self", "NormalizedTimeLow": 0.0, "NormalizedTimeHigh": 1.0, "ModifierNameList": [ "HighBlockModifier" ] }, { "AnimatorStateName": "Attack_Branch_02_Loop_04", "LayerIndex": 0, "Target": "Self", "NormalizedTimeLow": 0.0, "NormalizedTimeHigh": 1.0, "ModifierNameList": [ "HighBlockModifier" ] } ] }, { //完美格挡 //2022.07.11备注:100%减伤Modifier覆盖不到前8帧,此外无论是否成功都有0.25秒的格挡窗口,即使闪避也会触发(包括100%减伤与受击镜头),似乎不太合理 "$type": "MoleMole.ActwithStateFrameMixin", "ConfigList": [ { "AnimatorStateName": "Attack_Branch_01_TracingStart", "LayerIndex": 0, "Frame": 8, "ForceTriggerOnTransitionOut": false, "IsLoop": false, "ActionList": [ { "$type": "MoleMole.ApplyModifier", "ModifierName": "NormalPerfectBlockModifier", "Target": "Self" } ] }, { "AnimatorStateName": "Attack_Branch_01_Start", "LayerIndex": 0, "Frame": 8, "ForceTriggerOnTransitionOut": false, "IsLoop": false, "ActionList": [ { "$type": "MoleMole.ApplyModifier", "ModifierName": "NormalPerfectBlockModifier", "Target": "Self" } ] }, { "AnimatorStateName": "Attack_Branch_02_TracingStart", "LayerIndex": 0, "Frame": 8, "ForceTriggerOnTransitionOut": false, "IsLoop": false, "ActionList": [ //源:Ben_Talent_04 本天赋04:血量低于50%时,完美格挡判定区间增大 { "$type": "MoleMole.ApplyModifier", "ModifierName": "ExPerfectBlockModifier", "Target": "Self", "Predicates": [ { "$type": "MoleMole.ByAnimCtrlerParam", "ParamType": 2, "ParamName": "Bool_Talent_04", "CompareType": "Equal", "BoolVal": false } ] }, { "$type": "MoleMole.ApplyModifier", "ModifierName": "ExPerfectBlockModifier", "Target": "Self", "Predicates": [ { "$type": "MoleMole.ByAnd", "Target": "Self", "Predicates": [ //天赋4解锁 { "$type": "MoleMole.ByAnimCtrlerParam", "ParamType": 2, "ParamName": "Bool_Talent_04", "CompareType": "Equal", "BoolVal": true }, //血量大于50% { "$type": "MoleMole.ByPlayerPropertyValue", "Numerator": "CurHP", "Denominator": "MaxHP", "IsUsePercent": true, "CompareType": "Greater", "Val1" : 0.5, "Target" : "Self" } ] } ] }, { "$type": "MoleMole.ApplyModifier", "ModifierName": "LongPerfectBlockModifier", "Target": "Self", "Predicates": [ { "$type": "MoleMole.ByAnd", "Target": "Self", "Predicates": [ //天赋4解锁 { "$type": "MoleMole.ByAnimCtrlerParam", "ParamType": 2, "ParamName": "Bool_Talent_04", "CompareType": "Equal", "BoolVal": true }, //血量小于等于50% { "$type": "MoleMole.ByPlayerPropertyValue", "Numerator": "CurHP", "Denominator": "MaxHP", "IsUsePercent": true, "CompareType": "LessEqual", "Val1" : 0.5, "Target" : "Self" } ] } ] } ] }, { "AnimatorStateName": "Attack_Branch_02_Start", "LayerIndex": 0, "Frame": 8, "ForceTriggerOnTransitionOut": false, "IsLoop": false, "ActionList": [ //源:Ben_Talent_04 本天赋04:血量低于50%时,完美格挡判定区间增大 { "$type": "MoleMole.ApplyModifier", "ModifierName": "ExPerfectBlockModifier", "Target": "Self", "Predicates": [ { "$type": "MoleMole.ByAnimCtrlerParam", "ParamType": 2, "ParamName": "Bool_Talent_04", "CompareType": "Equal", "BoolVal": false } ] }, { "$type": "MoleMole.ApplyModifier", "ModifierName": "ExPerfectBlockModifier", "Target": "Self", "Predicates": [ { "$type": "MoleMole.ByAnd", "Target": "Self", "Predicates": [ //天赋4解锁 { "$type": "MoleMole.ByAnimCtrlerParam", "ParamType": 2, "ParamName": "Bool_Talent_04", "CompareType": "Equal", "BoolVal": true }, //血量大于50% { "$type": "MoleMole.ByPlayerPropertyValue", "Numerator": "CurHP", "Denominator": "MaxHP", "IsUsePercent": true, "CompareType": "Greater", "Val1" : 0.5, "Target" : "Self" } ] } ] }, { "$type": "MoleMole.ApplyModifier", "ModifierName": "LongPerfectBlockModifier", "Target": "Self", "Predicates": [ { "$type": "MoleMole.ByAnd", "Target": "Self", "Predicates": [ //天赋4解锁 { "$type": "MoleMole.ByAnimCtrlerParam", "ParamType": 2, "ParamName": "Bool_Talent_04", "CompareType": "Equal", "BoolVal": true }, //血量小于等于50% { "$type": "MoleMole.ByPlayerPropertyValue", "Numerator": "CurHP", "Denominator": "MaxHP", "IsUsePercent": true, "CompareType": "LessEqual", "Val1" : 0.5, "Target" : "Self" } ] } ] } ] }, //Sp进入完美格挡分支后,Trigger重置处理 //2022.07.11备注:这个可能被TransitonOffset吞掉,需要等ForceTriggerOnTransitionIn机制开发完毕后补上 //https://www.tapd.cn/51079720/prong/stories/view/1151079720001487438 { "AnimatorStateName": "Attack_Branch_01_TracingStart", "LayerIndex": 0, "Frame": 0, "ForceTriggerOnTransitionOut": false, "IsLoop": false, "ActionList": [ { "$type": "MoleMole.SetAnimCtrlerParamAction", "ParamType": 1, "ParamName": "Trigger_SpBlockAttack", "Target": "Self", "BoolVal": false } ] }, { "AnimatorStateName": "Attack_Branch_01_Start", "LayerIndex": 0, "Frame": 0, "ForceTriggerOnTransitionOut": false, "IsLoop": false, "ActionList": [ { "$type": "MoleMole.SetAnimCtrlerParamAction", "ParamType": 1, "ParamName": "Trigger_SpBlockAttack", "Target": "Self", "BoolVal": false } ] } ] } ], "Modifiers": { //Sp格挡buff "LowBlockModifier": { "ModifierStacking": "Unique", "Duration": -1, "IgnoreTimeScale": false, "OnBeingHit": [ //受到攻击进行计数 { "$type": "MoleMole.ModifyProperty", "Target": "Self", "PropertyType": "Custom", "CustomPropertyType": "BeingHitTimes", "PropertyModifyFunction": "Add", "Percentage": 0, "Amount": 1 }, //播放受击特效 { "$type": "MoleMole.FireEffect", "EffectPattern": "Eff_Ben_Attack_Branch_01_Block", "Target": "Self", "Predicates": [ { "$type": "MoleMole.ByNot", "Predicates": [ { "$type": "MoleMole.ByHasModifier", "Target": "Self", "ModifierNameList": [ "NormalPerfectBlockModifier" ] } ] } ] } ], //Tag初始化 & 改变受到的伤害 "OnAdded": [ { "$type": "MoleMole.HandleAnimatorZoneTagsAction", "Target": "Self", "AnimatorStateTags": [ "BlockFailed" ], "IsAdd": true }, { "$type": "MoleMole.ApplyModifier", "ModifierName": "ChangeDamageModifierLow", "Target": "Self" }, { "$type": "MoleMole.SetAnimCtrlerParamAction", "ParamType": 2, "ParamName": "Bool_Blocking", "Target": "Self", "BoolVal": true } ], //防御架构中受击次数统计 "ModifierMixins": [ { "$type": "MoleMole.ActionsOnPropertyChangeMixin", "PropertyActions": [ { "PropertyType": "Custom", "CustomPropertyType": "BeingHitTimes", "IsUsePercentage": false, "ValueRangeActions": [ { "Val": 1, "LowToValueActions": [ { "$type": "MoleMole.SetAnimCtrlerParamAction", "ParamType": 1, "ParamName": "Trigger_SpBlockAttack", "Target": "Self", "BoolVal": true }, { "$type": "MoleMole.RemoveModifier", "ModifierName": "LowBlockModifier", "Target": "Self" } ] } ] } ] } ], //离开防御架构时计数清0 & 移除免伤Buff "OnRemoved": [ { "$type": "MoleMole.ModifyProperty", "Target": "Self", "PropertyType": "Custom", "CustomPropertyType": "BeingHitTimes", "PropertyModifyFunction": "Replace", "Percentage": 0, "Amount": 0 }, { "$type": "MoleMole.ModifyProperty", "Target": "Self", "PropertyType": "Custom", "CustomPropertyType": "LoopTimes", "PropertyModifyFunction": "Replace", "Percentage": 0, "Amount": 0 }, { "$type": "MoleMole.RemoveModifier", "ModifierName": "ChangeDamageModifierLow", "Target": "Self" }, { "$type": "MoleMole.SetAnimCtrlerParamAction", "ParamType": 2, "ParamName": "Bool_Blocking", "Target": "Self", "BoolVal": false } ] }, //ExSp格挡buff "HighBlockModifier": { "ModifierStacking": "Unique", "Duration": -1, "IgnoreTimeScale": false, "OnBeingHit": [ //受到攻击进行计数 { "$type": "MoleMole.ModifyProperty", "Target": "Self", "PropertyType": "Custom", "CustomPropertyType": "BeingHitTimes", "PropertyModifyFunction": "Add", "Percentage": 0, "Amount": 1 }, //播放受击特效 { "$type": "MoleMole.FireEffect", "EffectPattern": "Eff_Ben_Attack_Branch_02_Block", "Target": "Self", "Predicates": [ { "$type": "MoleMole.ByNot", "Predicates": [ { "$type": "MoleMole.ByHasModifier", "Target": "Self", "ModifierNameList": [ "ExPerfectBlockModifier", "LongPerfectBlockModifier" ] } ] } ] } ], //Tag初始化 & 改变受到的伤害 & 在刚进入格挡状态0.5s内受到攻击立即发动强力格挡反击 "OnAdded": [ //2022.07.11疑问:这个Tag是用在哪里的? { "$type": "MoleMole.HandleAnimatorZoneTagsAction", "Target": "Self", "AnimatorStateTags": [ "BlockFailed" ], "IsAdd": true }, { "$type": "MoleMole.ApplyModifier", "ModifierName": "ChangeDamageModifierHigh", "Target": "Self" }, { "$type": "MoleMole.SetAnimCtrlerParamAction", "ParamType": 2, "ParamName": "Bool_Blocking", "Target": "Self", "BoolVal": true } ], //防御架构中受击次数统计 "ModifierMixins": [ { "$type": "MoleMole.ActionsOnPropertyChangeMixin", "PropertyActions": [ { "PropertyType": "Custom", "CustomPropertyType": "BeingHitTimes", "IsUsePercentage": false, "ValueRangeActions": [ { "Val": 5, "LowToValueActions": [ { "$type": "MoleMole.SetAnimCtrlerParamAction", "ParamType": 1, "ParamName": "Trigger_ExSpBlockAttack", "Target": "Self", "BoolVal": true }, { "$type": "MoleMole.RemoveModifier", "ModifierName": "HighBlockModifier", "Target": "Self" } ] } ] } ] } ], //离开防御架构时计数清0 & 移除免伤buff "OnRemoved": [ { "$type": "MoleMole.ModifyProperty", "Target": "Self", "PropertyType": "Custom", "CustomPropertyType": "BeingHitTimes", "PropertyModifyFunction": "Replace", "Percentage": 0, "Amount": 0 }, { "$type": "MoleMole.ModifyProperty", "Target": "Self", "PropertyType": "Custom", "CustomPropertyType": "LoopTimes", "PropertyModifyFunction": "Replace", "Percentage": 0, "Amount": 0 }, { "$type": "MoleMole.RemoveModifier", "ModifierName": "ChangeDamageModifierHigh", "Target": "Self" }, { "$type": "MoleMole.SetAnimCtrlerParamAction", "ParamType": 2, "ParamName": "Bool_Blocking", "Target": "Self", "BoolVal": false } ] }, //Start播放0.25内修改Tag,并检测攻击,若受到攻击则触发强力格挡反击,普通Sp完美格挡处理,主要为镜头不同 "NormalPerfectBlockModifier": { "ModifierStacking": "Refresh", "Duration": 0.25, "IgnoreTimeScale": false, "OnAdded": [ { "$type": "MoleMole.ApplyModifier", "ModifierName": "ChangeDamageModifierPerfect", "Target": "Self" }, ], "OnRemoved": [ { "$type": "MoleMole.RemoveModifier", "ModifierName": "ChangeDamageModifierPerfect", "Target": "Self" } ], "OnBeingHit": [ //格挡瞬间双方定帧,以及Stretch,Zoom { "$type": "MoleMole.CameraStretchAction", "StretchConfigKey": "Ben_Attack_PerfectBlock_CamStretch_02" }, { "$type" : "MoleMole.CameraZoomAction", "ZoomConfigKey" : "Ben_Attack_PerfectBlock_CamZoom_02" }, { "$type": "MoleMole.DamageByAttackPropertyAction", "AnimEventID": "Ben_Attack_PerfectBlock_AttackProperty_01", "Target": "Target" }, { "$type": "MoleMole.ProcessScreenEffectAction", "EffectType": "RadialBlur", "EffectKey": "Avatar_Ben_Block_Correct_RadialBlur_01" }, //完美格挡受击特效 { "$type": "MoleMole.FireEffect", "EffectPattern": "Eff_Ben_Attack_Branch_02_PerfectBlock", "Target": "Self" }, { "$type": "MoleMole.SetAnimCtrlerParamAction", "ParamType": 1, "ParamName": "Trigger_PerfectBlock", "Target": "Self", "BoolVal": true }, //源:Ben_Talent_01 本天赋01:完美格挡后,攻击者防御力下降20%,持续8s { "$type": "MoleMole.ApplyModifier", "ModifierName": "BenTalent01Modifier", "Target": "Target", "Predicates": [ { "$type": "MoleMole.ByAnimCtrlerParam", "ParamType": 2, "ParamName": "Bool_Talent_01", "CompareType": "Equal", "BoolVal": true } ] } ] }, //Start播放0.25内修改Tag,并检测攻击,若受到攻击则触发强力格挡反击 "ExPerfectBlockModifier": { "ModifierStacking": "Refresh", "Duration": 0.25, "IgnoreTimeScale": false, "OnAdded": [ { "$type": "MoleMole.ApplyModifier", "ModifierName": "ChangeDamageModifierPerfect", "Target": "Self" }, ], "OnRemoved": [ { "$type": "MoleMole.RemoveModifier", "ModifierName": "ChangeDamageModifierPerfect", "Target": "Self" } ], "OnBeingHit": [ //格挡瞬间双方定帧,以及Stretch,Zoom { "$type": "MoleMole.CameraStretchAction", "StretchConfigKey": "Ben_Attack_PerfectBlock_CamStretch_01" }, { "$type" : "MoleMole.CameraZoomAction", "ZoomConfigKey" : "Ben_Attack_PerfectBlock_CamZoom_01" }, { "$type": "MoleMole.DamageByAttackPropertyAction", "AnimEventID": "Ben_Attack_PerfectBlock_AttackProperty_01", "Target": "Target" }, { "$type": "MoleMole.ProcessScreenEffectAction", "EffectType": "RadialBlur", "EffectKey": "Avatar_Ben_Block_Correct_RadialBlur_01" }, //完美格挡受击特效 { "$type": "MoleMole.FireEffect", "EffectPattern": "Eff_Ben_Attack_Branch_02_PerfectBlock", "Target": "Self" }, { "$type": "MoleMole.SetAnimCtrlerParamAction", "ParamType": 1, "ParamName": "Trigger_PerfectBlock", "Target": "Self", "BoolVal": true }, //源:Ben_Talent_01 本天赋01:完美格挡后,攻击者防御力下降20%,持续8s { "$type": "MoleMole.ApplyModifier", "ModifierName": "BenTalent01Modifier", "Target": "Target", "Predicates": [ { "$type": "MoleMole.ByAnimCtrlerParam", "ParamType": 2, "ParamName": "Bool_Talent_01", "CompareType": "Equal", "BoolVal": true } ] } ] }, //Start播放0.5s内修改Tag,并检测攻击,若受到攻击则触发强力格挡反击 "LongPerfectBlockModifier": { "ModifierStacking": "Refresh", "Duration": 0.5, "IgnoreTimeScale": false, "OnAdded": [ { "$type": "MoleMole.ApplyModifier", "ModifierName": "ChangeDamageModifierPerfect", "Target": "Self" } ], "OnRemoved": [ { "$type": "MoleMole.RemoveModifier", "ModifierName": "ChangeDamageModifierPerfect", "Target": "Self" } ], "OnBeingHit": [ //格挡瞬间双方定帧,以及stretch,zoom { "$type": "MoleMole.CameraStretchAction", "StretchConfigKey": "Ben_Attack_PerfectBlock_CamStretch_01" }, { "$type" : "MoleMole.CameraZoomAction", "ZoomConfigKey" : "Ben_Attack_PerfectBlock_CamZoom_01" }, { "$type": "MoleMole.DamageByAttackPropertyAction", "AnimEventID": "Ben_Attack_PerfectBlock_AttackProperty_01", "Target": "Target" }, { "$type": "MoleMole.ProcessScreenEffectAction", "EffectType": "RadialBlur", "EffectKey": "Avatar_Ben_Block_Correct_RadialBlur_01" }, //完美格挡受击特效 { "$type": "MoleMole.FireEffect", "EffectPattern": "Eff_Ben_Attack_Branch_02_PerfectBlock", "Target": "Self" }, { "$type": "MoleMole.SetAnimCtrlerParamAction", "ParamType": 1, "ParamName": "Trigger_PerfectBlock", "Target": "Self", "BoolVal": true }, //源:Ben_Talent_01 本天赋01:完美格挡后,攻击者防御力下降20%,持续8s { "$type": "MoleMole.ApplyModifier", "ModifierName": "BenTalent01Modifier", "Target": "Target", "Predicates": [ { "$type": "MoleMole.ByAnimCtrlerParam", "ParamType": 2, "ParamName": "Bool_Talent_01", "CompareType": "Equal", "BoolVal": true } ] } ] }, //格挡免伤buff "ChangeDamageModifierLow": { "ModifierStacking": "Unique", "Duration": -1, "IgnoreTimeScale": false, //格挡生效期间减伤率80% "Properties": { "Actor_DamageTakeRatio": "%AS_DamageTakeRatio_BlockLow" } }, "ChangeDamageModifierHigh": { "ModifierStacking": "Unique", "Duration": -1, "IgnoreTimeScale": false, //格挡生效期间受伤为0 "Properties": { "Actor_DamageTakeRatio": "%AS_DamageTakeRatio_BlockHigh" } }, "ChangeDamageModifierPerfect": { "ModifierStacking": "Unique", "Duration": -1, "IgnoreTimeScale": false, //格挡生效期间受伤为0 "Properties": { "Actor_DamageTakeRatio": "%AS_DamageTakeRatio_BlockPerfect" } }, //源:Ben_Talent_01 本天赋01:完美格挡后,攻击者防御力下降20%,持续8s "BenTalent01Modifier": { "ModifierStacking": "Unique", "Duration": 8, "IgnoreTimeScale": false, //防御力下降20%, 但目前Actor_DefenceRatio实测无效 "Properties": { "Actor_DefenceRatio": "%AS_DefenceRatio_Talent_01" } } }, "AbilitySpecials": { //格挡伤害降低值,-1000%以确保不会被怪物的易伤效果影响 "AS_DamageTakeRatio_BlockLow": { "Value": -0.8 }, "AS_DamageTakeRatio_BlockHigh": { "Value": -10.0 }, "AS_DamageTakeRatio_BlockPerfect": { "Value": -10.0 }, "AS_DefenceRatio_Talent_01": { "Value": -0.15 } } }