Grasscutter_Resources/Resources/BinOutput/Ability/Temp/GadgetAbilities/ConfigAbility_Scene_TowerDefenceV2.json
2022-04-23 07:55:31 +05:30

15785 lines
504 KiB
JSON

[
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Gear_TowerDefenceV2_Electric",
"abilitySpecials": {
"Electric_Attack_Range": {
"type": "float",
"dynamicValue": 15.0
}
},
"modifiers": {
"ModelController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.TriggerSetRenderersEnable",
"doOffStage": true,
"renderNames": [
"Property_Ani_Prop_Tower"
]
},
{
"$type": "MoleMole.Config.TriggerSetRenderersEnable",
"doOffStage": true,
"renderNames": [
"Property_Ani_Prop_TowerFire_02_Lod0"
],
"setEnable": true
}
]
},
"TowerAttackController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.TDPlayMixinV2",
"towerType": "Electric",
"baseCD": 4.0,
"baseAttackRange": 15.0,
"onFireActions": [
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerElectric_Fire"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "ShootPoint"
}
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "SelfAttackTarget",
"modifierName": "ElectricAttack"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"topLimit": 1,
"sortType": "Nearest",
"shapeName": "CircleR30",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_ExtraTargets",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByTargetPositionToSelfPosition",
"logic": "LesserOrEqual",
"value": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Electric_Attack_Range"
}
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "GV_BeAttacked",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"compareType": "NoneOrEqual"
}
],
"modifierName": "ElectricAttack"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"topLimit": 2,
"sortType": "Nearest",
"shapeName": "CircleR30",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_ExtraTargets",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
},
"compareType": "MoreThanAndEqual"
},
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByTargetPositionToSelfPosition",
"logic": "LesserOrEqual",
"value": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Electric_Attack_Range"
}
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "GV_BeAttacked",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"compareType": "NoneOrEqual"
}
],
"modifierName": "ElectricAttack"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"sortType": "Nearest",
"shapeName": "CircleR30",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
}
],
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "GV_BeAttacked",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_FurySwipe",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "FurySwipeLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_FurySwipe",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "FurySwipeLv2"
},
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_UpgradeNormalAttack",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"compareType": "MoreThanAndEqual"
}
],
"successActions": [
{
"$type": "MoleMole.Config.ApplyModifier",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"sortType": "Nearest",
"shapeName": "CircleR30",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByTargetPositionToSelfPosition",
"logic": "LesserOrEqual",
"value": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Electric_Attack_Range"
}
}
],
"modifierName": "TargetCounter"
}
]
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_UpgradeNormalAttack",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "NUM_TARGETS",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "UNIQUE_PowerAttackByOneLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_UpgradeNormalAttack",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_ExtraTargets",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"modifierName": "UNIQUE_PowerAttackByOneLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_UpgradeNormalAttack",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "NUM_TARGETS",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "UNIQUE_PowerAttackByOneLv2"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_UpgradeNormalAttack",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_ExtraTargets",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"modifierName": "UNIQUE_PowerAttackByOneLv2"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "ResetTargetNums"
}
],
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "ShootPoint"
}
}
]
},
"UpgradeController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_ElectricImpulse",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"ElectricImpulseLv1",
"ElectricImpulseLv2"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_UpgradeNormalAttack",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"PowerAttackLv1",
"PowerAttackLv2"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_ExtraThunder",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"ExtraThunder"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_UpgradeElectricRecation",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"UpgradeShockLv1",
"UpgradeShockLv2"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_UpgradeElectricRecation",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"UpgradeExplodeLv1",
"UpgradeExplodeLv2"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_ReducePhysicalResistance",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"ReducePhysicalResistanceBySConductLv1",
"ReducePhysicalResistanceBySConductLv2"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_RangeLevel",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"AttackRangeLv1",
"AttackRangeLv2"
]
}
]
},
"ElectricAttack": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.3
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "GV_BeAttacked",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_UpgradeNormalAttack",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerElectric_01"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"attachPointName": "ShootPoint",
"attachPointTargetType": "Applier"
}
}
],
"failActions": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerElectric_01_Up"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"attachPointName": "ShootPoint",
"attachPointTargetType": "Applier"
}
}
]
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "Caster",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackBox",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.2
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"attachPointName": "RootNode",
"attachPointTargetType": "Self"
},
"size": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.1
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.1
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.6
}
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.8
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Electric",
"elementRank": 1.5,
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"strikeType": "Default",
"enBreak": 10.0
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerElectric_01_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
},
{
"$type": "MoleMole.Config.DamageByAttackValue",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByEquipParts",
"equipPartNames": [
"equip01",
"equip02"
]
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.8
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Electric",
"elementRank": 1.5,
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"strikeType": "Default",
"enBreak": 10.0
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerElectric_01_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
{
"$type": "MoleMole.Config.AddGlobalValue",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_Confine",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"compareType": "MoreThan"
}
],
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "GV_ConfineTimes",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "GV_ConfineTimes",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 7.0
},
"compareType": "MoreThan"
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_Confine",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "UNIQUE_ConfineSelf"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "GV_ConfineTimes",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 3.0
},
"compareType": "MoreThan"
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_Confine",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "UNIQUE_ConfineSelf"
}
]
},
"ExtraThunder": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 8.0
},
"onAttackLanded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByAttackTags",
"attackTags": [
"ExtraThunderAttack"
]
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_ExtraThunder",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "UpgradgeElemMasteryByThunderLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByAttackTags",
"attackTags": [
"ExtraThunderAttack"
]
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_ExtraThunder",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "UpgradgeElemMasteryByThunderLv2"
}
],
"onThinkInterval": [
{
"$type": "MoleMole.Config.ApplyModifier",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"topLimit": 1,
"sortType": "Nearest",
"shapeName": "CircleR15",
"campTargetType": "Enemy",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
}
],
"modifierName": "Thunder_Fall_Target"
},
{
"$type": "MoleMole.Config.FireEffect",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "Can_Trigger_Thunder",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerElectric_04"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByGlobalValue",
"positionKey": "Thunder_Pos",
"directionKey": ""
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "Can_Trigger_Thunder",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByGlobalValue",
"positionKey": "Thunder_Pos",
"directionKey": ""
},
"radius": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.5
}
},
"attackInfo": {
"attackTag": "ExtraThunderAttack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Electric",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"strikeType": "Default"
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerElectric_01_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "Can_Trigger_Thunder",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
]
},
"Thunder_Fall_Target": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.SetGlobalPos",
"target": "Applier",
"key": "Thunder_Pos",
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf"
}
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"target": "Applier",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "Can_Trigger_Thunder",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
]
},
"FurySwipeLv1": {
"stacking": "MultipleAllRefresh",
"stackingOption": {
"abilitySpecialName": "",
"maxModifierNumForMultipleType": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
}
},
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AttackRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.05
}
}
},
"FurySwipeLv2": {
"stacking": "MultipleAllRefresh",
"stackingOption": {
"abilitySpecialName": "",
"maxModifierNumForMultipleType": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
}
},
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AttackRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.1
}
},
"onAdded": [
{
"$type": "MoleMole.Config.RemoveModifier",
"modifierName": "FurySwipeLv1"
}
]
},
"UNIQUE_ConfineSelf": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Animator_MoveSpeedRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -1.0
}
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerTrap_01_Confined"
},
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf",
"onGround": true
}
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "GV_ConfineTimes",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
]
},
"ElectricImpulseLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerElectric_Halo_01_Loop"
}
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerElectric_Halo_01_Once"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -1.4
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"attachPointName": "ShootPoint"
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "ShootPoint"
},
"radius": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 12.0
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Electric",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 200.0
},
"ignoreAttackerProperty": true,
"strikeType": "Default"
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV3",
"overrideHitImpulse": {
"hitLevel": "Heavy",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 800.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
],
"onThinkInterval": [
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerElectric_Halo_01_Once"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -1.4
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"attachPointName": "ShootPoint"
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "ShootPoint"
},
"radius": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 12.0
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Electric",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 200.0
},
"ignoreAttackerProperty": true,
"strikeType": "Default"
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV3",
"overrideHitImpulse": {
"hitLevel": "Heavy",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 800.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
]
},
"ElectricImpulseLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 10.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerElectric_Halo_01_Loop"
}
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerElectric_Halo_01_Once"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -1.4
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"attachPointName": "ShootPoint"
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "ShootPoint"
},
"radius": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 12.0
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Electric",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 200.0
},
"ignoreAttackerProperty": true,
"strikeType": "Default"
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV3",
"overrideHitImpulse": {
"hitLevel": "Heavy",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 800.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
],
"onThinkInterval": [
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerElectric_Halo_01_Once"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -1.4
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"attachPointName": "ShootPoint"
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "ShootPoint"
},
"radius": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 12.0
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Electric",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 200.0
},
"ignoreAttackerProperty": true,
"strikeType": "Default"
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV3",
"overrideHitImpulse": {
"hitLevel": "Heavy",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 800.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
]
},
"PowerAttackLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AttackRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
},
"PowerAttackLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AttackRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
},
"UNIQUE_PowerAttackByOneLv1": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AddHurtDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
}
}
},
"UNIQUE_PowerAttackByOneLv2": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AddHurtDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 3.0
}
}
},
"TargetCounter": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AddGlobalValue",
"target": "Applier",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "NUM_TARGETS",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
]
},
"UpgradeShockLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemReactElectricDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
},
"UpgradeShockLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemReactElectricDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
},
"UpgradeExplodeLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemReactExplodeDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
},
"UpgradeExplodeLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemReactExplodeDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
},
"AttackRangeLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.SetOverrideMapValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 23.0
},
"overrideMapKey": "Electric_Attack_Range"
}
]
},
"AttackRangeLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.SetOverrideMapValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 31.0
},
"overrideMapKey": "Electric_Attack_Range"
}
]
},
"UpgradgeElemMasteryByThunderLv1": {
"stacking": "MultipleAllRefresh",
"stackingOption": {
"abilitySpecialName": "",
"maxModifierNumForMultipleType": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 10.0
}
},
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 10.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemMasteryDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 125.0
}
}
},
"UpgradgeElemMasteryByThunderLv2": {
"stacking": "MultipleAllRefresh",
"stackingOption": {
"abilitySpecialName": "",
"maxModifierNumForMultipleType": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 10.0
}
},
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 10.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemMasteryDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 250.0
}
}
},
"ReducePhysicalResistanceBySConductLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.DoActionByElementReactionMixin",
"entityTypes": [
"Monster"
],
"reactionTypes": [
"Superconductor"
],
"actions": [
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"modifierName": "UNIQUE_ReducePhysicResistenceLv1"
}
]
}
]
},
"ReducePhysicalResistanceBySConductLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.DoActionByElementReactionMixin",
"entityTypes": [
"Monster"
],
"reactionTypes": [
"Superconductor"
],
"actions": [
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"modifierName": "UNIQUE_ReducePhysicResistenceLv2"
}
]
}
]
},
"UNIQUE_ReducePhysicResistenceLv1": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 12.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_PhysicalSubHurtDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.4
}
}
},
"UNIQUE_ReducePhysicResistenceLv2": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 12.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_PhysicalSubHurtDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.8
}
},
"onAdded": [
{
"$type": "MoleMole.Config.RemoveModifier",
"modifierName": "UNIQUE_ReducePhysicResistenceLv1"
}
]
},
"ResetTargetNums": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.3
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onRemoved": [
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "NUM_TARGETS",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
]
}
},
"onAdded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "ModelController"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "TowerAttackController"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "UpgradeController"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "Can_Trigger_Thunder",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "IS_TOWER",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "NUM_TARGETS",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Gear_TowerDefenceV2_Physics",
"abilitySpecials": {
"None_Attack_Range": {
"type": "float",
"dynamicValue": 24.0
}
},
"modifiers": {
"ModelController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.TriggerSetRenderersEnable",
"doOffStage": true,
"renderNames": [
"Property_Ani_Prop_TowerPhysics_02_Lod0"
],
"setEnable": true
}
]
},
"UpgradeController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_WantedSign",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"WantedSignLv1",
"WantedSignLv2"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_RangeLevel",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"AttackRangeLv1",
"AttackRangeLv2"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_EnergyBallAttack",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"NormalBulletController",
"EnergyBulletController"
]
}
]
},
"WantedSignLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
},
"onThinkInterval": [
{
"$type": "MoleMole.Config.ApplyModifier",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"topLimit": 1,
"sortType": "Random",
"shapeName": "CircleR40",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByTargetPositionToSelfPosition",
"logic": "LesserOrEqual",
"value": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "None_Attack_Range"
}
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "GV_BeMarked",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"compareType": "NoneOrEqual"
}
],
"modifierName": "UNIQUE_ReducePhysicResistenceByMarkLv1"
}
]
},
"WantedSignLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
},
"onThinkInterval": [
{
"$type": "MoleMole.Config.ApplyModifier",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"topLimit": 1,
"sortType": "Random",
"shapeName": "CircleR40",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByTargetPositionToSelfPosition",
"logic": "LesserOrEqual",
"value": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "None_Attack_Range"
}
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "GV_BeMarked",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"compareType": "NoneOrEqual"
}
],
"modifierName": "UNIQUE_ReducePhysicResistenceByMarkLv2"
}
]
},
"UNIQUE_ReducePhysicResistenceByMarkLv1": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 15.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_SubHurtDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.75
}
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerPhysics_03_Mark"
}
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 25.0
},
"key": "GV_ExtraMarkBuildPoint",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "GV_BeMarked",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"onRemoved": [
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "GV_ExtraMarkBuildPoint",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "GV_BeMarked",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
]
},
"UNIQUE_ReducePhysicResistenceByMarkLv2": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 15.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_SubHurtDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -1.5
}
},
"onAdded": [
{
"$type": "MoleMole.Config.RemoveModifier",
"modifierName": "UNIQUE_ReducePhysicResistenceByMarkLv1"
},
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerPhysics_03_Mark"
}
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"key": "GV_ExtraMarkBuildPoint",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "GV_BeMarked",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"onRemoved": [
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "GV_ExtraMarkBuildPoint",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "GV_BeMarked",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
]
},
"NormalBulletController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.TDPlayMixinV2",
"baseCD": 2.0,
"baseAttackRange": 24.0,
"bulletID": 70350289,
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "ShootPoint"
},
"partRootNames": [
"ShootControl",
"DirControl"
]
}
]
},
"EnergyBulletController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.TDPlayMixinV2",
"baseCD": 2.0,
"baseAttackRange": 24.0,
"bulletID": 70350304,
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "ShootPoint"
},
"partRootNames": [
"ShootControl",
"DirControl"
]
}
]
},
"AttackRangeLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.SetOverrideMapValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 32.0
},
"overrideMapKey": "None_Attack_Range"
}
]
},
"AttackRangeLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.SetOverrideMapValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 40.0
},
"overrideMapKey": "None_Attack_Range"
}
]
}
},
"onAdded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "ModelController"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "UpgradeController"
},
{
"$type": "MoleMole.Config.EnablePartControl",
"partRootNames": [
"ShootControl"
],
"enable": true
},
{
"$type": "MoleMole.Config.EnablePartControl",
"partRootNames": [
"DirControl"
],
"enable": true
},
{
"$type": "MoleMole.Config.SetPartControlTarget",
"target": "Target",
"partRootNames": [
"ShootControl"
]
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "IS_TOWER",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Gear_TowerDefenceV2_PhysicsBullet",
"modifiers": {
"NormalBullet": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerPhysics_02"
}
}
]
},
"DamageUpgraderLv1": {
"stacking": "MultipleAllRefresh",
"stackingOption": {
"abilitySpecialName": "",
"maxModifierNumForMultipleType": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 10.0
}
},
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AttackRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.05
}
}
},
"DamageUpgraderLv2": {
"stacking": "MultipleAllRefresh",
"stackingOption": {
"abilitySpecialName": "",
"maxModifierNumForMultipleType": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 10.0
}
},
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AttackRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.1
}
}
},
"DamageController": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
"onThinkInterval": [
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_DamageByTime",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "DamageUpgraderLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_DamageByTime",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "DamageUpgraderLv2"
}
]
}
},
"onAdded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "NormalBullet"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_DamageByTime",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "DamageController"
}
],
"onAbilityStart": [
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerPhysics_02_Hit"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
}
},
{
"$type": "MoleMole.Config.FireEffect",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_HitExplosion",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerPhysics_Explo_01"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
}
},
{
"$type": "MoleMole.Config.FireEffect",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_HitExplosion",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerPhysics_Explo_02"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
}
},
{
"$type": "MoleMole.Config.DamageByAttackValue",
"target": "Target",
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.75
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementRank": 1.5,
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"strikeType": "Blunt",
"enBreak": 120.0
},
"hitPattern": {
"onHitEffectName": "none",
"hitImpulseType": "LV2",
"overrideHitImpulse": {
"hitLevel": "Light",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_HitExplosion",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
},
"radius": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.25
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"strikeType": "Default"
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerPhysics_02_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_HitExplosion",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
},
"radius": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 4.0
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.25
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"strikeType": "Default"
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerPhysics_02_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Gear_TowerDefenceV2_PhysicsEnergyBullet",
"modifiers": {
"EnergyBullet": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerPhysics_03_Bullet"
}
}
]
},
"DamageUpgraderLv1": {
"stacking": "MultipleAllRefresh",
"stackingOption": {
"abilitySpecialName": "",
"maxModifierNumForMultipleType": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 10.0
}
},
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AttackRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.05
}
}
},
"DamageUpgraderLv2": {
"stacking": "MultipleAllRefresh",
"stackingOption": {
"abilitySpecialName": "",
"maxModifierNumForMultipleType": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 10.0
}
},
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AttackRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.1
}
}
},
"DamageUpgraderEnergyLv1": {
"stacking": "MultipleAllRefresh",
"stackingOption": {
"abilitySpecialName": "",
"maxModifierNumForMultipleType": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 12.0
}
},
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AttackRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.15
}
}
},
"DamageUpgraderEnergyLv2": {
"stacking": "MultipleAllRefresh",
"stackingOption": {
"abilitySpecialName": "",
"maxModifierNumForMultipleType": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 12.0
}
},
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AttackRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.3
}
}
},
"DamageController": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 10.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
"onThinkInterval": [
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_DamageByTime",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "DamageUpgraderLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_DamageByTime",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "DamageUpgraderLv2"
}
]
},
"DamageControllerEnergy": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 10.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
"onThinkInterval": [
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_EnergyBallAttack",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "DamageUpgraderEnergyLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_EnergyBallAttack",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "DamageUpgraderEnergyLv2"
}
]
}
},
"onAdded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "EnergyBullet"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "DamageControllerEnergy"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_DamageByTime",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "DamageController"
}
],
"onAbilityStart": [
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerPhysics_03_Hit"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
}
},
{
"$type": "MoleMole.Config.FireEffect",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_HitExplosion",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerPhysics_Explo_01"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
}
},
{
"$type": "MoleMole.Config.FireEffect",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_HitExplosion",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerPhysics_Explo_02"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
},
"radius": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.75
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementRank": 1.5,
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"strikeType": "Blunt",
"enBreak": 120.0
},
"hitPattern": {
"onHitEffectName": "none",
"hitImpulseType": "LV2",
"overrideHitImpulse": {
"hitLevel": "Light",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_HitExplosion",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
},
"radius": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.5
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.25
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"strikeType": "Default"
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerPhysics_02_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_HitExplosion",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
},
"radius": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 4.0
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.25
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"strikeType": "Default"
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerPhysics_02_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Gear_TowerDefenceV2_Wind",
"modifiers": {
"ModelController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.TriggerSetRenderersEnable",
"doOffStage": true,
"renderNames": [
"Property_Ani_Prop_Tower"
]
},
{
"$type": "MoleMole.Config.TriggerSetRenderersEnable",
"doOffStage": true,
"renderNames": [
"Property_Ani_Prop_TowerFire_02_Lod0"
],
"setEnable": true
},
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWind_04_Charge"
}
}
]
},
"AttackManager": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.TDPlayMixinV2",
"towerType": "Wind",
"baseCD": 4.0,
"baseAttackRange": 10.0,
"onFireActions": [
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackBox",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf",
"direction": {
"$type": "MoleMole.Config.ConfigDirectionByDefault",
"angleOffset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
}
},
"size": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 8.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 4.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 10.0
}
}
},
"attackInfo": {
"attackTag": "WindTowerAttack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.75
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Wind",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"strikeType": "Default",
"enBreak": 75.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV7",
"overrideHitImpulse": {
"hitLevel": "Air",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 800.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 600.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
},
{
"$type": "MoleMole.Config.SendEffectTrigger",
"parameter": "ChargeOff",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWind_04_Charge"
}
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWind_03_Attack"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "ShootPoint"
}
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "RemoveDamageUp"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "GV_ChargeTimes",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "ShootPoint"
}
}
],
"onAttackLanded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByAttackTags",
"attackTags": [
"WindTowerAttack"
]
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_ReduceWindResistance",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
}
],
"modifierName": "UNIQUE_ReduceWindResistanceLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByAttackTags",
"attackTags": [
"WindTowerAttack"
]
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_ReduceWindResistance",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
},
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
}
],
"modifierName": "UNIQUE_ReduceWindResistanceLv2"
}
]
},
"BulletManager": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.TDPlayMixinV2",
"towerType": "Wind",
"baseCD": 4.0,
"baseAttackRange": 20.0,
"onFireActions": [
{
"$type": "MoleMole.Config.SendEffectTrigger",
"parameter": "ChargeOff",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWind_04_Charge"
}
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "RemoveDamageUp"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "GV_ChargeTimes",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWind_AirBlade_01"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "ShootPoint"
}
}
],
"bulletID": 70350287,
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "ShootPoint"
}
}
],
"onAttackLanded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByAttackTags",
"attackTags": [
"WindTowerAttack"
]
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_ReduceWindResistance",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
}
],
"modifierName": "UNIQUE_ReduceWindResistanceLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByAttackTags",
"attackTags": [
"WindTowerAttack"
]
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_ReduceWindResistance",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
},
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
}
],
"modifierName": "UNIQUE_ReduceWindResistanceLv2"
}
]
},
"UpgradeController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_ShootBullet",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"AttackManager",
"BulletManager"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_TowUnits",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"WindZoneLv1",
"WindZoneLv2"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_WindImpulse",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"WindImpulseLv1",
"WindImpulseLv2"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_ShootBullet",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"BulletDamageUpLv1",
"BulletDamageUpLv2"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_ExtraDamageByHp",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"ExtraDamageByHPLv1",
"ExtraDamageByHPLv2"
]
}
]
},
"WindImpulseLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 6.0
},
"onThinkInterval": [
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWind_Halo_01_Once"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -1.8
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"attachPointName": "ShootPoint"
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -1.4
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"attachPointName": "ShootPoint"
},
"radius": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 4.0
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Wind",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
},
"ignoreAttackerProperty": true,
"strikeType": "Default"
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV3",
"overrideHitImpulse": {
"hitLevel": "Heavy",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 800.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
]
},
"WindImpulseLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 3.0
},
"onThinkInterval": [
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWind_Halo_01_Once"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -1.8
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"attachPointName": "ShootPoint"
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -1.4
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"attachPointName": "ShootPoint"
},
"radius": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 4.0
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Wind",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
},
"ignoreAttackerProperty": true,
"strikeType": "Default"
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV3",
"overrideHitImpulse": {
"hitLevel": "Heavy",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 800.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
]
},
"WindZoneLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.WindZoneMixin",
"shapeName": "CircleR3",
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
}
}
},
"strength": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
},
"attenuation": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"innerRadius": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"targetType": "Enemy",
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster",
"Grass"
]
}
],
"modifierName": ""
}
]
},
"WindZoneLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.WindZoneMixin",
"shapeName": "CircleR3",
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
}
}
},
"strength": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 4.0
},
"attenuation": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"innerRadius": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"targetType": "Enemy",
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster",
"Grass"
]
}
],
"modifierName": ""
}
]
},
"ChargeController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
},
"onThinkInterval": [
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_CanCharge",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "DamageUpLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_CanCharge",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "DamageUpLv2"
},
{
"$type": "MoleMole.Config.AddGlobalValue",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_CanCharge",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"compareType": "MoreThan"
}
],
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "GV_ChargeTimes",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.SendEffectTrigger",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "GV_ChargeTimes",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_CanCharge",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"compareType": "MoreThan"
}
],
"parameter": "LevelUp1",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWind_04_Charge"
}
},
{
"$type": "MoleMole.Config.SendEffectTrigger",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "GV_ChargeTimes",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"compareType": "MoreThan"
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_CanCharge",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"compareType": "MoreThan"
}
],
"parameter": "LevelUp2",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWind_04_Charge"
}
}
]
},
"DamageUpLv1": {
"stacking": "MultipleAllRefresh",
"stackingOption": {
"abilitySpecialName": "",
"maxModifierNumForMultipleType": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
},
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 10.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AttackRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.25
}
}
},
"DamageUpLv2": {
"stacking": "MultipleAllRefresh",
"stackingOption": {
"abilitySpecialName": "",
"maxModifierNumForMultipleType": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
},
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 10.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AttackRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 4.5
}
},
"onAdded": [
{
"$type": "MoleMole.Config.RemoveModifier",
"modifierName": "DamageUpLv1"
}
]
},
"RemoveDamageUp": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onRemoved": [
{
"$type": "MoleMole.Config.RemoveModifier",
"modifierName": "DamageUpLv1"
},
{
"$type": "MoleMole.Config.RemoveModifier",
"modifierName": "DamageUpLv2"
}
]
},
"UNIQUE_ReduceWindResistanceLv1": {
"stacking": "MultipleAllRefresh",
"stackingOption": {
"abilitySpecialName": "",
"maxModifierNumForMultipleType": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 3.0
}
},
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 10.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_WindSubHurtDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.1
}
}
},
"UNIQUE_ReduceWindResistanceLv2": {
"stacking": "MultipleAllRefresh",
"stackingOption": {
"abilitySpecialName": "",
"maxModifierNumForMultipleType": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 6.0
}
},
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 10.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_WindSubHurtDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.1
}
},
"onAdded": [
{
"$type": "MoleMole.Config.RemoveModifier",
"modifierName": "UNIQUE_ReduceWindResistanceLv1"
}
]
},
"BulletDamageUpLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AttackRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
},
"BulletDamageUpLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AttackRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
},
"ExtraDamageByHPLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.ModifyDamageMixin",
"ignoreEventInfo": true,
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.25
},
"predicates": [
{
"$type": "MoleMole.Config.ByTargetHPRatio",
"HPRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
}
}
]
}
]
},
"ExtraDamageByHPLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.ModifyDamageMixin",
"ignoreEventInfo": true,
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
"predicates": [
{
"$type": "MoleMole.Config.ByTargetHPRatio",
"HPRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
}
}
]
}
]
}
},
"onAdded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "ModelController"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "UpgradeController"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "ChargeController"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "IS_TOWER",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "GV_ChargeTimes",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Gear_TowerDefenceV2_WindBullet",
"onAbilityStart": [
{
"$type": "MoleMole.Config.DamageByAttackValue",
"target": "Target",
"born": {
"$type": "MoleMole.Config.ConfigBornByHitPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.6
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
},
"attackInfo": {
"attackTag": "WindTowerAttack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.75
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Wind",
"elementRank": 600.0,
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"strikeType": "Default",
"enBreak": 75.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV7",
"overrideHitImpulse": {
"hitLevel": "Air",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 800.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 600.0
}
},
"hitHaltTimeScale": 0.05
}
}
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Level_Common_Property_Prop_TowerAbsorberV2",
"modifiers": {
"RangeController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_RangeLevel",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"AbsorbRangeLv1",
"AbsorbRangeLv2",
"AbsorbRangeLv3"
]
}
]
},
"UNIQUE_SlowBuffLv1": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Animator_MoveSpeedRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.2
}
},
"state": "SpeedDown"
},
"UNIQUE_SlowBuffLv2": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Animator_MoveSpeedRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.4
}
},
"state": "SpeedDown"
},
"UNIQUE_SlowBuffLv3": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Animator_MoveSpeedRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.6
}
},
"state": "SpeedDown"
},
"UNIQUE_TowerAbsorberBuff": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"onAdded": [
{
"$type": "MoleMole.Config.SetGlobalValue",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_AuroKillPointBonus",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
},
"key": "GV_ExtraBuildPoint",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_AuroKillPointBonus",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 30.0
},
"key": "GV_ExtraBuildPoint",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_AuroKillPointBonus",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 40.0
},
"key": "GV_ExtraBuildPoint",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"onRemoved": [
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "GV_ExtraBuildPoint",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"onThinkInterval": [
{
"$type": "MoleMole.Config.SetGlobalValue",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_AuroKillPointBonus",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
},
"key": "GV_ExtraBuildPoint",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_AuroKillPointBonus",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 30.0
},
"key": "GV_ExtraBuildPoint",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_AuroKillPointBonus",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 40.0
},
"key": "GV_ExtraBuildPoint",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"onKill": [
{
"$type": "MoleMole.Config.FireEffect",
"target": "Applier",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerAbsorber_01_Absorber"
}
}
]
},
"AbsorbRangeLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerAbsorber_01_Ring"
},
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf",
"onGround": true
}
}
],
"onThinkInterval": [
{
"$type": "MoleMole.Config.ApplyModifier",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"shapeName": "CircleR8",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
}
],
"modifierName": "UNIQUE_TowerAbsorberBuff"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"shapeName": "CircleR8",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_SlowLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"modifierName": "UNIQUE_SlowBuffLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"shapeName": "CircleR8",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_SlowLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "UNIQUE_SlowBuffLv2"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"shapeName": "CircleR8",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_SlowLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "UNIQUE_SlowBuffLv3"
}
]
},
"AbsorbRangeLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerAbsorber_02_Ring"
},
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf",
"onGround": true
}
}
],
"onThinkInterval": [
{
"$type": "MoleMole.Config.ApplyModifier",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"shapeName": "CircleR10",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
}
],
"modifierName": "UNIQUE_TowerAbsorberBuff"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"shapeName": "CircleR10",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_SlowLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"modifierName": "UNIQUE_SlowBuffLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"shapeName": "CircleR10",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_SlowLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "UNIQUE_SlowBuffLv2"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"shapeName": "CircleR10",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_SlowLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "UNIQUE_SlowBuffLv3"
}
]
},
"AbsorbRangeLv3": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerAbsorber_03_Ring"
},
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf",
"onGround": true
}
}
],
"onThinkInterval": [
{
"$type": "MoleMole.Config.ApplyModifier",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"shapeName": "CircleR12",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
}
],
"modifierName": "UNIQUE_TowerAbsorberBuff"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"shapeName": "CircleR12",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_SlowLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"modifierName": "UNIQUE_SlowBuffLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"shapeName": "CircleR12",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_SlowLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "UNIQUE_SlowBuffLv2"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"shapeName": "CircleR12",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_SlowLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "UNIQUE_SlowBuffLv3"
}
]
}
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachModifier",
"modifierName": "RangeController"
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Level_Common_Property_Prop_TowerEnhancerV2",
"modifiers": {
"RangeController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_RangeLevel",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"EnhanceControllerLv1",
"EnhanceControllerLv2",
"EnhanceControllerLv3"
]
}
]
},
"UNIQUE_ElemMasteryUpLv1": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 7.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemMasteryDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 25.0
}
}
},
"UNIQUE_ElemMasteryUpLv2": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 7.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemMasteryDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
}
}
},
"UNIQUE_TowerAtkBuffLv0": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 7.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AttackRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
}
},
"state": "AttackUp",
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerEnhancer_01_BuffAttack"
}
}
]
},
"UNIQUE_TowerAtkBuffLv1": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 7.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AttackRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.6
}
},
"state": "AttackUp",
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerEnhancer_01_BuffAttack"
}
}
]
},
"UNIQUE_TowerAtkBuffLv2": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 7.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AttackRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.7
}
},
"state": "AttackUp",
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerEnhancer_01_BuffAttack"
}
}
]
},
"EnhanceControllerLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
},
"onThinkInterval": [
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerEnhancer_01_BuffWave_02"
}
},
{
"$type": "MoleMole.Config.Predicated",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"shapeName": "CircleR6",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "IS_TOWER",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_UpgradeMasteryLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "UNIQUE_ElemMasteryUpLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_UpgradeMasteryLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "UNIQUE_ElemMasteryUpLv2"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_UpgradeAttackLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"modifierName": "UNIQUE_TowerAtkBuffLv0"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_UpgradeAttackLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "UNIQUE_TowerAtkBuffLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_UpgradeAttackLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "UNIQUE_TowerAtkBuffLv2"
}
]
}
]
},
"EnhanceControllerLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
},
"onThinkInterval": [
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerEnhancer_01_BuffWave_01"
}
},
{
"$type": "MoleMole.Config.Predicated",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"shapeName": "CircleR9",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "IS_TOWER",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_UpgradeMasteryLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "UNIQUE_ElemMasteryUpLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_UpgradeMasteryLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "UNIQUE_ElemMasteryUpLv2"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_UpgradeAttackLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"modifierName": "UNIQUE_TowerAtkBuffLv0"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_UpgradeAttackLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "UNIQUE_TowerAtkBuffLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_UpgradeAttackLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "UNIQUE_TowerAtkBuffLv2"
}
]
}
]
},
"EnhanceControllerLv3": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
},
"onThinkInterval": [
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerEnhancer_01_BuffWave_03"
}
},
{
"$type": "MoleMole.Config.Predicated",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"shapeName": "CircleR12",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "IS_TOWER",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_UpgradeMasteryLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "UNIQUE_ElemMasteryUpLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_UpgradeMasteryLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "UNIQUE_ElemMasteryUpLv2"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_UpgradeAttackLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"modifierName": "UNIQUE_TowerAtkBuffLv0"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_UpgradeAttackLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "UNIQUE_TowerAtkBuffLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_UpgradeAttackLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "UNIQUE_TowerAtkBuffLv2"
}
]
}
]
}
},
"onAdded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "RangeController"
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Gear_TowerDefenceV2_Water",
"abilitySpecials": {
"Water_Element_Durability": {
"type": "float",
"dynamicValue": 50.0
},
"Water_Attack_Range_Lv1": {
"type": "float",
"dynamicValue": 6.0
},
"Water_Attack_Range_Lv2": {
"type": "float",
"dynamicValue": 8.0
},
"Water_Attack_Range_Lv3": {
"type": "float",
"dynamicValue": 10.0
},
"Water_Attack_Ratio": {
"type": "float",
"dynamicValue": 0.6
},
"Bubble_Interval_Lv1": {
"type": "float",
"dynamicValue": 5.0
},
"Bubble_Interval_Lv2": {
"type": "float",
"dynamicValue": 2.5
},
"Impulse_Range": {
"type": "float",
"dynamicValue": 12.0
},
"Impulse_Interval_Lv1": {
"type": "float",
"dynamicValue": 20.0
},
"Impulse_Interval_Lv2": {
"type": "float",
"dynamicValue": 10.0
},
"Impulse_Element_Durability": {
"type": "float",
"dynamicValue": 200.0
},
"Wet_Bonus_Lv1": {
"type": "float",
"dynamicValue": 0.5
},
"Wet_Bonus_Lv2": {
"type": "float",
"dynamicValue": 1.0
},
"Aoe_Ratio_Lv1": {
"type": "float",
"dynamicValue": 2.25
},
"Aoe_Ratio_Lv2": {
"type": "float",
"dynamicValue": 3.5
},
"Aoe_Range_Lv1": {
"type": "float",
"dynamicValue": 2.0
},
"Aoe_Range_Lv2": {
"type": "float",
"dynamicValue": 4.0
},
"Aoe_Range_Lv3": {
"type": "float",
"dynamicValue": 6.0
},
"Dot_Time": {
"type": "float",
"dynamicValue": 12.0
},
"Dot_Interval": {
"type": "float",
"dynamicValue": 4.0
},
"Dot_Element_Durability": {
"type": "float",
"dynamicValue": 50.0
},
"Dot_Damage_Lv1": {
"type": "float",
"dynamicValue": 0.75
},
"Dot_Damage_Lv2": {
"type": "float",
"dynamicValue": 1.5
},
"Dot_Damage_Range": {
"type": "float",
"dynamicValue": 6.0
}
},
"modifiers": {
"TowerDefenceV2_Water": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.TDPlayMixinV2",
"towerType": "Water",
"baseCD": 4.0,
"baseAttackRange": 6.0,
"onFireActions": [
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_TargetAOE",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"compareType": "LessAndEqual"
}
],
"successActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Water Tower: BASE ATTACK"
},
{
"$type": "MoleMole.Config.FireEffect",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_RangeLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_01_Burst"
},
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf",
"onGround": true
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_RangeLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf",
"onGround": true
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Water_Attack_Range_Lv1"
}
},
"attackInfo": {
"attackTag": "Water_Base_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Water_Attack_Ratio"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Water",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Water_Element_Durability"
},
"strikeType": "Default",
"enBreak": 10.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV3",
"overrideHitImpulse": {
"hitLevel": "Heavy",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 800.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
},
{
"$type": "MoleMole.Config.FireEffect",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_RangeLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_02_Burst"
},
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf",
"onGround": true
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_RangeLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf",
"onGround": true
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Water_Attack_Range_Lv2"
}
},
"attackInfo": {
"attackTag": "Water_Base_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Water_Attack_Ratio"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Water",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Water_Element_Durability"
},
"strikeType": "Default",
"enBreak": 10.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV3",
"overrideHitImpulse": {
"hitLevel": "Heavy",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 800.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
},
{
"$type": "MoleMole.Config.FireEffect",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_RangeLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
},
"compareType": "MoreThanAndEqual"
}
],
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_03_Burst"
},
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf",
"onGround": true
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_RangeLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf",
"onGround": true
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Water_Attack_Range_Lv3"
}
},
"attackInfo": {
"attackTag": "Water_Base_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Water_Attack_Ratio"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Water",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Water_Element_Durability"
},
"strikeType": "Default",
"enBreak": 10.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV3",
"overrideHitImpulse": {
"hitLevel": "Heavy",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 800.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
],
"failActions": [
{
"$type": "MoleMole.Config.DebugLog",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_TargetAOE",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"content": "TD: Water Tower: Target aoe lv1!"
},
{
"$type": "MoleMole.Config.DebugLog",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_TargetAOE",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"content": "TD: Water Tower: Target aoe lv2!"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "SelfAttackTarget",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_TargetAOE",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "TargetAOE_Lv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "SelfAttackTarget",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_TargetAOE",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "TargetAOE_Lv2"
}
]
}
],
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "ShootPoint"
}
}
]
},
"TargetAOE_Lv1": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"target": "Applier",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_04_Charge"
}
}
],
"onRemoved": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Water Tower: TARGET AOE ATTACK Lv1"
},
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_RangeLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.SetGlobalPos",
"key": "Water_Target_Aoe_Pos",
"born": {
"$type": "MoleMole.Config.ConfigBornByTarget"
},
"setTarget": false
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_04_Hit_01"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByGlobalValue",
"positionKey": "Water_Target_Aoe_Pos",
"directionKey": ""
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "Applier",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByGlobalValue",
"positionKey": "Water_Target_Aoe_Pos",
"directionKey": ""
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Aoe_Range_Lv1"
}
},
"attackInfo": {
"attackTag": "Water_Base_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Aoe_Ratio_Lv1"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Water",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Water_Element_Durability"
},
"strikeType": "Default",
"enBreak": 10.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV3",
"overrideHitImpulse": {
"hitLevel": "Heavy",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 800.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
]
},
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_RangeLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.SetGlobalPos",
"key": "Water_Target_Aoe_Pos",
"born": {
"$type": "MoleMole.Config.ConfigBornByTarget"
},
"setTarget": false
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_04_Hit_01"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByGlobalValue",
"positionKey": "Water_Target_Aoe_Pos",
"directionKey": ""
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "Applier",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByGlobalValue",
"positionKey": "Water_Target_Aoe_Pos",
"directionKey": ""
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Aoe_Range_Lv2"
}
},
"attackInfo": {
"attackTag": "Water_Base_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Aoe_Ratio_Lv1"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Water",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Water_Element_Durability"
},
"strikeType": "Default",
"enBreak": 10.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV3",
"overrideHitImpulse": {
"hitLevel": "Heavy",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 800.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
]
},
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_RangeLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.SetGlobalPos",
"key": "Water_Target_Aoe_Pos",
"born": {
"$type": "MoleMole.Config.ConfigBornByTarget"
},
"setTarget": false
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_04_Hit_01"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByGlobalValue",
"positionKey": "Water_Target_Aoe_Pos",
"directionKey": ""
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "Applier",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByGlobalValue",
"positionKey": "Water_Target_Aoe_Pos",
"directionKey": ""
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Aoe_Range_Lv3"
}
},
"attackInfo": {
"attackTag": "Water_Base_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Aoe_Ratio_Lv1"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Water",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Water_Element_Durability"
},
"strikeType": "Default",
"enBreak": 10.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV3",
"overrideHitImpulse": {
"hitLevel": "Heavy",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 800.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
]
}
]
},
"TargetAOE_Lv2": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"target": "Applier",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_04_Charge"
}
}
],
"onRemoved": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Water Tower: TARGET AOE ATTACK Lv2"
},
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_RangeLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.SetGlobalPos",
"key": "Water_Target_Aoe_Pos",
"born": {
"$type": "MoleMole.Config.ConfigBornByTarget"
},
"setTarget": false
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_04_Hit_01"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByGlobalValue",
"positionKey": "Water_Target_Aoe_Pos",
"directionKey": ""
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "Applier",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByGlobalValue",
"positionKey": "Water_Target_Aoe_Pos",
"directionKey": ""
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Aoe_Range_Lv1"
}
},
"attackInfo": {
"attackTag": "Water_Base_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Aoe_Ratio_Lv2"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Water",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Water_Element_Durability"
},
"strikeType": "Default",
"enBreak": 10.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV3",
"overrideHitImpulse": {
"hitLevel": "Heavy",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 800.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
]
},
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_RangeLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.SetGlobalPos",
"key": "Water_Target_Aoe_Pos",
"born": {
"$type": "MoleMole.Config.ConfigBornByTarget"
},
"setTarget": false
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_04_Hit_01"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByGlobalValue",
"positionKey": "Water_Target_Aoe_Pos",
"directionKey": ""
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "Applier",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByGlobalValue",
"positionKey": "Water_Target_Aoe_Pos",
"directionKey": ""
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Aoe_Range_Lv2"
}
},
"attackInfo": {
"attackTag": "Water_Base_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Aoe_Ratio_Lv2"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Water",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Water_Element_Durability"
},
"strikeType": "Default",
"enBreak": 10.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV3",
"overrideHitImpulse": {
"hitLevel": "Heavy",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 800.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
]
},
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_RangeLevel",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.SetGlobalPos",
"key": "Water_Target_Aoe_Pos",
"born": {
"$type": "MoleMole.Config.ConfigBornByTarget"
},
"setTarget": false
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_04_Hit_01"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByGlobalValue",
"positionKey": "Water_Target_Aoe_Pos",
"directionKey": ""
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "Applier",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByGlobalValue",
"positionKey": "Water_Target_Aoe_Pos",
"directionKey": ""
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Aoe_Range_Lv3"
}
},
"attackInfo": {
"attackTag": "Water_Base_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Aoe_Ratio_Lv2"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Water",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Water_Element_Durability"
},
"strikeType": "Default",
"enBreak": 10.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV3",
"overrideHitImpulse": {
"hitLevel": "Heavy",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 800.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
]
}
]
},
"SpecialAbilitiesController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_Bubble",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.5
}
],
"modifierNameSteps": [
"BubbleControllerLv1",
"BubbleControllerLv2"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_WaterImpulse",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.5
}
],
"modifierNameSteps": [
"ImpulseControllerLv1",
"ImpulseControllerLv2"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_Wet",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.5
}
],
"modifierNameSteps": [
"WetBonusController"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_Dot",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.5
}
],
"modifierNameSteps": [
"DotController"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_UpgradeElectricRecation",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"UpgradeShockLv1",
"UpgradeShockLv2"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_Evaporate",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"UpgradeSteamLv1",
"UpgradeSteamLv2"
]
}
]
},
"BubbleControllerLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Bubble_Interval_Lv1"
},
"onThinkInterval": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Water Tower: SHOOTING BUBBLE LV1"
},
{
"$type": "MoleMole.Config.SetSelfAttackTarget",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"topLimit": 1,
"sortType": "Nearest",
"shapeName": "CircleR10",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
}
]
},
{
"$type": "MoleMole.Config.TriggerBullet",
"predicates": [
{
"$type": "MoleMole.Config.ByHasAttackTarget"
}
],
"bulletID": 70350291,
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"direction": {
"$type": "MoleMole.Config.ConfigDirectionByAttackTarget",
"angleOffset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
},
"attachPointName": "RootNode"
}
}
]
},
"BubbleControllerLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Bubble_Interval_Lv2"
},
"onThinkInterval": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Water Tower: SHOOTING BUBBLE LV2"
},
{
"$type": "MoleMole.Config.SetSelfAttackTarget",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"topLimit": 1,
"sortType": "Nearest",
"shapeName": "CircleR10",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
}
]
},
{
"$type": "MoleMole.Config.TriggerBullet",
"predicates": [
{
"$type": "MoleMole.Config.ByHasAttackTarget"
}
],
"bulletID": 70350291,
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"direction": {
"$type": "MoleMole.Config.ConfigDirectionByAttackTarget",
"angleOffset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
},
"attachPointName": "RootNode"
}
}
]
},
"ImpulseControllerLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Impulse_Interval_Lv1"
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_Halo_01_Loop"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"onGround": true,
"attachPointName": "RootNode"
}
}
],
"onThinkInterval": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Water Tower: WATER IMPULSE LV1"
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_Halo_01_Once"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.75
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"attachPointName": "RootNode"
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "ShootPoint"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Impulse_Range"
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Water",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Impulse_Element_Durability"
},
"ignoreAttackerProperty": true,
"strikeType": "Default"
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV1"
}
}
},
"targetType": "Enemy"
}
]
},
"ImpulseControllerLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Impulse_Interval_Lv2"
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_Halo_01_Loop"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"onGround": true,
"attachPointName": "RootNode"
}
}
],
"onThinkInterval": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Water Tower: WATER IMPULSE LV2"
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_Halo_01_Once"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.75
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"attachPointName": "RootNode"
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "ShootPoint"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Impulse_Range"
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Water",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Impulse_Element_Durability"
},
"ignoreAttackerProperty": true,
"strikeType": "Default"
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV1"
}
}
},
"targetType": "Enemy"
}
]
},
"WetBonusController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.ModifyDamageMixin",
"ignoreEventInfo": true,
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Wet_Bonus_Lv1"
},
"predicates": [
{
"$type": "MoleMole.Config.ByHasElement",
"element": "Water"
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_Wet",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
]
},
{
"$type": "MoleMole.Config.ModifyDamageMixin",
"ignoreEventInfo": true,
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Wet_Bonus_Lv2"
},
"predicates": [
{
"$type": "MoleMole.Config.ByHasElement",
"element": "Water"
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_Wet",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
]
}
],
"onAdded": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Water Tower: WET BONUS"
}
]
},
"DotController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Water Tower: DOT CONTROLLER"
}
],
"onAttackLanded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByAttackTags",
"attackTags": [
"Water_Base_Attack"
]
},
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
}
],
"modifierName": "WaterDot"
}
]
},
"WaterDot": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Dot_Time"
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Dot_Interval"
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_Debuff_01_Loop"
},
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -1.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
}
}
],
"onThinkInterval": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Water Tower: WATER DOT DAMAGE"
},
{
"$type": "MoleMole.Config.FireEffect",
"predicates": [
{
"$type": "MoleMole.Config.ByEntityIsAlive",
"target": "Applier"
}
],
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_Debuff_01_Once"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"onGround": true,
"attachPointName": "Fx_ChestNode"
}
},
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_Dot",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"compareType": "LessAndEqual"
}
],
"successActions": [
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "Applier",
"predicates": [
{
"$type": "MoleMole.Config.ByEntityIsAlive",
"target": "Applier"
}
],
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Dot_Damage_Range"
}
},
"attackInfo": {
"attackTag": "Water_Dot_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Dot_Damage_Lv1"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Water",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Dot_Element_Durability"
},
"strikeType": "Default",
"enBreak": 10.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV3",
"overrideHitImpulse": {
"hitLevel": "Heavy",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 800.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
],
"failActions": [
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "Applier",
"predicates": [
{
"$type": "MoleMole.Config.ByEntityIsAlive",
"target": "Applier"
}
],
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Dot_Damage_Range"
}
},
"attackInfo": {
"attackTag": "Water_Dot_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Dot_Damage_Lv2"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Water",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Dot_Element_Durability"
},
"strikeType": "Default",
"enBreak": 10.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV3",
"overrideHitImpulse": {
"hitLevel": "Heavy",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 800.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
]
},
{
"$type": "MoleMole.Config.RemoveModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByNot",
"predicates": [
{
"$type": "MoleMole.Config.ByEntityIsAlive",
"target": "Applier"
}
]
}
],
"modifierName": "WaterDot"
}
]
},
"UpgradeShockLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemReactElectricDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
},
"UpgradeShockLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemReactElectricDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
},
"UpgradeSteamLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemReactSteamDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
}
}
},
"UpgradeSteamLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemReactSteamDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
}
},
"onAdded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "TowerDefenceV2_Water"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "SpecialAbilitiesController"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "IS_TOWER",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Gear_TowerDefenceV2_Water_Bubble",
"abilitySpecials": {
"StruggleTime": {
"type": "float",
"dynamicValue": 3.0
},
"DamageRatio": {
"type": "float",
"dynamicValue": 0.15
}
},
"modifiers": {
"BubbleMaterial": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_03_Bubble"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "RootNode"
}
}
]
},
"Blister": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "StruggleTime"
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AddGravityScale": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -2.0
}
},
"state": "Struggle",
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_03_Bubble"
}
}
],
"onRemoved": [
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_03_Bubble_Die"
}
}
]
}
},
"onAdded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "BubbleMaterial"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"target": "Owner",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "Bubble_Pos1",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"onAbilityStart": [
{
"$type": "MoleMole.Config.DamageByAttackValue",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
}
],
"born": {
"$type": "MoleMole.Config.ConfigBornByHitPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "DamageRatio"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Water",
"elementRank": 1.5,
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 50.0
},
"strikeType": "Default",
"enBreak": 200.0
},
"hitPattern": {
"onHitEffectName": "none",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByTargetWeight",
"logic": "Lesser",
"weight": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
}
}
],
"modifierName": "Blister"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"target": "Owner",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "Bubble_Pos1",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"onKill": [
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerWater_03_Bubble_Die"
}
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Gear_TowerDefenceV2_Fire",
"abilitySpecials": {
"Fire_Element_Durability": {
"type": "float",
"dynamicValue": 50.0
},
"Impulse_Range": {
"type": "float",
"dynamicValue": 12.0
},
"Impulse_Interval_Lv1": {
"type": "float",
"dynamicValue": 20.0
},
"Impulse_Interval_Lv2": {
"type": "float",
"dynamicValue": 10.0
},
"Impulse_Element_Durability": {
"type": "float",
"dynamicValue": 200.0
},
"Melt_Bonus_Lv1": {
"type": "float",
"dynamicValue": 0.5
},
"Melt_Bonus_Lv2": {
"type": "float",
"dynamicValue": 1.0
},
"Missile_Bonus_Lv1": {
"type": "float",
"dynamicValue": 2.0
},
"Missile_Bonus_Lv2": {
"type": "float",
"dynamicValue": 3.0
},
"Defensedown_Lv1": {
"type": "float",
"dynamicValue": -0.1
},
"Defensedown_Lv2": {
"type": "float",
"dynamicValue": -0.2
},
"Defensedown_Stack_Num": {
"type": "float",
"dynamicValue": 3.0
},
"Defensedown_Duration": {
"type": "float",
"dynamicValue": 20.0
}
},
"modifiers": {
"TowerDefenceV2_Fire": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.TDPlayMixinV2",
"towerType": "Fire",
"baseCD": 5.0,
"baseAttackRange": 20.0,
"onFireActions": [
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "GV_IsShootBullet",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerFire_04_Fire"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "ShootPoint"
}
},
{
"$type": "MoleMole.Config.CreateGadget",
"target": "SelfAttackTarget",
"ownerIs": "Caster",
"propOwnerIs": "Caster",
"born": {
"$type": "MoleMole.Config.ConfigBornByTarget",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
},
"gadgetID": 70350300
}
]
}
],
"bulletID": 70350295,
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"direction": {
"$type": "MoleMole.Config.ConfigDirectionByAttackTarget"
},
"attachPointName": "ShootPoint"
}
}
]
},
"SpecialAbilitiesController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_FireImpulse",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.5
}
],
"modifierNameSteps": [
"ImpulseControllerLv1",
"ImpulseControllerLv2"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_Missile",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.5
}
],
"modifierNameSteps": [
"MissileController"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_Defensedown",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.5
}
],
"modifierNameSteps": [
"DebuffController"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_Missile",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.5
}
],
"modifierNameSteps": [
"BonusDamageController"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_FireArea",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.5
}
],
"modifierNameSteps": [
"FireAreaController"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_UpgradeElectricRecation",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"UpgradeExplodeLv1",
"UpgradeExplodeLv2"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_Evaporate",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"UpgradeSteamLv1",
"UpgradeSteamLv2"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_Melt",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"UpgradeMeltLv1",
"UpgradeMeltLv2"
]
}
]
},
"MissileController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "GV_IsShootBullet",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
]
},
"ImpulseControllerLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Impulse_Interval_Lv1"
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerFire_Halo_01_Loop"
},
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf",
"onGround": true
}
}
],
"onThinkInterval": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: FIRE IMPULSE LV1"
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerFire_Halo_01_Once"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.75
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"attachPointName": "RootNode"
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "ShootPoint"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Impulse_Range"
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Fire",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Impulse_Element_Durability"
},
"ignoreAttackerProperty": true,
"strikeType": "Default"
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV1"
}
}
},
"targetType": "Enemy"
}
]
},
"ImpulseControllerLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Impulse_Interval_Lv2"
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerFire_Halo_01_Loop"
},
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf",
"onGround": true
}
}
],
"onThinkInterval": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: FIRE IMPULSE LV2"
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerFire_Halo_01_Once"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.75
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"attachPointName": "RootNode"
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "ShootPoint"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Impulse_Range"
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Fire",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Impulse_Element_Durability"
},
"ignoreAttackerProperty": true,
"strikeType": "Default"
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV1"
}
}
},
"targetType": "Enemy"
}
]
},
"BonusDamageController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.ModifyDamageMixin",
"attackTags": [
"Fire_Missile_Attack"
],
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Missile_Bonus_Lv1"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_Missile",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
]
},
{
"$type": "MoleMole.Config.ModifyDamageMixin",
"attackTags": [
"Fire_Missile_Attack"
],
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Missile_Bonus_Lv2"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_Missile",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
]
}
]
},
"FireAreaController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: FireArea controller activited!"
}
],
"onAttackLanded": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: Building FireArea under the target!"
},
{
"$type": "MoleMole.Config.CreateGadget",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByAny",
"predicates": [
{
"$type": "MoleMole.Config.ByAttackTags",
"attackTags": [
"Fire_Base_Attack"
]
},
{
"$type": "MoleMole.Config.ByAttackTags",
"attackTags": [
"Fire_Missile_Attack"
]
}
]
}
],
"born": {
"$type": "MoleMole.Config.ConfigBornByTarget",
"onGround": true
},
"gadgetID": 70350302
}
]
},
"DebuffController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: Debuff controller activited!"
}
],
"onAttackLanded": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: Applying fire debuff to the target!"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_Defensedown",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "UNIQUE_Defensedown_Debuff_Lv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_Defensedown",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "UNIQUE_Defensedown_Debuff_Lv2"
}
]
},
"UNIQUE_Defensedown_Debuff_Lv1": {
"stacking": "MultipleAllRefresh",
"stackingOption": {
"abilitySpecialName": "",
"maxModifierNumForMultipleType": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Defensedown_Stack_Num"
}
},
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Defensedown_Duration"
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_DefenceRatio": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Defensedown_Lv1"
}
},
"state": "DefenseDown"
},
"UNIQUE_Defensedown_Debuff_Lv2": {
"stacking": "MultipleAllRefresh",
"stackingOption": {
"abilitySpecialName": "",
"maxModifierNumForMultipleType": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Defensedown_Stack_Num"
}
},
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Defensedown_Duration"
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_DefenceRatio": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Defensedown_Lv2"
}
},
"state": "DefenseDown"
},
"UpgradeExplodeLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemReactExplodeDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
},
"UpgradeExplodeLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemReactExplodeDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
},
"UpgradeSteamLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemReactSteamDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
}
}
},
"UpgradeSteamLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemReactSteamDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
},
"UpgradeMeltLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemReactMeltDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
}
}
},
"UpgradeMeltLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemReactMeltDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
}
},
"onAdded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "TowerDefenceV2_Fire"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "SpecialAbilitiesController"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "IS_TOWER",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Gear_TowerDefenceV2_FireBullet",
"abilitySpecials": {
"Fire_Attack_Ratio": {
"type": "float",
"dynamicValue": 1.0
},
"Fire_Element_Durability": {
"type": "float",
"dynamicValue": 50.0
},
"Fire_Aoe_Range_base": {
"type": "float",
"dynamicValue": 1.5
},
"Fire_Aoe_Range_Lv1": {
"type": "float",
"dynamicValue": 3.5
},
"Fire_Aoe_Range_Lv2": {
"type": "float",
"dynamicValue": 5.5
}
},
"modifiers": {
"EffectController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerFire_01_Bullet"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "RootNode"
}
},
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerFire_01_Bullet_Trail"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "RootNode"
}
}
]
}
},
"onAdded": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: Bullet Built!"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "IS_FIRE_BULLET",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "EffectController"
}
],
"onAbilityStart": [
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_Aoe",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"compareType": "MoreThan"
}
],
"successActions": [
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_Enbreak",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"compareType": "MoreThanAndEqual"
}
],
"successActions": [
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_Aoe",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: Aoe attack Lv1"
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "OriginOwner",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Aoe_Range_Lv1"
}
},
"attackInfo": {
"attackTag": "Fire_Base_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Attack_Ratio"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Fire",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Element_Durability"
},
"strikeType": "Blunt",
"enBreak": 300.0
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerFire_02_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
],
"failActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: Aoe attack Lv2"
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "OriginOwner",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Aoe_Range_Lv2"
}
},
"attackInfo": {
"attackTag": "Fire_Base_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Attack_Ratio"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Fire",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Element_Durability"
},
"strikeType": "Blunt",
"enBreak": 300.0
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerFire_02_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
]
}
],
"failActions": [
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_Aoe",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: Aoe attack Lv1"
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "OriginOwner",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Aoe_Range_Lv1"
}
},
"attackInfo": {
"attackTag": "Fire_Base_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Attack_Ratio"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Fire",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Element_Durability"
},
"strikeType": "Default",
"enBreak": 10.0
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerFire_02_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
],
"failActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: Aoe attack Lv2"
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Aoe_Range_Lv2"
}
},
"attackInfo": {
"attackTag": "Fire_Base_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Attack_Ratio"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Fire",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Element_Durability"
},
"strikeType": "Default",
"enBreak": 0.0
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerFire_02_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
]
}
]
}
],
"failActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: Single attack"
},
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_Enbreak",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "OriginOwner",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Aoe_Range_base"
}
},
"attackInfo": {
"attackTag": "Fire_Base_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Attack_Ratio"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Fire",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Element_Durability"
},
"strikeType": "Blunt",
"enBreak": 300.0
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerFire_01_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
],
"failActions": [
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "OriginOwner",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Aoe_Range_base"
}
},
"attackInfo": {
"attackTag": "Fire_Base_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Attack_Ratio"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Fire",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Element_Durability"
},
"strikeType": "Default",
"enBreak": 10.0
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerFire_01_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
]
}
]
}
],
"onKill": [
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerFire_01_Hit"
}
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Gear_TowerDefenceV2_FireArea",
"abilitySpecials": {
"FireArea_Duration": {
"type": "float",
"dynamicValue": 5.0
},
"FireArea_Range": {
"type": "float",
"dynamicValue": 3.0
},
"FireArea_Damage_Lv1": {
"type": "float",
"dynamicValue": 0.3
},
"FireArea_Damage_Lv2": {
"type": "float",
"dynamicValue": 0.6
},
"FireArea_Damage_Element_Durability": {
"type": "float",
"dynamicValue": 100.0
},
"Defensedown_Lv1": {
"type": "float",
"dynamicValue": -0.1
},
"Defensedown_Lv2": {
"type": "float",
"dynamicValue": -0.2
},
"Defensedown_Stack_Num": {
"type": "float",
"dynamicValue": 3.0
},
"Defensedown_Duration": {
"type": "float",
"dynamicValue": 20.0
}
},
"modifiers": {
"FireAreaController": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "FireArea_Duration"
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"onRemoved": [
{
"$type": "MoleMole.Config.KillSelf"
}
],
"onThinkInterval": [
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_FireArea",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: Fire Area Damage Lv1!"
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "OriginOwner",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "FireArea_Range"
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "FireArea_Damage_Lv1"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Fire",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "FireArea_Damage_Element_Durability"
},
"strikeType": "Default",
"enBreak": 0.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV1"
}
}
},
"targetType": "Enemy"
}
],
"failActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: Fire Area Damage Lv2!"
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "OriginOwner",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "FireArea_Range"
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "FireArea_Damage_Lv2"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Fire",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "FireArea_Damage_Element_Durability"
},
"strikeType": "Default",
"enBreak": 0.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV1"
}
}
},
"targetType": "Enemy"
}
]
}
]
}
},
"onAdded": [
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "IS_FIRE_AREA",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "FireAreaController"
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Gear_TowerDefenceV2_FireMissileCreator",
"modifiers": {
"FireMissileCreatorController": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.2
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerFire_04_Fire_Warning"
},
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -5.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
}
}
],
"onRemoved": [
{
"$type": "MoleMole.Config.TriggerBullet",
"bulletID": 70350301,
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf",
"direction": {
"$type": "MoleMole.Config.ConfigDirectionByEntity",
"angleOffset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 90.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
}
},
"ownerIs": "Owner"
},
{
"$type": "MoleMole.Config.KillSelf"
}
]
}
},
"onAdded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "FireMissileCreatorController"
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Gear_TowerDefenceV2_FireMissile",
"abilitySpecials": {
"Fire_Element_Durability": {
"type": "float",
"dynamicValue": 100.0
},
"Fire_Aoe_Range_base": {
"type": "float",
"dynamicValue": 1.5
},
"Fire_Aoe_Range_Lv1": {
"type": "float",
"dynamicValue": 3.5
},
"Fire_Aoe_Range_Lv2": {
"type": "float",
"dynamicValue": 5.5
},
"Defensedown_Lv1": {
"type": "float",
"dynamicValue": -0.1
},
"Defensedown_Lv2": {
"type": "float",
"dynamicValue": -0.2
},
"Defensedown_Stack_Num": {
"type": "float",
"dynamicValue": 3.0
},
"Defensedown_Duration": {
"type": "float",
"dynamicValue": 20.0
}
},
"modifiers": {
"EffectController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerFire_Bullet_Up"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "RootNode"
}
},
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerFire_Bullet_Up_Trail"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "RootNode"
}
}
],
"onRemoved": [
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerFire_01_Hit"
}
}
]
}
},
"onAdded": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: Bullet Built!"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "EffectController"
}
],
"onAbilityStart": [
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_Aoe",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"compareType": "MoreThan"
}
],
"successActions": [
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_Enbreak",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"compareType": "MoreThanAndEqual"
}
],
"successActions": [
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_Missile",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: Aoe attack Lv1"
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "OriginOwner",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Aoe_Range_Lv1"
}
},
"attackInfo": {
"attackTag": "Fire_Missile_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Fire",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Element_Durability"
},
"strikeType": "Blunt",
"enBreak": 300.0
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerFire_02_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
],
"failActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: Aoe attack Lv2"
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "OriginOwner",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Aoe_Range_Lv2"
}
},
"attackInfo": {
"attackTag": "Fire_Missile_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Fire",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Element_Durability"
},
"strikeType": "Blunt",
"enBreak": 300.0
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerFire_02_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
]
}
],
"failActions": [
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_Aoe",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: Aoe attack Lv1"
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "OriginOwner",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Aoe_Range_Lv1"
}
},
"attackInfo": {
"attackTag": "Fire_Missile_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Fire",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Element_Durability"
},
"strikeType": "Default",
"enBreak": 10.0
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerFire_02_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
],
"failActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: Aoe attack Lv2"
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "OriginOwner",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Aoe_Range_Lv2"
}
},
"attackInfo": {
"attackTag": "Fire_Missile_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Fire",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Element_Durability"
},
"strikeType": "Default",
"enBreak": 0.0
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerFire_02_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
]
}
]
}
],
"failActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: Single attack"
},
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_Enbreak",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "OriginOwner",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Aoe_Range_base"
}
},
"attackInfo": {
"attackTag": "Fire_Missile_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Fire",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Element_Durability"
},
"strikeType": "Blunt",
"enBreak": 300.0
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerFire_01_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
],
"failActions": [
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"target": "OriginOwner",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByCollisionPoint"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Aoe_Range_base"
}
},
"attackInfo": {
"attackTag": "Fire_Missile_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Fire",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Fire_Element_Durability"
},
"strikeType": "Default",
"enBreak": 10.0
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerFire_01_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
}
]
}
]
},
{
"$type": "MoleMole.Config.RemoveModifier",
"modifierName": "EffectController"
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Gear_TowerDefenceV2_Ice",
"abilitySpecials": {
"Fire_Element_Durability": {
"type": "float",
"dynamicValue": 50.0
},
"Impulse_Range": {
"type": "float",
"dynamicValue": 12.0
},
"Impulse_Interval_Lv1": {
"type": "float",
"dynamicValue": 20.0
},
"Impulse_Interval_Lv2": {
"type": "float",
"dynamicValue": 10.0
},
"Impulse_Element_Durability": {
"type": "float",
"dynamicValue": 200.0
},
"Ice_Freeze_Prolong_Lv1": {
"type": "float",
"dynamicValue": 0.2
},
"Ice_Freeze_Prolong_Lv2": {
"type": "float",
"dynamicValue": 0.4
},
"IceFog_Interval": {
"type": "float",
"dynamicValue": 10.0
}
},
"modifiers": {
"TowerDefenceV2_Ice": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.TDPlayMixinV2",
"towerType": "Ice",
"baseCD": 3.0,
"baseAttackRange": 15.0,
"onFireActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Ice Tower: Base Attack!"
}
],
"bulletID": 70350296,
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"direction": {
"$type": "MoleMole.Config.ConfigDirectionByAttackTarget"
},
"attachPointName": "ShootPoint"
}
}
]
},
"SpecialAbilitiesController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_IceImpulse",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.5
}
],
"modifierNameSteps": [
"ImpulseControllerLv1",
"ImpulseControllerLv2"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_Frozen",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.5
}
],
"modifierNameSteps": [
"Freeze_Prolong_Lv1",
"Freeze_Prolong_Lv2"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_Ice_Fog",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.5
}
],
"modifierNameSteps": [
"IceFogController"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_Melt",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"UpgradeMeltLv1",
"UpgradeMeltLv2"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_ReducePhysicalResistance",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"ReducePhysicalResistanceBySConductLv1",
"ReducePhysicalResistanceBySConductLv2"
]
}
]
},
"ImpulseControllerLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Impulse_Interval_Lv1"
},
"onThinkInterval": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Ice Tower: Ice IMPULSE LV1"
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerIce_Halo_01"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.75
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"attachPointName": "RootNode"
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "ShootPoint"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Impulse_Range"
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Ice",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Impulse_Element_Durability"
},
"ignoreAttackerProperty": true,
"strikeType": "Default"
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV1"
}
}
},
"targetType": "Enemy"
}
]
},
"ImpulseControllerLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Impulse_Interval_Lv2"
},
"onThinkInterval": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Ice Tower: ICE IMPULSE LV2"
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerIce_Halo_01"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.75
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"attachPointName": "RootNode"
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "ShootPoint"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Impulse_Range"
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Ice",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Impulse_Element_Durability"
},
"ignoreAttackerProperty": true,
"strikeType": "Default"
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV1"
}
}
},
"targetType": "Enemy"
}
]
},
"IceFogController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "IceFog_Interval"
},
"onThinkInterval": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Ice Tower: Building Icefog around self!"
},
{
"$type": "MoleMole.Config.CreateGadget",
"propOwnerIs": "Caster",
"lifeByOwnerIsAlive": true,
"born": {
"$type": "MoleMole.Config.ConfigBornByTarget",
"onGround": true
},
"gadgetID": 70350297
}
]
},
"Freeze_Prolong_Lv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemReactFreezeDelta": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Freeze_Prolong_Lv1"
}
}
},
"Freeze_Prolong_Lv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemReactFreezeDelta": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Freeze_Prolong_Lv2"
}
}
},
"UpgradeMeltLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemReactMeltDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
}
}
},
"UpgradeMeltLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_ElemReactMeltDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
},
"ReducePhysicalResistanceBySConductLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.DoActionByElementReactionMixin",
"entityTypes": [
"Monster"
],
"reactionTypes": [
"Superconductor"
],
"actions": [
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"modifierName": "UNIQUE_ReducePhysicResistenceLv1"
}
]
}
]
},
"ReducePhysicalResistanceBySConductLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.DoActionByElementReactionMixin",
"entityTypes": [
"Monster"
],
"reactionTypes": [
"Superconductor"
],
"actions": [
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"modifierName": "UNIQUE_ReducePhysicResistenceLv2"
}
]
}
]
},
"UNIQUE_ReducePhysicResistenceLv1": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 12.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_PhysicalSubHurtDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.4
}
}
},
"UNIQUE_ReducePhysicResistenceLv2": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 12.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_PhysicalSubHurtDelta": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.8
}
},
"onAdded": [
{
"$type": "MoleMole.Config.RemoveModifier",
"modifierName": "UNIQUE_ReducePhysicResistenceLv1"
}
]
}
},
"onAdded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "TowerDefenceV2_Ice"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "SpecialAbilitiesController"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "IS_TOWER",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Gear_TowerDefenceV2_IceBullet",
"abilitySpecials": {
"Ice_Attack_Ratio": {
"type": "float",
"dynamicValue": 0.5
},
"Ice_Element_Durability": {
"type": "float",
"dynamicValue": 50.0
},
"Ice_Extra_Damage_Lv1": {
"type": "float",
"dynamicValue": 1.25
},
"Ice_Extra_Damage_Lv2": {
"type": "float",
"dynamicValue": 2.5
},
"Ice_Explosion_Ratio": {
"type": "float",
"dynamicValue": 0.2
},
"Ice_Explosion_Range_Lv1": {
"type": "float",
"dynamicValue": 2.0
},
"Ice_Explosion_Range_Lv2": {
"type": "float",
"dynamicValue": 4.0
},
"Ice_Slowdown_Duration": {
"type": "float",
"dynamicValue": 5.0
},
"Ice_Slowdown_Lv1": {
"type": "float",
"dynamicValue": -1.0
},
"Ice_Slowdown_Lv2": {
"type": "float",
"dynamicValue": -1.0
},
"Ice_Resistancedown_Duration": {
"type": "float",
"dynamicValue": 5.0
},
"Ice_Resistancedown_Lv1": {
"type": "float",
"dynamicValue": -0.25
},
"Ice_Resistancedown_Lv2": {
"type": "float",
"dynamicValue": -0.5
}
},
"modifiers": {
"EffectController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_TDSpecialGrade_Ice",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerIce_01_Bullet"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "RootNode"
}
},
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerIce_01_Bullet_Trail"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "RootNode"
}
}
],
"failActions": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerIce_03_Bullet"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "RootNode"
}
},
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerIce_03_Bullet_Trail"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "RootNode"
}
}
]
}
]
},
"SpecialBulletControllerLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.ModifyDamageMixin",
"attackTags": [
"Ice_Base_Attack"
],
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Extra_Damage_Lv1"
},
"predicates": [
{
"$type": "MoleMole.Config.ByHasAbilityState",
"abilityState": "ElementFrozen"
}
]
}
]
},
"SpecialBulletControllerLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.ModifyDamageMixin",
"attackTags": [
"Ice_Base_Attack"
],
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Extra_Damage_Lv2"
},
"predicates": [
{
"$type": "MoleMole.Config.ByHasAbilityState",
"abilityState": "ElementFrozen"
}
]
}
]
},
"DebuffController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Ice Tower: Debuff controller activited!"
}
],
"onAttackLanded": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Ice Tower: Applying Ice debuff to the target!"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_Slowdown",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "UNIQUE_Slowdown_Debuff_Lv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_Slowdown",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "UNIQUE_Slowdown_Debuff_Lv2"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_Resistancedown",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "UNIQUE_Resistancedown_Debuff_Lv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_Resistancedown",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "UNIQUE_Resistancedown_Debuff_Lv2"
}
]
},
"UNIQUE_Slowdown_Debuff_Lv1": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Slowdown_Duration"
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Animator_MoveSpeedRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.25
}
},
"state": "SpeedDown"
},
"UNIQUE_Slowdown_Debuff_Lv2": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Slowdown_Duration"
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Animator_MoveSpeedRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.5
}
},
"state": "SpeedDown"
},
"UNIQUE_Resistancedown_Debuff_Lv1": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Resistancedown_Duration"
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_FireSubHurtDelta": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Resistancedown_Lv1"
},
"Actor_IceSubHurtDelta": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Resistancedown_Lv1"
},
"Actor_WaterSubHurtDelta": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Resistancedown_Lv1"
},
"Actor_WindSubHurtDelta": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Resistancedown_Lv1"
},
"Actor_RockSubHurtDelta": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Resistancedown_Lv1"
},
"Actor_GrassSubHurtDelta": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Resistancedown_Lv1"
},
"Actor_ElecSubHurtDelta": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Resistancedown_Lv1"
}
}
},
"UNIQUE_Resistancedown_Debuff_Lv2": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Resistancedown_Duration"
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_FireSubHurtDelta": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Resistancedown_Lv2"
},
"Actor_IceSubHurtDelta": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Resistancedown_Lv2"
},
"Actor_WaterSubHurtDelta": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Resistancedown_Lv2"
},
"Actor_WindSubHurtDelta": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Resistancedown_Lv2"
},
"Actor_RockSubHurtDelta": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Resistancedown_Lv2"
},
"Actor_GrassSubHurtDelta": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Resistancedown_Lv2"
},
"Actor_ElecSubHurtDelta": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Resistancedown_Lv2"
}
}
}
},
"onAdded": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Fire Tower: Bullet Built!"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "IS_ICE_BULLET",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "EffectController"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "DebuffController"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_TDSpecialGrade_Ice",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "SpecialBulletControllerLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_TDSpecialGrade_Ice",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "SpecialBulletControllerLv2"
}
],
"onAbilityStart": [
{
"$type": "MoleMole.Config.DamageByAttackValue",
"target": "Target",
"attackInfo": {
"attackTag": "Ice_Base_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Attack_Ratio"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Ice",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Element_Durability"
},
"strikeType": "Default",
"enBreak": 10.0
},
"hitPattern": {
"onHitEffectName": "none",
"hitImpulseType": "LV1",
"overrideHitImpulse": {
"hitLevel": "Light",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_Explosion",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByTarget"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Explosion_Range_Lv1"
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Explosion_Ratio"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Ice",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Element_Durability"
},
"strikeType": "Default",
"enBreak": 10.0
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerIce_04_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_Explosion",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornByTarget"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Explosion_Range_Lv2"
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Explosion_Ratio"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Ice",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Ice_Element_Durability"
},
"strikeType": "Default",
"enBreak": 10.0
},
"hitPattern": {
"onHitEffectName": "Eff_SceneObj_TowerIce_04_Hit",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
},
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Ice: Try to kill ice bullet"
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerIce_01_Hit"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByHitPoint",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
}
},
{
"$type": "MoleMole.Config.RemoveModifier",
"modifierName": "EffectController"
},
{
"$type": "MoleMole.Config.KillSelf"
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Gear_TowerDefenceV2_IceFog",
"abilitySpecials": {
"IceFog_Duration": {
"type": "float",
"dynamicValue": 5.0
},
"IceFog_Range": {
"type": "float",
"dynamicValue": 6.0
},
"IceFog_Damage_Lv1": {
"type": "float",
"dynamicValue": 0.5
},
"IceFog_Damage_Lv2": {
"type": "float",
"dynamicValue": 1.0
},
"IceFog_Damage_Element_Durability": {
"type": "float",
"dynamicValue": 50.0
}
},
"modifiers": {
"IceFogController": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "IceFog_Duration"
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"thinkInterval": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"onAdded": [
{
"$type": "MoleMole.Config.SendEffectTrigger",
"parameter": "Activate",
"type": "Bool",
"value": 1,
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerIce_ShieldActivated_01"
}
}
],
"onRemoved": [
{
"$type": "MoleMole.Config.SendEffectTrigger",
"parameter": "Kill",
"type": "Bool",
"value": 1,
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerIce_ShieldActivated_01"
}
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "DelayKillSelf"
}
],
"onThinkInterval": [
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Owner",
"key": "SGV_Ice_Fog",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Ice Tower: Ice Fog Damage Lv1!"
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "IceFog_Range"
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "IceFog_Damage_Lv1"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Ice",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "IceFog_Damage_Element_Durability"
},
"strikeType": "Default",
"enBreak": 0.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV1"
}
}
},
"targetType": "Enemy"
}
],
"failActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Ice Tower: Ice Fog Damage Lv2!"
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf"
},
"radius": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "IceFog_Range"
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "IceFog_Damage_Lv2"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Ice",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "IceFog_Damage_Element_Durability"
},
"strikeType": "Default",
"enBreak": 0.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV1"
}
}
},
"targetType": "Enemy"
}
]
}
]
},
"DelayKillSelf": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onRemoved": [
{
"$type": "MoleMole.Config.KillSelf"
}
]
}
},
"onAdded": [
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "IS_ICE_FOG",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "IceFogController"
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Gear_TowerDefenceV2_Mine",
"abilityMixins": [
{
"$type": "MoleMole.Config.AttachToGadgetStateMixin",
"modifierName": "ActiveEffect"
},
{
"$type": "MoleMole.Config.AttachToGadgetStateMixin",
"gadgetState": 201,
"modifierName": "DeactiveEffect"
}
],
"abilitySpecials": {
"Mine_Element_Durability": {
"type": "float",
"dynamicValue": 100.0
},
"Mine_Explode_Ratio": {
"type": "float",
"dynamicValue": 5.0
},
"Mine_Explode_Range": {
"type": "float",
"dynamicValue": 5.0
},
"Mine_Bonus_Lv1": {
"type": "float",
"dynamicValue": 7.0
},
"Mine_Bonus_Lv2": {
"type": "float",
"dynamicValue": 9.0
},
"Mine_Reset_Lv1": {
"type": "float",
"dynamicValue": 15.0
},
"Mine_Reset_Lv2": {
"type": "float",
"dynamicValue": 7.5
}
},
"modifiers": {
"ActiveEffect": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerBoom_01_Active"
},
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf"
}
},
{
"$type": "MoleMole.Config.SetAnimatorBool",
"boolID": "Active",
"value": true
}
]
},
"DeactiveEffect": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.SetAnimatorBool",
"boolID": "Active"
}
]
},
"UNIQUE_MineExplode": {
"modifierName": "",
"isUnique": true,
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Mine: Mine explode"
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_BombBarrel_01_Explode"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByTarget",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf"
},
"radius": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
}
},
"attackInfo": {
"attackTag": "Mine_Base_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Mine_Explode_Ratio"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Fire",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Mine_Element_Durability"
},
"strikeType": "Default",
"enBreak": 150.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
},
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_Mine_Reset",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"compareType": "MoreThanAndEqual"
}
],
"successActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Mine: Changing to deactive"
},
{
"$type": "MoleMole.Config.ExecuteGadgetLua",
"param1": 201
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_Mine_Reset",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "ResetCountdownLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_Mine_Reset",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "ResetCountdownLv2"
}
],
"failActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Mine: Kill Self"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "KillSelf"
}
]
}
]
},
"KillSelf": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.3
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onRemoved": [
{
"$type": "MoleMole.Config.KillSelf"
}
]
},
"TowerDefenceV2_Mine": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.TDPlayMixinV2",
"towerType": "Mine",
"baseCD": 4.0,
"baseAttackRange": 15.0
}
]
},
"SpecialAbilitiesController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_Mine_Extradamage",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.5
}
],
"modifierNameSteps": [
"ExtraDamageControllerLV1",
"ExtraDamageControllerLV2"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_Mine_Extraexplosion",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
}
],
"modifierNameSteps": [
"ExtraExplosionController"
]
}
]
},
"ExtraDamageControllerLV1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.ModifyDamageMixin",
"attackTags": [
"Mine_Base_Attack"
],
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Mine_Bonus_Lv1"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"predicates": [
{
"$type": "MoleMole.Config.ByTargetHPRatio",
"logic": "LesserOrEqual",
"HPRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
}
}
]
}
]
},
"ExtraDamageControllerLV2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.ModifyDamageMixin",
"attackTags": [
"Mine_Base_Attack"
],
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Mine_Bonus_Lv2"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"predicates": [
{
"$type": "MoleMole.Config.ByTargetHPRatio",
"logic": "LesserOrEqual",
"HPRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
}
}
]
}
]
},
"ExtraExplosionController": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAttackLanded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "HasExtraExploded",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"compareType": "NoneOrEqual"
}
],
"modifierName": "MonsterKillListener"
}
]
},
"MonsterKillListener": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.1
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onRemoved": [
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByEntityIsAlive",
"target": "Self"
}
],
"failActions": [
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Applier",
"modifierName": "UNIQUE_ExtraExplode"
}
]
}
]
},
"UNIQUE_ExtraExplode": {
"modifierName": "",
"isUnique": true,
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Mine: extra explode"
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_BombBarrel_01_Explode"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByTarget",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf"
},
"radius": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
}
},
"attackInfo": {
"attackTag": "Mine_Base_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Mine_Explode_Ratio"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Fire",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Mine_Element_Durability"
},
"strikeType": "Default",
"enBreak": 150.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "HasExtraExploded",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
]
},
"ResetCountdownLv1": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Mine_Reset_Lv1"
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onRemoved": [
{
"$type": "MoleMole.Config.ExecuteGadgetLua"
},
{
"$type": "MoleMole.Config.RemoveModifier",
"modifierName": "UNIQUE_MineExplode"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "HasExtraExploded",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.Predicated",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"topLimit": 1,
"entityTypePriority": [
"Monster"
],
"sortType": "Random",
"shapeName": "CircleR4",
"campTargetType": "Enemy",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"targetPredicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByEntityIsAlive"
}
],
"successActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Mine: Mine explode"
},
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Mine: Changing to deactive"
},
{
"$type": "MoleMole.Config.ExecuteGadgetLua",
"param1": 201
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_BombBarrel_01_Explode"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByTarget",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf"
},
"radius": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
}
},
"attackInfo": {
"attackTag": "Mine_Base_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Mine_Explode_Ratio"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Fire",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Mine_Element_Durability"
},
"strikeType": "Default",
"enBreak": 150.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_Mine_Reset",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "ApplyResetLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_Mine_Reset",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "ApplyResetLv2"
}
]
}
]
},
"ResetCountdownLv2": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Mine_Reset_Lv2"
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onRemoved": [
{
"$type": "MoleMole.Config.ExecuteGadgetLua"
},
{
"$type": "MoleMole.Config.RemoveModifier",
"modifierName": "UNIQUE_MineExplode"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "HasExtraExploded",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.Predicated",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"topLimit": 1,
"entityTypePriority": [
"Monster"
],
"sortType": "Random",
"shapeName": "CircleR4",
"campTargetType": "Enemy",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"targetPredicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByEntityIsAlive"
}
],
"successActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Mine: Changing to deactive"
},
{
"$type": "MoleMole.Config.ExecuteGadgetLua",
"param1": 201
},
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Mine: Mine explode"
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_BombBarrel_01_Explode"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByTarget",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
}
},
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackSphere",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf"
},
"radius": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
}
},
"attackInfo": {
"attackTag": "Mine_Base_Attack",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Mine_Explode_Ratio"
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementType": "Fire",
"elementDurability": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Mine_Element_Durability"
},
"strikeType": "Default",
"enBreak": 150.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV1",
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_Mine_Reset",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "ApplyResetLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_Mine_Reset",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "ApplyResetLv2"
}
]
}
]
},
"ApplyResetLv1": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.1
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onRemoved": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "ResetCountdownLv1"
}
]
},
"ApplyResetLv2": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.1
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onRemoved": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "ResetCountdownLv2"
}
]
}
},
"onAdded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "TowerDefenceV2_Mine"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "SpecialAbilitiesController"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "IS_TOWER",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"onFieldEnter": [
{
"$type": "MoleMole.Config.Predicated",
"target": "Target",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByEntityIsAlive"
},
{
"$type": "MoleMole.Config.ByTargetGadgetState",
"target": "Self"
}
],
"successActions": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "UNIQUE_MineExplode"
}
]
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Gear_TowerDefenceV2_Trap",
"abilityMixins": [
{
"$type": "MoleMole.Config.AttachToGadgetStateMixin",
"modifierName": "ActiveEffect"
},
{
"$type": "MoleMole.Config.AttachToGadgetStateMixin",
"gadgetState": 201,
"modifierName": "DeactiveEffect"
}
],
"abilitySpecials": {
"Trap_Base_Time": {
"type": "float",
"dynamicValue": 3.0
},
"Trap_Explode_Range": {
"type": "float",
"dynamicValue": 5.0
},
"Trap_Prolong_Lv1": {
"type": "float",
"dynamicValue": 5.0
},
"Trap_Prolong_Lv2": {
"type": "float",
"dynamicValue": 7.0
},
"Trap_Bonus_Lv1": {
"type": "float",
"dynamicValue": -0.5
},
"Trap_Bonus_Lv2": {
"type": "float",
"dynamicValue": -1.0
},
"Trap_Reset_Lv1": {
"type": "float",
"dynamicValue": 15.0
},
"Trap_Reset_Lv2": {
"type": "float",
"dynamicValue": 7.5
}
},
"modifiers": {
"ActiveEffect": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerTrap_01_Active"
},
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf"
}
}
]
},
"DeactiveEffect": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerTrap_01"
},
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf"
}
}
]
},
"TowerDefenceV2_Mine": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.TDPlayMixinV2",
"baseCD": 4.0,
"baseAttackRange": 15.0
}
]
},
"ConfineEnemy": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Trap_Base_Time"
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Animator_MoveSpeedRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -1.0
}
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerTrap_01_Confined"
},
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf"
}
},
{
"$type": "MoleMole.Config.AttachModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_Trap_Extradamage",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"compareType": "MoreThanAndEqual"
}
],
"modifierName": "UNIQUE_BonusDamageLv1"
},
{
"$type": "MoleMole.Config.AttachModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_Trap_Extradamage",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "UNIQUE_BonusDamageLv2"
}
]
},
"ConfineEnemyLv1": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Trap_Prolong_Lv1"
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Animator_MoveSpeedRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -1.0
}
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerTrap_01_Confined"
},
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf"
}
},
{
"$type": "MoleMole.Config.AttachModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_Trap_Extradamage",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"compareType": "MoreThanAndEqual"
}
],
"modifierName": "UNIQUE_BonusDamageLv1"
},
{
"$type": "MoleMole.Config.AttachModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_Trap_Extradamage",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "UNIQUE_BonusDamageLv2"
}
]
},
"ConfineEnemyLv2": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Trap_Prolong_Lv2"
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Animator_MoveSpeedRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -1.0
}
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerTrap_01_Confined"
},
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf"
}
},
{
"$type": "MoleMole.Config.AttachModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_Trap_Extradamage",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "UNIQUE_BonusDamageLv1"
},
{
"$type": "MoleMole.Config.AttachModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Applier",
"key": "SGV_Trap_Extradamage",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "UNIQUE_BonusDamageLv2"
}
]
},
"UNIQUE_BonusDamageLv1": {
"modifierName": "",
"isUnique": true,
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_SubHurtDelta": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Trap_Bonus_Lv1"
}
},
"state": "DefenseDown"
},
"UNIQUE_BonusDamageLv2": {
"modifierName": "",
"isUnique": true,
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_SubHurtDelta": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Trap_Bonus_Lv2"
}
},
"state": "DefenseDown"
},
"ResetCountdownLv1": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Trap_Reset_Lv1"
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onRemoved": [
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "TriggeredOnce",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.ExecuteGadgetLua"
},
{
"$type": "MoleMole.Config.Predicated",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"topLimit": 1,
"entityTypePriority": [
"Monster"
],
"sortType": "Random",
"shapeName": "CircleR4",
"campTargetType": "Enemy",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"targetPredicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByEntityIsAlive"
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "TriggeredOnce",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Trap: Changing to deactive"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "TriggeredOnce",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.ExecuteGadgetLua",
"param1": 201
},
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Trap: Trap active!"
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerTrap_01_Destroy"
}
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_Trap_Extratime",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"modifierName": "ConfineEnemy"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_Trap_Extratime",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "ConfineEnemyLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_Trap_Extratime",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "ConfineEnemyLv2"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_Trap_Reset",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "ApplyResetLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_Trap_Reset",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "ApplyResetLv2"
}
]
}
]
},
"ResetCountdownLv2": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Trap_Reset_Lv2"
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onRemoved": [
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "TriggeredOnce",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.ExecuteGadgetLua"
},
{
"$type": "MoleMole.Config.Predicated",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"topLimit": 1,
"entityTypePriority": [
"Monster"
],
"sortType": "Random",
"shapeName": "CircleR4",
"campTargetType": "Enemy",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"targetPredicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByEntityIsAlive"
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "TriggeredOnce",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Trap: Changing to deactive"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "TriggeredOnce",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.ExecuteGadgetLua",
"param1": 201
},
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Trap: Trap active!"
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerTrap_01_Destroy"
}
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_Trap_Extratime",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"modifierName": "ConfineEnemy"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_Trap_Extratime",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "ConfineEnemyLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_Trap_Extratime",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "ConfineEnemyLv2"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_Trap_Reset",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "ApplyResetLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_Trap_Reset",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "ApplyResetLv2"
}
]
}
]
},
"ApplyResetLv1": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.1
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onRemoved": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "ResetCountdownLv1"
}
]
},
"ApplyResetLv2": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.1
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onRemoved": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "ResetCountdownLv2"
}
]
}
},
"onAdded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "TowerDefenceV2_Mine"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "TriggeredOnce",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"onFieldEnter": [
{
"$type": "MoleMole.Config.Predicated",
"target": "Target",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByEntityIsAlive"
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "TriggeredOnce",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"successActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Trap: Trap active!"
},
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerTrap_01_Destroy"
}
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_Trap_Extratime",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"modifierName": "ConfineEnemy"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_Trap_Extratime",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "ConfineEnemyLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_Trap_Extratime",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "ConfineEnemyLv2"
},
{
"$type": "MoleMole.Config.Predicated",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_Trap_Reset",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"compareType": "MoreThanAndEqual"
}
],
"successActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Trap: Changing to deactive"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "TriggeredOnce",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.ExecuteGadgetLua",
"param1": 201
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_Trap_Reset",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "ResetCountdownLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "SGV_Trap_Reset",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "ResetCountdownLv2"
}
],
"failActions": [
{
"$type": "MoleMole.Config.DebugLog",
"content": "TD: Trap: Kill Self"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "TriggeredOnce",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.KillSelf"
}
]
}
]
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Level_Common_Property_Prop_TowerRepelV2",
"abilitySpecials": {
"MaxCrackTime": {
"type": "float",
"dynamicValue": 0.0
}
},
"modifiers": {
"UNIQUE_RepelEvent": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.3
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.TriggerAttackEvent",
"attackEvent": {
"attackPattern": {
"$type": "MoleMole.Config.ConfigAttackBox",
"triggerType": "TriggerNoRepeat",
"born": {
"$type": "MoleMole.Config.ConfigBornBySelf",
"offset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 3.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"direction": {
"$type": "MoleMole.Config.ConfigDirectionByDefault",
"angleOffset": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
}
},
"size": {
"x": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 12.0
},
"y": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 6.0
},
"z": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
}
}
},
"attackInfo": {
"attackTag": "",
"attenuationTag": "",
"attenuationGroup": "default",
"attackProperty": {
"damagePercentage": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"damagePercentageRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"strikeType": "Default",
"enBreak": 75.0
},
"hitPattern": {
"onHitEffectName": "default",
"hitImpulseType": "LV7",
"overrideHitImpulse": {
"hitLevel": "Air",
"hitImpulseX": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 800.0
},
"hitImpulseY": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 600.0
}
},
"hitHaltTimeScale": 0.05
}
}
},
"targetType": "Enemy"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "AddRepelTime"
}
],
"onAttackLanded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_SpeedDown",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "UNIQUE_SlowDownLv1"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Target",
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "SGV_SpeedDown",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
}
}
],
"modifierName": "UNIQUE_SlowDownLv2"
}
]
},
"DurationManager": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_Durability",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"DurationLv2",
"DurationLv3"
]
},
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_Durability",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 20.0
}
],
"modifierNameSteps": [
"ShieldControllerLv1",
"ShieldControllerLv2",
"ShieldControllerLv3"
]
}
]
},
"ShieldControllerLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "GV_RepelTimes",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
}
],
"modifierNameSteps": [
"ShieldNormal",
"ShieldDestory"
]
}
]
},
"ShieldControllerLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "GV_RepelTimes",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 3.5
}
],
"modifierNameSteps": [
"ShieldNormal",
"ShieldNormal",
"ShieldCrackV1",
"ShieldDestory"
]
}
]
},
"ShieldControllerLv3": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"modifierMixins": [
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "GV_RepelTimes",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 3.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 4.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.5
}
],
"modifierNameSteps": [
"ShieldNormal",
"ShieldNormal",
"ShieldCrackV1",
"ShieldCrackV1",
"ShieldCrackV2",
"ShieldDestory"
]
}
]
},
"DurationLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.SetOverrideMapValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.0
},
"overrideMapKey": "MaxCrackTime"
}
]
},
"DurationLv3": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.SetOverrideMapValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 4.0
},
"overrideMapKey": "MaxCrackTime"
}
]
},
"UNIQUE_SlowDownLv1": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 8.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Animator_MoveSpeedRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.3
}
},
"state": "SpeedDown"
},
"UNIQUE_SlowDownLv2": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 8.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Animator_MoveSpeedRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": -0.6
}
},
"state": "SpeedDown"
},
"ShieldBase": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerRepel_Shield"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "RootNode"
}
},
{
"$type": "MoleMole.Config.ApplyModifier",
"otherTargets": {
"$type": "MoleMole.Config.SelectTargetsByShape",
"sortType": "Nearest",
"shapeName": "CircleR6",
"campTargetType": "All",
"sizeRatio": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
},
"predicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"key": "GV_InRepelField",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
}
}
],
"modifierName": "TriggerRepel"
}
]
},
"TriggerRepel": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.3
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"target": "Applier",
"modifierName": "UNIQUE_FindInField"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "GV_InRepelField",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
]
},
"UNIQUE_FindInField": {
"modifierName": "",
"isUnique": true,
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.3
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"predicates": [
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "GV_RepelTimes",
"value": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "MaxCrackTime"
},
"compareType": "LessAndEqual"
}
],
"modifierName": "UNIQUE_RepelEvent"
}
]
},
"ShieldNormal": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
}
},
"ShieldCrackV1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerRepel_ShieldCracked_01"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "RootNode"
}
}
]
},
"ShieldCrackV2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AttachEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerRepel_ShieldCracked_02"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "RootNode"
}
}
]
},
"ShieldDestory": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "ShieldKill"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "ShieldRecoveryP1"
}
]
},
"ShieldKill": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.1
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onRemoved": [
{
"$type": "MoleMole.Config.FireEffect",
"effectPattern": {
"isDynamic": false,
"fixedValue": "Eff_SceneObj_TowerRepel_Destroy"
},
"born": {
"$type": "MoleMole.Config.ConfigBornByAttachPoint",
"attachPointName": "RootNode"
}
},
{
"$type": "MoleMole.Config.RemoveModifier",
"modifierName": "ShieldBase"
},
{
"$type": "MoleMole.Config.RemoveModifier",
"modifierName": "ShieldNormal"
},
{
"$type": "MoleMole.Config.RemoveModifier",
"modifierName": "ShieldCrackV1"
},
{
"$type": "MoleMole.Config.RemoveModifier",
"modifierName": "ShieldCrackV2"
}
]
},
"ShieldRecoveryP1": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onRemoved": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "ShieldRecoveryP2"
}
]
},
"ShieldRecoveryP2": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onRemoved": [
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "GV_RepelTimes",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "ShieldBase"
}
]
},
"AddRepelTime": {
"modifierName": "",
"duration": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.3
},
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"onAdded": [
{
"$type": "MoleMole.Config.AddGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "GV_RepelTimes",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
]
}
},
"onAdded": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "DurationManager"
},
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "ShieldBase"
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "GV_RepelTimes",
"useLimitRange": true,
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 5.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"onFieldEnter": [
{
"$type": "MoleMole.Config.Predicated",
"target": "Target",
"targetPredicates": [
{
"$type": "MoleMole.Config.ByEntityTypes",
"entityTypes": [
"Monster"
]
},
{
"$type": "MoleMole.Config.ByTargetGlobalValue",
"target": "Self",
"key": "GV_RepelTimes",
"value": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "MaxCrackTime"
},
"compareType": "LessAndEqual"
}
],
"successActions": [
{
"$type": "MoleMole.Config.ApplyModifier",
"modifierName": "UNIQUE_RepelEvent"
}
]
},
{
"$type": "MoleMole.Config.SetGlobalValue",
"target": "Target",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.0
},
"key": "GV_InRepelField",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
],
"onFieldExit": [
{
"$type": "MoleMole.Config.SetGlobalValue",
"target": "Target",
"value": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"key": "GV_InRepelField",
"maxValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"minValue": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
}
}
]
}
},
{
"Default": {
"$type": "MoleMole.Config.ConfigAbility",
"abilityName": "SceneObj_Gear_TowerDefenceV2_AttackRatioUp",
"abilityMixins": [
{
"$type": "MoleMole.Config.AttachModifierToSelfGlobalValueMixin",
"globalValueKey": "SGV_AttackRatioUp",
"defaultGlobalValueOnCreate": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.0
},
"valueSteps": [
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 0.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 1.5
},
{
"isFormula": false,
"isDynamic": false,
"fixedValue": 2.5
}
],
"modifierNameSteps": [
"AttackRatioUpLv1",
"AttackRatioUpLv2"
]
}
],
"abilitySpecials": {
"Attack_Up_Ratio_Lv1": {
"type": "float",
"dynamicValue": 2.5
},
"Attack_Up_Ratio_Lv2": {
"type": "float",
"dynamicValue": 5.0
}
},
"modifiers": {
"AttackRatioUpLv1": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AttackRatio": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Attack_Up_Ratio_Lv1"
}
}
},
"AttackRatioUpLv2": {
"modifierName": "",
"elementDurability": {
"isFormula": false,
"isDynamic": false,
"fixedValue": 100.0
},
"properties": {
"Actor_AttackRatio": {
"isFormula": false,
"isDynamic": true,
"dynamicKey": "Attack_Up_Ratio_Lv2"
}
}
}
}
}
}
]