Spiral Pierce
Lvl: 1
Attack
Physical
CD: 4 sec
Range: 2
Attacks an enemy with the spinning spear, dealing (Str + Atk * Weapon type + Refine Atk + Base Level) * 40% Dmg. Stuns the target for 2 sec, deals more damage to small size monster. Spear type weapons are required.
Formula
function CommonFun.calcDamage_1302(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 WeaponType = srcUser:GetEquipedWeaponType()
local BaseLv = srcUser.BaseLv
local Refine = srcUser:GetProperty("Refine")
local damChangePer = damageParam.damChangePer
local DamReduc2 = CommonFun.calcDamReDuc(srcUser, targetUser)
local RefineDamReduc = targetUser:GetProperty("RefineDamReduc")
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 BaseAtk = Str * 2 + math.floor(Str * Str / 100) + math.floor(Dex / 5) + math.floor(Luk / 5)
local AtkFinal = (Atk - BaseAtk) * (1 + AtkPer)
local sizeCorrection = 1
if nil ~= CommonFun.Shape then
if CommonFun.Shape.S == targetUser.shape then
sizeCorrection = 1.3
elseif CommonFun.Shape.M == targetUser.shape then
sizeCorrection = 1
elseif CommonFun.Shape.L == targetUser.shape then
sizeCorrection = 0.8
end
end
local WeaponType_value = 0
if WeaponType == 170 then
WeaponType_value = 2
else
WeaponType_value = 0.5
end
local ShortRangeDamReduc2 = targetUser:GetProperty("ShortRangeDamReduc")
local A = (((Str / 4) ^ 2 + WeaponType_value * AtkFinal * elementparam * bodyparam) * damChangePer + Refine * 15 + BaseLv * 5) * raceparam * bossparam * (1 - RefineDamReduc) * (1 + DamIncrease - ShortRangeDamReduc2) * (1 - DamReduc2) * sizeCorrection * elementparam2 * bossparam2
if A <= 1 then
return 1
end
return A
end
Enemy
{
"id": 80140,
"BuffName": "Spiral Pierce[Stunning]",
"BuffRate": {
"Odds": {
"a": 0,
"b": 100,
"type": 130
}
},
"BuffType": {
"isgain": 0,
"isdisperse": 1
},
"BuffEffect": {
"type": "StatusChange",
"NoAct": 1,
"AttrEffect": [
3,
4
],
"StateEffect": "4_Dizzy"
},
"BuffStateID": 80010
}
Formula
{
"CD": 4,
"id": 70048001,
"Buff": {
"enemy": [
80140
]
},
"Cost": 1,
"Desc": [
{
"id": 28000,
"params": [
40,
2
]
}
],
"Icon": "skill_28001",
"Camps": "Enemy",
"Level": 1,
"Logic": "SkillLockedTarget",
"Damage": [
{
"type": 1302,
"damChangePer": 0.4
}
],
"DescId": "##170753",
"NameZh": "##159303",
"SE_hit": "Skill/Spear_hit",
"CastAct": "skill_ready",
"DamTime": {
"type": 1,
"value": 4
},
"Fire_EP": 3,
"SE_cast": "Common/Magic_cast",
"Pvp_buff": {
"enemy": [
80140
]
},
"RollType": 1,
"SkillHit": 0.5,
"AttackAct": [
"use_skill"
],
"Attack_EP": 5,
"Lead_Type": {
"type": 1,
"ReadyTime": 0.5
},
"SE_attack": "Skill/Spear_attack",
"SkillType": "Attack",
"Target_EP": 3,
"Launch_Range": 2
}