Incendiary Gun

Incendiary Gun

Lv 5AttackMagic

After preparing for 0.2 seconds, fires Energy Cannon toward targets in the front, dealing (M. ATK + Self STR x Self VIT/5) x 2400% Fire M. DMG to enemies in a 3 x 10-meter range. There is 30% chance to inflict [Burn] to the enemies. Deals additional 50% DMG to monsters

CD: 1 sec
Range: 8

Skill Levels

Lvl: 4
Attack
Magic
CD: 1 sec
Skill Delay: 1 sec
SP: 124
Range: 8

• After preparing for 0.2 seconds, fires Energy Cannon toward targets in the front, dealing (M. ATK + Self STR x Self VIT/5) x 2160% Fire M. DMG to enemies in a 3 x 10-meter range. There is 26% chance to inflict [Burn] to the enemies. Deals additional 40% DMG to monsters

Lvl: 3
Attack
Magic
CD: 1 sec
Skill Delay: 1 sec
SP: 112
Range: 8

• After preparing for 0.2 seconds, fires Energy Cannon toward targets in the front, dealing (M. ATK + Self STR x Self VIT/5) x 1920% Fire M. DMG to enemies in a 3 x 10-meter range. There is 22% chance to inflict [Burn] to the enemies. Deals additional 30% DMG to monsters

Lvl: 2
Attack
Magic
CD: 1 sec
Skill Delay: 1 sec
SP: 100
Range: 8

• After preparing for 0.2 seconds, fires Energy Cannon toward targets in the front, dealing (M. ATK + Self STR x Self VIT/5) x 1680% Fire M. DMG to enemies in a 3 x 10-meter range. There is 18% chance to inflict [Burn] to the enemies. Deals additional 20% DMG to monsters

Lvl: 1
Attack
Magic
CD: 1 sec
Skill Delay: 1 sec
SP: 88
Range: 8

• After preparing for 0.2 seconds, fires Energy Cannon toward targets in the front, dealing (M. ATK + Self STR x Self VIT/5) x 1440% Fire M. DMG to enemies in a 3 x 10-meter range. There is 14% chance to inflict [Burn] to the enemies. Deals additional 10% DMG to monsters

Formula

1function CommonFun.calcDamage_63501(srcUser, targetUser, params, damageParam, logger)
2  local Int = srcUser:GetProperty("Int")
3  local Vit = srcUser:GetProperty("Vit")
4  local Str = srcUser:GetProperty("Str")
5  local MAtk = srcUser:GetProperty("MAtk")
6  local MAtkPer = srcUser:GetProperty("MAtkPer")
7  local RangeDam = srcUser:GetProperty("RangeDam")
8  local MDamIncrease = CommonFun.calcMDamIncrease(srcUser, targetUser)
9  local IgnoreMDef = srcUser:GetProperty("IgnoreMDef")
10  if 1 <= IgnoreMDef then
11    IgnoreMDef = 1
12  end
13  local MRefine = srcUser:GetProperty("MRefine")
14  local RangeDam = srcUser:GetProperty("RangeDam")
15  local srcAtkElement = CommonFun.GetUserAtkAttr(srcUser, targetUser, params, damageParam)
16  local targetDefElement = targetUser:GetProperty("DefAttr")
17  local elementparam2 = CommonFun.CalcElementParam2(srcUser, targetUser, params, damageParam, logger)
18  local raceparam = CommonFun.CalcRaceParam(srcUser, targetUser, params, damageParam, logger)
19  local raceparam2 = CommonFun.CalcRaceParam2(srcUser, targetUser, params, damageParam, logger)
20  local bossparam = CommonFun.CalcBossParam(srcUser, targetUser, params, damageParam, logger)
21  local bossparam2 = CommonFun.CalcBossParam2(srcUser, targetUser, params, damageParam, logger)
22  local MDef2 = targetUser:GetProperty("MDef")
23  local MDefPer2 = targetUser:GetProperty("MDefPer")
24  local Vit2 = targetUser:GetProperty("Vit")
25  local VitPer2 = targetUser:GetProperty("VitPer")
26  local Int2 = targetUser:GetProperty("Int")
27  local IntPer2 = targetUser:GetProperty("IntPer")
28  local MDamReduc2 = CommonFun.calcMDamReDuc(srcUser, targetUser)
29  local RefineMDamReduc = CommonFun.calcRefineMDamReduc(srcUser, targetUser)
30  local damChangePer = damageParam.damChangePer
31  local BaseMAtk = Int + math.floor(Int * Int / 100)
32  local MAtkFinal = ((MAtk - BaseMAtk) * (1 + MAtkPer) + BaseMAtk + Str * Vit / 5) * raceparam * bossparam * bossparam2
33  local MDefReduc = CommonFun.CalcMDef(srcUser, targetUser)
34  local skilllv_fsp = srcUser:GetLernedSkillLevel(2592_HIGH_PRIEST:INCENDIARY_GUN)
35  local skilllv_lx = srcUser:GetLernedSkillLevel(2598_HIGH_PRIEST:RECHARGEABLE_INCENDIARY_GUN)
36  local skilllv_lgp = srcUser:GetLernedSkillLevel(2600_HIGH_PRIEST:SPARK_FLOW)
37  local skillID, skillLevel = CommonFun.UnmergeSkillID(params.skillIDAndLevel)
38  if skillID == 2592_HIGH_PRIEST:INCENDIARY_GUN_HIGH_PRIEST:INCENDIARY_GUN and damageParam.elementparam == 1 and 1 <= skilllv_lgp and srcUser:HasBuffID(136910_THUNDERBOLT_CORE_:MAX_STACK_0) then
39    damChangePer = (skilllv_fsp * 2.4 + 12) * skilllv_lgp * 0.1
40  end
41  if skillID == 2598_HIGH_PRIEST:RECHARGEABLE_INCENDIARY_GUN_HIGH_PRIEST:RECHARGEABLE_INCENDIARY_GUN_HIGH_PRIEST:RECHARGEABLE_INCENDIARY_GUN and damageParam.elementparam == 4 then
42    local GemValue = srcUser:GetGemValue(203101_RECHARGEABLE_INCENDIARY_GUN_DMG_PERCENTAGE)
43    local GemDam = 1 + GemValue / 100000
44    local Fifth = 1
45    local MaxSp = srcUser:GetProperty("MaxSp")
46    local Sp = srcUser:GetProperty("Sp")
47    if srcUser:HasBuffID(90004734_VAULT_LIGHTNING_PUNCH_1_TIER_5_:MAX_STACK_0) and srcUser:HasBuffID(136910_THUNDERBOLT_CORE_:MAX_STACK_0) then
48      Fifth = Fifth + 0.15 * Sp / MaxSp
49    end
50    damChangePer = (skilllv_fsp * 2.4 + 12) * (skilllv_lx * 0.02 + 0.3) * GemDam * Fifth
51  end
52  if skillID == 2598_HIGH_PRIEST:RECHARGEABLE_INCENDIARY_GUN_HIGH_PRIEST:RECHARGEABLE_INCENDIARY_GUN_HIGH_PRIEST:RECHARGEABLE_INCENDIARY_GUN and damageParam.elementparam == 1 and 1 <= skilllv_lgp and srcUser:HasBuffID(136910_THUNDERBOLT_CORE_:MAX_STACK_0) then
53    local GemValue = srcUser:GetGemValue(203101_RECHARGEABLE_INCENDIARY_GUN_DMG_PERCENTAGE)
54    local GemDam = 1 + GemValue / 100000
55    local Fifth = 1
56    local MaxSp = srcUser:GetProperty("MaxSp")
57    local Sp = srcUser:GetProperty("Sp")
58    if srcUser:HasBuffID(90004734_VAULT_LIGHTNING_PUNCH_1_TIER_5_:MAX_STACK_0) and srcUser:HasBuffID(136910_THUNDERBOLT_CORE_:MAX_STACK_0) then
59      Fifth = Fifth + 0.15 * Sp / MaxSp
60    end
61    damChangePer = (skilllv_fsp * 2.4 + 12) * (skilllv_lx * 0.02 + 0.3) * skilllv_lgp * 0.1 * GemDam * Fifth
62  end
63  local A = (MAtkFinal * MDefReduc * (1 - MDamReduc2) + MRefine) * (1 - RefineMDamReduc) * damChangePer * (1 + MDamIncrease) * CommonFun.calcMagicElement(srcUser, targetUser, params, damageParam) * elementparam2 * (1 + RangeDam) - Vit2 / 2 * (1 + VitPer2) - Int2 * (1 + IntPer2)
64  if targetUser:GetNpcID() ~= 0 and (skillID == 2592_HIGH_PRIEST:INCENDIARY_GUN_HIGH_PRIEST:INCENDIARY_GUN or skillID == 2598_HIGH_PRIEST:RECHARGEABLE_INCENDIARY_GUN_HIGH_PRIEST:RECHARGEABLE_INCENDIARY_GUN_HIGH_PRIEST:RECHARGEABLE_INCENDIARY_GUN) then
65    A = A * (1 + skilllv_fsp * 0.1)
66  end
67  if A <= 1 then
68    return 1
69  end
70  return A
71end
Preserved HTML snapshot from ROM Handbook