
Bottled Ghost ↑
Throw a distressed Phantom bottle at a distant enemy, dealing poison attribute magic damage equal to M.Atk *3200% to the target and enemies within a 2.5-meter radius, and inflicting 【Distress】. Over the next 15 seconds, 【Distress】 deals 10% damage per second. The 【Distress】 effect can stack up to 15 layers. The 【Distress】 inflicted on monsters cannot be subject to Clearance, and when the 【Distress】 stacks exceed 10 layers, the target monster's Armor attribute will no longer resist poison attributes.
Skill Levels
• Throw a distressed Phantom bottle at a distant enemy, dealing poison attribute magic damage equal to M.Atk *3000% to the target and enemies within a 2.5-meter radius, and inflicting 【Distress】. Over the next 15 seconds, 【Distress】 deals 10% damage per second. The 【Distress】 effect can stack up to 15 layers. The 【Distress】 inflicted on monsters cannot be subject to Clearance, and when the 【Distress】 stacks exceed 10 layers, the target monster's Armor attribute will no longer resist poison attributes.
• Throw a distressed Phantom bottle at a distant enemy, dealing poison attribute magic damage equal to M.Atk *2800% to the target and enemies within a 2.5-meter radius, and inflicting 【Distress】. Over the next 15 seconds, 【Distress】 deals 10% damage per second. The 【Distress】 effect can stack up to 15 layers. The 【Distress】 inflicted on monsters cannot be subject to Clearance, and when the 【Distress】 stacks exceed 10 layers, the target monster's Armor attribute will no longer resist poison attributes.
• Throw a distressed Phantom bottle at a distant enemy, dealing poison attribute magic damage equal to M.Atk *2600% to the target and enemies within a 2.5-meter radius, and inflicting 【Distress】. Over the next 15 seconds, 【Distress】 deals 10% damage per second. The 【Distress】 effect can stack up to 15 layers. The 【Distress】 inflicted on monsters cannot be subject to Clearance, and when the 【Distress】 stacks exceed 10 layers, the target monster's Armor attribute will no longer resist poison attributes.
• Throw a distressed Phantom bottle at a distant enemy, dealing poison attribute magic damage equal to M.Atk *2400% to the target and enemies within a 2.5-meter radius, and inflicting 【Distress】. Over the next 15 seconds, 【Distress】 deals 10% damage per second. The 【Distress】 effect can stack up to 15 layers. The 【Distress】 inflicted on monsters cannot be subject to Clearance, and when the 【Distress】 stacks exceed 10 layers, the target monster's Armor attribute will no longer resist poison attributes.
• Throw a distressed Phantom bottle at a distant enemy, dealing poison attribute magic damage equal to M.Atk *2200% to the target and enemies within a 2.5-meter radius, and inflicting 【Distress】. Over the next 15 seconds, 【Distress】 deals 10% damage per second. The 【Distress】 effect can stack up to 15 layers. The 【Distress】 inflicted on monsters cannot be subject to Clearance, and when the 【Distress】 stacks exceed 10 layers, the target monster's Armor attribute will no longer resist poison attributes.
• Throw a distressed Phantom bottle at a distant enemy, dealing poison attribute magic damage equal to M.Atk *2000% to the target and enemies within a 2.5-meter radius, and inflicting 【Distress】. Over the next 15 seconds, 【Distress】 deals 10% damage per second. The 【Distress】 effect can stack up to 15 layers. The 【Distress】 inflicted on monsters cannot be subject to Clearance, and when the 【Distress】 stacks exceed 10 layers, the target monster's Armor attribute will no longer resist poison attributes.
• Throw a distressed Phantom bottle at a distant enemy, dealing poison attribute magic damage equal to M.Atk *1800% to the target and enemies within a 2.5-meter radius, and inflicting 【Distress】. Over the next 15 seconds, 【Distress】 deals 10% damage per second. The 【Distress】 effect can stack up to 15 layers. The 【Distress】 inflicted on monsters cannot be subject to Clearance, and when the 【Distress】 stacks exceed 10 layers, the target monster's Armor attribute will no longer resist poison attributes.
• Throw a distressed Phantom bottle at a distant enemy, dealing poison attribute magic damage equal to M.Atk *1600% to the target and enemies within a 2.5-meter radius, and inflicting 【Distress】. Over the next 15 seconds, 【Distress】 deals 10% damage per second. The 【Distress】 effect can stack up to 15 layers. The 【Distress】 inflicted on monsters cannot be subject to Clearance, and when the 【Distress】 stacks exceed 10 layers, the target monster's Armor attribute will no longer resist poison attributes.
• Throw a distressed Phantom bottle at a distant enemy, dealing poison attribute magic damage equal to M.Atk *1400% to the target and enemies within a 2.5-meter radius, and inflicting 【Distress】. Over the next 15 seconds, 【Distress】 deals 10% damage per second. The 【Distress】 effect can stack up to 15 layers. The 【Distress】 inflicted on monsters cannot be subject to Clearance, and when the 【Distress】 stacks exceed 10 layers, the target monster's Armor attribute will no longer resist poison attributes.
Formula
1function CommonFun.calcDamage_64501(srcUser, targetUser, params, damageParam, logger)
2 local Int = srcUser:GetProperty("Int")
3 local Dex = srcUser:GetProperty("Dex")
4 local Vit = srcUser:GetProperty("Vit")
5 local Luk = srcUser:GetProperty("Luk")
6 local MAtk = srcUser:GetProperty("MAtk")
7 local MAtkPer = srcUser:GetProperty("MAtkPer")
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) * raceparam * bossparam * bossparam2
33 local MDefReduc = CommonFun.CalcMDef(srcUser, targetUser)
34 local Str2 = targetUser:GetProperty("Str")
35 local Agi2 = targetUser:GetProperty("Agi")
36 local Dex2 = targetUser:GetProperty("Dex")
37 local Luk2 = targetUser:GetProperty("Luk")
38 local skilllv_bt = srcUser:GetLernedSkillLevel(2622_ARCHBISHOP:CASTIGATE)
39 local Luk_Ratio = 1
40 if math.min(Str2, Agi2, Vit2, Int2, Dex2, Luk2) == 0 and 0 < skilllv_bt then
41 Luk_Ratio = 1 + Luk / 500 * skilllv_bt * 0.1
42 end
43 if 0 < skilllv_bt and targetUser:GetNpcID() ~= 0 then
44 local Point = math.min(math.floor(Dex / 5), math.floor(Int / 5), math.floor(Luk / 5))
45 Luk_Ratio = Luk_Ratio + skilllv_bt * 0.002 * Point
46 end
47 local skillID, skillLevel = CommonFun.UnmergeSkillID(params.skillIDAndLevel)
48 if skillID == 2615_HIGH_PRIEST:FATAL_DREAM or skillID == 2633_ARCHBISHOP:FATAL_DREAM_ARCHBISHOP:FATAL_DREAM then
49 local targetid = targetUser:GetGuid()
50 local BasicValue = srcUser:GetTarInterferenceValue(targetid)
51 damChangePer = damChangePer * (1 + BasicValue / 10 * 0.04)
52 end
53 if skillID == 2637_ARCHBISHOP:STORM_GUST or skillID == 2639_ARCHBISHOP:HELL_WILD_ROAR then
54 local skilllv_jem = srcUser:GetLernedSkillLevel(2612_HIGH_PRIEST:GARM)
55 local skilllv_kq = srcUser:GetLernedSkillLevel(2620_ARCHBISHOP:RABIES_VACCINATION)
56 damChangePer = (3 + skilllv_jem * 1.3) * (1 + skilllv_kq * 0.03)
57 end
58 local A = ((MAtkFinal * MDefReduc * (1 - MDamReduc2) + MRefine) * (1 - RefineMDamReduc) * damChangePer * (1 + MDamIncrease) * CommonFun.calcMagicElement(srcUser, targetUser, params, damageParam) * elementparam2 - Vit2 / 2 * (1 + VitPer2) - Int2 * (1 + IntPer2)) * Luk_Ratio
59 if skillID == 2614_HIGH_PRIEST:BOTTLED_GHOST or skillID == 2633_ARCHBISHOP:FATAL_DREAM_ARCHBISHOP:FATAL_DREAM then
60 A = A * (1 + RangeDam)
61 end
62 if A <= 1 then
63 return 1
64 end
65 return A
66end