You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Triggered Spells deal increased, gain rage on and inc damage pe chance block was added
* Stun Threshold Passive Nodes was added, LowestOfArmourAndEvasionOn was added
* Fix PerStat type in Stun Threshold
* Fix Stun Threshold per Strength mod
* Calcs information regarding Stun Threshold was improved
* Fix formatting
---------
Co-authored-by: justjuangui <servicios@juacarvajal.com>
Co-authored-by: LocalIdentity <localidentity2@gmail.com>
Copy file name to clipboardExpand all lines: src/Modules/ModParser.lua
+28Lines changed: 28 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -1151,6 +1151,7 @@ local preFlagList = {
1151
1151
["^non%-channelling skills have "] = { tag = { type = "SkillType", skillType = SkillType.Channel, neg = true } },
1152
1152
["^non%-vaal skills deal "] = { tag = { type = "SkillType", skillType = SkillType.Vaal, neg = true } },
1153
1153
["^skills [hgdf][aei][vari][eln] "] = { },
1154
+
["^triggered spells [hd][ae][va][el] "] = { keywordFlags = KeywordFlag.Spell, tag = { type = "SkillType", skillType = SkillType.Triggered } },
1154
1155
-- Slot specific
1155
1156
["^left ring slot: "] = { tag = { type = "SlotNumber", num = 1 } },
1156
1157
["^right ring slot: "] = { tag = { type = "SlotNumber", num = 2 } },
@@ -1357,6 +1358,7 @@ local modTagList = {
1357
1358
["per tailwind"] = { tag = { type = "Multiplier", var = "Tailwind" } },
1358
1359
-- Per stat
1359
1360
["per (%d+)%% of maximum mana they reserve"] = function(num) return { tag = { type = "PerStat", stat = "ManaReservedPercent", div = num } } end,
1361
+
["per strength"] = { tag = { type = "PerStat", stat = "Str"} },
1360
1362
["per (%d+) strength"] = function(num) return { tag = { type = "PerStat", stat = "Str", div = num } } end,
1361
1363
["per (%d+) dexterity"] = function(num) return { tag = { type = "PerStat", stat = "Dex", div = num } } end,
1362
1364
["per (%d+) intelligence"] = function(num) return { tag = { type = "PerStat", stat = "Int", div = num } } end,
@@ -1378,6 +1380,7 @@ local modTagList = {
1378
1380
["per (%d+) maximum mana, up to a maximum of (%d+)%%"] = function(num, _, limit) return { tag = { type = "PerStat", stat = "Mana", div = num, limit = tonumber(limit), limitTotal = true } } end,
1379
1381
["per (%d+) accuracy rating"] = function(num) return { tag = { type = "PerStat", stat = "Accuracy", div = num } } end,
1380
1382
["per (%d+)%% block chance"] = function(num) return { tag = { type = "PerStat", stat = "BlockChance", div = num } } end,
1383
+
["per (%d+)%% chance to block"] = function(num) return { tag = { type = "PerStat", stat = "BlockChance", div = num } } end,
1381
1384
["per (%d+)%% chance to block on equipped shield"] = function(num) return { tag = { type = "PerStat", stat = "ShieldBlockChance", div = num } } end,
1382
1385
["per (%d+)%% chance to block attack damage"] = function(num) return { tag = { type = "PerStat", stat = "BlockChance", div = num } } end,
1383
1386
["per (%d+)%% chance to block spell damage"] = function(num) return { tag = { type = "PerStat", stat = "SpellBlockChance", div = num } } end,
@@ -1622,6 +1625,8 @@ local modTagList = {
1622
1625
["while not cursed"] = { tag = { type = "Condition", var = "Cursed", neg = true } },
1623
1626
["while there is only one nearby enemy"] = { tagList = { { type = "Multiplier", var = "NearbyEnemies", limit = 1 }, { type = "Condition", var = "OnlyOneNearbyEnemy" } } },
1624
1627
["while t?h?e?r?e? ?i?s? ?a rare or unique enemy i?s? ?nearby"] = { tag = { type = "ActorCondition", actor = "enemy", varList = { "NearbyRareOrUniqueEnemy", "RareOrUnique" } } },
1628
+
["if you have been stunned recently"] = { tag = { type = "Condition", var = "StunnedRecently" } },
1629
+
["if you haven't been stunned recently"] = { tag = { type = "Condition", var = "StunnedRecently", neg = true } },
1625
1630
["if you[' ]h?a?ve hit recently"] = { tag = { type = "Condition", var = "HitRecently" } },
1626
1631
["if you[' ]h?a?ve hit an enemy recently"] = { tag = { type = "Condition", var = "HitRecently" } },
1627
1632
["if you[' ]h?a?ve hit with your main hand weapon recently"] = { tag = { type = "Condition", var = "HitRecentlyWithWeapon" } },
@@ -2316,6 +2321,9 @@ local specialModList = {
2316
2321
["gain %d+ rage on melee weapon hit"] = {
2317
2322
flag("Condition:CanGainRage"),
2318
2323
},
2324
+
["gain %d+ rage on ([%D]+)"] = {
2325
+
flag("Condition:CanGainRage"),
2326
+
},
2319
2327
["gain %d+ rage on hit with axes"] = {
2320
2328
flag("Condition:CanGainRage"),
2321
2329
},
@@ -4300,6 +4308,26 @@ local specialModList = {
4300
4308
flag("CurseImmune", { type = "Condition", var = "UsingFlask" }),
4301
4309
flag("StunImmune", { type = "Condition", var = "UsingFlask" }),
4302
4310
},
4311
+
["gain (%d+)%% of maximum energy shield as additional (%a+) threshold"] = function(num, _, statType)
4312
+
return { mod(firstToUpper(statType) .. "Threshold", "BASE", 1, { type = "PercentStat", stat = "EnergyShield", percent = num }) }
4313
+
end,
4314
+
["(%d+)%% increased maximum life, mana and energy shield"] = function(num) return {
4315
+
mod("Life", "INC", num),
4316
+
mod("Mana", "INC", num),
4317
+
mod("EnergyShield", "INC", num),
4318
+
} end,
4319
+
["gain stun threshold equal to the lowest of evasion and armour on your helmet"] = {
4320
+
mod("StunThreshold", "BASE", 1, { type = "PerStat", stat = "LowestOfArmourAndEvasionOnHelmet" }),
4321
+
},
4322
+
["your stun threshold is doubled"] = {
4323
+
mod("StunThreshold", "MORE", 100),
4324
+
},
4325
+
["(%d+)%% of base armour from equipment also added to stun threshold"] = function(num) return {
4326
+
mod("StunThreshold", "BASE", 1, { type = "PerStat", stat = "ArmourOnHelmet", percent = num }),
4327
+
mod("StunThreshold", "BASE", 1, { type = "PerStat", stat = "ArmourOnGloves", percent = num }),
4328
+
mod("StunThreshold", "BASE", 1, { type = "PerStat", stat = "ArmourOnBoots", percent = num }),
4329
+
mod("StunThreshold", "BASE", 1, { type = "PerStat", stat = "ArmourOnBody Armour", percent = num }),
4330
+
} end,
4303
4331
-- This mod doesn't work the way it should. It prevents self-chill among other issues.
4304
4332
--Since we don't currently really do anything with enemy ailment infliction, this should probably be removed
4305
4333
--["cursed enemies cannot inflict elemental ailments on you"] = {
0 commit comments