Poisonous Smoke
Lvl: 15 Buff Skill Delay: 1 sec SP: 46 Range: 6 Cast Time: 2

When in Poisonous Weapon status, turns the Poison dipped on the weapon into Poisonous Smoke that spreads along the ground. Enemy units within range receive Poison Physical Damage equivalent to 430%% of Atk and have a 50%% chance to be infected by a new poison. VIT of enemies within the Poisonous Smoke is reduced by 20 and Speed is decreased to 20%. Poisonous Smoke lasts for 20 sec and can be cast 3 times max

Lvl: 14 Buff Skill Delay: 1 sec SP: 44 Range: 6 Cast Time: 2
• When in Poisonous Weapon status, turns the Poison dipped on the weapon into Poisonous Smoke that spreads along the ground. Enemy units within range receive Poison Physical Damage equivalent to 430%% of Atk and have a 50%% chance to be infected by a new poison. VIT of enemies within the Poisonous Smoke is reduced by 16 and Speed is decreased to 16%. Poisonous Smoke lasts for 20 sec and can be cast 3 times max
Lvl: 13 Buff Skill Delay: 1 sec SP: 42 Range: 6 Cast Time: 2
• When in Poisonous Weapon status, turns the Poison dipped on the weapon into Poisonous Smoke that spreads along the ground. Enemy units within range receive Poison Physical Damage equivalent to 430%% of Atk and have a 50%% chance to be infected by a new poison. VIT of enemies within the Poisonous Smoke is reduced by 12 and Speed is decreased to 12%. Poisonous Smoke lasts for 20 sec and can be cast 3 times max
Lvl: 12 Buff Skill Delay: 1 sec SP: 40 Range: 6 Cast Time: 2
• When in Poisonous Weapon status, turns the Poison dipped on the weapon into Poisonous Smoke that spreads along the ground. Enemy units within range receive Poison Physical Damage equivalent to 430%% of Atk and have a 50%% chance to be infected by a new poison. VIT of enemies within the Poisonous Smoke is reduced by 8 and Speed is decreased to 8%. Poisonous Smoke lasts for 20 sec and can be cast 3 times max
Lvl: 11 Buff Skill Delay: 1 sec SP: 38 Range: 6 Cast Time: 2
• When in Poisonous Weapon status, turns the Poison dipped on the weapon into Poisonous Smoke that spreads along the ground. Enemy units within range receive Poison Physical Damage equivalent to 430%% of Atk and have a 50%% chance to be infected by a new poison. VIT of enemies within the Poisonous Smoke is reduced by 4 and Speed is decreased to 4%. Poisonous Smoke lasts for 20 sec and can be cast 3 times max
Lvl: 10 Buff Skill Delay: 1 sec SP: 36 Range: 6 Cast Time: 2
• In Poisonous Weapon state, turn poison on your weapon into poisonous smoke, which spreads to the ground Enemies within range take Poison Dmg of 430% Atk over time, with 50% chance to be infected with new poison. Poisonous Smoke lasts for 20 sec, and up to 3 can be unleashed.
Lvl: 9 Buff Skill Delay: 1 sec SP: 34 Range: 6 Cast Time: 2
• In Poisonous Weapon state, turn poison on your weapon into poisonous smoke, which spreads to the ground Enemies within range take Poison Dmg of 400% Atk over time, with 46% chance to be infected with new poison. Poisonous Smoke lasts for 20 sec, and up to 3 can be unleashed.
Lvl: 8 Buff Skill Delay: 1 sec SP: 32 Range: 6 Cast Time: 2
• In Poisonous Weapon state, turn poison on your weapon into poisonous smoke, which spreads to the ground Enemies within range take Poison Dmg of 370% Atk over time, with 42% chance to be infected with new poison. Poisonous Smoke lasts for 20 sec, and up to 3 can be unleashed.
Lvl: 7 Buff Skill Delay: 1 sec SP: 30 Range: 6 Cast Time: 2
• In Poisonous Weapon state, turn poison on your weapon into poisonous smoke, which spreads to the ground Enemies within range take Poison Dmg of 340% Atk over time, with 38% chance to be infected with new poison. Poisonous Smoke lasts for 20 sec, and up to 3 can be unleashed.
Lvl: 6 Buff Skill Delay: 1 sec SP: 28 Range: 6 Cast Time: 2
• In Poisonous Weapon state, turn poison on your weapon into poisonous smoke, which spreads to the ground Enemies within range take Poison Dmg of 310% Atk over time, with 34% chance to be infected with new poison. Poisonous Smoke lasts for 20 sec, and up to 3 can be unleashed.
Lvl: 5 Buff Skill Delay: 1 sec SP: 26 Range: 6 Cast Time: 2
• In Poisonous Weapon state, turn poison on your weapon into poisonous smoke, which spreads to the ground Enemies within range take Poison Dmg of 280% Atk over time, with 30% chance to be infected with new poison. Poisonous Smoke lasts for 20 sec, and up to 2 can be unleashed.
Lvl: 4 Buff Skill Delay: 1 sec SP: 24 Range: 6 Cast Time: 2
• In Poisonous Weapon state, turn poison on your weapon into poisonous smoke, which spreads to the ground Enemies within range take Poison Dmg of 250% Atk over time, with 26% chance to be infected with new poison. Poisonous Smoke lasts for 20 sec, and up to 2 can be unleashed.
Lvl: 3 Buff Skill Delay: 1 sec SP: 22 Range: 6 Cast Time: 2
• In Poisonous Weapon state, turn poison on your weapon into poisonous smoke, which spreads to the ground Enemies within range take Poison Dmg of 220% Atk over time, with 22% chance to be infected with new poison. Poisonous Smoke lasts for 20 sec, and up to 2 can be unleashed.
Lvl: 2 Buff Skill Delay: 1 sec SP: 20 Range: 6 Cast Time: 2
• In Poisonous Weapon state, turn poison on your weapon into poisonous smoke, which spreads to the ground Enemies within range take Poison Dmg of 190% Atk over time, with 18% chance to be infected with new poison. Poisonous Smoke lasts for 20 sec, and up to 2 can be unleashed.
Lvl: 1 Buff Skill Delay: 1 sec SP: 18 Range: 6 Cast Time: 2
• In Poisonous Weapon state, turn poison on your weapon into poisonous smoke, which spreads to the ground Enemies within range take Poison Dmg of 160% Atk over time, with 14% chance to be infected with new poison. Poisonous Smoke lasts for 20 sec, and up to 2 can be unleashed.

Enemy 6

function CommonFun.calcBuff_6(srcUser, targetUser, a, b, c, d, lv)
  if srcUser == nil or targetUser == nil then
    return 0
  end
  local MaxHp = targetUser:GetProperty("MaxHp")
  local A = MaxHp * (a + c) + b
  if 0 < A or a == 0 then
    return A
  end
  if srcUser:GetNpcID() == 0 and targetUser:HasBuffID(160000_BOSS_IMMUNE_EFFECT_:MAX_STACK_0) and targetUser.boss == false and targetUser.mini == false then
    return 0
  end
  if srcUser:GetNpcID() == 0 and (targetUser.boss or targetUser.mini) then
    local Vit = srcUser:GetProperty("Vit")
    local MAtk = srcUser:GetProperty("MAtk")
    local MAtkPer = srcUser:GetProperty("MAtkPer")
    local Refine = srcUser:GetProperty("Refine")
    local MRefine = srcUser:GetProperty("MRefine")
    local Def2 = targetUser:GetProperty("Def")
    local DefPer2 = targetUser:GetProperty("DefPer")
    local MDef2 = targetUser:GetProperty("MDef")
    local MDefPer2 = targetUser:GetProperty("MDefPer")
    local Vit2 = targetUser:GetProperty("Vit")
    local VitPer2 = targetUser:GetProperty("VitPer")
    local DamReduc2 = CommonFun.calcDamReDuc(srcUser, targetUser)
    local RefineDamReduc = targetUser:GetProperty("RefineDamReduc")
    local Int2 = targetUser:GetProperty("Int")
    local IntPer2 = targetUser:GetProperty("IntPer")
    local MDamReduc2 = CommonFun.calcMDamReDuc(srcUser, targetUser)
    local RefineMDamReduc = targetUser:GetProperty("RefineMDamReduc")
    local Str = srcUser:GetProperty("Str")
    local Dex = srcUser:GetProperty("Dex")
    local Luk = srcUser:GetProperty("Luk")
    local Atk = srcUser:GetProperty("Atk")
    local AtkPer = srcUser:GetProperty("AtkPer")
    local DamIncrease = srcUser:GetProperty("DamIncrease")
    local MDamIncrease = CommonFun.calcMDamIncrease(srcUser, targetUser)
    local IgnoreDef = srcUser:GetProperty("IgnoreDef")
    if 1 <= IgnoreDef then
      IgnoreDef = 1
    end
    local IgnoreMDef = srcUser:GetProperty("IgnoreMDef")
    if 1 <= IgnoreMDef then
      IgnoreMDef = 1
    end
    local raceparam = 1
    local srcRace = srcUser.race
    local targetRace = targetUser.race
    if srcUser:HasBuffID(49320_RACIAL_ANCIENT_RELICS_PERMANENT_:MAX_STACK_0) and srcUser:HasBuffID(49325_RACIAL_ANCIENT_RELICS_CD_:MAX_STACK_0) then
    elseif srcUser:HasBuffID(49320_RACIAL_ANCIENT_RELICS_PERMANENT_:MAX_STACK_0) then
      targetRace = 2
    end
    if targetUser:HasBuffID(49320_RACIAL_ANCIENT_RELICS_PERMANENT_:MAX_STACK_0) and targetUser:HasBuffID(49325_RACIAL_ANCIENT_RELICS_CD_:MAX_STACK_0) then
    elseif targetUser:HasBuffID(49320_RACIAL_ANCIENT_RELICS_PERMANENT_:MAX_STACK_0) then
      srcRace = 2
    end
    if nil == CommonFun.RaceProps[targetRace] then
      return 0
    end
    if nil == CommonFun.RaceProps[srcRace] then
      return 0
    end
    local raceInc = srcUser:GetProperty(CommonFun.RaceProps[targetRace][1])
    local raceRed = targetUser:GetProperty(CommonFun.RaceProps[srcRace][2])
    local raceparam = 1 + raceInc - raceRed
    if raceparam <= 0.1 then
      raceparam = 0.1
    end
    local MAtkFinal = MAtk * (1 + MAtkPer) * CommonFun.ShapeCorrection(srcUser, targetUser) * raceparam
    local AtkFinal = Atk * (1 + AtkPer) * CommonFun.ShapeCorrection(srcUser, targetUser) * raceparam
    if MAtkFinal <= AtkFinal then
      local DefReduc = CommonFun.CalcDef(srcUser, targetUser)
      A = (AtkFinal * DefReduc * (1 - DamReduc2) + Refine) * a * 100 * (1 - RefineDamReduc) * (1 + DamIncrease) - Vit2 * (1 + VitPer2) + b
    else
      local MDefReduc = CommonFun.CalcMDef(srcUser, targetUser)
      A = (MAtkFinal * MDefReduc * (1 - MDamReduc2) + MRefine) * a * 100 * (1 - RefineMDamReduc) * (1 + MDamIncrease) - Vit2 / 2 * (1 + VitPer2) - Int2 * (1 + IntPer2) + b
    end
  end
  local AttrFunction = srcUser:GetProperty("AttrFunction")
  local bitfunc = CommonFun.getBits(AttrFunction)
  if (targetUser.boss or targetUser.mini or targetUser.changelinepunish) and (targetUser.zoneType == 1 or targetUser.zoneType == 22) and targetUser.noPunishBoss == false and bitfunc[CommonFun.AttrFunction.JustInViceZone] == 1 and targetUser.isBossFromBranch == false then
    A = 0
  end
  if targetUser.boss and targetUser.zoneType == 22 and CommonFun.CheckStormBossMiss(targetUser, srcUser) then
    A = 0
  end
  if targetUser:GetNpcID() == 30043_YEAR or targetUser:GetNpcID() == 280303_WILDNESS_SPIRIT_BEAST or targetUser:GetNpcID() == 56008_GOMORA or targetUser:GetNpcID() == 56009_BALTAN or targetUser:GetNpcID() == 56010_GOLZA or targetUser:GetNpcID() == 56011_BEMSTAR or targetUser:GetNpcID() == 56012_ELEKING or targetUser:GetNpcID() == 56013_KING_JOE then
    A = -1
  end
  if targetUser:DamageAlways1() then
    A = -1
  end
  return A
end

Enemy 3541

function CommonFun.calcBuff_3541(srcUser, targetUser, a, b, c, d, lv)
  local Str = srcUser:GetProperty("Str")
  local Dex = srcUser:GetProperty("Dex")
  local Luk = srcUser:GetProperty("Luk")
  local Atk = srcUser:GetProperty("Atk")
  local AtkPer = srcUser:GetProperty("AtkPer")
  local DamIncrease = srcUser:GetProperty("DamIncrease")
  local IgnoreDef = 0
  local IgnoreDef1 = srcUser:GetProperty("IgnoreDef")
  local IgnoreDef2 = srcUser:GetProperty("IgnoreEquipDef")
  if targetUser.boss or targetUser.mini then
    IgnoreDef = IgnoreDef1
  else
    IgnoreDef = IgnoreDef1 + IgnoreDef2
  end
  if 1 <= IgnoreDef then
    IgnoreDef = 1
  end
  local Refine = srcUser:GetProperty("Refine")
  local Def2 = targetUser:GetProperty("Def")
  local DefPer2 = targetUser:GetProperty("DefPer")
  local Vit2 = targetUser:GetProperty("Vit")
  local VitPer2 = targetUser:GetProperty("VitPer")
  local DamReduc2 = CommonFun.calcDamReDuc(srcUser, targetUser)
  local RefineDamReduc = targetUser:GetProperty("RefineDamReduc")
  local Hp2 = targetUser:GetProperty("Hp")
  local MaxHp2 = targetUser:GetProperty("MaxHp")
  local damChangePer = 0.3 * lv + 1.3
  local AttrEffect = srcUser:GetProperty("AttrEffect")
  local bits = CommonFun.getBits(AttrEffect)
  local raceparam = 1
  local srcRace = srcUser.race
  local targetRace = targetUser.race
  if srcUser:HasBuffID(49320_RACIAL_ANCIENT_RELICS_PERMANENT_:MAX_STACK_0) and srcUser:HasBuffID(49325_RACIAL_ANCIENT_RELICS_CD_:MAX_STACK_0) then
  elseif srcUser:HasBuffID(49320_RACIAL_ANCIENT_RELICS_PERMANENT_:MAX_STACK_0) then
    targetRace = 2
  end
  if targetUser:HasBuffID(49320_RACIAL_ANCIENT_RELICS_PERMANENT_:MAX_STACK_0) and targetUser:HasBuffID(49325_RACIAL_ANCIENT_RELICS_CD_:MAX_STACK_0) then
  elseif targetUser:HasBuffID(49320_RACIAL_ANCIENT_RELICS_PERMANENT_:MAX_STACK_0) then
    srcRace = 2
  end
  if nil == CommonFun.RaceProps[targetRace] then
    return 0
  end
  if nil == CommonFun.RaceProps[srcRace] then
    return 0
  end
  local raceInc = srcUser:GetProperty(CommonFun.RaceProps[targetRace][1])
  local raceRed = targetUser:GetProperty(CommonFun.RaceProps[srcRace][2])
  local raceparam = 1 + raceInc - raceRed
  local mapid, maptype = srcUser:GetMapInfo()
  if maptype == PVP_MAPS then
    local B = raceRed - raceInc
    B = B < -1 and -1 or 1 < B and 1 or B
    B = math.floor(B * 1000) / 1000
    B = B + 0.3 * (1 - math.sin(B * 3.14 / 2))
    raceparam = 1 - B
  end
  if raceparam <= 0.1 then
    raceparam = 0.1
  end
  local srcAtkElement = 10
  local targetDefElement = targetUser:GetProperty("DefAttr")
  local ElementRate = CommonFun.GetElementRate(srcUser, srcAtkElement, targetUser, targetDefElement)
  local NumXp1 = srcUser:GetRunePoint(31019_AESIR_POISON_ELEMENT_DAMAGES_TO_OTHER_DEFENSES_RESTRAIN_FACTOR_10)
  local NumXp2 = srcUser:GetRunePoint(31020_AESIR_POISON_ELEMENT_DAMAGES_TO_OTHER_DEFENSES_RESTRAIN_FACTOR_10)
  local RuneRate = (NumXp1 + NumXp2) * 0.1
  ElementRate = ElementRate + RuneRate
  if (srcUser:HasBuffID(69650_8608_:MAX_STACK_0) or srcUser:HasBuffID(71090_10658_:MAX_STACK_0)) and 1 < ElementRate then
    ElementRate = ElementRate * 1.1
  end
  if targetUser:HasBuffID(49130_DIVINE_HYMN_CARVER_:MAX_STACK_0) then
    ElementRate = math.min(ElementRate, 1)
  end
  if srcUser:HasBuffID(49210_7892_:MAX_STACK_0) then
    ElementRate = ElementRate + 0.15
  end
  if nil == CommonFun.NatureProps[srcAtkElement] or nil == CommonFun.NatureProps[targetDefElement] or nil == targetDefElement then
    return 0
  end
  local elementInc = srcUser:GetProperty(CommonFun.NatureProps[targetDefElement][1])
  local elementRed = targetUser:GetProperty(CommonFun.NatureProps[srcAtkElement][2])
  local elementAtk = srcUser:GetProperty(CommonFun.NatureProps[srcAtkElement][3])
  local elementparam = (1 + elementInc) * ElementRate
  local elementparam2 = 1 + elementAtk - elementRed
  local mapid, maptype = srcUser:GetMapInfo()
  if maptype == PVP_MAPS then
    local B = elementRed - elementAtk
    B = B < -1 and -1 or 1 < B and 1 or B
    B = math.floor(B * 1000) / 1000
    B = B + 0.3 * (1 - math.sin(B * 3.14 / 2))
    elementparam2 = 1 - B
  end
  if elementparam2 <= 0.1 then
    elementparam2 = 0.1
  end
  local ele = elementparam * elementparam2
  if targetDefElement == nil or ElementRate == nil or elementInc == nil or elementRed == nil or elementAtk == nil then
    ele = 1
  end
  local NpcParam = CommonFun.NpcParam(srcUser, targetUser, params, damageParam, logger)
  local BaseAtk = Str * 2 + math.floor(Str * Str / 100) + math.floor(Dex / 5) + math.floor(Luk / 5)
  local AtkFinal = ((Atk - BaseAtk) * (1 + AtkPer) * CommonFun.ShapeCorrection(srcUser, targetUser) * ele + BaseAtk) * raceparam * NpcParam
  local DefReduc = CommonFun.CalcDef(srcUser, targetUser)
  local bloodrain = 1
  local StateEffect = targetUser:GetProperty("StateEffect")
  local bits3 = CommonFun.getBits(StateEffect)
  if bits3[CommonFun.StateEffect.Poison] == 1 and srcUser:HasBuffID(64350_2982_:MAX_STACK_0) then
    bloodrain = bloodrain + 0.1
  end
  local A = -((AtkFinal * DefReduc * (1 - DamReduc2) + Refine) * damChangePer * (1 - RefineDamReduc) * (1 + DamIncrease) - Vit2 * (1 + VitPer2)) * bloodrain
  if bits[CommonFun.AttrEffect.Hualiduanjian] == 1 then
    return A * 1.5
  end
  local AttrFunction = srcUser:GetProperty("AttrFunction")
  local bitfunc = CommonFun.getBits(AttrFunction)
  if (targetUser.boss or targetUser.mini or targetUser.changelinepunish) and (targetUser.zoneType == 1 or targetUser.zoneType == 22) and targetUser.noPunishBoss == false and bitfunc[CommonFun.AttrFunction.JustInViceZone] == 1 and targetUser.isBossFromBranch == false then
    A = 0
  end
  if targetUser.boss and targetUser.zoneType == 22 and CommonFun.CheckStormBossMiss(targetUser, srcUser) then
    A = 0
  end
  if targetUser:GetNpcID() == 30043_YEAR or targetUser:GetNpcID() == 280303_WILDNESS_SPIRIT_BEAST or targetUser:GetNpcID() == 56008_GOMORA or targetUser:GetNpcID() == 56009_BALTAN or targetUser:GetNpcID() == 56010_GOLZA or targetUser:GetNpcID() == 56011_BEMSTAR or targetUser:GetNpcID() == 56012_ELEKING or targetUser:GetNpcID() == 56013_KING_JOE then
    A = -1
  end
  if targetUser:DamageAlways1() then
    A = -1
  end
  if targetUser:HasBuffID(20610050_ANTI_GRAVITY_ARMOR_FLEE_HELL_PLANT_:MAX_STACK_0) and targetUser:HasBuffID(117860_HOVER_:MAX_STACK_0) or targetUser:HasBuffID(20610050_ANTI_GRAVITY_ARMOR_FLEE_HELL_PLANT_:MAX_STACK_0) and targetUser:HasBuffID(184020_ANTI_GRAVITY_ARMOR_FLEE_HELL_PLANT_:MAX_STACK_0) then
    A = 0
  end
  if GetNpcID == 280709_DENSE_FOREST_SQUIRREL or GetNpcID == 280436_KLULU then
    A = math.floor(A / 100)
  end
  return A
end

Enemy

{
  "id": 116013,
  "BuffName": "Poisonous Weapon [Poisoned]",
  "BuffRate": {
    "Odds": 100
  },
  "BuffType": {
    "isgain": 0,
    "isdisperse": 0
  },
  "BuffEffect": {
    "type": "StatusChange",
    "DefPer": -0.25,
    "AttrEffect": [
      3,
      4
    ],
    "StateEffect": "1_Poison",
    "IsForceStatus": 1
  },
  "BuffStateID": 116013
}

Enemy

{
  "id": 116014,
  "BuffDesc": "New Poison: decrease Def, stop restoring MP, loses HP. Cannot be removed",
  "BuffIcon": "skillbuff_178001",
  "BuffName": "Poisonous Weapon [Poisoned]",
  "BuffRate": {
    "Odds": 100
  },
  "BuffType": {
    "isgain": 0,
    "isdisperse": 0
  },
  "IconType": 1,
  "BuffEffect": {
    "Hp": {
      "a": -0.03,
      "b": -3,
      "type": 6
    },
    "type": "HpReduce",
    "EquipASPD": {
      "a": 0,
      "b": 0,
      "c": 31071,
      "type": 5020
    },
    "MoveSpdPer": {
      "a": 0,
      "b": 0,
      "c": 31072,
      "type": 5020
    },
    "StateEffect": "1_Poison",
    "limit_layer": 3,
    "BeHealEncPer": {
      "a": 0,
      "b": 0,
      "c": 34070,
      "d": -0.05,
      "type": 3250
    },
    "IsForceStatus": 1
  }
}

Enemy

{
  "id": 116030,
  "BuffName": "Poisonous Smoke",
  "BuffRate": {
    "Odds": {
      "type": 3021
    }
  },
  "BuffEffect": {
    "id": [
      116013,
      116014
    ],
    "type": "AddBuff"
  }
}

Enemy

{
  "id": 116031,
  "BuffName": "Poisonous Smoke",
  "BuffRate": {
    "Odds": 100
  },
  "BuffEffect": {
    "Hp": {
      "type": 3541
    },
    "type": "HSPChange"
  }
}

Enemy

{
  "id": 116032,
  "BuffName": "Poisonous Smoke [Peak 2.0]",
  "BuffRate": {
    "Odds": 100
  },
  "BuffEffect": {
    "Vit": {
      "a": -4,
      "b": 40,
      "type": 1
    },
    "type": "AttrChange",
    "MoveSpdPer": {
      "a": -0.04,
      "b": 0.4,
      "type": 1
    }
  }
}

Enemy

{
  "id": 116033,
  "BuffName": "Poisonous Smoke (Deepen Wound)",
  "BuffRate": {
    "Odds": {
      "a": 0,
      "b": 30,
      "c": 20310120,
      "type": 5040
    }
  },
  "BuffEffect": {
    "id": [
      116051,
      116052,
      116053
    ],
    "type": "AddBuff"
  }
}

Enemy

{
  "id": 116051,
  "BuffName": "Deepen Wound",
  "BuffRate": {
    "Odds": 100
  },
  "BuffEffect": {
    "num": 1,
    "type": "Disperse",
    "value": "GainBuff"
  },
  "BuffStateID": 20241
}

Enemy

{
  "id": 116052,
  "BuffDesc": "Healing received reduced.",
  "BuffIcon": "skillbuff_commonbuff",
  "BuffName": "Deepen Wound (Rune)",
  "BuffRate": {
    "Odds": 100
  },
  "BuffType": {
    "isgain": 0,
    "isdisperse": 1
  },
  "IconType": 1,
  "BuffEffect": {
    "type": "AttrChange",
    "BeHealEncPer": {
      "a": 0,
      "b": 0,
      "c": 31041,
      "type": 5020
    }
  }
}

Enemy

{
  "id": 116053,
  "BuffDesc": "Cannot revive in place.",
  "BuffIcon": "skillbuff_commonbuff",
  "BuffName": "Deepen Wound (Rune)",
  "BuffRate": {
    "Odds": 100
  },
  "BuffType": {
    "isgain": 0,
    "isdisperse": 1
  },
  "IconType": 1,
  "BuffEffect": {
    "type": "NoRelive"
  },
  "BuffStateID": 116053
}

Formula

{
  "id": 1103015,
  "Buff": {
    "enemy": [
      116030,
      116031,
      116032,
      116033
    ]
  },
  "Cost": 1,
  "Desc": [
    {
      "id": 1103001,
      "params": [
        20,
        20
      ]
    }
  ],
  "Icon": "skill_1103001",
  "Camps": "Enemy",
  "Level": 15,
  "Logic": "SkillPointRange",
  "DescId": "##170943",
  "NameZh": "##158512",
  "CastAct": "reading",
  "DelayCD": 1,
  "Fire_EP": 3,
  "SE_cast": "Common/Magic_cast",
  "Pvp_buff": {
    "enemy": [
      116030,
      116031,
      116032,
      116033
    ]
  },
  "AttackAct": [
    "use_skill"
  ],
  "Attack_EP": 3,
  "Lead_Type": {
    "CCT": 0,
    "FCT": 2,
    "type": 2
  },
  "SE_attack": "Skill/PoisonFog_buff",
  "SkillCost": {
    "sp": 46
  },
  "SkillType": "Buff",
  "Target_EP": 2,
  "DamageType": 4,
  "Logic_Param": {
    "count": 20,
    "range": 2,
    "interval": 1,
    "max_count": 3,
    "no_select": 1,
    "isCountTrap": 1,
    "trap_effect": "PoisonFog_buff,LowRange_B"
  },
  "Launch_Range": 6,
  "PreCondition": {
    "ProType": 7
  },
  "AutoCondition": [
    {
      "time": 10,
      "type": 1
    }
  ]
}