Skip to content

Commit 661d381

Browse files
author
LocalIdentity
committed
Merge branch 'dev'
2 parents 911a082 + 8487e68 commit 661d381

File tree

6 files changed

+59
-59
lines changed

6 files changed

+59
-59
lines changed

Data/3_0/ModCache.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2549,7 +2549,7 @@ c["+6% to all Elemental Resistances"]={{[1]={flags=0,keywordFlags=0,name="Elemen
25492549
c["Witch: 0.5% of Maximum Mana Regenerated per second"]={{[1]={[1]={type="Condition",var="ConnectedToWitchStart"},flags=0,keywordFlags=0,name="ManaRegenPercent",type="BASE",value=0.5}},nil}
25502550
c["+88 to maximum Life"]={{[1]={flags=0,keywordFlags=0,name="Life",type="BASE",value=88}},nil}
25512551
c["Chills from your Hits always reduce Action Speed by at least 10% 20% more Damage with Ignite 30% increased Effect of non-Damaging Ailments on Enemies"]={nil,"Chills from your Hits always reduce Action Speed by at least 10% 20% more Damage with Ignite 30% increased Effect of non-Damaging Ailments on Enemies "}
2552-
c["Your Minions spread Caustic Ground on Death, dealing 20% of their maximum Life as Chaos Damage per second"]={{[1]={flags=0,keywordFlags=0,name="ExtraMinionSkill",type="LIST",value={skillId="SiegebreakerCausticGroud"}}},nil}
2552+
c["Your Minions spread Caustic Ground on Death, dealing 20% of their maximum Life as Chaos Damage per second"]={{[1]={flags=0,keywordFlags=0,name="ExtraMinionSkill",type="LIST",value={skillId="SiegebreakerCausticGround"}}},nil}
25532553
c["60% increased Attack Physical Damage while using Pride"]={{[1]={[1]={type="Condition",var="AffectedByPride"},flags=1,keywordFlags=0,name="PhysicalDamage",type="INC",value=60}},nil}
25542554
c["Nearby Enemies deal 8% less Elemental Damage"]={nil,"Nearby Enemies deal 8% less Elemental Damage "}
25552555
c["20% increased Onslaught duration"]={{[1]={flags=0,keywordFlags=0,name="Duration",type="INC",value=20}}," Onslaught "}

Data/3_0/Skills/sup_str.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1310,7 +1310,7 @@ skills["AncestralSlamSupport"] = {
13101310
mod("FistOfWarHitMultiplier", "BASE", nil, ModFlag.Melee),
13111311
},
13121312
["support_ancestral_slam_big_hit_ailment_damage_+%_final"] = {
1313-
mod("FistOfWarAilmentMultiplier", "BASE", nil, bit.bor(ModFlag.Melee, ModFlag.Ailment)),
1313+
mod("FistOfWarAilmentMultiplier", "BASE", nil, ModFlag.Melee),
13141314
},
13151315
["ancestral_slam_interval_duration"] = {
13161316
mod("FistOfWarCooldown", "BASE", nil),

Export/Skills/sup_str.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ local skills, mod, flag, skill = ...
157157
mod("FistOfWarHitMultiplier", "BASE", nil, ModFlag.Melee),
158158
},
159159
["support_ancestral_slam_big_hit_ailment_damage_+%_final"] = {
160-
mod("FistOfWarAilmentMultiplier", "BASE", nil, bit.bor(ModFlag.Melee, ModFlag.Ailment)),
160+
mod("FistOfWarAilmentMultiplier", "BASE", nil, ModFlag.Melee),
161161
},
162162
["ancestral_slam_interval_duration"] = {
163163
mod("FistOfWarCooldown", "BASE", nil),

Modules/CalcOffence-3_0.lua

Lines changed: 54 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -200,58 +200,6 @@ local function calcSkillDuration(skillModList, skillCfg, skillData, env, enemyDB
200200
return duration
201201
end
202202

203-
local function calcAreaOfEffect(skillModList, skillCfg, skillData, skillFlags, output, breakdown)
204-
local incArea, moreArea = calcLib.mods(skillModList, skillCfg, "AreaOfEffect")
205-
output.AreaOfEffectMod = round(round(incArea * moreArea, 10), 2)
206-
if skillData.radiusIsWeaponRange then
207-
local range = 0
208-
if skillFlags.weapon1Attack then
209-
range = m_max(range, actor.weaponRange1)
210-
end
211-
if skillFlags.weapon2Attack then
212-
range = m_max(range, actor.weaponRange2)
213-
end
214-
skillData.radius = range + 2
215-
end
216-
if skillData.radius then
217-
skillFlags.area = true
218-
local baseRadius = skillData.radius + (skillData.radiusExtra or 0) + skillModList:Sum("BASE", skillCfg, "AreaOfEffect")
219-
output.AreaOfEffectRadius = calcRadius(baseRadius, output.AreaOfEffectMod)
220-
if breakdown then
221-
local incAreaBreakpoint, moreAreaBreakpoint, redAreaBreakpoint, lessAreaBreakpoint = calcRadiusBreakpoints(baseRadius, incArea, moreArea)
222-
breakdown.AreaOfEffectRadius = breakdown.area(baseRadius, output.AreaOfEffectMod, output.AreaOfEffectRadius, incAreaBreakpoint, moreAreaBreakpoint, redAreaBreakpoint, lessAreaBreakpoint, skillData.radiusLabel)
223-
end
224-
if skillData.radiusSecondary then
225-
local incAreaSecondary, moreAreaSecondary = calcLib.mods(skillModList, skillCfg, "AreaOfEffect", "AreaOfEffectSecondary")
226-
output.AreaOfEffectModSecondary = round(round(incAreaSecondary * moreAreaSecondary, 10), 2)
227-
baseRadius = skillData.radiusSecondary + (skillData.radiusExtra or 0)
228-
output.AreaOfEffectRadiusSecondary = calcRadius(baseRadius, output.AreaOfEffectModSecondary)
229-
if breakdown then
230-
local incAreaBreakpointSecondary, moreAreaBreakpointSecondary, redAreaBreakpointSecondary, lessAreaBreakpointSecondary = calcRadiusBreakpoints(baseRadius, incAreaSecondary, moreAreaSecondary)
231-
breakdown.AreaOfEffectRadiusSecondary = breakdown.area(baseRadius, output.AreaOfEffectModSecondary, output.AreaOfEffectRadiusSecondary, incAreaBreakpointSecondary, moreAreaBreakpointSecondary, redAreaBreakpointSecondary, lessAreaBreakpointSecondary, skillData.radiusSecondaryLabel)
232-
end
233-
end
234-
if skillData.radiusTertiary then
235-
local incAreaTertiary, moreAreaTertiary = calcLib.mods(skillModList, skillCfg, "AreaOfEffect", "AreaOfEffectTertiary")
236-
output.AreaOfEffectModTertiary = round(round(incAreaTertiary * moreAreaTertiary, 10), 2)
237-
baseRadius = skillData.radiusTertiary + (skillData.radiusExtra or 0)
238-
output.AreaOfEffectRadiusTertiary = calcRadius(baseRadius, output.AreaOfEffectModTertiary)
239-
if breakdown then
240-
local incAreaBreakpointTertiary, moreAreaBreakpointTertiary, redAreaBreakpointTertiary, lessAreaBreakpointTertiary = calcRadiusBreakpoints(baseRadius, incAreaTertiary, moreAreaTertiary)
241-
breakdown.AreaOfEffectRadiusTertiary = breakdown.area(baseRadius, output.AreaOfEffectModTertiary, output.AreaOfEffectRadiusTertiary, incAreaBreakpointTertiary, moreAreaBreakpointTertiary, redAreaBreakpointTertiary, lessAreaBreakpointTertiary, skillData.radiusTertiaryLabel)
242-
end
243-
end
244-
end
245-
if breakdown then
246-
breakdown.AreaOfEffectMod = { }
247-
breakdown.multiChain(breakdown.AreaOfEffectMod, {
248-
{ "%.2f ^8(increased/reduced)", 1 + skillModList:Sum("INC", skillCfg, "AreaOfEffect") / 100 },
249-
{ "%.2f ^8(more/less)", skillModList:More(skillCfg, "AreaOfEffect") },
250-
total = s_format("= %.2f", output.AreaOfEffectMod),
251-
})
252-
end
253-
end
254-
255203
-- Performs all offensive calculations
256204
function calcs.offence(env, actor, activeSkill)
257205
local modDB = actor.modDB
@@ -275,6 +223,58 @@ function calcs.offence(env, actor, activeSkill)
275223
return
276224
end
277225

226+
local function calcAreaOfEffect(skillModList, skillCfg, skillData, skillFlags, output, breakdown)
227+
local incArea, moreArea = calcLib.mods(skillModList, skillCfg, "AreaOfEffect")
228+
output.AreaOfEffectMod = round(round(incArea * moreArea, 10), 2)
229+
if skillData.radiusIsWeaponRange then
230+
local range = 0
231+
if skillFlags.weapon1Attack then
232+
range = m_max(range, actor.weaponRange1)
233+
end
234+
if skillFlags.weapon2Attack then
235+
range = m_max(range, actor.weaponRange2)
236+
end
237+
skillData.radius = range + 2
238+
end
239+
if skillData.radius then
240+
skillFlags.area = true
241+
local baseRadius = skillData.radius + (skillData.radiusExtra or 0) + skillModList:Sum("BASE", skillCfg, "AreaOfEffect")
242+
output.AreaOfEffectRadius = calcRadius(baseRadius, output.AreaOfEffectMod)
243+
if breakdown then
244+
local incAreaBreakpoint, moreAreaBreakpoint, redAreaBreakpoint, lessAreaBreakpoint = calcRadiusBreakpoints(baseRadius, incArea, moreArea)
245+
breakdown.AreaOfEffectRadius = breakdown.area(baseRadius, output.AreaOfEffectMod, output.AreaOfEffectRadius, incAreaBreakpoint, moreAreaBreakpoint, redAreaBreakpoint, lessAreaBreakpoint, skillData.radiusLabel)
246+
end
247+
if skillData.radiusSecondary then
248+
local incAreaSecondary, moreAreaSecondary = calcLib.mods(skillModList, skillCfg, "AreaOfEffect", "AreaOfEffectSecondary")
249+
output.AreaOfEffectModSecondary = round(round(incAreaSecondary * moreAreaSecondary, 10), 2)
250+
baseRadius = skillData.radiusSecondary + (skillData.radiusExtra or 0)
251+
output.AreaOfEffectRadiusSecondary = calcRadius(baseRadius, output.AreaOfEffectModSecondary)
252+
if breakdown then
253+
local incAreaBreakpointSecondary, moreAreaBreakpointSecondary, redAreaBreakpointSecondary, lessAreaBreakpointSecondary = calcRadiusBreakpoints(baseRadius, incAreaSecondary, moreAreaSecondary)
254+
breakdown.AreaOfEffectRadiusSecondary = breakdown.area(baseRadius, output.AreaOfEffectModSecondary, output.AreaOfEffectRadiusSecondary, incAreaBreakpointSecondary, moreAreaBreakpointSecondary, redAreaBreakpointSecondary, lessAreaBreakpointSecondary, skillData.radiusSecondaryLabel)
255+
end
256+
end
257+
if skillData.radiusTertiary then
258+
local incAreaTertiary, moreAreaTertiary = calcLib.mods(skillModList, skillCfg, "AreaOfEffect", "AreaOfEffectTertiary")
259+
output.AreaOfEffectModTertiary = round(round(incAreaTertiary * moreAreaTertiary, 10), 2)
260+
baseRadius = skillData.radiusTertiary + (skillData.radiusExtra or 0)
261+
output.AreaOfEffectRadiusTertiary = calcRadius(baseRadius, output.AreaOfEffectModTertiary)
262+
if breakdown then
263+
local incAreaBreakpointTertiary, moreAreaBreakpointTertiary, redAreaBreakpointTertiary, lessAreaBreakpointTertiary = calcRadiusBreakpoints(baseRadius, incAreaTertiary, moreAreaTertiary)
264+
breakdown.AreaOfEffectRadiusTertiary = breakdown.area(baseRadius, output.AreaOfEffectModTertiary, output.AreaOfEffectRadiusTertiary, incAreaBreakpointTertiary, moreAreaBreakpointTertiary, redAreaBreakpointTertiary, lessAreaBreakpointTertiary, skillData.radiusTertiaryLabel)
265+
end
266+
end
267+
end
268+
if breakdown then
269+
breakdown.AreaOfEffectMod = { }
270+
breakdown.multiChain(breakdown.AreaOfEffectMod, {
271+
{ "%.2f ^8(increased/reduced)", 1 + skillModList:Sum("INC", skillCfg, "AreaOfEffect") / 100 },
272+
{ "%.2f ^8(more/less)", skillModList:More(skillCfg, "AreaOfEffect") },
273+
total = s_format("= %.2f", output.AreaOfEffectMod),
274+
})
275+
end
276+
end
277+
278278
local function runSkillFunc(name)
279279
local func = activeSkill.activeEffect.grantedEffect[name]
280280
if func then
@@ -1304,7 +1304,7 @@ function calcs.offence(env, actor, activeSkill)
13041304
local MaxSingleHitDmgImpact = 0
13051305
local MaxSingleAoEImpact = 0
13061306
for i = 1, globalOutput.SeismicExertsCount do
1307-
ThisSeismicDmgImpact = SeismicMoreDmgAndAoEPerExert + (1 + SeismicMoreDmgAndAoEPerExert / 100) * LastSeismicImpact
1307+
ThisSeismicDmgImpact = SeismicMoreDmgAndAoEPerExert + (1 + SeismicMoreDmgAndAoEPerExert) * LastSeismicImpact
13081308
MaxSingleHitDmgImpact = m_max(MaxSingleHitDmgImpact, ThisSeismicDmgImpact)
13091309
LastSeismicImpact = LastSeismicImpact + SeismicMoreDmgAndAoEPerExert
13101310
TotalSeismicDmgImpact = TotalSeismicDmgImpact + ThisSeismicDmgImpact
@@ -1421,7 +1421,7 @@ function calcs.offence(env, actor, activeSkill)
14211421
-- If Fist of War & Active Skill is a Slam Skill & NOT a Vaal Skill
14221422
if globalOutput.FistOfWarCooldown ~= 0 and activeSkill.skillTypes[SkillType.SlamSkill] and not activeSkill.skillTypes[SkillType.Vaal] then
14231423
globalOutput.FistOfWarHitMultiplier = skillModList:Sum("BASE", cfg, "FistOfWarHitMultiplier") / 100
1424-
globalOutput.FistOfWarAilmentMultiplier = 1 + skillModList:Sum("BASE", cfg, "FistOfWarAilmentMultiplier") / 100
1424+
globalOutput.FistOfWarAilmentMultiplier = skillModList:Sum("BASE", cfg, "FistOfWarAilmentMultiplier") / 100
14251425
globalOutput.FistOfWarUptimeRatio = m_min( (1 / output.Speed) / globalOutput.FistOfWarCooldown, 1) * 100
14261426
if globalBreakdown then
14271427
globalBreakdown.FistOfWarUptimeRatio = {

Modules/CalcSections-3_0.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -686,7 +686,7 @@ return {
686686
}, },
687687
{ label = "Total Increased", { format = "{0:mod:1}%", { modName = { "Damage", "ChaosDamage" }, modType = "INC", cfg = "poison" }, }, },
688688
{ label = "Total More", { format = "{0:mod:1}%", { modName = { "Damage", "ChaosDamage" }, modType = "MORE", cfg = "poison" }, }, },
689-
{ label = "Eff. DoT Multiplier", { format = "x {2:output:PoisonDotMulti}", { breakdown = "PoisonDotMulti" }, { modName = { "DotMultiplier", "PoisonDotMultiplier" }, modType = "BASE", cfg = "poison" }, }, },
689+
{ label = "Eff. DoT Multiplier", { format = "x {2:output:PoisonDotMulti}", { breakdown = "PoisonDotMulti" }, { modName = { "DotMultiplier", "ChaosDotMultiplier" }, modType = "BASE", cfg = "poison" }, }, },
690690
{ label = "Source Physical", textSize = 12, notFlag = "attack", haveOutput = "PoisonPhysicalMax", { format = "{0:output:PoisonPhysicalMin} to {0:output:PoisonPhysicalMax}", { breakdown = "PoisonPhysical" }, }, },
691691
{ label = "MH Source Physical", bgCol = colorCodes.MAINHANDBG, textSize = 12, flag = "weapon1Attack", haveOutput = "MainHand.PoisonPhysicalMax", { format = "{0:output:MainHand.PoisonPhysicalMin} to {0:output:MainHand.PoisonPhysicalMax}", { breakdown = "MainHand.PoisonPhysical" }, }, },
692692
{ label = "OH Source Physical", bgCol = colorCodes.OFFHANDBG, textSize = 12, flag = "weapon2Attack", haveOutput = "OffHand.PoisonPhysicalMax", { format = "{0:output:OffHand.PoisonPhysicalMin} to {0:output:OffHand.PoisonPhysicalMax}", { breakdown = "OffHand.PoisonPhysical" }, }, },

Modules/ModParser-3_0.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1262,7 +1262,7 @@ local specialModList = {
12621262
["modifiers to critical strike multiplier also apply to damage over time multiplier for ailments from critical strikes at (%d+)%% of their value"] = function(num) return { mod("CritMultiplierAppliesToDegen", "BASE", num) } end,
12631263
["your bleeding does not deal extra damage while the enemy is moving"] = { flag("Condition:NoExtraBleedDamageToMovingEnemy") },
12641264
["you can inflict bleeding on an enemy up to (%d+) times?"] = function(num) return { mod("BleedStacksMax", "OVERRIDE", num) } end,
1265-
["your minions spread caustic ground on death, dealing 20%% of their maximum life as chaos damage per second"] = { mod("ExtraMinionSkill", "LIST", { skillId = "SiegebreakerCausticGroud" }) },
1265+
["your minions spread caustic ground on death, dealing 20%% of their maximum life as chaos damage per second"] = { mod("ExtraMinionSkill", "LIST", { skillId = "SiegebreakerCausticGround" }) },
12661266
["you can have an additional brand attached to an enemy"] = { mod("BrandsAttachedLimit", "BASE", 1) },
12671267
["gain (%d+) grasping vines each second while stationary"] = function(num) return {
12681268
flag("Condition:Stationary"),

0 commit comments

Comments
 (0)