Level 10
##76000
Skill #76001
Level 10
##76000
Level 9
##76000
Level 8
##76000
Level 7
##76000
Level 6
##76000
Level 5
##76000
Level 4
##76000
Level 3
##76000
Level 2
##76000
Level 1
##76000
Formulas & functions
Formula source
function CommonFun.calcDamage_2103(srcUser, targetUser, params, damageParam, logger)
local Int = srcUser:GetProperty("Int")
local Vit = srcUser:GetProperty("Vit")
local MAtk = srcUser:GetProperty("MAtk")
local MAtkPer = srcUser:GetProperty("MAtkPer")
local MDamIncrease = CommonFun.calcMDamIncrease(srcUser, targetUser)
local IgnoreMDef = srcUser:GetProperty("IgnoreMDef")
if 1 <= IgnoreMDef then
IgnoreMDef = 1
end
local Num1 = srcUser:GetRunePoint(22018)
local RuneRate = Num1 * 8
local RuneDamage = Num1 * 0.1 + 1
local MRefine = srcUser:GetProperty("MRefine")
local srcAtkElement = CommonFun.GetUserAtkAttr(srcUser, params, damageParam)
local targetDefElement = targetUser:GetProperty("DefAttr")
local MDef2 = targetUser:GetProperty("MDef")
local MDefPer2 = targetUser:GetProperty("MDefPer")
local Vit2 = targetUser:GetProperty("Vit")
local VitPer2 = targetUser:GetProperty("VitPer")
local Int2 = targetUser:GetProperty("Int")
local IntPer2 = targetUser:GetProperty("IntPer")
local MDamReduc2 = CommonFun.calcMDamReDuc(srcUser, targetUser)
local RefineMDamReduc = targetUser:GetProperty("RefineMDamReduc")
local enemy = srcUser:IsEnemy(targetUser)
local race2 = targetUser.race
if srcUser:HasBuffID(49320) and srcUser:HasBuffID(49325) then
elseif srcUser:HasBuffID(49320) then
race2 = 2
end
local damChangePer = damageParam.damChangePer
local damChangePer1 = damageParam.damChangePer1
local damChangePer2 = damageParam.damChangePer2
local elementparam2 = CommonFun.CalcElementParam2(srcUser, targetUser, params, damageParam, logger)
local raceparam = CommonFun.CalcRaceParam(srcUser, targetUser, params, damageParam, logger)
local raceparam2 = CommonFun.CalcRaceParam2(srcUser, targetUser, params, damageParam, logger)
local bossparam = CommonFun.CalcBossParam(srcUser, targetUser, params, damageParam, logger)
local bossparam2 = CommonFun.CalcBossParam2(srcUser, targetUser, params, damageParam, logger)
local BaseMAtk = Int + math.floor(Int * Int / 100)
local MAtkFinal = ((MAtk - BaseMAtk) * (1 + MAtkPer) + BaseMAtk) * raceparam * bossparam * bossparam2
local MDefReduc = CommonFun.CalcMDef(srcUser, targetUser)
local BaseLvDamage = 0
local IBaseLv = srcUser.BaseLv
if srcUser:HasBuffID(42110) then
BaseLvDamage = IBaseLv * 15
end
local A = ((MAtkFinal * MDefReduc * (1 - MDamReduc2) + MRefine) * damChangePer * (1 - RefineMDamReduc) - Vit2 / 2 * (1 + VitPer2) - Int2 * (1 + IntPer2)) * (1 + MDamIncrease) * CommonFun.calcMagicElement(srcUser, targetUser, params, damageParam) * elementparam2 + damChangePer2 + BaseLvDamage
if CommonFun.IsInRate(RuneRate, srcUser:GetRandom()) then
if race2 == 5 then
return A * (1 + damChangePer1) * RuneDamage
else
return A * RuneDamage
end
elseif race2 == 5 then
return A * (1 + damChangePer1)
else
return A
end
if A <= 1 then
return 1
end
return A
endSkill JSON (Level 10)
{
"id": 76010,
"NameZh": "圣灵召唤",
"Level": 10,
"Icon": "skill_76001",
"Cost": 1,
"Desc": [
{
"id": 76000,
"params": [
400,
50
]
}
],
"RollType": 2,
"DamageType": 2,
"SkillType": "Attack",
"Camps": "Enemy",
"Launch_Range": 6,
"Fire_EP": 3,
"Target_EP": 3,
"Attack_EP": 3,
"CD": 2,
"SkillCost": {
"sp": 19
},
"DelayCD": 3,
"Lead_Type": {
"CCT": 0,
"FCT": 0.5,
"type": 2
},
"Logic": "SkillLockedTarget",
"Logic_Param": {
"emit": {
"duration": 0.5,
"effect": "SoulStrike,none",
"single_fire": false,
"type": 2
}
},
"Damage": [
{
"damChangePer": 4,
"damChangePer1": 0.5,
"damChangePer2": 200,
"elementparam": 5,
"type": 2103
}
],
"DamTime": {
"type": 1,
"value": 5
},
"CastAct": "reading",
"AttackAct": [
"use_magic"
],
"SE_attack": "Skill/sfx_skill_mage_holyspirit_summon_ball_attack_05",
"description": {
"chinesesimplified": "##76000",
"english": "##76000",
"german": "##76000",
"portuguese": "##76000",
"spanish": "##76000"
}
}