
Consume all SP to deal neutral Phy. DMG of Phy. ATK x (40 + remaining SP/100) + 2500 + 500 x50 to a single enemy unit, ignoring 30% of the target's Race Reduc., Attribute Reduc. and Phy. DMG Reduc. and defying the target's DMG Reduc. skill effect. It can only be cast in the Aura Burst state. SP recovery is disabled for 5 seconds upon its release and Auto SP regeneration is disabled for 300 seconds
The number of Aura Bombs consumed varies according to the skill it follows:
Consume Aura Bomb x5 if released directly
Consume Aura Bomb x4 if released after the Way of a Dragon or Blade Stop
Consume Aura Bomb x3 if released after Tiger Fist
Consume Aura Bomb x1 if released after Chain Crush
Aesir
Formula
function CommonFun.calcDamage_12202(srcUser, targetUser, params, damageParam, logger)
local Str = srcUser:GetProperty("Str")
local Dex = srcUser:GetProperty("Dex")
local Luk = srcUser:GetProperty("Luk")
local Atk = srcUser:GetProperty("Atk")
local AtkPer = srcUser:GetProperty("AtkPer")
local DamIncrease = srcUser:GetProperty("DamIncrease")
local Sp = srcUser:GetProperty("Sp")
local MaxSp = srcUser:GetProperty("MaxSp")
local IgnoreDef = 0
local IgnoreDef1 = srcUser:GetProperty("IgnoreDef")
local IgnoreDef2 = srcUser:GetProperty("IgnoreEquipDef")
if targetUser.boss or targetUser.mini then
IgnoreDef = IgnoreDef1
else
IgnoreDef = IgnoreDef1 + IgnoreDef2
end
if 1 <= IgnoreDef then
IgnoreDef = 1
end
local Refine = srcUser:GetProperty("Refine")
local Def2 = targetUser:GetProperty("Def")
local DefPer2 = targetUser:GetProperty("DefPer")
local Vit2 = targetUser:GetProperty("Vit")
local VitPer2 = targetUser:GetProperty("VitPer")
local RefineDamReduc = targetUser:GetProperty("RefineDamReduc")
local damChangePer = damageParam.damChangePer
local damChangePer1 = damageParam.damChangePer1
local DamSpike = srcUser:GetProperty("DamSpike_PEN")
local DamReduc = targetUser:GetProperty("DamReduc")
local PvP_DamReduc = targetUser:GetProperty("DamReduc")
local mapid, maptype = srcUser:GetMapInfo()
if (maptype == PVP_MAPS) and targetUser:GetNpcID() == 0 then
PvP_DamReduc = PvP_DamReduc < -1 and -1 or 1 < PvP_DamReduc and 1 or PvP_DamReduc
PvP_DamReduc = math.floor(PvP_DamReduc * 1000) / 1000
PvP_DamReduc = 0.4 * (1 - math.sin(PvP_DamReduc * 3.14 / 2))
else
PvP_DamReduc = 0
end
DamReduc = DamReduc + PvP_DamReduc
ReduceLv = CommonFun.calcSpikeLv(srcUser, targetUser)
local SkillDamReduc = CommonFun.calcSkillDamReduc(srcUser, targetUser)
local DamReduc2 = 1 - (1 + 0.009 * ReduceLv + DamSpike - DamReduc) * SkillDamReduc
local skilllv = srcUser:GetLernedSkillLevel(306_LORD_KNIGHT:ASURA_STRIKE)
if 5 < skilllv then
DamReduc2 = 1 - (1 + 0.009 * ReduceLv + DamSpike - math.max(DamReduc - 0.06 * (skilllv - 5), 0))
end
if 0.9 <= DamReduc2 then
DamReduc2 = 0.9
end
local raceparam = CommonFun.CalcRaceParam(srcUser, targetUser, params, damageParam, logger)
local bodyparam = CommonFun.CalcBodyParam(srcUser, targetUser, params, damageParam, logger)
local elementparam = CommonFun.CalcElementParam(srcUser, targetUser, params, damageParam, logger)
local bossparam = CommonFun.CalcBossParam(srcUser, targetUser, params, damageParam, logger)
local raceparam2 = CommonFun.CalcRaceParam2(srcUser, targetUser, params, damageParam, logger)
local bodyparam2 = CommonFun.CalcBodyParam2(srcUser, targetUser, params, damageParam, logger)
local elementparam2 = CommonFun.CalcElementParam2(srcUser, targetUser, params, damageParam, logger)
local bossparam2 = CommonFun.CalcBossParam2(srcUser, targetUser, params, damageParam, logger)
local Num1 = srcUser:GetRunePoint(120100_AESIR_INCREASES_MULTIPLIER_OF_ASURA_STRIKE_FORMULA_SKILL_LV_X4_REMAINING_SP_100_BY)
local RuneDamage = Num1 * 0.6
local BaseLvDamage = 0
local IBaseLv = srcUser.BaseLv
if srcUser:HasBuffID(42220_TOOTH_SHARD_:MAX_STACK_0) then
BaseLvDamage = IBaseLv * 40
end
local a = 0
local b = 0
local c = 0
local d = 0
local Equip1 = srcUser:GetEquipedID(7_WEAPON)
local Equip3 = srcUser:GetEquipedID(5_ACCESSORY)
local Equip4 = srcUser:GetEquipedID(6_ACCESSORY)
if Equip1 == 62508 or Equip1 == 162508 then
a = 5
end
if Equip1 == 62540 or Equip1 == 162540 then
a = 5
end
local equipRing = srcUser:getEquip(CommonFun.PackType.EPACKTYPE_EQUIP, CommonFun.EquipPos.EEQUIPPOS_ARMOUR)
if equipRing.id == 42089 or equipRing.id == 142089 then
b = 2
end
local equipRingSD = srcUser:getEquip(CommonFun.PackType.EPACKTYPE_SHADOWEQUIP, CommonFun.EquipPos.EEQUIPPOS_ARMOUR)
if equipRingSD.id == 42089 or equipRingSD.id == 142089 then
b = 2 * equipRingSD.quench_per / 100
end
if Equip3 == 44003 or Equip3 == 144003 then
c = 1.5
end
if Equip4 == 44003 or Equip4 == 144003 then
d = 1.5
end
local equipRing5 = srcUser:getEquip(CommonFun.PackType.EPACKTYPE_EQUIP, CommonFun.EquipPos.EEQUIPPOS_ACCESSORY1)
if equipRing5.id == 44047 or equipRing5.id == 144047 then
c = 2
end
local equipRingSD5 = srcUser:getEquip(CommonFun.PackType.EPACKTYPE_SHADOWEQUIP, CommonFun.EquipPos.EEQUIPPOS_ACCESSORY1)
if equipRingSD5.id == 44047 or equipRingSD5.id == 144047 then
c = 2 * equipRingSD5.quench_per / 100
end
local equipRing6 = srcUser:getEquip(CommonFun.PackType.EPACKTYPE_EQUIP, CommonFun.EquipPos.EEQUIPPOS_ACCESSORY2)
if equipRing6.id == 44047 or equipRing6.id == 144047 then
d = 2
end
local equipRingSD6 = srcUser:getEquip(CommonFun.PackType.EPACKTYPE_SHADOWEQUIP, CommonFun.EquipPos.EEQUIPPOS_ACCESSORY2)
if equipRingSD6.id == 44047 or equipRingSD6.id == 144047 then
d = 2 * equipRingSD6.quench_per / 100
end
local BaseAtk = Str * 2 + math.floor(Str * Str / 100) + math.floor(Dex / 5) + math.floor(Luk / 5)
local BaseAtk1 = Str * 4 + math.floor(Str * Str / 100) * 2 + math.floor(Dex / 5) + math.floor(Luk / 5)
local AtkFinal = ((Atk - BaseAtk) * (1 + AtkPer) * CommonFun.ShapeCorrection(srcUser, targetUser) * bodyparam * elementparam * elementparam2 + BaseAtk1) * raceparam * bossparam * bossparam2
local ShortRangeDamReduc2 = targetUser:GetProperty("ShortRangeDamReduc")
local GemDam = 1
if Sp < MaxSp * 0.3 then
GemValue = srcUser:GetGemValue(122131_WHEN_SP_FALLS_BELOW_30_ASURA_STRIKE_DAMAGE_PERCENTAGE)
GemDam = 1 + GemValue / 100000
end
local potian = 1
local skillID, skillLevel = CommonFun.UnmergeSkillID(params.skillIDAndLevel)
if skillID == 3303_LIGHTBRINGER:SKY_BREAKING_DRAGON_FIST or skillID == 819_HIGH_WIZARD:SKY_BREAKING_DRAGON_FIST then
local skilllv_potian = srcUser:GetLernedSkillLevel(3303_LIGHTBRINGER:SKY_BREAKING_DRAGON_FIST)
local skilllv_fuw = srcUser:GetLernedSkillLevel(819_HIGH_WIZARD:SKY_BREAKING_DRAGON_FIST)
local skilllv_lz = srcUser:GetLernedSkillLevel(3329_LIGHTBRINGER:SKY_BREAKING_DRAGON_FIST_DRAGON_BALL)
local Num_lz = srcUser:GetBuffLayer(100500_SPIRIT_BOMB_:MAX_STACK_0)
local lz = 1
if 1 <= skilllv_lz then
lz = 1 + Num_lz * skilllv_lz * 0.002
end
damChangePer = 4 * skilllv
damChangePer1 = 5 * skilllv
potian = (math.max(skilllv_potian, skilllv_fuw) * 0.05 + 0.5) * lz
end
local A = (((AtkFinal * (1 - DamReduc2) + Refine) * (damChangePer + Sp / 100 + RuneDamage + a + b + c + d) + 2500 + 500 * damChangePer1) * (1 + DamIncrease - ShortRangeDamReduc2) * (1 - RefineDamReduc) * GemDam + BaseLvDamage) * potian
if A <= 1 then
return 1
end
return A
end
Self
{
"id": 10000,
"BuffName": "Create character HP Regen",
"BuffRate": {
"Odds": 100
},
"BuffEffect": {
"Hp": {
"type": 5
},
"type": "HpRecover",
"value": 0,
"disable": 1
}
}
Self
{
"id": 100511,
"BuffName": "Critical Explosion (cannot be restored)",
"BuffRate": {
"Odds": 100
},
"BuffType": {
"isgain": 0,
"isdisperse": 0
},
"BuffEffect": {
"id": [
10000,
10001,
400000,
400001,
120060,
120067
],
"type": "Disable"
}
}
Self
{
"id": 100722,
"BuffName": "Asura Punch (delete Critical Explosion)",
"BuffRate": {
"Odds": 100
},
"BuffEffect": {
"id": [
100510,
100511,
100512
],
"type": "DelBuff"
}
}
Self
{
"id": 400000,
"BuffName": "Rest on Site",
"BuffRate": {
"Odds": 100
},
"BuffEffect": {
"Hp": {
"a": 3,
"b": 0.1,
"type": 13
},
"type": "HpRecover"
}
}
Self
{
"id": 10001,
"BuffName": "Create character MP restore",
"BuffRate": {
"Odds": 100
},
"BuffEffect": {
"Sp": {
"type": 7
},
"type": "SpRecover",
"value": 0,
"disable": 1
}
}
Self
{
"id": 100723,
"BuffName": "Asura Punch (deduct SP)",
"BuffRate": {
"Odds": {
"a": -2,
"b": -10,
"type": 4360
}
},
"BuffEffect": {
"Sp": -99999,
"type": "HSPChange"
}
}
Self
{
"id": 100725,
"BuffName": "Asura Strike (unable to restore SP) (Peak)",
"BuffRate": {
"Odds": 100
},
"BuffType": {
"isgain": 0,
"isdisperse": 0
},
"BuffEffect": {
"type": "AttrChange",
"AttrEffect2": [
6
]
}
}
Self
{
"id": 120060,
"BuffName": "Play Dead (Endure)",
"BuffRate": {
"Odds": 100
},
"BuffEffect": {
"Hp": {
"a": 0.1,
"b": 0,
"c": 0,
"type": 15
},
"Sp": {
"a": 0,
"b": 0.1,
"c": 0,
"type": 15
},
"type": "HpRecover",
"NoStiff": 1
}
}
Self
{
"id": 100510,
"BuffDesc": "Increase Crit; HP and SP cannot be naturally restored",
"BuffIcon": "skillbuff_303001",
"BuffName": "Critical Explosion",
"BuffRate": {
"Odds": 100
},
"BuffType": {
"isgain": 1,
"isdisperse": 0
},
"IconType": 1,
"BuffEffect": {
"Cri": {
"a": 303,
"b": 2.5,
"c": 7.5,
"type": 8
},
"Int": {
"a": 0,
"b": 0,
"c": 122111,
"type": 5010
},
"Str": {
"a": 0,
"b": 0,
"c": 122112,
"type": 5010
},
"type": "AttrChange",
"MaxSp": {
"type": 5110
},
"EquipASPD": {
"type": 1970
}
},
"BuffStateID": 100510
}
Self
{
"id": 100512,
"BuffName": "Critical Explosion -Break",
"BuffRate": {
"Odds": 100
},
"BuffEffect": {
"Int": {
"a": 325,
"b": 2,
"c": 0,
"type": 8
},
"Str": {
"a": 325,
"b": 2,
"c": 0,
"type": 8
},
"type": "AttrChange"
}
}
Self
{
"id": 120067,
"BuffName": "Play Dead (Endure)",
"BuffRate": {
"Odds": 100
},
"BuffEffect": {
"Sp": {
"a": 0,
"b": 0.1,
"c": 0,
"type": 15
},
"type": "SpRecover"
}
}
Self
{
"id": 100721,
"BuffDesc": "SP cannot be naturally restored",
"BuffIcon": "skillbuff_306001",
"BuffName": "Asura Punch (cannot restore sp)",
"BuffRate": {
"Odds": 100
},
"BuffType": {
"isgain": 0,
"isdisperse": 0
},
"IconType": 1,
"BuffEffect": {
"id": [
10001,
400001,
120060,
120067
],
"type": "Disable"
}
}
Self
{
"id": 400001,
"BuffName": "Rest on Site",
"BuffRate": {
"Odds": 100
},
"BuffEffect": {
"Sp": {
"a": 3,
"b": 0.1,
"type": 13
},
"type": "SpRecover"
}
}
Enemy
{
"id": 90004365,
"BuffDesc": "Deals additional damage",
"BuffIcon": "skillbuff_2614001",
"BuffName": "Griffin's Claw [1] [T5]",
"BuffRate": {
"Odds": {
"a": 90004364,
"b": 0,
"c": 100,
"type": 8160
}
},
"BuffType": {
"isgain": 0,
"isdisperse": 1,
"npc_no_disperse": 1
},
"IconType": 1,
"BuffEffect": {
"Hp": {
"a": 0,
"b": -0.2,
"type": 16
},
"type": "HSPChange",
"no_dam_reduce": 1,
"layer_diff_attr": 1
}
}
Formula
{
"CD": 5,
"id": 306010,
"Buff": {
"self": [
100725,
100721,
100722,
100723
],
"enemy": [
90004365
]
},
"Cost": 1,
"Desc": [
{
"id": 306001,
"params": [
40,
100,
2500,
500,
50,
30,
5,
300
]
}
],
"Icon": "skill_306001",
"Camps": "Enemy",
"Level": 10,
"Logic": "SkillLockedTarget",
"Damage": [
{
"type": 12202,
"damChangePer": 40,
"elementparam": 5,
"damChangePer1": 50
}
],
"DescId": "##1154946",
"NameZh": "##169401",
"CastAct": "reading",
"DamTime": {
"type": 1,
"value": 1
},
"DelayCD": 1,
"Fire_EP": 0,
"SE_cast": "Common/Magic_cast",
"Pvp_buff": {
"self": [
100725,
100721,
100722,
100723
],
"enemy": [
90004365
]
},
"RollType": 1,
"AttackAct": [
"use_skill2"
],
"Attack_EP": 0,
"Lead_Type": {
"CCT": 0,
"FCT": 2,
"type": 2
},
"PeakLevel": 5,
"SE_attack": "Skill/GuillotineFist",
"SkillCost": {
"costtype": 1
},
"SkillType": "Attack",
"Target_EP": 0,
"DamageType": 1,
"E_Attack_On": 1,
"Logic_Param": {
"CanBeInterrupted": 1
},
"Launch_Range": 3,
"PreCondition": {
"ProType": 1
},
"AttackEffects": [
{
"time": 1,
"type": 2,
"curve": 1,
"range": 0.1
},
{
"type": 1,
"speed": 20,
"distance": 1.5,
"direction": "forward"
}
]
}