diff --git a/src/Data/ModCache.lua b/src/Data/ModCache.lua index 4d1db44f1..b4d404b89 100755 --- a/src/Data/ModCache.lua +++ b/src/Data/ModCache.lua @@ -3065,8 +3065,8 @@ c["80% increased Critical Hit Chance"]={{[1]={flags=0,keywordFlags=0,name="CritC c["80% increased Critical Hit Chance for Spells"]={{[1]={flags=2,keywordFlags=0,name="CritChance",type="INC",value=80}},nil} c["80% increased Critical Hit Chance if you haven't dealt a Critical Hit Recently"]={{[1]={[1]={neg=true,type="Condition",var="CritRecently"},flags=0,keywordFlags=0,name="CritChance",type="INC",value=80}},nil} c["80% increased Damage with Hits against Enemies that are on Full Life"]={{[1]={[1]={actor="enemy",type="ActorCondition",var="FullLife"},flags=0,keywordFlags=262144,name="Damage",type="INC",value=80}},nil} -c["80% increased Desecrated Modifier magnitudes"]={{}," Desecrated Modifier magnitudes "} -c["80% increased Desecrated Modifier magnitudes 120% increased Chaos Damage"]={{[1]={flags=0,keywordFlags=0,name="ChaosDamage",type="INC",value=80}}," Desecrated Modifier magnitudes 120% increased "} +c["80% increased Desecrated Modifier magnitudes"]={{[1]={flags=0,keywordFlags=0,name="Magnitude",type="INC",value=80}}," Desecrated Modifier "} +c["80% increased Desecrated Modifier magnitudes 120% increased Chaos Damage"]={{[1]={flags=0,keywordFlags=0,name="Magnitude",type="INC",value=80}}," Desecrated Modifier 120% increased Chaos Damage "} c["80% increased Elemental Damage with Attacks"]={{[1]={flags=0,keywordFlags=65536,name="ElementalDamage",type="INC",value=80}},nil} c["80% increased Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=80}},nil} c["80% increased Evasion Rating"]={{[1]={flags=0,keywordFlags=0,name="Evasion",type="INC",value=80}},nil} @@ -4119,13 +4119,11 @@ c["Attacks with One-Handed Weapons have 20% increased Chance to inflict Ailments c["Attacks with this Weapon gain 50% of Physical damage as Extra damage of each Element"]={{[1]={[2]={type="Condition",var="{Hand}Attack"},[3]={skillType=1,type="SkillType"},flags=0,keywordFlags=0,name="PhysicalDamageGainAsLightning",type="BASE",value=50},[2]={[2]={type="Condition",var="{Hand}Attack"},[3]={skillType=1,type="SkillType"},flags=0,keywordFlags=0,name="PhysicalDamageGainAsCold",type="BASE",value=50},[3]={[2]={type="Condition",var="{Hand}Attack"},[3]={skillType=1,type="SkillType"},flags=0,keywordFlags=0,name="PhysicalDamageGainAsFire",type="BASE",value=50}},nil} c["Attribute Requirements of Gems can be satisified by your highest Attribute"]={{[1]={flags=0,keywordFlags=0,name="GemAttributeRequirementsSatisfiedByHighestAttribute",type="FLAG",value=true}},nil} c["Aura Skills have 1% more Aura Effect per 2% of maximum Mana they Reserve"]={{[1]={[1]={skillType=39,type="SkillType"},[2]={div=2,stat="ManaReservedPercent",type="PerStat"},flags=0,keywordFlags=0,name="AuraEffect",type="MORE",value=1}},nil} -c["Aura Skills have 10% increased Magnitudes"]={{}," Magnitudes "} -c["Aura Skills have 10% increased Magnitudes +10 to Intelligence"]={{[1]={[1]={skillType=39,type="SkillType"},flags=0,keywordFlags=0,name="Int",type="INC",value=10}}," Magnitudes +10 to "} -c["Aura Skills have 12% increased Magnitudes"]={{}," Magnitudes "} -c["Aura Skills have 14% increased Magnitudes"]={{}," Magnitudes "} -c["Aura Skills have 14% increased Magnitudes Your Aura Buffs do not affect Allies"]={{}," Magnitudes Your Aura Buffs do not affect Allies "} -c["Aura Skills have 5% increased Magnitudes"]={{}," Magnitudes "} -c["Aura Skills have 6% increased Magnitudes"]={{}," Magnitudes "} +c["Aura Skills have 10% increased Magnitudes"]={{[1]={[1]={skillType=39,type="SkillType"},flags=0,keywordFlags=0,name="Magnitude",type="INC",value=10}},nil} +c["Aura Skills have 12% increased Magnitudes"]={{[1]={[1]={skillType=39,type="SkillType"},flags=0,keywordFlags=0,name="Magnitude",type="INC",value=12}},nil} +c["Aura Skills have 14% increased Magnitudes"]={{[1]={[1]={skillType=39,type="SkillType"},flags=0,keywordFlags=0,name="Magnitude",type="INC",value=14}},nil} +c["Aura Skills have 5% increased Magnitudes"]={{[1]={[1]={skillType=39,type="SkillType"},flags=0,keywordFlags=0,name="Magnitude",type="INC",value=5}},nil} +c["Aura Skills have 6% increased Magnitudes"]={{[1]={[1]={skillType=39,type="SkillType"},flags=0,keywordFlags=0,name="Magnitude",type="INC",value=6}},nil} c["Auras from your Skills can only affect you"]={{[1]={flags=0,keywordFlags=0,name="SelfAurasOnlyAffectYou",type="FLAG",value=true}},nil} c["Banner Buffs linger on you for 2 seconds after you leave the Area"]={nil,"Banner Buffs linger on you for 2 seconds after you leave the Area "} c["Banner Skills have 12% increased Aura Magnitudes"]={{[1]={[1]={skillType=88,type="SkillType"},flags=0,keywordFlags=0,name="AuraEffect",type="INC",value=12}},nil} diff --git a/src/Modules/CalcOffence.lua b/src/Modules/CalcOffence.lua index 7897b8bc0..56eda48bd 100644 --- a/src/Modules/CalcOffence.lua +++ b/src/Modules/CalcOffence.lua @@ -1266,9 +1266,9 @@ function calcs.offence(env, actor, activeSkill) calcAreaOfEffect(skillModList, skillCfg, skillData, skillFlags, output, breakdown) end if activeSkill.skillTypes[SkillType.Aura] then - output.AuraEffectMod = calcLib.mod(skillModList, skillCfg, "AuraEffect", not skillData.auraCannotAffectSelf and "SkillAuraEffectOnSelf" or nil) + output.AuraEffectMod = calcLib.mod(skillModList, skillCfg, "AuraEffect", not skillData.auraCannotAffectSelf and "SkillAuraEffectOnSelf" or nil) * calcLib.mod(skillModList, skillCfg, "Magnitude") if breakdown then - breakdown.AuraEffectMod = breakdown.mod(skillModList, skillCfg, "AuraEffect", not skillData.auraCannotAffectSelf and "SkillAuraEffectOnSelf" or nil) + breakdown.AuraEffectMod = breakdown.mod(skillModList, skillCfg, "AuraEffect", "Magnitude", not skillData.auraCannotAffectSelf and "SkillAuraEffectOnSelf" or nil) end end if activeSkill.skillTypes[SkillType.HasReservation] and not activeSkill.skillTypes[SkillType.ReservationBecomesCost] then @@ -5295,7 +5295,7 @@ function calcs.offence(env, actor, activeSkill) end local more = skillModList:More(dotTypeCfg, "Damage", damageType.."Damage", isElemental[damageType] and "ElementalDamage" or nil) local mult = skillModList:Override(dotTypeCfg, "DotMultiplier") or skillModList:Sum("BASE", dotTypeCfg, "DotMultiplier") + skillModList:Sum("BASE", dotTypeCfg, damageType.."DotMultiplier") - local aura = activeSkill.skillTypes[SkillType.Aura] and not activeSkill.skillTypes[SkillType.RemoteMined] and calcLib.mod(skillModList, dotTypeCfg, "AuraEffect") + local aura = activeSkill.skillTypes[SkillType.Aura] and not activeSkill.skillTypes[SkillType.RemoteMined] and calcLib.mod(skillModList, dotTypeCfg, "AuraEffect") * calcLib.mod(skillModList, skillCfg, "Magnitude") local total = baseVal * (1 + inc/100) * more * (1 + mult/100) * (aura or 1) * effMult if output[damageType.."Dot"] == 0 or output[damageType.."Dot"] == nil then output[damageType.."Dot"] = total diff --git a/src/Modules/CalcPerform.lua b/src/Modules/CalcPerform.lua index b71fd7f0e..8e79e962f 100644 --- a/src/Modules/CalcPerform.lua +++ b/src/Modules/CalcPerform.lua @@ -1716,7 +1716,7 @@ function calcs.perform(env, skipEHP) modDB.conditions["AffectedBy"..buff.name:gsub(" ","")] = true local srcList = new("ModList") local inc = modStore:Sum("INC", skillCfg, "BuffEffect", "BuffEffectOnSelf", "BuffEffectOnPlayer") + skillModList:Sum("INC", skillCfg, buff.name:gsub(" ", "").."Effect") - local more = modStore:More(skillCfg, "BuffEffect", "BuffEffectOnSelf") + local more = modStore:More(skillCfg, "BuffEffect", "BuffEffectOnSelf") * calcLib.mod(modStore, skillCfg, "Magnitude") srcList:ScaleAddList(buff.modList, (1 + inc / 100) * more) mergeBuff(srcList, buffs, buff.name) if activeSkill.skillData.thisIsNotABuff then @@ -1728,13 +1728,13 @@ function calcs.perform(env, skipEHP) env.minion.modDB.conditions["AffectedBy"..buff.name:gsub(" ","")] = true local srcList = new("ModList") local inc = modStore:Sum("INC", skillCfg, "BuffEffect") + env.minion.modDB:Sum("INC", nil, "BuffEffectOnSelf") - local more = modStore:More(skillCfg, "BuffEffect") * env.minion.modDB:More(nil, "BuffEffectOnSelf") + local more = modStore:More(skillCfg, "BuffEffect") * env.minion.modDB:More(nil, "BuffEffectOnSelf") * calcLib.mod(modStore, skillCfg, "Magnitude") srcList:ScaleAddList(buff.modList, (1 + inc / 100) * more) mergeBuff(srcList, minionBuffs, buff.name) end if partyTabEnableExportBuffs and (buff.applyAllies or skillModList:Flag(nil, "BuffAppliesToAllies") or skillModList:Flag(nil, "BuffAppliesToPartyMembers")) then local inc = modStore:Sum("INC", skillCfg, "BuffEffect") + skillModList:Sum("INC", skillCfg, buff.name:gsub(" ", "").."Effect") - local more = modStore:More(skillCfg, "BuffEffect") + local more = modStore:More(skillCfg, "BuffEffect") * calcLib.mod(modStore, skillCfg, "Magnitude") buffExports["Aura"]["otherEffects"] = buffExports["Aura"]["otherEffects"] or { } buffExports["Aura"]["otherEffects"][buff.name] = { effectMult = (1 + inc / 100) * more, modList = buff.modList } end @@ -1747,7 +1747,7 @@ function calcs.perform(env, skipEHP) activeSkill.buffSkill = true local srcList = new("ModList") local inc = modStore:Sum("INC", skillCfg, "BuffEffect", "BuffEffectOnSelf", "BuffEffectOnPlayer") - local more = modStore:More(skillCfg, "BuffEffect", "BuffEffectOnSelf") + local more = modStore:More(skillCfg, "BuffEffect", "BuffEffectOnSelf") * calcLib.mod(modStore, skillCfg, "Magnitude") srcList:ScaleAddList(buff.modList, (1 + inc / 100) * more) mergeBuff(srcList, guards, buff.name) end @@ -1782,7 +1782,7 @@ function calcs.perform(env, skipEHP) modDB.conditions["AffectedBy"..warcryName] = true local srcList = new("ModList") local inc = modStore:Sum("INC", skillCfg, "BuffEffect", "BuffEffectOnSelf", "BuffEffectOnPlayer") - local more = modStore:More(skillCfg, "BuffEffect", "BuffEffectOnSelf") + local more = modStore:More(skillCfg, "BuffEffect", "BuffEffectOnSelf") * calcLib.mod(modStore, skillCfg, "Magnitude") for _, warcryBuff in ipairs(buff.modList) do local mult = (1 + inc / 100) * more * (warcryBuff[1].warcryPowerBonus or 1) * uptime srcList:ScaleAddList({warcryBuff}, mult) @@ -1795,7 +1795,7 @@ function calcs.perform(env, skipEHP) env.minion.modDB.conditions["AffectedBy"..warcryName] = true local srcList = new("ModList") local inc = skillModList:Sum("INC", skillCfg, "BuffEffect") + env.minion.modDB:Sum("INC", skillCfg, "BuffEffectOnSelf") - local more = skillModList:More(skillCfg, "BuffEffect") * env.minion.modDB:More(skillCfg, "BuffEffectOnSelf") + local more = skillModList:More(skillCfg, "BuffEffect") * env.minion.modDB:More(skillCfg, "BuffEffectOnSelf") * calcLib.mod(skillModList, skillCfg, "Magnitude") for _, warcryBuff in ipairs(buff.modList) do local mult = (1 + inc / 100) * more * (warcryBuff[1].warcryPowerBonus or 1) * uptime srcList:ScaleAddList({warcryBuff}, mult) @@ -1823,7 +1823,7 @@ function calcs.perform(env, skipEHP) if partyTabEnableExportBuffs then local newModList = new("ModList") local inc = skillModList:Sum("INC", skillCfg, "BuffEffect") - local more = skillModList:More(skillCfg, "BuffEffect") + local more = skillModList:More(skillCfg, "BuffEffect") * calcLib.mod(skillModList, skillCfg, "Magnitude") newModList:AddList(buff.modList) newModList:AddList(extraWarcryModList) buffExports["Warcry"][buff.name] = { effectMult = (1 + inc / 100) * more * uptime, modList = newModList } @@ -1849,7 +1849,7 @@ function calcs.perform(env, skipEHP) end if not activeSkill.skillData.auraCannotAffectSelf then local inc = skillModList:Sum("INC", skillCfg, "AuraEffect", "BuffEffect", "BuffEffectOnSelf", "AuraEffectOnSelf", "AuraBuffEffect", "SkillAuraEffectOnSelf") - local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect", "BuffEffectOnSelf", "AuraEffectOnSelf", "AuraBuffEffect", "SkillAuraEffectOnSelf") + local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect", "BuffEffectOnSelf", "AuraEffectOnSelf", "AuraBuffEffect", "SkillAuraEffectOnSelf") * calcLib.mod(skillModList, skillCfg, "Magnitude") local mult = (1 + inc / 100) * more if modDB:Flag(nil, "AlliesAurasCannotAffectSelf") or not allyBuffs["Aura"] or not allyBuffs["Aura"][buff.name] or allyBuffs["Aura"][buff.name].effectMult / 100 <= mult then activeSkill.buffSkill = true @@ -1867,7 +1867,7 @@ function calcs.perform(env, skipEHP) if not (modDB:Flag(nil, "SelfAurasCannotAffectAllies") or modDB:Flag(nil, "SelfAurasOnlyAffectYou") or modDB:Flag(nil, "SelfAuraSkillsCannotAffectAllies")) then if env.minion and not env.minion.modDB:Flag(nil, "HiddenMonster") then local inc = skillModList:Sum("INC", skillCfg, "AuraEffect", "BuffEffect") + env.minion.modDB:Sum("INC", skillCfg, "BuffEffectOnSelf", "AuraEffectOnSelf") - local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect") * env.minion.modDB:More(skillCfg, "BuffEffectOnSelf", "AuraEffectOnSelf") + local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect") * env.minion.modDB:More(skillCfg, "BuffEffectOnSelf", "AuraEffectOnSelf") * calcLib.mod(skillModList, skillCfg, "Magnitude") local mult = (1 + inc / 100) * more if not allyBuffs["Aura"] or not allyBuffs["Aura"][buff.name] or allyBuffs["Aura"][buff.name].effectMult / 100 <= mult then activeSkill.minionBuffSkill = true @@ -1880,7 +1880,7 @@ function calcs.perform(env, skipEHP) end end local inc = skillModList:Sum("INC", skillCfg, "AuraEffect", "BuffEffect") - local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect") + local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect") * calcLib.mod(skillModList, skillCfg, "Magnitude") local mult = (1 + inc / 100) * more local newModList = new("ModList") newModList:AddList(buff.modList) @@ -1903,7 +1903,7 @@ function calcs.perform(env, skipEHP) local srcList = new("ModList") local inc = skillModList:Sum("INC", skillCfg, "AuraEffect", "BuffEffect", "AuraBuffEffect") - local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect", "AuraBuffEffect") + local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect", "AuraBuffEffect") * calcLib.mod(skillModList, skillCfg, "Magnitude") local lists = {extraAuraModList, buff.modList} local scale = (1 + inc / 100) * more scale = m_max(scale, 0) @@ -1952,8 +1952,8 @@ function calcs.perform(env, skipEHP) end end local inc = skillModList:Sum("INC", skillCfg, "AuraEffect", "BuffEffect", "DebuffEffect") - local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect", "DebuffEffect") - mult = (1 + inc / 100) * more + local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect", "DebuffEffect") * calcLib.mod(skillModList, skillCfg, "Magnitude") + local mult = (1 + inc / 100) * more local newModList = new("ModList") newModList:AddList(extraAuraModList) buffExports["Aura"][buff.name..(buffExports["Aura"][buff.name] and "_Debuff" or "")] = { effectMult = mult, modList = newModList } @@ -2000,7 +2000,7 @@ function calcs.perform(env, skipEHP) mult = 0 if not modDB:Flag(nil, "SelfAurasOnlyAffectYou") then local inc = skillModList:Sum("INC", skillCfg, "AuraEffect", "BuffEffect", "DebuffEffect") - local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect", "DebuffEffect") + local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect", "DebuffEffect") * calcLib.mod(skillModList, skillCfg, "Magnitude") mult = (1 + inc / 100) * more local newModList = {} for _, mod in ipairs(buff.modList) do @@ -2021,7 +2021,7 @@ function calcs.perform(env, skipEHP) end if buff.type == "Debuff" then local inc = skillModList:Sum("INC", skillCfg, "DebuffEffect") - local more = skillModList:More(skillCfg, "DebuffEffect") + local more = skillModList:More(skillCfg, "DebuffEffect") * calcLib.mod(skillModList, skillCfg, "Magnitude") mult = (1 + inc / 100) * more end srcList:ScaleAddList(buff.modList, mult * stackCount) @@ -2047,7 +2047,7 @@ function calcs.perform(env, skipEHP) if activeSkill.skillTypes[SkillType.Aura] then inc = inc + skillModList:Sum("INC", skillCfg, "AuraEffect") end - local more = skillModList:More(skillCfg, "CurseEffect") + local more = skillModList:More(skillCfg, "CurseEffect") * calcLib.mod(skillModList, skillCfg, "Magnitude") local moreMark = more -- This is non-ideal, but the only More for enemy is the boss effect if not curse.isMark then @@ -2104,7 +2104,7 @@ function calcs.perform(env, skipEHP) end end local inc = skillModList:Sum("INC", skillCfg, "LinkEffect", "BuffEffect") - local more = skillModList:More(skillCfg, "LinkEffect", "BuffEffect") + local more = skillModList:More(skillCfg, "LinkEffect", "BuffEffect") * calcLib.mod(skillModList, skillCfg, "Magnitude") local mult = (1 + inc / 100) * more if partyTabEnableExportBuffs then local newModList = new("ModList") @@ -2163,7 +2163,7 @@ function calcs.perform(env, skipEHP) modDB.conditions["AffectedBy"..buff.name:gsub(" ","")] = true local srcList = new("ModList") local inc = modStore:Sum("INC", skillCfg, "BuffEffect", "BuffEffectOnPlayer") + modDB:Sum("INC", nil, "BuffEffectOnSelf") - local more = modStore:More(skillCfg, "BuffEffect", "BuffEffectOnPlayer") * modDB:More(nil, "BuffEffectOnSelf") + local more = modStore:More(skillCfg, "BuffEffect", "BuffEffectOnPlayer") * modDB:More(nil, "BuffEffectOnSelf") * calcLib.mod(skillModList, skillCfg, "Magnitude") srcList:ScaleAddList(buff.modList, (1 + inc / 100) * more) mergeBuff(srcList, buffs, buff.name) mergeBuff(buff.modList, buffs, buff.name) @@ -2187,7 +2187,7 @@ function calcs.perform(env, skipEHP) end local srcList = new("ModList") local inc = modStore:Sum("INC", skillCfg, "BuffEffect", (env.minion == castingMinion) and "BuffEffectOnSelf" or nil) - local more = modStore:More(skillCfg, "BuffEffect", (env.minion == castingMinion) and "BuffEffectOnSelf" or nil) + local more = modStore:More(skillCfg, "BuffEffect", (env.minion == castingMinion) and "BuffEffectOnSelf" or nil) * calcLib.mod(modStore, skillCfg, "Magnitude") srcList:ScaleAddList(buff.modList, (1 + inc / 100) * more) mergeBuff(srcList, minionBuffs, buff.name) mergeBuff(buff.modList, minionBuffs, buff.name) @@ -2216,7 +2216,7 @@ function calcs.perform(env, skipEHP) if not (activeSkill.minion.modDB:Flag(nil, "SelfAurasCannotAffectAllies") or activeSkill.minion.modDB:Flag(nil, "SelfAurasOnlyAffectYou") or activeSkill.minion.modDB:Flag(nil, "SelfAuraSkillsCannotAffectAllies")) then if not modDB:Flag(nil, "AlliesAurasCannotAffectSelf") and not modDB.conditions["AffectedBy"..buff.name:gsub(" ","")] then local inc = skillModList:Sum("INC", skillCfg, "AuraEffect", "BuffEffect", "BuffEffectOnPlayer", "AuraBuffEffect") + modDB:Sum("INC", skillCfg, "BuffEffectOnSelf", "AuraEffectOnSelf") - local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect", "AuraBuffEffect") * modDB:More(skillCfg, "BuffEffectOnSelf", "AuraEffectOnSelf") + local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect", "AuraBuffEffect") * modDB:More(skillCfg, "BuffEffectOnSelf", "AuraEffectOnSelf") * calcLib.mod(skillModList, skillCfg, "Magnitude") local mult = (1 + inc / 100) * more if not allyBuffs["Aura"] or not allyBuffs["Aura"][buff.name] or allyBuffs["Aura"][buff.name].effectMult / 100 <= mult then activeMinionSkill.buffSkill = true @@ -2233,7 +2233,7 @@ function calcs.perform(env, skipEHP) end if env.minion and not env.minion.modDB:Flag(nil, "HiddenMonster") and not env.minion.modDB.conditions["AffectedBy"..buff.name:gsub(" ","")] and (env.minion ~= activeSkill.minion or not activeSkill.skillData.auraCannotAffectSelf) then local inc = skillModList:Sum("INC", skillCfg, "AuraEffect", "BuffEffect") + env.minion.modDB:Sum("INC", skillCfg, "BuffEffectOnSelf", "AuraEffectOnSelf") - local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect") * env.minion.modDB:More(skillCfg, "BuffEffectOnSelf", "AuraEffectOnSelf") + local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect") * env.minion.modDB:More(skillCfg, "BuffEffectOnSelf", "AuraEffectOnSelf") * calcLib.mod(skillModList, skillCfg, "Magnitude") local mult = (1 + inc / 100) * more if not allyBuffs["Aura"] or not allyBuffs["Aura"][buff.name] or allyBuffs["Aura"][buff.name].effectMult / 100 <= mult then activeMinionSkill.minionBuffSkill = true @@ -2246,7 +2246,7 @@ function calcs.perform(env, skipEHP) end end local inc = skillModList:Sum("INC", skillCfg, "AuraEffect", "BuffEffect") - local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect") + local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect") * calcLib.mod(skillModList, skillCfg, "Magnitude") local mult = (1 + inc / 100) * more local newModList = new("ModList") newModList:AddList(buff.modList) @@ -2268,7 +2268,7 @@ function calcs.perform(env, skipEHP) local srcList = new("ModList") local inc = skillModList:Sum("INC", skillCfg, "AuraEffect", "BuffEffect", "AuraBuffEffect") - local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect", "AuraBuffEffect") + local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect", "AuraBuffEffect") * calcLib.mod(skillModList, skillCfg, "Magnitude") local lists = {extraAuraModList, buff.modList} local scale = (1 + inc / 100) * more scale = m_max(scale, 0) @@ -2300,7 +2300,7 @@ function calcs.perform(env, skipEHP) priority = determineCursePriority(buff.name, activeMinionSkill), } local inc = skillModList:Sum("INC", skillCfg, "CurseEffect") + enemyDB:Sum("INC", nil, "CurseEffectOnSelf") - local more = skillModList:More(skillCfg, "CurseEffect") * enemyDB:More(nil, "CurseEffectOnSelf") + local more = skillModList:More(skillCfg, "CurseEffect") * enemyDB:More(nil, "CurseEffectOnSelf") * calcLib.mod(skillModList, skillCfg, "Magnitude") curse.modList = new("ModList") curse.modList:ScaleAddList(buff.modList, (1 + inc / 100) * more) t_insert(minionCurses, curse) @@ -2325,7 +2325,7 @@ function calcs.perform(env, skipEHP) mult = 0 if not skillModList:Flag(nil, "SelfAurasOnlyAffectYou") then local inc = skillModList:Sum("INC", skillCfg, "AuraEffect", "BuffEffect", "DebuffEffect") - local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect", "DebuffEffect") + local more = skillModList:More(skillCfg, "AuraEffect", "BuffEffect", "DebuffEffect") * calcLib.mod(skillModList, skillCfg, "Magnitude") mult = (1 + inc / 100) * more if not enemyDB.conditions["AffectedBy"..buff.name:gsub(" ","")] then buffExports["Aura"][buff.name..(buffExports["Aura"][buff.name] and "_Debuff" or "")] = { effectMult = mult, modList = buff.modList } diff --git a/src/Modules/CalcSections.lua b/src/Modules/CalcSections.lua index 4a289aec7..5e835f9ba 100644 --- a/src/Modules/CalcSections.lua +++ b/src/Modules/CalcSections.lua @@ -696,7 +696,7 @@ return { { label = "Bounces Count", flag = "bounce", { format = "{output:BounceCount}", { modName = { "BounceCount", "ProjectileCount" }, cfg = "skill" }, }, }, { label = "Aura Effect Mod", haveOutput = "AuraEffectMod", { format = "x {2:output:AuraEffectMod}", { breakdown = "AuraEffectMod" }, - { modName = { "AuraEffect", "SkillAuraEffectOnSelf" }, cfg = "skill" }, + { modName = { "AuraEffect", "SkillAuraEffectOnSelf", "Magnitude" }, cfg = "skill" }, }, }, { label = "Mana Reserve Mod", haveOutput = "ManaReservedMod", { format = "x {2:output:ManaReservedMod}", { breakdown = "ManaReservedMod" }, diff --git a/src/Modules/ModParser.lua b/src/Modules/ModParser.lua index 0ae35b950..ae59b3217 100644 --- a/src/Modules/ModParser.lua +++ b/src/Modules/ModParser.lua @@ -854,6 +854,7 @@ local modNameList = { ["effect"] = "LocalEffect", ["effect of flasks"] = "FlaskEffect", ["effect of charms"] = "CharmEffect", + ["magnitudes"] = "Magnitude", ["amount recovered"] = "FlaskRecovery", ["life recovered"] = "FlaskRecovery", ["life recovery from flasks used"] = "FlaskLifeRecovery",