Boiling

Boiling

Lv 1AttackPhysical

Field explosion. Actual form emerges. Inflict severe DMG on enemy units within the domain and grant nearby Monsters the ability to attack on their own initiative and explode after death.

Range: 10

Formula

1function CommonFun.calcDamage_8038(srcUser, targetUser, params, damageParam, logger)
2  local Luk = srcUser:GetProperty("Luk")
3  local Int = srcUser:GetProperty("Int")
4  local Vit = srcUser:GetProperty("Vit")
5  local MAtk = srcUser:GetProperty("MAtk")
6  local MAtkPer = srcUser:GetProperty("MAtkPer")
7  local MDamIncrease = CommonFun.calcMDamIncrease(srcUser, targetUser)
8  local IgnoreMDef = srcUser:GetProperty("IgnoreMDef")
9  if 1 <= IgnoreMDef then
10    IgnoreMDef = 1
11  end
12  local MRefine = srcUser:GetProperty("MRefine")
13  local srcAtkElement = CommonFun.GetUserAtkAttr(srcUser, targetUser, params, damageParam)
14  local targetDefElement = targetUser:GetProperty("DefAttr")
15  local elementparam2 = CommonFun.CalcElementParam2(srcUser, targetUser, params, damageParam, logger)
16  local raceparam = CommonFun.CalcRaceParam(srcUser, targetUser, params, damageParam, logger)
17  local raceparam2 = CommonFun.CalcRaceParam2(srcUser, targetUser, params, damageParam, logger)
18  local bossparam = CommonFun.CalcBossParam(srcUser, targetUser, params, damageParam, logger)
19  local bossparam2 = CommonFun.CalcBossParam2(srcUser, targetUser, params, damageParam, logger)
20  local MDef2 = targetUser:GetProperty("MDef")
21  local MDefPer2 = targetUser:GetProperty("MDefPer")
22  local Vit2 = targetUser:GetProperty("Vit")
23  local VitPer2 = targetUser:GetProperty("VitPer")
24  local Int2 = targetUser:GetProperty("Int")
25  local IntPer2 = targetUser:GetProperty("IntPer")
26  local MDamReduc2 = CommonFun.calcMDamReDuc(srcUser, targetUser)
27  local RefineMDamReduc = CommonFun.calcRefineMDamReduc(srcUser, targetUser)
28  local damChangePer = damageParam.damChangePer
29  local damChangePer1 = damageParam.damChangePer1
30  if damChangePer1 == nil then
31    damChangePer1 = 0
32  end
33  local BaseMAtk = Int + math.floor(Int * Int / 100)
34  local MAtkFinal = ((MAtk - BaseMAtk) * (1 + MAtkPer) + BaseMAtk) * raceparam * bossparam * bossparam2
35  local MDefReduc = CommonFun.CalcMDef(srcUser, targetUser)
36  local A = (MAtkFinal * MDefReduc * (1 - MDamReduc2) + MRefine) * damChangePer * (1 - RefineMDamReduc) * (1 + MDamIncrease) * CommonFun.calcMagicElement(srcUser, targetUser, params, damageParam) * elementparam2 - Vit2 / 2 * (1 + VitPer2) - Int2 * (1 + IntPer2) + damChangePer1
37  if A <= 1 then
38    return 1
39  end
40  return A
41end
Preserved HTML snapshot from ROM Handbook