
Pierce
Attacks the target repeatedly with spears, dealing (Atk500%) Dmg Applies combo attacks based on enemy size. Small/Medium/Large: 1/2/3 times. Spear type weapons are required.
Aesir Effects
Skill Levels
• Attacks the target repeatedly with spears, dealing (Atk480%) Dmg Applies combo attacks based on enemy size. Small/Medium/Large: 1/2/3 times. Spear type weapons are required.
• Attacks the target repeatedly with spears, dealing (Atk460%) Dmg Applies combo attacks based on enemy size. Small/Medium/Large: 1/2/3 times. Spear type weapons are required.
• Attacks the target repeatedly with spears, dealing (Atk440%) Dmg Applies combo attacks based on enemy size. Small/Medium/Large: 1/2/3 times. Spear type weapons are required.
• Attacks the target repeatedly with spears, dealing (Atk420%) Dmg Applies combo attacks based on enemy size. Small/Medium/Large: 1/2/3 times. Spear type weapons are required.
• Attacks the target repeatedly with spears, dealing (Atk400%) Dmg Applies combo attacks based on enemy size. Small/Medium/Large: 1/2/3 times. Spear type weapons are required.
• Attacks the target repeatedly with spears, dealing (Atk380%) Dmg Applies combo attacks based on enemy size. Small/Medium/Large: 1/2/3 times. Spear type weapons are required.
• Attacks the target repeatedly with spears, dealing (Atk360%) Dmg Applies combo attacks based on enemy size. Small/Medium/Large: 1/2/3 times. Spear type weapons are required.
• Attacks the target repeatedly with spears, dealing (Atk340%) Dmg Applies combo attacks based on enemy size. Small/Medium/Large: 1/2/3 times. Spear type weapons are required.
• Attacks the target repeatedly with spears, dealing (Atk320%) Dmg Applies combo attacks based on enemy size. Small/Medium/Large: 1/2/3 times. Spear type weapons are required.
• Attacks the target repeatedly with spears, dealing (Atk300%) Dmg Applies combo attacks based on enemy size. Small/Medium/Large: 1/2/3 times. Spear type weapons are required.
• Attacks the target repeatedly with spears, dealing (Atk280%) Dmg Applies combo attacks based on enemy size. Small/Medium/Large: 1/2/3 times. Spear type weapons are required.
• Attacks the target repeatedly with spears, dealing (Atk260%) Dmg Applies combo attacks based on enemy size. Small/Medium/Large: 1/2/3 times. Spear type weapons are required.
• Attacks the target repeatedly with spears, dealing (Atk240%) Dmg Applies combo attacks based on enemy size. Small/Medium/Large: 1/2/3 times. Spear type weapons are required.
• Attacks the target repeatedly with spears, dealing (Atk220%) Dmg Applies combo attacks based on enemy size. Small/Medium/Large: 1/2/3 times. Spear type weapons are required.
• Attacks the target repeatedly with spears, dealing (Atk200%) Dmg Applies combo attacks based on enemy size. Small/Medium/Large: 1/2/3 times. Spear type weapons are required.
• Attacks the target repeatedly with spears, dealing (Atk180%) Dmg Applies combo attacks based on enemy size. Small/Medium/Large: 1/2/3 times. Spear type weapons are required.
• Attacks the target repeatedly with spears, dealing (Atk160%) Dmg Applies combo attacks based on enemy size. Small/Medium/Large: 1/2/3 times. Spear type weapons are required.
• Attacks the target repeatedly with spears, dealing (Atk140%) Dmg Applies combo attacks based on enemy size. Small/Medium/Large: 1/2/3 times. Spear type weapons are required.
• Attacks the target repeatedly with spears, dealing (Atk120%) Dmg Applies combo attacks based on enemy size. Small/Medium/Large: 1/2/3 times. Spear type weapons are required.
Formula
1function CommonFun.calcDamage_1201(srcUser, targetUser, params, damageParam, logger)
2 local Str = srcUser:GetProperty("Str")
3 local Dex = srcUser:GetProperty("Dex")
4 local Luk = srcUser:GetProperty("Luk")
5 local Atk = srcUser:GetProperty("Atk")
6 local AtkPer = srcUser:GetProperty("AtkPer")
7 local DamIncrease = srcUser:GetProperty("DamIncrease")
8 local IgnoreDef = 0
9 local IgnoreDef1 = srcUser:GetProperty("IgnoreDef")
10 local IgnoreDef2 = srcUser:GetProperty("IgnoreEquipDef")
11 if targetUser.boss or targetUser.mini then
12 IgnoreDef = IgnoreDef1
13 else
14 IgnoreDef = IgnoreDef1 + IgnoreDef2
15 end
16 if 1 <= IgnoreDef then
17 IgnoreDef = 1
18 end
19 local Refine = srcUser:GetProperty("Refine")
20 local Def2 = targetUser:GetProperty("Def")
21 local DefPer2 = targetUser:GetProperty("DefPer")
22 local Vit2 = targetUser:GetProperty("Vit")
23 local VitPer2 = targetUser:GetProperty("VitPer")
24 local DamReduc2 = CommonFun.calcDamReDuc(srcUser, targetUser)
25 local RefineDamReduc = CommonFun.calcRefineDamReduc(srcUser, targetUser)
26 local damChangePer = damageParam.damChangePer
27 local raceparam = CommonFun.CalcRaceParam(srcUser, targetUser, params, damageParam, logger)
28 local bodyparam = CommonFun.CalcBodyParam(srcUser, targetUser, params, damageParam, logger)
29 local elementparam = CommonFun.CalcElementParam(srcUser, targetUser, params, damageParam, logger)
30 local bossparam = CommonFun.CalcBossParam(srcUser, targetUser, params, damageParam, logger)
31 local raceparam2 = CommonFun.CalcRaceParam2(srcUser, targetUser, params, damageParam, logger)
32 local bodyparam2 = CommonFun.CalcBodyParam2(srcUser, targetUser, params, damageParam, logger)
33 local elementparam2 = CommonFun.CalcElementParam2(srcUser, targetUser, params, damageParam, logger)
34 local bossparam2 = CommonFun.CalcBossParam2(srcUser, targetUser, params, damageParam, logger)
35 local sizeCorrection = 1
36 if nil ~= CommonFun.Shape then
37 if CommonFun.Shape.S == targetUser.shape then
38 sizeCorrection = 1
39 elseif CommonFun.Shape.M == targetUser.shape then
40 if srcUser:HasBuffID(91000170_HALBERD_ROSA_BRACELET_:MAX_STACK_0) or srcUser:HasBuffID(91000540_SOUL_SLAYER_SPEAR_ROSA_BRACELET_:MAX_STACK_0) or srcUser:HasBuffID(91001530_HALBERD_ROSA_CHAIN_:MAX_STACK_0) or srcUser:HasBuffID(91001531_SOUL_SLAYER_SPEAR_ROSA_CHAIN_:MAX_STACK_0) then
41 sizeCorrection = 2.2
42 elseif srcUser:HasBuffID(90001983_CRESCENT_SCYTHE_TIER_4_:MAX_STACK_0) then
43 sizeCorrection = 2.6
44 else
45 sizeCorrection = 2
46 end
47 elseif CommonFun.Shape.L == targetUser.shape then
48 if srcUser:HasBuffID(41721_SOUL_SLAYER_SPEAR_:MAX_STACK_0) then
49 sizeCorrection = 5.1
50 elseif srcUser:HasBuffID(90001173_HALBERD_TIER_4_:MAX_STACK_0) then
51 sizeCorrection = 5.1
52 elseif srcUser:HasBuffID(90001172_HALBERD_TIER_3_:MAX_STACK_0) then
53 sizeCorrection = 4.35
54 elseif srcUser:HasBuffID(90001171_HALBERD_TIER_2_:MAX_STACK_0) then
55 sizeCorrection = 3.75
56 elseif srcUser:HasBuffID(90001170_HALBERD_TIER_1_:MAX_STACK_0) then
57 sizeCorrection = 3.3000000000000003
58 else
59 sizeCorrection = 3
60 end
61 end
62 end
63 local Sign = 1
64 local Num1 = targetUser:GetBuffLayer(117660_DEEP_CUT_:MAX_STACK_5)
65 local fromid = targetUser:GetBuffFromID(117660_DEEP_CUT_:MAX_STACK_5)
66 local guid = srcUser:GetGuid()
67 local skilllv_1 = srcUser:GetLernedSkillLevel(1267_ASSASSIN:DEEP_CUT)
68 skilllv_1 = math.min(skilllv_1, 5)
69 local GemValue = srcUser:GetGemValue(11131_DAMAGE_CAUSED_BY_EACH_DEEP_CUT_STACK_PERCENTAGE)
70 if fromid == guid then
71 Sign = 1 + (skilllv_1 * 0.01 + 0.02 + GemValue / 100000) * Num1
72 end
73 local BaseAtk = Str * 2 + math.floor(Str * Str / 100) + math.floor(Dex / 5) + math.floor(Luk / 5)
74 local AtkFinal = ((Atk - BaseAtk) * (1 + AtkPer) * CommonFun.ShapeCorrection(srcUser, targetUser) * bodyparam * elementparam * elementparam2 + BaseAtk) * raceparam * bossparam * bossparam2
75 local DefReduc = CommonFun.CalcDef(srcUser, targetUser)
76 local ShortRangeDamReduc2 = targetUser:GetProperty("ShortRangeDamReduc")
77 local BaseLvDamage = 0
78 local IBaseLv = srcUser.BaseLv
79 if srcUser:HasBuffID(42190_SILVER_GLAIVE_:MAX_STACK_0) then
80 BaseLvDamage = IBaseLv * 20
81 end
82 local GemValue = srcUser:GetGemValue(11081_PIERCE_DEALS_PERCENTAGE_DMG_TO_L_SIZE_MONSTERS)
83 local GemDam = 1
84 if CommonFun.Shape.L == targetUser.shape then
85 GemDam = 1 + GemValue / 100000
86 end
87 local skilllv_ha = srcUser:GetLernedSkillLevel(3005_BLACKSMITH:DARK_KNIGHT)
88 local StateEffect = targetUser:GetProperty("StateEffect")
89 local bits2 = CommonFun.getBits(StateEffect)
90 local Heian = 1
91 if bits2[CommonFun.StateEffect.Dark] == 1 then
92 Heian = 1 + skilllv_ha * 0.04
93 end
94 local A = ((AtkFinal * DefReduc * (1 - DamReduc2) + Refine) * damChangePer * (1 - RefineDamReduc) * (1 + DamIncrease - ShortRangeDamReduc2) * GemDam - Vit2 * (1 + VitPer2)) * sizeCorrection * Sign * Heian + BaseLvDamage
95 if A <= 1 then
96 return 1
97 end
98 return A
99end