Skip to content

Commit db8c024

Browse files
krryanDragoonWraithLocalIdentity
authored
Fix many skills not enabling the Wither config option (#1809)
* Adds 'Condition:CanWither' flag to numerous skills and supports * Move to global stat map + support wither spell --------- Co-authored-by: DragoonWraith (github: krryan) <dragoonwraith@gmail.com> Co-authored-by: LocalIdentity <localidentity2@gmail.com>
1 parent c8bbe07 commit db8c024

5 files changed

Lines changed: 34 additions & 4 deletions

File tree

src/Data/ModCache.lua

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5652,7 +5652,7 @@ c["Minions have +4% to all Elemental Resistances"]={{[1]={flags=0,keywordFlags=0
56525652
c["Minions have +5% to all Maximum Elemental Resistances"]={{[1]={flags=0,keywordFlags=0,name="MinionModifier",type="LIST",value={mod={flags=0,keywordFlags=0,name="ElementalResistMax",type="BASE",value=5}}}},nil}
56535653
c["Minions have +7% to Chaos Resistance"]={{[1]={flags=0,keywordFlags=0,name="MinionModifier",type="LIST",value={mod={flags=0,keywordFlags=0,name="ChaosResist",type="BASE",value=7}}}},nil}
56545654
c["Minions have +8% to all Elemental Resistances"]={{[1]={flags=0,keywordFlags=0,name="MinionModifier",type="LIST",value={mod={flags=0,keywordFlags=0,name="ElementalResist",type="BASE",value=8}}}},nil}
5655-
c["Minions have 10% chance to inflict Withered on Hit"]={{[1]={flags=0,keywordFlags=0,name="MinionModifier",type="LIST",value={mod={flags=0,keywordFlags=0,name="Condition:CanWither",type="FLAG",value=true}}}},nil}
5655+
c["Minions have 10% chance to inflict Withered on Hit"]={{[1]={flags=0,keywordFlags=0,name="Condition:CanWither",type="FLAG",value=true}},nil}
56565656
c["Minions have 10% increased Movement Speed"]={{[1]={flags=0,keywordFlags=0,name="MinionModifier",type="LIST",value={mod={flags=0,keywordFlags=0,name="MovementSpeed",type="INC",value=10}}}},nil}
56575657
c["Minions have 10% increased maximum Life"]={{[1]={flags=0,keywordFlags=0,name="MinionModifier",type="LIST",value={mod={flags=0,keywordFlags=0,name="Life",type="INC",value=10}}}},nil}
56585658
c["Minions have 10% reduced Life Recovery rate"]={{[1]={flags=0,keywordFlags=0,name="MinionModifier",type="LIST",value={mod={flags=0,keywordFlags=0,name="LifeRecoveryRate",type="INC",value=-10}}}},nil}
@@ -6166,8 +6166,7 @@ c["Undead Minions have 25% less maximum Life"]={{[1]={[1]={skillType=127,type="S
61666166
c["Unlimited number of Summoned Totems"]={nil,"Unlimited number of Summoned Totems "}
61676167
c["Unlimited number of Summoned Totems Totems reserve 75 Spirit each"]={nil,"Unlimited number of Summoned Totems Totems reserve 75 Spirit each "}
61686168
c["Unwavering Stance"]={{[1]={flags=0,keywordFlags=0,name="Keystone",type="LIST",value="Unwavering Stance"}},nil}
6169-
c["Unwithered enemies are Withered for 8 seconds when they enter your Presence"]={nil,"Unwithered enemies are Withered for 8 seconds when they enter your Presence "}
6170-
c["Unwithered enemies are Withered for 8 seconds when they enter your Presence 20% increased Withered Magnitude"]={nil,"Unwithered enemies are Withered for 8 seconds when they enter your Presence 20% increased Withered Magnitude "}
6169+
c["Unwithered enemies are Withered for 8 seconds when they enter your Presence"]={{[1]={flags=0,keywordFlags=0,name="Condition:CanWither",type="FLAG",value=true}},nil}
61716170
c["Used when you are affected by a Slow"]={nil,"Used when you are affected by a Slow "}
61726171
c["Used when you are affected by a Slow Grants Onslaught during effect"]={nil,"Used when you are affected by a Slow Grants Onslaught during effect "}
61736172
c["Used when you become Frozen"]={nil,"Used when you become Frozen "}

src/Data/SkillStatMap.lua

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2733,6 +2733,9 @@ return {
27332733
["withered_on_hit_chance_%"] = {
27342734
flag("Condition:CanWither"),
27352735
},
2736+
["apply_x_wither_on_hit"] = {
2737+
flag("Condition:CanWither"),
2738+
},
27362739
["minions_have_%_chance_to_inflict_wither_on_hit"] = {
27372740
mod("MinionModifier", "LIST", { mod = flag("Condition:CanWither") }),
27382741
},
@@ -2745,6 +2748,9 @@ return {
27452748
["withered_on_hit_chance_%_for_every_100%_target_ailment_threshold_dealt_as_chaos_damage"] = {
27462749
flag("Condition:CanWither"),
27472750
},
2751+
["wither_on_hit_chance_rollovercapped"] = {
2752+
flag("Condition:CanWither"),
2753+
},
27482754
["discharge_damage_+%_if_3_charge_types_removed"] = {
27492755
mod("Damage", "INC", nil, 0, 0, { type = "Multiplier", var = "RemovableEnduranceCharge", limit = 1 }, { type = "Multiplier", var = "RemovableFrenzyCharge", limit = 1 }, { type = "Multiplier", var = "RemovablePowerCharge", limit = 1 }),
27502756
},

src/Data/Skills/act_int.lua

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11781,6 +11781,11 @@ skills["HisFoulEmergencePlayer"] = {
1178111781
incrementalEffectiveness = 0.12999999523163,
1178211782
damageIncrementalEffectiveness = 0.0096000004559755,
1178311783
statDescriptionScope = "his_foul_emergence",
11784+
statMap = {
11785+
["active_skill_withered_base_duration_ms"] = {
11786+
flag("Condition:CanWither"),
11787+
},
11788+
},
1178411789
baseFlags = {
1178511790
spell = true,
1178611791
area = true,
@@ -22382,6 +22387,9 @@ skills["WitherPlayer"] = {
2238222387
area = true,
2238322388
duration = true,
2238422389
},
22390+
baseMods = {
22391+
flag("Condition:CanWither"),
22392+
},
2238522393
constantStats = {
2238622394
{ "chaos_damage_taken_+%", 6 },
2238722395
{ "movement_speed_+%_final_while_performing_action", -70 },
@@ -22498,6 +22506,11 @@ skills["WitheringPresencePlayer"] = {
2249822506
label = "Withering Presence",
2249922507
incrementalEffectiveness = 0.054999999701977,
2250022508
statDescriptionScope = "withering_presence",
22509+
statMap = {
22510+
["skill_withering_presence_frequency_ms"] = {
22511+
flag("Condition:CanWither"),
22512+
},
22513+
},
2250122514
baseFlags = {
2250222515
duration = true,
2250322516
},

src/Export/Skills/act_int.txt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -832,6 +832,11 @@ statMap = {
832832
#skill HisFoulEmergencePlayer
833833
#set HisFoulEmergencePlayer
834834
#flags spell area duration
835+
statMap = {
836+
["active_skill_withered_base_duration_ms"] = {
837+
flag("Condition:CanWither"),
838+
},
839+
},
835840
#mods
836841
#skillEnd
837842

@@ -1516,11 +1521,17 @@ statMap = {
15161521
#skill WitherPlayer
15171522
#set WitherPlayer
15181523
#flags spell area duration
1524+
#baseMod flag("Condition:CanWither")
15191525
#mods
15201526
#skillEnd
15211527

15221528
#skill WitheringPresencePlayer
15231529
#set WitheringPresencePlayer
15241530
#flags duration
1531+
statMap = {
1532+
["skill_withering_presence_frequency_ms"] = {
1533+
flag("Condition:CanWither"),
1534+
},
1535+
},
15251536
#mods
15261537
#skillEnd

src/Modules/ModParser.lua

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3147,6 +3147,7 @@ local specialModList = {
31473147
} end,
31483148
["cannot be stunned while you have energy shield"] = { flag("StunImmune", { type = "Condition", var = "HaveEnergyShield" }) },
31493149
["every second, inflict withered on nearby enemies for (%d+) seconds"] = { flag("Condition:CanWither") },
3150+
["unwithered enemies are withered for 8 seconds when they enter your presence"] = { flag("Condition:CanWither") },
31503151
["nearby hindered enemies deal (%d+)%% reduced damage over time"] = function(num) return { mod("EnemyModifier", "LIST", { mod = mod("DamageOverTime", "INC", -num) }, { type = "ActorCondition", actor = "enemy", var = "Hindered" }) } end,
31513152
["nearby chilled enemies deal (%d+)%% reduced damage with hits"] = function(num) return { mod("EnemyModifier", "LIST", { mod = mod("Damage", "INC", -num) }, { type = "ActorCondition", actor = "enemy", var = "Chilled" }) } end,
31523153
-- Pathfinder
@@ -4335,7 +4336,7 @@ local specialModList = {
43354336
["(%d+)%% chance to inflict withered for (%d+) seconds on hit with this weapon"] = { flag("Condition:CanWither") },
43364337
["(%d+)%% chance to inflict withered for two seconds on hit if there are (%d+) or fewer withered debuffs on enemy"] = { flag("Condition:CanWither") },
43374338
["inflict withered for (%d+) seconds on hit with this weapon"] = { flag("Condition:CanWither") },
4338-
["minions have (%d+)%% chance to inflict withered on hit"] = { mod("MinionModifier", "LIST", { mod = flag("Condition:CanWither") }) },
4339+
["minions have (%d+)%% chance to inflict withered on hit"] = { flag("Condition:CanWither") },
43394340
["enemies take (%d+)%% increased elemental damage from your hits for each withered you have inflicted on them"] = function(num) return { mod("EnemyModifier", "LIST", { mod = mod("ElementalDamageTaken", "INC", num, { type = "Multiplier", var = "WitheredStack", limit = 15 }) }) } end,
43404341
["enemies you apply incision to take (%d+)%% increased physical damage per incision"] = function(num) return { mod("EnemyModifier", "LIST", { mod = mod("PhysicalDamageTaken", "INC", num, { type = "Multiplier", var = "IncisionStack" }) }) } end,
43414342
["your hits cannot penetrate or ignore elemental resistances"] = { flag("CannotElePenIgnore") },

0 commit comments

Comments
 (0)