
Singularity of Silence
Deals non-elemental damage equal to M.Atk*3000% to a single enemy and causes the unresolved 【Time Eclipse Bubble】 on the target to immediately inflict 50% damage, then clears 【Time Eclipse Bubble】; when actively using 【Silent Singularity】, it will spread the 【Time Eclipse Bubble】 on the target to all enemies within 5 meters.
Skill Levels
• Deals non-elemental damage equal to M.Atk*2800% to a single enemy and causes the unresolved 【Time Eclipse Bubble】 on the target to immediately inflict 45% damage, then clears 【Time Eclipse Bubble】; when actively using 【Silent Singularity】, it will spread the 【Time Eclipse Bubble】 on the target to all enemies within 5 meters.
• Deals non-elemental damage equal to M.Atk*2600% to a single enemy and causes the unresolved 【Time Eclipse Bubble】 on the target to immediately inflict 40% damage, then clears 【Time Eclipse Bubble】; when actively using 【Silent Singularity】, it will spread the 【Time Eclipse Bubble】 on the target to all enemies within 5 meters.
• Deals non-elemental damage equal to M.Atk*2400% to a single enemy and causes the unresolved 【Time Eclipse Bubble】 on the target to immediately inflict 35% damage, then clears 【Time Eclipse Bubble】; when actively using 【Silent Singularity】, it will spread the 【Time Eclipse Bubble】 on the target to all enemies within 5 meters.
• Deals non-elemental damage equal to M.Atk*2200% to a single enemy and causes the unresolved 【Time Eclipse Bubble】 on the target to immediately inflict 30% damage, then clears 【Time Eclipse Bubble】; when actively using 【Silent Singularity】, it will spread the 【Time Eclipse Bubble】 on the target to all enemies within 5 meters.
• Deals non-elemental damage equal to M.Atk*2000% to a single enemy and causes the unresolved 【Time Eclipse Bubble】 on the target to immediately inflict 25% damage, then clears 【Time Eclipse Bubble】; when actively using 【Silent Singularity】, it will spread the 【Time Eclipse Bubble】 on the target to all enemies within 5 meters.
• Deals non-elemental damage equal to M.Atk*1800% to a single enemy and causes the unresolved 【Time Eclipse Bubble】 on the target to immediately inflict 20% damage, then clears 【Time Eclipse Bubble】; when actively using 【Silent Singularity】, it will spread the 【Time Eclipse Bubble】 on the target to all enemies within 5 meters.
• Deals non-elemental damage equal to M.Atk*1600% to a single enemy and causes the unresolved 【Time Eclipse Bubble】 on the target to immediately inflict 15% damage, then clears 【Time Eclipse Bubble】; when actively using 【Silent Singularity】, it will spread the 【Time Eclipse Bubble】 on the target to all enemies within 5 meters.
• Deals non-elemental damage equal to M.Atk*1400% to a single enemy and causes the unresolved 【Time Eclipse Bubble】 on the target to immediately inflict 10% damage, then clears 【Time Eclipse Bubble】; when actively using 【Silent Singularity】, it will spread the 【Time Eclipse Bubble】 on the target to all enemies within 5 meters.
• Deals non-elemental damage equal to M.Atk*1200% to a single enemy and causes the unresolved 【Time Eclipse Bubble】 on the target to immediately inflict 5% damage, then clears 【Time Eclipse Bubble】; when actively using 【Silent Singularity】, it will spread the 【Time Eclipse Bubble】 on the target to all enemies within 5 meters.
Formula
1function CommonFun.calcDamage_82501(srcUser, targetUser, params, damageParam, logger)
2 local Int = srcUser:GetProperty("Int")
3 local Vit = srcUser:GetProperty("Vit")
4 local MAtk = srcUser:GetProperty("MAtk")
5 local MAtkPer = srcUser:GetProperty("MAtkPer")
6 local Str = srcUser:GetProperty("Str")
7 local NormalAtk = srcUser:GetProperty("NormalAtk")
8 NormalAtk = NormalAtk + 3 * Int
9 local MDamIncrease = CommonFun.calcMDamIncrease(srcUser, targetUser)
10 local IgnoreMDef = srcUser:GetProperty("IgnoreMDef")
11 if 1 <= IgnoreMDef then
12 IgnoreMDef = 1
13 end
14 local MRefine = srcUser:GetProperty("MRefine")
15 local RangeDam = srcUser:GetProperty("RangeDam")
16 local srcAtkElement = CommonFun.GetUserAtkAttr(srcUser, targetUser, params, damageParam)
17 local targetDefElement = targetUser:GetProperty("DefAttr")
18 local elementparam2 = CommonFun.CalcElementParam2(srcUser, targetUser, params, damageParam, logger)
19 local raceparam = CommonFun.CalcRaceParam(srcUser, targetUser, params, damageParam, logger)
20 local raceparam2 = CommonFun.CalcRaceParam2(srcUser, targetUser, params, damageParam, logger)
21 local bossparam = CommonFun.CalcBossParam(srcUser, targetUser, params, damageParam, logger)
22 local bossparam2 = CommonFun.CalcBossParam2(srcUser, targetUser, params, damageParam, logger)
23 local MDef2 = targetUser:GetProperty("MDef")
24 local MDefPer2 = targetUser:GetProperty("MDefPer")
25 local Vit2 = targetUser:GetProperty("Vit")
26 local VitPer2 = targetUser:GetProperty("VitPer")
27 local Int2 = targetUser:GetProperty("Int")
28 local IntPer2 = targetUser:GetProperty("IntPer")
29 local MDamReduc2 = CommonFun.calcMDamReDuc(srcUser, targetUser)
30 local RefineMDamReduc = CommonFun.calcRefineMDamReduc(srcUser, targetUser)
31 local damChangePer = damageParam.damChangePer
32 local skillID, skillLevel = CommonFun.UnmergeSkillID(params.skillIDAndLevel)
33 local BaseMAtk = Int + math.floor(Int * Int / 100)
34 local MAtkFinal = ((MAtk - BaseMAtk) * (1 + MAtkPer) + BaseMAtk) * raceparam * bossparam * bossparam2
35 local skillID, skillLevel = CommonFun.UnmergeSkillID(params.skillIDAndLevel)
36 local MDefReduc = CommonFun.CalcMDef(srcUser, targetUser)
37 if skillID == 4841_PHANTOM_DANCER:MAGNETIC_FIELD_EFFECTS and skillID == 4847_PHANTOM_DANCER:SPACE_TIME_GAZE then
38 RangeDam = 0
39 end
40 if skillID == 4847_PHANTOM_DANCER:SPACE_TIME_GAZE_PHANTOM_DANCER:SPACE_TIME_GAZE then
41 local skilllv_cichang = srcUser:GetLernedSkillLevel(4841_PHANTOM_DANCER:MAGNETIC_FIELD_EFFECTS)
42 damChangePer = skilllv_cichang * 1.6 + 12
43 end
44 local skilllv_paomo = srcUser:GetLernedSkillLevel(4850_PHANTOM_DANCER:TEMPORAL_EROSION_BUBBLE)
45 if skillID == 4855_PHANTOM_DANCER:TEMPORAL_EROSION_BUBBLE_PHANTOM_DANCER:TEMPORAL_EROSION_BUBBLE then
46 damChangePer = skilllv_paomo * 0.05 + 0.9
47 if targetUser:HasBuffID(141440_ETERNAL_REALM_:MAX_STACK_0) or targetUser:HasBuffID(141441_ETERNAL_REALM_STILLNESS_:MAX_STACK_0) or targetUser:HasBuffID(141851_TIME_DELAY_BLACK_HOLE_:MAX_STACK_0) or targetUser:HasBuffID(141852_TIME_DELAY_BLACK_HOLE_:MAX_STACK_0) then
48 damChangePer = damChangePer * 2
49 end
50 end
51 local GemValue = srcUser:GetGemValue(222101_MAGNETIC_FIELD_EFFECT_DAMAGE_PERCENTAGE)
52 local GemValue2 = srcUser:GetGemValue(222151_SILENT_SINGULARITY_DAMAGE_RATIO_AT_SETTLEMENT_PERCENTAGE)
53 if skillID == 4841_PHANTOM_DANCER:MAGNETIC_FIELD_EFFECTS or skillID == 4847_PHANTOM_DANCER:SPACE_TIME_GAZE_PHANTOM_DANCER:SPACE_TIME_GAZE then
54 damChangePer = damChangePer * (1 + GemValue / 100000)
55 end
56 local attackcharid = srcUser:GetGuid()
57 local wanxiang = 1
58 local RefineLv7 = srcUser:GetEquipedRefineLv(7_WEAPON)
59 if srcUser:HasBuffID(23411_OSCAR_WEAPON_1_:MAX_STACK_0) then
60 wanxiang = wanxiang * (1 + RefineLv7 * 0.01)
61 end
62 if srcUser:HasBuffID(23421_OSCAREQUIPMENT_USES_INFUSE_WEAPON_1_:MAX_STACK_0) then
63 wanxiang = wanxiang * (1 + RefineLv7 * 0.02)
64 end
65 if (skillID == 4857_PHANTOM_DANCER:SINGULARITY_OF_SILENCE_PHANTOM_DANCER:SINGULARITY_OF_SILENCE or skillID == 4858_PHANTOM_DANCER:SINGULARITY_OF_SILENCE_PHANTOM_DANCER:SINGULARITY_OF_SILENCE) and attackcharid ~= nil then
66 local paomo = targetUser:GetLossOfLifeTimes(attackcharid)
67 local skilllv_baopo = srcUser:GetLernedSkillLevel(4848_PHANTOM_DANCER:SINGULARITY_OF_SILENCE)
68 if paomo == 0 then
69 return 0, 0
70 else
71 damChangePer = (skilllv_paomo * 0.05 + 0.9) * (skilllv_baopo * 0.05 + GemValue2 / 100000) * paomo
72 end
73 if targetUser:HasBuffID(141440_ETERNAL_REALM_:MAX_STACK_0) or targetUser:HasBuffID(141441_ETERNAL_REALM_STILLNESS_:MAX_STACK_0) or targetUser:HasBuffID(141851_TIME_DELAY_BLACK_HOLE_:MAX_STACK_0) or targetUser:HasBuffID(141852_TIME_DELAY_BLACK_HOLE_:MAX_STACK_0) then
74 damChangePer = damChangePer * 2
75 end
76 end
77 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)) * (1 + RangeDam)
78 local zhuanwu = 1
79 if (skillID == 4857_PHANTOM_DANCER:SINGULARITY_OF_SILENCE_PHANTOM_DANCER:SINGULARITY_OF_SILENCE or skillID == 4858_PHANTOM_DANCER:SINGULARITY_OF_SILENCE_PHANTOM_DANCER:SINGULARITY_OF_SILENCE or skillID == 4855_PHANTOM_DANCER:TEMPORAL_EROSION_BUBBLE_PHANTOM_DANCER:TEMPORAL_EROSION_BUBBLE) and srcUser:HasBuffID(90007624_OSCAREQUIPMENT_USES_INFUSE_WEAPONS_1_TIER_5_:MAX_STACK_0) and targetUser:GetNpcID() ~= 0 then
80 A = A * 1.5
81 end
82 if skillID == 4848_PHANTOM_DANCER:SINGULARITY_OF_SILENCE then
83 A = A * wanxiang
84 end
85 if A <= 1 then
86 return 1
87 end
88 return A
89end