From 842f860d09b74ee642deac1d76b7fb1df8b9f374 Mon Sep 17 00:00:00 2001 From: Blitz54 Date: Mon, 8 Jun 2026 10:56:19 -0500 Subject: [PATCH 01/13] Runic Ward export and copy paste fix --- src/Classes/Item.lua | 6 +- src/Data/Bases/body.lua | 420 +++++++++++++++++------------------ src/Data/Bases/boots.lua | 202 ++++++++--------- src/Data/Bases/focus.lua | 56 ++--- src/Data/Bases/gloves.lua | 218 +++++++++--------- src/Data/Bases/helmet.lua | 286 ++++++++++++------------ src/Data/Bases/shield.lua | 220 +++++++++--------- src/Export/Scripts/bases.lua | 8 +- src/Modules/ModParser.lua | 5 +- 9 files changed, 711 insertions(+), 710 deletions(-) diff --git a/src/Classes/Item.lua b/src/Classes/Item.lua index 75fe9bf89..d1d725602 100644 --- a/src/Classes/Item.lua +++ b/src/Classes/Item.lua @@ -581,7 +581,7 @@ function ItemClass:ParseRaw(raw, rarity, highQuality) end elseif specName == "Talisman Tier" then self.talismanTier = specToNumber(specVal) - elseif specName == "Armour" or specName == "Evasion Rating" or specName == "Evasion" or specName == "Energy Shield" or specName == "Ward" then + elseif specName == "Armour" or specName == "Evasion Rating" or specName == "Evasion" or specName == "Energy Shield" or specName == "Runic Ward" then if specName == "Evasion Rating" then specName = "Evasion" if self.baseName == "Two-Toned Boots (Armour/Energy Shield)" then @@ -1297,9 +1297,9 @@ function ItemClass:BuildRaw() t_insert(rawLines, "Spirit: " .. self.spiritValue) end if self.armourData then - for _, type in ipairs({ "Armour", "Evasion", "EnergyShield", "Ward" }) do + for _, type in ipairs({ "Armour", "Evasion", "EnergyShield", "RunicWard" }) do if self.armourData[type] and self.armourData[type] > 0 then - t_insert(rawLines, type:gsub("EnergyShield", "Energy Shield") .. ": " .. self.armourData[type]) + t_insert(rawLines, type:gsub("EnergyShield", "Energy Shield"):gsub("RunicWard", "Runic Ward") .. ": " .. self.armourData[type]) end end end diff --git a/src/Data/Bases/body.lua b/src/Data/Bases/body.lua index 18b5438ba..17f5f77e0 100644 --- a/src/Data/Bases/body.lua +++ b/src/Data/Bases/body.lua @@ -265,7 +265,7 @@ itemBases["Runeforged Rusted Cuirass"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, ezomyte_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 45, Ward = 29, MovementPenalty = 0.05, }, + armour = { Armour = 45, RunicWard = 29, MovementPenalty = 0.05, }, req = { }, } itemBases["Runeforged Fur Plate"] = { @@ -275,7 +275,7 @@ itemBases["Runeforged Fur Plate"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, ezomyte_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 66, Ward = 33, MovementPenalty = 0.05, }, + armour = { Armour = 66, RunicWard = 33, MovementPenalty = 0.05, }, req = { str = 10, }, } itemBases["Runeforged Iron Cuirass"] = { @@ -285,7 +285,7 @@ itemBases["Runeforged Iron Cuirass"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, ezomyte_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 115, Ward = 43, MovementPenalty = 0.05, }, + armour = { Armour = 115, RunicWard = 43, MovementPenalty = 0.05, }, req = { level = 11, str = 21, }, } itemBases["Runeforged Raider Plate"] = { @@ -295,7 +295,7 @@ itemBases["Runeforged Raider Plate"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, maraketh_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 150, Ward = 53, MovementPenalty = 0.05, }, + armour = { Armour = 150, RunicWard = 53, MovementPenalty = 0.05, }, req = { level = 16, str = 28, }, } itemBases["Runeforged Maraketh Cuirass"] = { @@ -305,7 +305,7 @@ itemBases["Runeforged Maraketh Cuirass"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, maraketh_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 178, Ward = 61, MovementPenalty = 0.05, }, + armour = { Armour = 178, RunicWard = 61, MovementPenalty = 0.05, }, req = { level = 20, str = 34, }, } itemBases["Runeforged Steel Plate"] = { @@ -315,7 +315,7 @@ itemBases["Runeforged Steel Plate"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, maraketh_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 228, Ward = 64, MovementPenalty = 0.05, }, + armour = { Armour = 228, RunicWard = 64, MovementPenalty = 0.05, }, req = { level = 27, str = 45, }, } itemBases["Runeforged Full Plate"] = { @@ -325,7 +325,7 @@ itemBases["Runeforged Full Plate"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 270, Ward = 69, MovementPenalty = 0.05, }, + armour = { Armour = 270, RunicWard = 69, MovementPenalty = 0.05, }, req = { level = 33, str = 54, }, } itemBases["Runeforged Vaal Cuirass"] = { @@ -335,7 +335,7 @@ itemBases["Runeforged Vaal Cuirass"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 298, Ward = 70, MovementPenalty = 0.05, }, + armour = { Armour = 298, RunicWard = 70, MovementPenalty = 0.05, }, req = { level = 37, str = 60, }, } itemBases["Runeforged Juggernaut Plate"] = { @@ -345,7 +345,7 @@ itemBases["Runeforged Juggernaut Plate"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, karui_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 355, Ward = 76, MovementPenalty = 0.05, }, + armour = { Armour = 355, RunicWard = 76, MovementPenalty = 0.05, }, req = { level = 45, str = 72, }, } itemBases["Runeforged Chieftain Cuirass"] = { @@ -355,7 +355,7 @@ itemBases["Runeforged Chieftain Cuirass"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, karui_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 390, Ward = 69, MovementPenalty = 0.05, }, + armour = { Armour = 390, RunicWard = 69, MovementPenalty = 0.05, }, req = { level = 50, str = 80, }, } itemBases["Runeforged Colosseum Plate"] = { @@ -365,7 +365,7 @@ itemBases["Runeforged Colosseum Plate"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Ward = 356, MovementPenalty = 0.05, }, + armour = { RunicWard = 356, MovementPenalty = 0.05, }, req = { level = 52, str = 83, }, } itemBases["Runeforged Champion Cuirass"] = { @@ -386,7 +386,7 @@ itemBases["Runeforged Glorious Plate"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Ward = 430, MovementPenalty = 0.05, }, + armour = { RunicWard = 430, MovementPenalty = 0.05, }, req = { level = 65, str = 121, }, } itemBases["Runeforged Conqueror Plate"] = { @@ -408,7 +408,7 @@ itemBases["Runeforged Abyssal Cuirass"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_armour = true, }, implicit = "Regenerate (1.5-2.5)% of maximum Life per second", implicitModTypes = { { "resource", "life" }, }, - armour = { Ward = 430, MovementPenalty = 0.05, }, + armour = { RunicWard = 430, MovementPenalty = 0.05, }, req = { level = 73, str = 121, }, } itemBases["Runeforged Elegant Plate"] = { @@ -418,7 +418,7 @@ itemBases["Runeforged Elegant Plate"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 397, Ward = 73, MovementPenalty = 0.05, }, + armour = { Armour = 397, RunicWard = 73, MovementPenalty = 0.05, }, req = { level = 54, str = 86, }, } itemBases["Runeforged Heavy Plate"] = { @@ -428,7 +428,7 @@ itemBases["Runeforged Heavy Plate"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 340, Ward = 158, MovementPenalty = 0.05, }, + armour = { Armour = 340, RunicWard = 158, MovementPenalty = 0.05, }, req = { level = 59, str = 94, }, } itemBases["Runeforged Stone Cuirass"] = { @@ -438,7 +438,7 @@ itemBases["Runeforged Stone Cuirass"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 403, Ward = 103, MovementPenalty = 0.05, }, + armour = { Armour = 403, RunicWard = 103, MovementPenalty = 0.05, }, req = { level = 62, str = 98, }, } itemBases["Runeforged Soldier Cuirass"] = { @@ -448,7 +448,7 @@ itemBases["Runeforged Soldier Cuirass"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 173, Ward = 365, MovementPenalty = 0.05, }, + armour = { Armour = 173, RunicWard = 365, MovementPenalty = 0.05, }, req = { level = 65, str = 121, }, } itemBases["Runeforged Ornate Plate"] = { @@ -459,7 +459,7 @@ itemBases["Runeforged Ornate Plate"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_armour = true, }, implicit = "Regenerate (1.5-2.5)% of maximum Life per second", implicitModTypes = { { "resource", "life" }, }, - armour = { Armour = 273, Ward = 236, MovementPenalty = 0.05, }, + armour = { Armour = 273, RunicWard = 236, MovementPenalty = 0.05, }, req = { level = 70, str = 121, }, } itemBases["Runeforged Utzaal Cuirass"] = { @@ -470,7 +470,7 @@ itemBases["Runeforged Utzaal Cuirass"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_armour = true, }, implicit = "(30-40)% increased Stun Threshold", implicitModTypes = { { }, }, - armour = { Armour = 421, Ward = 107, MovementPenalty = 0.05, }, + armour = { Armour = 421, RunicWard = 107, MovementPenalty = 0.05, }, req = { level = 75, str = 121, }, } itemBases["Runeforged Warlord Cuirass"] = { @@ -481,7 +481,7 @@ itemBases["Runeforged Warlord Cuirass"] = { tags = { armour = true, body_armour = true, default = true, karui_basetype = true, runeforged = true, str_armour = true, }, implicit = "+(15-25)% of Armour also applies to Elemental Damage", implicitModTypes = { { "defences", "armour", "elemental" }, }, - armour = { Armour = 446, Ward = 86, MovementPenalty = 0.05, }, + armour = { Armour = 446, RunicWard = 86, MovementPenalty = 0.05, }, req = { level = 80, str = 121, }, } itemBases["Runeforged Fur Plate"] = { @@ -492,7 +492,7 @@ itemBases["Runeforged Fur Plate"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, ezomyte_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 275, Ward = 69, MovementPenalty = 0.05, }, + armour = { Armour = 275, RunicWard = 69, MovementPenalty = 0.05, }, req = { level = 38, str = 61, }, } itemBases["Runemastered Rusted Cuirass"] = { @@ -503,7 +503,7 @@ itemBases["Runemastered Rusted Cuirass"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, ezomyte_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 244, Ward = 110, MovementPenalty = 0.05, }, + armour = { Armour = 244, RunicWard = 110, MovementPenalty = 0.05, }, req = { level = 38, str = 61, }, } itemBases["Runemastered Iron Cuirass"] = { @@ -514,7 +514,7 @@ itemBases["Runemastered Iron Cuirass"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, ezomyte_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 260, Ward = 55, MovementPenalty = 0.05, }, + armour = { Armour = 260, RunicWard = 55, MovementPenalty = 0.05, }, req = { level = 38, str = 61, }, } itemBases["Runemastered Raider Plate"] = { @@ -525,7 +525,7 @@ itemBases["Runemastered Raider Plate"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, maraketh_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 61, Ward = 221, MovementPenalty = 0.05, }, + armour = { Armour = 61, RunicWard = 221, MovementPenalty = 0.05, }, req = { level = 38, str = 61, }, } itemBases["Runemastered Maraketh Cuirass"] = { @@ -536,7 +536,7 @@ itemBases["Runemastered Maraketh Cuirass"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, maraketh_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 275, Ward = 28, MovementPenalty = 0.05, }, + armour = { Armour = 275, RunicWard = 28, MovementPenalty = 0.05, }, req = { level = 38, str = 61, }, } itemBases["Runemastered Steel Plate"] = { @@ -547,7 +547,7 @@ itemBases["Runemastered Steel Plate"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, maraketh_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 271, Ward = 43, MovementPenalty = 0.05, }, + armour = { Armour = 271, RunicWard = 43, MovementPenalty = 0.05, }, req = { level = 40, str = 65, }, } itemBases["Runemastered Full Plate"] = { @@ -558,7 +558,7 @@ itemBases["Runemastered Full Plate"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 231, Ward = 126, MovementPenalty = 0.05, }, + armour = { Armour = 231, RunicWard = 126, MovementPenalty = 0.05, }, req = { level = 45, str = 72, }, } itemBases["Runemastered Vaal Cuirass"] = { @@ -569,7 +569,7 @@ itemBases["Runemastered Vaal Cuirass"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 340, Ward = 93, MovementPenalty = 0.05, }, + armour = { Armour = 340, RunicWard = 93, MovementPenalty = 0.05, }, req = { level = 55, str = 87, }, } @@ -835,7 +835,7 @@ itemBases["Runeforged Leather Vest"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, ezomyte_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 30, Ward = 29, MovementPenalty = 0.03, }, + armour = { Evasion = 30, RunicWard = 29, MovementPenalty = 0.03, }, req = { }, } itemBases["Runeforged Quilted Vest"] = { @@ -845,7 +845,7 @@ itemBases["Runeforged Quilted Vest"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, ezomyte_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 49, Ward = 33, MovementPenalty = 0.03, }, + armour = { Evasion = 49, RunicWard = 33, MovementPenalty = 0.03, }, req = { dex = 10, }, } itemBases["Runeforged Pathfinder Coat"] = { @@ -855,7 +855,7 @@ itemBases["Runeforged Pathfinder Coat"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, ezomyte_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 96, Ward = 43, MovementPenalty = 0.03, }, + armour = { Evasion = 96, RunicWard = 43, MovementPenalty = 0.03, }, req = { level = 11, dex = 21, }, } itemBases["Runeforged Shrouded Vest"] = { @@ -865,7 +865,7 @@ itemBases["Runeforged Shrouded Vest"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 128, Ward = 53, MovementPenalty = 0.03, }, + armour = { Evasion = 128, RunicWard = 53, MovementPenalty = 0.03, }, req = { level = 16, dex = 28, }, } itemBases["Runeforged Rhoahide Coat"] = { @@ -875,7 +875,7 @@ itemBases["Runeforged Rhoahide Coat"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 168, Ward = 65, MovementPenalty = 0.03, }, + armour = { Evasion = 168, RunicWard = 65, MovementPenalty = 0.03, }, req = { level = 22, dex = 37, }, } itemBases["Runeforged Studded Vest"] = { @@ -885,7 +885,7 @@ itemBases["Runeforged Studded Vest"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 194, Ward = 62, MovementPenalty = 0.03, }, + armour = { Evasion = 194, RunicWard = 62, MovementPenalty = 0.03, }, req = { level = 26, dex = 43, }, } itemBases["Runeforged Scout's Vest"] = { @@ -895,7 +895,7 @@ itemBases["Runeforged Scout's Vest"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 240, Ward = 69, MovementPenalty = 0.03, }, + armour = { Evasion = 240, RunicWard = 69, MovementPenalty = 0.03, }, req = { level = 33, dex = 54, }, } itemBases["Runeforged Serpentscale Coat"] = { @@ -905,7 +905,7 @@ itemBases["Runeforged Serpentscale Coat"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 260, Ward = 69, MovementPenalty = 0.03, }, + armour = { Evasion = 260, RunicWard = 69, MovementPenalty = 0.03, }, req = { level = 36, dex = 59, }, } itemBases["Runeforged Corsair Vest"] = { @@ -915,7 +915,7 @@ itemBases["Runeforged Corsair Vest"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 320, Ward = 76, MovementPenalty = 0.03, }, + armour = { Evasion = 320, RunicWard = 76, MovementPenalty = 0.03, }, req = { level = 45, dex = 72, }, } itemBases["Runeforged Smuggler Coat"] = { @@ -925,7 +925,7 @@ itemBases["Runeforged Smuggler Coat"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 359, Ward = 70, MovementPenalty = 0.03, }, + armour = { Evasion = 359, RunicWard = 70, MovementPenalty = 0.03, }, req = { level = 51, dex = 82, }, } itemBases["Runeforged Strider Vest"] = { @@ -935,7 +935,7 @@ itemBases["Runeforged Strider Vest"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 356, MovementPenalty = 0.03, }, + armour = { RunicWard = 356, MovementPenalty = 0.03, }, req = { level = 52, dex = 83, }, } itemBases["Runeforged Hardleather Coat"] = { @@ -945,7 +945,7 @@ itemBases["Runeforged Hardleather Coat"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 378, MovementPenalty = 0.03, }, + armour = { RunicWard = 378, MovementPenalty = 0.03, }, req = { level = 56, dex = 89, }, } itemBases["Runeforged Exquisite Vest"] = { @@ -955,7 +955,7 @@ itemBases["Runeforged Exquisite Vest"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 430, MovementPenalty = 0.03, }, + armour = { RunicWard = 430, MovementPenalty = 0.03, }, req = { level = 65, dex = 85, int = 85, }, } itemBases["Runeforged Mail Coat"] = { @@ -966,7 +966,7 @@ itemBases["Runeforged Mail Coat"] = { tags = { armour = true, body_armour = true, default = true, dex_armour = true, runeforged = true, }, implicit = "(20-30)% reduced Slowing Potency of Debuffs on You", implicitModTypes = { { }, }, - armour = { Ward = 430, MovementPenalty = 0.03, }, + armour = { RunicWard = 430, MovementPenalty = 0.03, }, req = { level = 68, dex = 121, }, } itemBases["Runeforged Armoured Vest"] = { @@ -977,7 +977,7 @@ itemBases["Runeforged Armoured Vest"] = { tags = { armour = true, body_armour = true, default = true, dex_armour = true, runeforged = true, }, implicit = "(30-40)% increased Elemental Ailment Threshold", implicitModTypes = { { "ailment" }, }, - armour = { Ward = 430, MovementPenalty = 0.03, }, + armour = { RunicWard = 430, MovementPenalty = 0.03, }, req = { level = 73, dex = 121, }, } itemBases["Runeforged Layered Vest"] = { @@ -987,7 +987,7 @@ itemBases["Runeforged Layered Vest"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 360, Ward = 73, MovementPenalty = 0.03, }, + armour = { Evasion = 360, RunicWard = 73, MovementPenalty = 0.03, }, req = { level = 54, dex = 86, }, } itemBases["Runeforged Runner Vest"] = { @@ -997,7 +997,7 @@ itemBases["Runeforged Runner Vest"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 350, Ward = 119, MovementPenalty = 0.03, }, + armour = { Evasion = 350, RunicWard = 119, MovementPenalty = 0.03, }, req = { level = 59, dex = 94, }, } itemBases["Runeforged Lizardscale Coat"] = { @@ -1007,7 +1007,7 @@ itemBases["Runeforged Lizardscale Coat"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 324, Ward = 144, MovementPenalty = 0.03, }, + armour = { Evasion = 324, RunicWard = 144, MovementPenalty = 0.03, }, req = { level = 62, dex = 98, }, } itemBases["Runeforged Swiftstalker Coat"] = { @@ -1018,7 +1018,7 @@ itemBases["Runeforged Swiftstalker Coat"] = { tags = { armour = true, body_armour = true, default = true, dex_armour = true, runeforged = true, }, implicit = "(20-30)% reduced Slowing Potency of Debuffs on You", implicitModTypes = { { }, }, - armour = { Evasion = 429, Ward = 64, MovementPenalty = 0.03, }, + armour = { Evasion = 429, RunicWard = 64, MovementPenalty = 0.03, }, req = { level = 65, dex = 121, }, } itemBases["Runeforged Slipstrike Vest"] = { @@ -1028,7 +1028,7 @@ itemBases["Runeforged Slipstrike Vest"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 144, Ward = 378, MovementPenalty = 0.03, }, + armour = { Evasion = 144, RunicWard = 378, MovementPenalty = 0.03, }, req = { level = 70, dex = 121, }, } itemBases["Runeforged Wyrmscale Coat"] = { @@ -1039,7 +1039,7 @@ itemBases["Runeforged Wyrmscale Coat"] = { tags = { armour = true, body_armour = true, default = true, dex_armour = true, runeforged = true, }, implicit = "(30-40)% increased Elemental Ailment Threshold", implicitModTypes = { { "ailment" }, }, - armour = { Evasion = 248, Ward = 236, MovementPenalty = 0.03, }, + armour = { Evasion = 248, RunicWard = 236, MovementPenalty = 0.03, }, req = { level = 75, dex = 121, }, } itemBases["Runeforged Corsair Coat"] = { @@ -1050,7 +1050,7 @@ itemBases["Runeforged Corsair Coat"] = { tags = { armour = true, body_armour = true, default = true, dex_armour = true, karui_basetype = true, runeforged = true, }, implicit = "5% increased Movement Speed", implicitModTypes = { { "speed" }, }, - armour = { Evasion = 384, Ward = 107, MovementPenalty = 0.03, }, + armour = { Evasion = 384, RunicWard = 107, MovementPenalty = 0.03, }, req = { level = 80, dex = 121, }, } itemBases["Runemastered Leather Vest"] = { @@ -1061,7 +1061,7 @@ itemBases["Runemastered Leather Vest"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, ezomyte_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 82, Ward = 165, MovementPenalty = 0.03, }, + armour = { Evasion = 82, RunicWard = 165, MovementPenalty = 0.03, }, req = { level = 38, dex = 61, }, } itemBases["Runemastered Quilted Vest"] = { @@ -1072,7 +1072,7 @@ itemBases["Runemastered Quilted Vest"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, ezomyte_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 178, Ward = 152, MovementPenalty = 0.03, }, + armour = { Evasion = 178, RunicWard = 152, MovementPenalty = 0.03, }, req = { level = 38, dex = 61, }, } itemBases["Runemastered Pathfinder Coat"] = { @@ -1083,7 +1083,7 @@ itemBases["Runemastered Pathfinder Coat"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, ezomyte_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 219, Ward = 55, MovementPenalty = 0.03, }, + armour = { Evasion = 219, RunicWard = 55, MovementPenalty = 0.03, }, req = { level = 38, dex = 61, }, } itemBases["Runemastered Shrouded Vest"] = { @@ -1094,7 +1094,7 @@ itemBases["Runemastered Shrouded Vest"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 164, Ward = 138, MovementPenalty = 0.03, }, + armour = { Evasion = 164, RunicWard = 138, MovementPenalty = 0.03, }, req = { level = 38, dex = 61, }, } itemBases["Runemastered Rhoahide Coat"] = { @@ -1105,7 +1105,7 @@ itemBases["Runemastered Rhoahide Coat"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 219, Ward = 69, MovementPenalty = 0.03, }, + armour = { Evasion = 219, RunicWard = 69, MovementPenalty = 0.03, }, req = { level = 38, dex = 61, }, } itemBases["Runemastered Studded Vest"] = { @@ -1116,7 +1116,7 @@ itemBases["Runemastered Studded Vest"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 301, Ward = 29, MovementPenalty = 0.03, }, + armour = { Evasion = 301, RunicWard = 29, MovementPenalty = 0.03, }, req = { level = 40, dex = 65, }, } itemBases["Runemastered Scout's Vest"] = { @@ -1127,7 +1127,7 @@ itemBases["Runemastered Scout's Vest"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 270, Ward = 130, MovementPenalty = 0.03, }, + armour = { Evasion = 270, RunicWard = 130, MovementPenalty = 0.03, }, req = { level = 55, dex = 87, }, } itemBases["Runemastered Serpentscale Coat"] = { @@ -1138,7 +1138,7 @@ itemBases["Runemastered Serpentscale Coat"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 385, Ward = 19, MovementPenalty = 0.03, }, + armour = { Evasion = 385, RunicWard = 19, MovementPenalty = 0.03, }, req = { level = 55, dex = 87, }, } itemBases["Runemastered Smuggler Coat"] = { @@ -1149,7 +1149,7 @@ itemBases["Runemastered Smuggler Coat"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 406, Ward = 86, MovementPenalty = 0.03, }, + armour = { Evasion = 406, RunicWard = 86, MovementPenalty = 0.03, }, req = { level = 65, dex = 103, }, } itemBases["Runemastered Strider Vest"] = { @@ -1160,7 +1160,7 @@ itemBases["Runemastered Strider Vest"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 384, Ward = 107, MovementPenalty = 0.03, }, + armour = { Evasion = 384, RunicWard = 107, MovementPenalty = 0.03, }, req = { level = 70, dex = 103, }, } itemBases["Runemastered Exquisite Vest"] = { @@ -1171,7 +1171,7 @@ itemBases["Runemastered Exquisite Vest"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 338, Ward = 86, MovementPenalty = 0.03, }, + armour = { Evasion = 338, RunicWard = 86, MovementPenalty = 0.03, }, req = { level = 70, dex = 121, }, } itemBases["Runemastered Armoured Vest"] = { @@ -1183,7 +1183,7 @@ itemBases["Runemastered Armoured Vest"] = { tags = { armour = true, body_armour = true, default = true, dex_armour = true, runeforged = true, }, implicit = "(30-40)% increased Elemental Ailment Threshold", implicitModTypes = { { "ailment" }, }, - armour = { Evasion = 361, Ward = 129, MovementPenalty = 0.03, }, + armour = { Evasion = 361, RunicWard = 129, MovementPenalty = 0.03, }, req = { level = 80, dex = 121, }, } @@ -1449,7 +1449,7 @@ itemBases["Runeforged Tattered Robe"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, ezomyte_basetype = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 28, Ward = 29, MovementPenalty = 0.03, }, + armour = { EnergyShield = 28, RunicWard = 29, MovementPenalty = 0.03, }, req = { }, } itemBases["Runeforged Feathered Robe"] = { @@ -1459,7 +1459,7 @@ itemBases["Runeforged Feathered Robe"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, ezomyte_basetype = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 35, Ward = 35, MovementPenalty = 0.03, }, + armour = { EnergyShield = 35, RunicWard = 35, MovementPenalty = 0.03, }, req = { level = 5, int = 11, }, } itemBases["Runeforged Hexer's Robe"] = { @@ -1469,7 +1469,7 @@ itemBases["Runeforged Hexer's Robe"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, ezomyte_basetype = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 45, Ward = 43, MovementPenalty = 0.03, }, + armour = { EnergyShield = 45, RunicWard = 43, MovementPenalty = 0.03, }, req = { level = 11, int = 21, }, } itemBases["Runeforged Bone Raiment"] = { @@ -1479,7 +1479,7 @@ itemBases["Runeforged Bone Raiment"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 54, Ward = 53, MovementPenalty = 0.03, }, + armour = { EnergyShield = 54, RunicWard = 53, MovementPenalty = 0.03, }, req = { level = 16, int = 28, }, } itemBases["Runeforged Silk Robe"] = { @@ -1489,7 +1489,7 @@ itemBases["Runeforged Silk Robe"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 64, Ward = 65, MovementPenalty = 0.03, }, + armour = { EnergyShield = 64, RunicWard = 65, MovementPenalty = 0.03, }, req = { level = 22, int = 37, }, } itemBases["Runeforged Keth Raiment"] = { @@ -1499,7 +1499,7 @@ itemBases["Runeforged Keth Raiment"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 74, Ward = 66, MovementPenalty = 0.03, }, + armour = { EnergyShield = 74, RunicWard = 66, MovementPenalty = 0.03, }, req = { level = 28, int = 47, }, } itemBases["Runeforged Votive Raiment"] = { @@ -1509,7 +1509,7 @@ itemBases["Runeforged Votive Raiment"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { EnergyShield = 83, Ward = 69, MovementPenalty = 0.03, }, + armour = { EnergyShield = 83, RunicWard = 69, MovementPenalty = 0.03, }, req = { level = 33, int = 54, }, } itemBases["Runeforged Altar Robe"] = { @@ -1519,7 +1519,7 @@ itemBases["Runeforged Altar Robe"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { EnergyShield = 95, Ward = 75, MovementPenalty = 0.03, }, + armour = { EnergyShield = 95, RunicWard = 75, MovementPenalty = 0.03, }, req = { level = 40, int = 65, }, } itemBases["Runeforged Elementalist Robe"] = { @@ -1529,7 +1529,7 @@ itemBases["Runeforged Elementalist Robe"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 103, Ward = 76, MovementPenalty = 0.03, }, + armour = { EnergyShield = 103, RunicWard = 76, MovementPenalty = 0.03, }, req = { level = 45, int = 72, }, } itemBases["Runeforged Mystic Raiment"] = { @@ -1539,7 +1539,7 @@ itemBases["Runeforged Mystic Raiment"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 110, Ward = 68, MovementPenalty = 0.03, }, + armour = { EnergyShield = 110, RunicWard = 68, MovementPenalty = 0.03, }, req = { level = 49, int = 78, }, } itemBases["Runeforged Imperial Robe"] = { @@ -1549,7 +1549,7 @@ itemBases["Runeforged Imperial Robe"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 356, MovementPenalty = 0.03, }, + armour = { RunicWard = 356, MovementPenalty = 0.03, }, req = { level = 52, int = 83, }, } itemBases["Runeforged Plated Raiment"] = { @@ -1559,7 +1559,7 @@ itemBases["Runeforged Plated Raiment"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 390, MovementPenalty = 0.03, }, + armour = { RunicWard = 390, MovementPenalty = 0.03, }, req = { level = 58, int = 92, }, } itemBases["Runeforged Havoc Raiment"] = { @@ -1569,7 +1569,7 @@ itemBases["Runeforged Havoc Raiment"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 430, MovementPenalty = 0.03, }, + armour = { RunicWard = 430, MovementPenalty = 0.03, }, req = { level = 65, int = 121, }, } itemBases["Runeforged Enlightened Robe"] = { @@ -1580,7 +1580,7 @@ itemBases["Runeforged Enlightened Robe"] = { tags = { armour = true, body_armour = true, default = true, int_armour = true, runeforged = true, }, implicit = "(40-50)% increased Mana Regeneration Rate", implicitModTypes = { { "resource", "mana" }, }, - armour = { Ward = 430, MovementPenalty = 0.03, }, + armour = { RunicWard = 430, MovementPenalty = 0.03, }, req = { level = 68, int = 121, }, } itemBases["Runeforged Arcane Raiment"] = { @@ -1591,7 +1591,7 @@ itemBases["Runeforged Arcane Raiment"] = { tags = { armour = true, body_armour = true, default = true, int_armour = true, runeforged = true, }, implicit = "(20-25)% increased Energy Shield Recharge Rate", implicitModTypes = { { "defences", "energy_shield" }, }, - armour = { Ward = 430, MovementPenalty = 0.03, }, + armour = { RunicWard = 430, MovementPenalty = 0.03, }, req = { level = 73, int = 121, }, } itemBases["Runeforged River Raiment"] = { @@ -1601,7 +1601,7 @@ itemBases["Runeforged River Raiment"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 113, Ward = 73, MovementPenalty = 0.03, }, + armour = { EnergyShield = 113, RunicWard = 73, MovementPenalty = 0.03, }, req = { level = 54, int = 86, }, } itemBases["Runeforged Adherent's Raiment"] = { @@ -1611,7 +1611,7 @@ itemBases["Runeforged Adherent's Raiment"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 102, Ward = 138, MovementPenalty = 0.03, }, + armour = { EnergyShield = 102, RunicWard = 138, MovementPenalty = 0.03, }, req = { level = 59, int = 94, }, } itemBases["Runeforged Ceremonial Robe"] = { @@ -1621,7 +1621,7 @@ itemBases["Runeforged Ceremonial Robe"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 113, Ward = 103, MovementPenalty = 0.03, }, + armour = { EnergyShield = 113, RunicWard = 103, MovementPenalty = 0.03, }, req = { level = 62, int = 98, }, } itemBases["Runeforged Vile Robe"] = { @@ -1631,7 +1631,7 @@ itemBases["Runeforged Vile Robe"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 41, Ward = 387, MovementPenalty = 0.03, }, + armour = { EnergyShield = 41, RunicWard = 387, MovementPenalty = 0.03, }, req = { level = 65, int = 121, }, } itemBases["Runeforged Flowing Raiment"] = { @@ -1642,7 +1642,7 @@ itemBases["Runeforged Flowing Raiment"] = { tags = { armour = true, body_armour = true, default = true, int_armour = true, runeforged = true, }, implicit = "(30-40)% increased Runic Ward Regeneration Rate", implicitModTypes = { { "runic_ward" }, }, - armour = { EnergyShield = 76, Ward = 236, MovementPenalty = 0.03, }, + armour = { EnergyShield = 76, RunicWard = 236, MovementPenalty = 0.03, }, req = { level = 70, int = 121, }, } itemBases["Runeforged Sacramental Robe"] = { @@ -1653,7 +1653,7 @@ itemBases["Runeforged Sacramental Robe"] = { tags = { armour = true, body_armour = true, default = true, int_armour = true, runeforged = true, }, implicit = "(20-25)% increased Energy Shield Recharge Rate", implicitModTypes = { { "defences", "energy_shield" }, }, - armour = { EnergyShield = 138, Ward = 64, MovementPenalty = 0.03, }, + armour = { EnergyShield = 138, RunicWard = 64, MovementPenalty = 0.03, }, req = { level = 75, int = 121, }, } itemBases["Runeforged Feathered Raiment"] = { @@ -1664,7 +1664,7 @@ itemBases["Runeforged Feathered Raiment"] = { tags = { armour = true, body_armour = true, default = true, int_armour = true, karui_basetype = true, runeforged = true, }, implicit = "(5-10)% of Damage is taken from Mana before Life", implicitModTypes = { { "resource", "life", "mana" }, }, - armour = { EnergyShield = 124, Ward = 133, MovementPenalty = 0.03, }, + armour = { EnergyShield = 124, RunicWard = 133, MovementPenalty = 0.03, }, req = { level = 80, int = 121, }, } itemBases["Runemastered Tattered Robe"] = { @@ -1675,7 +1675,7 @@ itemBases["Runemastered Tattered Robe"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, ezomyte_basetype = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 9, Ward = 138, MovementPenalty = 0.03, }, + armour = { EnergyShield = 9, RunicWard = 138, MovementPenalty = 0.03, }, req = { level = 38, int = 61, }, } itemBases["Runemastered Feathered Robe"] = { @@ -1686,7 +1686,7 @@ itemBases["Runemastered Feathered Robe"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, ezomyte_basetype = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 55, Ward = 99, MovementPenalty = 0.03, }, + armour = { EnergyShield = 55, RunicWard = 99, MovementPenalty = 0.03, }, req = { level = 38, int = 61, }, } itemBases["Runemastered Hexer's Robe"] = { @@ -1697,7 +1697,7 @@ itemBases["Runemastered Hexer's Robe"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, ezomyte_basetype = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 64, Ward = 83, MovementPenalty = 0.03, }, + armour = { EnergyShield = 64, RunicWard = 83, MovementPenalty = 0.03, }, req = { level = 38, int = 61, }, } itemBases["Runemastered Bone Raiment"] = { @@ -1708,7 +1708,7 @@ itemBases["Runemastered Bone Raiment"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 46, Ward = 138, MovementPenalty = 0.03, }, + armour = { EnergyShield = 46, RunicWard = 138, MovementPenalty = 0.03, }, req = { level = 38, int = 61, }, } itemBases["Runemastered Silk Robe"] = { @@ -1719,7 +1719,7 @@ itemBases["Runemastered Silk Robe"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 27, Ward = 110, MovementPenalty = 0.03, }, + armour = { EnergyShield = 27, RunicWard = 110, MovementPenalty = 0.03, }, req = { level = 38, int = 61, }, } itemBases["Runemastered Keth Raiment"] = { @@ -1730,7 +1730,7 @@ itemBases["Runemastered Keth Raiment"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 73, Ward = 55, MovementPenalty = 0.03, }, + armour = { EnergyShield = 73, RunicWard = 55, MovementPenalty = 0.03, }, req = { level = 38, int = 61, }, } itemBases["Runemastered Votive Raiment"] = { @@ -1741,7 +1741,7 @@ itemBases["Runemastered Votive Raiment"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { EnergyShield = 48, Ward = 186, MovementPenalty = 0.03, }, + armour = { EnergyShield = 48, RunicWard = 186, MovementPenalty = 0.03, }, req = { level = 55, int = 87, }, } itemBases["Runemastered Altar Robe"] = { @@ -1752,7 +1752,7 @@ itemBases["Runemastered Altar Robe"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { EnergyShield = 72, Ward = 149, MovementPenalty = 0.03, }, + armour = { EnergyShield = 72, RunicWard = 149, MovementPenalty = 0.03, }, req = { level = 55, int = 87, }, } itemBases["Runemastered Elementalist Robe"] = { @@ -1763,7 +1763,7 @@ itemBases["Runemastered Elementalist Robe"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 96, Ward = 75, MovementPenalty = 0.03, }, + armour = { EnergyShield = 96, RunicWard = 75, MovementPenalty = 0.03, }, req = { level = 55, int = 87, }, } itemBases["Runemastered Plated Raiment"] = { @@ -1774,7 +1774,7 @@ itemBases["Runemastered Plated Raiment"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 124, Ward = 43, MovementPenalty = 0.03, }, + armour = { EnergyShield = 124, RunicWard = 43, MovementPenalty = 0.03, }, req = { level = 65, int = 103, }, } itemBases["Runemastered Havoc Raiment"] = { @@ -1785,7 +1785,7 @@ itemBases["Runemastered Havoc Raiment"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 96, Ward = 129, MovementPenalty = 0.03, }, + armour = { EnergyShield = 96, RunicWard = 129, MovementPenalty = 0.03, }, req = { level = 70, int = 121, }, } itemBases["Runemastered Enlightened Robe"] = { @@ -1797,7 +1797,7 @@ itemBases["Runemastered Enlightened Robe"] = { tags = { armour = true, body_armour = true, default = true, int_armour = true, runeforged = true, }, implicit = "(40-50)% increased Mana Regeneration Rate", implicitModTypes = { { "resource", "mana" }, }, - armour = { EnergyShield = 124, Ward = 86, MovementPenalty = 0.03, }, + armour = { EnergyShield = 124, RunicWard = 86, MovementPenalty = 0.03, }, req = { level = 75, int = 121, }, } @@ -2087,7 +2087,7 @@ itemBases["Runeforged Chain Mail"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, ezomyte_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 25, Evasion = 16, Ward = 29, MovementPenalty = 0.04, }, + armour = { Armour = 25, Evasion = 16, RunicWard = 29, MovementPenalty = 0.04, }, req = { }, } itemBases["Runeforged Rogue Armour"] = { @@ -2097,7 +2097,7 @@ itemBases["Runeforged Rogue Armour"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, ezomyte_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 63, Evasion = 53, Ward = 43, MovementPenalty = 0.04, }, + armour = { Armour = 63, Evasion = 53, RunicWard = 43, MovementPenalty = 0.04, }, req = { level = 11, str = 13, dex = 13, }, } itemBases["Runeforged Vagabond Armour"] = { @@ -2107,7 +2107,7 @@ itemBases["Runeforged Vagabond Armour"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, maraketh_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 83, Evasion = 71, Ward = 53, MovementPenalty = 0.04, }, + armour = { Armour = 83, Evasion = 71, RunicWard = 53, MovementPenalty = 0.04, }, req = { level = 16, str = 17, dex = 17, }, } itemBases["Runeforged Cloaked Mail"] = { @@ -2117,7 +2117,7 @@ itemBases["Runeforged Cloaked Mail"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, maraketh_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 121, Evasion = 107, Ward = 73, MovementPenalty = 0.04, }, + armour = { Armour = 121, Evasion = 107, RunicWard = 73, MovementPenalty = 0.04, }, req = { level = 26, str = 25, dex = 25, }, } itemBases["Runeforged Explorer Armour"] = { @@ -2127,7 +2127,7 @@ itemBases["Runeforged Explorer Armour"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 149, Evasion = 132, Ward = 74, MovementPenalty = 0.04, }, + armour = { Armour = 149, Evasion = 132, RunicWard = 74, MovementPenalty = 0.04, }, req = { level = 33, str = 31, dex = 31, }, } itemBases["Runeforged Scale Mail"] = { @@ -2137,7 +2137,7 @@ itemBases["Runeforged Scale Mail"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 164, Evasion = 147, Ward = 78, MovementPenalty = 0.04, }, + armour = { Armour = 164, Evasion = 147, RunicWard = 78, MovementPenalty = 0.04, }, req = { level = 37, str = 34, dex = 34, }, } itemBases["Runeforged Knight Armour"] = { @@ -2147,7 +2147,7 @@ itemBases["Runeforged Knight Armour"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, karui_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 195, Evasion = 176, Ward = 85, MovementPenalty = 0.04, }, + armour = { Armour = 195, Evasion = 176, RunicWard = 85, MovementPenalty = 0.04, }, req = { level = 45, str = 41, dex = 41, }, } itemBases["Runeforged Ancestral Mail"] = { @@ -2157,7 +2157,7 @@ itemBases["Runeforged Ancestral Mail"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, karui_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 214, Evasion = 194, Ward = 86, MovementPenalty = 0.04, }, + armour = { Armour = 214, Evasion = 194, RunicWard = 86, MovementPenalty = 0.04, }, req = { level = 50, str = 44, dex = 44, }, } itemBases["Runeforged Lamellar Mail"] = { @@ -2167,7 +2167,7 @@ itemBases["Runeforged Lamellar Mail"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Ward = 356, MovementPenalty = 0.04, }, + armour = { RunicWard = 356, MovementPenalty = 0.04, }, req = { level = 52, str = 46, dex = 46, }, } itemBases["Runeforged Gladiator Armour"] = { @@ -2177,7 +2177,7 @@ itemBases["Runeforged Gladiator Armour"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Ward = 390, MovementPenalty = 0.04, }, + armour = { RunicWard = 390, MovementPenalty = 0.04, }, req = { level = 58, str = 51, dex = 51, }, } itemBases["Runeforged Heroic Armour"] = { @@ -2188,7 +2188,7 @@ itemBases["Runeforged Heroic Armour"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_armour = true, }, implicit = "+(60-80) to maximum Life", implicitModTypes = { { "resource", "life" }, }, - armour = { Ward = 430, MovementPenalty = 0.04, }, + armour = { RunicWard = 430, MovementPenalty = 0.04, }, req = { level = 65, str = 67, dex = 67, }, } itemBases["Runeforged Tournament Mail"] = { @@ -2199,7 +2199,7 @@ itemBases["Runeforged Tournament Mail"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_armour = true, }, implicit = "+(20-25)% to Fire Resistance", implicitModTypes = { { "elemental_resistance", "fire_resistance", "elemental", "fire", "resistance" }, }, - armour = { Ward = 430, MovementPenalty = 0.04, }, + armour = { RunicWard = 430, MovementPenalty = 0.04, }, req = { level = 68, str = 67, dex = 67, }, } itemBases["Runeforged Tournament Mail"] = { @@ -2210,7 +2210,7 @@ itemBases["Runeforged Tournament Mail"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_armour = true, }, implicit = "+(20-25)% to Cold Resistance", implicitModTypes = { { "cold_resistance", "elemental_resistance", "elemental", "cold", "resistance" }, }, - armour = { Ward = 430, MovementPenalty = 0.04, }, + armour = { RunicWard = 430, MovementPenalty = 0.04, }, req = { level = 68, str = 67, dex = 67, }, } itemBases["Runeforged Tournament Mail"] = { @@ -2221,7 +2221,7 @@ itemBases["Runeforged Tournament Mail"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_armour = true, }, implicit = "+(20-25)% to Lightning Resistance", implicitModTypes = { { "elemental_resistance", "lightning_resistance", "elemental", "lightning", "resistance" }, }, - armour = { Ward = 430, MovementPenalty = 0.04, }, + armour = { RunicWard = 430, MovementPenalty = 0.04, }, req = { level = 68, str = 67, dex = 67, }, } itemBases["Runeforged Slayer Armour"] = { @@ -2231,7 +2231,7 @@ itemBases["Runeforged Slayer Armour"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 218, Evasion = 199, Ward = 107, MovementPenalty = 0.04, }, + armour = { Armour = 218, Evasion = 199, RunicWard = 107, MovementPenalty = 0.04, }, req = { level = 73, str = 67, dex = 67, }, } itemBases["Runeforged Mantled Mail"] = { @@ -2241,7 +2241,7 @@ itemBases["Runeforged Mantled Mail"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 218, Evasion = 198, Ward = 73, MovementPenalty = 0.04, }, + armour = { Armour = 218, Evasion = 198, RunicWard = 73, MovementPenalty = 0.04, }, req = { level = 54, str = 48, dex = 48, }, } itemBases["Runeforged Trailblazer Armour"] = { @@ -2251,7 +2251,7 @@ itemBases["Runeforged Trailblazer Armour"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 187, Evasion = 170, Ward = 158, MovementPenalty = 0.04, }, + armour = { Armour = 187, Evasion = 170, RunicWard = 158, MovementPenalty = 0.04, }, req = { level = 59, str = 52, dex = 52, }, } itemBases["Runeforged Golden Mail"] = { @@ -2261,7 +2261,7 @@ itemBases["Runeforged Golden Mail"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 235, Evasion = 214, Ward = 124, MovementPenalty = 0.04, }, + armour = { Armour = 235, Evasion = 214, RunicWard = 124, MovementPenalty = 0.04, }, req = { level = 62, str = 54, dex = 54, }, } itemBases["Runeforged Dastard Armour"] = { @@ -2272,7 +2272,7 @@ itemBases["Runeforged Dastard Armour"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_armour = true, }, implicit = "+(60-80) to maximum Life", implicitModTypes = { { "resource", "life" }, }, - armour = { Armour = 150, Evasion = 137, Ward = 236, MovementPenalty = 0.04, }, + armour = { Armour = 150, Evasion = 137, RunicWard = 236, MovementPenalty = 0.04, }, req = { level = 65, str = 67, dex = 67, }, } itemBases["Runeforged Shrouded Mail"] = { @@ -2283,7 +2283,7 @@ itemBases["Runeforged Shrouded Mail"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_armour = true, }, implicit = "+(20-25)% to Fire Resistance", implicitModTypes = { { "elemental_resistance", "fire_resistance", "elemental", "fire", "resistance" }, }, - armour = { Armour = 232, Evasion = 211, Ward = 107, MovementPenalty = 0.04, }, + armour = { Armour = 232, Evasion = 211, RunicWard = 107, MovementPenalty = 0.04, }, req = { level = 70, str = 67, dex = 67, }, } itemBases["Runeforged Shrouded Mail"] = { @@ -2294,7 +2294,7 @@ itemBases["Runeforged Shrouded Mail"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_armour = true, }, implicit = "+(20-25)% to Cold Resistance", implicitModTypes = { { "cold_resistance", "elemental_resistance", "elemental", "cold", "resistance" }, }, - armour = { Armour = 232, Evasion = 211, Ward = 107, MovementPenalty = 0.04, }, + armour = { Armour = 232, Evasion = 211, RunicWard = 107, MovementPenalty = 0.04, }, req = { level = 70, str = 67, dex = 67, }, } itemBases["Runeforged Shrouded Mail"] = { @@ -2305,7 +2305,7 @@ itemBases["Runeforged Shrouded Mail"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_armour = true, }, implicit = "+(20-25)% to Lightning Resistance", implicitModTypes = { { "elemental_resistance", "lightning_resistance", "elemental", "lightning", "resistance" }, }, - armour = { Armour = 232, Evasion = 211, Ward = 107, MovementPenalty = 0.04, }, + armour = { Armour = 232, Evasion = 211, RunicWard = 107, MovementPenalty = 0.04, }, req = { level = 70, str = 67, dex = 67, }, } itemBases["Runeforged Death Mail"] = { @@ -2315,7 +2315,7 @@ itemBases["Runeforged Death Mail"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 68, Evasion = 62, Ward = 408, MovementPenalty = 0.04, }, + armour = { Armour = 68, Evasion = 62, RunicWard = 408, MovementPenalty = 0.04, }, req = { level = 75, str = 67, dex = 67, }, } itemBases["Runeforged Thane Mail"] = { @@ -2326,7 +2326,7 @@ itemBases["Runeforged Thane Mail"] = { tags = { armour = true, body_armour = true, default = true, karui_basetype = true, runeforged = true, str_dex_armour = true, }, implicit = "Hits against you have (15-25)% reduced Critical Damage Bonus", implicitModTypes = { { "damage", "critical" }, }, - armour = { Armour = 259, Evasion = 236, Ward = 64, MovementPenalty = 0.04, }, + armour = { Armour = 259, Evasion = 236, RunicWard = 64, MovementPenalty = 0.04, }, req = { level = 80, str = 67, dex = 67, }, } itemBases["Runemastered Chain Mail"] = { @@ -2337,7 +2337,7 @@ itemBases["Runemastered Chain Mail"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, ezomyte_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 151, Evasion = 135, Ward = 55, MovementPenalty = 0.04, }, + armour = { Armour = 151, Evasion = 135, RunicWard = 55, MovementPenalty = 0.04, }, req = { level = 38, str = 35, dex = 35, }, } itemBases["Runemastered Rogue Armour"] = { @@ -2348,7 +2348,7 @@ itemBases["Runemastered Rogue Armour"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, ezomyte_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 118, Evasion = 105, Ward = 83, MovementPenalty = 0.04, }, + armour = { Armour = 118, Evasion = 105, RunicWard = 83, MovementPenalty = 0.04, }, req = { level = 38, str = 35, dex = 35, }, } itemBases["Runemastered Vagabond Armour"] = { @@ -2359,7 +2359,7 @@ itemBases["Runemastered Vagabond Armour"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, maraketh_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 143, Evasion = 128, Ward = 41, MovementPenalty = 0.04, }, + armour = { Armour = 143, Evasion = 128, RunicWard = 41, MovementPenalty = 0.04, }, req = { level = 38, str = 35, dex = 35, }, } itemBases["Runemastered Cloaked Mail"] = { @@ -2370,7 +2370,7 @@ itemBases["Runemastered Cloaked Mail"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, maraketh_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 114, Evasion = 102, Ward = 115, MovementPenalty = 0.04, }, + armour = { Armour = 114, Evasion = 102, RunicWard = 115, MovementPenalty = 0.04, }, req = { level = 40, str = 36, dex = 36, }, } itemBases["Runemastered Explorer Armour"] = { @@ -2381,7 +2381,7 @@ itemBases["Runemastered Explorer Armour"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 199, Evasion = 180, Ward = 56, MovementPenalty = 0.04, }, + armour = { Armour = 199, Evasion = 180, RunicWard = 56, MovementPenalty = 0.04, }, req = { level = 55, str = 49, dex = 49, }, } itemBases["Runemastered Scale Mail"] = { @@ -2392,7 +2392,7 @@ itemBases["Runemastered Scale Mail"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 187, Evasion = 170, Ward = 75, MovementPenalty = 0.04, }, + armour = { Armour = 187, Evasion = 170, RunicWard = 75, MovementPenalty = 0.04, }, req = { level = 55, str = 49, dex = 49, }, } itemBases["Runemastered Knight Armour"] = { @@ -2403,7 +2403,7 @@ itemBases["Runemastered Knight Armour"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, karui_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 175, Evasion = 159, Ward = 93, MovementPenalty = 0.04, }, + armour = { Armour = 175, Evasion = 159, RunicWard = 93, MovementPenalty = 0.04, }, req = { level = 55, str = 49, dex = 49, }, } itemBases["Runemastered Ancestral Mail"] = { @@ -2414,7 +2414,7 @@ itemBases["Runemastered Ancestral Mail"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, karui_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 191, Evasion = 174, Ward = 107, MovementPenalty = 0.04, }, + armour = { Armour = 191, Evasion = 174, RunicWard = 107, MovementPenalty = 0.04, }, req = { level = 65, str = 57, dex = 57, }, } itemBases["Runemastered Heroic Armour"] = { @@ -2426,7 +2426,7 @@ itemBases["Runemastered Heroic Armour"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_armour = true, }, implicit = "+(60-80) to maximum Life", implicitModTypes = { { "resource", "life" }, }, - armour = { Armour = 136, Evasion = 124, Ward = 215, MovementPenalty = 0.04, }, + armour = { Armour = 136, Evasion = 124, RunicWard = 215, MovementPenalty = 0.04, }, req = { level = 65, str = 67, dex = 67, }, } @@ -2672,7 +2672,7 @@ itemBases["Runeforged Pilgrim Vestments"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, ezomyte_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 25, EnergyShield = 16, Ward = 29, MovementPenalty = 0.04, }, + armour = { Armour = 25, EnergyShield = 16, RunicWard = 29, MovementPenalty = 0.04, }, req = { }, } itemBases["Runeforged Pelt Mantle"] = { @@ -2682,7 +2682,7 @@ itemBases["Runeforged Pelt Mantle"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, ezomyte_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 59, EnergyShield = 24, Ward = 41, MovementPenalty = 0.04, }, + armour = { Armour = 59, EnergyShield = 24, RunicWard = 41, MovementPenalty = 0.04, }, req = { level = 10, str = 12, int = 12, }, } itemBases["Runeforged Mail Vestments"] = { @@ -2692,7 +2692,7 @@ itemBases["Runeforged Mail Vestments"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, maraketh_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 83, EnergyShield = 30, Ward = 53, MovementPenalty = 0.04, }, + armour = { Armour = 83, EnergyShield = 30, RunicWard = 53, MovementPenalty = 0.04, }, req = { level = 16, str = 17, int = 17, }, } itemBases["Runeforged Shaman Mantle"] = { @@ -2702,7 +2702,7 @@ itemBases["Runeforged Shaman Mantle"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, maraketh_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 129, EnergyShield = 41, Ward = 77, MovementPenalty = 0.04, }, + armour = { Armour = 129, EnergyShield = 41, RunicWard = 77, MovementPenalty = 0.04, }, req = { level = 28, str = 26, int = 26, }, } itemBases["Runeforged Ironclad Vestments"] = { @@ -2712,7 +2712,7 @@ itemBases["Runeforged Ironclad Vestments"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 149, EnergyShield = 46, Ward = 74, MovementPenalty = 0.04, }, + armour = { Armour = 149, EnergyShield = 46, RunicWard = 74, MovementPenalty = 0.04, }, req = { level = 33, str = 31, int = 31, }, } itemBases["Runeforged Sacrificial Mantle"] = { @@ -2722,7 +2722,7 @@ itemBases["Runeforged Sacrificial Mantle"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 160, EnergyShield = 48, Ward = 77, MovementPenalty = 0.04, }, + armour = { Armour = 160, EnergyShield = 48, RunicWard = 77, MovementPenalty = 0.04, }, req = { level = 36, str = 33, int = 33, }, } itemBases["Runeforged Cleric Vestments"] = { @@ -2732,7 +2732,7 @@ itemBases["Runeforged Cleric Vestments"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, karui_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 195, EnergyShield = 57, Ward = 85, MovementPenalty = 0.04, }, + armour = { Armour = 195, EnergyShield = 57, RunicWard = 85, MovementPenalty = 0.04, }, req = { level = 45, str = 41, int = 41, }, } itemBases["Runeforged Tideseer Mantle"] = { @@ -2742,7 +2742,7 @@ itemBases["Runeforged Tideseer Mantle"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, karui_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 218, EnergyShield = 63, Ward = 87, MovementPenalty = 0.04, }, + armour = { Armour = 218, EnergyShield = 63, RunicWard = 87, MovementPenalty = 0.04, }, req = { level = 51, str = 45, int = 45, }, } itemBases["Runeforged Gilded Vestments"] = { @@ -2752,7 +2752,7 @@ itemBases["Runeforged Gilded Vestments"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Ward = 356, MovementPenalty = 0.04, }, + armour = { RunicWard = 356, MovementPenalty = 0.04, }, req = { level = 52, str = 46, int = 46, }, } itemBases["Runeforged Venerated Mantle"] = { @@ -2762,7 +2762,7 @@ itemBases["Runeforged Venerated Mantle"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Ward = 367, MovementPenalty = 0.04, }, + armour = { RunicWard = 367, MovementPenalty = 0.04, }, req = { level = 54, str = 48, int = 48, }, } itemBases["Runeforged Revered Vestments"] = { @@ -2773,7 +2773,7 @@ itemBases["Runeforged Revered Vestments"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, }, implicit = "+1% to all Maximum Elemental Resistances", implicitModTypes = { { "cold_resistance", "elemental_resistance", "fire_resistance", "lightning_resistance", "elemental", "fire", "cold", "lightning", "resistance" }, }, - armour = { Ward = 430, MovementPenalty = 0.04, }, + armour = { RunicWard = 430, MovementPenalty = 0.04, }, req = { level = 65, str = 67, int = 67, }, } itemBases["Runeforged Corvus Mantle"] = { @@ -2784,7 +2784,7 @@ itemBases["Runeforged Corvus Mantle"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, }, implicit = "+(20-30) to Spirit", implicitModTypes = { { }, }, - armour = { Ward = 430, MovementPenalty = 0.04, }, + armour = { RunicWard = 430, MovementPenalty = 0.04, }, req = { level = 68, str = 67, int = 67, }, } itemBases["Runeforged Zenith Vestments"] = { @@ -2794,7 +2794,7 @@ itemBases["Runeforged Zenith Vestments"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Ward = 430, MovementPenalty = 0.04, }, + armour = { RunicWard = 430, MovementPenalty = 0.04, }, req = { level = 73, str = 67, int = 67, }, } itemBases["Runeforged Occultist Mantle"] = { @@ -2804,7 +2804,7 @@ itemBases["Runeforged Occultist Mantle"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 184, EnergyShield = 52, Ward = 128, MovementPenalty = 0.04, }, + armour = { Armour = 184, EnergyShield = 52, RunicWard = 128, MovementPenalty = 0.04, }, req = { level = 54, str = 48, int = 48, }, } itemBases["Runeforged Plated Vestments"] = { @@ -2814,7 +2814,7 @@ itemBases["Runeforged Plated Vestments"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 187, EnergyShield = 53, Ward = 158, MovementPenalty = 0.04, }, + armour = { Armour = 187, EnergyShield = 53, RunicWard = 158, MovementPenalty = 0.04, }, req = { level = 59, str = 52, int = 52, }, } itemBases["Runeforged Heartcarver Mantle"] = { @@ -2824,7 +2824,7 @@ itemBases["Runeforged Heartcarver Mantle"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 222, EnergyShield = 62, Ward = 103, MovementPenalty = 0.04, }, + armour = { Armour = 222, EnergyShield = 62, RunicWard = 103, MovementPenalty = 0.04, }, req = { level = 62, str = 54, int = 54, }, } itemBases["Runeforged Wolfskin Mantle"] = { @@ -2834,7 +2834,7 @@ itemBases["Runeforged Wolfskin Mantle"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 63, EnergyShield = 17, Ward = 417, MovementPenalty = 0.04, }, + armour = { Armour = 63, EnergyShield = 17, RunicWard = 417, MovementPenalty = 0.04, }, req = { level = 65, str = 67, int = 67, }, } itemBases["Runeforged Conjurer Mantle"] = { @@ -2845,7 +2845,7 @@ itemBases["Runeforged Conjurer Mantle"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, }, implicit = "+(20-30) to Spirit", implicitModTypes = { { }, }, - armour = { Armour = 232, EnergyShield = 64, Ward = 107, MovementPenalty = 0.04, }, + armour = { Armour = 232, EnergyShield = 64, RunicWard = 107, MovementPenalty = 0.04, }, req = { level = 70, str = 67, int = 67, }, } itemBases["Runeforged Death Mantle"] = { @@ -2856,7 +2856,7 @@ itemBases["Runeforged Death Mantle"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, }, implicit = "+1% to all Maximum Elemental Resistances", implicitModTypes = { { "cold_resistance", "elemental_resistance", "fire_resistance", "lightning_resistance", "elemental", "fire", "cold", "lightning", "resistance" }, }, - armour = { Armour = 164, EnergyShield = 45, Ward = 215, MovementPenalty = 0.04, }, + armour = { Armour = 164, EnergyShield = 45, RunicWard = 215, MovementPenalty = 0.04, }, req = { level = 75, str = 67, int = 67, }, } itemBases["Runeforged Seastorm Mantle"] = { @@ -2867,7 +2867,7 @@ itemBases["Runeforged Seastorm Mantle"] = { tags = { armour = true, body_armour = true, default = true, karui_basetype = true, runeforged = true, str_int_armour = true, }, implicit = "(8-14)% of Damage taken Recouped as Life", implicitModTypes = { { "resource", "life" }, }, - armour = { Armour = 68, EnergyShield = 19, Ward = 344, MovementPenalty = 0.04, }, + armour = { Armour = 68, EnergyShield = 19, RunicWard = 344, MovementPenalty = 0.04, }, req = { level = 80, str = 67, int = 67, }, } itemBases["Runemastered Pilgrim Vestments"] = { @@ -2878,7 +2878,7 @@ itemBases["Runemastered Pilgrim Vestments"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, ezomyte_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 202, EnergyShield = 60, Ward = 55, MovementPenalty = 0.04, }, + armour = { Armour = 202, EnergyShield = 60, RunicWard = 55, MovementPenalty = 0.04, }, req = { level = 38, str = 35, int = 35, }, } itemBases["Runemastered Mail Vestments"] = { @@ -2889,7 +2889,7 @@ itemBases["Runemastered Mail Vestments"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, maraketh_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 118, EnergyShield = 35, Ward = 83, MovementPenalty = 0.04, }, + armour = { Armour = 118, EnergyShield = 35, RunicWard = 83, MovementPenalty = 0.04, }, req = { level = 38, str = 35, int = 35, }, } itemBases["Runemastered Shaman Mantle"] = { @@ -2900,7 +2900,7 @@ itemBases["Runemastered Shaman Mantle"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, maraketh_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 141, EnergyShield = 42, Ward = 44, MovementPenalty = 0.04, }, + armour = { Armour = 141, EnergyShield = 42, RunicWard = 44, MovementPenalty = 0.04, }, req = { level = 38, str = 35, int = 35, }, } itemBases["Runemastered Ironclad Vestments"] = { @@ -2911,7 +2911,7 @@ itemBases["Runemastered Ironclad Vestments"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 210, EnergyShield = 60, Ward = 37, MovementPenalty = 0.04, }, + armour = { Armour = 210, EnergyShield = 60, RunicWard = 37, MovementPenalty = 0.04, }, req = { level = 55, str = 49, int = 49, }, } itemBases["Runemastered Sacrificial Mantle"] = { @@ -2922,7 +2922,7 @@ itemBases["Runemastered Sacrificial Mantle"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 210, EnergyShield = 60, Ward = 37, MovementPenalty = 0.04, }, + armour = { Armour = 210, EnergyShield = 60, RunicWard = 37, MovementPenalty = 0.04, }, req = { level = 55, str = 49, int = 49, }, } itemBases["Runemastered Cleric Vestments"] = { @@ -2933,7 +2933,7 @@ itemBases["Runemastered Cleric Vestments"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, karui_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 187, EnergyShield = 53, Ward = 75, MovementPenalty = 0.04, }, + armour = { Armour = 187, EnergyShield = 53, RunicWard = 75, MovementPenalty = 0.04, }, req = { level = 55, str = 49, int = 49, }, } itemBases["Runemastered Tideseer Mantle"] = { @@ -2944,7 +2944,7 @@ itemBases["Runemastered Tideseer Mantle"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, karui_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 55, EnergyShield = 15, Ward = 129, MovementPenalty = 0.04, }, + armour = { Armour = 55, EnergyShield = 15, RunicWard = 129, MovementPenalty = 0.04, }, req = { level = 65, str = 57, int = 57, }, } itemBases["Runemastered Gilded Vestments"] = { @@ -2955,7 +2955,7 @@ itemBases["Runemastered Gilded Vestments"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 218, EnergyShield = 61, Ward = 86, MovementPenalty = 0.04, }, + armour = { Armour = 218, EnergyShield = 61, RunicWard = 86, MovementPenalty = 0.04, }, req = { level = 65, str = 57, int = 57, }, } itemBases["Runemastered Revered Vestments"] = { @@ -2967,7 +2967,7 @@ itemBases["Runemastered Revered Vestments"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, }, implicit = "+1% to all Maximum Elemental Resistances\n(30-50)% increased effect of Arcane Surge on you", implicitModTypes = { { "cold_resistance", "elemental_resistance", "fire_resistance", "lightning_resistance", "elemental", "fire", "cold", "lightning", "resistance" }, { "resource", "mana", "caster" }, }, - armour = { Armour = 232, EnergyShield = 64, Ward = 86, MovementPenalty = 0.04, }, + armour = { Armour = 232, EnergyShield = 64, RunicWard = 86, MovementPenalty = 0.04, }, req = { level = 70, str = 67, int = 67, }, } itemBases["Runemastered Revered Vestments"] = { @@ -2979,7 +2979,7 @@ itemBases["Runemastered Revered Vestments"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, }, implicit = "+1% to all Maximum Elemental Resistances\n(10-15)% increased Energy Shield Recharge Rate", implicitModTypes = { { "cold_resistance", "elemental_resistance", "fire_resistance", "lightning_resistance", "elemental", "fire", "cold", "lightning", "resistance" }, { "defences", "energy_shield" }, }, - armour = { Armour = 199, EnergyShield = 88, Ward = 86, MovementPenalty = 0.04, }, + armour = { Armour = 199, EnergyShield = 88, RunicWard = 86, MovementPenalty = 0.04, }, req = { level = 70, str = 57, int = 85, }, } itemBases["Runemastered Revered Vestments"] = { @@ -2991,7 +2991,7 @@ itemBases["Runemastered Revered Vestments"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, }, implicit = "+1% to all Maximum Elemental Resistances", implicitModTypes = { { "cold_resistance", "elemental_resistance", "fire_resistance", "lightning_resistance", "elemental", "fire", "cold", "lightning", "resistance" }, }, - armour = { Armour = 164, EnergyShield = 45, Ward = 301, MovementPenalty = 0.04, }, + armour = { Armour = 164, EnergyShield = 45, RunicWard = 301, MovementPenalty = 0.04, }, req = { level = 70, str = 67, int = 67, }, } itemBases["Runemastered Corvus Mantle"] = { @@ -3003,7 +3003,7 @@ itemBases["Runemastered Corvus Mantle"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, }, implicit = "+(20-30) to Spirit", implicitModTypes = { { }, }, - armour = { Armour = 218, EnergyShield = 61, Ward = 86, MovementPenalty = 0.04, }, + armour = { Armour = 218, EnergyShield = 61, RunicWard = 86, MovementPenalty = 0.04, }, req = { level = 70, str = 67, int = 67, }, } itemBases["Ornate Ringmail"] = { @@ -3036,7 +3036,7 @@ itemBases["Runemastered Ornate Ringmail"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 210, EnergyShield = 60, Ward = 112, MovementPenalty = 0.04, }, + armour = { Armour = 210, EnergyShield = 60, RunicWard = 112, MovementPenalty = 0.04, }, req = { level = 55, str = 57, int = 57, }, } itemBases["Runemastered Ancient Mail"] = { @@ -3047,7 +3047,7 @@ itemBases["Runemastered Ancient Mail"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 218, EnergyShield = 61, Ward = 86, MovementPenalty = 0.04, }, + armour = { Armour = 218, EnergyShield = 61, RunicWard = 86, MovementPenalty = 0.04, }, req = { level = 70, str = 67, int = 67, }, } @@ -3293,7 +3293,7 @@ itemBases["Runeforged Hermit Garb"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, ezomyte_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 16, EnergyShield = 16, Ward = 29, MovementPenalty = 0.03, }, + armour = { Evasion = 16, EnergyShield = 16, RunicWard = 29, MovementPenalty = 0.03, }, req = { }, } itemBases["Runeforged Waxed Jacket"] = { @@ -3303,7 +3303,7 @@ itemBases["Runeforged Waxed Jacket"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, ezomyte_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 53, EnergyShield = 25, Ward = 43, MovementPenalty = 0.03, }, + armour = { Evasion = 53, EnergyShield = 25, RunicWard = 43, MovementPenalty = 0.03, }, req = { level = 11, dex = 13, int = 13, }, } itemBases["Runeforged Marabout Garb"] = { @@ -3313,7 +3313,7 @@ itemBases["Runeforged Marabout Garb"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 71, EnergyShield = 30, Ward = 53, MovementPenalty = 0.03, }, + armour = { Evasion = 71, EnergyShield = 30, RunicWard = 53, MovementPenalty = 0.03, }, req = { level = 16, dex = 17, int = 17, }, } itemBases["Runeforged Wayfarer Jacket"] = { @@ -3323,7 +3323,7 @@ itemBases["Runeforged Wayfarer Jacket"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 114, EnergyShield = 41, Ward = 77, MovementPenalty = 0.03, }, + armour = { Evasion = 114, EnergyShield = 41, RunicWard = 77, MovementPenalty = 0.03, }, req = { level = 28, dex = 26, int = 26, }, } itemBases["Runeforged Anchorite Garb"] = { @@ -3333,7 +3333,7 @@ itemBases["Runeforged Anchorite Garb"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 132, EnergyShield = 46, Ward = 74, MovementPenalty = 0.03, }, + armour = { Evasion = 132, EnergyShield = 46, RunicWard = 74, MovementPenalty = 0.03, }, req = { level = 33, dex = 31, int = 31, }, } itemBases["Runeforged Scalper's Jacket"] = { @@ -3343,7 +3343,7 @@ itemBases["Runeforged Scalper's Jacket"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 154, EnergyShield = 51, Ward = 82, MovementPenalty = 0.03, }, + armour = { Evasion = 154, EnergyShield = 51, RunicWard = 82, MovementPenalty = 0.03, }, req = { level = 39, dex = 35, int = 35, }, } itemBases["Runeforged Scoundrel Jacket"] = { @@ -3353,7 +3353,7 @@ itemBases["Runeforged Scoundrel Jacket"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 176, EnergyShield = 57, Ward = 85, MovementPenalty = 0.03, }, + armour = { Evasion = 176, EnergyShield = 57, RunicWard = 85, MovementPenalty = 0.03, }, req = { level = 45, dex = 41, int = 41, }, } itemBases["Runeforged Ascetic Garb"] = { @@ -3363,7 +3363,7 @@ itemBases["Runeforged Ascetic Garb"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 197, EnergyShield = 63, Ward = 87, MovementPenalty = 0.03, }, + armour = { Evasion = 197, EnergyShield = 63, RunicWard = 87, MovementPenalty = 0.03, }, req = { level = 51, dex = 45, int = 45, }, } itemBases["Runeforged Clandestine Jacket"] = { @@ -3373,7 +3373,7 @@ itemBases["Runeforged Clandestine Jacket"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 356, MovementPenalty = 0.03, }, + armour = { RunicWard = 356, MovementPenalty = 0.03, }, req = { level = 52, dex = 46, int = 46, }, } itemBases["Runeforged Monastic Garb"] = { @@ -3383,7 +3383,7 @@ itemBases["Runeforged Monastic Garb"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 378, MovementPenalty = 0.03, }, + armour = { RunicWard = 378, MovementPenalty = 0.03, }, req = { level = 56, dex = 50, int = 50, }, } itemBases["Runeforged Torment Jacket"] = { @@ -3393,7 +3393,7 @@ itemBases["Runeforged Torment Jacket"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 430, MovementPenalty = 0.03, }, + armour = { RunicWard = 430, MovementPenalty = 0.03, }, req = { level = 65, dex = 67, int = 67, }, } itemBases["Runeforged Devout Garb"] = { @@ -3404,7 +3404,7 @@ itemBases["Runeforged Devout Garb"] = { tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, runeforged = true, }, implicit = "+(7-13)% to Chaos Resistance", implicitModTypes = { { "chaos_resistance", "chaos", "resistance" }, }, - armour = { Ward = 430, MovementPenalty = 0.03, }, + armour = { RunicWard = 430, MovementPenalty = 0.03, }, req = { level = 68, dex = 67, int = 67, }, } itemBases["Runeforged Assassin Garb"] = { @@ -3415,7 +3415,7 @@ itemBases["Runeforged Assassin Garb"] = { tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, runeforged = true, }, implicit = "5% increased Movement Speed", implicitModTypes = { { "speed" }, }, - armour = { Ward = 430, MovementPenalty = 0.03, }, + armour = { RunicWard = 430, MovementPenalty = 0.03, }, req = { level = 73, dex = 67, int = 67, }, } itemBases["Runeforged Itinerant Jacket"] = { @@ -3425,7 +3425,7 @@ itemBases["Runeforged Itinerant Jacket"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 188, EnergyShield = 59, Ward = 92, MovementPenalty = 0.03, }, + armour = { Evasion = 188, EnergyShield = 59, RunicWard = 92, MovementPenalty = 0.03, }, req = { level = 54, dex = 48, int = 48, }, } itemBases["Runeforged Hatungo Garb"] = { @@ -3435,7 +3435,7 @@ itemBases["Runeforged Hatungo Garb"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 170, EnergyShield = 53, Ward = 158, MovementPenalty = 0.03, }, + armour = { Evasion = 170, EnergyShield = 53, RunicWard = 158, MovementPenalty = 0.03, }, req = { level = 59, dex = 52, int = 52, }, } itemBases["Runeforged Hawker's Jacket"] = { @@ -3445,7 +3445,7 @@ itemBases["Runeforged Hawker's Jacket"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 202, EnergyShield = 62, Ward = 103, MovementPenalty = 0.03, }, + armour = { Evasion = 202, EnergyShield = 62, RunicWard = 103, MovementPenalty = 0.03, }, req = { level = 62, dex = 54, int = 54, }, } itemBases["Runeforged Sleek Jacket"] = { @@ -3455,7 +3455,7 @@ itemBases["Runeforged Sleek Jacket"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 69, EnergyShield = 21, Ward = 395, MovementPenalty = 0.03, }, + armour = { Evasion = 69, EnergyShield = 21, RunicWard = 395, MovementPenalty = 0.03, }, req = { level = 65, dex = 67, int = 67, }, } itemBases["Runeforged Rambler Jacket"] = { @@ -3466,7 +3466,7 @@ itemBases["Runeforged Rambler Jacket"] = { tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, runeforged = true, }, implicit = "+(7-13)% to Chaos Resistance", implicitModTypes = { { "chaos_resistance", "chaos", "resistance" }, }, - armour = { Evasion = 211, EnergyShield = 64, Ward = 107, MovementPenalty = 0.03, }, + armour = { Evasion = 211, EnergyShield = 64, RunicWard = 107, MovementPenalty = 0.03, }, req = { level = 70, dex = 67, int = 67, }, } itemBases["Runeforged Falconer's Jacket"] = { @@ -3477,7 +3477,7 @@ itemBases["Runeforged Falconer's Jacket"] = { tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, runeforged = true, }, implicit = "5% increased Movement Speed", implicitModTypes = { { "speed" }, }, - armour = { Evasion = 164, EnergyShield = 50, Ward = 189, MovementPenalty = 0.03, }, + armour = { Evasion = 164, EnergyShield = 50, RunicWard = 189, MovementPenalty = 0.03, }, req = { level = 75, dex = 67, int = 67, }, } itemBases["Runeforged Austere Garb"] = { @@ -3488,7 +3488,7 @@ itemBases["Runeforged Austere Garb"] = { tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, karui_basetype = true, runeforged = true, }, implicit = "(10-15)% reduced Elemental Ailment Duration on you", implicitModTypes = { { "elemental", "ailment" }, }, - armour = { Evasion = 236, EnergyShield = 72, Ward = 86, MovementPenalty = 0.03, }, + armour = { Evasion = 236, EnergyShield = 72, RunicWard = 86, MovementPenalty = 0.03, }, req = { level = 80, dex = 67, int = 67, }, } itemBases["Runemastered Hermit Garb"] = { @@ -3499,7 +3499,7 @@ itemBases["Runemastered Hermit Garb"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, ezomyte_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 135, EnergyShield = 45, Ward = 28, MovementPenalty = 0.03, }, + armour = { Evasion = 135, EnergyShield = 45, RunicWard = 28, MovementPenalty = 0.03, }, req = { level = 38, dex = 35, int = 35, }, } itemBases["Runemastered Waxed Jacket"] = { @@ -3510,7 +3510,7 @@ itemBases["Runemastered Waxed Jacket"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, ezomyte_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 113, EnergyShield = 38, Ward = 69, MovementPenalty = 0.03, }, + armour = { Evasion = 113, EnergyShield = 38, RunicWard = 69, MovementPenalty = 0.03, }, req = { level = 38, dex = 35, int = 35, }, } itemBases["Runemastered Marabout Garb"] = { @@ -3521,7 +3521,7 @@ itemBases["Runemastered Marabout Garb"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 90, EnergyShield = 30, Ward = 110, MovementPenalty = 0.03, }, + armour = { Evasion = 90, EnergyShield = 30, RunicWard = 110, MovementPenalty = 0.03, }, req = { level = 38, dex = 35, int = 35, }, } itemBases["Runemastered Wayfarer Jacket"] = { @@ -3532,7 +3532,7 @@ itemBases["Runemastered Wayfarer Jacket"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 134, EnergyShield = 44, Ward = 43, MovementPenalty = 0.03, }, + armour = { Evasion = 134, EnergyShield = 44, RunicWard = 43, MovementPenalty = 0.03, }, req = { level = 40, dex = 36, int = 36, }, } itemBases["Runemastered Anchorite Garb"] = { @@ -3543,7 +3543,7 @@ itemBases["Runemastered Anchorite Garb"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 138, EnergyShield = 43, Ward = 130, MovementPenalty = 0.03, }, + armour = { Evasion = 138, EnergyShield = 43, RunicWard = 130, MovementPenalty = 0.03, }, req = { level = 55, dex = 49, int = 49, }, } itemBases["Runemastered Scalper's Jacket"] = { @@ -3554,7 +3554,7 @@ itemBases["Runemastered Scalper's Jacket"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 170, EnergyShield = 53, Ward = 75, MovementPenalty = 0.03, }, + armour = { Evasion = 170, EnergyShield = 53, RunicWard = 75, MovementPenalty = 0.03, }, req = { level = 55, dex = 49, int = 49, }, } itemBases["Runemastered Assassin Garb"] = { @@ -3566,7 +3566,7 @@ itemBases["Runemastered Assassin Garb"] = { tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, runeforged = true, }, implicit = "5% increased Movement Speed", implicitModTypes = { { "speed" }, }, - armour = { Evasion = 223, EnergyShield = 68, Ward = 43, MovementPenalty = 0.03, }, + armour = { Evasion = 223, EnergyShield = 68, RunicWard = 43, MovementPenalty = 0.03, }, req = { level = 73, dex = 67, int = 67, }, } itemBases["Primal Markings"] = { @@ -3588,7 +3588,7 @@ itemBases["Runeforged Primal Markings"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 236, EnergyShield = 72, Ward = 86, MovementPenalty = 0.03, }, + armour = { Evasion = 236, EnergyShield = 72, RunicWard = 86, MovementPenalty = 0.03, }, req = { level = 70, dex = 67, int = 67, }, } itemBases["Runemastered Primal Markings"] = { @@ -3599,7 +3599,7 @@ itemBases["Runemastered Primal Markings"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, dex_int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 223, EnergyShield = 68, Ward = 107, MovementPenalty = 0.03, }, + armour = { Evasion = 223, EnergyShield = 68, RunicWard = 107, MovementPenalty = 0.03, }, req = { level = 80, dex = 67, int = 67, }, } @@ -3643,7 +3643,7 @@ itemBases["Runeforged Grasping Mail"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_int_armour = true, }, implicit = "Can roll Ring Modifiers\nCatalysts can be applied to this item", implicitModTypes = { { }, { }, }, - armour = { Armour = 232, Evasion = 211, Ward = 107, MovementPenalty = 0.04, }, + armour = { Armour = 232, Evasion = 211, RunicWard = 107, MovementPenalty = 0.04, }, req = { level = 65, str = 61, dex = 61, }, } itemBases["Runeforged Grasping Mail"] = { @@ -3654,7 +3654,7 @@ itemBases["Runeforged Grasping Mail"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_int_armour = true, }, implicit = "Can roll Ring Modifiers\nCatalysts can be applied to this item", implicitModTypes = { { }, { }, }, - armour = { Evasion = 211, EnergyShield = 64, Ward = 107, MovementPenalty = 0.03, }, + armour = { Evasion = 211, EnergyShield = 64, RunicWard = 107, MovementPenalty = 0.03, }, req = { level = 65, dex = 61, int = 61, }, } itemBases["Runeforged Grasping Mail"] = { @@ -3665,7 +3665,7 @@ itemBases["Runeforged Grasping Mail"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_int_armour = true, }, implicit = "Can roll Ring Modifiers\nCatalysts can be applied to this item", implicitModTypes = { { }, { }, }, - armour = { Armour = 232, EnergyShield = 64, Ward = 107, MovementPenalty = 0.04, }, + armour = { Armour = 232, EnergyShield = 64, RunicWard = 107, MovementPenalty = 0.04, }, req = { level = 65, str = 61, int = 61, }, } itemBases["Runeforged Grasping Mail"] = { @@ -3676,7 +3676,7 @@ itemBases["Runeforged Grasping Mail"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_int_armour = true, }, implicit = "Can roll Ring Modifiers\nCatalysts can be applied to this item", implicitModTypes = { { }, { }, }, - armour = { Armour = 136, Evasion = 124, EnergyShield = 38, Ward = 215, MovementPenalty = 0.04, }, + armour = { Armour = 136, Evasion = 124, EnergyShield = 38, RunicWard = 215, MovementPenalty = 0.04, }, req = { level = 65, str = 41, dex = 41, int = 41, }, } itemBases["Runemastered Grasping Mail"] = { @@ -3688,7 +3688,7 @@ itemBases["Runemastered Grasping Mail"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_int_armour = true, }, implicit = "Can roll Ring Modifiers\nCatalysts can be applied to this item", implicitModTypes = { { }, { }, }, - armour = { Armour = 421, Ward = 150, MovementPenalty = 0.04, }, + armour = { Armour = 421, RunicWard = 150, MovementPenalty = 0.04, }, req = { level = 65, str = 112, }, } itemBases["Runemastered Grasping Mail"] = { @@ -3700,7 +3700,7 @@ itemBases["Runemastered Grasping Mail"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_int_armour = true, }, implicit = "Can roll Ring Modifiers\nCatalysts can be applied to this item", implicitModTypes = { { }, { }, }, - armour = { Evasion = 384, Ward = 150, MovementPenalty = 0.03, }, + armour = { Evasion = 384, RunicWard = 150, MovementPenalty = 0.03, }, req = { level = 65, dex = 112, }, } itemBases["Runemastered Grasping Mail"] = { @@ -3712,7 +3712,7 @@ itemBases["Runemastered Grasping Mail"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_int_armour = true, }, implicit = "Can roll Ring Modifiers\nCatalysts can be applied to this item", implicitModTypes = { { }, { }, }, - armour = { EnergyShield = 117, Ward = 150, MovementPenalty = 0.04, }, + armour = { EnergyShield = 117, RunicWard = 150, MovementPenalty = 0.04, }, req = { level = 65, int = 112, }, } itemBases["Runemastered Grasping Mail"] = { @@ -3724,7 +3724,7 @@ itemBases["Runemastered Grasping Mail"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_int_armour = true, }, implicit = "Can roll Ring Modifiers\nCatalysts can be applied to this item", implicitModTypes = { { }, { }, }, - armour = { Armour = 136, Evasion = 124, EnergyShield = 38, Ward = 322, MovementPenalty = 0.04, }, + armour = { Armour = 136, Evasion = 124, EnergyShield = 38, RunicWard = 322, MovementPenalty = 0.04, }, req = { level = 65, str = 41, dex = 41, int = 41, }, } itemBases["Runefather's Grasping Mail"] = { @@ -3735,7 +3735,7 @@ itemBases["Runefather's Grasping Mail"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_int_armour = true, }, implicit = "Can roll Ring Modifiers\nCatalysts can be applied to this item", implicitModTypes = { { }, { }, }, - armour = { Ward = 550, }, + armour = { RunicWard = 550, }, req = { level = 65, str = 57, dex = 57, int = 57, }, } itemBases["Runeforged Grand Regalia"] = { @@ -3745,7 +3745,7 @@ itemBases["Runeforged Grand Regalia"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 182, Evasion = 165, EnergyShield = 50, Ward = 215, MovementPenalty = 0.04, }, + armour = { Armour = 182, Evasion = 165, EnergyShield = 50, RunicWard = 215, MovementPenalty = 0.04, }, req = { level = 65, str = 41, dex = 41, int = 41, }, } itemBases["Runeforged Sacrificial Regalia"] = { @@ -3756,7 +3756,7 @@ itemBases["Runeforged Sacrificial Regalia"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_int_armour = true, }, implicit = "+1 to Level of all Corrupted Skill Gems", implicitModTypes = { { "gem" }, }, - armour = { Armour = 200, Evasion = 182, EnergyShield = 56, Ward = 301, MovementPenalty = 0.03, }, + armour = { Armour = 200, Evasion = 182, EnergyShield = 56, RunicWard = 301, MovementPenalty = 0.03, }, req = { level = 65, str = 72, dex = 72, int = 72, }, } itemBases["Runeforged Sacrificial Regalia"] = { @@ -3767,7 +3767,7 @@ itemBases["Runeforged Sacrificial Regalia"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_int_armour = true, }, implicit = "+1 to Level of all Corrupted Skill Gems\n1% increased Maximum Life for each Corrupted Item Equipped", implicitModTypes = { { "gem" }, { "resource", "life" }, }, - armour = { Armour = 273, Evasion = 248, Ward = 129, MovementPenalty = 0.03, }, + armour = { Armour = 273, Evasion = 248, RunicWard = 129, MovementPenalty = 0.03, }, req = { level = 65, str = 80, dex = 80, }, } itemBases["Runeforged Sacrificial Regalia"] = { @@ -3778,7 +3778,7 @@ itemBases["Runeforged Sacrificial Regalia"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_int_armour = true, }, implicit = "+1 to Level of all Corrupted Skill Gems\n+1% to all Resistances for each Corrupted Item Equipped", implicitModTypes = { { "gem" }, { "resistance" }, }, - armour = { Evasion = 248, EnergyShield = 76, Ward = 129, MovementPenalty = 0.03, }, + armour = { Evasion = 248, EnergyShield = 76, RunicWard = 129, MovementPenalty = 0.03, }, req = { level = 65, dex = 80, int = 80, }, } itemBases["Runeforged Sacrificial Regalia"] = { @@ -3789,7 +3789,7 @@ itemBases["Runeforged Sacrificial Regalia"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_int_armour = true, }, implicit = "+1 to Level of all Corrupted Skill Gems\n(2-4)% increased Chaos Damage for each Corrupted Item Equipped", implicitModTypes = { { "gem" }, { "chaos_damage", "damage", "chaos" }, }, - armour = { Armour = 273, EnergyShield = 76, Ward = 129, MovementPenalty = 0.03, }, + armour = { Armour = 273, EnergyShield = 76, RunicWard = 129, MovementPenalty = 0.03, }, req = { level = 65, str = 80, int = 80, }, } itemBases["Runemastered Grand Regalia"] = { @@ -3800,7 +3800,7 @@ itemBases["Runemastered Grand Regalia"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 145, Evasion = 132, EnergyShield = 40, Ward = 86, MovementPenalty = 0.04, }, + armour = { Armour = 145, Evasion = 132, EnergyShield = 40, RunicWard = 86, MovementPenalty = 0.04, }, req = { level = 65, str = 41, dex = 41, int = 41, }, } itemBases["Runemastered Sacrificial Regalia"] = { @@ -3812,7 +3812,7 @@ itemBases["Runemastered Sacrificial Regalia"] = { tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_int_armour = true, }, implicit = "+1 to Level of all Corrupted Skill Gems", implicitModTypes = { { "gem" }, }, - armour = { Armour = 136, Evasion = 124, EnergyShield = 38, Ward = 215, MovementPenalty = 0.03, }, + armour = { Armour = 136, Evasion = 124, EnergyShield = 38, RunicWard = 215, MovementPenalty = 0.03, }, req = { level = 65, str = 72, dex = 72, int = 72, }, } itemBases["Garment"] = { @@ -3832,7 +3832,7 @@ itemBases["Runeforged Garment"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_int_armour = true, }, implicitModTypes = { }, - armour = { Ward = 100, }, + armour = { RunicWard = 100, }, req = { }, } itemBases["Runemastered Garment"] = { @@ -3843,7 +3843,7 @@ itemBases["Runemastered Garment"] = { socketLimit = 4, tags = { armour = true, body_armour = true, default = true, runeforged = true, str_dex_int_armour = true, }, implicitModTypes = { }, - armour = { Ward = 99, }, + armour = { RunicWard = 99, }, req = { level = 38, }, } diff --git a/src/Data/Bases/boots.lua b/src/Data/Bases/boots.lua index 3aece0cdd..e2ed59ee6 100644 --- a/src/Data/Bases/boots.lua +++ b/src/Data/Bases/boots.lua @@ -170,7 +170,7 @@ itemBases["Runeforged Rough Greaves"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, ezomyte_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 22, Ward = 14, }, + armour = { Armour = 22, RunicWard = 14, }, req = { }, } itemBases["Runeforged Iron Greaves"] = { @@ -180,7 +180,7 @@ itemBases["Runeforged Iron Greaves"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, ezomyte_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 57, Ward = 21, }, + armour = { Armour = 57, RunicWard = 21, }, req = { level = 11, str = 17, }, } itemBases["Runeforged Bronze Greaves"] = { @@ -190,7 +190,7 @@ itemBases["Runeforged Bronze Greaves"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, maraketh_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 74, Ward = 26, }, + armour = { Armour = 74, RunicWard = 26, }, req = { level = 16, str = 23, }, } itemBases["Runeforged Trimmed Greaves"] = { @@ -200,7 +200,7 @@ itemBases["Runeforged Trimmed Greaves"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, maraketh_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 112, Ward = 31, }, + armour = { Armour = 112, RunicWard = 31, }, req = { level = 27, str = 38, }, } itemBases["Runeforged Stone Greaves"] = { @@ -210,7 +210,7 @@ itemBases["Runeforged Stone Greaves"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 133, Ward = 36, }, + armour = { Armour = 133, RunicWard = 36, }, req = { level = 33, str = 45, }, } itemBases["Runeforged Reefsteel Greaves"] = { @@ -220,7 +220,7 @@ itemBases["Runeforged Reefsteel Greaves"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, karui_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 174, Ward = 39, }, + armour = { Armour = 174, RunicWard = 39, }, req = { level = 45, str = 60, }, } itemBases["Runeforged Monument Greaves"] = { @@ -230,7 +230,7 @@ itemBases["Runeforged Monument Greaves"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Ward = 175, }, + armour = { RunicWard = 175, }, req = { level = 52, str = 69, }, } itemBases["Runeforged Totemic Greaves"] = { @@ -240,7 +240,7 @@ itemBases["Runeforged Totemic Greaves"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Ward = 211, }, + armour = { RunicWard = 211, }, req = { level = 65, str = 86, }, } itemBases["Runeforged Elegant Greaves"] = { @@ -250,7 +250,7 @@ itemBases["Runeforged Elegant Greaves"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 185, Ward = 45, }, + armour = { Armour = 185, RunicWard = 45, }, req = { level = 54, str = 72, }, } itemBases["Runeforged Carved Greaves"] = { @@ -260,7 +260,7 @@ itemBases["Runeforged Carved Greaves"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 167, Ward = 78, }, + armour = { Armour = 167, RunicWard = 78, }, req = { level = 59, str = 78, }, } itemBases["Runeforged Bulwark Greaves"] = { @@ -270,7 +270,7 @@ itemBases["Runeforged Bulwark Greaves"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 219, Ward = 42, }, + armour = { Armour = 219, RunicWard = 42, }, req = { level = 65, str = 86, }, } itemBases["Runeforged Ornate Greaves"] = { @@ -280,7 +280,7 @@ itemBases["Runeforged Ornate Greaves"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 134, Ward = 116, }, + armour = { Armour = 134, RunicWard = 116, }, req = { level = 70, str = 93, }, } itemBases["Runeforged Vaal Greaves"] = { @@ -290,7 +290,7 @@ itemBases["Runeforged Vaal Greaves"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 244, Ward = 42, }, + armour = { Armour = 244, RunicWard = 42, }, req = { level = 75, str = 101, }, } itemBases["Runeforged Tasalian Greaves"] = { @@ -300,7 +300,7 @@ itemBases["Runeforged Tasalian Greaves"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, karui_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 85, Ward = 180, }, + armour = { Armour = 85, RunicWard = 180, }, req = { level = 80, str = 108, }, } itemBases["Runemastered Rough Greaves"] = { @@ -312,7 +312,7 @@ itemBases["Runemastered Rough Greaves"] = { tags = { armour = true, boots = true, default = true, ezomyte_basetype = true, runeforged = true, str_armour = true, }, implicit = "10% increased Movement Speed", implicitModTypes = { { "speed" }, }, - armour = { Armour = 150, Ward = 27, }, + armour = { Armour = 150, RunicWard = 27, }, req = { level = 38, str = 51, }, } itemBases["Runemastered Iron Greaves"] = { @@ -324,7 +324,7 @@ itemBases["Runemastered Iron Greaves"] = { tags = { armour = true, boots = true, default = true, ezomyte_basetype = true, runeforged = true, str_armour = true, }, implicit = "5% increased Movement Speed", implicitModTypes = { { "speed" }, }, - armour = { Armour = 120, Ward = 27, }, + armour = { Armour = 120, RunicWard = 27, }, req = { level = 38, str = 51, }, } itemBases["Runemastered Bronze Greaves"] = { @@ -336,7 +336,7 @@ itemBases["Runemastered Bronze Greaves"] = { tags = { armour = true, boots = true, default = true, maraketh_basetype = true, runeforged = true, str_armour = true, }, implicit = "5% increased Movement Speed", implicitModTypes = { { "speed" }, }, - armour = { Armour = 135, Ward = 20, }, + armour = { Armour = 135, RunicWard = 20, }, req = { level = 38, str = 51, }, } itemBases["Runemastered Trimmed Greaves"] = { @@ -348,7 +348,7 @@ itemBases["Runemastered Trimmed Greaves"] = { tags = { armour = true, boots = true, default = true, maraketh_basetype = true, runeforged = true, str_armour = true, }, implicit = "5% increased Movement Speed", implicitModTypes = { { "speed" }, }, - armour = { Armour = 79, Ward = 71, }, + armour = { Armour = 79, RunicWard = 71, }, req = { level = 40, str = 54, }, } itemBases["Runemastered Stone Greaves"] = { @@ -359,7 +359,7 @@ itemBases["Runemastered Stone Greaves"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 157, Ward = 46, }, + armour = { Armour = 157, RunicWard = 46, }, req = { level = 55, str = 73, }, } @@ -530,7 +530,7 @@ itemBases["Runeforged Rawhide Boots"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_armour = true, ezomyte_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 15, Ward = 14, }, + armour = { Evasion = 15, RunicWard = 14, }, req = { }, } itemBases["Runeforged Laced Boots"] = { @@ -540,7 +540,7 @@ itemBases["Runeforged Laced Boots"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_armour = true, ezomyte_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 47, Ward = 21, }, + armour = { Evasion = 47, RunicWard = 21, }, req = { level = 11, dex = 17, }, } itemBases["Runeforged Embossed Boots"] = { @@ -550,7 +550,7 @@ itemBases["Runeforged Embossed Boots"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 63, Ward = 26, }, + armour = { Evasion = 63, RunicWard = 26, }, req = { level = 16, dex = 23, }, } itemBases["Runeforged Steeltoe Boots"] = { @@ -560,7 +560,7 @@ itemBases["Runeforged Steeltoe Boots"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 102, Ward = 32, }, + armour = { Evasion = 102, RunicWard = 32, }, req = { level = 28, dex = 39, }, } itemBases["Runeforged Lizardscale Boots"] = { @@ -570,7 +570,7 @@ itemBases["Runeforged Lizardscale Boots"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 118, Ward = 36, }, + armour = { Evasion = 118, RunicWard = 36, }, req = { level = 33, dex = 45, }, } itemBases["Runeforged Flared Boots"] = { @@ -580,7 +580,7 @@ itemBases["Runeforged Flared Boots"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 157, Ward = 39, }, + armour = { Evasion = 157, RunicWard = 39, }, req = { level = 45, dex = 60, }, } itemBases["Runeforged Leatherplate Boots"] = { @@ -590,7 +590,7 @@ itemBases["Runeforged Leatherplate Boots"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 175, }, + armour = { RunicWard = 175, }, req = { level = 52, dex = 69, }, } itemBases["Runeforged Embroidered Boots"] = { @@ -600,7 +600,7 @@ itemBases["Runeforged Embroidered Boots"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 211, }, + armour = { RunicWard = 211, }, req = { level = 65, dex = 86, }, } itemBases["Runeforged Studded Boots"] = { @@ -610,7 +610,7 @@ itemBases["Runeforged Studded Boots"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 177, Ward = 36, }, + armour = { Evasion = 177, RunicWard = 36, }, req = { level = 54, dex = 72, }, } itemBases["Runeforged Serpentscale Boots"] = { @@ -620,7 +620,7 @@ itemBases["Runeforged Serpentscale Boots"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 162, Ward = 68, }, + armour = { Evasion = 162, RunicWard = 68, }, req = { level = 59, dex = 78, }, } itemBases["Runeforged Cinched Boots"] = { @@ -630,7 +630,7 @@ itemBases["Runeforged Cinched Boots"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 200, Ward = 42, }, + armour = { Evasion = 200, RunicWard = 42, }, req = { level = 65, dex = 86, }, } itemBases["Runeforged Cavalry Boots"] = { @@ -640,7 +640,7 @@ itemBases["Runeforged Cavalry Boots"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 122, Ward = 116, }, + armour = { Evasion = 122, RunicWard = 116, }, req = { level = 70, dex = 93, }, } itemBases["Runeforged Dragonscale Boots"] = { @@ -650,7 +650,7 @@ itemBases["Runeforged Dragonscale Boots"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 211, Ward = 53, }, + armour = { Evasion = 211, RunicWard = 53, }, req = { level = 75, dex = 101, }, } itemBases["Runeforged Drakeskin Boots"] = { @@ -660,7 +660,7 @@ itemBases["Runeforged Drakeskin Boots"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 89, Ward = 169, }, + armour = { Evasion = 89, RunicWard = 169, }, req = { level = 80, dex = 108, }, } itemBases["Runemastered Laced Boots"] = { @@ -672,7 +672,7 @@ itemBases["Runemastered Laced Boots"] = { tags = { armour = true, boots = true, default = true, dex_armour = true, ezomyte_basetype = true, runeforged = true, }, implicit = "5% increased Movement Speed", implicitModTypes = { { "speed" }, }, - armour = { Evasion = 54, Ward = 81, }, + armour = { Evasion = 54, RunicWard = 81, }, req = { level = 38, dex = 51, }, } itemBases["Runemastered Embossed Boots"] = { @@ -684,7 +684,7 @@ itemBases["Runemastered Embossed Boots"] = { tags = { armour = true, boots = true, default = true, dex_armour = true, maraketh_basetype = true, runeforged = true, }, implicit = "5% increased Movement Speed", implicitModTypes = { { "speed" }, }, - armour = { Evasion = 94, Ward = 41, }, + armour = { Evasion = 94, RunicWard = 41, }, req = { level = 38, dex = 51, }, } itemBases["Runemastered Steeltoe Boots"] = { @@ -695,7 +695,7 @@ itemBases["Runemastered Steeltoe Boots"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 113, Ward = 28, }, + armour = { Evasion = 113, RunicWard = 28, }, req = { level = 40, dex = 54, }, } itemBases["Runemastered Lizardscale Boots"] = { @@ -706,7 +706,7 @@ itemBases["Runemastered Lizardscale Boots"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 99, Ward = 42, }, + armour = { Evasion = 99, RunicWard = 42, }, req = { level = 40, dex = 54, }, } itemBases["Runemastered Cinched Boots"] = { @@ -717,7 +717,7 @@ itemBases["Runemastered Cinched Boots"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 178, Ward = 74, }, + armour = { Evasion = 178, RunicWard = 74, }, req = { level = 65, dex = 86, }, } @@ -888,7 +888,7 @@ itemBases["Runeforged Straw Sandals"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, ezomyte_basetype = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 14, Ward = 14, }, + armour = { EnergyShield = 14, RunicWard = 14, }, req = { }, } itemBases["Runeforged Wrapped Sandals"] = { @@ -898,7 +898,7 @@ itemBases["Runeforged Wrapped Sandals"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, ezomyte_basetype = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 22, Ward = 21, }, + armour = { EnergyShield = 22, RunicWard = 21, }, req = { level = 11, int = 17, }, } itemBases["Runeforged Lattice Sandals"] = { @@ -908,7 +908,7 @@ itemBases["Runeforged Lattice Sandals"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 27, Ward = 26, }, + armour = { EnergyShield = 27, RunicWard = 26, }, req = { level = 16, int = 23, }, } itemBases["Runeforged Silk Slippers"] = { @@ -918,7 +918,7 @@ itemBases["Runeforged Silk Slippers"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 36, Ward = 31, }, + armour = { EnergyShield = 36, RunicWard = 31, }, req = { level = 27, int = 38, }, } itemBases["Runeforged Feathered Sandals"] = { @@ -928,7 +928,7 @@ itemBases["Runeforged Feathered Sandals"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { EnergyShield = 41, Ward = 36, }, + armour = { EnergyShield = 41, RunicWard = 36, }, req = { level = 33, int = 45, }, } itemBases["Runeforged Flax Sandals"] = { @@ -938,7 +938,7 @@ itemBases["Runeforged Flax Sandals"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, int_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 51, Ward = 39, }, + armour = { EnergyShield = 51, RunicWard = 39, }, req = { level = 45, int = 60, }, } itemBases["Runeforged Studded Sandals"] = { @@ -948,7 +948,7 @@ itemBases["Runeforged Studded Sandals"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 175, }, + armour = { RunicWard = 175, }, req = { level = 52, int = 69, }, } itemBases["Runeforged Elaborate Sandals"] = { @@ -958,7 +958,7 @@ itemBases["Runeforged Elaborate Sandals"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 211, }, + armour = { RunicWard = 211, }, req = { level = 65, int = 86, }, } itemBases["Runeforged Elegant Slippers"] = { @@ -968,7 +968,7 @@ itemBases["Runeforged Elegant Slippers"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 50, Ward = 54, }, + armour = { EnergyShield = 50, RunicWard = 54, }, req = { level = 54, int = 72, }, } itemBases["Runeforged Dunerunner Sandals"] = { @@ -978,7 +978,7 @@ itemBases["Runeforged Dunerunner Sandals"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 56, Ward = 49, }, + armour = { EnergyShield = 56, RunicWard = 49, }, req = { level = 59, int = 78, }, } itemBases["Runeforged Bound Sandals"] = { @@ -988,7 +988,7 @@ itemBases["Runeforged Bound Sandals"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 61, Ward = 42, }, + armour = { EnergyShield = 61, RunicWard = 42, }, req = { level = 65, int = 86, }, } itemBases["Runeforged Luxurious Slippers"] = { @@ -998,7 +998,7 @@ itemBases["Runeforged Luxurious Slippers"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 37, Ward = 116, }, + armour = { EnergyShield = 37, RunicWard = 116, }, req = { level = 70, int = 93, }, } itemBases["Runeforged Sandsworn Sandals"] = { @@ -1008,7 +1008,7 @@ itemBases["Runeforged Sandsworn Sandals"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 66, Ward = 49, }, + armour = { EnergyShield = 66, RunicWard = 49, }, req = { level = 75, int = 101, }, } itemBases["Runeforged Sekhema Sandals"] = { @@ -1018,7 +1018,7 @@ itemBases["Runeforged Sekhema Sandals"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, int_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 22, Ward = 184, }, + armour = { EnergyShield = 22, RunicWard = 184, }, req = { level = 80, int = 108, }, } itemBases["Runemastered Straw Sandals"] = { @@ -1030,7 +1030,7 @@ itemBases["Runemastered Straw Sandals"] = { tags = { armour = true, boots = true, default = true, ezomyte_basetype = true, int_armour = true, runeforged = true, }, implicit = "5% increased Movement Speed", implicitModTypes = { { "speed" }, }, - armour = { EnergyShield = 45, Ward = 34, }, + armour = { EnergyShield = 45, RunicWard = 34, }, req = { level = 38, int = 51, }, } itemBases["Runemastered Wrapped Sandals"] = { @@ -1042,7 +1042,7 @@ itemBases["Runemastered Wrapped Sandals"] = { tags = { armour = true, boots = true, default = true, ezomyte_basetype = true, int_armour = true, runeforged = true, }, implicit = "5% increased Movement Speed", implicitModTypes = { { "speed" }, }, - armour = { EnergyShield = 41, Ward = 41, }, + armour = { EnergyShield = 41, RunicWard = 41, }, req = { level = 38, int = 51, }, } itemBases["Runemastered Lattice Sandals"] = { @@ -1054,7 +1054,7 @@ itemBases["Runemastered Lattice Sandals"] = { tags = { armour = true, boots = true, default = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicit = "5% increased Movement Speed", implicitModTypes = { { "speed" }, }, - armour = { EnergyShield = 34, Ward = 34, }, + armour = { EnergyShield = 34, RunicWard = 34, }, req = { level = 38, int = 51, }, } itemBases["Runemastered Silk Slippers"] = { @@ -1065,7 +1065,7 @@ itemBases["Runemastered Silk Slippers"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 36, Ward = 54, }, + armour = { EnergyShield = 36, RunicWard = 54, }, req = { level = 38, int = 51, }, } itemBases["Runemastered Feathered Sandals"] = { @@ -1076,7 +1076,7 @@ itemBases["Runemastered Feathered Sandals"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { EnergyShield = 33, Ward = 42, }, + armour = { EnergyShield = 33, RunicWard = 42, }, req = { level = 40, int = 54, }, } @@ -1217,7 +1217,7 @@ itemBases["Runeforged Mail Sabatons"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, ezomyte_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 22, Evasion = 17, Ward = 18, }, + armour = { Armour = 22, Evasion = 17, RunicWard = 18, }, req = { level = 6, str = 7, dex = 7, }, } itemBases["Runeforged Braced Sabatons"] = { @@ -1227,7 +1227,7 @@ itemBases["Runeforged Braced Sabatons"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, maraketh_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 41, Evasion = 35, Ward = 26, }, + armour = { Armour = 41, Evasion = 35, RunicWard = 26, }, req = { level = 16, str = 14, dex = 14, }, } itemBases["Runeforged Stacked Sabatons"] = { @@ -1237,7 +1237,7 @@ itemBases["Runeforged Stacked Sabatons"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_dex_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 73, Evasion = 65, Ward = 34, }, + armour = { Armour = 73, Evasion = 65, RunicWard = 34, }, req = { level = 33, str = 26, dex = 26, }, } itemBases["Runeforged Covered Sabatons"] = { @@ -1247,7 +1247,7 @@ itemBases["Runeforged Covered Sabatons"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, karui_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 96, Evasion = 86, Ward = 39, }, + armour = { Armour = 96, Evasion = 86, RunicWard = 39, }, req = { level = 45, str = 34, dex = 34, }, } itemBases["Runeforged Flexile Sabatons"] = { @@ -1257,7 +1257,7 @@ itemBases["Runeforged Flexile Sabatons"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Ward = 175, }, + armour = { RunicWard = 175, }, req = { level = 52, str = 38, dex = 38, }, } itemBases["Runeforged Bold Sabatons"] = { @@ -1267,7 +1267,7 @@ itemBases["Runeforged Bold Sabatons"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Ward = 211, }, + armour = { RunicWard = 211, }, req = { level = 65, str = 47, dex = 47, }, } itemBases["Runeforged Bastion Sabatons"] = { @@ -1277,7 +1277,7 @@ itemBases["Runeforged Bastion Sabatons"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 116, Evasion = 106, Ward = 39, }, + armour = { Armour = 116, Evasion = 106, RunicWard = 39, }, req = { level = 59, str = 44, dex = 44, }, } itemBases["Runeforged Veteran Sabatons"] = { @@ -1287,7 +1287,7 @@ itemBases["Runeforged Veteran Sabatons"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 127, Evasion = 116, Ward = 42, }, + armour = { Armour = 127, Evasion = 116, RunicWard = 42, }, req = { level = 65, str = 47, dex = 47, }, } itemBases["Runeforged Noble Sabatons"] = { @@ -1297,7 +1297,7 @@ itemBases["Runeforged Noble Sabatons"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 80, Evasion = 73, Ward = 116, }, + armour = { Armour = 80, Evasion = 73, RunicWard = 116, }, req = { level = 70, str = 51, dex = 51, }, } itemBases["Runeforged Fortress Sabatons"] = { @@ -1307,7 +1307,7 @@ itemBases["Runeforged Fortress Sabatons"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 121, Evasion = 110, Ward = 63, }, + armour = { Armour = 121, Evasion = 110, RunicWard = 63, }, req = { level = 75, str = 56, dex = 56, }, } itemBases["Runeforged Blacksteel Sabatons"] = { @@ -1317,7 +1317,7 @@ itemBases["Runeforged Blacksteel Sabatons"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, karui_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 40, Evasion = 37, Ward = 190, }, + armour = { Armour = 40, Evasion = 37, RunicWard = 190, }, req = { level = 80, str = 59, dex = 59, }, } itemBases["Runemastered Mail Sabatons"] = { @@ -1329,7 +1329,7 @@ itemBases["Runemastered Mail Sabatons"] = { tags = { armour = true, boots = true, default = true, ezomyte_basetype = true, runeforged = true, str_dex_armour = true, }, implicit = "5% increased Movement Speed", implicitModTypes = { { "speed" }, }, - armour = { Armour = 50, Evasion = 44, Ward = 54, }, + armour = { Armour = 50, Evasion = 44, RunicWard = 54, }, req = { level = 38, str = 29, dex = 29, }, } itemBases["Runemastered Braced Sabatons"] = { @@ -1341,7 +1341,7 @@ itemBases["Runemastered Braced Sabatons"] = { tags = { armour = true, boots = true, default = true, maraketh_basetype = true, runeforged = true, str_dex_armour = true, }, implicit = "5% increased Movement Speed", implicitModTypes = { { "speed" }, }, - armour = { Armour = 66, Evasion = 59, Ward = 34, }, + armour = { Armour = 66, Evasion = 59, RunicWard = 34, }, req = { level = 38, str = 29, dex = 29, }, } itemBases["Runemastered Stacked Sabatons"] = { @@ -1353,7 +1353,7 @@ itemBases["Runemastered Stacked Sabatons"] = { tags = { armour = true, boots = true, default = true, runeforged = true, str_dex_armour = true, vaal_basetype = true, }, implicit = "10% increased Movement Speed", implicitModTypes = { { "speed" }, }, - armour = { Armour = 173, Evasion = 155, Ward = 21, }, + armour = { Armour = 173, Evasion = 155, RunicWard = 21, }, req = { level = 40, str = 30, dex = 30, }, } itemBases["Runemastered Covered Sabatons"] = { @@ -1364,7 +1364,7 @@ itemBases["Runemastered Covered Sabatons"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, karui_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 69, Evasion = 63, Ward = 73, }, + armour = { Armour = 69, Evasion = 63, RunicWard = 73, }, req = { level = 55, str = 41, dex = 41, }, } @@ -1505,7 +1505,7 @@ itemBases["Runeforged Padded Leggings"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, ezomyte_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 20, EnergyShield = 10, Ward = 17, }, + armour = { Armour = 20, EnergyShield = 10, RunicWard = 17, }, req = { level = 5, str = 7, int = 7, }, } itemBases["Runeforged Secured Leggings"] = { @@ -1515,7 +1515,7 @@ itemBases["Runeforged Secured Leggings"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, maraketh_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 41, EnergyShield = 15, Ward = 26, }, + armour = { Armour = 41, EnergyShield = 15, RunicWard = 26, }, req = { level = 16, str = 14, int = 14, }, } itemBases["Runeforged Pelt Leggings"] = { @@ -1525,7 +1525,7 @@ itemBases["Runeforged Pelt Leggings"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_int_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 73, EnergyShield = 22, Ward = 34, }, + armour = { Armour = 73, EnergyShield = 22, RunicWard = 34, }, req = { level = 33, str = 26, int = 26, }, } itemBases["Runeforged Weaver Leggings"] = { @@ -1535,7 +1535,7 @@ itemBases["Runeforged Weaver Leggings"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, karui_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 96, EnergyShield = 28, Ward = 39, }, + armour = { Armour = 96, EnergyShield = 28, RunicWard = 39, }, req = { level = 45, str = 34, int = 34, }, } itemBases["Runeforged Gilt Leggings"] = { @@ -1545,7 +1545,7 @@ itemBases["Runeforged Gilt Leggings"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Ward = 175, }, + armour = { RunicWard = 175, }, req = { level = 52, str = 38, int = 38, }, } itemBases["Runeforged Pious Leggings"] = { @@ -1555,7 +1555,7 @@ itemBases["Runeforged Pious Leggings"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Ward = 211, }, + armour = { RunicWard = 211, }, req = { level = 65, str = 47, int = 47, }, } itemBases["Runeforged Shamanistic Leggings"] = { @@ -1565,7 +1565,7 @@ itemBases["Runeforged Shamanistic Leggings"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 110, EnergyShield = 31, Ward = 49, }, + armour = { Armour = 110, EnergyShield = 31, RunicWard = 49, }, req = { level = 59, str = 44, int = 44, }, } itemBases["Runeforged Faithful Leggings"] = { @@ -1575,7 +1575,7 @@ itemBases["Runeforged Faithful Leggings"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 121, EnergyShield = 34, Ward = 42, }, + armour = { Armour = 121, EnergyShield = 34, RunicWard = 42, }, req = { level = 65, str = 47, int = 47, }, } itemBases["Runeforged Apostle Leggings"] = { @@ -1585,7 +1585,7 @@ itemBases["Runeforged Apostle Leggings"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 74, EnergyShield = 20, Ward = 116, }, + armour = { Armour = 74, EnergyShield = 20, RunicWard = 116, }, req = { level = 70, str = 51, int = 51, }, } itemBases["Runeforged Warlock Leggings"] = { @@ -1595,7 +1595,7 @@ itemBases["Runeforged Warlock Leggings"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 134, EnergyShield = 37, Ward = 42, }, + armour = { Armour = 134, EnergyShield = 37, RunicWard = 42, }, req = { level = 75, str = 56, int = 56, }, } itemBases["Runeforged Cryptic Leggings"] = { @@ -1605,7 +1605,7 @@ itemBases["Runeforged Cryptic Leggings"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, karui_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 34, EnergyShield = 9, Ward = 201, }, + armour = { Armour = 34, EnergyShield = 9, RunicWard = 201, }, req = { level = 80, str = 59, int = 59, }, } itemBases["Runemastered Secured Leggings"] = { @@ -1617,7 +1617,7 @@ itemBases["Runemastered Secured Leggings"] = { tags = { armour = true, boots = true, default = true, maraketh_basetype = true, runeforged = true, str_int_armour = true, }, implicit = "5% increased Movement Speed", implicitModTypes = { { "speed" }, }, - armour = { Armour = 58, EnergyShield = 17, Ward = 41, }, + armour = { Armour = 58, EnergyShield = 17, RunicWard = 41, }, req = { level = 38, str = 29, int = 29, }, } itemBases["Ancient Leggings"] = { @@ -1639,7 +1639,7 @@ itemBases["Runemastered Ancient Leggings"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 107, EnergyShield = 30, Ward = 53, }, + armour = { Armour = 107, EnergyShield = 30, RunicWard = 53, }, req = { level = 65, str = 56, int = 56, }, } @@ -1780,7 +1780,7 @@ itemBases["Runeforged Frayed Shoes"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_int_armour = true, ezomyte_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 15, EnergyShield = 10, Ward = 17, }, + armour = { Evasion = 15, EnergyShield = 10, RunicWard = 17, }, req = { level = 5, dex = 7, int = 7, }, } itemBases["Runeforged Threaded Shoes"] = { @@ -1790,7 +1790,7 @@ itemBases["Runeforged Threaded Shoes"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 35, EnergyShield = 15, Ward = 26, }, + armour = { Evasion = 35, EnergyShield = 15, RunicWard = 26, }, req = { level = 16, dex = 14, int = 14, }, } itemBases["Runeforged Hunting Shoes"] = { @@ -1800,7 +1800,7 @@ itemBases["Runeforged Hunting Shoes"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 65, EnergyShield = 22, Ward = 34, }, + armour = { Evasion = 65, EnergyShield = 22, RunicWard = 34, }, req = { level = 33, dex = 26, int = 26, }, } itemBases["Runeforged Steelpoint Shoes"] = { @@ -1810,7 +1810,7 @@ itemBases["Runeforged Steelpoint Shoes"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_int_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 86, EnergyShield = 28, Ward = 39, }, + armour = { Evasion = 86, EnergyShield = 28, RunicWard = 39, }, req = { level = 45, dex = 34, int = 34, }, } itemBases["Runeforged Velour Shoes"] = { @@ -1820,7 +1820,7 @@ itemBases["Runeforged Velour Shoes"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 175, }, + armour = { RunicWard = 175, }, req = { level = 52, dex = 38, int = 38, }, } itemBases["Runeforged Bladed Shoes"] = { @@ -1830,7 +1830,7 @@ itemBases["Runeforged Bladed Shoes"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 211, }, + armour = { RunicWard = 211, }, req = { level = 65, dex = 47, int = 47, }, } itemBases["Runeforged Treerunner Shoes"] = { @@ -1840,7 +1840,7 @@ itemBases["Runeforged Treerunner Shoes"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 95, EnergyShield = 29, Ward = 58, }, + armour = { Evasion = 95, EnergyShield = 29, RunicWard = 58, }, req = { level = 59, dex = 44, int = 44, }, } itemBases["Runeforged Wanderer Shoes"] = { @@ -1850,7 +1850,7 @@ itemBases["Runeforged Wanderer Shoes"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 110, EnergyShield = 34, Ward = 42, }, + armour = { Evasion = 110, EnergyShield = 34, RunicWard = 42, }, req = { level = 65, dex = 47, int = 47, }, } itemBases["Runeforged Charmed Shoes"] = { @@ -1860,7 +1860,7 @@ itemBases["Runeforged Charmed Shoes"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 67, EnergyShield = 20, Ward = 116, }, + armour = { Evasion = 67, EnergyShield = 20, RunicWard = 116, }, req = { level = 70, dex = 51, int = 51, }, } itemBases["Runeforged Quickslip Shoes"] = { @@ -1870,7 +1870,7 @@ itemBases["Runeforged Quickslip Shoes"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 128, EnergyShield = 39, Ward = 32, }, + armour = { Evasion = 128, EnergyShield = 39, RunicWard = 32, }, req = { level = 75, dex = 56, int = 56, }, } itemBases["Runeforged Daggerfoot Shoes"] = { @@ -1880,7 +1880,7 @@ itemBases["Runeforged Daggerfoot Shoes"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_int_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 34, EnergyShield = 10, Ward = 194, }, + armour = { Evasion = 34, EnergyShield = 10, RunicWard = 194, }, req = { level = 80, dex = 59, int = 59, }, } itemBases["Runemastered Threaded Shoes"] = { @@ -1892,7 +1892,7 @@ itemBases["Runemastered Threaded Shoes"] = { tags = { armour = true, boots = true, default = true, dex_int_armour = true, maraketh_basetype = true, runeforged = true, }, implicit = "5% increased Movement Speed", implicitModTypes = { { "speed" }, }, - armour = { Evasion = 55, EnergyShield = 19, Ward = 34, }, + armour = { Evasion = 55, EnergyShield = 19, RunicWard = 34, }, req = { level = 38, dex = 29, int = 29, }, } itemBases["Runemastered Hunting Shoes"] = { @@ -1903,7 +1903,7 @@ itemBases["Runemastered Hunting Shoes"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 70, EnergyShield = 23, Ward = 28, }, + armour = { Evasion = 70, EnergyShield = 23, RunicWard = 28, }, req = { level = 40, dex = 30, int = 30, }, } itemBases["Runemastered Velour Shoes"] = { @@ -1914,7 +1914,7 @@ itemBases["Runemastered Velour Shoes"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, dex_int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 85, EnergyShield = 26, Ward = 63, }, + armour = { Evasion = 85, EnergyShield = 26, RunicWard = 63, }, req = { level = 65, dex = 47, int = 47, }, } @@ -1935,7 +1935,7 @@ itemBases["Runeforged Grand Cuisses"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_dex_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 67, Evasion = 61, EnergyShield = 19, Ward = 53, }, + armour = { Armour = 67, Evasion = 61, EnergyShield = 19, RunicWard = 53, }, req = { level = 65, str = 34, dex = 34, int = 34, }, } itemBases["Runemastered Grand Cuisses"] = { @@ -1946,7 +1946,7 @@ itemBases["Runemastered Grand Cuisses"] = { socketLimit = 3, tags = { armour = true, boots = true, default = true, runeforged = true, str_dex_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 45, Evasion = 41, EnergyShield = 12, Ward = 106, }, + armour = { Armour = 45, Evasion = 41, EnergyShield = 12, RunicWard = 106, }, req = { level = 65, str = 34, dex = 34, int = 34, }, } diff --git a/src/Data/Bases/focus.lua b/src/Data/Bases/focus.lua index bc6ef0645..f832f6ae2 100644 --- a/src/Data/Bases/focus.lua +++ b/src/Data/Bases/focus.lua @@ -216,7 +216,7 @@ itemBases["Runeforged Twig Focus"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, focus = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 12, Ward = 12, }, + armour = { EnergyShield = 12, RunicWard = 12, }, req = { }, } itemBases["Runeforged Woven Focus"] = { @@ -225,7 +225,7 @@ itemBases["Runeforged Woven Focus"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, focus = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 15, Ward = 15, }, + armour = { EnergyShield = 15, RunicWard = 15, }, req = { level = 6, int = 11, }, } itemBases["Runeforged Antler Focus"] = { @@ -234,7 +234,7 @@ itemBases["Runeforged Antler Focus"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, focus = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 18, Ward = 17, }, + armour = { EnergyShield = 18, RunicWard = 17, }, req = { level = 10, int = 17, }, } itemBases["Runeforged Engraved Focus"] = { @@ -243,7 +243,7 @@ itemBases["Runeforged Engraved Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 22, Ward = 22, }, + armour = { EnergyShield = 22, RunicWard = 22, }, req = { level = 16, int = 25, }, } itemBases["Runeforged Tonal Focus"] = { @@ -252,7 +252,7 @@ itemBases["Runeforged Tonal Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 26, Ward = 24, }, + armour = { EnergyShield = 26, RunicWard = 24, }, req = { level = 22, int = 33, }, } itemBases["Runeforged Crystal Focus"] = { @@ -261,7 +261,7 @@ itemBases["Runeforged Crystal Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 29, Ward = 25, }, + armour = { EnergyShield = 29, RunicWard = 25, }, req = { level = 26, int = 38, }, } itemBases["Runeforged Voodoo Focus"] = { @@ -270,7 +270,7 @@ itemBases["Runeforged Voodoo Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { EnergyShield = 34, Ward = 28, }, + armour = { EnergyShield = 34, RunicWard = 28, }, req = { level = 33, int = 48, }, } itemBases["Runeforged Plumed Focus"] = { @@ -279,7 +279,7 @@ itemBases["Runeforged Plumed Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { EnergyShield = 36, Ward = 30, }, + armour = { EnergyShield = 36, RunicWard = 30, }, req = { level = 36, int = 52, }, } itemBases["Runeforged Runed Focus"] = { @@ -288,7 +288,7 @@ itemBases["Runeforged Runed Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 42, Ward = 32, }, + armour = { EnergyShield = 42, RunicWard = 32, }, req = { level = 45, int = 64, }, } itemBases["Runeforged Whorl Focus"] = { @@ -297,7 +297,7 @@ itemBases["Runeforged Whorl Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 47, Ward = 34, }, + armour = { EnergyShield = 47, RunicWard = 34, }, req = { level = 51, int = 73, }, } itemBases["Runeforged Elegant Focus"] = { @@ -306,7 +306,7 @@ itemBases["Runeforged Elegant Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 146, }, + armour = { RunicWard = 146, }, req = { level = 52, int = 74, }, } itemBases["Runeforged Attuned Focus"] = { @@ -315,7 +315,7 @@ itemBases["Runeforged Attuned Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 157, }, + armour = { RunicWard = 157, }, req = { level = 57, int = 81, }, } itemBases["Runeforged Magus Focus"] = { @@ -324,7 +324,7 @@ itemBases["Runeforged Magus Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 176, }, + armour = { RunicWard = 176, }, req = { level = 65, int = 91, }, } itemBases["Runeforged Arrayed Focus"] = { @@ -333,7 +333,7 @@ itemBases["Runeforged Arrayed Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 41, Ward = 45, }, + armour = { EnergyShield = 41, RunicWard = 45, }, req = { level = 54, int = 77, }, } itemBases["Runeforged Cultist Focus"] = { @@ -342,7 +342,7 @@ itemBases["Runeforged Cultist Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 50, Ward = 32, }, + armour = { EnergyShield = 50, RunicWard = 32, }, req = { level = 59, int = 83, }, } itemBases["Runeforged Hallowed Focus"] = { @@ -351,7 +351,7 @@ itemBases["Runeforged Hallowed Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 40, Ward = 58, }, + armour = { EnergyShield = 40, RunicWard = 58, }, req = { level = 61, int = 86, }, } itemBases["Runeforged Druidic Focus"] = { @@ -360,7 +360,7 @@ itemBases["Runeforged Druidic Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 51, Ward = 62, }, + armour = { EnergyShield = 51, RunicWard = 62, }, req = { level = 65, int = 91, }, } itemBases["Runeforged Leyline Focus"] = { @@ -369,7 +369,7 @@ itemBases["Runeforged Leyline Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 39, Ward = 114, }, + armour = { EnergyShield = 39, RunicWard = 114, }, req = { level = 70, int = 99, }, } itemBases["Runeforged Sacred Focus"] = { @@ -378,7 +378,7 @@ itemBases["Runeforged Sacred Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 65, Ward = 53, }, + armour = { EnergyShield = 65, RunicWard = 53, }, req = { level = 75, int = 107, }, } itemBases["Runeforged Tasalian Focus"] = { @@ -387,7 +387,7 @@ itemBases["Runeforged Tasalian Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 24, Ward = 181, }, + armour = { EnergyShield = 24, RunicWard = 181, }, req = { level = 80, int = 115, }, } itemBases["Runemastered Twig Focus"] = { @@ -397,7 +397,7 @@ itemBases["Runemastered Twig Focus"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, focus = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 38, Ward = 23, }, + armour = { EnergyShield = 38, RunicWard = 23, }, req = { level = 38, int = 54, }, } itemBases["Runemastered Woven Focus"] = { @@ -407,7 +407,7 @@ itemBases["Runemastered Woven Focus"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, focus = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 23, Ward = 45, }, + armour = { EnergyShield = 23, RunicWard = 45, }, req = { level = 38, int = 54, }, } itemBases["Runemastered Antler Focus"] = { @@ -417,7 +417,7 @@ itemBases["Runemastered Antler Focus"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, focus = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 23, Ward = 34, }, + armour = { EnergyShield = 23, RunicWard = 34, }, req = { level = 38, int = 54, }, } itemBases["Runemastered Engraved Focus"] = { @@ -427,7 +427,7 @@ itemBases["Runemastered Engraved Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 38, Ward = 45, }, + armour = { EnergyShield = 38, RunicWard = 45, }, req = { level = 38, int = 54, }, } itemBases["Runemastered Tonal Focus"] = { @@ -437,7 +437,7 @@ itemBases["Runemastered Tonal Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 19, Ward = 57, }, + armour = { EnergyShield = 19, RunicWard = 57, }, req = { level = 38, int = 54, }, } itemBases["Runemastered Crystal Focus"] = { @@ -447,7 +447,7 @@ itemBases["Runemastered Crystal Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 23, Ward = 47, }, + armour = { EnergyShield = 23, RunicWard = 47, }, req = { level = 40, int = 58, }, } itemBases["Runemastered Voodoo Focus"] = { @@ -457,7 +457,7 @@ itemBases["Runemastered Voodoo Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { EnergyShield = 40, Ward = 31, }, + armour = { EnergyShield = 40, RunicWard = 31, }, req = { level = 55, int = 78, }, } itemBases["Runemastered Plumed Focus"] = { @@ -467,6 +467,6 @@ itemBases["Runemastered Plumed Focus"] = { socketLimit = 3, tags = { armour = true, default = true, focus = true, int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { EnergyShield = 23, Ward = 106, }, + armour = { EnergyShield = 23, RunicWard = 106, }, req = { level = 75, int = 91, }, } diff --git a/src/Data/Bases/gloves.lua b/src/Data/Bases/gloves.lua index 304ccb822..3f41c58e3 100644 --- a/src/Data/Bases/gloves.lua +++ b/src/Data/Bases/gloves.lua @@ -170,7 +170,7 @@ itemBases["Runeforged Stocky Mitts"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, gloves = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 15, Ward = 10, }, + armour = { Armour = 15, RunicWard = 10, }, req = { }, } itemBases["Runeforged Riveted Mitts"] = { @@ -180,7 +180,7 @@ itemBases["Runeforged Riveted Mitts"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, gloves = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 38, Ward = 16, }, + armour = { Armour = 38, RunicWard = 16, }, req = { level = 11, str = 16, }, } itemBases["Runeforged Tempered Mitts"] = { @@ -190,7 +190,7 @@ itemBases["Runeforged Tempered Mitts"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, maraketh_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 49, Ward = 17, }, + armour = { Armour = 49, RunicWard = 17, }, req = { level = 16, str = 22, }, } itemBases["Runeforged Bolstered Mitts"] = { @@ -200,7 +200,7 @@ itemBases["Runeforged Bolstered Mitts"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, maraketh_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 75, Ward = 21, }, + armour = { Armour = 75, RunicWard = 21, }, req = { level = 27, str = 35, }, } itemBases["Runeforged Moulded Mitts"] = { @@ -210,7 +210,7 @@ itemBases["Runeforged Moulded Mitts"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 89, Ward = 22, }, + armour = { Armour = 89, RunicWard = 22, }, req = { level = 33, str = 42, }, } itemBases["Runeforged Detailed Mitts"] = { @@ -220,7 +220,7 @@ itemBases["Runeforged Detailed Mitts"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, karui_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 116, Ward = 26, }, + armour = { Armour = 116, RunicWard = 26, }, req = { level = 45, str = 56, }, } itemBases["Runeforged Titan Mitts"] = { @@ -230,7 +230,7 @@ itemBases["Runeforged Titan Mitts"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Ward = 117, }, + armour = { RunicWard = 117, }, req = { level = 52, str = 64, }, } itemBases["Runeforged Grand Mitts"] = { @@ -240,7 +240,7 @@ itemBases["Runeforged Grand Mitts"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Ward = 141, }, + armour = { RunicWard = 141, }, req = { level = 65, str = 80, }, } itemBases["Runeforged Ancient Mitts"] = { @@ -250,7 +250,7 @@ itemBases["Runeforged Ancient Mitts"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 103, Ward = 48, }, + armour = { Armour = 103, RunicWard = 48, }, req = { level = 54, str = 67, }, } itemBases["Runeforged Feathered Mitts"] = { @@ -260,7 +260,7 @@ itemBases["Runeforged Feathered Mitts"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 134, Ward = 32, }, + armour = { Armour = 134, RunicWard = 32, }, req = { level = 59, str = 73, }, } itemBases["Runeforged Knightly Mitts"] = { @@ -270,7 +270,7 @@ itemBases["Runeforged Knightly Mitts"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 146, Ward = 28, }, + armour = { Armour = 146, RunicWard = 28, }, req = { level = 65, str = 80, }, } itemBases["Runeforged Ornate Mitts"] = { @@ -280,7 +280,7 @@ itemBases["Runeforged Ornate Mitts"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 106, Ward = 63, }, + armour = { Armour = 106, RunicWard = 63, }, req = { level = 70, str = 87, }, } itemBases["Runeforged Vaal Mitts"] = { @@ -290,7 +290,7 @@ itemBases["Runeforged Vaal Mitts"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 162, Ward = 28, }, + armour = { Armour = 162, RunicWard = 28, }, req = { level = 75, str = 94, }, } itemBases["Runeforged Massive Mitts"] = { @@ -300,7 +300,7 @@ itemBases["Runeforged Massive Mitts"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, karui_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 49, Ward = 127, }, + armour = { Armour = 49, RunicWard = 127, }, req = { level = 80, str = 101, }, } itemBases["Runemastered Stocky Mitts"] = { @@ -311,7 +311,7 @@ itemBases["Runemastered Stocky Mitts"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, gloves = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 50, Ward = 45, }, + armour = { Armour = 50, RunicWard = 45, }, req = { level = 38, str = 48, }, } itemBases["Runemastered Riveted Mitts"] = { @@ -322,7 +322,7 @@ itemBases["Runemastered Riveted Mitts"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, gloves = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 80, Ward = 23, }, + armour = { Armour = 80, RunicWard = 23, }, req = { level = 38, str = 48, }, } itemBases["Runemastered Tempered Mitts"] = { @@ -333,7 +333,7 @@ itemBases["Runemastered Tempered Mitts"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, maraketh_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 95, Ward = 23, }, + armour = { Armour = 95, RunicWard = 23, }, req = { level = 38, str = 48, }, } itemBases["Runemastered Bolstered Mitts"] = { @@ -344,7 +344,7 @@ itemBases["Runemastered Bolstered Mitts"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, maraketh_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 80, Ward = 27, }, + armour = { Armour = 80, RunicWard = 27, }, req = { level = 38, str = 48, }, } itemBases["Runemastered Moulded Mitts"] = { @@ -355,7 +355,7 @@ itemBases["Runemastered Moulded Mitts"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 70, Ward = 61, }, + armour = { Armour = 70, RunicWard = 61, }, req = { level = 55, str = 68, }, } itemBases["Runemastered Titan Mitts"] = { @@ -366,7 +366,7 @@ itemBases["Runemastered Titan Mitts"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 114, Ward = 49, }, + armour = { Armour = 114, RunicWard = 49, }, req = { level = 65, str = 80, }, } @@ -537,7 +537,7 @@ itemBases["Runeforged Suede Bracers"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, ezomyte_basetype = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 10, Ward = 10, }, + armour = { Evasion = 10, RunicWard = 10, }, req = { }, } itemBases["Runeforged Firm Bracers"] = { @@ -547,7 +547,7 @@ itemBases["Runeforged Firm Bracers"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, ezomyte_basetype = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 31, Ward = 16, }, + armour = { Evasion = 31, RunicWard = 16, }, req = { level = 11, dex = 16, }, } itemBases["Runeforged Bound Bracers"] = { @@ -557,7 +557,7 @@ itemBases["Runeforged Bound Bracers"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, gloves = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 42, Ward = 17, }, + armour = { Evasion = 42, RunicWard = 17, }, req = { level = 16, dex = 22, }, } itemBases["Runeforged Sectioned Bracers"] = { @@ -567,7 +567,7 @@ itemBases["Runeforged Sectioned Bracers"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, gloves = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 68, Ward = 22, }, + armour = { Evasion = 68, RunicWard = 22, }, req = { level = 28, dex = 36, }, } itemBases["Runeforged Spined Bracers"] = { @@ -577,7 +577,7 @@ itemBases["Runeforged Spined Bracers"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, gloves = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 79, Ward = 22, }, + armour = { Evasion = 79, RunicWard = 22, }, req = { level = 33, dex = 42, }, } itemBases["Runeforged Fine Bracers"] = { @@ -587,7 +587,7 @@ itemBases["Runeforged Fine Bracers"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, gloves = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 105, Ward = 26, }, + armour = { Evasion = 105, RunicWard = 26, }, req = { level = 45, dex = 56, }, } itemBases["Runeforged Hardened Bracers"] = { @@ -597,7 +597,7 @@ itemBases["Runeforged Hardened Bracers"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 117, }, + armour = { RunicWard = 117, }, req = { level = 52, dex = 64, }, } itemBases["Runeforged Engraved Bracers"] = { @@ -607,7 +607,7 @@ itemBases["Runeforged Engraved Bracers"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 133, Ward = 35, }, + armour = { Evasion = 133, RunicWard = 35, }, req = { level = 65, dex = 80, }, } itemBases["Runeforged Refined Bracers"] = { @@ -617,7 +617,7 @@ itemBases["Runeforged Refined Bracers"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 118, Ward = 24, }, + armour = { Evasion = 118, RunicWard = 24, }, req = { level = 54, dex = 67, }, } itemBases["Runeforged Spiked Bracers"] = { @@ -627,7 +627,7 @@ itemBases["Runeforged Spiked Bracers"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 108, Ward = 45, }, + armour = { Evasion = 108, RunicWard = 45, }, req = { level = 59, dex = 73, }, } itemBases["Runeforged Stalking Bracers"] = { @@ -637,7 +637,7 @@ itemBases["Runeforged Stalking Bracers"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 133, Ward = 28, }, + armour = { Evasion = 133, RunicWard = 28, }, req = { level = 65, dex = 80, }, } itemBases["Runeforged Grand Bracers"] = { @@ -647,7 +647,7 @@ itemBases["Runeforged Grand Bracers"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 96, Ward = 63, }, + armour = { Evasion = 96, RunicWard = 63, }, req = { level = 70, dex = 87, }, } itemBases["Runeforged Barbed Bracers"] = { @@ -657,7 +657,7 @@ itemBases["Runeforged Barbed Bracers"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 141, Ward = 35, }, + armour = { Evasion = 141, RunicWard = 35, }, req = { level = 75, dex = 94, }, } itemBases["Runeforged Polished Bracers"] = { @@ -667,7 +667,7 @@ itemBases["Runeforged Polished Bracers"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, gloves = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 52, Ward = 120, }, + armour = { Evasion = 52, RunicWard = 120, }, req = { level = 80, dex = 101, }, } itemBases["Runemastered Suede Bracers"] = { @@ -678,7 +678,7 @@ itemBases["Runemastered Suede Bracers"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, ezomyte_basetype = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 63, Ward = 20, }, + armour = { Evasion = 63, RunicWard = 20, }, req = { level = 38, dex = 48, }, } itemBases["Runemastered Firm Bracers"] = { @@ -689,7 +689,7 @@ itemBases["Runemastered Firm Bracers"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, ezomyte_basetype = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 63, Ward = 27, }, + armour = { Evasion = 63, RunicWard = 27, }, req = { level = 38, dex = 48, }, } itemBases["Runemastered Sectioned Bracers"] = { @@ -700,7 +700,7 @@ itemBases["Runemastered Sectioned Bracers"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, gloves = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 76, Ward = 18, }, + armour = { Evasion = 76, RunicWard = 18, }, req = { level = 38, dex = 48, }, } itemBases["Runemastered Spined Bracers"] = { @@ -711,7 +711,7 @@ itemBases["Runemastered Spined Bracers"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, gloves = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 72, Ward = 18, }, + armour = { Evasion = 72, RunicWard = 18, }, req = { level = 38, dex = 48, }, } itemBases["Runemastered Fine Bracers"] = { @@ -722,7 +722,7 @@ itemBases["Runemastered Fine Bracers"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, gloves = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 52, Ward = 52, }, + armour = { Evasion = 52, RunicWard = 52, }, req = { level = 45, dex = 56, }, } @@ -893,7 +893,7 @@ itemBases["Runeforged Torn Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, gloves = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 9, Ward = 10, }, + armour = { EnergyShield = 9, RunicWard = 10, }, req = { }, } itemBases["Runeforged Sombre Gloves"] = { @@ -903,7 +903,7 @@ itemBases["Runeforged Sombre Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, gloves = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 15, Ward = 17, }, + armour = { EnergyShield = 15, RunicWard = 17, }, req = { level = 12, int = 17, }, } itemBases["Runeforged Stitched Gloves"] = { @@ -913,7 +913,7 @@ itemBases["Runeforged Stitched Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 18, Ward = 17, }, + armour = { EnergyShield = 18, RunicWard = 17, }, req = { level = 16, int = 22, }, } itemBases["Runeforged Jewelled Gloves"] = { @@ -923,7 +923,7 @@ itemBases["Runeforged Jewelled Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 23, Ward = 20, }, + armour = { EnergyShield = 23, RunicWard = 20, }, req = { level = 26, int = 34, }, } itemBases["Runeforged Intricate Gloves"] = { @@ -933,7 +933,7 @@ itemBases["Runeforged Intricate Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { EnergyShield = 27, Ward = 22, }, + armour = { EnergyShield = 27, RunicWard = 22, }, req = { level = 33, int = 42, }, } itemBases["Runeforged Pauascale Gloves"] = { @@ -943,7 +943,7 @@ itemBases["Runeforged Pauascale Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, int_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 34, Ward = 26, }, + armour = { EnergyShield = 34, RunicWard = 26, }, req = { level = 45, int = 56, }, } itemBases["Runeforged Embroidered Gloves"] = { @@ -953,7 +953,7 @@ itemBases["Runeforged Embroidered Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 117, }, + armour = { RunicWard = 117, }, req = { level = 52, int = 64, }, } itemBases["Runeforged Adorned Gloves"] = { @@ -963,7 +963,7 @@ itemBases["Runeforged Adorned Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 141, }, + armour = { RunicWard = 141, }, req = { level = 65, int = 80, }, } itemBases["Runeforged Baroque Gloves"] = { @@ -973,7 +973,7 @@ itemBases["Runeforged Baroque Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 33, Ward = 36, }, + armour = { EnergyShield = 33, RunicWard = 36, }, req = { level = 54, int = 67, }, } itemBases["Runeforged Gold Gloves"] = { @@ -983,7 +983,7 @@ itemBases["Runeforged Gold Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 31, Ward = 52, }, + armour = { EnergyShield = 31, RunicWard = 52, }, req = { level = 59, int = 73, }, } itemBases["Runeforged Grim Gloves"] = { @@ -993,7 +993,7 @@ itemBases["Runeforged Grim Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 41, Ward = 28, }, + armour = { EnergyShield = 41, RunicWard = 28, }, req = { level = 65, int = 80, }, } itemBases["Runeforged Opulent Gloves"] = { @@ -1003,7 +1003,7 @@ itemBases["Runeforged Opulent Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 29, Ward = 63, }, + armour = { EnergyShield = 29, RunicWard = 63, }, req = { level = 70, int = 87, }, } itemBases["Runeforged Vaal Gloves"] = { @@ -1013,7 +1013,7 @@ itemBases["Runeforged Vaal Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 47, Ward = 21, }, + armour = { EnergyShield = 47, RunicWard = 21, }, req = { level = 75, int = 94, }, } itemBases["Runeforged Sirenscale Gloves"] = { @@ -1023,7 +1023,7 @@ itemBases["Runeforged Sirenscale Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, int_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 13, Ward = 128, }, + armour = { EnergyShield = 13, RunicWard = 128, }, req = { level = 80, int = 101, }, } itemBases["Runemastered Torn Gloves"] = { @@ -1034,7 +1034,7 @@ itemBases["Runemastered Torn Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, gloves = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 18, Ward = 36, }, + armour = { EnergyShield = 18, RunicWard = 36, }, req = { level = 38, int = 48, }, } itemBases["Runemastered Sombre Gloves"] = { @@ -1045,7 +1045,7 @@ itemBases["Runemastered Sombre Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, gloves = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 24, Ward = 18, }, + armour = { EnergyShield = 24, RunicWard = 18, }, req = { level = 39, int = 49, }, } itemBases["Runemastered Stitched Gloves"] = { @@ -1056,7 +1056,7 @@ itemBases["Runemastered Stitched Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 30, Ward = 23, }, + armour = { EnergyShield = 30, RunicWard = 23, }, req = { level = 38, int = 48, }, } itemBases["Runemastered Jewelled Gloves"] = { @@ -1067,7 +1067,7 @@ itemBases["Runemastered Jewelled Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 21, Ward = 27, }, + armour = { EnergyShield = 21, RunicWard = 27, }, req = { level = 38, int = 48, }, } itemBases["Runemastered Intricate Gloves"] = { @@ -1078,7 +1078,7 @@ itemBases["Runemastered Intricate Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { EnergyShield = 47, Ward = 24, }, + armour = { EnergyShield = 47, RunicWard = 24, }, req = { level = 55, int = 68, }, } itemBases["Runemastered Pauascale Gloves"] = { @@ -1089,7 +1089,7 @@ itemBases["Runemastered Pauascale Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, int_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 30, Ward = 31, }, + armour = { EnergyShield = 30, RunicWard = 31, }, req = { level = 55, int = 68, }, } itemBases["Runemastered Embroidered Gloves"] = { @@ -1100,7 +1100,7 @@ itemBases["Runemastered Embroidered Gloves"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 26, Ward = 35, }, + armour = { EnergyShield = 26, RunicWard = 35, }, req = { level = 52, int = 64, }, } @@ -1241,7 +1241,7 @@ itemBases["Runeforged Ringmail Gauntlets"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, gloves = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 14, Evasion = 11, Ward = 12, }, + armour = { Armour = 14, Evasion = 11, RunicWard = 12, }, req = { level = 6, str = 6, dex = 6, }, } itemBases["Runeforged Layered Gauntlets"] = { @@ -1251,7 +1251,7 @@ itemBases["Runeforged Layered Gauntlets"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, maraketh_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 27, Evasion = 23, Ward = 17, }, + armour = { Armour = 27, Evasion = 23, RunicWard = 17, }, req = { level = 16, str = 13, dex = 13, }, } itemBases["Runeforged Doubled Gauntlets"] = { @@ -1261,7 +1261,7 @@ itemBases["Runeforged Doubled Gauntlets"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_dex_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 49, Evasion = 43, Ward = 24, }, + armour = { Armour = 49, Evasion = 43, RunicWard = 24, }, req = { level = 33, str = 24, dex = 24, }, } itemBases["Runeforged Plate Gauntlets"] = { @@ -1271,7 +1271,7 @@ itemBases["Runeforged Plate Gauntlets"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, karui_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 64, Evasion = 58, Ward = 27, }, + armour = { Armour = 64, Evasion = 58, RunicWard = 27, }, req = { level = 45, str = 32, dex = 32, }, } itemBases["Runeforged Burnished Gauntlets"] = { @@ -1281,7 +1281,7 @@ itemBases["Runeforged Burnished Gauntlets"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Ward = 117, }, + armour = { RunicWard = 117, }, req = { level = 52, str = 36, dex = 36, }, } itemBases["Runeforged Ornate Gauntlets"] = { @@ -1291,7 +1291,7 @@ itemBases["Runeforged Ornate Gauntlets"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Ward = 141, }, + armour = { RunicWard = 141, }, req = { level = 65, str = 44, dex = 44, }, } itemBases["Runeforged Zealot Gauntlets"] = { @@ -1301,7 +1301,7 @@ itemBases["Runeforged Zealot Gauntlets"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 78, Evasion = 71, Ward = 26, }, + armour = { Armour = 78, Evasion = 71, RunicWard = 26, }, req = { level = 59, str = 41, dex = 41, }, } itemBases["Runeforged Steelmail Gauntlets"] = { @@ -1311,7 +1311,7 @@ itemBases["Runeforged Steelmail Gauntlets"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 80, Evasion = 73, Ward = 28, }, + armour = { Armour = 80, Evasion = 73, RunicWard = 28, }, req = { level = 65, str = 44, dex = 44, }, } itemBases["Runeforged Commander Gauntlets"] = { @@ -1321,7 +1321,7 @@ itemBases["Runeforged Commander Gauntlets"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 58, Evasion = 53, Ward = 63, }, + armour = { Armour = 58, Evasion = 53, RunicWard = 63, }, req = { level = 70, str = 48, dex = 48, }, } itemBases["Runeforged Cultist Gauntlets"] = { @@ -1331,7 +1331,7 @@ itemBases["Runeforged Cultist Gauntlets"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 85, Evasion = 77, Ward = 35, }, + armour = { Armour = 85, Evasion = 77, RunicWard = 35, }, req = { level = 75, str = 52, dex = 52, }, } itemBases["Runeforged Blacksteel Gauntlets"] = { @@ -1341,7 +1341,7 @@ itemBases["Runeforged Blacksteel Gauntlets"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, karui_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 18, Evasion = 16, Ward = 141, }, + armour = { Armour = 18, Evasion = 16, RunicWard = 141, }, req = { level = 80, str = 55, dex = 55, }, } itemBases["Runemastered Ringmail Gauntlets"] = { @@ -1352,7 +1352,7 @@ itemBases["Runemastered Ringmail Gauntlets"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, gloves = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 44, Evasion = 39, Ward = 18, }, + armour = { Armour = 44, Evasion = 39, RunicWard = 18, }, req = { level = 38, str = 27, dex = 27, }, } itemBases["Runemastered Layered Gauntlets"] = { @@ -1363,7 +1363,7 @@ itemBases["Runemastered Layered Gauntlets"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, maraketh_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 52, Evasion = 47, Ward = 14, }, + armour = { Armour = 52, Evasion = 47, RunicWard = 14, }, req = { level = 38, str = 27, dex = 27, }, } itemBases["Runemastered Doubled Gauntlets"] = { @@ -1374,7 +1374,7 @@ itemBases["Runemastered Doubled Gauntlets"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_dex_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 61, Evasion = 56, Ward = 24, }, + armour = { Armour = 61, Evasion = 56, RunicWard = 24, }, req = { level = 55, str = 38, dex = 38, }, } itemBases["Runemastered Plate Gauntlets"] = { @@ -1385,7 +1385,7 @@ itemBases["Runemastered Plate Gauntlets"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, karui_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 69, Evasion = 63, Ward = 12, }, + armour = { Armour = 69, Evasion = 63, RunicWard = 12, }, req = { level = 55, str = 38, dex = 38, }, } itemBases["Runemastered Burnished Gauntlets"] = { @@ -1396,7 +1396,7 @@ itemBases["Runemastered Burnished Gauntlets"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 36, Evasion = 33, Ward = 58, }, + armour = { Armour = 36, Evasion = 33, RunicWard = 58, }, req = { level = 52, str = 36, dex = 36, }, } itemBases["Ancient Gauntlets"] = { @@ -1548,7 +1548,7 @@ itemBases["Runeforged Rope Cuffs"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, gloves = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 13, EnergyShield = 6, Ward = 11, }, + armour = { Armour = 13, EnergyShield = 6, RunicWard = 11, }, req = { level = 5, str = 6, int = 6, }, } itemBases["Runeforged Aged Cuffs"] = { @@ -1558,7 +1558,7 @@ itemBases["Runeforged Aged Cuffs"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, maraketh_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 27, EnergyShield = 10, Ward = 17, }, + armour = { Armour = 27, EnergyShield = 10, RunicWard = 17, }, req = { level = 16, str = 13, int = 13, }, } itemBases["Runeforged Goldcast Cuffs"] = { @@ -1568,7 +1568,7 @@ itemBases["Runeforged Goldcast Cuffs"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_int_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 49, EnergyShield = 15, Ward = 24, }, + armour = { Armour = 49, EnergyShield = 15, RunicWard = 24, }, req = { level = 33, str = 24, int = 24, }, } itemBases["Runeforged Kalguuran Cuffs"] = { @@ -1578,7 +1578,7 @@ itemBases["Runeforged Kalguuran Cuffs"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, karui_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 64, EnergyShield = 19, Ward = 27, }, + armour = { Armour = 64, EnergyShield = 19, RunicWard = 27, }, req = { level = 45, str = 32, int = 32, }, } itemBases["Runeforged Righteous Cuffs"] = { @@ -1588,7 +1588,7 @@ itemBases["Runeforged Righteous Cuffs"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Ward = 117, }, + armour = { RunicWard = 117, }, req = { level = 52, str = 36, int = 36, }, } itemBases["Runeforged Signet Cuffs"] = { @@ -1598,7 +1598,7 @@ itemBases["Runeforged Signet Cuffs"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Ward = 141, }, + armour = { RunicWard = 141, }, req = { level = 65, str = 44, int = 44, }, } itemBases["Runeforged Ornate Cuffs"] = { @@ -1608,7 +1608,7 @@ itemBases["Runeforged Ornate Cuffs"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 65, EnergyShield = 18, Ward = 45, }, + armour = { Armour = 65, EnergyShield = 18, RunicWard = 45, }, req = { level = 59, str = 41, int = 41, }, } itemBases["Runeforged Bound Cuffs"] = { @@ -1618,7 +1618,7 @@ itemBases["Runeforged Bound Cuffs"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 80, EnergyShield = 22, Ward = 28, }, + armour = { Armour = 80, EnergyShield = 22, RunicWard = 28, }, req = { level = 65, str = 44, int = 44, }, } itemBases["Runeforged Ancient Cuffs"] = { @@ -1628,7 +1628,7 @@ itemBases["Runeforged Ancient Cuffs"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 58, EnergyShield = 16, Ward = 63, }, + armour = { Armour = 58, EnergyShield = 16, RunicWard = 63, }, req = { level = 70, str = 48, int = 48, }, } itemBases["Runeforged Gleaming Cuffs"] = { @@ -1638,7 +1638,7 @@ itemBases["Runeforged Gleaming Cuffs"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 89, EnergyShield = 25, Ward = 28, }, + armour = { Armour = 89, EnergyShield = 25, RunicWard = 28, }, req = { level = 75, str = 52, int = 52, }, } itemBases["Runeforged Adherent Cuffs"] = { @@ -1648,7 +1648,7 @@ itemBases["Runeforged Adherent Cuffs"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, karui_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 22, EnergyShield = 6, Ward = 134, }, + armour = { Armour = 22, EnergyShield = 6, RunicWard = 134, }, req = { level = 80, str = 55, int = 55, }, } itemBases["Runemastered Rope Cuffs"] = { @@ -1659,7 +1659,7 @@ itemBases["Runemastered Rope Cuffs"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, gloves = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 33, EnergyShield = 10, Ward = 36, }, + armour = { Armour = 33, EnergyShield = 10, RunicWard = 36, }, req = { level = 38, str = 27, int = 27, }, } itemBases["Runemastered Aged Cuffs"] = { @@ -1670,7 +1670,7 @@ itemBases["Runemastered Aged Cuffs"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, maraketh_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 44, EnergyShield = 13, Ward = 18, }, + armour = { Armour = 44, EnergyShield = 13, RunicWard = 18, }, req = { level = 38, str = 27, int = 27, }, } itemBases["Runemastered Goldcast Cuffs"] = { @@ -1681,7 +1681,7 @@ itemBases["Runemastered Goldcast Cuffs"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_int_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 77, EnergyShield = 22, Ward = 37, }, + armour = { Armour = 77, EnergyShield = 22, RunicWard = 37, }, req = { level = 55, str = 38, int = 38, }, } itemBases["Runemastered Verisium Cuffs"] = { @@ -1692,7 +1692,7 @@ itemBases["Runemastered Verisium Cuffs"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, karui_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 73, EnergyShield = 21, Ward = 12, }, + armour = { Armour = 73, EnergyShield = 21, RunicWard = 12, }, req = { level = 55, str = 38, int = 38, }, } @@ -1833,7 +1833,7 @@ itemBases["Runeforged Gauze Wraps"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, ezomyte_basetype = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 9, EnergyShield = 6, Ward = 11, }, + armour = { Evasion = 9, EnergyShield = 6, RunicWard = 11, }, req = { dex = 6, int = 6, }, } itemBases["Runeforged Linen Wraps"] = { @@ -1843,7 +1843,7 @@ itemBases["Runeforged Linen Wraps"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, gloves = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 23, EnergyShield = 10, Ward = 17, }, + armour = { Evasion = 23, EnergyShield = 10, RunicWard = 17, }, req = { level = 16, dex = 13, int = 13, }, } itemBases["Runeforged Spiral Wraps"] = { @@ -1853,7 +1853,7 @@ itemBases["Runeforged Spiral Wraps"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, gloves = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 43, EnergyShield = 15, Ward = 24, }, + armour = { Evasion = 43, EnergyShield = 15, RunicWard = 24, }, req = { level = 33, dex = 24, int = 24, }, } itemBases["Runeforged Buckled Wraps"] = { @@ -1863,7 +1863,7 @@ itemBases["Runeforged Buckled Wraps"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, gloves = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 58, EnergyShield = 19, Ward = 27, }, + armour = { Evasion = 58, EnergyShield = 19, RunicWard = 27, }, req = { level = 45, dex = 32, int = 32, }, } itemBases["Runeforged Furtive Wraps"] = { @@ -1873,7 +1873,7 @@ itemBases["Runeforged Furtive Wraps"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 117, }, + armour = { RunicWard = 117, }, req = { level = 52, dex = 36, int = 36, }, } itemBases["Runeforged Utility Wraps"] = { @@ -1883,7 +1883,7 @@ itemBases["Runeforged Utility Wraps"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 141, }, + armour = { RunicWard = 141, }, req = { level = 65, dex = 44, int = 44, }, } itemBases["Runeforged Adorned Wraps"] = { @@ -1893,7 +1893,7 @@ itemBases["Runeforged Adorned Wraps"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 63, EnergyShield = 20, Ward = 39, }, + armour = { Evasion = 63, EnergyShield = 20, RunicWard = 39, }, req = { level = 59, dex = 41, int = 41, }, } itemBases["Runeforged War Wraps"] = { @@ -1903,7 +1903,7 @@ itemBases["Runeforged War Wraps"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 73, EnergyShield = 22, Ward = 28, }, + armour = { Evasion = 73, EnergyShield = 22, RunicWard = 28, }, req = { level = 65, dex = 44, int = 44, }, } itemBases["Runeforged Elegant Wraps"] = { @@ -1913,7 +1913,7 @@ itemBases["Runeforged Elegant Wraps"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 53, EnergyShield = 16, Ward = 63, }, + armour = { Evasion = 53, EnergyShield = 16, RunicWard = 63, }, req = { level = 70, dex = 48, int = 48, }, } itemBases["Runeforged Vaal Wraps"] = { @@ -1923,7 +1923,7 @@ itemBases["Runeforged Vaal Wraps"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 81, EnergyShield = 25, Ward = 28, }, + armour = { Evasion = 81, EnergyShield = 25, RunicWard = 28, }, req = { level = 75, dex = 52, int = 52, }, } itemBases["Runeforged Secured Wraps"] = { @@ -1933,7 +1933,7 @@ itemBases["Runeforged Secured Wraps"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, gloves = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 18, EnergyShield = 5, Ward = 138, }, + armour = { Evasion = 18, EnergyShield = 5, RunicWard = 138, }, req = { level = 80, dex = 55, int = 55, }, } itemBases["Runemastered Gauze Wraps"] = { @@ -1944,7 +1944,7 @@ itemBases["Runemastered Gauze Wraps"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, ezomyte_basetype = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 90, }, + armour = { RunicWard = 90, }, req = { level = 38, dex = 27, int = 27, }, } itemBases["Runemastered Linen Wraps"] = { @@ -1955,7 +1955,7 @@ itemBases["Runemastered Linen Wraps"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, gloves = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 37, EnergyShield = 12, Ward = 23, }, + armour = { Evasion = 37, EnergyShield = 12, RunicWard = 23, }, req = { level = 38, dex = 27, int = 27, }, } itemBases["Runemastered Spiral Wraps"] = { @@ -1966,7 +1966,7 @@ itemBases["Runemastered Spiral Wraps"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, gloves = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 38, EnergyShield = 12, Ward = 67, }, + armour = { Evasion = 38, EnergyShield = 12, RunicWard = 67, }, req = { level = 55, dex = 38, int = 38, }, } itemBases["Runemastered Furtive Wraps"] = { @@ -1977,7 +1977,7 @@ itemBases["Runemastered Furtive Wraps"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 56, EnergyShield = 17, Ward = 24, }, + armour = { Evasion = 56, EnergyShield = 17, RunicWard = 24, }, req = { level = 55, dex = 38, int = 38, }, } itemBases["Runemastered Utility Wraps"] = { @@ -1988,7 +1988,7 @@ itemBases["Runemastered Utility Wraps"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, gloves = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 49, EnergyShield = 15, Ward = 56, }, + armour = { Evasion = 49, EnergyShield = 15, RunicWard = 56, }, req = { level = 65, dex = 44, int = 44, }, } @@ -2009,7 +2009,7 @@ itemBases["Runeforged Grand Manchettes"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_dex_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 15, Evasion = 14, EnergyShield = 4, Ward = 123, }, + armour = { Armour = 15, Evasion = 14, EnergyShield = 4, RunicWard = 123, }, req = { level = 65, str = 32, dex = 32, int = 32, }, } itemBases["Runemastered Grand Manchettes"] = { @@ -2020,7 +2020,7 @@ itemBases["Runemastered Grand Manchettes"] = { socketLimit = 3, tags = { armour = true, default = true, gloves = true, runeforged = true, str_dex_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 30, Evasion = 27, EnergyShield = 8, Ward = 70, }, + armour = { Armour = 30, Evasion = 27, EnergyShield = 8, RunicWard = 70, }, req = { level = 65, str = 32, dex = 32, int = 32, }, } diff --git a/src/Data/Bases/helmet.lua b/src/Data/Bases/helmet.lua index 288100b06..d72225235 100644 --- a/src/Data/Bases/helmet.lua +++ b/src/Data/Bases/helmet.lua @@ -210,7 +210,7 @@ itemBases["Runeforged Rusted Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, helmet = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 29, Ward = 19, }, + armour = { Armour = 29, RunicWard = 19, }, req = { }, } itemBases["Runeforged Soldier Greathelm"] = { @@ -220,7 +220,7 @@ itemBases["Runeforged Soldier Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, helmet = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 80, Ward = 29, }, + armour = { Armour = 80, RunicWard = 29, }, req = { level = 12, str = 19, }, } itemBases["Runeforged Wrapped Greathelm"] = { @@ -230,7 +230,7 @@ itemBases["Runeforged Wrapped Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, maraketh_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 99, Ward = 35, }, + armour = { Armour = 99, RunicWard = 35, }, req = { level = 16, str = 25, }, } itemBases["Runeforged Spired Greathelm"] = { @@ -240,7 +240,7 @@ itemBases["Runeforged Spired Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, maraketh_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 149, Ward = 49, }, + armour = { Armour = 149, RunicWard = 49, }, req = { level = 27, str = 40, }, } itemBases["Runeforged Elite Greathelm"] = { @@ -250,7 +250,7 @@ itemBases["Runeforged Elite Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 177, Ward = 49, }, + armour = { Armour = 177, RunicWard = 49, }, req = { level = 33, str = 48, }, } itemBases["Runeforged Warrior Greathelm"] = { @@ -260,7 +260,7 @@ itemBases["Runeforged Warrior Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 191, Ward = 50, }, + armour = { Armour = 191, RunicWard = 50, }, req = { level = 36, str = 52, }, } itemBases["Runeforged Commander Greathelm"] = { @@ -270,7 +270,7 @@ itemBases["Runeforged Commander Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, karui_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 233, Ward = 56, }, + armour = { Armour = 233, RunicWard = 56, }, req = { level = 45, str = 64, }, } itemBases["Runeforged Fierce Greathelm"] = { @@ -280,7 +280,7 @@ itemBases["Runeforged Fierce Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, karui_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 260, Ward = 57, }, + armour = { Armour = 260, RunicWard = 57, }, req = { level = 51, str = 73, }, } itemBases["Runeforged Sentinel Greathelm"] = { @@ -290,7 +290,7 @@ itemBases["Runeforged Sentinel Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Ward = 233, }, + armour = { RunicWard = 233, }, req = { level = 52, str = 74, }, } itemBases["Runeforged Goliath Greathelm"] = { @@ -300,7 +300,7 @@ itemBases["Runeforged Goliath Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Ward = 252, }, + armour = { RunicWard = 252, }, req = { level = 57, str = 81, }, } itemBases["Runeforged Guardian Greathelm"] = { @@ -310,7 +310,7 @@ itemBases["Runeforged Guardian Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Ward = 282, }, + armour = { RunicWard = 282, }, req = { level = 65, str = 91, }, } itemBases["Runeforged Elegant Greathelm"] = { @@ -320,7 +320,7 @@ itemBases["Runeforged Elegant Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 247, Ward = 60, }, + armour = { Armour = 247, RunicWard = 60, }, req = { level = 54, str = 77, }, } itemBases["Runeforged Noble Greathelm"] = { @@ -330,7 +330,7 @@ itemBases["Runeforged Noble Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 223, Ward = 104, }, + armour = { Armour = 223, RunicWard = 104, }, req = { level = 59, str = 83, }, } itemBases["Runeforged Warmonger Greathelm"] = { @@ -340,7 +340,7 @@ itemBases["Runeforged Warmonger Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 292, Ward = 56, }, + armour = { Armour = 292, RunicWard = 56, }, req = { level = 65, str = 91, }, } itemBases["Runeforged Masked Greathelm"] = { @@ -350,7 +350,7 @@ itemBases["Runeforged Masked Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 260, Ward = 85, }, + armour = { Armour = 260, RunicWard = 85, }, req = { level = 70, str = 99, }, } itemBases["Runeforged Paragon Greathelm"] = { @@ -360,7 +360,7 @@ itemBases["Runeforged Paragon Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 341, Ward = 42, }, + armour = { Armour = 341, RunicWard = 42, }, req = { level = 75, str = 107, }, } itemBases["Runeforged Imperial Greathelm"] = { @@ -370,7 +370,7 @@ itemBases["Runeforged Imperial Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, karui_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 114, Ward = 240, }, + armour = { Armour = 114, RunicWard = 240, }, req = { level = 80, str = 115, }, } itemBases["Runemastered Rusted Greathelm"] = { @@ -381,7 +381,7 @@ itemBases["Runemastered Rusted Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, helmet = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 360, Ward = 36, }, + armour = { Armour = 360, RunicWard = 36, }, req = { level = 38, str = 54, }, } itemBases["Runemastered Soldier Greathelm"] = { @@ -392,7 +392,7 @@ itemBases["Runemastered Soldier Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, helmet = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 140, Ward = 54, }, + armour = { Armour = 140, RunicWard = 54, }, req = { level = 38, str = 54, }, } itemBases["Runemastered Wrapped Greathelm"] = { @@ -403,7 +403,7 @@ itemBases["Runemastered Wrapped Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, maraketh_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 170, Ward = 27, }, + armour = { Armour = 170, RunicWard = 27, }, req = { level = 38, str = 54, }, } itemBases["Runemastered Spired Greathelm"] = { @@ -414,7 +414,7 @@ itemBases["Runemastered Spired Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, maraketh_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 115, Ward = 85, }, + armour = { Armour = 115, RunicWard = 85, }, req = { level = 40, str = 58, }, } itemBases["Runemastered Elite Greathelm"] = { @@ -425,7 +425,7 @@ itemBases["Runemastered Elite Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 209, Ward = 61, }, + armour = { Armour = 209, RunicWard = 61, }, req = { level = 55, str = 78, }, } itemBases["Runemastered Warrior Greathelm"] = { @@ -436,7 +436,7 @@ itemBases["Runemastered Warrior Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 111, Ward = 147, }, + armour = { Armour = 111, RunicWard = 147, }, req = { level = 55, str = 78, }, } itemBases["Runemastered Fierce Greathelm"] = { @@ -447,7 +447,7 @@ itemBases["Runemastered Fierce Greathelm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, karui_basetype = true, runeforged = true, str_armour = true, }, implicitModTypes = { }, - armour = { Armour = 334, Ward = 24, }, + armour = { Armour = 334, RunicWard = 24, }, req = { level = 55, str = 78, }, } @@ -658,7 +658,7 @@ itemBases["Runeforged Shabby Hood"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, ezomyte_basetype = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 19, Ward = 19, }, + armour = { Evasion = 19, RunicWard = 19, }, req = { }, } itemBases["Runeforged Felt Cap"] = { @@ -668,7 +668,7 @@ itemBases["Runeforged Felt Cap"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, ezomyte_basetype = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 58, Ward = 27, }, + armour = { Evasion = 58, RunicWard = 27, }, req = { level = 10, dex = 17, }, } itemBases["Runeforged Lace Hood"] = { @@ -678,7 +678,7 @@ itemBases["Runeforged Lace Hood"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 84, Ward = 35, }, + armour = { Evasion = 84, RunicWard = 35, }, req = { level = 16, dex = 25, }, } itemBases["Runeforged Swathed Cap"] = { @@ -688,7 +688,7 @@ itemBases["Runeforged Swathed Cap"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 127, Ward = 48, }, + armour = { Evasion = 127, RunicWard = 48, }, req = { level = 26, dex = 38, }, } itemBases["Runeforged Hunter Hood"] = { @@ -698,7 +698,7 @@ itemBases["Runeforged Hunter Hood"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 158, Ward = 49, }, + armour = { Evasion = 158, RunicWard = 49, }, req = { level = 33, dex = 48, }, } itemBases["Runeforged Viper Cap"] = { @@ -708,7 +708,7 @@ itemBases["Runeforged Viper Cap"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 179, Ward = 52, }, + armour = { Evasion = 179, RunicWard = 52, }, req = { level = 38, dex = 54, }, } itemBases["Runeforged Corsair Cap"] = { @@ -718,7 +718,7 @@ itemBases["Runeforged Corsair Cap"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 210, Ward = 56, }, + armour = { Evasion = 210, RunicWard = 56, }, req = { level = 45, dex = 64, }, } itemBases["Runeforged Leatherbound Hood"] = { @@ -728,7 +728,7 @@ itemBases["Runeforged Leatherbound Hood"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 231, Ward = 56, }, + armour = { Evasion = 231, RunicWard = 56, }, req = { level = 50, dex = 71, }, } itemBases["Runeforged Velvet Cap"] = { @@ -738,7 +738,7 @@ itemBases["Runeforged Velvet Cap"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 233, }, + armour = { RunicWard = 233, }, req = { level = 52, dex = 74, }, } itemBases["Runeforged Covert Hood"] = { @@ -748,7 +748,7 @@ itemBases["Runeforged Covert Hood"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 248, }, + armour = { RunicWard = 248, }, req = { level = 56, dex = 79, }, } itemBases["Runeforged Armoured Cap"] = { @@ -758,7 +758,7 @@ itemBases["Runeforged Armoured Cap"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 282, }, + armour = { RunicWard = 282, }, req = { level = 65, dex = 91, }, } itemBases["Runeforged Wrapped Cap"] = { @@ -768,7 +768,7 @@ itemBases["Runeforged Wrapped Cap"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 211, Ward = 72, }, + armour = { Evasion = 211, RunicWard = 72, }, req = { level = 54, dex = 77, }, } itemBases["Runeforged Deerstalker Hood"] = { @@ -778,7 +778,7 @@ itemBases["Runeforged Deerstalker Hood"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 216, Ward = 91, }, + armour = { Evasion = 216, RunicWard = 91, }, req = { level = 59, dex = 83, }, } itemBases["Runeforged Woven Cap"] = { @@ -788,7 +788,7 @@ itemBases["Runeforged Woven Cap"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 281, Ward = 42, }, + armour = { Evasion = 281, RunicWard = 42, }, req = { level = 65, dex = 91, }, } itemBases["Runeforged Desert Cap"] = { @@ -798,7 +798,7 @@ itemBases["Runeforged Desert Cap"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 222, Ward = 99, }, + armour = { Evasion = 222, RunicWard = 99, }, req = { level = 70, dex = 99, }, } itemBases["Runeforged Trapper Hood"] = { @@ -808,7 +808,7 @@ itemBases["Runeforged Trapper Hood"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 311, Ward = 42, }, + armour = { Evasion = 311, RunicWard = 42, }, req = { level = 75, dex = 107, }, } itemBases["Runeforged Freebooter Cap"] = { @@ -818,7 +818,7 @@ itemBases["Runeforged Freebooter Cap"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 104, Ward = 240, }, + armour = { Evasion = 104, RunicWard = 240, }, req = { level = 80, dex = 115, }, } itemBases["Runeforged Lace Hood"] = { @@ -830,7 +830,7 @@ itemBases["Runeforged Lace Hood"] = { tags = { armour = true, default = true, dex_armour = true, helmet = true, maraketh_basetype = true, runeforged = true, }, implicit = "(30-50)% increased Ignite Magnitude", implicitModTypes = { { "elemental_damage", "damage", "elemental", "fire", "ailment" }, }, - armour = { Evasion = 90, Ward = 72, }, + armour = { Evasion = 90, RunicWard = 72, }, req = { level = 38, dex = 54, }, } itemBases["Runemastered Shabby Hood"] = { @@ -841,7 +841,7 @@ itemBases["Runemastered Shabby Hood"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, ezomyte_basetype = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 201, }, + armour = { RunicWard = 201, }, req = { level = 38, dex = 54, }, } itemBases["Runemastered Felt Cap"] = { @@ -852,7 +852,7 @@ itemBases["Runemastered Felt Cap"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, ezomyte_basetype = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 134, Ward = 54, }, + armour = { Evasion = 134, RunicWard = 54, }, req = { level = 38, dex = 54, }, } itemBases["Runemastered Hunter Hood"] = { @@ -863,7 +863,7 @@ itemBases["Runemastered Hunter Hood"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 73, Ward = 75, }, + armour = { Evasion = 73, RunicWard = 75, }, req = { level = 40, dex = 58, }, } itemBases["Runemastered Viper Cap"] = { @@ -874,7 +874,7 @@ itemBases["Runemastered Viper Cap"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 139, Ward = 110, }, + armour = { Evasion = 139, RunicWard = 110, }, req = { level = 55, dex = 78, }, } itemBases["Runemastered Corsair Cap"] = { @@ -885,7 +885,7 @@ itemBases["Runemastered Corsair Cap"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 202, Ward = 37, }, + armour = { Evasion = 202, RunicWard = 37, }, req = { level = 55, dex = 78, }, } itemBases["Runemastered Leatherbound Hood"] = { @@ -896,7 +896,7 @@ itemBases["Runemastered Leatherbound Hood"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 266, Ward = 28, }, + armour = { Evasion = 266, RunicWard = 28, }, req = { level = 65, dex = 91, }, } itemBases["Runemastered Velvet Cap"] = { @@ -907,7 +907,7 @@ itemBases["Runemastered Velvet Cap"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 222, Ward = 70, }, + armour = { Evasion = 222, RunicWard = 70, }, req = { level = 65, dex = 91, }, } itemBases["Runemastered Covert Hood"] = { @@ -918,7 +918,7 @@ itemBases["Runemastered Covert Hood"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 129, Ward = 124, }, + armour = { Evasion = 129, RunicWard = 124, }, req = { level = 56, dex = 79, }, } itemBases["Runemastered Armoured Cap"] = { @@ -929,7 +929,7 @@ itemBases["Runemastered Armoured Cap"] = { socketLimit = 3, tags = { armour = true, default = true, dex_armour = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 178, Ward = 113, }, + armour = { Evasion = 178, RunicWard = 113, }, req = { level = 65, dex = 91, }, } @@ -1140,7 +1140,7 @@ itemBases["Runeforged Twig Circlet"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, helmet = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 19, Ward = 19, }, + armour = { EnergyShield = 19, RunicWard = 19, }, req = { }, } itemBases["Runeforged Wicker Tiara"] = { @@ -1150,7 +1150,7 @@ itemBases["Runeforged Wicker Tiara"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, helmet = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 29, Ward = 27, }, + armour = { EnergyShield = 29, RunicWard = 27, }, req = { level = 10, int = 17, }, } itemBases["Runeforged Beaded Circlet"] = { @@ -1160,7 +1160,7 @@ itemBases["Runeforged Beaded Circlet"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 35, Ward = 35, }, + armour = { EnergyShield = 35, RunicWard = 35, }, req = { level = 16, int = 25, }, } itemBases["Runeforged Chain Tiara"] = { @@ -1170,7 +1170,7 @@ itemBases["Runeforged Chain Tiara"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 47, Ward = 48, }, + armour = { EnergyShield = 47, RunicWard = 48, }, req = { level = 26, int = 38, }, } itemBases["Runeforged Feathered Tiara"] = { @@ -1180,7 +1180,7 @@ itemBases["Runeforged Feathered Tiara"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { EnergyShield = 54, Ward = 49, }, + armour = { EnergyShield = 54, RunicWard = 49, }, req = { level = 33, int = 48, }, } itemBases["Runeforged Gold Circlet"] = { @@ -1190,7 +1190,7 @@ itemBases["Runeforged Gold Circlet"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { EnergyShield = 62, Ward = 55, }, + armour = { EnergyShield = 62, RunicWard = 55, }, req = { level = 40, int = 58, }, } itemBases["Runeforged Vermeil Circlet"] = { @@ -1200,7 +1200,7 @@ itemBases["Runeforged Vermeil Circlet"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 68, Ward = 56, }, + armour = { EnergyShield = 68, RunicWard = 56, }, req = { level = 45, int = 64, }, } itemBases["Runeforged Jade Tiara"] = { @@ -1210,7 +1210,7 @@ itemBases["Runeforged Jade Tiara"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 73, Ward = 56, }, + armour = { EnergyShield = 73, RunicWard = 56, }, req = { level = 50, int = 71, }, } itemBases["Runeforged Noble Circlet"] = { @@ -1220,7 +1220,7 @@ itemBases["Runeforged Noble Circlet"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 233, }, + armour = { RunicWard = 233, }, req = { level = 52, int = 74, }, } itemBases["Runeforged Twilight Tiara"] = { @@ -1230,7 +1230,7 @@ itemBases["Runeforged Twilight Tiara"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 256, }, + armour = { RunicWard = 256, }, req = { level = 58, int = 82, }, } itemBases["Runeforged Magus Tiara"] = { @@ -1240,7 +1240,7 @@ itemBases["Runeforged Magus Tiara"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 282, }, + armour = { RunicWard = 282, }, req = { level = 65, int = 91, }, } itemBases["Runeforged Sandsworn Tiara"] = { @@ -1250,7 +1250,7 @@ itemBases["Runeforged Sandsworn Tiara"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 74, Ward = 48, }, + armour = { EnergyShield = 74, RunicWard = 48, }, req = { level = 54, int = 77, }, } itemBases["Runeforged Jungle Tiara"] = { @@ -1260,7 +1260,7 @@ itemBases["Runeforged Jungle Tiara"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 63, Ward = 104, }, + armour = { EnergyShield = 63, RunicWard = 104, }, req = { level = 59, int = 83, }, } itemBases["Runeforged Skycrown Tiara"] = { @@ -1270,7 +1270,7 @@ itemBases["Runeforged Skycrown Tiara"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 81, Ward = 56, }, + armour = { EnergyShield = 81, RunicWard = 56, }, req = { level = 65, int = 91, }, } itemBases["Runeforged Sorcerous Tiara"] = { @@ -1280,7 +1280,7 @@ itemBases["Runeforged Sorcerous Tiara"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 63, Ward = 113, }, + armour = { EnergyShield = 63, RunicWard = 113, }, req = { level = 70, int = 99, }, } itemBases["Runeforged Kamasan Tiara"] = { @@ -1290,7 +1290,7 @@ itemBases["Runeforged Kamasan Tiara"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 95, Ward = 42, }, + armour = { EnergyShield = 95, RunicWard = 42, }, req = { level = 75, int = 107, }, } itemBases["Runeforged Ancestral Tiara"] = { @@ -1300,7 +1300,7 @@ itemBases["Runeforged Ancestral Tiara"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 32, Ward = 240, }, + armour = { EnergyShield = 32, RunicWard = 240, }, req = { level = 80, int = 115, }, } itemBases["Runemastered Twig Circlet"] = { @@ -1311,7 +1311,7 @@ itemBases["Runemastered Twig Circlet"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, helmet = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 48, Ward = 36, }, + armour = { EnergyShield = 48, RunicWard = 36, }, req = { level = 38, int = 54, }, } itemBases["Runemastered Wicker Tiara"] = { @@ -1322,7 +1322,7 @@ itemBases["Runemastered Wicker Tiara"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, helmet = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 45, Ward = 45, }, + armour = { EnergyShield = 45, RunicWard = 45, }, req = { level = 38, int = 54, }, } itemBases["Runemastered Beaded Circlet"] = { @@ -1333,7 +1333,7 @@ itemBases["Runemastered Beaded Circlet"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 24, Ward = 72, }, + armour = { EnergyShield = 24, RunicWard = 72, }, req = { level = 38, int = 54, }, } itemBases["Runemastered Chain Tiara"] = { @@ -1355,7 +1355,7 @@ itemBases["Runemastered Feathered Tiara"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { EnergyShield = 32, Ward = 98, }, + armour = { EnergyShield = 32, RunicWard = 98, }, req = { level = 55, int = 78, }, } itemBases["Runemastered Gold Circlet"] = { @@ -1366,7 +1366,7 @@ itemBases["Runemastered Gold Circlet"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { EnergyShield = 16, Ward = 196, }, + armour = { EnergyShield = 16, RunicWard = 196, }, req = { level = 55, int = 78, }, } itemBases["Runemastered Vermeil Circlet"] = { @@ -1377,7 +1377,7 @@ itemBases["Runemastered Vermeil Circlet"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 67, Ward = 37, }, + armour = { EnergyShield = 67, RunicWard = 37, }, req = { level = 55, int = 78, }, } itemBases["Runemastered Jade Tiara"] = { @@ -1388,7 +1388,7 @@ itemBases["Runemastered Jade Tiara"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 45, Ward = 141, }, + armour = { EnergyShield = 45, RunicWard = 141, }, req = { level = 65, int = 91, }, } itemBases["Runemastered Twilight Tiara"] = { @@ -1399,7 +1399,7 @@ itemBases["Runemastered Twilight Tiara"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 72, Ward = 56, }, + armour = { EnergyShield = 72, RunicWard = 56, }, req = { level = 65, int = 91, }, } itemBases["Runemastered Magus Tiara"] = { @@ -1410,7 +1410,7 @@ itemBases["Runemastered Magus Tiara"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, int_armour = true, runeforged = true, }, implicitModTypes = { }, - armour = { EnergyShield = 68, Ward = 70, }, + armour = { EnergyShield = 68, RunicWard = 70, }, req = { level = 65, int = 91, }, } @@ -1591,7 +1591,7 @@ itemBases["Runeforged Brimmed Helm"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, helmet = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 26, Evasion = 20, Ward = 26, }, + armour = { Armour = 26, Evasion = 20, RunicWard = 26, }, req = { level = 5, str = 7, dex = 7, }, } itemBases["Runeforged Guarded Helm"] = { @@ -1601,7 +1601,7 @@ itemBases["Runeforged Guarded Helm"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, helmet = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 42, Evasion = 34, Ward = 32, }, + armour = { Armour = 42, Evasion = 34, RunicWard = 32, }, req = { level = 11, str = 11, dex = 11, }, } itemBases["Runeforged Visored Helm"] = { @@ -1611,7 +1611,7 @@ itemBases["Runeforged Visored Helm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, maraketh_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 54, Evasion = 46, Ward = 35, }, + armour = { Armour = 54, Evasion = 46, RunicWard = 35, }, req = { level = 16, str = 15, dex = 15, }, } itemBases["Runeforged Cowled Helm"] = { @@ -1621,7 +1621,7 @@ itemBases["Runeforged Cowled Helm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, maraketh_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 80, Evasion = 70, Ward = 41, }, + armour = { Armour = 80, Evasion = 70, RunicWard = 41, }, req = { level = 26, str = 22, dex = 22, }, } itemBases["Runeforged Shielded Helm"] = { @@ -1631,7 +1631,7 @@ itemBases["Runeforged Shielded Helm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_dex_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 97, Evasion = 87, Ward = 44, }, + armour = { Armour = 97, Evasion = 87, RunicWard = 44, }, req = { level = 33, str = 27, dex = 27, }, } itemBases["Runeforged Closed Helm"] = { @@ -1641,7 +1641,7 @@ itemBases["Runeforged Closed Helm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, karui_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 128, Evasion = 115, Ward = 52, }, + armour = { Armour = 128, Evasion = 115, RunicWard = 52, }, req = { level = 45, str = 36, dex = 36, }, } itemBases["Runeforged Decorated Helm"] = { @@ -1651,7 +1651,7 @@ itemBases["Runeforged Decorated Helm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Ward = 233, }, + armour = { RunicWard = 233, }, req = { level = 52, str = 41, dex = 41, }, } itemBases["Runeforged Gallant Helm"] = { @@ -1661,7 +1661,7 @@ itemBases["Runeforged Gallant Helm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Ward = 282, }, + armour = { RunicWard = 282, }, req = { level = 65, str = 50, dex = 50, }, } itemBases["Runeforged Cabalist Helm"] = { @@ -1671,7 +1671,7 @@ itemBases["Runeforged Cabalist Helm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 113, Evasion = 102, Ward = 96, }, + armour = { Armour = 113, Evasion = 102, RunicWard = 96, }, req = { level = 54, str = 42, dex = 42, }, } itemBases["Runeforged Gladiatorial Helm"] = { @@ -1681,7 +1681,7 @@ itemBases["Runeforged Gladiatorial Helm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 147, Evasion = 134, Ward = 65, }, + armour = { Armour = 147, Evasion = 134, RunicWard = 65, }, req = { level = 59, str = 46, dex = 46, }, } itemBases["Runeforged Warded Helm"] = { @@ -1691,7 +1691,7 @@ itemBases["Runeforged Warded Helm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 166, Evasion = 151, Ward = 48, }, + armour = { Armour = 166, Evasion = 151, RunicWard = 48, }, req = { level = 65, str = 50, dex = 50, }, } itemBases["Runeforged Cryptic Helm"] = { @@ -1701,7 +1701,7 @@ itemBases["Runeforged Cryptic Helm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 143, Evasion = 130, Ward = 85, }, + armour = { Armour = 143, Evasion = 130, RunicWard = 85, }, req = { level = 70, str = 54, dex = 54, }, } itemBases["Runeforged Champion Helm"] = { @@ -1711,7 +1711,7 @@ itemBases["Runeforged Champion Helm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 179, Evasion = 163, Ward = 56, }, + armour = { Armour = 179, Evasion = 163, RunicWard = 56, }, req = { level = 75, str = 59, dex = 59, }, } itemBases["Runeforged Gladiatorial Helm"] = { @@ -1721,7 +1721,7 @@ itemBases["Runeforged Gladiatorial Helm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, karui_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 54, Evasion = 49, Ward = 254, }, + armour = { Armour = 54, Evasion = 49, RunicWard = 254, }, req = { level = 80, str = 63, dex = 63, }, } itemBases["Runemastered Brimmed Helm"] = { @@ -1732,7 +1732,7 @@ itemBases["Runemastered Brimmed Helm"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, helmet = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 44, Evasion = 39, Ward = 109, }, + armour = { Armour = 44, Evasion = 39, RunicWard = 109, }, req = { level = 38, str = 31, dex = 31, }, } itemBases["Runemastered Guarded Helm"] = { @@ -1743,7 +1743,7 @@ itemBases["Runemastered Guarded Helm"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, helmet = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 275, Evasion = 247, Ward = 36, }, + armour = { Armour = 275, Evasion = 247, RunicWard = 36, }, req = { level = 38, str = 31, dex = 31, }, } itemBases["Runemastered Visored Helm"] = { @@ -1754,7 +1754,7 @@ itemBases["Runemastered Visored Helm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, maraketh_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 77, Evasion = 69, Ward = 54, }, + armour = { Armour = 77, Evasion = 69, RunicWard = 54, }, req = { level = 38, str = 31, dex = 31, }, } itemBases["Runemastered Cowled Helm"] = { @@ -1765,7 +1765,7 @@ itemBases["Runemastered Cowled Helm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, maraketh_basetype = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 104, Evasion = 93, Ward = 19, }, + armour = { Armour = 104, Evasion = 93, RunicWard = 19, }, req = { level = 40, str = 32, dex = 32, }, } itemBases["Runemastered Shielded Helm"] = { @@ -1776,7 +1776,7 @@ itemBases["Runemastered Shielded Helm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_dex_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 107, Evasion = 97, Ward = 122, }, + armour = { Armour = 107, Evasion = 97, RunicWard = 122, }, req = { level = 55, str = 43, dex = 43, }, } itemBases["Runemastered Decorated Helm"] = { @@ -1787,7 +1787,7 @@ itemBases["Runemastered Decorated Helm"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_dex_armour = true, }, implicitModTypes = { }, - armour = { Armour = 161, Evasion = 146, Ward = 70, }, + armour = { Armour = 161, Evasion = 146, RunicWard = 70, }, req = { level = 65, str = 50, dex = 50, }, } itemBases["Ancient Visor"] = { @@ -1990,7 +1990,7 @@ itemBases["Runeforged Iron Crown"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, helmet = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 26, EnergyShield = 13, Ward = 26, }, + armour = { Armour = 26, EnergyShield = 13, RunicWard = 26, }, req = { level = 5, str = 7, int = 7, }, } itemBases["Runeforged Horned Crown"] = { @@ -2000,7 +2000,7 @@ itemBases["Runeforged Horned Crown"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, helmet = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 39, EnergyShield = 16, Ward = 30, }, + armour = { Armour = 39, EnergyShield = 16, RunicWard = 30, }, req = { level = 10, str = 10, int = 10, }, } itemBases["Runeforged Cultist Crown"] = { @@ -2010,7 +2010,7 @@ itemBases["Runeforged Cultist Crown"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, maraketh_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 54, EnergyShield = 19, Ward = 35, }, + armour = { Armour = 54, EnergyShield = 19, RunicWard = 35, }, req = { level = 16, str = 15, int = 15, }, } itemBases["Runeforged Martyr Crown"] = { @@ -2020,7 +2020,7 @@ itemBases["Runeforged Martyr Crown"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, maraketh_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 85, EnergyShield = 27, Ward = 43, }, + armour = { Armour = 85, EnergyShield = 27, RunicWard = 43, }, req = { level = 28, str = 23, int = 23, }, } itemBases["Runeforged Heavy Crown"] = { @@ -2030,7 +2030,7 @@ itemBases["Runeforged Heavy Crown"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_int_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 97, EnergyShield = 30, Ward = 44, }, + armour = { Armour = 97, EnergyShield = 30, RunicWard = 44, }, req = { level = 33, str = 27, int = 27, }, } itemBases["Runeforged Spiritbone Crown"] = { @@ -2040,7 +2040,7 @@ itemBases["Runeforged Spiritbone Crown"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, karui_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 128, EnergyShield = 37, Ward = 52, }, + armour = { Armour = 128, EnergyShield = 37, RunicWard = 52, }, req = { level = 45, str = 36, int = 36, }, } itemBases["Runeforged Lavish Crown"] = { @@ -2050,7 +2050,7 @@ itemBases["Runeforged Lavish Crown"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Ward = 233, }, + armour = { RunicWard = 233, }, req = { level = 52, str = 41, int = 41, }, } itemBases["Runeforged Archon Crown"] = { @@ -2060,7 +2060,7 @@ itemBases["Runeforged Archon Crown"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Ward = 282, }, + armour = { RunicWard = 282, }, req = { level = 65, str = 50, int = 50, }, } itemBases["Runeforged Hallowed Crown"] = { @@ -2070,7 +2070,7 @@ itemBases["Runeforged Hallowed Crown"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 121, EnergyShield = 34, Ward = 84, }, + armour = { Armour = 121, EnergyShield = 34, RunicWard = 84, }, req = { level = 54, str = 42, int = 42, }, } itemBases["Runeforged Inquisitor Crown"] = { @@ -2080,7 +2080,7 @@ itemBases["Runeforged Inquisitor Crown"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 155, EnergyShield = 44, Ward = 52, }, + armour = { Armour = 155, EnergyShield = 44, RunicWard = 52, }, req = { level = 59, str = 46, int = 46, }, } itemBases["Runeforged Druidic Crown"] = { @@ -2090,7 +2090,7 @@ itemBases["Runeforged Druidic Crown"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 161, EnergyShield = 45, Ward = 56, }, + armour = { Armour = 161, EnergyShield = 45, RunicWard = 56, }, req = { level = 65, str = 50, int = 50, }, } itemBases["Runeforged Saintly Crown"] = { @@ -2100,7 +2100,7 @@ itemBases["Runeforged Saintly Crown"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 125, EnergyShield = 35, Ward = 113, }, + armour = { Armour = 125, EnergyShield = 35, RunicWard = 113, }, req = { level = 70, str = 54, int = 54, }, } itemBases["Runeforged Divine Crown"] = { @@ -2110,7 +2110,7 @@ itemBases["Runeforged Divine Crown"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 179, EnergyShield = 50, Ward = 56, }, + armour = { Armour = 179, EnergyShield = 50, RunicWard = 56, }, req = { level = 75, str = 59, int = 59, }, } itemBases["Runeforged Cryptic Crown"] = { @@ -2120,7 +2120,7 @@ itemBases["Runeforged Cryptic Crown"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, karui_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 54, EnergyShield = 15, Ward = 254, }, + armour = { Armour = 54, EnergyShield = 15, RunicWard = 254, }, req = { level = 80, str = 63, int = 63, }, } itemBases["Runemastered Iron Crown"] = { @@ -2131,7 +2131,7 @@ itemBases["Runemastered Iron Crown"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, helmet = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 72, EnergyShield = 21, Ward = 72, }, + armour = { Armour = 72, EnergyShield = 21, RunicWard = 72, }, req = { level = 38, str = 31, int = 31, }, } itemBases["Runemastered Horned Crown"] = { @@ -2142,7 +2142,7 @@ itemBases["Runemastered Horned Crown"] = { socketLimit = 3, tags = { armour = true, default = true, ezomyte_basetype = true, helmet = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 83, EnergyShield = 25, Ward = 54, }, + armour = { Armour = 83, EnergyShield = 25, RunicWard = 54, }, req = { level = 38, str = 31, int = 31, }, } itemBases["Runemastered Cultist Crown"] = { @@ -2153,7 +2153,7 @@ itemBases["Runemastered Cultist Crown"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, maraketh_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 165, EnergyShield = 50, Ward = 49, }, + armour = { Armour = 165, EnergyShield = 50, RunicWard = 49, }, req = { level = 38, str = 31, int = 31, }, } itemBases["Runemastered Martyr Crown"] = { @@ -2164,7 +2164,7 @@ itemBases["Runemastered Martyr Crown"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, maraketh_basetype = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 66, EnergyShield = 20, Ward = 81, }, + armour = { Armour = 66, EnergyShield = 20, RunicWard = 81, }, req = { level = 40, str = 32, int = 32, }, } itemBases["Runemastered Heavy Crown"] = { @@ -2175,7 +2175,7 @@ itemBases["Runemastered Heavy Crown"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_int_armour = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Armour = 77, EnergyShield = 22, Ward = 122, }, + armour = { Armour = 77, EnergyShield = 22, RunicWard = 122, }, req = { level = 55, str = 43, int = 43, }, } itemBases["Runemastered Spiritbone Crown"] = { @@ -2187,7 +2187,7 @@ itemBases["Runemastered Spiritbone Crown"] = { tags = { armour = true, default = true, helmet = true, karui_basetype = true, runeforged = true, str_int_armour = true, }, implicit = "Has 3 Sockets", implicitModTypes = { { }, }, - armour = { Armour = 116, EnergyShield = 32, Ward = 113, }, + armour = { Armour = 116, EnergyShield = 32, RunicWard = 113, }, req = { level = 65, str = 50, int = 50, }, } itemBases["Runemastered Spiritbone Crown"] = { @@ -2199,7 +2199,7 @@ itemBases["Runemastered Spiritbone Crown"] = { tags = { armour = true, default = true, helmet = true, karui_basetype = true, runeforged = true, str_int_armour = true, }, implicit = "(25-50)% increased Runic Ward Regeneration Rate\n+250 Intelligence Requirement\n100% reduced Duration of Curses on you", implicitModTypes = { { "runic_ward" }, { }, { "caster", "curse" }, }, - armour = { Armour = 116, EnergyShield = 32, Ward = 113, }, + armour = { Armour = 116, EnergyShield = 32, RunicWard = 113, }, req = { level = 65, str = 50, int = 50, }, } itemBases["Runemastered Spiritbone Crown"] = { @@ -2211,7 +2211,7 @@ itemBases["Runemastered Spiritbone Crown"] = { tags = { armour = true, default = true, helmet = true, karui_basetype = true, runeforged = true, str_int_armour = true, }, implicit = "Every 5 seconds, gain a Verisium Infusion", implicitModTypes = { { }, }, - armour = { Armour = 116, EnergyShield = 32, Ward = 113, }, + armour = { Armour = 116, EnergyShield = 32, RunicWard = 113, }, req = { level = 65, str = 50, int = 50, }, } itemBases["Tenebrous Crown"] = { @@ -2233,7 +2233,7 @@ itemBases["Runemastered Tenebrous Crown"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 143, EnergyShield = 40, Ward = 56, }, + armour = { Armour = 143, EnergyShield = 40, RunicWard = 56, }, req = { level = 65, str = 59, int = 59, }, } @@ -2414,7 +2414,7 @@ itemBases["Runeforged Hewn Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, ezomyte_basetype = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 20, EnergyShield = 13, Ward = 26, }, + armour = { Evasion = 20, EnergyShield = 13, RunicWard = 26, }, req = { level = 5, dex = 7, int = 7, }, } itemBases["Runeforged Face Mask"] = { @@ -2424,7 +2424,7 @@ itemBases["Runeforged Face Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, ezomyte_basetype = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 32, EnergyShield = 16, Ward = 30, }, + armour = { Evasion = 32, EnergyShield = 16, RunicWard = 30, }, req = { level = 10, dex = 10, int = 10, }, } itemBases["Runeforged Hooded Mask"] = { @@ -2434,7 +2434,7 @@ itemBases["Runeforged Hooded Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, helmet = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 46, EnergyShield = 19, Ward = 35, }, + armour = { Evasion = 46, EnergyShield = 19, RunicWard = 35, }, req = { level = 16, dex = 15, int = 15, }, } itemBases["Runeforged Veiled Mask"] = { @@ -2444,7 +2444,7 @@ itemBases["Runeforged Veiled Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, helmet = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 75, EnergyShield = 27, Ward = 43, }, + armour = { Evasion = 75, EnergyShield = 27, RunicWard = 43, }, req = { level = 28, dex = 23, int = 23, }, } itemBases["Runeforged Tribal Mask"] = { @@ -2454,7 +2454,7 @@ itemBases["Runeforged Tribal Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, helmet = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 87, EnergyShield = 30, Ward = 44, }, + armour = { Evasion = 87, EnergyShield = 30, RunicWard = 44, }, req = { level = 33, dex = 27, int = 27, }, } itemBases["Runeforged Solid Mask"] = { @@ -2464,7 +2464,7 @@ itemBases["Runeforged Solid Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, helmet = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 115, EnergyShield = 37, Ward = 52, }, + armour = { Evasion = 115, EnergyShield = 37, RunicWard = 52, }, req = { level = 45, dex = 36, int = 36, }, } itemBases["Runeforged Shaded Mask"] = { @@ -2474,7 +2474,7 @@ itemBases["Runeforged Shaded Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 233, }, + armour = { RunicWard = 233, }, req = { level = 52, dex = 41, int = 41, }, } itemBases["Runeforged Death Mask"] = { @@ -2484,7 +2484,7 @@ itemBases["Runeforged Death Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Ward = 282, }, + armour = { RunicWard = 282, }, req = { level = 65, dex = 50, int = 50, }, } itemBases["Runeforged Pariah Mask"] = { @@ -2494,7 +2494,7 @@ itemBases["Runeforged Pariah Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 123, EnergyShield = 39, Ward = 60, }, + armour = { Evasion = 123, EnergyShield = 39, RunicWard = 60, }, req = { level = 54, dex = 42, int = 42, }, } itemBases["Runeforged Avian Mask"] = { @@ -2504,7 +2504,7 @@ itemBases["Runeforged Avian Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 119, EnergyShield = 37, Ward = 91, }, + armour = { Evasion = 119, EnergyShield = 37, RunicWard = 91, }, req = { level = 59, dex = 46, int = 46, }, } itemBases["Runeforged Brigand Mask"] = { @@ -2514,7 +2514,7 @@ itemBases["Runeforged Brigand Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 155, EnergyShield = 47, Ward = 42, }, + armour = { Evasion = 155, EnergyShield = 47, RunicWard = 42, }, req = { level = 65, dex = 50, int = 50, }, } itemBases["Runeforged Faridun Mask"] = { @@ -2524,7 +2524,7 @@ itemBases["Runeforged Faridun Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 122, EnergyShield = 37, Ward = 99, }, + armour = { Evasion = 122, EnergyShield = 37, RunicWard = 99, }, req = { level = 70, dex = 54, int = 54, }, } itemBases["Runeforged Soaring Mask"] = { @@ -2534,7 +2534,7 @@ itemBases["Runeforged Soaring Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 163, EnergyShield = 50, Ward = 56, }, + armour = { Evasion = 163, EnergyShield = 50, RunicWard = 56, }, req = { level = 75, dex = 59, int = 59, }, } itemBases["Runeforged Grinning Mask"] = { @@ -2544,7 +2544,7 @@ itemBases["Runeforged Grinning Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, helmet = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 49, EnergyShield = 15, Ward = 254, }, + armour = { Evasion = 49, EnergyShield = 15, RunicWard = 254, }, req = { level = 80, dex = 63, int = 63, }, } itemBases["Runemastered Hewn Mask"] = { @@ -2555,7 +2555,7 @@ itemBases["Runemastered Hewn Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, ezomyte_basetype = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 30, EnergyShield = 10, Ward = 54, }, + armour = { Evasion = 30, EnergyShield = 10, RunicWard = 54, }, req = { level = 38, dex = 31, int = 31, }, } itemBases["Runemastered Face Mask"] = { @@ -2566,7 +2566,7 @@ itemBases["Runemastered Face Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, ezomyte_basetype = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 118, EnergyShield = 40, Ward = 18, }, + armour = { Evasion = 118, EnergyShield = 40, RunicWard = 18, }, req = { level = 38, dex = 31, int = 31, }, } itemBases["Runemastered Hooded Mask"] = { @@ -2577,7 +2577,7 @@ itemBases["Runemastered Hooded Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, helmet = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 69, EnergyShield = 23, Ward = 54, }, + armour = { Evasion = 69, EnergyShield = 23, RunicWard = 54, }, req = { level = 38, dex = 31, int = 31, }, } itemBases["Runemastered Veiled Mask"] = { @@ -2588,7 +2588,7 @@ itemBases["Runemastered Veiled Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, helmet = true, maraketh_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 78, EnergyShield = 26, Ward = 57, }, + armour = { Evasion = 78, EnergyShield = 26, RunicWard = 57, }, req = { level = 40, dex = 32, int = 32, }, } itemBases["Runemastered Tribal Mask"] = { @@ -2599,7 +2599,7 @@ itemBases["Runemastered Tribal Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, helmet = true, runeforged = true, vaal_basetype = true, }, implicitModTypes = { }, - armour = { Evasion = 105, EnergyShield = 33, Ward = 47, }, + armour = { Evasion = 105, EnergyShield = 33, RunicWard = 47, }, req = { level = 52, dex = 41, int = 41, }, } itemBases["Runemastered Solid Mask"] = { @@ -2610,7 +2610,7 @@ itemBases["Runemastered Solid Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, helmet = true, karui_basetype = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 125, EnergyShield = 39, Ward = 37, }, + armour = { Evasion = 125, EnergyShield = 39, RunicWard = 37, }, req = { level = 55, dex = 43, int = 43, }, } itemBases["Runemastered Death Mask"] = { @@ -2621,7 +2621,7 @@ itemBases["Runemastered Death Mask"] = { socketLimit = 3, tags = { armour = true, default = true, dex_int_armour = true, helmet = true, runeforged = true, }, implicitModTypes = { }, - armour = { Evasion = 130, EnergyShield = 40, Ward = 70, }, + armour = { Evasion = 130, EnergyShield = 40, RunicWard = 70, }, req = { level = 65, dex = 50, int = 50, }, } @@ -2642,7 +2642,7 @@ itemBases["Runeforged Grand Visage"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_dex_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 113, Evasion = 103, EnergyShield = 31, Ward = 56, }, + armour = { Armour = 113, Evasion = 103, EnergyShield = 31, RunicWard = 56, }, req = { level = 65, str = 36, dex = 36, int = 36, }, } itemBases["Runemastered Grand Visage"] = { @@ -2653,7 +2653,7 @@ itemBases["Runemastered Grand Visage"] = { socketLimit = 3, tags = { armour = true, default = true, helmet = true, runeforged = true, str_dex_int_armour = true, }, implicitModTypes = { }, - armour = { Armour = 77, Evasion = 71, EnergyShield = 22, Ward = 99, }, + armour = { Armour = 77, Evasion = 71, EnergyShield = 22, RunicWard = 99, }, req = { level = 65, str = 36, dex = 36, int = 36, }, } diff --git a/src/Data/Bases/shield.lua b/src/Data/Bases/shield.lua index f46cab20c..a8d17346a 100644 --- a/src/Data/Bases/shield.lua +++ b/src/Data/Bases/shield.lua @@ -264,7 +264,7 @@ itemBases["Runeforged Splintered Tower Shield"] = { tags = { armour = true, default = true, ezomyte_basetype = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 18, Ward = 12, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 18, RunicWard = 12, MovementPenalty = 0.03, }, req = { }, } itemBases["Runeforged Painted Tower Shield"] = { @@ -275,7 +275,7 @@ itemBases["Runeforged Painted Tower Shield"] = { tags = { armour = true, default = true, ezomyte_basetype = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 33, Ward = 15, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 33, RunicWard = 15, MovementPenalty = 0.03, }, req = { level = 6, str = 11, }, } itemBases["Runeforged Braced Tower Shield"] = { @@ -286,7 +286,7 @@ itemBases["Runeforged Braced Tower Shield"] = { tags = { armour = true, default = true, ezomyte_basetype = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 50, Ward = 18, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 50, RunicWard = 18, MovementPenalty = 0.03, }, req = { level = 12, str = 19, }, } itemBases["Runeforged Barricade Tower Shield"] = { @@ -297,7 +297,7 @@ itemBases["Runeforged Barricade Tower Shield"] = { tags = { armour = true, default = true, maraketh_basetype = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 62, Ward = 22, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 62, RunicWard = 22, MovementPenalty = 0.03, }, req = { level = 16, str = 25, }, } itemBases["Runeforged Effigial Tower Shield"] = { @@ -308,7 +308,7 @@ itemBases["Runeforged Effigial Tower Shield"] = { tags = { armour = true, default = true, maraketh_basetype = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 76, Ward = 25, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 76, RunicWard = 25, MovementPenalty = 0.03, }, req = { level = 21, str = 32, }, } itemBases["Runeforged Rampart Tower Shield"] = { @@ -319,7 +319,7 @@ itemBases["Runeforged Rampart Tower Shield"] = { tags = { armour = true, default = true, maraketh_basetype = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 96, Ward = 27, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 96, RunicWard = 27, MovementPenalty = 0.03, }, req = { level = 28, str = 42, }, } itemBases["Runeforged Heraldric Tower Shield"] = { @@ -330,7 +330,7 @@ itemBases["Runeforged Heraldric Tower Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_armour = true, str_shield = true, vaal_basetype = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 111, Ward = 30, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 111, RunicWard = 30, MovementPenalty = 0.03, }, req = { level = 33, str = 48, }, } itemBases["Runeforged Stone Tower Shield"] = { @@ -341,7 +341,7 @@ itemBases["Runeforged Stone Tower Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_armour = true, str_shield = true, vaal_basetype = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 119, Ward = 33, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 119, RunicWard = 33, MovementPenalty = 0.03, }, req = { level = 36, str = 52, }, } itemBases["Runeforged Crucible Tower Shield"] = { @@ -352,7 +352,7 @@ itemBases["Runeforged Crucible Tower Shield"] = { tags = { armour = true, default = true, karui_basetype = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 145, Ward = 36, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 145, RunicWard = 36, MovementPenalty = 0.03, }, req = { level = 45, str = 64, }, } itemBases["Runeforged Ancestor Tower Shield"] = { @@ -363,7 +363,7 @@ itemBases["Runeforged Ancestor Tower Shield"] = { tags = { armour = true, default = true, karui_basetype = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Ward = 148, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, RunicWard = 148, MovementPenalty = 0.03, }, req = { level = 50, str = 71, }, } itemBases["Runeforged Phalanx Tower Shield"] = { @@ -374,7 +374,7 @@ itemBases["Runeforged Phalanx Tower Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Ward = 146, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, RunicWard = 146, MovementPenalty = 0.03, }, req = { level = 52, str = 74, }, } itemBases["Runeforged Defiant Tower Shield"] = { @@ -385,7 +385,7 @@ itemBases["Runeforged Defiant Tower Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Ward = 160, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, RunicWard = 160, MovementPenalty = 0.03, }, req = { level = 58, str = 82, }, } itemBases["Runeforged Blacksteel Tower Shield"] = { @@ -396,7 +396,7 @@ itemBases["Runeforged Blacksteel Tower Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Ward = 176, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, RunicWard = 176, MovementPenalty = 0.03, }, req = { level = 65, str = 91, }, } itemBases["Runeforged Bulwark Tower Shield"] = { @@ -407,7 +407,7 @@ itemBases["Runeforged Bulwark Tower Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 137, Ward = 53, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 137, RunicWard = 53, MovementPenalty = 0.03, }, req = { level = 54, str = 77, }, } itemBases["Runeforged Noble Tower Shield"] = { @@ -418,7 +418,7 @@ itemBases["Runeforged Noble Tower Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 167, Ward = 41, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 167, RunicWard = 41, MovementPenalty = 0.03, }, req = { level = 59, str = 83, }, } itemBases["Runeforged Goldworked Tower Shield"] = { @@ -429,7 +429,7 @@ itemBases["Runeforged Goldworked Tower Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 144, Ward = 58, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 144, RunicWard = 58, MovementPenalty = 0.03, }, req = { level = 61, str = 86, }, } itemBases["Runeforged Royal Tower Shield"] = { @@ -440,7 +440,7 @@ itemBases["Runeforged Royal Tower Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 183, Ward = 44, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 183, RunicWard = 44, MovementPenalty = 0.03, }, req = { level = 65, str = 91, }, } itemBases["Runeforged Fortress Tower Shield"] = { @@ -451,7 +451,7 @@ itemBases["Runeforged Fortress Tower Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 132, Ward = 106, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 132, RunicWard = 106, MovementPenalty = 0.03, }, req = { level = 70, str = 99, }, } itemBases["Runeforged Vaal Tower Shield"] = { @@ -462,7 +462,7 @@ itemBases["Runeforged Vaal Tower Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 213, Ward = 35, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 213, RunicWard = 35, MovementPenalty = 0.03, }, req = { level = 75, str = 107, }, } itemBases["Runeforged Tawhoan Tower Shield"] = { @@ -473,7 +473,7 @@ itemBases["Runeforged Tawhoan Tower Shield"] = { tags = { armour = true, default = true, karui_basetype = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 71, Ward = 176, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 71, RunicWard = 176, MovementPenalty = 0.03, }, req = { level = 80, str = 115, }, } itemBases["Runemastered Splintered Tower Shield"] = { @@ -485,7 +485,7 @@ itemBases["Runemastered Splintered Tower Shield"] = { tags = { armour = true, default = true, ezomyte_basetype = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 100, Ward = 23, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 100, RunicWard = 23, MovementPenalty = 0.03, }, req = { level = 38, str = 54, }, } itemBases["Runemastered Painted Tower Shield"] = { @@ -497,7 +497,7 @@ itemBases["Runemastered Painted Tower Shield"] = { tags = { armour = true, default = true, ezomyte_basetype = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 63, Ward = 57, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 63, RunicWard = 57, MovementPenalty = 0.03, }, req = { level = 38, str = 54, }, } itemBases["Runemastered Braced Tower Shield"] = { @@ -509,7 +509,7 @@ itemBases["Runemastered Braced Tower Shield"] = { tags = { armour = true, default = true, ezomyte_basetype = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 88, Ward = 34, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 88, RunicWard = 34, MovementPenalty = 0.03, }, req = { level = 38, str = 54, }, } itemBases["Runemastered Barricade Tower Shield"] = { @@ -521,7 +521,7 @@ itemBases["Runemastered Barricade Tower Shield"] = { tags = { armour = true, default = true, maraketh_basetype = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 94, Ward = 28, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 94, RunicWard = 28, MovementPenalty = 0.03, }, req = { level = 38, str = 54, }, } itemBases["Runemastered Effigial Tower Shield"] = { @@ -533,7 +533,7 @@ itemBases["Runemastered Effigial Tower Shield"] = { tags = { armour = true, default = true, maraketh_basetype = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Ward = 113, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, RunicWard = 113, MovementPenalty = 0.03, }, req = { level = 38, str = 54, }, } itemBases["Runemastered Rampart Tower Shield"] = { @@ -545,7 +545,7 @@ itemBases["Runemastered Rampart Tower Shield"] = { tags = { armour = true, default = true, maraketh_basetype = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 98, Ward = 29, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 98, RunicWard = 29, MovementPenalty = 0.03, }, req = { level = 40, str = 58, }, } itemBases["Runemastered Heraldric Tower Shield"] = { @@ -557,7 +557,7 @@ itemBases["Runemastered Heraldric Tower Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_armour = true, str_shield = true, vaal_basetype = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 96, Ward = 42, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 96, RunicWard = 42, MovementPenalty = 0.03, }, req = { level = 50, str = 71, }, } itemBases["Runemastered Crucible Tower Shield"] = { @@ -569,7 +569,7 @@ itemBases["Runemastered Crucible Tower Shield"] = { tags = { armour = true, default = true, karui_basetype = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Ward = 250, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, RunicWard = 250, MovementPenalty = 0.03, }, req = { level = 65, str = 91, }, } itemBases["Runemastered Crucible Tower Shield"] = { @@ -581,7 +581,7 @@ itemBases["Runemastered Crucible Tower Shield"] = { tags = { armour = true, default = true, karui_basetype = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Recover (15-25) Runic Ward when you Block\nGrants Skill: Level (1-20) Raise Shield", implicitModTypes = { { }, }, - armour = { BlockChance = 26, Armour = 100, Ward = 100, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 100, RunicWard = 100, MovementPenalty = 0.03, }, req = { level = 65, str = 91, }, } itemBases["Runemastered Crucible Tower Shield"] = { @@ -593,7 +593,7 @@ itemBases["Runemastered Crucible Tower Shield"] = { tags = { armour = true, default = true, karui_basetype = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 26, Evasion = 148, Ward = 35, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Evasion = 148, RunicWard = 35, MovementPenalty = 0.03, }, req = { level = 65, dex = 91, }, } itemBases["Runemastered Crucible Tower Shield"] = { @@ -605,7 +605,7 @@ itemBases["Runemastered Crucible Tower Shield"] = { tags = { armour = true, default = true, karui_basetype = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "(15-25)% of Damage is taken from Mana before Life\nGrants Skill: Level (1-20) Raise Shield", implicitModTypes = { { "resource", "life", "mana" }, }, - armour = { BlockChance = 26, Armour = 162, Ward = 35, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 162, RunicWard = 35, MovementPenalty = 0.03, }, req = { level = 65, str = 91, }, } itemBases["Runemastered Blacksteel Tower Shield"] = { @@ -617,7 +617,7 @@ itemBases["Runemastered Blacksteel Tower Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 102, Ward = 88, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 102, RunicWard = 88, MovementPenalty = 0.03, }, req = { level = 65, str = 91, }, } itemBases["Runemastered Vaal Tower Shield"] = { @@ -629,7 +629,7 @@ itemBases["Runemastered Vaal Tower Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 203, Ward = 70, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 203, RunicWard = 70, MovementPenalty = 0.03, }, req = { level = 75, str = 107, }, } itemBases["Glacial Fortress"] = { @@ -653,7 +653,7 @@ itemBases["Runemastered Glacial Fortress"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_armour = true, str_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 203, Ward = 53, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 203, RunicWard = 53, MovementPenalty = 0.03, }, req = { level = 70, str = 99, }, } @@ -918,7 +918,7 @@ itemBases["Runeforged Leather Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, ezomyte_basetype = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 10, Ward = 10, }, + armour = { BlockChance = 20, Evasion = 10, RunicWard = 10, }, req = { }, } itemBases["Runeforged Wooden Buckler"] = { @@ -929,7 +929,7 @@ itemBases["Runeforged Wooden Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, ezomyte_basetype = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 18, Ward = 11, }, + armour = { BlockChance = 20, Evasion = 18, RunicWard = 11, }, req = { level = 5, dex = 10, }, } itemBases["Runeforged Plated Buckler"] = { @@ -940,7 +940,7 @@ itemBases["Runeforged Plated Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, ezomyte_basetype = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 31, Ward = 14, }, + armour = { BlockChance = 20, Evasion = 31, RunicWard = 14, }, req = { level = 11, dex = 18, }, } itemBases["Runeforged Iron Buckler"] = { @@ -951,7 +951,7 @@ itemBases["Runeforged Iron Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, maraketh_basetype = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 42, Ward = 17, }, + armour = { BlockChance = 20, Evasion = 42, RunicWard = 17, }, req = { level = 16, dex = 25, }, } itemBases["Runeforged Ridged Buckler"] = { @@ -962,7 +962,7 @@ itemBases["Runeforged Ridged Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, maraketh_basetype = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 55, Ward = 21, }, + armour = { BlockChance = 20, Evasion = 55, RunicWard = 21, }, req = { level = 22, dex = 33, }, } itemBases["Runeforged Spiked Buckler"] = { @@ -973,7 +973,7 @@ itemBases["Runeforged Spiked Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, maraketh_basetype = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 64, Ward = 20, }, + armour = { BlockChance = 20, Evasion = 64, RunicWard = 20, }, req = { level = 26, dex = 38, }, } itemBases["Runeforged Ringed Buckler"] = { @@ -984,7 +984,7 @@ itemBases["Runeforged Ringed Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, runeforged = true, shield = true, vaal_basetype = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 79, Ward = 24, }, + armour = { BlockChance = 20, Evasion = 79, RunicWard = 24, }, req = { level = 33, dex = 48, }, } itemBases["Runeforged Edged Buckler"] = { @@ -995,7 +995,7 @@ itemBases["Runeforged Edged Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, runeforged = true, shield = true, vaal_basetype = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 92, Ward = 28, }, + armour = { BlockChance = 20, Evasion = 92, RunicWard = 28, }, req = { level = 39, dex = 56, }, } itemBases["Runeforged Laminate Buckler"] = { @@ -1006,7 +1006,7 @@ itemBases["Runeforged Laminate Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, karui_basetype = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 105, Ward = 29, }, + armour = { BlockChance = 20, Evasion = 105, RunicWard = 29, }, req = { level = 45, dex = 64, }, } itemBases["Runeforged Pearl Buckler"] = { @@ -1017,7 +1017,7 @@ itemBases["Runeforged Pearl Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, karui_basetype = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 116, Ward = 29, }, + armour = { BlockChance = 20, Evasion = 116, RunicWard = 29, }, req = { level = 50, dex = 71, }, } itemBases["Runeforged Ornate Buckler"] = { @@ -1028,7 +1028,7 @@ itemBases["Runeforged Ornate Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Ward = 117, }, + armour = { BlockChance = 20, RunicWard = 117, }, req = { level = 52, dex = 74, }, } itemBases["Runeforged Array Buckler"] = { @@ -1039,7 +1039,7 @@ itemBases["Runeforged Array Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Ward = 122, }, + armour = { BlockChance = 20, RunicWard = 122, }, req = { level = 55, dex = 78, }, } itemBases["Runeforged Aegis Buckler"] = { @@ -1050,7 +1050,7 @@ itemBases["Runeforged Aegis Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Ward = 141, }, + armour = { BlockChance = 20, RunicWard = 141, }, req = { level = 65, dex = 91, }, } itemBases["Runeforged Spikeward Buckler"] = { @@ -1061,7 +1061,7 @@ itemBases["Runeforged Spikeward Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 99, Ward = 42, }, + armour = { BlockChance = 20, Evasion = 99, RunicWard = 42, }, req = { level = 54, dex = 77, }, } itemBases["Runeforged Jingling Buckler"] = { @@ -1072,7 +1072,7 @@ itemBases["Runeforged Jingling Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 122, Ward = 32, }, + armour = { BlockChance = 20, Evasion = 122, RunicWard = 32, }, req = { level = 59, dex = 83, }, } itemBases["Runeforged Bladeguard Buckler"] = { @@ -1083,7 +1083,7 @@ itemBases["Runeforged Bladeguard Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 104, Ward = 47, }, + armour = { BlockChance = 20, Evasion = 104, RunicWard = 47, }, req = { level = 61, dex = 86, }, } itemBases["Runeforged Ornate Buckler"] = { @@ -1094,7 +1094,7 @@ itemBases["Runeforged Ornate Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 133, Ward = 35, }, + armour = { BlockChance = 20, Evasion = 133, RunicWard = 35, }, req = { level = 65, dex = 91, }, } itemBases["Runeforged Gutspike Buckler"] = { @@ -1105,7 +1105,7 @@ itemBases["Runeforged Gutspike Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 96, Ward = 85, }, + armour = { BlockChance = 20, Evasion = 96, RunicWard = 85, }, req = { level = 70, dex = 99, }, } itemBases["Runeforged Ancient Buckler"] = { @@ -1116,7 +1116,7 @@ itemBases["Runeforged Ancient Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 148, Ward = 35, }, + armour = { BlockChance = 20, Evasion = 148, RunicWard = 35, }, req = { level = 75, dex = 107, }, } itemBases["Runeforged Desert Buckler"] = { @@ -1127,7 +1127,7 @@ itemBases["Runeforged Desert Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, karui_basetype = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 59, Ward = 134, }, + armour = { BlockChance = 20, Evasion = 59, RunicWard = 134, }, req = { level = 80, dex = 115, }, } itemBases["Runemastered Leather Buckler"] = { @@ -1139,7 +1139,7 @@ itemBases["Runemastered Leather Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, ezomyte_basetype = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 108, Ward = 36, }, + armour = { BlockChance = 20, Evasion = 108, RunicWard = 36, }, req = { level = 38, dex = 54, }, } itemBases["Runemastered Wooden Buckler"] = { @@ -1151,7 +1151,7 @@ itemBases["Runemastered Wooden Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, ezomyte_basetype = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 90, Ward = 18, }, + armour = { BlockChance = 20, Evasion = 90, RunicWard = 18, }, req = { level = 38, dex = 54, }, } itemBases["Runemastered Plated Buckler"] = { @@ -1163,7 +1163,7 @@ itemBases["Runemastered Plated Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, ezomyte_basetype = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 67, Ward = 23, }, + armour = { BlockChance = 20, Evasion = 67, RunicWard = 23, }, req = { level = 38, dex = 54, }, } itemBases["Runemastered Iron Buckler"] = { @@ -1175,7 +1175,7 @@ itemBases["Runemastered Iron Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, maraketh_basetype = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 45, Ward = 45, }, + armour = { BlockChance = 20, Evasion = 45, RunicWard = 45, }, req = { level = 38, dex = 54, }, } itemBases["Runemastered Ridged Buckler"] = { @@ -1187,7 +1187,7 @@ itemBases["Runemastered Ridged Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, maraketh_basetype = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 66, Ward = 28, }, + armour = { BlockChance = 20, Evasion = 66, RunicWard = 28, }, req = { level = 40, dex = 58, }, } itemBases["Runemastered Spiked Buckler"] = { @@ -1199,7 +1199,7 @@ itemBases["Runemastered Spiked Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, maraketh_basetype = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 61, Ward = 33, }, + armour = { BlockChance = 20, Evasion = 61, RunicWard = 33, }, req = { level = 40, dex = 58, }, } itemBases["Runemastered Ornate Buckler"] = { @@ -1211,7 +1211,7 @@ itemBases["Runemastered Ornate Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 114, Ward = 12, }, + armour = { BlockChance = 20, Evasion = 114, RunicWard = 12, }, req = { level = 55, dex = 78, }, } itemBases["Runemastered Array Buckler"] = { @@ -1223,7 +1223,7 @@ itemBases["Runemastered Array Buckler"] = { tags = { armour = true, buckler = true, default = true, dex_armour = true, dex_shield = true, runeforged = true, shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 103, Ward = 33, }, + armour = { BlockChance = 20, Evasion = 103, RunicWard = 33, }, req = { level = 60, dex = 85, }, } @@ -1466,7 +1466,7 @@ itemBases["Runeforged Hardwood Targe"] = { tags = { armour = true, default = true, ezomyte_basetype = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 10, Evasion = 7, Ward = 12, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 10, Evasion = 7, RunicWard = 12, MovementPenalty = 0.015, }, req = { }, } itemBases["Runeforged Pelage Targe"] = { @@ -1477,7 +1477,7 @@ itemBases["Runeforged Pelage Targe"] = { tags = { armour = true, default = true, ezomyte_basetype = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 21, Evasion = 17, Ward = 17, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 21, Evasion = 17, RunicWard = 17, MovementPenalty = 0.015, }, req = { level = 8, str = 9, dex = 9, }, } itemBases["Runeforged Studded Targe"] = { @@ -1488,7 +1488,7 @@ itemBases["Runeforged Studded Targe"] = { tags = { armour = true, default = true, maraketh_basetype = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 34, Evasion = 29, Ward = 22, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 34, Evasion = 29, RunicWard = 22, MovementPenalty = 0.015, }, req = { level = 16, str = 15, dex = 15, }, } itemBases["Runeforged Crescent Targe"] = { @@ -1499,7 +1499,7 @@ itemBases["Runeforged Crescent Targe"] = { tags = { armour = true, default = true, maraketh_basetype = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 50, Evasion = 44, Ward = 30, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 50, Evasion = 44, RunicWard = 30, MovementPenalty = 0.015, }, req = { level = 26, str = 22, dex = 22, }, } itemBases["Runeforged Chiseled Targe"] = { @@ -1510,7 +1510,7 @@ itemBases["Runeforged Chiseled Targe"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, vaal_basetype = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 61, Evasion = 54, Ward = 33, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 61, Evasion = 54, RunicWard = 33, MovementPenalty = 0.015, }, req = { level = 33, str = 27, dex = 27, }, } itemBases["Runeforged Feathered Targe"] = { @@ -1521,7 +1521,7 @@ itemBases["Runeforged Feathered Targe"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, vaal_basetype = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 67, Evasion = 60, Ward = 34, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 67, Evasion = 60, RunicWard = 34, MovementPenalty = 0.015, }, req = { level = 37, str = 30, dex = 30, }, } itemBases["Runeforged Stratified Targe"] = { @@ -1532,7 +1532,7 @@ itemBases["Runeforged Stratified Targe"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 82, Evasion = 74, Ward = 38, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 82, Evasion = 74, RunicWard = 38, MovementPenalty = 0.015, }, req = { level = 46, str = 37, dex = 37, }, } itemBases["Runeforged Carved Targe"] = { @@ -1543,7 +1543,7 @@ itemBases["Runeforged Carved Targe"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 89, Evasion = 81, Ward = 40, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 89, Evasion = 81, RunicWard = 40, MovementPenalty = 0.015, }, req = { level = 51, str = 40, dex = 40, }, } itemBases["Runeforged Mosaic Targe"] = { @@ -1554,7 +1554,7 @@ itemBases["Runeforged Mosaic Targe"] = { tags = { armour = true, default = true, karui_basetype = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Ward = 146, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, RunicWard = 146, MovementPenalty = 0.015, }, req = { level = 52, str = 41, dex = 41, }, } itemBases["Runeforged Aureate Targe"] = { @@ -1565,7 +1565,7 @@ itemBases["Runeforged Aureate Targe"] = { tags = { armour = true, default = true, karui_basetype = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Ward = 157, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, RunicWard = 157, MovementPenalty = 0.015, }, req = { level = 57, str = 45, dex = 45, }, } itemBases["Runeforged Grand Targe"] = { @@ -1576,7 +1576,7 @@ itemBases["Runeforged Grand Targe"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Ward = 176, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, RunicWard = 176, MovementPenalty = 0.015, }, req = { level = 65, str = 50, dex = 50, }, } itemBases["Runeforged Polished Targe"] = { @@ -1587,7 +1587,7 @@ itemBases["Runeforged Polished Targe"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 75, Evasion = 68, Ward = 53, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 75, Evasion = 68, RunicWard = 53, MovementPenalty = 0.015, }, req = { level = 54, str = 42, dex = 42, }, } itemBases["Runeforged Stone Targe"] = { @@ -1598,7 +1598,7 @@ itemBases["Runeforged Stone Targe"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 92, Evasion = 84, Ward = 41, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 92, Evasion = 84, RunicWard = 41, MovementPenalty = 0.015, }, req = { level = 59, str = 46, dex = 46, }, } itemBases["Runeforged Avian Targe"] = { @@ -1609,7 +1609,7 @@ itemBases["Runeforged Avian Targe"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 80, Evasion = 73, Ward = 59, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 80, Evasion = 73, RunicWard = 59, MovementPenalty = 0.015, }, req = { level = 62, str = 48, dex = 48, }, } itemBases["Runeforged Mammoth Targe"] = { @@ -1620,7 +1620,7 @@ itemBases["Runeforged Mammoth Targe"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 101, Evasion = 92, Ward = 44, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 101, Evasion = 92, RunicWard = 44, MovementPenalty = 0.015, }, req = { level = 65, str = 50, dex = 50, }, } itemBases["Runeforged Baroque Targe"] = { @@ -1631,7 +1631,7 @@ itemBases["Runeforged Baroque Targe"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 73, Evasion = 66, Ward = 106, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 73, Evasion = 66, RunicWard = 106, MovementPenalty = 0.015, }, req = { level = 70, str = 54, dex = 54, }, } itemBases["Runeforged Soaring Targe"] = { @@ -1642,7 +1642,7 @@ itemBases["Runeforged Soaring Targe"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 106, Evasion = 97, Ward = 53, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 106, Evasion = 97, RunicWard = 53, MovementPenalty = 0.015, }, req = { level = 75, str = 59, dex = 59, }, } itemBases["Runeforged Golden Targe"] = { @@ -1653,7 +1653,7 @@ itemBases["Runeforged Golden Targe"] = { tags = { armour = true, default = true, karui_basetype = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 34, Evasion = 31, Ward = 185, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 34, Evasion = 31, RunicWard = 185, MovementPenalty = 0.015, }, req = { level = 80, str = 63, dex = 63, }, } itemBases["Runemastered Hardwood Targe"] = { @@ -1665,7 +1665,7 @@ itemBases["Runemastered Hardwood Targe"] = { tags = { armour = true, buckler = true, default = true, ezomyte_basetype = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 44, Evasion = 39, Ward = 18, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 44, Evasion = 39, RunicWard = 18, MovementPenalty = 0.015, }, req = { level = 38, str = 31, dex = 31, }, } itemBases["Runemastered Crescent Targe"] = { @@ -1677,7 +1677,7 @@ itemBases["Runemastered Crescent Targe"] = { tags = { armour = true, buckler = true, default = true, maraketh_basetype = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 41, Evasion = 37, Ward = 23, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 41, Evasion = 37, RunicWard = 23, MovementPenalty = 0.015, }, req = { level = 38, str = 31, dex = 31, }, } itemBases["Venerable Defender"] = { @@ -1701,7 +1701,7 @@ itemBases["Runemastered Venerable Defender"] = { tags = { armour = true, buckler = true, default = true, karui_basetype = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 26, Armour = 162, Ward = 42, MovementPenalty = 0.03, }, + armour = { BlockChance = 26, Armour = 162, RunicWard = 42, MovementPenalty = 0.03, }, req = { level = 65, str = 107, }, } itemBases["Runemastered Venerable Defender"] = { @@ -1713,7 +1713,7 @@ itemBases["Runemastered Venerable Defender"] = { tags = { armour = true, buckler = true, default = true, karui_basetype = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, EnergyShield = 45, Ward = 42, }, + armour = { BlockChance = 25, EnergyShield = 45, RunicWard = 42, }, req = { level = 65, int = 107, }, } itemBases["Runemastered Venerable Defender"] = { @@ -1725,7 +1725,7 @@ itemBases["Runemastered Venerable Defender"] = { tags = { armour = true, buckler = true, default = true, karui_basetype = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Parry", implicitModTypes = { }, - armour = { BlockChance = 20, Evasion = 148, Ward = 42, }, + armour = { BlockChance = 20, Evasion = 148, RunicWard = 42, }, req = { level = 65, dex = 107, }, } itemBases["Runemastered Venerable Defender"] = { @@ -1737,7 +1737,7 @@ itemBases["Runemastered Venerable Defender"] = { tags = { armour = true, buckler = true, default = true, karui_basetype = true, runeforged = true, shield = true, str_dex_armour = true, str_dex_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 89, Evasion = 81, Ward = 42, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 89, Evasion = 81, RunicWard = 42, MovementPenalty = 0.015, }, req = { level = 65, str = 67, dex = 67, }, } @@ -1980,7 +1980,7 @@ itemBases["Runeforged Blazon Crest Shield"] = { tags = { armour = true, default = true, ezomyte_basetype = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 10, EnergyShield = 6, Ward = 12, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 10, EnergyShield = 6, RunicWard = 12, MovementPenalty = 0.015, }, req = { }, } itemBases["Runeforged Sigil Crest Shield"] = { @@ -1991,7 +1991,7 @@ itemBases["Runeforged Sigil Crest Shield"] = { tags = { armour = true, default = true, ezomyte_basetype = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 20, EnergyShield = 9, Ward = 16, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 20, EnergyShield = 9, RunicWard = 16, MovementPenalty = 0.015, }, req = { level = 7, str = 8, int = 8, }, } itemBases["Runeforged Emblem Crest Shield"] = { @@ -2002,7 +2002,7 @@ itemBases["Runeforged Emblem Crest Shield"] = { tags = { armour = true, default = true, maraketh_basetype = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 34, EnergyShield = 12, Ward = 22, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 34, EnergyShield = 12, RunicWard = 22, MovementPenalty = 0.015, }, req = { level = 16, str = 15, int = 15, }, } itemBases["Runeforged Jingling Crest Shield"] = { @@ -2013,7 +2013,7 @@ itemBases["Runeforged Jingling Crest Shield"] = { tags = { armour = true, default = true, maraketh_basetype = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 53, EnergyShield = 17, Ward = 31, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 53, EnergyShield = 17, RunicWard = 31, MovementPenalty = 0.015, }, req = { level = 28, str = 23, int = 23, }, } itemBases["Runeforged Sectarian Crest Shield"] = { @@ -2024,7 +2024,7 @@ itemBases["Runeforged Sectarian Crest Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, vaal_basetype = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 61, EnergyShield = 19, Ward = 33, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 61, EnergyShield = 19, RunicWard = 33, MovementPenalty = 0.015, }, req = { level = 33, str = 27, int = 27, }, } itemBases["Runeforged Omen Crest Shield"] = { @@ -2035,7 +2035,7 @@ itemBases["Runeforged Omen Crest Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, vaal_basetype = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 66, EnergyShield = 20, Ward = 34, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 66, EnergyShield = 20, RunicWard = 34, MovementPenalty = 0.015, }, req = { level = 36, str = 30, int = 30, }, } itemBases["Runeforged Wayward Crest Shield"] = { @@ -2046,7 +2046,7 @@ itemBases["Runeforged Wayward Crest Shield"] = { tags = { armour = true, default = true, karui_basetype = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 80, EnergyShield = 23, Ward = 38, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 80, EnergyShield = 23, RunicWard = 38, MovementPenalty = 0.015, }, req = { level = 45, str = 36, int = 36, }, } itemBases["Runeforged Seer Crest Shield"] = { @@ -2057,7 +2057,7 @@ itemBases["Runeforged Seer Crest Shield"] = { tags = { armour = true, default = true, karui_basetype = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 88, EnergyShield = 25, Ward = 40, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 88, EnergyShield = 25, RunicWard = 40, MovementPenalty = 0.015, }, req = { level = 50, str = 39, int = 39, }, } itemBases["Runeforged Stoic Crest Shield"] = { @@ -2068,7 +2068,7 @@ itemBases["Runeforged Stoic Crest Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Ward = 146, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, RunicWard = 146, MovementPenalty = 0.015, }, req = { level = 52, str = 41, int = 41, }, } itemBases["Runeforged Empyreal Crest Shield"] = { @@ -2079,7 +2079,7 @@ itemBases["Runeforged Empyreal Crest Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Ward = 157, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, RunicWard = 157, MovementPenalty = 0.015, }, req = { level = 57, str = 45, int = 45, }, } itemBases["Runeforged Deified Crest Shield"] = { @@ -2090,7 +2090,7 @@ itemBases["Runeforged Deified Crest Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Ward = 176, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, RunicWard = 176, MovementPenalty = 0.015, }, req = { level = 65, str = 50, int = 50, }, } itemBases["Runeforged Dekharan Crest Shield"] = { @@ -2101,7 +2101,7 @@ itemBases["Runeforged Dekharan Crest Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 75, EnergyShield = 21, Ward = 53, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 75, EnergyShield = 21, RunicWard = 53, MovementPenalty = 0.015, }, req = { level = 54, str = 42, int = 42, }, } itemBases["Runeforged Quartered Crest Shield"] = { @@ -2112,7 +2112,7 @@ itemBases["Runeforged Quartered Crest Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 92, EnergyShield = 26, Ward = 41, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 92, EnergyShield = 26, RunicWard = 41, MovementPenalty = 0.015, }, req = { level = 59, str = 46, int = 46, }, } itemBases["Runeforged Glowering Crest Shield"] = { @@ -2123,7 +2123,7 @@ itemBases["Runeforged Glowering Crest Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 80, EnergyShield = 22, Ward = 59, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 80, EnergyShield = 22, RunicWard = 59, MovementPenalty = 0.015, }, req = { level = 62, str = 48, int = 48, }, } itemBases["Runeforged Intricate Crest Shield"] = { @@ -2134,7 +2134,7 @@ itemBases["Runeforged Intricate Crest Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 101, EnergyShield = 28, Ward = 44, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 101, EnergyShield = 28, RunicWard = 44, MovementPenalty = 0.015, }, req = { level = 65, str = 50, int = 50, }, } itemBases["Runeforged Sekheman Crest Shield"] = { @@ -2145,7 +2145,7 @@ itemBases["Runeforged Sekheman Crest Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 73, EnergyShield = 20, Ward = 106, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 73, EnergyShield = 20, RunicWard = 106, MovementPenalty = 0.015, }, req = { level = 70, str = 54, int = 54, }, } itemBases["Runeforged Vaal Crest Shield"] = { @@ -2156,7 +2156,7 @@ itemBases["Runeforged Vaal Crest Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 123, EnergyShield = 34, Ward = 26, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 123, EnergyShield = 34, RunicWard = 26, MovementPenalty = 0.015, }, req = { level = 75, str = 59, int = 59, }, } itemBases["Runeforged Blacksteel Crest Shield"] = { @@ -2167,7 +2167,7 @@ itemBases["Runeforged Blacksteel Crest Shield"] = { tags = { armour = true, default = true, karui_basetype = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 28, EnergyShield = 8, Ward = 194, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 28, EnergyShield = 8, RunicWard = 194, MovementPenalty = 0.015, }, req = { level = 80, str = 63, int = 63, }, } itemBases["Runemastered Blazon Crest Shield"] = { @@ -2179,7 +2179,7 @@ itemBases["Runemastered Blazon Crest Shield"] = { tags = { armour = true, default = true, ezomyte_basetype = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 43, EnergyShield = 13, Ward = 47, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 43, EnergyShield = 13, RunicWard = 47, MovementPenalty = 0.015, }, req = { level = 40, str = 32, int = 32, }, } itemBases["Runemastered Sigil Crest Shield"] = { @@ -2191,7 +2191,7 @@ itemBases["Runemastered Sigil Crest Shield"] = { tags = { armour = true, default = true, ezomyte_basetype = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 65, EnergyShield = 19, Ward = 12, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 65, EnergyShield = 19, RunicWard = 12, MovementPenalty = 0.015, }, req = { level = 40, str = 32, int = 32, }, } itemBases["Runemastered Emblem Crest Shield"] = { @@ -2203,7 +2203,7 @@ itemBases["Runemastered Emblem Crest Shield"] = { tags = { armour = true, default = true, maraketh_basetype = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 48, EnergyShield = 14, Ward = 34, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 48, EnergyShield = 14, RunicWard = 34, MovementPenalty = 0.015, }, req = { level = 38, str = 31, int = 31, }, } itemBases["Runemastered Jingling Crest Shield"] = { @@ -2215,7 +2215,7 @@ itemBases["Runemastered Jingling Crest Shield"] = { tags = { armour = true, default = true, maraketh_basetype = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 41, EnergyShield = 12, Ward = 45, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 41, EnergyShield = 12, RunicWard = 45, MovementPenalty = 0.015, }, req = { level = 38, str = 31, int = 31, }, } itemBases["Runemastered Omen Crest Shield"] = { @@ -2227,7 +2227,7 @@ itemBases["Runemastered Omen Crest Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, vaal_basetype = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 42, EnergyShield = 12, Ward = 82, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 42, EnergyShield = 12, RunicWard = 82, MovementPenalty = 0.015, }, req = { level = 48, str = 38, int = 38, }, } itemBases["Runemastered Intricate Crest Shield"] = { @@ -2239,7 +2239,7 @@ itemBases["Runemastered Intricate Crest Shield"] = { tags = { armour = true, default = true, runeforged = true, shield = true, str_int_armour = true, str_int_shield = true, }, implicit = "Grants Skill: Level (1-20) Raise Shield", implicitModTypes = { }, - armour = { BlockChance = 25, Armour = 78, EnergyShield = 22, Ward = 62, MovementPenalty = 0.015, }, + armour = { BlockChance = 25, Armour = 78, EnergyShield = 22, RunicWard = 62, MovementPenalty = 0.015, }, req = { level = 65, str = 50, int = 50, }, } diff --git a/src/Export/Scripts/bases.lua b/src/Export/Scripts/bases.lua index 15c135fa1..9ec3a34ab 100644 --- a/src/Export/Scripts/bases.lua +++ b/src/Export/Scripts/bases.lua @@ -291,9 +291,9 @@ directiveTable.base = function(state, args, out) out:write('EnergyShield = ', armourType.EnergyShield, ', ') itemValueSum = itemValueSum + armourType.EnergyShield end - if armourType.Ward > 0 then - out:write('Ward = ', armourType.Ward, ', ') - itemValueSum = itemValueSum + armourType.Ward + if armourType.RunicWard > 0 then + out:write('RunicWard = ', armourType.RunicWard, ', ') + itemValueSum = itemValueSum + armourType.RunicWard end if armourType.MovementPenalty ~= 0 then out:write('MovementPenalty = ', -armourType.MovementPenalty / 10000, ', ') @@ -364,7 +364,7 @@ directiveTable.base = function(state, args, out) end end out:write('},\n}\n') - + if not hidden then bases[state.type] = bases[state.type] or {} local subtype = state.subType and #state.subType and state.subType or "" diff --git a/src/Modules/ModParser.lua b/src/Modules/ModParser.lua index d982e8ae3..b05c52df1 100644 --- a/src/Modules/ModParser.lua +++ b/src/Modules/ModParser.lua @@ -238,7 +238,8 @@ local modNameList = { ["evasion"] = "Evasion", ["evasion rating"] = "Evasion", ["energy shield"] = "EnergyShield", - ["ward"] = "Ward", + ["runic ward"] = "Ward", + ["maximum runic ward"] = "Ward", ["armour and evasion"] = "ArmourAndEvasion", ["armour and evasion rating"] = "ArmourAndEvasion", ["evasion rating and armour"] = "ArmourAndEvasion", @@ -3365,7 +3366,7 @@ local specialModList = { ["all flames of chayula that you manifest are red"] = { flag("BreachFlameOnlyRed") }, ["all flames of chayula that you manifest are blue"] = { flag("BreachFlameOnlyBlue") }, ["all flames of chayula that you manifest are purple"] = { flag("BreachFlameOnlyPurple") }, - ["mana leech recovers based on other damage types damage as well as physical damage"] = { -- legacy wording + ["mana leech recovers based on other damage types damage as well as physical damage"] = { -- legacy wording flag("ManaLeechBasedOnElementalDamage"), flag("ManaLeechBasedOnChaosDamage"), }, From e90f275a0eddfce5bf034b20b4713de16155f17f Mon Sep 17 00:00:00 2001 From: Blitz54 Date: Mon, 8 Jun 2026 11:58:24 -0500 Subject: [PATCH 02/13] More Runic Ward renaming --- src/Classes/CompareTab.lua | 2 +- src/Classes/Item.lua | 8 +++++--- src/Classes/ItemsTab.lua | 2 +- src/Modules/CalcDefence.lua | 5 +++-- 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/src/Classes/CompareTab.lua b/src/Classes/CompareTab.lua index 0e7ad3000..eeb113076 100644 --- a/src/Classes/CompareTab.lua +++ b/src/Classes/CompareTab.lua @@ -3520,7 +3520,7 @@ function CompareTabClass:DrawItemExpanded(item, x, startY, colWidth, otherModMap local armour = item:GetArmourDataValue("Armour", level) local evasion = item:GetArmourDataValue("Evasion", level) local energyShield = item:GetArmourDataValue("EnergyShield", level) - local ward = item:GetArmourDataValue("Ward", level) + local ward = item:GetArmourDataValue("RunicWard", level) if armour > 0 then DrawString(x, drawY, "LEFT", fontSize, "VAR", s_format("^x7F7F7FArmour: " .. colorCodes.MAGIC .. "%d", armour)) drawY = drawY + lineHeight diff --git a/src/Classes/Item.lua b/src/Classes/Item.lua index d1d725602..dd10bf1a1 100644 --- a/src/Classes/Item.lua +++ b/src/Classes/Item.lua @@ -596,6 +596,8 @@ function ItemClass:ParseRaw(raw, rarity, highQuality) self.baseName = "Two-Toned Boots (Evasion/Energy Shield)" self.base = data.itemBases[self.baseName] end + elseif specName == "Runic Ward" then + specName = "RunicWard" end self.armourData = self.armourData or { } self.armourData[specName] = specToNumber(specVal) @@ -1797,7 +1799,7 @@ function ItemClass:BuildModListForSlotNum(baseList, slotNum) local evasionEnergyShieldBase = calcLocal(modList, "EvasionAndEnergyShield", "BASE", 0) local energyShieldBase = calcLocal(modList, "EnergyShield", "BASE", 0) + (self.base.armour.EnergyShield or 0) local armourEnergyShieldBase = calcLocal(modList, "ArmourAndEnergyShield", "BASE", 0) - local wardBase = calcLocal(modList, "Ward", "BASE", 0) + (self.base.armour.Ward or 0) + local wardBase = calcLocal(modList, "Ward", "BASE", 0) + (self.base.armour.RunicWard or 0) local evasionPerLevel = calcLocal(modList, "EvasionPerLevel", "BASE", 0) local energyShieldPerLevel = calcLocal(modList, "EnergyShieldPerLevel", "BASE", 0) local wardPerLevel = calcLocal(modList, "WardPerLevel", "BASE", 0) @@ -1817,10 +1819,10 @@ function ItemClass:BuildModListForSlotNum(baseList, slotNum) armourData.Armour = round((armourBase + armourEvasionBase + armourEnergyShieldBase) * (1 + (armourInc + armourEvasionInc + armourEnergyShieldInc + defencesInc) / 100) * (1 + (qualityScalar / 100))) armourData.Evasion = round((evasionBase + armourEvasionBase + evasionEnergyShieldBase) * (1 + (evasionInc + armourEvasionInc + evasionEnergyShieldInc + defencesInc) / 100) * (1 + (qualityScalar / 100))) armourData.EnergyShield = round((energyShieldBase + evasionEnergyShieldBase + armourEnergyShieldBase) * (1 + (energyShieldInc + armourEnergyShieldInc + evasionEnergyShieldInc + defencesInc) / 100) * (1 + (qualityScalar / 100))) - armourData.Ward = round((wardBase) * (1 + (wardInc + defencesInc) / 100) * (1 + (qualityScalar / 100))) + armourData.RunicWard = round((wardBase) * (1 + (wardInc + defencesInc) / 100) * (1 + (qualityScalar / 100))) armourData.EvasionPerLevel = evasionPerLevel * (1 + (evasionInc + armourEvasionInc + evasionEnergyShieldInc + defencesInc) / 100) * (1 + (qualityScalar / 100)) armourData.EnergyShieldPerLevel = energyShieldPerLevel * (1 + (energyShieldInc + armourEnergyShieldInc + evasionEnergyShieldInc + defencesInc) / 100) * (1 + (qualityScalar / 100)) - armourData.WardPerLevel = wardPerLevel * (1 + (wardInc + defencesInc) / 100) * (1 + (qualityScalar / 100)) + armourData.RunicWardPerLevel = wardPerLevel * (1 + (wardInc + defencesInc) / 100) * (1 + (qualityScalar / 100)) if self.base.armour.BlockChance then armourData.BlockChance = m_floor((self.base.armour.BlockChance * (1 + calcLocal(modList, "BlockChance", "INC", 0) / 100) + calcLocal(modList, "BlockChance", "BASE", 0))) diff --git a/src/Classes/ItemsTab.lua b/src/Classes/ItemsTab.lua index 94fc278c0..a735c602b 100644 --- a/src/Classes/ItemsTab.lua +++ b/src/Classes/ItemsTab.lua @@ -3324,7 +3324,7 @@ function ItemsTabClass:AddItemTooltip(tooltip, item, slot, dbMode, maxWidth) local armour = item:GetArmourDataValue("Armour", level) local evasion = item:GetArmourDataValue("Evasion", level) local energyShield = item:GetArmourDataValue("EnergyShield", level) - local ward = item:GetArmourDataValue("Ward", level) + local ward = item:GetArmourDataValue("RunicWard", level) if base.armour.BlockChance and armourData.BlockChance > 0 then tooltip:AddLine(fontSizeBig, s_format("^x7F7F7FChance to Block: %s%d%%", main:StatColor(armourData.BlockChance, base.armour.BlockChance), armourData.BlockChance), "FONTIN SC") end diff --git a/src/Modules/CalcDefence.lua b/src/Modules/CalcDefence.lua index 93cc61d98..4114a1581 100644 --- a/src/Modules/CalcDefence.lua +++ b/src/Modules/CalcDefence.lua @@ -763,7 +763,7 @@ function calcs.defence(env, actor) local item = actor.itemList[slot] local armourData = item and item.armourData if armourData then - local wardBase = item:GetArmourDataValue("Ward", actor.level) + local wardBase = item:GetArmourDataValue("RunicWard", actor.level) if wardBase > 0 then output["WardOnAllArmourItems"] = (output["WardOnAllArmourItems"] or 0) + wardBase if slot == "Body Armour" and modDB:Flag(nil, "DoubleBodyArmourDefence") then @@ -1156,7 +1156,7 @@ function calcs.defence(env, actor) local armourData = item and item.armourData if armourData then slotCfg.slotName = slot - wardBase = item:GetArmourDataValue("Ward", actor.level) + wardBase = item:GetArmourDataValue("RunicWard", actor.level) if wardBase > 0 then if slot == "Body Armour" and modDB:Flag(nil, "DoubleBodyArmourDefence") then wardBase = wardBase * 2 @@ -1304,6 +1304,7 @@ function calcs.defence(env, actor) { name = "EnergyShield", basePerSlot = {}, globalBase = 0, conversionRate = { }, mods = { "EnergyShield", "Defences" }, modsTotal = { "EnergyShieldTotal" }, defence = true }, { name = "Life", basePerSlot = {}, globalBase = 0, conversionRate = { }, mods = { "Life" }, modsTotal = { "LifeTotal" }, }, { name = "Mana", basePerSlot = {}, globalBase = 0, conversionRate = { }, mods = { "Mana" }, modsTotal = { "ManaTotal" }, }, + { name = "RunicWard", basePerSlot = {}, globalBase = 0, conversionRate = { }, mods = { "Ward", "Defences" }, modsTotal = { "RunicWardTotal" }, }, } for _, source in ipairs(resourceList) do output[source.name] = (output[source.name] or 0) From fd632eb554983d8ac89719416ecda648e6e246e4 Mon Sep 17 00:00:00 2001 From: Blitz54 Date: Mon, 8 Jun 2026 12:27:45 -0500 Subject: [PATCH 03/13] Fix armour data never printing in blue --- src/Classes/ItemsTab.lua | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Classes/ItemsTab.lua b/src/Classes/ItemsTab.lua index a735c602b..4620b81ab 100644 --- a/src/Classes/ItemsTab.lua +++ b/src/Classes/ItemsTab.lua @@ -3329,16 +3329,16 @@ function ItemsTabClass:AddItemTooltip(tooltip, item, slot, dbMode, maxWidth) tooltip:AddLine(fontSizeBig, s_format("^x7F7F7FChance to Block: %s%d%%", main:StatColor(armourData.BlockChance, base.armour.BlockChance), armourData.BlockChance), "FONTIN SC") end if armour > 0 then - tooltip:AddLine(fontSizeBig, s_format("^x7F7F7FArmour: %s%d", main:StatColor(armour, base.armour.ArmourBase), armour), "FONTIN SC") + tooltip:AddLine(fontSizeBig, s_format("^x7F7F7FArmour: %s%d", main:StatColor(armour, base.armour.Armour), armour), "FONTIN SC") end if evasion > 0 then - tooltip:AddLine(fontSizeBig, s_format("^x7F7F7FEvasion Rating: %s%d", main:StatColor(evasion, base.armour.EvasionBase), evasion), "FONTIN SC") + tooltip:AddLine(fontSizeBig, s_format("^x7F7F7FEvasion Rating: %s%d", main:StatColor(evasion, base.armour.Evasion), evasion), "FONTIN SC") end if energyShield > 0 then - tooltip:AddLine(fontSizeBig, s_format("^x7F7F7FEnergy Shield: %s%d", main:StatColor(energyShield, base.armour.EnergyShieldBase), energyShield), "FONTIN SC") + tooltip:AddLine(fontSizeBig, s_format("^x7F7F7FEnergy Shield: %s%d", main:StatColor(energyShield, base.armour.EnergyShield), energyShield), "FONTIN SC") end if ward > 0 then - tooltip:AddLine(fontSizeBig, s_format("^x7F7F7FRunic Ward: %s%d", main:StatColor(ward, base.armour.WardBase), ward), "FONTIN SC") + tooltip:AddLine(fontSizeBig, s_format("^x7F7F7FRunic Ward: %s%d", main:StatColor(ward, base.armour.RunicWard), ward), "FONTIN SC") end elseif base.flask then -- Flask-specific info From 6f5e5f32acad84e795d3051911be273f25a5b346 Mon Sep 17 00:00:00 2001 From: Blitz54 Date: Tue, 9 Jun 2026 11:39:58 -0500 Subject: [PATCH 04/13] Fix Ward scaling with armour, ev, es rune --- src/Data/ModCache.lua | 54 +++++++++++++++++++-------------------- src/Export/spec.lua | 2 +- src/Modules/ModParser.lua | 2 +- 3 files changed, 29 insertions(+), 29 deletions(-) diff --git a/src/Data/ModCache.lua b/src/Data/ModCache.lua index faaa91e91..fc0a59348 100644 --- a/src/Data/ModCache.lua +++ b/src/Data/ModCache.lua @@ -1045,8 +1045,8 @@ c["10% increased Armour"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC" c["10% increased Armour and Evasion Rating per Summoned Totem in your Presence"]={{[1]={[1]={stat="TotemsSummoned",type="PerStat"},flags=0,keywordFlags=0,name="ArmourAndEvasion",type="INC",value=10}},nil} c["10% increased Armour if you've consumed an Endurance Charge Recently"]={{[1]={[1]={limit=1,type="Multiplier",var="RemovableEnduranceCharge"},flags=0,keywordFlags=0,name="Armour",type="INC",value=10}},nil} c["10% increased Armour while Shapeshifted"]={{[1]={[1]={type="Condition",var="Shapeshifted"},flags=0,keywordFlags=0,name="Armour",type="INC",value=10}},nil} -c["10% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Defences",type="INC",value=10}},nil} -c["10% increased Armour, Evasion and Energy Shield while your Companion is in your Presence"]={{[1]={[1]={type="Condition",var="CompanionInPresence"},flags=0,keywordFlags=0,name="Defences",type="INC",value=10}},nil} +c["10% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=10},[2]={flags=0,keywordFlags=0,name="Evasion",type="INC",value=10},[3]={flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=10}},nil} +c["10% increased Armour, Evasion and Energy Shield while your Companion is in your Presence"]={{[1]={[1]={type="Condition",var="CompanionInPresence"},flags=0,keywordFlags=0,name="Armour",type="INC",value=10},[2]={[1]={type="Condition",var="CompanionInPresence"},flags=0,keywordFlags=0,name="Evasion",type="INC",value=10},[3]={[1]={type="Condition",var="CompanionInPresence"},flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=10}},nil} c["10% increased Attack Area Damage"]={{[1]={flags=513,keywordFlags=0,name="Damage",type="INC",value=10}},nil} c["10% increased Attack Damage"]={{[1]={flags=1,keywordFlags=0,name="Damage",type="INC",value=10}},nil} c["10% increased Attack Damage per Summoned Totem in your Presence"]={{[1]={[1]={stat="TotemsSummoned",type="PerStat"},flags=1,keywordFlags=0,name="Damage",type="INC",value=10}},nil} @@ -1265,8 +1265,8 @@ c["100% increased Armour"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC c["100% increased Armour Break Duration"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=100}}," Break Duration "} c["100% increased Armour and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEnergyShield",type="INC",value=100}},nil} c["100% increased Armour and Evasion"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEvasion",type="INC",value=100}},nil} -c["100% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Defences",type="INC",value=100}},nil} -c["100% increased Armour, Evasion and Energy Shield from Equipped Shield"]={{[1]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},flags=0,keywordFlags=0,name="Defences",type="INC",value=100}},nil} +c["100% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=100},[2]={flags=0,keywordFlags=0,name="Evasion",type="INC",value=100},[3]={flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=100}},nil} +c["100% increased Armour, Evasion and Energy Shield from Equipped Shield"]={{[1]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},flags=0,keywordFlags=0,name="Armour",type="INC",value=100},[2]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},flags=0,keywordFlags=0,name="Evasion",type="INC",value=100},[3]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=100}},nil} c["100% increased Arrow Speed"]={{[1]={flags=0,keywordFlags=2048,name="ProjectileSpeed",type="INC",value=100}},nil} c["100% increased Attack Damage while Surrounded"]={{[1]={[1]={type="Condition",var="Surrounded"},flags=1,keywordFlags=0,name="Damage",type="INC",value=100}},nil} c["100% increased Attack Speed"]={{[1]={flags=1,keywordFlags=0,name="Speed",type="INC",value=100}},nil} @@ -1427,7 +1427,7 @@ c["12.5 Life Regeneration per second"]={{[1]={flags=0,keywordFlags=0,name="LifeR c["120% increased Armour"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=120}},nil} c["120% increased Armour and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEnergyShield",type="INC",value=120}},nil} c["120% increased Armour and Evasion"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEvasion",type="INC",value=120}},nil} -c["120% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Defences",type="INC",value=120}},nil} +c["120% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=120},[2]={flags=0,keywordFlags=0,name="Evasion",type="INC",value=120},[3]={flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=120}},nil} c["120% increased Cold Damage"]={{[1]={flags=0,keywordFlags=0,name="ColdDamage",type="INC",value=120}},nil} c["120% increased Damage with Hits against Enemies that are on Low Life"]={{[1]={[1]={actor="enemy",type="ActorCondition",var="LowLife"},flags=0,keywordFlags=262144,name="Damage",type="INC",value=120}},nil} c["120% increased Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=120}},nil} @@ -1440,7 +1440,7 @@ c["120% increased Spell Damage"]={{[1]={flags=2,keywordFlags=0,name="Damage",typ c["125% increased Armour"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=125}},nil} c["125% increased Armour and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEnergyShield",type="INC",value=125}},nil} c["125% increased Armour and Evasion"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEvasion",type="INC",value=125}},nil} -c["125% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Defences",type="INC",value=125}},nil} +c["125% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=125},[2]={flags=0,keywordFlags=0,name="Evasion",type="INC",value=125},[3]={flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=125}},nil} c["125% increased Charges per use"]={{[1]={flags=0,keywordFlags=0,name="FlaskChargesUsed",type="INC",value=125}},nil} c["125% increased Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=125}},nil} c["125% increased Evasion Rating"]={{[1]={flags=0,keywordFlags=0,name="Evasion",type="INC",value=125}},nil} @@ -1512,7 +1512,7 @@ c["15% increased Area of Effect while you have a Totem"]={{[1]={[1]={type="Condi c["15% increased Armour"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=15}},nil} c["15% increased Armour and Evasion Rating"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEvasion",type="INC",value=15}},nil} c["15% increased Armour while stationary"]={{[1]={[1]={type="Condition",var="Stationary"},flags=0,keywordFlags=0,name="Armour",type="INC",value=15}},nil} -c["15% increased Armour, Evasion and Energy Shield from Equipped Shield"]={{[1]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},flags=0,keywordFlags=0,name="Defences",type="INC",value=15}},nil} +c["15% increased Armour, Evasion and Energy Shield from Equipped Shield"]={{[1]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},flags=0,keywordFlags=0,name="Armour",type="INC",value=15},[2]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},flags=0,keywordFlags=0,name="Evasion",type="INC",value=15},[3]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=15}},nil} c["15% increased Attack Area Damage"]={{[1]={flags=513,keywordFlags=0,name="Damage",type="INC",value=15}},nil} c["15% increased Attack Critical Hit Chance while Dual Wielding"]={{[1]={[1]={type="Condition",var="DualWielding"},flags=1,keywordFlags=0,name="CritChance",type="INC",value=15}},nil} c["15% increased Attack Damage"]={{[1]={flags=1,keywordFlags=0,name="Damage",type="INC",value=15}},nil} @@ -1645,7 +1645,7 @@ c["15% increased effect of Fully Broken Armour"]={{[1]={flags=0,keywordFlags=0,n c["15% increased maximum Energy Shield"]={{[1]={[1]={type="Global"},flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=15}},nil} c["15% increased maximum Life"]={{[1]={flags=0,keywordFlags=0,name="Life",type="INC",value=15}},nil} c["15% increased maximum Mana"]={{[1]={flags=0,keywordFlags=0,name="Mana",type="INC",value=15}},nil} -c["15% less Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Defences",type="MORE",value=-15}},nil} +c["15% less Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="MORE",value=-15},[2]={flags=0,keywordFlags=0,name="Evasion",type="MORE",value=-15},[3]={flags=0,keywordFlags=0,name="EnergyShield",type="MORE",value=-15}},nil} c["15% less maximum Life"]={{[1]={flags=0,keywordFlags=0,name="Life",type="MORE",value=-15}},nil} c["15% less maximum Mana"]={{[1]={flags=0,keywordFlags=0,name="Mana",type="MORE",value=-15}},nil} c["15% more Damage against Enemies affected by Blood Boils"]={{[1]={flags=0,keywordFlags=0,name="Damage",type="MORE",value=15}}," against Enemies affected by Blood Boils "} @@ -1681,7 +1681,7 @@ c["15% reduced maximum Mana"]={{[1]={flags=0,keywordFlags=0,name="Mana",type="IN c["150% increased Armour"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=150}},nil} c["150% increased Armour and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEnergyShield",type="INC",value=150}},nil} c["150% increased Armour and Evasion"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEvasion",type="INC",value=150}},nil} -c["150% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Defences",type="INC",value=150}},nil} +c["150% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=150},[2]={flags=0,keywordFlags=0,name="Evasion",type="INC",value=150},[3]={flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=150}},nil} c["150% increased Charges per use"]={{[1]={flags=0,keywordFlags=0,name="FlaskChargesUsed",type="INC",value=150}},nil} c["150% increased Critical Hit Chance"]={{[1]={flags=0,keywordFlags=0,name="CritChance",type="INC",value=150}},nil} c["150% increased Effect of Jewel Socket Passive Skills"]={{[1]={flags=0,keywordFlags=0,name="LocalEffect",type="INC",value=150}}," of Jewel Socket Passive Skills "} @@ -1747,7 +1747,7 @@ c["172% increased Physical Damage"]={{[1]={flags=0,keywordFlags=0,name="Physical c["175% increased Armour"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=175}},nil} c["175% increased Armour and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEnergyShield",type="INC",value=175}},nil} c["175% increased Armour and Evasion"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEvasion",type="INC",value=175}},nil} -c["175% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Defences",type="INC",value=175}},nil} +c["175% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=175},[2]={flags=0,keywordFlags=0,name="Evasion",type="INC",value=175},[3]={flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=175}},nil} c["175% increased Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=175}},nil} c["175% increased Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="EvasionAndEnergyShield",type="INC",value=175}},nil} c["175% increased Physical Damage"]={{[1]={flags=0,keywordFlags=0,name="PhysicalDamage",type="INC",value=175}},nil} @@ -1872,9 +1872,9 @@ c["20% increased Armour if you have been Hit Recently"]={{[1]={[1]={type="Condit c["20% increased Armour if you haven't been Hit Recently"]={{[1]={[1]={neg=true,type="Condition",var="BeenHitRecently"},flags=0,keywordFlags=0,name="Armour",type="INC",value=20}},nil} c["20% increased Armour if you've consumed an Endurance Charge Recently"]={{[1]={[1]={limit=1,type="Multiplier",var="RemovableEnduranceCharge"},flags=0,keywordFlags=0,name="Armour",type="INC",value=20}},nil} c["20% increased Armour while Surrounded"]={{[1]={[1]={type="Condition",var="Surrounded"},flags=0,keywordFlags=0,name="Armour",type="INC",value=20}},nil} -c["20% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Defences",type="INC",value=20}},nil} -c["20% increased Armour, Evasion and Energy Shield from Equipped Shield"]={{[1]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},flags=0,keywordFlags=0,name="Defences",type="INC",value=20}},nil} -c["20% increased Armour, Evasion and Energy Shield while your Companion is in your Presence"]={{[1]={[1]={type="Condition",var="CompanionInPresence"},flags=0,keywordFlags=0,name="Defences",type="INC",value=20}},nil} +c["20% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=20},[2]={flags=0,keywordFlags=0,name="Evasion",type="INC",value=20},[3]={flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=20}},nil} +c["20% increased Armour, Evasion and Energy Shield from Equipped Shield"]={{[1]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},flags=0,keywordFlags=0,name="Armour",type="INC",value=20},[2]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},flags=0,keywordFlags=0,name="Evasion",type="INC",value=20},[3]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=20}},nil} +c["20% increased Armour, Evasion and Energy Shield while your Companion is in your Presence"]={{[1]={[1]={type="Condition",var="CompanionInPresence"},flags=0,keywordFlags=0,name="Armour",type="INC",value=20},[2]={[1]={type="Condition",var="CompanionInPresence"},flags=0,keywordFlags=0,name="Evasion",type="INC",value=20},[3]={[1]={type="Condition",var="CompanionInPresence"},flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=20}},nil} c["20% increased Attack Damage"]={{[1]={flags=1,keywordFlags=0,name="Damage",type="INC",value=20}},nil} c["20% increased Attack Damage if you have been Heavy Stunned Recently"]={{[1]={[1]={type="Condition",var="StunnedRecently"},flags=1,keywordFlags=0,name="Damage",type="INC",value=20}},nil} c["20% increased Attack Damage while Surrounded"]={{[1]={[1]={type="Condition",var="Surrounded"},flags=1,keywordFlags=0,name="Damage",type="INC",value=20}},nil} @@ -2038,7 +2038,7 @@ c["20% increased maximum Energy Shield if you've consumed a Power Charge Recentl c["20% increased maximum Life"]={{[1]={flags=0,keywordFlags=0,name="Life",type="INC",value=20}},nil} c["20% increased maximum Mana"]={{[1]={flags=0,keywordFlags=0,name="Mana",type="INC",value=20}},nil} c["20% increased speed of Recoup Effects"]={{[1]={flags=0,keywordFlags=0,name="LocalEffect",type="INC",value=20}}," speed of Recoup s "} -c["20% less Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Defences",type="MORE",value=-20}},nil} +c["20% less Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="MORE",value=-20},[2]={flags=0,keywordFlags=0,name="Evasion",type="MORE",value=-20},[3]={flags=0,keywordFlags=0,name="EnergyShield",type="MORE",value=-20}},nil} c["20% less Attributes"]={{[1]={flags=0,keywordFlags=0,name="Str",type="MORE",value=-20},[2]={flags=0,keywordFlags=0,name="Dex",type="MORE",value=-20},[3]={flags=0,keywordFlags=0,name="Int",type="MORE",value=-20},[4]={flags=0,keywordFlags=0,name="All",type="MORE",value=-20}},nil} c["20% less Damage"]={{[1]={flags=0,keywordFlags=0,name="Damage",type="MORE",value=-20}},nil} c["20% less Damage taken if you have not been Hit Recently"]={{[1]={[1]={neg=true,type="Condition",var="BeenHitRecently"},flags=0,keywordFlags=0,name="DamageTaken",type="MORE",value=-20}},nil} @@ -2094,7 +2094,7 @@ c["200% faster start of inherent Rage loss"]={{}," start of inherent Rage loss " c["200% increased Armour"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=200}},nil} c["200% increased Armour and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEnergyShield",type="INC",value=200}},nil} c["200% increased Armour and Evasion"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEvasion",type="INC",value=200}},nil} -c["200% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Defences",type="INC",value=200}},nil} +c["200% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=200},[2]={flags=0,keywordFlags=0,name="Evasion",type="INC",value=200},[3]={flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=200}},nil} c["200% increased Critical Hit Chance"]={{[1]={flags=0,keywordFlags=0,name="CritChance",type="INC",value=200}},nil} c["200% increased Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=200}},nil} c["200% increased Evasion Rating"]={{[1]={flags=0,keywordFlags=0,name="Evasion",type="INC",value=200}},nil} @@ -2176,7 +2176,7 @@ c["25% increased Armour Break Duration"]={{[1]={flags=0,keywordFlags=0,name="Arm c["25% increased Armour Break Duration 25% increased Attack Area Damage"]={{[1]={flags=512,keywordFlags=0,name="Armour",type="INC",value=25}}," Break Duration 25% increased Attack Damage "} c["25% increased Armour and Evasion Rating"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEvasion",type="INC",value=25}},nil} c["25% increased Armour if you've Hit an Enemy with a Melee Attack Recently"]={{[1]={[1]={type="Condition",var="HitMeleeRecently"},flags=0,keywordFlags=0,name="Armour",type="INC",value=25}},nil} -c["25% increased Armour, Evasion and Energy Shield from Equipped Shield"]={{[1]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},flags=0,keywordFlags=0,name="Defences",type="INC",value=25}},nil} +c["25% increased Armour, Evasion and Energy Shield from Equipped Shield"]={{[1]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},flags=0,keywordFlags=0,name="Armour",type="INC",value=25},[2]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},flags=0,keywordFlags=0,name="Evasion",type="INC",value=25},[3]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=25}},nil} c["25% increased Attack Area Damage"]={{[1]={flags=513,keywordFlags=0,name="Damage",type="INC",value=25}},nil} c["25% increased Attack Damage"]={{[1]={flags=1,keywordFlags=0,name="Damage",type="INC",value=25}},nil} c["25% increased Attack Damage if you have been Heavy Stunned Recently"]={{[1]={[1]={type="Condition",var="StunnedRecently"},flags=1,keywordFlags=0,name="Damage",type="INC",value=25}},nil} @@ -2308,7 +2308,7 @@ c["25% of Maximum Life Converted to Energy Shield"]={{[1]={flags=0,keywordFlags= c["25% of Spell Mana Cost Converted to Life Cost"]={{[1]={[1]={skillType=2,type="SkillType"},flags=0,keywordFlags=0,name="HybridManaAndLifeCost_Life",type="BASE",value=25}},nil} c["25% reduced Armour Break taken"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=-25}}," Break taken "} c["25% reduced Armour Break taken Defend with 120% of Armour while not on Low Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=-25}}," Break taken Defend with 120% of Armour while not on Low Energy Shield "} -c["25% reduced Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Defences",type="INC",value=-25}},nil} +c["25% reduced Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=-25},[2]={flags=0,keywordFlags=0,name="Evasion",type="INC",value=-25},[3]={flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=-25}},nil} c["25% reduced Attribute Requirements"]={{[1]={flags=0,keywordFlags=0,name="StrRequirement",type="INC",value=-25},[2]={flags=0,keywordFlags=0,name="DexRequirement",type="INC",value=-25},[3]={flags=0,keywordFlags=0,name="IntRequirement",type="INC",value=-25}},nil} c["25% reduced Cast Speed"]={{[1]={flags=16,keywordFlags=0,name="Speed",type="INC",value=-25}},nil} c["25% reduced Curse Duration"]={{[1]={flags=0,keywordFlags=2,name="Duration",type="INC",value=-25}},nil} @@ -2436,7 +2436,7 @@ c["30% increased Armour and Evasion Rating while Leeching"]={{[1]={[1]={type="Co c["30% increased Armour while Bleeding"]={{[1]={[1]={type="Condition",var="Bleeding"},flags=0,keywordFlags=0,name="Armour",type="INC",value=30}},nil} c["30% increased Armour while Surrounded"]={{[1]={[1]={type="Condition",var="Surrounded"},flags=0,keywordFlags=0,name="Armour",type="INC",value=30}},nil} c["30% increased Armour while stationary"]={{[1]={[1]={type="Condition",var="Stationary"},flags=0,keywordFlags=0,name="Armour",type="INC",value=30}},nil} -c["30% increased Armour, Evasion and Energy Shield while wielding a Quarterstaff"]={{[1]={[1]={type="Condition",var="UsingStaff"},flags=0,keywordFlags=0,name="Defences",type="INC",value=30}},nil} +c["30% increased Armour, Evasion and Energy Shield while wielding a Quarterstaff"]={{[1]={[1]={type="Condition",var="UsingStaff"},flags=0,keywordFlags=0,name="Armour",type="INC",value=30},[2]={[1]={type="Condition",var="UsingStaff"},flags=0,keywordFlags=0,name="Evasion",type="INC",value=30},[3]={[1]={type="Condition",var="UsingStaff"},flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=30}},nil} c["30% increased Attack Damage against Rare or Unique Enemies"]={{[1]={[1]={actor="enemy",type="ActorCondition",var="RareOrUnique"},flags=1,keywordFlags=0,name="Damage",type="INC",value=30}},nil} c["30% increased Attack Damage if you have Shapeshifted to an Animal form Recently"]={{[1]={[1]={type="Condition",var="ShapeshiftToAnimal"},flags=1,keywordFlags=0,name="Damage",type="INC",value=30}},nil} c["30% increased Attack Damage if you've Cast a Spell Recently"]={{[1]={[1]={type="Condition",var="CastSpellRecently"},flags=1,keywordFlags=0,name="Damage",type="INC",value=30}},nil} @@ -2605,7 +2605,7 @@ c["300 Physical Damage taken on Minion Death"]={{[1]={flags=0,keywordFlags=0,nam c["300% increased Armour"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=300}},nil} c["300% increased Armour and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEnergyShield",type="INC",value=300}},nil} c["300% increased Armour and Evasion"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEvasion",type="INC",value=300}},nil} -c["300% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Defences",type="INC",value=300}},nil} +c["300% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=300},[2]={flags=0,keywordFlags=0,name="Evasion",type="INC",value=300},[3]={flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=300}},nil} c["300% increased Evasion Rating"]={{[1]={flags=0,keywordFlags=0,name="Evasion",type="INC",value=300}},nil} c["300% increased Physical Damage"]={{[1]={flags=0,keywordFlags=0,name="PhysicalDamage",type="INC",value=300}},nil} c["31 to 49 Physical Thorns damage"]={{[1]={flags=32,keywordFlags=0,name="PhysicalMin",type="BASE",value=31},[2]={flags=32,keywordFlags=0,name="PhysicalMax",type="BASE",value=49}},nil} @@ -2657,7 +2657,7 @@ c["35% reduced Effect of Non-Damaging Ailments on you"]={{[1]={flags=0,keywordFl c["35% reduced Flask Effect Duration"]={{[1]={flags=0,keywordFlags=0,name="FlaskDuration",type="INC",value=-35}},nil} c["35% reduced Presence Area of Effect"]={{[1]={flags=0,keywordFlags=0,name="PresenceArea",type="INC",value=-35}},nil} c["350% increased Armour"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=350}},nil} -c["350% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Defences",type="INC",value=350}},nil} +c["350% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=350},[2]={flags=0,keywordFlags=0,name="Evasion",type="INC",value=350},[3]={flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=350}},nil} c["350% increased Physical Damage"]={{[1]={flags=0,keywordFlags=0,name="PhysicalDamage",type="INC",value=350}},nil} c["36% increased maximum Energy Shield"]={{[1]={[1]={type="Global"},flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=36}},nil} c["37% increased Chaos Damage"]={{[1]={flags=0,keywordFlags=0,name="ChaosDamage",type="INC",value=37}},nil} @@ -2674,7 +2674,7 @@ c["4% increased Area of Effect"]={{[1]={flags=0,keywordFlags=0,name="AreaOfEffec c["4% increased Area of Effect for Attacks"]={{[1]={flags=1,keywordFlags=0,name="AreaOfEffect",type="INC",value=4}},nil} c["4% increased Area of Effect for Attacks per Enemy you've Ignited in the last 8 seconds, up to 40%"]={{[1]={flags=1,keywordFlags=0,name="AreaOfEffect",type="INC",value=4}}," per Enemy you've Ignited in the last 8 seconds, up to 40% "} c["4% increased Area of Effect of Ancestrally Boosted Attacks"]={{[1]={flags=1,keywordFlags=0,name="AncestralBoostAreaOfEffect",type="INC",value=4}},nil} -c["4% increased Armour, Evasion and Energy Shield while Channelling"]={{[1]={[1]={type="Condition",var="Channelling"},flags=0,keywordFlags=0,name="Defences",type="INC",value=4}},nil} +c["4% increased Armour, Evasion and Energy Shield while Channelling"]={{[1]={[1]={type="Condition",var="Channelling"},flags=0,keywordFlags=0,name="Armour",type="INC",value=4},[2]={[1]={type="Condition",var="Channelling"},flags=0,keywordFlags=0,name="Evasion",type="INC",value=4},[3]={[1]={type="Condition",var="Channelling"},flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=4}},nil} c["4% increased Attack Damage per 75 Item Armour and Evasion on Equipped Shield"]={{[1]={flags=1,keywordFlags=0,name="Damage",type="INC",value=4}}," per 75 Item Armour and Evasion on Equipped Shield "} c["4% increased Attack Speed"]={{[1]={flags=1,keywordFlags=0,name="Speed",type="INC",value=4}},nil} c["4% increased Attack Speed while a Rare or Unique Enemy is in your Presence"]={{[1]={[1]={actor="enemy",type="ActorCondition",varList={[1]="NearbyRareOrUniqueEnemy",[2]="RareOrUnique"}},flags=1,keywordFlags=0,name="Speed",type="INC",value=4}},nil} @@ -2848,7 +2848,7 @@ c["40% reduced Rarity of Items found"]={{[1]={flags=0,keywordFlags=0,name="LootR c["40% reduced Shock duration on you"]={{[1]={flags=0,keywordFlags=0,name="SelfShockDuration",type="INC",value=-40}},nil} c["40% reduced effect of Shock on you"]={{[1]={flags=0,keywordFlags=0,name="SelfShockEffect",type="INC",value=-40}},nil} c["400% increased Armour"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=400}},nil} -c["400% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Defences",type="INC",value=400}},nil} +c["400% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=400},[2]={flags=0,keywordFlags=0,name="Evasion",type="INC",value=400},[3]={flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=400}},nil} c["41% increased Cast Speed"]={{[1]={flags=16,keywordFlags=0,name="Speed",type="INC",value=41}},nil} c["43% increased Melee Damage against Heavy Stunned enemies"]={{[1]={[1]={actor="enemy",type="ActorCondition",var="HeavyStunned"},flags=256,keywordFlags=0,name="Damage",type="INC",value=43}},nil} c["43% reduced Effect of Chill on you"]={{[1]={flags=0,keywordFlags=0,name="SelfChillEffect",type="INC",value=-43}},nil} @@ -2891,7 +2891,7 @@ c["5% faster start of Energy Shield Recharge"]={{[1]={flags=0,keywordFlags=0,nam c["5% increased Accuracy Rating"]={{[1]={flags=0,keywordFlags=0,name="Accuracy",type="INC",value=5}},nil} c["5% increased Area Damage"]={{[1]={flags=512,keywordFlags=0,name="Damage",type="INC",value=5}},nil} c["5% increased Area of Effect"]={{[1]={flags=0,keywordFlags=0,name="AreaOfEffect",type="INC",value=5}},nil} -c["5% increased Armour, Evasion and Energy Shield from Equipped Shield per 25 Tribute"]={{[1]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},[3]={actor="parent",div=25,stat="Tribute",type="PerStat"},flags=0,keywordFlags=0,name="Defences",type="INC",value=5}},nil} +c["5% increased Armour, Evasion and Energy Shield from Equipped Shield per 25 Tribute"]={{[1]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},[3]={actor="parent",div=25,stat="Tribute",type="PerStat"},flags=0,keywordFlags=0,name="Armour",type="INC",value=5},[2]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},[3]={actor="parent",div=25,stat="Tribute",type="PerStat"},flags=0,keywordFlags=0,name="Evasion",type="INC",value=5},[3]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},[3]={actor="parent",div=25,stat="Tribute",type="PerStat"},flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=5}},nil} c["5% increased Attack Critical Hit Chance per 10 Tribute"]={{[1]={[1]={actor="parent",div=10,stat="Tribute",type="PerStat"},flags=1,keywordFlags=0,name="CritChance",type="INC",value=5}},nil} c["5% increased Attack Damage"]={{[1]={flags=1,keywordFlags=0,name="Damage",type="INC",value=5}},nil} c["5% increased Attack Damage for each Minion in your Presence, up to a maximum of 80%"]={{[1]={[1]={limit=80,limitTotal=true,type="Multiplier",var="MinionPresenceCount"},flags=1,keywordFlags=0,name="Damage",type="INC",value=5}},nil} @@ -2979,7 +2979,7 @@ c["50% increased Armour and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name=" c["50% increased Armour and Evasion"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEvasion",type="INC",value=50}},nil} c["50% increased Armour while Bleeding"]={{[1]={[1]={type="Condition",var="Bleeding"},flags=0,keywordFlags=0,name="Armour",type="INC",value=50}},nil} c["50% increased Armour while Ignited"]={{[1]={[1]={type="Condition",var="Ignited"},flags=0,keywordFlags=0,name="Armour",type="INC",value=50}},nil} -c["50% increased Armour, Evasion and Energy Shield from Equipped Shield"]={{[1]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},flags=0,keywordFlags=0,name="Defences",type="INC",value=50}},nil} +c["50% increased Armour, Evasion and Energy Shield from Equipped Shield"]={{[1]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},flags=0,keywordFlags=0,name="Armour",type="INC",value=50},[2]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},flags=0,keywordFlags=0,name="Evasion",type="INC",value=50},[3]={[1]={slotName="Weapon 2",type="SlotName"},[2]={type="Condition",var="UsingShield"},flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=50}},nil} c["50% increased Attack Damage"]={{[1]={flags=1,keywordFlags=0,name="Damage",type="INC",value=50}},nil} c["50% increased Attack Damage while moving"]={{[1]={[1]={type="Condition",var="Moving"},flags=1,keywordFlags=0,name="Damage",type="INC",value=50}},nil} c["50% increased Attack Speed"]={{[1]={flags=1,keywordFlags=0,name="Speed",type="INC",value=50}},nil} @@ -3191,7 +3191,7 @@ c["60% increased Armour"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC" c["60% increased Armour and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEnergyShield",type="INC",value=60}},nil} c["60% increased Armour and Evasion"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEvasion",type="INC",value=60}},nil} c["60% increased Armour from Equipped Body Armour"]={{[1]={[1]={slotName="Body Armour",type="SlotName"},flags=0,keywordFlags=0,name="Armour",type="INC",value=60}},nil} -c["60% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Defences",type="INC",value=60}},nil} +c["60% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=60},[2]={flags=0,keywordFlags=0,name="Evasion",type="INC",value=60},[3]={flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=60}},nil} c["60% increased Attack Damage while on Low Life"]={{[1]={[1]={type="Condition",var="LowLife"},flags=1,keywordFlags=0,name="Damage",type="INC",value=60}},nil} c["60% increased Block chance"]={{[1]={flags=0,keywordFlags=0,name="BlockChance",type="INC",value=60}},nil} c["60% increased Critical Damage Bonus"]={{[1]={flags=0,keywordFlags=0,name="CritMultiplier",type="INC",value=60}},nil} @@ -3289,7 +3289,7 @@ c["8% increased Area of Effect for Attacks"]={{[1]={flags=1,keywordFlags=0,name= c["8% increased Armour and Evasion Rating"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEvasion",type="INC",value=8}},nil} c["8% increased Armour and Evasion Rating while Leeching"]={{[1]={[1]={type="Condition",var="Leeching"},flags=0,keywordFlags=0,name="ArmourAndEvasion",type="INC",value=8}},nil} c["8% increased Armour per Endurance Charge"]={{[1]={[1]={type="Multiplier",var="EnduranceCharge"},flags=0,keywordFlags=0,name="Armour",type="INC",value=8}},nil} -c["8% increased Armour, Evasion and Energy Shield while Channelling"]={{[1]={[1]={type="Condition",var="Channelling"},flags=0,keywordFlags=0,name="Defences",type="INC",value=8}},nil} +c["8% increased Armour, Evasion and Energy Shield while Channelling"]={{[1]={[1]={type="Condition",var="Channelling"},flags=0,keywordFlags=0,name="Armour",type="INC",value=8},[2]={[1]={type="Condition",var="Channelling"},flags=0,keywordFlags=0,name="Evasion",type="INC",value=8},[3]={[1]={type="Condition",var="Channelling"},flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=8}},nil} c["8% increased Attack Area Damage"]={{[1]={flags=513,keywordFlags=0,name="Damage",type="INC",value=8}},nil} c["8% increased Attack Cold Damage"]={{[1]={flags=1,keywordFlags=0,name="ColdDamage",type="INC",value=8}},nil} c["8% increased Attack Damage"]={{[1]={flags=1,keywordFlags=0,name="Damage",type="INC",value=8}},nil} @@ -3384,7 +3384,7 @@ c["80% increased Armour and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name=" c["80% increased Armour and Evasion"]={{[1]={flags=0,keywordFlags=0,name="ArmourAndEvasion",type="INC",value=80}},nil} c["80% increased Armour and Evasion Rating when on Low Life"]={{[1]={[1]={type="Condition",var="LowLife"},flags=0,keywordFlags=0,name="ArmourAndEvasion",type="INC",value=80}},nil} c["80% increased Armour from Equipped Body Armour"]={{[1]={[1]={slotName="Body Armour",type="SlotName"},flags=0,keywordFlags=0,name="Armour",type="INC",value=80}},nil} -c["80% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Defences",type="INC",value=80}},nil} +c["80% increased Armour, Evasion and Energy Shield"]={{[1]={flags=0,keywordFlags=0,name="Armour",type="INC",value=80},[2]={flags=0,keywordFlags=0,name="Evasion",type="INC",value=80},[3]={flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=80}},nil} c["80% increased Block chance"]={{[1]={flags=0,keywordFlags=0,name="BlockChance",type="INC",value=80}},nil} c["80% increased Cold Damage with Attack Skills"]={{[1]={flags=0,keywordFlags=65536,name="ColdDamage",type="INC",value=80}},nil} c["80% increased Critical Damage Bonus with Crossbows"]={{[1]={flags=67108868,keywordFlags=0,name="CritMultiplier",type="INC",value=80}},nil} diff --git a/src/Export/spec.lua b/src/Export/spec.lua index 5e83d483d..75aa808cf 100644 --- a/src/Export/spec.lua +++ b/src/Export/spec.lua @@ -3675,7 +3675,7 @@ return { }, [6]={ list=false, - name="Ward", + name="RunicWard", refTo="", type="Int", width=150 diff --git a/src/Modules/ModParser.lua b/src/Modules/ModParser.lua index b05c52df1..b669c20de 100644 --- a/src/Modules/ModParser.lua +++ b/src/Modules/ModParser.lua @@ -247,7 +247,7 @@ local modNameList = { ["evasion rating and energy shield"] = "EvasionAndEnergyShield", ["global evasion rating and energy shield"] = { "Evasion", "EnergyShield" }, ["evasion and energy shield"] = "EvasionAndEnergyShield", - ["armour, evasion and energy shield"] = "Defences", + ["armour, evasion and energy shield"] = { "Armour", "Evasion", "EnergyShield" }, ["defences"] = "Defences", ["to evade"] = "EvadeChance", ["chance to evade"] = "EvadeChance", From 6ccec44a262a4c4bec2a7286e800722d468a2db6 Mon Sep 17 00:00:00 2001 From: Blitz54 Date: Tue, 9 Jun 2026 13:43:51 -0500 Subject: [PATCH 05/13] More fixes --- src/Modules/BuildDisplayStats.lua | 5 + src/Modules/CalcDefence.lua | 38 +- src/Modules/CalcSections.lua | 830 +++++++++++++++--------------- src/Modules/CalcSetup.lua | 1 + src/Modules/Data.lua | 16 +- src/Modules/ModParser.lua | 3 +- 6 files changed, 479 insertions(+), 414 deletions(-) diff --git a/src/Modules/BuildDisplayStats.lua b/src/Modules/BuildDisplayStats.lua index 538efd46c..f61926f96 100644 --- a/src/Modules/BuildDisplayStats.lua +++ b/src/Modules/BuildDisplayStats.lua @@ -148,6 +148,10 @@ local displayStats = { { stat = "EnergyShieldLeechGainRate", label = "ES Leech/On Hit Rate", color = colorCodes.ES, fmt = ".1f", compPercent = true }, { stat = "EnergyShieldLeechGainPerHit", label = "ES Leech/Gain per Hit", color = colorCodes.ES, fmt = ".1f", compPercent = true }, { }, + { stat = "Ward", label = "Runic Ward", fmt = "d", color = colorCodes.WARD, compPercent = true }, + { stat = "WardRegenRecovery", label = "Runic Ward Regen", fmt = ".1f", color = colorCodes.WARD, condFunc = function(v,o) return o.WardRecovery <= 0 and o.WardRegenRecovery ~= 0 end }, + { stat = "WardRegenRecovery", label = "Runic Ward Recovery", fmt = ".1f", color = colorCodes.WARD, condFunc = function(v,o) return o.WardRecovery > 0 and o.WardRegenRecovery ~= 0 end }, + { }, { stat = "Rage", label = "Rage", fmt = "d", color = colorCodes.RAGE, compPercent = true }, { stat = "RageRegenRecovery", label = "Rage Regen", fmt = ".1f", color = colorCodes.RAGE, compPercent = true }, { }, @@ -155,6 +159,7 @@ local displayStats = { { stat = "TotalNetRegen", label = "Total Net Recovery", fmt = "+.1f" }, { stat = "NetLifeRegen", label = "Net Life Recovery", fmt = "+.1f", color = colorCodes.LIFE }, { stat = "NetManaRegen", label = "Net Mana Recovery", fmt = "+.1f", color = colorCodes.MANA }, + { stat = "NetWardRegen", label = "Net Runic Ward Recovery", fmt = "+.1f", color = colorCodes.WARD }, { stat = "NetEnergyShieldRegen", label = "Net ES Recovery", fmt = "+.1f", color = colorCodes.ES }, { }, { stat = "Evasion", label = "Evasion Rating", fmt = "d", color = colorCodes.EVASION, compPercent = true }, diff --git a/src/Modules/CalcDefence.lua b/src/Modules/CalcDefence.lua index 4114a1581..a0b6cd050 100644 --- a/src/Modules/CalcDefence.lua +++ b/src/Modules/CalcDefence.lua @@ -3833,6 +3833,7 @@ function calcs.buildDefenceEstimations(env, actor) output.NetLifeRegen = output.LifeRegenRecovery output.NetManaRegen = output.ManaRegenRecovery output.NetEnergyShieldRegen = output.EnergyShieldRegenRecovery + output.NetWardRegen = output.WardRegenRecovery local totalLifeDegen = 0 local totalManaDegen = 0 local totalEnergyShieldDegen = 0 @@ -3861,12 +3862,21 @@ function calcs.buildDefenceEstimations(env, actor) { label = "Degen", key = "degen" }, }, } + breakdown.NetWardRegen = { + label = "Total Runic Ward Degen", + rowList = { }, + colList = { + { label = "Type", key = "type" }, + { label = "Degen", key = "degen" }, + }, + } end for _, damageType in ipairs(dmgTypeList) do if output[damageType.."BuildDegen"] then local energyShieldDegen = 0 local lifeDegen = 0 local manaDegen = 0 + local wardDegen = 0 local takenFromMana = output[damageType.."MindOverMatter"] + output["sharedMindOverMatter"] if output.EnergyShieldRegenRecovery > 0 then if modDB:Flag(nil, "EnergyShieldProtectsMana") then @@ -3883,6 +3893,7 @@ function calcs.buildDefenceEstimations(env, actor) end totalLifeDegen = totalLifeDegen + lifeDegen totalManaDegen = totalManaDegen + manaDegen + totalWanaDegen = totalWanaDegen + wardDegen totalEnergyShieldDegen = totalEnergyShieldDegen + energyShieldDegen if breakdown then t_insert(breakdown.NetLifeRegen.rowList, { @@ -3893,6 +3904,10 @@ function calcs.buildDefenceEstimations(env, actor) type = s_format("%s", damageType), degen = s_format("%.2f", manaDegen), }) + t_insert(breakdown.NetWardRegen.rowList, { + type = s_format("%s", damageType), + degen = s_format("%.2f", wardDegen), + }) t_insert(breakdown.NetEnergyShieldRegen.rowList, { type = s_format("%s", damageType), degen = s_format("%.2f", energyShieldDegen), @@ -3902,8 +3917,9 @@ function calcs.buildDefenceEstimations(env, actor) end output.NetLifeRegen = output.NetLifeRegen - totalLifeDegen output.NetManaRegen = output.NetManaRegen - totalManaDegen + output.NetWardRegen = output.NetWardRegen - totalWardDegen output.NetEnergyShieldRegen = output.NetEnergyShieldRegen - totalEnergyShieldDegen - output.TotalNetRegen = output.NetLifeRegen + output.NetManaRegen + output.NetEnergyShieldRegen + output.TotalNetRegen = output.NetLifeRegen + output.NetManaRegen + output.NetEnergyShieldRegen + output.NetWardRegen if breakdown then t_insert(breakdown.NetLifeRegen, s_format("%.1f ^8(total life regen)", output.LifeRegenRecovery)) t_insert(breakdown.NetLifeRegen, s_format("- %.1f ^8(total life degen)", totalLifeDegen)) @@ -3911,6 +3927,9 @@ function calcs.buildDefenceEstimations(env, actor) t_insert(breakdown.NetManaRegen, s_format("%.1f ^8(total mana regen)", output.ManaRegenRecovery)) t_insert(breakdown.NetManaRegen, s_format("- %.1f ^8(total mana degen)", totalManaDegen)) t_insert(breakdown.NetManaRegen, s_format("= %.1f", output.NetManaRegen)) + t_insert(breakdown.NetWardRegen, s_format("%.1f ^8(total ward regen)", output.WardRegenRecovery)) + t_insert(breakdown.NetWardRegen, s_format("- %.1f ^8(total ward degen)", totalWardDegen)) + t_insert(breakdown.NetWardRegen, s_format("= %.1f", output.NetWardRegen)) t_insert(breakdown.NetEnergyShieldRegen, s_format("%.1f ^8(total energy shield regen)", output.EnergyShieldRegenRecovery)) t_insert(breakdown.NetEnergyShieldRegen, s_format("- %.1f ^8(total energy shield degen)", totalEnergyShieldDegen)) t_insert(breakdown.NetEnergyShieldRegen, s_format("= %.1f", output.NetEnergyShieldRegen)) @@ -3918,6 +3937,7 @@ function calcs.buildDefenceEstimations(env, actor) s_format("Net Life Regen: %.1f", output.NetLifeRegen), s_format("+ Net Mana Regen: %.1f", output.NetManaRegen), s_format("+ Net Energy Shield Regen: %.1f", output.NetEnergyShieldRegen), + s_format("+ Net Runic Ward Regen: %.1f", output.NetWardRegen), s_format("= Total Net Regen: %.1f", output.TotalNetRegen) } end @@ -4073,9 +4093,11 @@ function calcs.buildDefenceEstimations(env, actor) else output.ComprehensiveNetLifeRegen = output.LifeRegenRecovery output.ComprehensiveNetManaRegen = output.ManaRegenRecovery + output.ComprehensiveNetWardRegen = output.WardRegenRecovery output.ComprehensiveNetEnergyShieldRegen = output.EnergyShieldRegenRecovery local totalLifeDegen = 0 local totalManaDegen = 0 + local totalWardDegen = 0 local totalEnergyShieldDegen = 0 if breakdown then breakdown.ComprehensiveNetLifeRegen = { @@ -4094,6 +4116,14 @@ function calcs.buildDefenceEstimations(env, actor) { label = "Degen", key = "degen" }, }, } + breakdown.ComprehensiveNetWardRegen = { + label = "Total Runic Ward Degen", + rowList = { }, + colList = { + { label = "Type", key = "type" }, + { label = "Degen", key = "degen" }, + }, + } breakdown.ComprehensiveNetEnergyShieldRegen = { label = "Total Energy Shield Degen", rowList = { }, @@ -4125,6 +4155,7 @@ function calcs.buildDefenceEstimations(env, actor) end totalLifeDegen = totalLifeDegen + lifeDegen totalManaDegen = totalManaDegen + manaDegen + totalWardDegen = totalWardDegen + wardDegen totalEnergyShieldDegen = totalEnergyShieldDegen + energyShieldDegen if breakdown then t_insert(breakdown.ComprehensiveNetLifeRegen.rowList, { @@ -4135,6 +4166,10 @@ function calcs.buildDefenceEstimations(env, actor) type = s_format("%s", damageType), degen = s_format("%.2f", manaDegen), }) + t_insert(breakdown.ComprehensiveNetWardRegen.rowList, { + type = s_format("%s", damageType), + degen = s_format("%.2f", wardDegen), + }) t_insert(breakdown.ComprehensiveNetEnergyShieldRegen.rowList, { type = s_format("%s", damageType), degen = s_format("%.2f", energyShieldDegen), @@ -4144,6 +4179,7 @@ function calcs.buildDefenceEstimations(env, actor) end output.ComprehensiveNetLifeRegen = output.ComprehensiveNetLifeRegen + (output.LifeRecoupRecoveryAvg or 0) - totalLifeDegen - (output.LifeLossLostAvg or 0) output.ComprehensiveNetManaRegen = output.ComprehensiveNetManaRegen + (output.ManaRecoupRecoveryAvg or 0) - totalManaDegen + output.ComprehensiveNetWardRegen = output.ComprehensiveNetWardRegen + (output.WardRecoupRecoveryAvg or 0) - totalWardDegen output.ComprehensiveNetEnergyShieldRegen = output.ComprehensiveNetEnergyShieldRegen + (output.EnergyShieldRecoupRecoveryAvg or 0) - totalEnergyShieldDegen output.ComprehensiveTotalNetRegen = output.ComprehensiveNetLifeRegen + output.ComprehensiveNetManaRegen + output.ComprehensiveNetEnergyShieldRegen if breakdown then diff --git a/src/Modules/CalcSections.lua b/src/Modules/CalcSections.lua index ac2c815f9..ce8ed6ab3 100644 --- a/src/Modules/CalcSections.lua +++ b/src/Modules/CalcSections.lua @@ -62,46 +62,46 @@ return { }, { label = "Added Min", { }, - { format = "{0:mod:1,2}", + { format = "{0:mod:1,2}", { label = "Player modifiers", modName = "PhysicalMin", modType = "BASE", cfg = "skill" }, { label = "Enemy modifiers", modName = "SelfPhysicalMin", modType = "BASE", enemy = true, cfg = "skill" }, }, - { format = "{0:mod:1,2}", + { format = "{0:mod:1,2}", { label = "Player modifiers", modName = "LightningMin", modType = "BASE", cfg = "skill" }, { label = "Enemy modifiers", modName = "SelfLightningMin", modType = "BASE", enemy = true, cfg = "skill" }, }, - { format = "{0:mod:1,2}", + { format = "{0:mod:1,2}", { label = "Player modifiers", modName = "ColdMin", modType = "BASE", cfg = "skill" }, { label = "Enemy modifiers", modName = "SelfColdMin", modType = "BASE", enemy = true, cfg = "skill" }, }, - { format = "{0:mod:1,2}", + { format = "{0:mod:1,2}", { label = "Player modifiers", modName = "FireMin", modType = "BASE", cfg = "skill" }, { label = "Enemy modifiers", modName = "SelfFireMin", modType = "BASE", enemy = true, cfg = "skill" }, }, - { format = "{0:mod:1,2}", + { format = "{0:mod:1,2}", { label = "Player modifiers", modName = "ChaosMin", modType = "BASE", cfg = "skill" }, { label = "Enemy modifiers", modName = "SelfChaosMin", modType = "BASE", enemy = true, cfg = "skill" }, }, }, { label = "Added Max", { }, - { format = "{0:mod:1,2}", + { format = "{0:mod:1,2}", { label = "Player modifiers", modName = "PhysicalMax", modType = "BASE", cfg = "skill" }, { label = "Enemy modifiers", modName = "SelfPhysicalMax", modType = "BASE", enemy = true, cfg = "skill" }, }, - { format = "{0:mod:1,2}", + { format = "{0:mod:1,2}", { label = "Player modifiers", modName = "LightningMax", modType = "BASE", cfg = "skill" }, { label = "Enemy modifiers", modName = "SelfLightningMax", modType = "BASE", enemy = true, cfg = "skill" }, }, - { format = "{0:mod:1,2}", + { format = "{0:mod:1,2}", { label = "Player modifiers", modName = "ColdMax", modType = "BASE", cfg = "skill" }, { label = "Enemy modifiers", modName = "SelfColdMax", modType = "BASE", enemy = true, cfg = "skill" }, }, - { format = "{0:mod:1,2}", + { format = "{0:mod:1,2}", { label = "Player modifiers", modName = "FireMax", modType = "BASE", cfg = "skill" }, { label = "Enemy modifiers", modName = "SelfFireMax", modType = "BASE", enemy = true, cfg = "skill" }, }, - { format = "{0:mod:1,2}", + { format = "{0:mod:1,2}", { label = "Player modifiers", modName = "ChaosMax", modType = "BASE", cfg = "skill" }, { label = "Enemy modifiers", modName = "SelfChaosMax", modType = "BASE", enemy = true, cfg = "skill" }, }, @@ -127,7 +127,7 @@ return { { }, { format = "x {3:output:PhysicalEffMult}", { breakdown = "PhysicalEffMult" }, - { label = "Enemy modifiers", modName = physicalHitTaken, enemy = true, cfg = "skill" }, + { label = "Enemy modifiers", modName = physicalHitTaken, enemy = true, cfg = "skill" }, }, { format = "x {3:output:LightningEffMult}", { breakdown = "LightningEffMult" }, @@ -152,31 +152,31 @@ return { }, { label = "Skill Hit Damage", textSize = 12, notFlag = "attack", { format = "{0:output:TotalMin} to {0:output:TotalMax}", }, - { format = "{0:output:PhysicalMin} to {0:output:PhysicalMax}", - { breakdown = "Physical" }, - { label = "Conversions", cfg = "skill", modName = physicalConvert }, + { format = "{0:output:PhysicalMin} to {0:output:PhysicalMax}", + { breakdown = "Physical" }, + { label = "Conversions", cfg = "skill", modName = physicalConvert }, }, - { format = "{0:output:LightningMin} to {0:output:LightningMax}", - { breakdown = "Lightning" }, - { label = "Conversions", cfg = "skill", modName = lightningConvert }, + { format = "{0:output:LightningMin} to {0:output:LightningMax}", + { breakdown = "Lightning" }, + { label = "Conversions", cfg = "skill", modName = lightningConvert }, }, - { format = "{0:output:ColdMin} to {0:output:ColdMax}", - { breakdown = "Cold" }, - { label = "Conversions", cfg = "skill", modName = coldConvert }, + { format = "{0:output:ColdMin} to {0:output:ColdMax}", + { breakdown = "Cold" }, + { label = "Conversions", cfg = "skill", modName = coldConvert }, }, - { format = "{0:output:FireMin} to {0:output:FireMax}", - { breakdown = "Fire" }, - { label = "Conversions", cfg = "skill", modName = fireConvert }, + { format = "{0:output:FireMin} to {0:output:FireMax}", + { breakdown = "Fire" }, + { label = "Conversions", cfg = "skill", modName = fireConvert }, }, - { format = "{0:output:ChaosMin} to {0:output:ChaosMax}", - { breakdown = "Chaos" }, - { label = "Conversions", cfg = "skill", modName = chaosConvert }, + { format = "{0:output:ChaosMin} to {0:output:ChaosMax}", + { breakdown = "Chaos" }, + { label = "Conversions", cfg = "skill", modName = chaosConvert }, }, }, { label = "Skill Average Hit", notFlag = "attack", { format = "{1:output:AverageHit}", { breakdown = "AverageHit" }, }, }, - { label = "Skill PvP Average Hit", flag = "notAttackPvP", { format = "{1:output:PvpAverageHit}", { breakdown = "PvpAverageHit" }, - { label = "Tvalue Override (ms)", modName = "MultiplierPvpTvalueOverride" }, - { label = "PvP Multiplier", cfg = "skill", modName = "PvpDamageMultiplier" }, + { label = "Skill PvP Average Hit", flag = "notAttackPvP", { format = "{1:output:PvpAverageHit}", { breakdown = "PvpAverageHit" }, + { label = "Tvalue Override (ms)", modName = "MultiplierPvpTvalueOverride" }, + { label = "PvP Multiplier", cfg = "skill", modName = "PvpDamageMultiplier" }, }, }, -- Main Hand Hit Damage { label = "MH Total Increased", bgCol = colorCodes.MAINHANDBG, flag = "weapon1Attack", @@ -199,7 +199,7 @@ return { { }, { format = "x {3:output:MainHand.PhysicalEffMult}", { breakdown = "MainHand.PhysicalEffMult" }, - { label = "Enemy modifiers", modName = physicalHitTaken, enemy = true, cfg = "weapon1" }, + { label = "Enemy modifiers", modName = physicalHitTaken, enemy = true, cfg = "weapon1" }, }, { format = "x {3:output:MainHand.LightningEffMult}", { breakdown = "MainHand.LightningEffMult" }, @@ -224,32 +224,32 @@ return { }, { label = "MH Hit Damage", bgCol = colorCodes.MAINHANDBG, textSize = 12, flag = "weapon1Attack", { format = "{0:output:MainHand.TotalMin} to {0:output:MainHand.TotalMax}", }, - { format = "{0:output:MainHand.PhysicalMin} to {0:output:MainHand.PhysicalMax}", - { breakdown = "MainHand.Physical" }, + { format = "{0:output:MainHand.PhysicalMin} to {0:output:MainHand.PhysicalMax}", + { breakdown = "MainHand.Physical" }, { label = "Conversions", cfg = "weapon1", modName = physicalConvert }, }, - { format = "{0:output:MainHand.LightningMin} to {0:output:MainHand.LightningMax}", - { breakdown = "MainHand.Lightning" }, - { label = "Conversions", cfg = "weapon1", modName = lightningConvert }, + { format = "{0:output:MainHand.LightningMin} to {0:output:MainHand.LightningMax}", + { breakdown = "MainHand.Lightning" }, + { label = "Conversions", cfg = "weapon1", modName = lightningConvert }, }, - { format = "{0:output:MainHand.ColdMin} to {0:output:MainHand.ColdMax}", - { breakdown = "MainHand.Cold" }, - { label = "Conversions", cfg = "weapon1", modName = coldConvert }, + { format = "{0:output:MainHand.ColdMin} to {0:output:MainHand.ColdMax}", + { breakdown = "MainHand.Cold" }, + { label = "Conversions", cfg = "weapon1", modName = coldConvert }, }, - { format = "{0:output:MainHand.FireMin} to {0:output:MainHand.FireMax}", - { breakdown = "MainHand.Fire" }, - { label = "Conversions", cfg = "weapon1", modName = fireConvert }, + { format = "{0:output:MainHand.FireMin} to {0:output:MainHand.FireMax}", + { breakdown = "MainHand.Fire" }, + { label = "Conversions", cfg = "weapon1", modName = fireConvert }, }, - { format = "{0:output:MainHand.ChaosMin} to {0:output:MainHand.ChaosMax}", - { breakdown = "MainHand.Chaos" }, + { format = "{0:output:MainHand.ChaosMin} to {0:output:MainHand.ChaosMax}", + { breakdown = "MainHand.Chaos" }, { label = "Conversions", cfg = "weapon1", modName = chaosConvert }, }, }, { label = "MH Average Hit", bgCol = colorCodes.MAINHANDBG, flag = "weapon1Attack", { format = "{1:output:MainHand.AverageHit}", { breakdown = "MainHand.AverageHit" }, }, }, - { label = "MH PvP Average Hit", bgCol = colorCodes.MAINHANDBG, flag = "weapon1AttackPvP", { format = "{1:output:MainHand.PvpAverageHit}", { breakdown = "MainHand.PvpAverageHit" }, - { label = "Tvalue Override (ms)", modName = "MultiplierPvpTvalueOverride" }, - { label = "PvP Multiplier", cfg = "skill", modName = "PvpDamageMultiplier" }, - }, }, + { label = "MH PvP Average Hit", bgCol = colorCodes.MAINHANDBG, flag = "weapon1AttackPvP", { format = "{1:output:MainHand.PvpAverageHit}", { breakdown = "MainHand.PvpAverageHit" }, + { label = "Tvalue Override (ms)", modName = "MultiplierPvpTvalueOverride" }, + { label = "PvP Multiplier", cfg = "skill", modName = "PvpDamageMultiplier" }, + }, }, -- Off Hand Hit Damage { label = "OH Total Increased", bgCol = colorCodes.OFFHANDBG, flag = "weapon2Attack", { format = "{0:mod:1}%", { modName = "Damage", modType = "INC", cfg = "weapon2" }, }, @@ -271,7 +271,7 @@ return { { }, { format = "x {3:output:OffHand.PhysicalEffMult}", { breakdown = "OffHand.PhysicalEffMult" }, - { label = "Enemy modifiers", modName = physicalHitTaken, enemy = true, cfg = "weapon2" }, + { label = "Enemy modifiers", modName = physicalHitTaken, enemy = true, cfg = "weapon2" }, }, { format = "x {3:output:OffHand.LightningEffMult}", { breakdown = "OffHand.LightningEffMult" }, @@ -296,61 +296,61 @@ return { }, { label = "OH Hit Damage", bgCol = colorCodes.OFFHANDBG, textSize = 12, flag = "weapon2Attack", { format = "{0:output:OffHand.TotalMin} to {0:output:OffHand.TotalMax}", }, - { format = "{0:output:OffHand.PhysicalMin} to {0:output:OffHand.PhysicalMax}", - { breakdown = "OffHand.Physical" }, + { format = "{0:output:OffHand.PhysicalMin} to {0:output:OffHand.PhysicalMax}", + { breakdown = "OffHand.Physical" }, { label = "Conversions", cfg = "weapon2", modName = physicalConvert }, }, - { format = "{0:output:OffHand.LightningMin} to {0:output:OffHand.LightningMax}", - { breakdown = "OffHand.Lightning" }, - { label = "Conversions", cfg = "weapon2", modName = lightningConvert }, + { format = "{0:output:OffHand.LightningMin} to {0:output:OffHand.LightningMax}", + { breakdown = "OffHand.Lightning" }, + { label = "Conversions", cfg = "weapon2", modName = lightningConvert }, }, - { format = "{0:output:OffHand.ColdMin} to {0:output:OffHand.ColdMax}", - { breakdown = "OffHand.Cold" }, - { label = "Conversions", cfg = "weapon2", modName = coldConvert }, + { format = "{0:output:OffHand.ColdMin} to {0:output:OffHand.ColdMax}", + { breakdown = "OffHand.Cold" }, + { label = "Conversions", cfg = "weapon2", modName = coldConvert }, }, - { format = "{0:output:OffHand.FireMin} to {0:output:OffHand.FireMax}", - { breakdown = "OffHand.Fire" }, - { label = "Conversions", cfg = "weapon2", modName = fireConvert }, + { format = "{0:output:OffHand.FireMin} to {0:output:OffHand.FireMax}", + { breakdown = "OffHand.Fire" }, + { label = "Conversions", cfg = "weapon2", modName = fireConvert }, }, - { format = "{0:output:OffHand.ChaosMin} to {0:output:OffHand.ChaosMax}", + { format = "{0:output:OffHand.ChaosMin} to {0:output:OffHand.ChaosMax}", { breakdown = "OffHand.Chaos" }, - { label = "Conversions", cfg = "weapon2", modName = chaosConvert }, + { label = "Conversions", cfg = "weapon2", modName = chaosConvert }, }, }, { label = "OH Average Hit", bgCol = colorCodes.OFFHANDBG, flag = "weapon2Attack", { format = "{1:output:OffHand.AverageHit}", { breakdown = "OffHand.AverageHit" }, }, }, - { label = "OH PvP Average Hit", bgCol = colorCodes.OFFHANDBG, flag = "weapon2AttackPvP", { format = "{1:output:OffHand.PvpAverageHit}", { breakdown = "OffHand.PvpAverageHit" }, - { label = "Tvalue Override (ms)", modName = "MultiplierPvpTvalueOverride" }, - { label = "PvP Multiplier", cfg = "skill", modName = "PvpDamageMultiplier" }, + { label = "OH PvP Average Hit", bgCol = colorCodes.OFFHANDBG, flag = "weapon2AttackPvP", { format = "{1:output:OffHand.PvpAverageHit}", { breakdown = "OffHand.PvpAverageHit" }, + { label = "Tvalue Override (ms)", modName = "MultiplierPvpTvalueOverride" }, + { label = "PvP Multiplier", cfg = "skill", modName = "PvpDamageMultiplier" }, }, }, - { label = "Average Damage", flag = "attack", { format = "{1:output:AverageDamage}", + { label = "Average Damage", flag = "attack", { format = "{1:output:AverageDamage}", { breakdown = "MainHand.AverageDamage" }, { breakdown = "OffHand.AverageDamage" }, { breakdown = "AverageDamage" }, }, }, { label = "Chance to Hit", haveOutput = "enemyHasSpellBlock", { format = "{0:output:HitChance}%", - { breakdown = "HitChance" }, + { breakdown = "HitChance" }, { label = "Enemy Block", modName = { "BlockChance" }, enemy = true }, { label = "Block Chance Reduction", cfg = "skill", modName = { "reduceEnemyBlock" } }, }, }, - { label = "Average Damage", haveOutput = "enemyHasSpellBlock", { format = "{1:output:AverageDamage}", + { label = "Average Damage", haveOutput = "enemyHasSpellBlock", { format = "{1:output:AverageDamage}", { breakdown = "AverageDamage" }, }, }, { label = "Chance to Explode", haveOutput = "ExplodeChance", { format = "{0:output:ExplodeChance}%" }, }, { label = "Average Damage", haveOutput = "ExplodeChance", { format = "{1:output:AverageDamage}", { breakdown = "AverageDamage" }, }, }, - { label = "PvP Average Dmg", flag = "attackPvP", { format = "{1:output:PvpAverageDamage}", + { label = "PvP Average Dmg", flag = "attackPvP", { format = "{1:output:PvpAverageDamage}", { breakdown = "MainHand.PvpAverageDamage" }, { breakdown = "OffHand.PvpAverageDamage" }, { breakdown = "PvpAverageDamage" }, - { label = "Tvalue Override (ms)", modName = "MultiplierPvpTvalueOverride" }, - { label = "PvP Multiplier", cfg = "skill", modName = "PvpDamageMultiplier" }, + { label = "Tvalue Override (ms)", modName = "MultiplierPvpTvalueOverride" }, + { label = "PvP Multiplier", cfg = "skill", modName = "PvpDamageMultiplier" }, }, }, { label = "Skill DPS", flag = "notAverage", notFlag = "triggered", { format = "{1:output:TotalDPS}", { breakdown = "TotalDPS" }, { label = "DPS Multiplier", modName = "DPS", cfg = "skill" }, }, }, - { label = "Skill PvP DPS", flag = "notAveragePvP", { format = "{1:output:PvpTotalDPS}", { breakdown = "PvpTotalDPS" }, - { label = "Tvalue Override (ms)", modName = "MultiplierPvpTvalueOverride" }, - { label = "PvP Multiplier", cfg = "skill", modName = "PvpDamageMultiplier" }, - { label = "DPS Multiplier", modName = "DPS" }, + { label = "Skill PvP DPS", flag = "notAveragePvP", { format = "{1:output:PvpTotalDPS}", { breakdown = "PvpTotalDPS" }, + { label = "Tvalue Override (ms)", modName = "MultiplierPvpTvalueOverride" }, + { label = "PvP Multiplier", cfg = "skill", modName = "PvpDamageMultiplier" }, + { label = "DPS Multiplier", modName = "DPS" }, }, }, { label = "Skill DPS", flag = "triggered", { format = "{1:output:TotalDPS}", { breakdown = "TotalDPS" }, { label = "DPS Multiplier", modName = "DPS", cfg = "skill" }, }, }, } } @@ -366,21 +366,21 @@ return { { format = "# of Empowered" }, { format = "Max 1-Hit Impact"}, }, - { label = "Seismic Cry", haveOutput = "SeismicUpTimeRatio", + { label = "Seismic Cry", haveOutput = "SeismicUpTimeRatio", { format = "{2:output:SeismicHitEffect}", { breakdown = "SeismicHitEffect"}, }, { format = "{2:output:SeismicAvgDmg}", { breakdown = "SeismicAvgDmg"}, }, { format = "{0:output:SeismicUpTimeRatio}%", { breakdown = "SeismicUpTimeRatio" }, }, { format = "{0:output:SeismicExertsCount}" }, { format = "{2:output:SeismicMaxHitEffect}" }, }, - { label = "Intimidating Cry", haveOutput = "IntimidatingUpTimeRatio", + { label = "Intimidating Cry", haveOutput = "IntimidatingUpTimeRatio", { format = "{2:output:IntimidatingHitEffect}", { breakdown = "IntimidatingHitEffect"}, }, { format = "{2:output:IntimidatingAvgDmg}", { breakdown = "IntimidatingAvgDmg"}, }, { format = "{0:output:IntimidatingUpTimeRatio}%", { breakdown = "IntimidatingUpTimeRatio" }, }, { format = "{0:output:IntimidatingExertsCount}" }, { format = "{2:output:IntimidatingMaxHitEffect}" }, }, - { label = "Rallying Cry", haveOutput = "RallyingUpTimeRatio", + { label = "Rallying Cry", haveOutput = "RallyingUpTimeRatio", { format = "{2:output:RallyingHitEffect}", { breakdown = "RallyingHitEffect"}, }, { format = "{2:output:RallyingAvgDmg}", { breakdown = "RallyingAvgDmg"}, }, { format = "{0:output:RallyingUpTimeRatio}%", { breakdown = "RallyingUpTimeRatio" }, }, @@ -394,14 +394,14 @@ return { { format = "{2:output:InfernalEmpoweredCount}" , { breakdown = "InfernalEmpoweringWarcryCount" },}, { format = "" }, }, - { label = "Battlemage's Cry", haveOutput = "BattlemageUpTimeRatio", + { label = "Battlemage's Cry", haveOutput = "BattlemageUpTimeRatio", { format = "" }, { format = "" }, { format = "{0:output:BattlemageUpTimeRatio}%", { breakdown = "BattlemageUpTimeRatio" }, }, { format = "{0:output:BattleCryExertsCount}" }, { format = "" }, }, - { label = "Ancestral Cry", haveOutput = "AncestralUpTimeRatio", + { label = "Ancestral Cry", haveOutput = "AncestralUpTimeRatio", { format = "" }, { format = "" }, { format = "{0:output:AncestralUpTimeRatio}%", { breakdown = "AncestralUpTimeRatio" }, }, @@ -485,7 +485,7 @@ return { { }, { format = "x {3:output:PhysicalDotEffMult}", { breakdown = "PhysicalDotEffMult" }, - { label = "Enemy modifiers", modName = { "DamageTaken", "DamageTakenOverTime", "PhysicalDamageTaken", "PhysicalDamageTakenOverTime", "PhysicalDamageReduction" }, enemy = true }, + { label = "Enemy modifiers", modName = { "DamageTaken", "DamageTakenOverTime", "PhysicalDamageTaken", "PhysicalDamageTakenOverTime", "PhysicalDamageReduction" }, enemy = true }, }, { format = "x {3:output:LightningDotEffMult}", { breakdown = "LightningDotEffMult" }, @@ -551,58 +551,58 @@ return { extra = "{2:output:CritChance}% x{2:output:CritMultiplier}", flag = "hit", -- Skill - { label = "Inc. Crit Chance", notFlag = "attack", { format = "{0:mod:1,2}%", - { label = "Player modifiers", modName = "CritChance", modType = "INC", cfg = "skill" }, - { label = "Enemy modifiers", modName = "SelfCritChance", modType = "INC", enemy = true }, - }, }, - { label = "Crit Chance", notFlag = "attack", { format = "{2:output:CritChance}%", - { breakdown = "CritChance" }, - { label = "Player modifiers", modName = {"CritChance", "SpellSkillsCannotDealCriticalStrikesExceptOnFinalRepeat", "SpellSkillsAlwaysDealCriticalStrikesOnFinalRepeat", "InevitableCriticalHits"}, cfg = "skill" }, - { label = "Enemy modifiers", modName = "SelfCritChance", enemy = true }, - }, }, - { label = "Crit Multiplier", notFlag = "attack", { format = "x {2:output:CritMultiplier}", - { breakdown = "CritMultiplier" }, - { label = "Player modifiers", modName = "CritMultiplier", cfg = "skill" }, - { label = "Enemy modifiers", modName = "SelfCritMultiplier", enemy = true }, + { label = "Inc. Crit Chance", notFlag = "attack", { format = "{0:mod:1,2}%", + { label = "Player modifiers", modName = "CritChance", modType = "INC", cfg = "skill" }, + { label = "Enemy modifiers", modName = "SelfCritChance", modType = "INC", enemy = true }, + }, }, + { label = "Crit Chance", notFlag = "attack", { format = "{2:output:CritChance}%", + { breakdown = "CritChance" }, + { label = "Player modifiers", modName = {"CritChance", "SpellSkillsCannotDealCriticalStrikesExceptOnFinalRepeat", "SpellSkillsAlwaysDealCriticalStrikesOnFinalRepeat", "InevitableCriticalHits"}, cfg = "skill" }, + { label = "Enemy modifiers", modName = "SelfCritChance", enemy = true }, + }, }, + { label = "Crit Multiplier", notFlag = "attack", { format = "x {2:output:CritMultiplier}", + { breakdown = "CritMultiplier" }, + { label = "Player modifiers", modName = "CritMultiplier", cfg = "skill" }, + { label = "Enemy modifiers", modName = "SelfCritMultiplier", enemy = true }, }, }, { label = "Crit Effect Mod", notFlag = "attack", { format = "x {3:output:CritEffect}", { breakdown = "CritEffect" }, }, }, -- Main Hand - { label = "MH Inc. Crit Chance", bgCol = colorCodes.MAINHANDBG, flag = "weapon1Attack", { format = "{0:mod:1,2}%", - { label = "Player modifiers", modName = "CritChance", modType = "INC", cfg = "weapon1" }, - { label = "Enemy modifiers", modName = "SelfCritChance", modType = "INC", enemy = true }, + { label = "MH Inc. Crit Chance", bgCol = colorCodes.MAINHANDBG, flag = "weapon1Attack", { format = "{0:mod:1,2}%", + { label = "Player modifiers", modName = "CritChance", modType = "INC", cfg = "weapon1" }, + { label = "Enemy modifiers", modName = "SelfCritChance", modType = "INC", enemy = true }, }, }, - { label = "MH Crit Chance", bgCol = colorCodes.MAINHANDBG, flag = "weapon1Attack", { format = "{2:output:MainHand.CritChance}%", - { breakdown = "MainHand.CritChance" }, - { label = "Player modifiers", modName = { "CritChance", "WeaponBaseCritChance", "MainHandCritIsEqualToParent", "MainHandCritIsEqualToPartyMember", "AttackCritIsEqualToParentMainHand", "InevitableCriticalHits" }, cfg = "weapon1" }, - { label = "Enemy modifiers", modName = "SelfCritChance", enemy = true }, + { label = "MH Crit Chance", bgCol = colorCodes.MAINHANDBG, flag = "weapon1Attack", { format = "{2:output:MainHand.CritChance}%", + { breakdown = "MainHand.CritChance" }, + { label = "Player modifiers", modName = { "CritChance", "WeaponBaseCritChance", "MainHandCritIsEqualToParent", "MainHandCritIsEqualToPartyMember", "AttackCritIsEqualToParentMainHand", "InevitableCriticalHits" }, cfg = "weapon1" }, + { label = "Enemy modifiers", modName = "SelfCritChance", enemy = true }, }, }, - { label = "MH Crit Bifurcates", bgCol = colorCodes.MAINHANDBG, haveOutput = "MainHand.CritBifurcates", flag = "weapon1Attack", { format = "{2:output:MainHand.CritBifurcates}%", - { breakdown = "MainHand.CritBifurcates" }, + { label = "MH Crit Bifurcates", bgCol = colorCodes.MAINHANDBG, haveOutput = "MainHand.CritBifurcates", flag = "weapon1Attack", { format = "{2:output:MainHand.CritBifurcates}%", + { breakdown = "MainHand.CritBifurcates" }, { label = "Player modifiers", modName = "BifurcateCrit", cfg = "weapon1" }, }, }, - { label = "MH Crit Multiplier", bgCol = colorCodes.MAINHANDBG, flag = "weapon1Attack", { format = "x {2:output:MainHand.CritMultiplier}", - { breakdown = "MainHand.CritMultiplier" }, - { label = "Player modifiers", modName = "CritMultiplier", cfg = "weapon1" }, + { label = "MH Crit Multiplier", bgCol = colorCodes.MAINHANDBG, flag = "weapon1Attack", { format = "x {2:output:MainHand.CritMultiplier}", + { breakdown = "MainHand.CritMultiplier" }, + { label = "Player modifiers", modName = "CritMultiplier", cfg = "weapon1" }, { label = "Enemy modifiers", modName = "SelfCritMultiplier", enemy = true }, }, }, { label = "MH Crit Effect Mod", bgCol = colorCodes.MAINHANDBG, flag = "weapon1Attack", { format = "x {3:output:MainHand.CritEffect}", { breakdown = "MainHand.CritEffect" }, }, }, -- Off Hand - { label = "OH Inc. Crit Chance", bgCol = colorCodes.OFFHANDBG, flag = "weapon2Attack", { format = "{0:mod:1,2}%", - { label = "Player modifiers", modName = "CritChance", modType = "INC", cfg = "weapon2" }, - { label = "Enemy modifiers", modName = "SelfCritChance", modType = "INC", enemy = true }, + { label = "OH Inc. Crit Chance", bgCol = colorCodes.OFFHANDBG, flag = "weapon2Attack", { format = "{0:mod:1,2}%", + { label = "Player modifiers", modName = "CritChance", modType = "INC", cfg = "weapon2" }, + { label = "Enemy modifiers", modName = "SelfCritChance", modType = "INC", enemy = true }, }, }, - { label = "OH Crit Chance", bgCol = colorCodes.OFFHANDBG, flag = "weapon2Attack", { format = "{2:output:OffHand.CritChance}%", - { breakdown = "OffHand.CritChance" }, + { label = "OH Crit Chance", bgCol = colorCodes.OFFHANDBG, flag = "weapon2Attack", { format = "{2:output:OffHand.CritChance}%", + { breakdown = "OffHand.CritChance" }, { label = "Player modifiers", modName = { "CritChance", "WeaponBaseCritChance", "AttackCritIsEqualToParentMainHand", "InevitableCriticalHits" }, cfg = "weapon2" }, - { label = "Enemy modifiers", modName = "SelfCritChance", enemy = true }, + { label = "Enemy modifiers", modName = "SelfCritChance", enemy = true }, }, }, - { label = "OH Crit Bifurcates", bgCol = colorCodes.OFFHANDBG, haveOutput = "OffHand.CritBifurcates", flag = "weapon2Attack", { format = "{2:output:OffHand.CritBifurcates}%", - { breakdown = "OffHand.CritBifurcates" }, + { label = "OH Crit Bifurcates", bgCol = colorCodes.OFFHANDBG, haveOutput = "OffHand.CritBifurcates", flag = "weapon2Attack", { format = "{2:output:OffHand.CritBifurcates}%", + { breakdown = "OffHand.CritBifurcates" }, { label = "Player modifiers", modName = "BifurcateCrit", cfg = "weapon2" }, }, }, - { label = "OH Crit Multiplier", bgCol = colorCodes.OFFHANDBG, flag = "weapon2Attack", { format = "x {2:output:OffHand.CritMultiplier}", - { breakdown = "OffHand.CritMultiplier" }, - { label = "Player modifiers", modName = "CritMultiplier", cfg = "weapon2" }, + { label = "OH Crit Multiplier", bgCol = colorCodes.OFFHANDBG, flag = "weapon2Attack", { format = "x {2:output:OffHand.CritMultiplier}", + { breakdown = "OffHand.CritMultiplier" }, + { label = "Player modifiers", modName = "CritMultiplier", cfg = "weapon2" }, { label = "Enemy modifiers", modName = "SelfCritMultiplier", enemy = true }, }, }, { label = "OH Crit Effect Mod", bgCol = colorCodes.OFFHANDBG, flag = "weapon2Attack", { format = "x {3:output:OffHand.CritEffect}", { breakdown = "OffHand.CritEffect" }, }, }, @@ -679,8 +679,8 @@ return { { modName = { "QuantityMultiplier" }, cfg = "skill" }, }, }, { label = "Skill Cooldown", haveOutput = "Cooldown", { format = "{3:output:EffectiveCooldown}s", - { breakdown = "Cooldown" }, - { breakdown = "EffectiveCooldown" }, + { breakdown = "Cooldown" }, + { breakdown = "EffectiveCooldown" }, { modName = {"CooldownRecovery", "CooldownRecoveryFromTemporalis", "CooldownChanceNotConsume"}, cfg = "skill" }, }, }, { label = "Stored Uses", haveOutput = "StoredUses", { format = "{output:StoredUses}", @@ -688,7 +688,7 @@ return { { modName = "AdditionalCooldownUses", cfg = "skill" }, }, }, { label = "Duration Mod", flag = "duration", { format = "x {4:output:DurationMod}", - { breakdown = "DurationMod" }, + { breakdown = "DurationMod" }, { breakdown = "SecondaryDurationMod" }, { breakdown = "TertiaryDurationMod" }, { modName = { "Duration", "PrimaryDuration", "SecondaryDuration", "TertiaryDuration", "DamagingAilmentDuration" }, cfg = "skill" }, @@ -714,9 +714,9 @@ return { { label = "Fork Count", haveOutput = "ForkCountMax", { format = "{output:ForkCountString}", { modName = { "CannotFork", "ForkCountMax" }, cfg = "skill" }, }, }, { label = "Max Chain Count", haveOutput = "ChainMax", { format = "{output:ChainMaxString}", { modName = { "CannotChain", "ChainCountMax", "ChainChance", "NoAdditionalChains" }, cfg = "skill" }, }, }, { label = "Terrain Chain", haveOutput = "TerrainChain", { format = "{output:TerrainChain}%", { modName = { "TerrainChainChance", "NoAdditionalChains" }, cfg = "skill" }, }, }, - { label = "Split Count", haveOutput = "SplitCountString", { format = "{output:SplitCountString}", + { label = "Split Count", haveOutput = "SplitCountString", { format = "{output:SplitCountString}", { label = "Player modifiers", modName = { "CannotSplit", "SplitCount", "AdditionalProjectilesAddSplitsInstead", "AdditionalChainsAddSplitsInstead" }, cfg = "skill" }, - { label = "Enemy modifiers", modName = { "SelfSplitCount" }, enemy = true, cfg = "skill" }, + { label = "Enemy modifiers", modName = { "SelfSplitCount" }, enemy = true, cfg = "skill" }, }, }, { label = "Proj. Speed Mod", flag = "projectile", { format = "x {2:output:ProjectileSpeedMod}", { breakdown = "ProjectileSpeedMod" }, @@ -747,7 +747,7 @@ return { { breakdown = "CurseEffectMod" }, { modName = "CurseEffect", cfg = "skill" }, }, }, - { label = "Curse Delay", haveOutput = "CurseDelayBase", { format = "{3:output:CurseDelay}s", + { label = "Curse Delay", haveOutput = "CurseDelayBase", { format = "{3:output:CurseDelay}s", { breakdown = "CurseDelay" }, { modName = { "CurseDelay" }, cfg = "skill" }, { modName = { "CurseActivation" }, cfg = "skill" }, @@ -795,8 +795,8 @@ return { { label = "Mana Leech/Flame", haveOutput = "BreachFlameManaLeech", { format = "{0:output:BreachFlameManaLeech}%", { breakdown = "BreachFlameManaLeech" }, }, }, - { label = "Area of Effect Mod", haveOutput = "AreaOfEffectMod", { format = "x {2:output:AreaOfEffectMod}", - { breakdown = "AreaOfEffectMod" }, + { label = "Area of Effect Mod", haveOutput = "AreaOfEffectMod", { format = "x {2:output:AreaOfEffectMod}", + { breakdown = "AreaOfEffectMod" }, { modName = "AreaOfEffect", cfg = "skill" }, }, }, { label = "Radius", haveOutput = "AreaOfEffectRadius", { format = "{1:output:AreaOfEffectRadiusMetres}m", { breakdown = "AreaOfEffectRadius" }, }, }, @@ -810,7 +810,7 @@ return { }, }, { label = "Weapon Range", haveOutput = "WeaponRange", { format = "{1:output:WeaponRangeMetre}m", { breakdown = "WeaponRange" }, }, }, { label = "Strike Targets", haveOutput = "StrikeTargets", { format = "{1:output:StrikeTargets}", - { breakdown = "StrikeTargets" }, + { breakdown = "StrikeTargets" }, { modName = "AdditionalStrikeTarget", cfg = "skill" } }, }, { label = "Attachment Range", flag = "brand", { format = "{1:output:BrandAttachmentRangeMetre}m", @@ -826,7 +826,7 @@ return { }, }, { label = "Wave Pulse Rate", haveOutput = "WavePulseRate", { format = "{2:output:WavePulseRate}/s", { breakdown = "WavePulseRate" }, { modName = { "TrapThrowingSpeed", "SeismicPulseFrequency" }, cfg = "skill" }, }, }, { label = "Pulses Per Trap", haveOutput = "PulsesPerTrap", { format = "{0:output:PulsesPerTrap}", { breakdown = "PulsesPerTrap" }, }, }, - { label = "Small Explosions", haveOutput = "SmallExplosionsPerTrap", { format = "{0:output:SmallExplosionsPerTrap}", + { label = "Small Explosions", haveOutput = "SmallExplosionsPerTrap", { format = "{0:output:SmallExplosionsPerTrap}", { label = "Small Explosions", modName = "SmallExplosions", cfg = "skill" }, }, }, { label = "Normal Hits/Cast", haveOutput = "NormalHitsPerCast", { format = "{3:output:NormalHitsPerCast}", { breakdown = "NormalHitsPerCast" }, }, }, @@ -846,9 +846,9 @@ return { { label = "Area of Effect modifiers", modName = "TrapTriggerAreaOfEffect", cfg = "skill" }, }, }, -- Seal (Unleash) - { label = "Seal Gain Rate", haveOutput = "SealMax", { format = "{2:output:SealCooldown}s", + { label = "Seal Gain Rate", haveOutput = "SealMax", { format = "{2:output:SealCooldown}s", { breakdown = "SealGainTime" }, - { modName = "SealGainFrequency", cfg = "skill" }, + { modName = "SealGainFrequency", cfg = "skill" }, }, }, -- Parry { label = "Parry Effect Mod", haveOutput = "ParryDebuffMagnitudeMod", { format = "x {2:output:ParryDebuffMagnitudeMod}", @@ -856,24 +856,24 @@ return { { label = "Parry Magnitude", modName = "ParryDebuffMagnitude", cfg = "skill" }, { label = "Debuff Effect", modName = "DebuffEffect", cfg = "skill" }, }, }, - { label = "Parry Duration", haveOutput = "ParryDebuffDuration", { format = "{2:output:ParryDebuffDuration}s", + { label = "Parry Duration", haveOutput = "ParryDebuffDuration", { format = "{2:output:ParryDebuffDuration}s", { breakdown = "ParryDebuffDuration" }, { label = "Player modifiers", modName = "ParryDebuffDuration", cfg = "skill" }, - { label = "Enemy modifiers", modName = "BuffExpireFaster", enemy = true }, + { label = "Enemy modifiers", modName = "BuffExpireFaster", enemy = true }, }, }, - { label = "Parry Range", haveOutput = "ParryRangeNonProj", { format = "{1:output:ParryRangeNonProj}m", + { label = "Parry Range", haveOutput = "ParryRangeNonProj", { format = "{1:output:ParryRangeNonProj}m", { breakdown = "ParryRangeNonProj" }, { label = "Range modifiers", modName = "ParryRangeNonProj", cfg = "skill" }, }, }, - { label = "Parry Range Proj", haveOutput = "ParryRangeProj", { format = "{1:output:ParryRangeProj}m", - { breakdown = "ParryRangeProj" }, + { label = "Parry Range Proj", haveOutput = "ParryRangeProj", { format = "{1:output:ParryRangeProj}m", + { breakdown = "ParryRangeProj" }, { label = "Range modifiers", modName = "ParryRangeProj", cfg = "skill" }, }, }, -- Mines { label = "Active Mine Limit", flag = "mine", { format = "{0:output:ActiveMineLimit}", { modName = "ActiveMineLimit", cfg = "skill" }, }, }, - { label = "Mine Throw Rate", flag = "mine", { format = "{2:output:MineLayingSpeed}", + { label = "Mine Throw Rate", flag = "mine", { format = "{2:output:MineLayingSpeed}", { breakdown = "MineLayingTime" }, - { modName = "MineLayingSpeed", cfg = "skill" }, + { modName = "MineLayingSpeed", cfg = "skill" }, }, }, { label = "Mine Throw Time", flag = "mine", { format = "{2:output:MineLayingTime}s", { breakdown = "MineThrowingTime" }, }, }, { label = "Avg. Mines per Throw", flag = "mine", { format = "{2:output:MineThrowCount}", { modName = "MineThrowCount", cfg = "skill"}, }, }, @@ -882,44 +882,44 @@ return { { label = "Area of Effect modifiers", modName = "MineDetonationAreaOfEffect", cfg = "skill" }, }, }, { label = "Mine Aura Radius", haveOutput = "MineAuraRadius", { format = "{1:output:MineAuraRadiusMetre}m", { breakdown = "MineAuraRadius" }, }, }, - { label = "Totem Place Time", flag = "totem", notFlag = "triggered", { format = "{2:output:TotemPlacementTime}s", + { label = "Totem Place Time", flag = "totem", notFlag = "triggered", { format = "{2:output:TotemPlacementTime}s", { breakdown = "TotemPlacementTime" }, - { modName = "TotemPlacementSpeed", cfg = "skill" }, + { modName = "TotemPlacementSpeed", cfg = "skill" }, }, }, - { label = "Active Totem Limit", flag = "totem", notFlag = "triggered", { format = "{0:output:ActiveTotemLimit}", + { label = "Active Totem Limit", flag = "totem", notFlag = "triggered", { format = "{0:output:ActiveTotemLimit}", { breakdown = "ActiveTotemLimit" }, - { modName = { "ActiveTotemLimit", "ActiveBallistaLimit" }, cfg = "skill" }, + { modName = { "ActiveTotemLimit", "ActiveBallistaLimit" }, cfg = "skill" }, }, }, { label = "Totem Dur. Mod", flagList = {"duration", "totem"}, { format = "x {4:output:TotemDurationMod}", - { breakdown = "TotemDurationMod" }, - { modName = { "Duration", "PrimaryDuration", "TotemDuration" }, cfg = "skill" }, + { breakdown = "TotemDurationMod" }, + { modName = { "Duration", "PrimaryDuration", "TotemDuration" }, cfg = "skill" }, }, }, { label = "Totem Duration", flagList = {"duration", "totem"}, { format = "{3:output:TotemDuration}s", { breakdown = "TotemDuration" }, }, }, - { label = "Totem Life Mod", flag = "totem", notFlag = "triggered", { format = "x {2:output:TotemLifeMod}", + { label = "Totem Life Mod", flag = "totem", notFlag = "triggered", { format = "x {2:output:TotemLifeMod}", { breakdown = "TotemLifeMod" }, { modName = "TotemLife", cfg = "skill" }, }, }, { label = "Totem Life", flag = "totem", notFlag = "triggered", { format = "{0:output:TotemLife}", { breakdown = "TotemLife" }, }, }, - { label = "Totem ES", haveOutput = "TotemEnergyShield", { format = "{0:output:TotemEnergyShield}", + { label = "Totem ES", haveOutput = "TotemEnergyShield", { format = "{0:output:TotemEnergyShield}", { breakdown = "TotemEnergyShield" }, { modName = "TotemEnergyShield", cfg = "skill" }, }, }, - { label = "Totem Block Chance", haveOutput = "TotemBlockChance", { format = "{0:output:TotemBlockChance}%", + { label = "Totem Block Chance", haveOutput = "TotemBlockChance", { format = "{0:output:TotemBlockChance}%", { breakdown = "TotemBlockChance" }, { modName = "TotemBlockChance", cfg = "skill" }, }, }, - { label = "Totem Armour", haveOutput = "TotemArmour", { format = "{0:output:TotemArmour}", + { label = "Totem Armour", haveOutput = "TotemArmour", { format = "{0:output:TotemArmour}", { breakdown = "TotemArmour" }, { modName = "TotemArmour", cfg = "skill" }, }, }, { label = "Active Brand Limit", flag = "brand", { format = "{0:output:ActiveBrandLimit}", { modName = "ActiveBrandLimit", cfg = "skill" }, }, }, { label = "Totem Fire Res", flag = "totem", notFlag = "triggered",{ format = "{0:output:TotemFireResist}% (+{0:output:TotemFireResistOverCap}%)", - { breakdown = "TotemFireResist" }, + { breakdown = "TotemFireResist" }, { modName = { "TotemFireResistMax", "TotemElementalResistMax", "TotemFireResist", "TotemElementalResist" }, }, }, }, - { label = "Totem Cold Res", flag = "totem", notFlag = "triggered", { format = "{0:output:TotemColdResist}% (+{0:output:TotemColdResistOverCap}%)", + { label = "Totem Cold Res", flag = "totem", notFlag = "triggered", { format = "{0:output:TotemColdResist}% (+{0:output:TotemColdResistOverCap}%)", { breakdown = "TotemColdResist" }, { modName = { "TotemColdResistMax", "TotemElementalResistMax", "TotemColdResist", "TotemElementalResist" }, }, }, }, @@ -929,7 +929,7 @@ return { }, }, { label = "Totem Chaos Res", flag = "totem", notFlag = "triggered", { format = "{0:output:TotemChaosResist}% (+{0:output:TotemChaosResistOverCap}%)", { breakdown = "TotemChaosResist" }, - { modName = { "TotemChaosResistMax", "TotemChaosResist" }, }, + { modName = { "TotemChaosResistMax", "TotemChaosResist" }, }, }, }, { label = "Corpse Level", haveOutput = "CorpseLevel", { format = "{0:output:CorpseLevel}", { breakdown = "CorpseLevel" }, @@ -945,24 +945,24 @@ return { { 1, "HitChance", 1, colorCodes.OFFENCE, {{ defaultCollapsed = false, label = "Accuracy", data = { extra = "{0:output:HitChance}%", flag = "attack", - { label = "MH Accuracy", bgCol = colorCodes.MAINHANDBG, flag = "weapon1Attack", { format = "{0:output:MainHand.Accuracy}", - { breakdown = "MainHand.Accuracy" }, - { modName = "Accuracy", cfg = "weapon1" }, + { label = "MH Accuracy", bgCol = colorCodes.MAINHANDBG, flag = "weapon1Attack", { format = "{0:output:MainHand.Accuracy}", + { breakdown = "MainHand.Accuracy" }, + { modName = "Accuracy", cfg = "weapon1" }, }, }, { label = "MH Chance to Hit", bgCol = colorCodes.MAINHANDBG, flag = "weapon1Attack", { format = "{0:output:MainHand.AccuracyHitChance}%", - { breakdown = "MainHand.AccuracyHitChance" }, + { breakdown = "MainHand.AccuracyHitChance" }, { label = "Enemy Evasion modifiers", modName = { "Evasion", "CannotEvade" }, enemy = true }, { label = "Player modifiers", modName = { "HitChance", "CannotBeEvaded", "IgnoreBlindHitChance" } }, }, }, { label = "MH Chance to Hit", haveOutput = "MainHand.enemyBlockChance", bgCol = colorCodes.MAINHANDBG, flag = "weapon1Attack", { format = "{0:output:MainHand.HitChance}%", - { breakdown = "MainHand.HitChance" }, + { breakdown = "MainHand.HitChance" }, { label = "Enemy Evasion modifiers", modName = { "Evasion", "CannotEvade" }, enemy = true }, { label = "Enemy Block", modName = { "BlockChance" }, enemy = true }, { label = "Block Chance Reduction", cfg = "skill", modName = { "reduceEnemyBlock" } }, { label = "Player modifiers", modName = { "HitChance", "CannotBeEvaded", "IgnoreBlindHitChance" } }, }, }, { label = "OH Accuracy", bgCol = colorCodes.OFFHANDBG, flag = "weapon2Attack", { format = "{0:output:OffHand.Accuracy}", - { breakdown = "OffHand.Accuracy" }, + { breakdown = "OffHand.Accuracy" }, { modName = "Accuracy", cfg = "weapon2" }, }, }, { label = "OH Chance to Hit", bgCol = colorCodes.OFFHANDBG, flag = "weapon2Attack", { format = "{0:output:OffHand.AccuracyHitChance}%", @@ -986,7 +986,7 @@ return { { label = "Max Bleed Stacks", { format = "{0:output:BleedStacksMax}", { modName = "BleedStacksMax" } }, }, { label = "Stack Potential", { format = "{2:output:BleedStackPotentialPercent}%", { breakdown = "BleedStackPotential" } }}, { label = "Average Bleed Roll", { format = "{2:output:BleedRollAverage}%", { breakdown = "BleedRollAverage" } }}, - { label = "Chance to Bleed", { format = "{0:output:BleedChance}%", + { label = "Chance to Bleed", { format = "{0:output:BleedChance}%", { breakdown = "MainHand.BleedChance" }, { breakdown = "OffHand.BleedChance" }, { breakdown = "BleedChance" }, @@ -1024,9 +1024,9 @@ return { { breakdown = "MainHand.BleedDPS" }, { breakdown = "OffHand.BleedDPS" }, }, }, - { label = "Bleed Duration", { format = "{2:output:BleedDuration}s", - { breakdown = "BleedDuration" }, - { label = "Player modifiers", modName = { "EnemyBleedDuration", "EnemyAilmentDuration", "DamagingAilmentDuration", "BleedFaster" }, cfg = "bleed" }, + { label = "Bleed Duration", { format = "{2:output:BleedDuration}s", + { breakdown = "BleedDuration" }, + { label = "Player modifiers", modName = { "EnemyBleedDuration", "EnemyAilmentDuration", "DamagingAilmentDuration", "BleedFaster" }, cfg = "bleed" }, { label = "Enemy modifiers", modName = { "SelfBleedDuration", "SelfAilmentDuration", "SelfBleedFaster", "BleedExpireRate" }, enemy = true }, }, }, { label = "Dmg. of all Bleeds", { format = "{1:output:BleedDamage}", @@ -1039,18 +1039,18 @@ return { { 1, "Poison", 1, colorCodes.OFFENCE, {{ defaultCollapsed = false, label = "Poison", data = { extra = "{0:output:PoisonChance}% {1:output:PoisonDPS} {2:output:PoisonDuration}s", flag = "poison", - { label = "Max Poison Stacks", { format = "{1:output:PoisonStacksMax}", + { label = "Max Poison Stacks", { format = "{1:output:PoisonStacksMax}", { modName = "PoisonStacks" }, { label = "Main Hand", flag = "weapon1Attack", modName = "PoisonStacks", cfg = "weapon1" }, { label = "Off Hand", flag = "weapon2Attack", modName = "PoisonStacks", cfg = "weapon2" }, }, }, { label = "Stack Potential", { format = "{2:output:PoisonStackPotentialPercent}%", { breakdown = "PoisonStackPotential" } }}, { label = "Average Poison Roll", { format = "{2:output:PoisonRollAverage}%", { breakdown = "PoisonRollAverage" } }}, - { label = "Chance to Poison", { format = "{0:output:PoisonChance}%", - { breakdown = "MainHand.PoisonChance" }, - { breakdown = "OffHand.PoisonChance" }, - { breakdown = "PoisonChance" }, - { notFlag = "attack", modName = "PoisonChance", modType = "BASE", cfg = "skill" }, + { label = "Chance to Poison", { format = "{0:output:PoisonChance}%", + { breakdown = "MainHand.PoisonChance" }, + { breakdown = "OffHand.PoisonChance" }, + { breakdown = "PoisonChance" }, + { notFlag = "attack", modName = "PoisonChance", modType = "BASE", cfg = "skill" }, { label = "Main Hand", flag = "weapon1Attack", modName = "PoisonChance", cfg = "weapon1" }, { label = "Off Hand", flag = "weapon2Attack", modName = "PoisonChance", cfg = "weapon2" }, { label = "Ailment modifiers", modName = "AilmentChance", cfg = "skill" }, @@ -1071,12 +1071,12 @@ return { { label = "Source Chaos", textSize = 12, notFlag = "attack", haveOutput = "PoisonChaosMax", { format = "{0:output:PoisonChaosMin} to {0:output:PoisonChaosMax}", { breakdown = "PoisonChaos" }, }, }, { label = "MH Source Chaos", bgCol = colorCodes.MAINHANDBG, textSize = 12, flag = "weapon1Attack", haveOutput = "MainHand.PoisonChaosMax", { format = "{0:output:MainHand.PoisonChaosMin} to {0:output:MainHand.PoisonChaosMax}", { breakdown = "MainHand.PoisonChaos" }, }, }, { label = "OH Source Chaos", bgCol = colorCodes.OFFHANDBG, textSize = 12, flag = "weapon2Attack", haveOutput = "OffHand.PoisonChaosMax", { format = "{0:output:OffHand.PoisonChaosMin} to {0:output:OffHand.PoisonChaosMax}", { breakdown = "OffHand.PoisonChaos" }, }, }, - { label = "Effective DPS Mod", flag = "effective", { format = "x {3:output:PoisonEffMult}", - { breakdown = "PoisonEffMult" }, + { label = "Effective DPS Mod", flag = "effective", { format = "x {3:output:PoisonEffMult}", + { breakdown = "PoisonEffMult" }, { label = "Enemy modifiers", modName = { "ChaosResist", "DamageTaken", "DamageTakenOverTime", "ChaosDamageTaken", "ChaosDamageTakenOverTime" }, enemy = true }, }, }, - { label = "Poison DPS", { format = "{1:output:PoisonDPS}", - { breakdown = "PoisonDPS" }, + { label = "Poison DPS", { format = "{1:output:PoisonDPS}", + { breakdown = "PoisonDPS" }, { breakdown = "MainHand.PoisonDPS" }, { breakdown = "OffHand.PoisonDPS" }, }, }, @@ -1087,22 +1087,22 @@ return { { label = "Player modifiers", skillData = "poisonDurationIsSkillDuration", modName = { "EnemyPoisonDuration", "EnemyAilmentDuration", "DamagingAilmentDuration", "PoisonFaster", "Duration" }, cfg = "poison" }, { label = "Enemy modifiers", modName = { "SelfPoisonDuration", "SelfAilmentDuration", "SelfPoisonFaster" }, enemy = true }, }, }, - { label = "Dmg. of all Poisons", { format = "{1:output:PoisonDamage}", - { breakdown = "MainHand.PoisonDamage" }, - { breakdown = "OffHand.PoisonDamage" }, - { breakdown = "PoisonDamage" }, + { label = "Dmg. of all Poisons", { format = "{1:output:PoisonDamage}", + { breakdown = "MainHand.PoisonDamage" }, + { breakdown = "OffHand.PoisonDamage" }, + { breakdown = "PoisonDamage" }, }, }, } } } }, -{ 1, "Ignite", 1, colorCodes.OFFENCE, {{ defaultCollapsed = false, label = "Ignite", data = { +{ 1, "Ignite", 1, colorCodes.OFFENCE, {{ defaultCollapsed = false, label = "Ignite", data = { extra = "{0:output:IgniteChancePerHit}% {1:output:IgniteDPS} {2:output:IgniteDuration}s", flag = "ignite", { label = "Enemy Ail. Thresh.", { format = "{0:output:EnemyAilmentThreshold}", { modName = "EnemyAilmentThreshold" }, }, }, { label = "Max Ignite Stacks", { format = "{1:output:IgniteStacksMax}", { modName = "IgniteStacks" }, }, }, { label = "Stack Potential", { format = "{2:output:IgniteStackPotentialPercent}%", { breakdown = "IgniteStackPotential" } }}, { label = "Average Ignite Roll", { format = "{2:output:IgniteRollAverage}%", { breakdown = "IgniteRollAverage" } }}, - { label = "Chance to Ignite", { format = "{0:output:IgniteChancePerHit}%", - { breakdown = "MainHand.IgniteChance" }, + { label = "Chance to Ignite", { format = "{0:output:IgniteChancePerHit}%", + { breakdown = "MainHand.IgniteChance" }, { breakdown = "OffHand.IgniteChance" }, { breakdown = "IgniteChance" }, { label = "Player modifiers", modName = "EnemyIgniteChance", cfg = "skill" }, @@ -1125,21 +1125,21 @@ return { { label = "Source Chaos", textSize = 12, notFlag = "attack", haveOutput = "IgniteChaosMax", { format = "{0:output:IgniteChaosMin} to {0:output:IgniteChaosMax}", { breakdown = "IgniteChaos" }, }, }, { label = "MH Source Chaos", bgCol = colorCodes.MAINHANDBG, textSize = 12, flag = "weapon1Attack", haveOutput = "MainHand.IgniteChaosMax", { format = "{0:output:MainHand.IgniteChaosMin} to {0:output:MainHand.IgniteChaosMax}", { breakdown = "MainHand.IgniteChaos" }, }, }, { label = "OH Source Chaos", bgCol = colorCodes.OFFHANDBG, textSize = 12, flag = "weapon2Attack", haveOutput = "OffHand.IgniteChaosMax", { format = "{0:output:OffHand.IgniteChaosMin} to {0:output:OffHand.IgniteChaosMax}", { breakdown = "OffHand.IgniteChaos" }, }, }, - { label = "Effective DPS Mod", flag = "effective", notSkillData = "IgniteToChaos", { format = "x {3:output:IgniteEffMult}", - { breakdown = "IgniteEffMult" }, + { label = "Effective DPS Mod", flag = "effective", notSkillData = "IgniteToChaos", { format = "x {3:output:IgniteEffMult}", + { breakdown = "IgniteEffMult" }, { label = "Enemy modifiers", modName = { "FireResist", "ElementalResist", "DamageTaken", "DamageTakenOverTime", "FireDamageTaken", "FireDamageTakenOverTime", "ElementalDamageTaken" }, enemy = true }, }, }, - { label = "Effective DPS Mod", flag = "effective", skillData = "IgniteToChaos", { format = "x {3:output:IgniteEffMult}", - { breakdown = "IgniteEffMult" }, + { label = "Effective DPS Mod", flag = "effective", skillData = "IgniteToChaos", { format = "x {3:output:IgniteEffMult}", + { breakdown = "IgniteEffMult" }, { label = "Enemy modifiers", modName = { "ChaosResist", "DamageTaken", "DamageTakenOverTime", "ChaosDamageTaken", "ChaosDamageTakenOverTime" }, enemy = true }, }, }, - { label = "Ignite DPS", { format = "{1:output:IgniteDPS}", - { breakdown = "IgniteDPS" }, + { label = "Ignite DPS", { format = "{1:output:IgniteDPS}", + { breakdown = "IgniteDPS" }, { breakdown = "MainHand.IgniteDPS" }, { breakdown = "OffHand.IgniteDPS" }, }, }, { label = "Burning Ground", haveOutput = "BurningGroundFromIgnite", { format = "{0:output:BurningGroundDPS}", { breakdown = "BurningGroundDPS" } } }, - { label = "Ignite Duration", { format = "{2:output:IgniteDuration}s", + { label = "Ignite Duration", { format = "{2:output:IgniteDuration}s", { breakdown = "IgniteDuration" }, { label = "Player modifiers", modName = { "EnemyIgniteDuration", "EnemyAilmentDuration", "EnemyElementalAilmentDuration", "DamagingAilmentDuration", "IgniteFaster", "IgniteSlower" }, cfg = "skill" }, { label = "Enemy modifiers", modName = {"SelfIgniteDuration", "SelfAilmentDuration", "SelfElementalAilmentDuration", "SelfIgniteFaster"}, enemy = true }, @@ -1156,127 +1156,127 @@ return { flag = "decay", { label = "Total Increased", { format = "{0:mod:1}%", { modName = { "Damage", "ChaosDamage" }, modType = "INC", cfg = "decay" }, }, }, { label = "Total More", { format = "{0:mod:1}%", { modName = { "Damage", "ChaosDamage" }, modType = "MORE", cfg = "decay" }, }, }, - { label = "Effective DPS Mod", flag = "effective", { format = "x {3:output:DecayEffMult}", - { breakdown = "DecayEffMult" }, + { label = "Effective DPS Mod", flag = "effective", { format = "x {3:output:DecayEffMult}", + { breakdown = "DecayEffMult" }, { label = "Enemy modifiers", modName = { "ChaosResist", "DamageTaken", "DamageTakenOverTime", "ChaosDamageTaken", "ChaosDamageTakenOverTime" }, enemy = true }, }, }, - { label = "Decay DPS", { format = "{1:output:DecayDPS}", - { breakdown = "DecayDPS" }, + { label = "Decay DPS", { format = "{1:output:DecayDPS}", + { breakdown = "DecayDPS" }, }, }, - { label = "Decay Duration", { format = "{2:output:DecayDuration}s", + { label = "Decay Duration", { format = "{2:output:DecayDuration}s", { breakdown = "DecayDuration" }, }, }, } } } }, { 1, "LeechGain", 1, colorCodes.OFFENCE, {{ defaultCollapsed = false, label = "Leech & Gain on Hit", data = { - { label = "Life Leech Cap", flag = "leechLife", { format = "{1:output:MaxLifeLeechRate}", + { label = "Life Leech Cap", flag = "leechLife", { format = "{1:output:MaxLifeLeechRate}", { breakdown = "MaxLifeLeechRate" }, { modName = "MaxLifeLeechRate" }, }, }, - { label = "Life Leech Rate", flag = "leechLife", notFlag = "showAverage", { format = "{1:output:LifeLeechRate}", - { breakdown = "LifeLeech" }, - { label = "Player modifiers", notFlagList = { "totem", "attack" }, modName = { "DamageLeech", "DamageLifeLeech", "PhysicalDamageLifeLeech", "LightningDamageLifeLeech", "ColdDamageLifeLeech", "FireDamageLifeLeech", "ChaosDamageLifeLeech", "ElementalDamageLifeLeech" }, modType = "BASE", cfg = "skill" }, - { label = "Main Hand", notFlag = "totem", flag = "weapon1Attack", modName = { "DamageLeech", "DamageLifeLeech", "PhysicalDamageLifeLeech", "LightningDamageLifeLeech", "ColdDamageLifeLeech", "FireDamageLifeLeech", "ChaosDamageLifeLeech", "ElementalDamageLifeLeech" }, modType = "BASE", cfg = "weapon1" }, - { label = "Off Hand", notFlag = "totem", flag = "weapon2Attack", modName = { "DamageLeech", "DamageLifeLeech", "PhysicalDamageLifeLeech", "LightningDamageLifeLeech", "ColdDamageLifeLeech", "FireDamageLifeLeech", "ChaosDamageLifeLeech", "ElementalDamageLifeLeech" }, modType = "BASE", cfg = "weapon2" }, + { label = "Life Leech Rate", flag = "leechLife", notFlag = "showAverage", { format = "{1:output:LifeLeechRate}", + { breakdown = "LifeLeech" }, + { label = "Player modifiers", notFlagList = { "totem", "attack" }, modName = { "DamageLeech", "DamageLifeLeech", "PhysicalDamageLifeLeech", "LightningDamageLifeLeech", "ColdDamageLifeLeech", "FireDamageLifeLeech", "ChaosDamageLifeLeech", "ElementalDamageLifeLeech" }, modType = "BASE", cfg = "skill" }, + { label = "Main Hand", notFlag = "totem", flag = "weapon1Attack", modName = { "DamageLeech", "DamageLifeLeech", "PhysicalDamageLifeLeech", "LightningDamageLifeLeech", "ColdDamageLifeLeech", "FireDamageLifeLeech", "ChaosDamageLifeLeech", "ElementalDamageLifeLeech" }, modType = "BASE", cfg = "weapon1" }, + { label = "Off Hand", notFlag = "totem", flag = "weapon2Attack", modName = { "DamageLeech", "DamageLifeLeech", "PhysicalDamageLifeLeech", "LightningDamageLifeLeech", "ColdDamageLifeLeech", "FireDamageLifeLeech", "ChaosDamageLifeLeech", "ElementalDamageLifeLeech" }, modType = "BASE", cfg = "weapon2" }, { label = "Totem modifiers", flag = "totem", modName = { "DamageLifeLeechToPlayer" }, modType = "BASE", cfg = "skill" }, { label = "Enemy modifiers", modName = { "SelfDamageLifeLeech" }, modType = "BASE", enemy = true }, - { label = "Leech Conversion", modName = { "LifeLeechBasedOnPhysicalDamage", "LifeLeechBasedOnColdDamage", "LifeLeechBasedOnFireDamage", "LifeLeechBasedOnLightningDamage", "LifeLeechBasedOnElementalDamage", "LifeLeechBasedOnChaosDamage", "Condition:NoLifeLeechFromPhysicalDamage", "Condition:NoLifeLeechFromColdDamage", "Condition:NoLifeLeechFromFireDamage", "Condition:NoLifeLeechFromLightningDamage", "Condition:NoLifeLeechFromElementalDamage", "Condition:NoLifeLeechFromChaosDamage" }, cfg = "skill" }, + { label = "Leech Conversion", modName = { "LifeLeechBasedOnPhysicalDamage", "LifeLeechBasedOnColdDamage", "LifeLeechBasedOnFireDamage", "LifeLeechBasedOnLightningDamage", "LifeLeechBasedOnElementalDamage", "LifeLeechBasedOnChaosDamage", "Condition:NoLifeLeechFromPhysicalDamage", "Condition:NoLifeLeechFromColdDamage", "Condition:NoLifeLeechFromFireDamage", "Condition:NoLifeLeechFromLightningDamage", "Condition:NoLifeLeechFromElementalDamage", "Condition:NoLifeLeechFromChaosDamage" }, cfg = "skill" }, }, }, - { label = "Life Leech per Hit", flagList = { "leechLife", "showAverage" }, { format = "{1:output:LifeLeechPerHit}", + { label = "Life Leech per Hit", flagList = { "leechLife", "showAverage" }, { format = "{1:output:LifeLeechPerHit}", { breakdown = "LifeLeech" }, - { label = "Player modifiers", notFlagList = { "totem", "attack" }, modName = { "DamageLeech", "DamageLifeLeech", "PhysicalDamageLifeLeech", "LightningDamageLifeLeech", "ColdDamageLifeLeech", "FireDamageLifeLeech", "ChaosDamageLifeLeech", "ElementalDamageLifeLeech" }, modType = "BASE", cfg = "skill" }, - { label = "Main Hand", notFlag = "totem", flag = "weapon1Attack", modName = { "DamageLeech", "DamageLifeLeech", "PhysicalDamageLifeLeech", "LightningDamageLifeLeech", "ColdDamageLifeLeech", "FireDamageLifeLeech", "ChaosDamageLifeLeech", "ElementalDamageLifeLeech" }, modType = "BASE", cfg = "weapon1" }, - { label = "Off Hand", notFlag = "totem", flag = "weapon2Attack", modName = { "DamageLeech", "DamageLifeLeech", "PhysicalDamageLifeLeech", "LightningDamageLifeLeech", "ColdDamageLifeLeech", "FireDamageLifeLeech", "ChaosDamageLifeLeech", "ElementalDamageLifeLeech" }, modType = "BASE", cfg = "weapon2" }, + { label = "Player modifiers", notFlagList = { "totem", "attack" }, modName = { "DamageLeech", "DamageLifeLeech", "PhysicalDamageLifeLeech", "LightningDamageLifeLeech", "ColdDamageLifeLeech", "FireDamageLifeLeech", "ChaosDamageLifeLeech", "ElementalDamageLifeLeech" }, modType = "BASE", cfg = "skill" }, + { label = "Main Hand", notFlag = "totem", flag = "weapon1Attack", modName = { "DamageLeech", "DamageLifeLeech", "PhysicalDamageLifeLeech", "LightningDamageLifeLeech", "ColdDamageLifeLeech", "FireDamageLifeLeech", "ChaosDamageLifeLeech", "ElementalDamageLifeLeech" }, modType = "BASE", cfg = "weapon1" }, + { label = "Off Hand", notFlag = "totem", flag = "weapon2Attack", modName = { "DamageLeech", "DamageLifeLeech", "PhysicalDamageLifeLeech", "LightningDamageLifeLeech", "ColdDamageLifeLeech", "FireDamageLifeLeech", "ChaosDamageLifeLeech", "ElementalDamageLifeLeech" }, modType = "BASE", cfg = "weapon2" }, { label = "Totem modifiers", flag = "totem", modName = { "DamageLifeLeechToPlayer" }, modType = "BASE", cfg = "skill" }, { label = "Enemy modifiers", modName = { "SelfDamageLifeLeech" }, modType = "BASE", enemy = true }, - { label = "Leech Conversion", modName = { "LifeLeechBasedOnPhysicalDamage", "LifeLeechBasedOnColdDamage", "LifeLeechBasedOnFireDamage", "LifeLeechBasedOnLightningDamage", "LifeLeechBasedOnElementalDamage", "LifeLeechBasedOnChaosDamage", "Condition:NoLifeLeechFromPhysicalDamage", "Condition:NoLifeLeechFromColdDamage", "Condition:NoLifeLeechFromFireDamage", "Condition:NoLifeLeechFromLightningDamage", "Condition:NoLifeLeechFromElementalDamage", "Condition:NoLifeLeechFromChaosDamage" }, cfg = "skill" }, + { label = "Leech Conversion", modName = { "LifeLeechBasedOnPhysicalDamage", "LifeLeechBasedOnColdDamage", "LifeLeechBasedOnFireDamage", "LifeLeechBasedOnLightningDamage", "LifeLeechBasedOnElementalDamage", "LifeLeechBasedOnChaosDamage", "Condition:NoLifeLeechFromPhysicalDamage", "Condition:NoLifeLeechFromColdDamage", "Condition:NoLifeLeechFromFireDamage", "Condition:NoLifeLeechFromLightningDamage", "Condition:NoLifeLeechFromElementalDamage", "Condition:NoLifeLeechFromChaosDamage" }, cfg = "skill" }, }, }, - { label = "Life Gain Rate", notFlag = "showAverage", haveOutput = "LifeOnHitRate", { format = "{1:output:LifeOnHitRate}", - { label = "Player modifiers", notFlag = "attack", modName = "LifeOnHit", modType = "BASE", cfg = "skill" }, - { label = "Main Hand", flag = "weapon1Attack", modName = "LifeOnHit", modType = "BASE", cfg = "weapon1" }, - { label = "Off Hand", flag = "weapon2Attack", modName = "LifeOnHit", modType = "BASE", cfg = "weapon2" }, + { label = "Life Gain Rate", notFlag = "showAverage", haveOutput = "LifeOnHitRate", { format = "{1:output:LifeOnHitRate}", + { label = "Player modifiers", notFlag = "attack", modName = "LifeOnHit", modType = "BASE", cfg = "skill" }, + { label = "Main Hand", flag = "weapon1Attack", modName = "LifeOnHit", modType = "BASE", cfg = "weapon1" }, + { label = "Off Hand", flag = "weapon2Attack", modName = "LifeOnHit", modType = "BASE", cfg = "weapon2" }, { label = "Enemy modifiers", modName = { "SelfLifeOnHit" }, modType = "BASE", cfg = "skill", enemy = true }, }, }, - { label = "Life Gain per Hit", flag = "showAverage", haveOutput = "LifeOnHit", { format = "{1:output:LifeOnHit}", - { label = "Player modifiers", notFlag = "attack", modName = "LifeOnHit", modType = "BASE", cfg = "skill" }, - { label = "Main Hand", flag = "weapon1Attack", modName = "LifeOnHit", modType = "BASE", cfg = "weapon1" }, - { label = "Off Hand", flag = "weapon2Attack", modName = "LifeOnHit", modType = "BASE", cfg = "weapon2" }, + { label = "Life Gain per Hit", flag = "showAverage", haveOutput = "LifeOnHit", { format = "{1:output:LifeOnHit}", + { label = "Player modifiers", notFlag = "attack", modName = "LifeOnHit", modType = "BASE", cfg = "skill" }, + { label = "Main Hand", flag = "weapon1Attack", modName = "LifeOnHit", modType = "BASE", cfg = "weapon1" }, + { label = "Off Hand", flag = "weapon2Attack", modName = "LifeOnHit", modType = "BASE", cfg = "weapon2" }, { label = "Enemy modifiers", modName = { "SelfLifeOnHit" }, modType = "BASE", cfg = "skill", enemy = true }, }, }, - { label = "Life Gain on Kill", haveOutput = "LifeOnKill", { format = "{1:output:LifeOnKill}", - {modName = "LifeOnKill"}, + { label = "Life Gain on Kill", haveOutput = "LifeOnKill", { format = "{1:output:LifeOnKill}", + {modName = "LifeOnKill"}, }, }, - { label = "ES Leech Cap", flag = "leechES", { format = "{1:output:MaxEnergyShieldLeechRate}", + { label = "ES Leech Cap", flag = "leechES", { format = "{1:output:MaxEnergyShieldLeechRate}", { breakdown = "MaxEnergyShieldLeechRate" }, { modName = "MaxEnergyShieldLeechRate" }, }, }, - { label = "ES Leech Rate", flag = "leechES", notFlag = "showAverage", { format = "{1:output:EnergyShieldLeechRate}", + { label = "ES Leech Rate", flag = "leechES", notFlag = "showAverage", { format = "{1:output:EnergyShieldLeechRate}", { breakdown = "EnergyShieldLeech" }, - { label = "Player modifiers", notFlagList = { "totem", "attack" }, modName = { "DamageEnergyShieldLeech", "PhysicalDamageEnergyShieldLeech", "LightningDamageEnergyShieldLeech", "ColdDamageEnergyShieldLeech", "FireDamageEnergyShieldLeech", "ChaosDamageEnergyShieldLeech", "ElementalDamageEnergyShieldLeech" }, modType = "BASE", cfg = "skill" }, - { label = "Main Hand", notFlag = "totem", flag = "weapon1Attack", modName = { "DamageEnergyShieldLeech", "PhysicalDamageEnergyShieldLeech", "LightningDamageEnergyShieldLeech", "ColdDamageEnergyShieldLeech", "FireDamageEnergyShieldLeech", "ChaosDamageEnergyShieldLeech", "ElementalDamageEnergyShieldLeech" }, modType = "BASE", cfg = "weapon1" }, - { label = "Off Hand", notFlag = "totem", flag = "weapon2Attack", modName = { "DamageEnergyShieldLeech", "PhysicalDamageEnergyShieldLeech", "LightningDamageEnergyShieldLeech", "ColdDamageEnergyShieldLeech", "FireDamageEnergyShieldLeech", "ChaosDamageEnergyShieldLeech", "ElementalDamageEnergyShieldLeech" }, modType = "BASE", cfg = "weapon2" }, + { label = "Player modifiers", notFlagList = { "totem", "attack" }, modName = { "DamageEnergyShieldLeech", "PhysicalDamageEnergyShieldLeech", "LightningDamageEnergyShieldLeech", "ColdDamageEnergyShieldLeech", "FireDamageEnergyShieldLeech", "ChaosDamageEnergyShieldLeech", "ElementalDamageEnergyShieldLeech" }, modType = "BASE", cfg = "skill" }, + { label = "Main Hand", notFlag = "totem", flag = "weapon1Attack", modName = { "DamageEnergyShieldLeech", "PhysicalDamageEnergyShieldLeech", "LightningDamageEnergyShieldLeech", "ColdDamageEnergyShieldLeech", "FireDamageEnergyShieldLeech", "ChaosDamageEnergyShieldLeech", "ElementalDamageEnergyShieldLeech" }, modType = "BASE", cfg = "weapon1" }, + { label = "Off Hand", notFlag = "totem", flag = "weapon2Attack", modName = { "DamageEnergyShieldLeech", "PhysicalDamageEnergyShieldLeech", "LightningDamageEnergyShieldLeech", "ColdDamageEnergyShieldLeech", "FireDamageEnergyShieldLeech", "ChaosDamageEnergyShieldLeech", "ElementalDamageEnergyShieldLeech" }, modType = "BASE", cfg = "weapon2" }, { label = "Totem modifiers", flag = "totem", modName = { "DamageEnergyShieldLeechToPlayer" }, modType = "BASE", cfg = "skill" }, { label = "Enemy modifiers", modName = { "SelfDamageEnergyShieldLeech" }, modType = "BASE", enemy = true }, - { label = "Leech Conversion", modName = { "EnergyShieldLeechBasedOnPhysicalDamage", "EnergyShieldLeechBasedOnColdDamage", "EnergyShieldLeechBasedOnFireDamage", "EnergyShieldLeechBasedOnLightningDamage", "EnergyShieldLeechBasedOnElementalDamage", "EnergyShieldLeechBasedOnChaosDamage", "Condition:NoEnergyShieldLeechFromPhysicalDamage", "Condition:NoEnergyShieldLeechFromColdDamage", "Condition:NoEnergyShieldLeechFromFireDamage", "Condition:NoEnergyShieldLeechFromLightningDamage", "Condition:NoEnergyShieldLeechFromElementalDamage", "Condition:NoEnergyShieldLeechFromChaosDamage" }, cfg = "skill" }, + { label = "Leech Conversion", modName = { "EnergyShieldLeechBasedOnPhysicalDamage", "EnergyShieldLeechBasedOnColdDamage", "EnergyShieldLeechBasedOnFireDamage", "EnergyShieldLeechBasedOnLightningDamage", "EnergyShieldLeechBasedOnElementalDamage", "EnergyShieldLeechBasedOnChaosDamage", "Condition:NoEnergyShieldLeechFromPhysicalDamage", "Condition:NoEnergyShieldLeechFromColdDamage", "Condition:NoEnergyShieldLeechFromFireDamage", "Condition:NoEnergyShieldLeechFromLightningDamage", "Condition:NoEnergyShieldLeechFromElementalDamage", "Condition:NoEnergyShieldLeechFromChaosDamage" }, cfg = "skill" }, }, }, { label = "ES Leech per Hit", flagList = { "leechES", "showAverage" }, { format = "{1:output:EnergyShieldLeechPerHit}", { breakdown = "EnergyShieldLeech" }, - { label = "Player modifiers", notFlagList = { "totem", "attack" }, modName = { "DamageEnergyShieldLeech", "PhysicalDamageEnergyShieldLeech", "LightningDamageEnergyShieldLeech", "ColdDamageEnergyShieldLeech", "FireDamageEnergyShieldLeech", "ChaosDamageEnergyShieldLeech", "ElementalDamageEnergyShieldLeech" }, modType = "BASE", cfg = "skill" }, - { label = "Main Hand", notFlag = "totem", flag = "weapon1Attack", modName = { "DamageEnergyShieldLeech", "PhysicalDamageEnergyShieldLeech", "LightningDamageEnergyShieldLeech", "ColdDamageEnergyShieldLeech", "FireDamageEnergyShieldLeech", "ChaosDamageEnergyShieldLeech", "ElementalDamageEnergyShieldLeech" }, modType = "BASE", cfg = "weapon1" }, - { label = "Off Hand", notFlag = "totem", flag = "weapon2Attack", modName = { "DamageEnergyShieldLeech", "PhysicalDamageEnergyShieldLeech", "LightningDamageEnergyShieldLeech", "ColdDamageEnergyShieldLeech", "FireDamageEnergyShieldLeech", "ChaosDamageEnergyShieldLeech", "ElementalDamageEnergyShieldLeech" }, modType = "BASE", cfg = "weapon2" }, + { label = "Player modifiers", notFlagList = { "totem", "attack" }, modName = { "DamageEnergyShieldLeech", "PhysicalDamageEnergyShieldLeech", "LightningDamageEnergyShieldLeech", "ColdDamageEnergyShieldLeech", "FireDamageEnergyShieldLeech", "ChaosDamageEnergyShieldLeech", "ElementalDamageEnergyShieldLeech" }, modType = "BASE", cfg = "skill" }, + { label = "Main Hand", notFlag = "totem", flag = "weapon1Attack", modName = { "DamageEnergyShieldLeech", "PhysicalDamageEnergyShieldLeech", "LightningDamageEnergyShieldLeech", "ColdDamageEnergyShieldLeech", "FireDamageEnergyShieldLeech", "ChaosDamageEnergyShieldLeech", "ElementalDamageEnergyShieldLeech" }, modType = "BASE", cfg = "weapon1" }, + { label = "Off Hand", notFlag = "totem", flag = "weapon2Attack", modName = { "DamageEnergyShieldLeech", "PhysicalDamageEnergyShieldLeech", "LightningDamageEnergyShieldLeech", "ColdDamageEnergyShieldLeech", "FireDamageEnergyShieldLeech", "ChaosDamageEnergyShieldLeech", "ElementalDamageEnergyShieldLeech" }, modType = "BASE", cfg = "weapon2" }, { label = "Totem modifiers", flag = "totem", modName = { "DamageEnergyShieldLeechToPlayer" }, modType = "BASE", cfg = "skill" }, { label = "Enemy modifiers", modName = { "SelfDamageEnergyShieldLeech" }, modType = "BASE", enemy = true }, - { label = "Leech Conversion", modName = { "EnergyShieldLeechBasedOnPhysicalDamage", "EnergyShieldLeechBasedOnColdDamage", "EnergyShieldLeechBasedOnFireDamage", "EnergyShieldLeechBasedOnLightningDamage", "EnergyShieldLeechBasedOnElementalDamage", "EnergyShieldLeechBasedOnChaosDamage", "Condition:NoEnergyShieldLeechFromPhysicalDamage", "Condition:NoEnergyShieldLeechFromColdDamage", "Condition:NoEnergyShieldLeechFromFireDamage", "Condition:NoEnergyShieldLeechFromLightningDamage", "Condition:NoEnergyShieldLeechFromElementalDamage", "Condition:NoEnergyShieldLeechFromChaosDamage" }, cfg = "skill" }, + { label = "Leech Conversion", modName = { "EnergyShieldLeechBasedOnPhysicalDamage", "EnergyShieldLeechBasedOnColdDamage", "EnergyShieldLeechBasedOnFireDamage", "EnergyShieldLeechBasedOnLightningDamage", "EnergyShieldLeechBasedOnElementalDamage", "EnergyShieldLeechBasedOnChaosDamage", "Condition:NoEnergyShieldLeechFromPhysicalDamage", "Condition:NoEnergyShieldLeechFromColdDamage", "Condition:NoEnergyShieldLeechFromFireDamage", "Condition:NoEnergyShieldLeechFromLightningDamage", "Condition:NoEnergyShieldLeechFromElementalDamage", "Condition:NoEnergyShieldLeechFromChaosDamage" }, cfg = "skill" }, }, }, - { label = "ES Gain Rate", notFlag = "showAverage", haveOutput = "EnergyShieldOnHitRate", { format = "{1:output:EnergyShieldOnHitRate}", - { label = "Player modifiers", notFlag = "attack", modName = "EnergyShieldOnHit", modType = "BASE", cfg = "skill" }, - { label = "Main Hand", flag = "weapon1Attack", modName = "EnergyShieldOnHit", modType = "BASE", cfg = "weapon1" }, - { label = "Off Hand", flag = "weapon2Attack", modName = "EnergyShieldOnHit", modType = "BASE", cfg = "weapon2" }, + { label = "ES Gain Rate", notFlag = "showAverage", haveOutput = "EnergyShieldOnHitRate", { format = "{1:output:EnergyShieldOnHitRate}", + { label = "Player modifiers", notFlag = "attack", modName = "EnergyShieldOnHit", modType = "BASE", cfg = "skill" }, + { label = "Main Hand", flag = "weapon1Attack", modName = "EnergyShieldOnHit", modType = "BASE", cfg = "weapon1" }, + { label = "Off Hand", flag = "weapon2Attack", modName = "EnergyShieldOnHit", modType = "BASE", cfg = "weapon2" }, { label = "Enemy modifiers", modName = { "SelfEnergyShieldOnHit" }, modType = "BASE", enemy = true }, }, }, - { label = "ES Gain per Hit", flag = "showAverage", haveOutput = "EnergyShieldOnHit", { format = "{1:output:EnergyShieldOnHit}", - { label = "Player modifiers", notFlag = "attack", modName = "EnergyShieldOnHit", modType = "BASE", cfg = "skill" }, - { label = "Main Hand", flag = "weapon1Attack", modName = "EnergyShieldOnHit", modType = "BASE", cfg = "weapon1" }, - { label = "Off Hand", flag = "weapon2Attack", modName = "EnergyShieldOnHit", modType = "BASE", cfg = "weapon2" }, + { label = "ES Gain per Hit", flag = "showAverage", haveOutput = "EnergyShieldOnHit", { format = "{1:output:EnergyShieldOnHit}", + { label = "Player modifiers", notFlag = "attack", modName = "EnergyShieldOnHit", modType = "BASE", cfg = "skill" }, + { label = "Main Hand", flag = "weapon1Attack", modName = "EnergyShieldOnHit", modType = "BASE", cfg = "weapon1" }, + { label = "Off Hand", flag = "weapon2Attack", modName = "EnergyShieldOnHit", modType = "BASE", cfg = "weapon2" }, { label = "Enemy modifiers", modName = { "SelfEnergyShieldOnHit" }, modType = "BASE", cfg = "skill", enemy = true }, }, }, - { label = "ES Gain on Kill", haveOutput = "EnergyShieldOnKill", { format = "{1:output:EnergyShieldOnKill}", - {modName = "EnergyShieldOnKill"}, + { label = "ES Gain on Kill", haveOutput = "EnergyShieldOnKill", { format = "{1:output:EnergyShieldOnKill}", + {modName = "EnergyShieldOnKill"}, }, }, - { label = "Mana Leech Cap", flag = "leechMana", { format = "{1:output:MaxManaLeechRate}", + { label = "Mana Leech Cap", flag = "leechMana", { format = "{1:output:MaxManaLeechRate}", { breakdown = "MaxManaLeechRate" }, { modName = "MaxManaLeechRate" }, }, }, - { label = "Mana Leech Rate", flag = "leechMana", notFlag = "showAverage", { format = "{1:output:ManaLeechRate}", - { breakdown = "ManaLeech" }, - { label = "Player modifiers", notFlag = "attack", modName = { "DamageLeech", "DamageManaLeech", "PhysicalDamageManaLeech", "LightningDamageManaLeech", "ColdDamageManaLeech", "FireDamageManaLeech", "ChaosDamageManaLeech", "ElementalDamageManaLeech" }, modType = "BASE", cfg = "skill" }, - { label = "Main Hand", flag = "weapon1Attack", modName = { "DamageLeech", "DamageManaLeech", "PhysicalDamageManaLeech", "LightningDamageManaLeech", "ColdDamageManaLeech", "FireDamageManaLeech", "ChaosDamageManaLeech", "ElementalDamageManaLeech" }, modType = "BASE", cfg = "weapon1" }, - { label = "Off Hand", flag = "weapon2Attack", modName = { "DamageLeech", "DamageManaLeech", "PhysicalDamageManaLeech", "LightningDamageManaLeech", "ColdDamageManaLeech", "FireDamageManaLeech", "ChaosDamageManaLeech", "ElementalDamageManaLeech" }, modType = "BASE", cfg = "weapon2" }, + { label = "Mana Leech Rate", flag = "leechMana", notFlag = "showAverage", { format = "{1:output:ManaLeechRate}", + { breakdown = "ManaLeech" }, + { label = "Player modifiers", notFlag = "attack", modName = { "DamageLeech", "DamageManaLeech", "PhysicalDamageManaLeech", "LightningDamageManaLeech", "ColdDamageManaLeech", "FireDamageManaLeech", "ChaosDamageManaLeech", "ElementalDamageManaLeech" }, modType = "BASE", cfg = "skill" }, + { label = "Main Hand", flag = "weapon1Attack", modName = { "DamageLeech", "DamageManaLeech", "PhysicalDamageManaLeech", "LightningDamageManaLeech", "ColdDamageManaLeech", "FireDamageManaLeech", "ChaosDamageManaLeech", "ElementalDamageManaLeech" }, modType = "BASE", cfg = "weapon1" }, + { label = "Off Hand", flag = "weapon2Attack", modName = { "DamageLeech", "DamageManaLeech", "PhysicalDamageManaLeech", "LightningDamageManaLeech", "ColdDamageManaLeech", "FireDamageManaLeech", "ChaosDamageManaLeech", "ElementalDamageManaLeech" }, modType = "BASE", cfg = "weapon2" }, { label = "Enemy modifiers", modName = { "SelfDamageManaLeech" }, modType = "BASE", cfg = "skill", enemy = true }, - { label = "Leech Conversion", modName = { "ManaLeechBasedOnPhysicalDamage", "ManaLeechBasedOnColdDamage", "ManaLeechBasedOnFireDamage", "ManaLeechBasedOnLightningDamage", "ManaLeechBasedOnElementalDamage", "ManaLeechBasedOnChaosDamage", "Condition:NoManaLeechFromPhysicalDamage", "Condition:NoManaLeechFromColdDamage", "Condition:NoManaLeechFromFireDamage", "Condition:NoManaLeechFromLightningDamage", "Condition:NoManaLeechFromElementalDamage", "Condition:NoManaLeechFromChaosDamage" }, cfg = "skill" }, + { label = "Leech Conversion", modName = { "ManaLeechBasedOnPhysicalDamage", "ManaLeechBasedOnColdDamage", "ManaLeechBasedOnFireDamage", "ManaLeechBasedOnLightningDamage", "ManaLeechBasedOnElementalDamage", "ManaLeechBasedOnChaosDamage", "Condition:NoManaLeechFromPhysicalDamage", "Condition:NoManaLeechFromColdDamage", "Condition:NoManaLeechFromFireDamage", "Condition:NoManaLeechFromLightningDamage", "Condition:NoManaLeechFromElementalDamage", "Condition:NoManaLeechFromChaosDamage" }, cfg = "skill" }, }, }, - { label = "Mana Leech per Hit", flagList = { "leechMana", "showAverage" }, { format = "{1:output:ManaLeechPerHit}", - { breakdown = "ManaLeech" }, - { label = "Player modifiers", notFlag = "attack", modName = { "DamageLeech", "DamageManaLeech", "PhysicalDamageManaLeech", "LightningDamageManaLeech", "ColdDamageManaLeech", "FireDamageManaLeech", "ChaosDamageManaLeech", "ElementalDamageManaLeech" }, modType = "BASE", cfg = "skill" }, - { label = "Main Hand", flag = "weapon1Attack", modName = { "DamageLeech", "DamageManaLeech", "PhysicalDamageManaLeech", "LightningDamageManaLeech", "ColdDamageManaLeech", "FireDamageManaLeech", "ChaosDamageManaLeech", "ElementalDamageManaLeech" }, modType = "BASE", cfg = "weapon1" }, - { label = "Off Hand", flag = "weapon2Attack", modName = { "DamageLeech", "DamageManaLeech", "PhysicalDamageManaLeech", "LightningDamageManaLeech", "ColdDamageManaLeech", "FireDamageManaLeech", "ChaosDamageManaLeech", "ElementalDamageManaLeech" }, modType = "BASE", cfg = "weapon2" }, + { label = "Mana Leech per Hit", flagList = { "leechMana", "showAverage" }, { format = "{1:output:ManaLeechPerHit}", + { breakdown = "ManaLeech" }, + { label = "Player modifiers", notFlag = "attack", modName = { "DamageLeech", "DamageManaLeech", "PhysicalDamageManaLeech", "LightningDamageManaLeech", "ColdDamageManaLeech", "FireDamageManaLeech", "ChaosDamageManaLeech", "ElementalDamageManaLeech" }, modType = "BASE", cfg = "skill" }, + { label = "Main Hand", flag = "weapon1Attack", modName = { "DamageLeech", "DamageManaLeech", "PhysicalDamageManaLeech", "LightningDamageManaLeech", "ColdDamageManaLeech", "FireDamageManaLeech", "ChaosDamageManaLeech", "ElementalDamageManaLeech" }, modType = "BASE", cfg = "weapon1" }, + { label = "Off Hand", flag = "weapon2Attack", modName = { "DamageLeech", "DamageManaLeech", "PhysicalDamageManaLeech", "LightningDamageManaLeech", "ColdDamageManaLeech", "FireDamageManaLeech", "ChaosDamageManaLeech", "ElementalDamageManaLeech" }, modType = "BASE", cfg = "weapon2" }, { label = "Enemy modifiers", modName = { "SelfDamageManaLeech" }, modType = "BASE", enemy = true }, - { label = "Leech Conversion", modName = { "ManaLeechBasedOnPhysicalDamage", "ManaLeechBasedOnColdDamage", "ManaLeechBasedOnFireDamage", "ManaLeechBasedOnLightningDamage", "ManaLeechBasedOnElementalDamage", "ManaLeechBasedOnChaosDamage", "Condition:NoManaLeechFromPhysicalDamage", "Condition:NoManaLeechFromColdDamage", "Condition:NoManaLeechFromFireDamage", "Condition:NoManaLeechFromLightningDamage", "Condition:NoManaLeechFromElementalDamage", "Condition:NoManaLeechFromChaosDamage" }, cfg = "skill" }, + { label = "Leech Conversion", modName = { "ManaLeechBasedOnPhysicalDamage", "ManaLeechBasedOnColdDamage", "ManaLeechBasedOnFireDamage", "ManaLeechBasedOnLightningDamage", "ManaLeechBasedOnElementalDamage", "ManaLeechBasedOnChaosDamage", "Condition:NoManaLeechFromPhysicalDamage", "Condition:NoManaLeechFromColdDamage", "Condition:NoManaLeechFromFireDamage", "Condition:NoManaLeechFromLightningDamage", "Condition:NoManaLeechFromElementalDamage", "Condition:NoManaLeechFromChaosDamage" }, cfg = "skill" }, }, }, - { label = "Mana Gain Rate", notFlag = "showAverage", haveOutput = "ManaOnHitRate", { format = "{1:output:ManaOnHitRate}", - { label = "Player modifiers", notFlag = "attack", modName = "ManaOnHit", modType = "BASE", cfg = "skill" }, - { label = "Main Hand", flag = "weapon1Attack", modName = "ManaOnHit", modType = "BASE", cfg = "weapon1" }, - { label = "Off Hand", flag = "weapon2Attack", modName = "ManaOnHit", modType = "BASE", cfg = "weapon2" }, + { label = "Mana Gain Rate", notFlag = "showAverage", haveOutput = "ManaOnHitRate", { format = "{1:output:ManaOnHitRate}", + { label = "Player modifiers", notFlag = "attack", modName = "ManaOnHit", modType = "BASE", cfg = "skill" }, + { label = "Main Hand", flag = "weapon1Attack", modName = "ManaOnHit", modType = "BASE", cfg = "weapon1" }, + { label = "Off Hand", flag = "weapon2Attack", modName = "ManaOnHit", modType = "BASE", cfg = "weapon2" }, { label = "Enemy modifiers", modName = { "SelfManaOnHit" }, modType = "BASE", cfg = "skill", enemy = true }, }, }, { label = "Mana Gain per Hit", flag = "showAverage", haveOutput = "ManaOnHit", { format = "{1:output:ManaOnHit}", - { label = "Player modifiers", notFlag = "attack", modName = "ManaOnHit", modType = "BASE", cfg = "skill" }, - { label = "Main Hand", flag = "weapon1Attack", modName = "ManaOnHit", modType = "BASE", cfg = "weapon1" }, - { label = "Off Hand", flag = "weapon2Attack", modName = "ManaOnHit", modType = "BASE", cfg = "weapon2" }, + { label = "Player modifiers", notFlag = "attack", modName = "ManaOnHit", modType = "BASE", cfg = "skill" }, + { label = "Main Hand", flag = "weapon1Attack", modName = "ManaOnHit", modType = "BASE", cfg = "weapon1" }, + { label = "Off Hand", flag = "weapon2Attack", modName = "ManaOnHit", modType = "BASE", cfg = "weapon2" }, { label = "Enemy modifiers", modName = { "SelfManaOnHit" }, modType = "BASE", cfg = "skill", enemy = true }, }, }, - { label = "Mana Gain on Kill", haveOutput = "ManaOnKill", { format = "{1:output:ManaOnKill}", - {modName = "ManaOnKill"}, + { label = "Mana Gain on Kill", haveOutput = "ManaOnKill", { format = "{1:output:ManaOnKill}", + {modName = "ManaOnKill"}, }, }, } } } }, @@ -1299,7 +1299,7 @@ return { }, }, { label = "Scorch Duration", bgCol = colorCodes.SCORCHBG, flag = "scorch", { format = "{2:output:ScorchDuration}s", { breakdown = "MainHand.ScorchDuration" }, - { breakdown = "OffHand.ScorchDuration" }, + { breakdown = "OffHand.ScorchDuration" }, { breakdown = "ScorchDuration" }, { label = "Player modifiers", modName = { "EnemyScorchDuration", "EnemyAilmentDuration", "EnemyElementalAilmentDuration" }, cfg = "skill" }, { label = "Enemy modifiers", modName = { "SelfScorchDuration", "SelfAilmentDuration", "SelfElementalAilmentDuration", "BuffExpireFaster" }, enemy = true }, @@ -1443,22 +1443,22 @@ return { { label = "Guaranteed Saps", modName = "SapOverride", modType = "BASE" }, }, }, { label = "Freeze Buildup", haveOutput = "FreezeBuildupAvg", { format = "{1:output:FreezeBuildupAvg}%", - { breakdown = "FreezeBuildup" }, + { breakdown = "FreezeBuildup" }, { label = "Player modifiers", modName = { "EnemyFreezeBuildup", "EnemyImmobilisationBuildup" }, cfg = "skill" }, { label = "Enemy modifiers", modName = { "PoiseThreshold", "EnemyFreezeThreshold", "FreezeBuildup", "ImmobilisationBuildup", "EnemyAilmentThreshold" }, enemy = true }, }, }, { label = "Electrocute Buildup", haveOutput = "ElectrocuteBuildupAvg", { format = "{1:output:ElectrocuteBuildupAvg}%", - { breakdown = "ElectrocuteBuildup" }, + { breakdown = "ElectrocuteBuildup" }, { label = "Player modifiers", modName = { "EnemyElectrocuteBuildup", "EnemyImmobilisationBuildup" }, cfg = "skill" }, { label = "Enemy modifiers", modName = { "PoiseThreshold", "EnemyElectrocuteThreshold", "ElectrocuteBuildup", "ImmobilisationBuildup", "EnemyAilmentThreshold" }, enemy = true }, }, }, { label = "Stun Buildup", haveOutput = "HeavyStunBuildupAvg", { format = "{1:output:HeavyStunBuildupAvg}%", - { breakdown = "HeavyStunBuildup" }, + { breakdown = "HeavyStunBuildup" }, { label = "Player modifiers", modName = { "EnemyHeavyStunBuildup", "EnemyImmobilisationBuildup", "PhysicalHeavyStunBuildup" }, cfg = "skill" }, { label = "Enemy modifiers", modName = { "PoiseThreshold", "EnemyHeavyStunThreshold", "EnemyStunThreshold", "HeavyStunBuildup", "ImmobilisationBuildup", "StunBuildup" }, enemy = true }, }, }, { label = "Pin Buildup", haveOutput = "PinBuildupAvg", { format = "{1:output:PinBuildupAvg}%", - { breakdown = "PinBuildup" }, + { breakdown = "PinBuildup" }, { label = "Player modifiers", modName = { "EnemyPinBuildup", "EnemyImmobilisationBuildup" }, cfg = "skill" }, { label = "Enemy modifiers", modName = { "PoiseThreshold", "EnemyPinThreshold", "PinBuildup", "ImmobilisationBuildup" }, enemy = true }, }, }, @@ -1466,32 +1466,32 @@ return { } }, { 1, "MiscEffects", 1, colorCodes.OFFENCE, {{ defaultCollapsed = false, label = "Other Effects", data = { { label = "Stun Threshold", flag = "hit", notFlag = "attack", { format = "x {2:output:EnemyStunThresholdMod}", { modName = "EnemyStunThreshold", cfg = "skill" }, }, }, - { label = "Stun Duration", flag = "hit", notFlag = "attack", { format = "{2:output:EnemyStunDuration}s", - { breakdown = "EnemyStunDuration" }, + { label = "Stun Duration", flag = "hit", notFlag = "attack", { format = "{2:output:EnemyStunDuration}s", + { breakdown = "EnemyStunDuration" }, { label = "Player modifiers", modName = { "EnemyStunDuration", "EnemyStunDurationOnCrit", "DoubleEnemyStunDurationChance" }, cfg = "skill" }, { label = "Enemy modifiers", modName = { "StunRecovery", "SelfDoubleStunDurationChance" }, enemy = true }, }, }, { label = "MH Stun Threshold", bgCol = colorCodes.MAINHANDBG, flagList = {"hit","weapon1Attack"}, { format = "x {2:output:MainHand.EnemyStunThresholdMod}", { modName = "EnemyStunThreshold", cfg = "weapon1" }, }, }, - { label = "MH Stun Duration", bgCol = colorCodes.MAINHANDBG, flagList = {"hit","weapon1Attack"}, { format = "{2:output:MainHand.EnemyStunDuration}s", - { breakdown = "MainHand.EnemyStunDuration" }, + { label = "MH Stun Duration", bgCol = colorCodes.MAINHANDBG, flagList = {"hit","weapon1Attack"}, { format = "{2:output:MainHand.EnemyStunDuration}s", + { breakdown = "MainHand.EnemyStunDuration" }, { label = "Player modifiers", modName = { "EnemyStunDuration", "EnemyStunDurationOnCrit", "DoubleEnemyStunDurationChance" }, cfg = "weapon1" }, { label = "Enemy modifiers", modName = { "StunRecovery", "SelfDoubleStunDurationChance" }, enemy = true }, }, }, { label = "OH Stun Threshold", bgCol = colorCodes.OFFHANDBG, flagList = {"hit","weapon2Attack"}, { format = "x {2:output:OffHand.EnemyStunThresholdMod}", { modName = "EnemyStunThreshold", cfg = "weapon2" }, }, }, - { label = "OH Stun Duration", bgCol = colorCodes.OFFHANDBG, flagList = {"hit","weapon2Attack"}, { format = "{2:output:OffHand.EnemyStunDuration}s", - { breakdown = "OffHand.EnemyStunDuration" }, + { label = "OH Stun Duration", bgCol = colorCodes.OFFHANDBG, flagList = {"hit","weapon2Attack"}, { format = "{2:output:OffHand.EnemyStunDuration}s", + { breakdown = "OffHand.EnemyStunDuration" }, { label = "Player modifiers", modName = { "EnemyStunDuration", "EnemyStunDurationOnCrit", "DoubleEnemyStunDurationChance" }, cfg = "weapon2" }, { label = "Enemy modifiers", modName = { "StunRecovery", "SelfDoubleStunDurationChance" }, enemy = true }, }, }, - { label = "Knockback Chance", haveOutput = "KnockbackChance", { format = "{0:output:KnockbackChance}%", - { label = "Player modifiers", modName = "EnemyKnockbackChance", cfg = "skill" }, + { label = "Knockback Chance", haveOutput = "KnockbackChance", { format = "{0:output:KnockbackChance}%", + { label = "Player modifiers", modName = "EnemyKnockbackChance", cfg = "skill" }, { label = "Enemy modifiers", modName = "SelfKnockbackChance", enemy = true }, }, }, - { label = "Knockback Dist.", haveOutput = "KnockbackChance", { format = "{0:output:KnockbackDistance}", + { label = "Knockback Dist.", haveOutput = "KnockbackChance", { format = "{0:output:KnockbackDistance}", { breakdown = "KnockbackDistance" }, - { modName = "EnemyKnockbackDistance", cfg = "skill" }, + { modName = "EnemyKnockbackDistance", cfg = "skill" }, }, }, - { label = "MH K.B. Chance", bgCol = colorCodes.MAINHANDBG, haveOutput = "MainHand.KnockbackChance", { format = "{0:output:MainHand.KnockbackChance}%", + { label = "MH K.B. Chance", bgCol = colorCodes.MAINHANDBG, haveOutput = "MainHand.KnockbackChance", { format = "{0:output:MainHand.KnockbackChance}%", { label = "Player modifiers", modName = "EnemyKnockbackChance", cfg = "weapon1" }, { label = "Enemy modifiers", modName = "SelfKnockbackChance", enemy = true }, }, }, @@ -1499,7 +1499,7 @@ return { { breakdown = "MainHand.KnockbackDistance" }, { modName = "EnemyKnockbackDistance", cfg = "weapon1" }, }, }, - { label = "OH K.B. Chance", bgCol = colorCodes.OFFHANDBG, haveOutput = "OffHand.KnockbackChance", { format = "{0:output:OffHand.KnockbackChance}%", + { label = "OH K.B. Chance", bgCol = colorCodes.OFFHANDBG, haveOutput = "OffHand.KnockbackChance", { format = "{0:output:OffHand.KnockbackChance}%", { label = "Player modifiers", modName = "EnemyKnockbackChance", cfg = "weapon2" }, { label = "Enemy modifiers", modName = "SelfKnockbackChance", enemy = true }, }, }, @@ -1555,51 +1555,51 @@ return { { label = "Reserved", { format = "{0:output:LifeReserved} ({0:output:LifeReservedPercent}%)", { breakdown = "LifeReserved" }, }, }, { label = "Unreserved", { format = "{0:output:LifeUnreserved} ({0:output:LifeUnreservedPercent}%)" }, }, { label = "Total Recoverable", haveOutput = "CappingLife", { format = "{0:output:LifeRecoverable}", { breakdown = "LifeUnreserved" }, }, }, - { label = "Recharge Rate", haveOutput = "EnergyShieldRechargeAppliesToLife", { format = "{1:output:LifeRecharge}", + { label = "Recharge Rate", haveOutput = "EnergyShieldRechargeAppliesToLife", { format = "{1:output:LifeRecharge}", { breakdown = "LifeRecharge" }, { modName = { "EnergyShieldRecharge", "LifeRecoveryRate", "EnergyShieldRechargeAppliesToLife" }, }, }, }, - { label = "Recharge Delay", haveOutput = "EnergyShieldRechargeAppliesToLife", { format = "{2:output:EnergyShieldRechargeDelay}s", + { label = "Recharge Delay", haveOutput = "EnergyShieldRechargeAppliesToLife", { format = "{2:output:EnergyShieldRechargeDelay}s", { breakdown = "EnergyShieldRechargeDelay" }, { modName = "EnergyShieldRechargeFaster" }, }, }, { label = "Recovery", { format = "{1:output:LifeRegenRecovery} ({1:output:LifeRegenPercent}%)", - { breakdown = "LifeRegenRecovery" }, + { breakdown = "LifeRegenRecovery" }, { label = "Sources", modName = { "LifeRegen", "LifeRegenPercent", "LifeDegen", "LifeDegenPercent", "LifeRecovery" }, modType = "BASE" }, { label = "Increased Life Recovery", modName = { "LifeRegen", "LifeRecoveryRate" }, modType = "INC" }, { label = "More Life Recovery", modName = { "LifeRegen", "LifeRecoveryRate" }, modType = "MORE" }, }, }, - { label = "Recoup", haveOutput = "LifeRecoup", { format = "{1:output:LifeRecoup}%", { breakdown = "LifeRecoup" }, + { label = "Recoup", haveOutput = "LifeRecoup", { format = "{1:output:LifeRecoup}%", { breakdown = "LifeRecoup" }, { label = "Sources", modName = "LifeRecoup" }, { label = "Recovery modifiers", modName = "LifeRecoveryRate" }, { label = "FasterRecoup", modName = { "3SecondRecoup", "3SecondLifeRecoup" } }, }, }, - { label = "Phys Recoup", haveOutput = "PhysicalLifeRecoup", { format = "{1:output:PhysicalLifeRecoup}%", { breakdown = "PhysicalLifeRecoup" }, + { label = "Phys Recoup", haveOutput = "PhysicalLifeRecoup", { format = "{1:output:PhysicalLifeRecoup}%", { breakdown = "PhysicalLifeRecoup" }, { label = "Sources", modName = "PhysicalLifeRecoup" }, { label = "Recovery modifiers", modName = "LifeRecoveryRate" }, { label = "FasterRecoup", modName = { "3SecondRecoup", "3SecondLifeRecoup" } }, }, }, - { label = "Light Recoup", haveOutput = "LightningLifeRecoup", { format = "{1:output:LightningLifeRecoup}%", { breakdown = "LightningLifeRecoup" }, + { label = "Light Recoup", haveOutput = "LightningLifeRecoup", { format = "{1:output:LightningLifeRecoup}%", { breakdown = "LightningLifeRecoup" }, { label = "Sources", modName = "LightningLifeRecoup" }, { label = "Recovery modifiers", modName = "LifeRecoveryRate" }, { label = "FasterRecoup", modName = { "3SecondRecoup", "3SecondLifeRecoup" } }, }, }, - { label = "Cold Recoup", haveOutput = "ColdLifeRecoup", { format = "{1:output:ColdLifeRecoup}%", { breakdown = "ColdLifeRecoup" }, + { label = "Cold Recoup", haveOutput = "ColdLifeRecoup", { format = "{1:output:ColdLifeRecoup}%", { breakdown = "ColdLifeRecoup" }, { label = "Sources", modName = "ColdLifeRecoup" }, { label = "Recovery modifiers", modName = "LifeRecoveryRate" }, { label = "FasterRecoup", modName = { "3SecondRecoup", "3SecondLifeRecoup" } }, }, }, - { label = "Fire Recoup", haveOutput = "FireLifeRecoup", { format = "{1:output:FireLifeRecoup}%", { breakdown = "FireLifeRecoup" }, + { label = "Fire Recoup", haveOutput = "FireLifeRecoup", { format = "{1:output:FireLifeRecoup}%", { breakdown = "FireLifeRecoup" }, { label = "Sources", modName = "FireLifeRecoup" }, { label = "Recovery modifiers", modName = "LifeRecoveryRate" }, { label = "FasterRecoup", modName = { "3SecondRecoup", "3SecondLifeRecoup" } }, }, }, - { label = "Chaos Recoup", haveOutput = "ChaosLifeRecoup", { format = "{1:output:ChaosLifeRecoup}%", { breakdown = "ChaosLifeRecoup" }, + { label = "Chaos Recoup", haveOutput = "ChaosLifeRecoup", { format = "{1:output:ChaosLifeRecoup}%", { breakdown = "ChaosLifeRecoup" }, { label = "Sources", modName = "ChaosLifeRecoup" }, { label = "Recovery modifiers", modName = "LifeRecoveryRate" }, { label = "FasterRecoup", modName = { "3SecondRecoup", "3SecondLifeRecoup" } }, }, }, - { label = "Dmg. Mit. Regen", haveOutput = "PhysicalDamageMitigatedLifePseudoRecoup", { format = "{1:output:PhysicalDamageMitigatedLifePseudoRecoup}%", { breakdown = "PhysicalDamageMitigatedLifePseudoRecoup" }, + { label = "Dmg. Mit. Regen", haveOutput = "PhysicalDamageMitigatedLifePseudoRecoup", { format = "{1:output:PhysicalDamageMitigatedLifePseudoRecoup}%", { breakdown = "PhysicalDamageMitigatedLifePseudoRecoup" }, { label = "Sources", modName = "PhysicalDamageMitigatedLifePseudoRecoup" }, { label = "Increased Life Regeneration Rate", modName = { "LifeRegen" }, modType = "INC" }, { label = "More Life Regeneration Rate", modName = { "LifeRegen" }, modType = "MORE" }, @@ -1618,12 +1618,12 @@ return { { label = "Reserved", { format = "{0:output:ManaReserved} ({0:output:ManaReservedPercent}%)", { breakdown = "ManaReserved" }, }, }, { label = "Unreserved", { format = "{0:output:ManaUnreserved} ({0:output:ManaUnreservedPercent}%)" }, }, { label = "Recovery", { format = "{1:output:ManaRegenRecovery} ({1:output:ManaRegenPercent}%)", - { breakdown = "ManaRegenRecovery" }, + { breakdown = "ManaRegenRecovery" }, { label = "Sources", modName = { "ManaRegen", "ManaRegenPercent", "ManaDegen", "ManaDegenPercent", "ManaRecovery" }, modType = "BASE" }, { label = "Increased Mana Recovery", modName = { "ManaRegen", "ManaRecoveryRate" }, modType = "INC" }, { label = "More Mana Recovery", modName = { "ManaRegen", "ManaRecoveryRate" }, modType = "MORE" }, }, }, - { label = "Recoup", haveOutput = "ManaRecoup", { format = "{1:output:ManaRecoup}%", { breakdown = "ManaRecoup" }, + { label = "Recoup", haveOutput = "ManaRecoup", { format = "{1:output:ManaRecoup}%", { breakdown = "ManaRecoup" }, { label = "Sources", modName = "ManaRecoup" }, { label = "Recovery modifiers", modName = "ManaRecoveryRate" }, { label = "FasterRecoup", modName = "3SecondRecoup" }, @@ -1652,21 +1652,21 @@ return { { label = "Total More", { format = "{0:mod:1}%", { modName = { "EnergyShield", "Defences" }, modType = "MORE" }, }, }, { label = "Total", { format = "{0:output:EnergyShield}", { breakdown = "EnergyShield" }, }, }, { label = "Total Recoverable", haveOutput = "CappingES", { format = "{0:output:EnergyShieldRecoveryCap}", { breakdown = "EnergyShield" }, }, }, - { label = "Recharge Rate", haveOutput = "EnergyShieldRechargeAppliesToEnergyShield", { format = "{1:output:EnergyShieldRecharge}", + { label = "Recharge Rate", haveOutput = "EnergyShieldRechargeAppliesToEnergyShield", { format = "{1:output:EnergyShieldRecharge}", { breakdown = "EnergyShieldRecharge" }, { modName = { "EnergyShieldRecharge", "EnergyShieldRecoveryRate", "NoEnergyShieldRecharge", "CannotGainEnergyShield" }, }, }, }, - { label = "Recharge Delay", haveOutput = "EnergyShieldRechargeAppliesToEnergyShield", { format = "{2:output:EnergyShieldRechargeDelay}s", + { label = "Recharge Delay", haveOutput = "EnergyShieldRechargeAppliesToEnergyShield", { format = "{2:output:EnergyShieldRechargeDelay}s", { breakdown = "EnergyShieldRechargeDelay" }, { modName = "EnergyShieldRechargeFaster" }, }, }, { label = "Recovery", { format = "{1:output:EnergyShieldRegenRecovery} ({1:output:EnergyShieldRegenPercent}%)", - { breakdown = "EnergyShieldRegenRecovery" }, + { breakdown = "EnergyShieldRegenRecovery" }, { label = "Sources", modName = { "EnergyShieldRegen", "EnergyShieldRegenPercent", "EnergyShieldDegen", "EnergyShieldDegenPercent", "EnergyShieldRecovery" }, modType = "BASE" }, { label = "Increased Energy Shield Recovery", modName = { "EnergyShieldRegen", "EnergyShieldRecoveryRate" }, modType = "INC" }, { label = "More Energy Shield Recovery", modName = { "EnergyShieldRegen", "EnergyShieldRecoveryRate" }, modType = "MORE" }, }, }, - { label = "Recoup", haveOutput = "EnergyShieldRecoup", { format = "{1:output:EnergyShieldRecoup}%", { breakdown = "EnergyShieldRecoup" }, + { label = "Recoup", haveOutput = "EnergyShieldRecoup", { format = "{1:output:EnergyShieldRecoup}%", { breakdown = "EnergyShieldRecoup" }, { label = "Sources", modName = "EnergyShieldRecoup" }, { label = "Recovery modifiers", modName = "EnergyShieldRecoveryRate" }, { label = "FasterRecoup", modName = "3SecondRecoup" }, @@ -1709,6 +1709,22 @@ return { }, }, } } } }, +{ 1, "Ward", 2, colorCodes.WARD, {{ defaultCollapsed = false, label = "Runic Ward", data = { + extra = "{0:output:Ward}", + { label = "Base from Armours", { format = "{0:output:Gear:Ward}", { breakdown = "Ward", gearOnly = true }, }, }, + { label = "Global Base", { format = "{0:mod:1}", { modName = "Ward", modType = "BASE" }, }, }, + { label = "Inc. from Tree", { format = "{0:mod:1}%", { modName = "Ward", modType = "INC", modSource = "Tree" }, }, }, + { label = "Total Increased", { format = "{0:mod:1}%", { modName = { "Ward", "Defences" }, modType = "INC" }, }, }, + { label = "Total More", { format = "{0:mod:1}%", { modName = { "Ward", "Defences" }, modType = "MORE" }, }, }, + { label = "Total", { format = "{0:output:Ward}", { breakdown = "Ward" }, }, }, + { label = "Recovery", { format = "{1:output:WardRegenRecovery} ({1:output:WardRegenPercent}%)", + { breakdown = "WardRegenRecovery" }, + { label = "Sources", modName = { "WardRegen", "WardRegenPercent", "WardDegen", "WardDegenPercent", "WardRecovery" }, modType = "BASE" }, + { label = "Increased Ward Recovery", modName = { "WardRegen", "WardRecoveryRate" }, modType = "INC" }, + { label = "More Ward Recovery", modName = { "WardRegen", "WardRecoveryRate" }, modType = "MORE" }, + }, }, +} } +} }, -- secondary defenses { 1, "Resist", 3, colorCodes.DEFENCE, {{ defaultCollapsed = false, label = "Resists", data = { extra = colorCodes.FIRE.."{0:output:FireResist}+{0:output:FireResistOverCap}^7/"..colorCodes.COLD.."{0:output:ColdResist}+{0:output:ColdResistOverCap}^7/"..colorCodes.LIGHTNING.."{0:output:LightningResist}+{0:output:LightningResistOverCap}", @@ -1769,7 +1785,7 @@ return { { label = "Total Increased", { format = "{0:mod:1}%", { modName = { "Evasion", "ArmourAndEvasion", "Defences" }, modType = "INC" }, }, }, { label = "Total More", { format = "{0:mod:1}%", { modName = { "Evasion", "ArmourAndEvasion", "Defences" }, modType = "MORE" }, }, }, { label = "Total", { format = "{0:output:Evasion}", { breakdown = "Evasion" }, }, }, - { label = "Evade Chance", haveOutput = "noSplitEvade", { format = "{0:output:EvadeChance}%", + { label = "Evade Chance", haveOutput = "noSplitEvade", { format = "{0:output:EvadeChance}%", { breakdown = "EvadeChance" }, { label = "Player modifiers", modName = { "CannotEvade", "EvadeChance", "MeleeEvadeChance", "ProjectileEvadeChance", "SpellEvadeChance", "SpellProjectileEvadeChance" } }, { label = "Enemy modifiers", modName = { "Accuracy", "HitChance" }, enemy = true }, @@ -1809,10 +1825,10 @@ return { extra = "{0:output:EffectiveBlockChance}%", { label = "Block Chance", { format = "{0:output:BlockChance}% (+{0:output:BlockChanceOverCap}%)", { breakdown = "BlockChance" }, - { modName = { "BlockChance", "ReplaceShieldBlock", "BlockChanceMax" } }, + { modName = { "BlockChance", "ReplaceShieldBlock", "BlockChanceMax" } }, }, }, - { label = "Taken From Block", haveOutput = "ShowBlockEffect", { format = "{0:output:DamageTakenOnBlock}%", - { breakdown = "BlockEffect" }, + { label = "Taken From Block", haveOutput = "ShowBlockEffect", { format = "{0:output:DamageTakenOnBlock}%", + { breakdown = "BlockEffect" }, { modName = { "BlockEffect" }, }, }, }, { label = "Life on Block", haveOutput = "LifeOnBlock", { format = "{0:output:LifeOnBlock}", { modName = "LifeOnBlock" }, }, }, @@ -1957,13 +1973,13 @@ return { { label = "Stun Threshold", { format = "{0:output:StunThreshold}", { breakdown = "StunThreshold" }, { modName = { "StunThreshold", "StunThresholdManaPercent", "StunThresholdEnergyShieldPercent" } }, }, }, { label = "Stun Chance", { format = "{0:output:SelfStunChance}%", { breakdown = "SelfStunChance" }, }, }, { label = "Interrupt Avoid Ch.", haveOutput = "InterruptStunAvoidChance", { format = "{0:output:InterruptStunAvoidChance}%", { modName = "AvoidInterruptStun" }, }, }, - { label = "Stun Duration", { format = "{2:output:StunDuration}s", + { label = "Stun Duration", { format = "{2:output:StunDuration}s", { breakdown = "StunDuration" }, { modName = { "StunDuration", "StunRecovery" } }, }, }, - { label = "Block Stun Duration", { format = "{2:output:BlockDuration}s", + { label = "Block Stun Duration", { format = "{2:output:BlockDuration}s", { breakdown = "BlockDuration" }, - { modName = { "StunDuration", "StunRecovery", "BlockRecovery" }, }, + { modName = { "StunDuration", "StunRecovery", "BlockRecovery" }, }, }, }, } }, { defaultCollapsed = true, label = "Other Avoidance", data = { { label = "Blind Avoid Ch.", haveOutput = "BlindAvoidChance", { format = "{0:output:BlindAvoidChance}%", { modName = { "AvoidBlind", "BlindImmune" } }, }, }, @@ -2019,8 +2035,8 @@ return { { format = colorCodes.CHAOS.."Chaos:" }, }, { label = "Enemy Damage", - { format = "{2:output:totalEnemyDamage}", - { breakdown = "totalEnemyDamage" }, + { format = "{2:output:totalEnemyDamage}", + { breakdown = "totalEnemyDamage" }, { label = "Enemy modifiers", modName = {"Damage", "CritChance", "CritMultiplier"}, enemy = true }, { label = "Enemy Conversion modifiers", modName = { "PhysicalDamageGainAsLightning", "PhysicalDamageSkillConvertToLightning", "PhysicalDamageConvertToLightning", @@ -2029,8 +2045,8 @@ return { "PhysicalDamageGainAsChaos", "PhysicalDamageSkillConvertToChaos", "PhysicalDamageConvertToChaos" }, enemy = true }, }, - { format = "{2:output:PhysicalEnemyDamage}", - { breakdown = "PhysicalEnemyDamage" }, + { format = "{2:output:PhysicalEnemyDamage}", + { breakdown = "PhysicalEnemyDamage" }, { label = "Enemy modifiers", modName = {"Damage", "PhysicalDamage", "CritChance", "CritMultiplier"}, enemy = true }, { label = "Enemy Conversion modifiers", modName = { "PhysicalDamageGainAsLightning", "PhysicalDamageSkillConvertToLightning", "PhysicalDamageConvertToLightning", @@ -2040,32 +2056,32 @@ return { }, enemy = true }, }, { format = "{2:output:LightningEnemyDamage}", - { breakdown = "LightningEnemyDamage" }, + { breakdown = "LightningEnemyDamage" }, { label = "Enemy modifiers", modName = {"Damage", "LightningDamage", "ElementalDamage", "CritChance", "CritMultiplier"}, enemy = true }, { label = "Enemy Conversion modifiers", modName = {"PhysicalDamageGainAsLightning", "PhysicalDamageSkillConvertToLightning", "PhysicalDamageConvertToLightning"}, enemy = true }, }, { format = "{2:output:ColdEnemyDamage}", - { breakdown = "ColdEnemyDamage" }, + { breakdown = "ColdEnemyDamage" }, { label = "Enemy modifiers", modName = {"Damage", "ColdDamage", "ElementalDamage", "CritChance", "CritMultiplier"}, enemy = true }, { label = "Enemy Conversion modifiers", modName = {"PhysicalDamageGainAsCold", "PhysicalDamageSkillConvertToCold", "PhysicalDamageConvertToCold"}, enemy = true }, }, - { format = "{2:output:FireEnemyDamage}", - { breakdown = "FireEnemyDamage" }, + { format = "{2:output:FireEnemyDamage}", + { breakdown = "FireEnemyDamage" }, { label = "Enemy modifiers", modName = {"Damage", "FireDamage", "ElementalDamage", "CritChance", "CritMultiplier"}, enemy = true }, { label = "Enemy Conversion modifiers", modName = {"PhysicalDamageGainAsFire", "PhysicalDamageSkillConvertToFire", "PhysicalDamageConvertToFire"}, enemy = true }, }, { format = "{2:output:ChaosEnemyDamage}", - { breakdown = "ChaosEnemyDamage" }, + { breakdown = "ChaosEnemyDamage" }, { label = "Enemy modifiers", modName = {"Damage", "ChaosDamage", "CritChance", "CritMultiplier"}, enemy = true }, { label = "Enemy Conversion modifiers", modName = {"PhysicalDamageGainAsChaos", "PhysicalDamageSkillConvertToChaos", "PhysicalDamageConvertToChaos"}, enemy = true }, }, }, { label = "Taken As", - { format = "{2:output:totalTakenDamage}", - { breakdown = "totalTakenDamage" }, + { format = "{2:output:totalTakenDamage}", + { breakdown = "totalTakenDamage" }, }, - { format = "{2:output:PhysicalTakenDamage}", - { breakdown = "PhysicalTakenDamage" }, + { format = "{2:output:PhysicalTakenDamage}", + { breakdown = "PhysicalTakenDamage" }, { label = "Physical Taken as", modName = { "PhysicalDamageTakenAsLightning", "PhysicalDamageFromHitsTakenAsLightning", "PhysicalDamageTakenAsCold", "PhysicalDamageFromHitsTakenAsCold", @@ -2081,7 +2097,7 @@ return { } }, }, { format = "{2:output:LightningTakenDamage}", - { breakdown = "LightningTakenDamage" }, + { breakdown = "LightningTakenDamage" }, { label = "Lightning Taken as", modName = { "LightningDamageTakenAsPhysical", "LightningDamageFromHitsTakenAsPhysical", "LightningDamageTakenAsCold", "LightningDamageFromHitsTakenAsCold", @@ -2097,7 +2113,7 @@ return { } }, }, { format = "{2:output:ColdTakenDamage}", - { breakdown = "ColdTakenDamage" }, + { breakdown = "ColdTakenDamage" }, { label = "Cold Taken as", modName = { "ColdDamageTakenAsPhysical", "ColdDamageFromHitsTakenAsPhysical", "ColdDamageTakenAsLightning", "ColdDamageFromHitsTakenAsLightning", @@ -2112,8 +2128,8 @@ return { "ChaosDamageTakenAsCold", "ChaosDamageFromHitsTakenAsCold" } }, }, - { format = "{2:output:FireTakenDamage}", - { breakdown = "FireTakenDamage" }, + { format = "{2:output:FireTakenDamage}", + { breakdown = "FireTakenDamage" }, { label = "Fire Taken as", modName = { "FireDamageTakenAsPhysical", "FireDamageFromHitsTakenAsPhysical", "FireDamageTakenAsLightning", "FireDamageFromHitsTakenAsLightning", @@ -2129,7 +2145,7 @@ return { } }, }, { format = "{2:output:ChaosTakenDamage}", - { breakdown = "ChaosTakenDamage" }, + { breakdown = "ChaosTakenDamage" }, { label = "Chaos Taken as", modName = { "ChaosDamageTakenAsPhysical", "ChaosDamageFromHitsTakenAsPhysical", "ChaosDamageTakenAsLightning", "ChaosDamageFromHitsTakenAsLightning", @@ -2149,97 +2165,97 @@ return { colWidth = 95, { label = "Hit taken Mult.", { format = "" }, - { format = "x {3:output:PhysicalTakenHitMult}", - { breakdown = "PhysicalTakenHitMult" }, - { modName = { "DamageTaken", "DamageTakenWhenHit", "AttackDamageTaken", "SpellDamageTaken", "PhysicalDamageTaken", "PhysicalDamageTakenWhenHit", "PhysicalDamageTakenAsFire", "PhysicalDamageTakenAsCold", "PhysicalDamageTakenAsLightning", "PhysicalDamageTakenAsChaos" } } + { format = "x {3:output:PhysicalTakenHitMult}", + { breakdown = "PhysicalTakenHitMult" }, + { modName = { "DamageTaken", "DamageTakenWhenHit", "AttackDamageTaken", "SpellDamageTaken", "PhysicalDamageTaken", "PhysicalDamageTakenWhenHit", "PhysicalDamageTakenAsFire", "PhysicalDamageTakenAsCold", "PhysicalDamageTakenAsLightning", "PhysicalDamageTakenAsChaos" } } }, { format = "x {3:output:LightningTakenHitMult}", - { breakdown = "LightningTakenHitMult" }, + { breakdown = "LightningTakenHitMult" }, { modName = { "DamageTaken", "DamageTakenWhenHit", "AttackDamageTaken", "SpellDamageTaken", "LightningDamageTaken", "LightningDamageTakenWhenHit", "ElementalDamageTaken", "ElementalDamageTakenWhenHit", "LightningDamageTakenAsPhysical", "LightningDamageTakenAsFire", "LightningDamageTakenAsCold", "LightningDamageTakenAsChaos", "ElementalDamageTakenAsPhysical", "ElementalDamageTakenAsChaos", "SelfIgnoreLightningResistance" } } }, { format = "x {3:output:ColdTakenHitMult}", - { breakdown = "ColdTakenHitMult" }, + { breakdown = "ColdTakenHitMult" }, { modName = { "DamageTaken", "DamageTakenWhenHit", "AttackDamageTaken", "SpellDamageTaken", "ColdDamageTaken", "ColdDamageTakenWhenHit", "ElementalDamageTaken", "ElementalDamageTakenWhenHit", "ColdDamageTakenAsPhysical", "ColdDamageTakenAsFire", "ColdDamageTakenAsLightning", "ColdDamageTakenAsChaos", "ElementalDamageTakenAsPhysical", "ElementalDamageTakenAsChaos", "SelfIgnoreColdResistance" } } }, - { format = "x {3:output:FireTakenHitMult}", - { breakdown = "FireTakenHitMult" }, - { modName = { "DamageTaken", "DamageTakenWhenHit", "AttackDamageTaken", "SpellDamageTaken", "FireDamageTaken", "FireDamageTakenWhenHit", "ElementalDamageTaken", "ElementalDamageTakenWhenHit", "FireDamageTakenAsPhysical", "FireDamageTakenAsCold", "FireDamageTakenAsLightning", "FireDamageTakenAsChaos", "ElementalDamageTakenAsPhysical", "ElementalDamageTakenAsChaos", "SelfIgnoreFireResistance" } } + { format = "x {3:output:FireTakenHitMult}", + { breakdown = "FireTakenHitMult" }, + { modName = { "DamageTaken", "DamageTakenWhenHit", "AttackDamageTaken", "SpellDamageTaken", "FireDamageTaken", "FireDamageTakenWhenHit", "ElementalDamageTaken", "ElementalDamageTakenWhenHit", "FireDamageTakenAsPhysical", "FireDamageTakenAsCold", "FireDamageTakenAsLightning", "FireDamageTakenAsChaos", "ElementalDamageTakenAsPhysical", "ElementalDamageTakenAsChaos", "SelfIgnoreFireResistance" } } }, { format = "x {3:output:ChaosTakenHitMult}", - { breakdown = "ChaosTakenHitMult" }, + { breakdown = "ChaosTakenHitMult" }, { modName = { "DamageTaken", "DamageTakenWhenHit", "AttackDamageTaken", "SpellDamageTaken", "ChaosDamageTaken", "ChaosDamageTakenWhenHit", "ChaosDamageTakenAsPhysical", "ChaosDamageTakenAsFire", "ChaosDamageTakenAsCold", "ChaosDamageTakenAsLightning", "SelfIgnoreChaosResistance" } } }, }, { label = "Reflect taken", haveOutput = "AnyTakenReflect", { format = "" }, - { format = "x {2:output:PhysicalTakenReflectMult}", - { breakdown = "PhysicalTakenReflectMult" }, - { modName = { "DamageTaken", "DamageTakenWhenHit", "PhysicalDamageTaken", "PhysicalDamageTakenWhenHit", "PhysicalReflectedDamageTaken", "PhysicalDamageTakenAsFire", "PhysicalDamageTakenAsCold", "PhysicalDamageTakenAsLightning", "PhysicalDamageTakenAsChaos" } } + { format = "x {2:output:PhysicalTakenReflectMult}", + { breakdown = "PhysicalTakenReflectMult" }, + { modName = { "DamageTaken", "DamageTakenWhenHit", "PhysicalDamageTaken", "PhysicalDamageTakenWhenHit", "PhysicalReflectedDamageTaken", "PhysicalDamageTakenAsFire", "PhysicalDamageTakenAsCold", "PhysicalDamageTakenAsLightning", "PhysicalDamageTakenAsChaos" } } }, { format = "x {2:output:LightningTakenReflectMult}", - { breakdown = "LightningTakenReflectMult" }, + { breakdown = "LightningTakenReflectMult" }, { modName = { "DamageTaken", "DamageTakenWhenHit", "LightningDamageTaken", "LightningDamageTakenWhenHit", "LightningReflectedDamageTaken", "ElementalDamageTaken", "ElementalDamageTakenWhenHit", "ElementalReflectedDamageTaken", "LightningDamageTakenAsPhysical", "LightningDamageTakenAsFire", "LightningDamageTakenAsCold", "LightningDamageTakenAsChaos", "ElementalDamageTakenAsPhysical", "ElementalDamageTakenAsChaos" } } }, { format = "x {2:output:ColdTakenReflectMult}", - { breakdown = "ColdTakenReflectMult" }, + { breakdown = "ColdTakenReflectMult" }, { modName = { "DamageTaken", "DamageTakenWhenHit", "ColdDamageTaken", "ColdDamageTakenWhenHit", "ColdReflectedDamageTaken", "ElementalDamageTaken", "ElementalDamageTakenWhenHit", "ElementalReflectedDamageTaken", "ColdDamageTakenAsPhysical", "ColdDamageTakenAsFire", "ColdDamageTakenAsLightning", "ColdDamageTakenAsChaos", "ElementalDamageTakenAsPhysical", "ElementalDamageTakenAsChaos" } } }, - { format = "x {2:output:FireTakenReflectMult}", - { breakdown = "FireTakenReflectMult" }, - { modName = { "DamageTaken", "DamageTakenWhenHit", "FireDamageTaken", "FireDamageTakenWhenHit", "FireReflectedDamageTaken", "ElementalDamageTaken", "ElementalDamageTakenWhenHit", "ElementalReflectedDamageTaken", "ElementalDamageTakenOverTime", "FireDamageTakenAsPhysical", "FireDamageTakenAsCold", "FireDamageTakenAsLightning", "FireDamageTakenAsChaos", "ElementalDamageTakenAsPhysical", "ElementalDamageTakenAsChaos" } } + { format = "x {2:output:FireTakenReflectMult}", + { breakdown = "FireTakenReflectMult" }, + { modName = { "DamageTaken", "DamageTakenWhenHit", "FireDamageTaken", "FireDamageTakenWhenHit", "FireReflectedDamageTaken", "ElementalDamageTaken", "ElementalDamageTakenWhenHit", "ElementalReflectedDamageTaken", "ElementalDamageTakenOverTime", "FireDamageTakenAsPhysical", "FireDamageTakenAsCold", "FireDamageTakenAsLightning", "FireDamageTakenAsChaos", "ElementalDamageTakenAsPhysical", "ElementalDamageTakenAsChaos" } } }, { format = "x {2:output:ChaosTakenReflectMult}", - { breakdown = "ChaosTakenReflectMult" }, + { breakdown = "ChaosTakenReflectMult" }, { modName = { "DamageTaken", "DamageTakenWhenHit", "ChaosDamageTaken", "ChaosDamageTakenWhenHit", "ChaosDamageTakenAsPhysical", "ChaosDamageTakenAsFire", "ChaosDamageTakenAsCold", "ChaosDamageTakenAsLightning" } } }, }, { label = "Hit taken", - { format = "{2:output:totalTakenHit}", - { breakdown = "totalTakenHit" }, + { format = "{2:output:totalTakenHit}", + { breakdown = "totalTakenHit" }, }, - { format = "{2:output:PhysicalTakenHit}", - { breakdown = "PhysicalTakenHit" }, + { format = "{2:output:PhysicalTakenHit}", + { breakdown = "PhysicalTakenHit" }, }, { format = "{2:output:LightningTakenHit}", - { breakdown = "LightningTakenHit" }, + { breakdown = "LightningTakenHit" }, }, { format = "{2:output:ColdTakenHit}", - { breakdown = "ColdTakenHit" }, + { breakdown = "ColdTakenHit" }, }, - { format = "{2:output:FireTakenHit}", - { breakdown = "FireTakenHit" }, + { format = "{2:output:FireTakenHit}", + { breakdown = "FireTakenHit" }, }, { format = "{2:output:ChaosTakenHit}", - { breakdown = "ChaosTakenHit" }, + { breakdown = "ChaosTakenHit" }, }, }, { label = "PvP Hit taken", haveOutput = "PvPTotalTakenHit", - { format = "{2:output:PvPTotalTakenHit}", - { breakdown = "PvPTotalTakenHit" }, - { label = "Enemy PvP Multiplier", modName = "MultiplierPvpDamage", enemy = true }, + { format = "{2:output:PvPTotalTakenHit}", + { breakdown = "PvPTotalTakenHit" }, + { label = "Enemy PvP Multiplier", modName = "MultiplierPvpDamage", enemy = true }, }, }, { label = "ES Bypass %", haveOutput = "AnyBypass", { format = " "}, - { format = "{0:output:PhysicalEnergyShieldBypass}%", + { format = "{0:output:PhysicalEnergyShieldBypass}%", { breakdown = "PhysicalEnergyShieldBypass" }, - { modName = {"PhysicalEnergyShieldBypass", "BlockedDamageDoesntBypassES", "UnblockedDamageDoesBypassES"} }, + { modName = {"PhysicalEnergyShieldBypass", "BlockedDamageDoesntBypassES", "UnblockedDamageDoesBypassES"} }, }, { format = "{0:output:LightningEnergyShieldBypass}%", - { breakdown = "LightningEnergyShieldBypass" }, - { modName = {"LightningEnergyShieldBypass", "BlockedDamageDoesntBypassES", "UnblockedDamageDoesBypassES"} }, + { breakdown = "LightningEnergyShieldBypass" }, + { modName = {"LightningEnergyShieldBypass", "BlockedDamageDoesntBypassES", "UnblockedDamageDoesBypassES"} }, }, { format = "{0:output:ColdEnergyShieldBypass}%", { breakdown = "ColdEnergyShieldBypass" }, - { modName = {"ColdEnergyShieldBypass", "BlockedDamageDoesntBypassES", "UnblockedDamageDoesBypassES"} }, + { modName = {"ColdEnergyShieldBypass", "BlockedDamageDoesntBypassES", "UnblockedDamageDoesBypassES"} }, }, - { format = "{0:output:FireEnergyShieldBypass}%", - { breakdown = "FireEnergyShieldBypass" }, - { modName = {"FireEnergyShieldBypass", "BlockedDamageDoesntBypassES", "UnblockedDamageDoesBypassES"} }, + { format = "{0:output:FireEnergyShieldBypass}%", + { breakdown = "FireEnergyShieldBypass" }, + { modName = {"FireEnergyShieldBypass", "BlockedDamageDoesntBypassES", "UnblockedDamageDoesBypassES"} }, }, { format = "{0:output:ChaosEnergyShieldBypass}%", - { breakdown = "ChaosEnergyShieldBypass" }, - { modName = {"ChaosEnergyShieldBypass", "ChaosNotBypassEnergyShield", "BlockedDamageDoesntBypassES", "UnblockedDamageDoesBypassES"} }, + { breakdown = "ChaosEnergyShieldBypass" }, + { modName = {"ChaosEnergyShieldBypass", "ChaosNotBypassEnergyShield", "BlockedDamageDoesntBypassES", "UnblockedDamageDoesBypassES"} }, }, }, { haveOutput = "ehpSectionAnySpecificTypes", @@ -2263,7 +2279,7 @@ return { }, }, { label = "Mind over Matter %", haveOutput = "AnySpecificMindOverMatter", - { format = "{0:output:sharedMindOverMatter}%", + { format = "{0:output:sharedMindOverMatter}%", { breakdown = "sharedMindOverMatter" }, { modName = "DamageTakenFromManaBeforeLife" }, }, @@ -2380,19 +2396,19 @@ return { } }, }, { defaultCollapsed = false, label = "Effective \"Health\" Pool", data = { extra = "{0:output:TotalEHP}", - { label = "Unmitigated %", { format = "{0:output:ConfiguredDamageChance}%", - { breakdown = "ConfiguredDamageChance" }, + { label = "Unmitigated %", { format = "{0:output:ConfiguredDamageChance}%", + { breakdown = "ConfiguredDamageChance" }, { label = "Enemy modifiers", modName = { "CannotBeSuppressed", "CannotBeBlocked", "reduceEnemyBlock" }, enemy = true }, }, }, { label = "Mitigated hits", { format = "{2:output:NumberOfMitigatedDamagingHits}", }, }, - { label = "Enemy miss chance", { format = "{0:output:ConfiguredNotHitChance}%", - { breakdown = "ConfiguredNotHitChance" }, + { label = "Enemy miss chance", { format = "{0:output:ConfiguredNotHitChance}%", + { breakdown = "ConfiguredNotHitChance" }, { label = "Enemy modifiers", modName = { "CannotBeEvaded", "CannotBeDodged", "reduceEnemyDodge" }, enemy = true }, }, }, { label = "Hits before death", { format = "{2:output:TotalNumberOfHits}", { breakdown = "TotalNumberOfHits" }}, }, { label = "Effective Hit Pool",{ format = "{0:output:TotalEHP}", { breakdown = "TotalEHP" }, },}, - { label = "Time before death",{ format = "{2:output:EHPSurvivalTime}s", - { breakdown = "EHPSurvivalTime" }, + { label = "Time before death",{ format = "{2:output:EHPSurvivalTime}s", + { breakdown = "EHPSurvivalTime" }, { label = "Enemy modifiers", modName = { "TemporalChainsActionSpeed", "ActionSpeed", "Speed", "MinimumActionSpeed" }, enemy = true }, },} }, }, { defaultCollapsed = false, label = "Maximum Hit Taken", data = { @@ -2405,20 +2421,20 @@ return { { format = colorCodes.CHAOS.."Chaos:" }, }, { label = "Maximum Hit Taken", - { format = "{0:output:PhysicalMaximumHitTaken}", - { breakdown = "PhysicalMaximumHitTaken" }, + { format = "{0:output:PhysicalMaximumHitTaken}", + { breakdown = "PhysicalMaximumHitTaken" }, }, { format = "{0:output:LightningMaximumHitTaken}", - { breakdown = "LightningMaximumHitTaken" }, + { breakdown = "LightningMaximumHitTaken" }, }, { format = "{0:output:ColdMaximumHitTaken}", - { breakdown = "ColdMaximumHitTaken" }, + { breakdown = "ColdMaximumHitTaken" }, }, - { format = "{0:output:FireMaximumHitTaken}", - { breakdown = "FireMaximumHitTaken" }, + { format = "{0:output:FireMaximumHitTaken}", + { breakdown = "FireMaximumHitTaken" }, }, { format = "{0:output:ChaosMaximumHitTaken}", - { breakdown = "ChaosMaximumHitTaken" }, + { breakdown = "ChaosMaximumHitTaken" }, }, } } }, { defaultCollapsed = true, label = "Recoup and Hit Taken Over Time", data = { @@ -2429,7 +2445,7 @@ return { { format = colorCodes.MANA.."Mana:" }, { format = colorCodes.ES.."Energy Shield:" }, }, - { label = "Recoup Max.", haveOutput = "anyRecoup", + { label = "Recoup Max.", haveOutput = "anyRecoup", { format = "{0:output:LifeRecoupRecoveryMax}", { breakdown = "LifeRecoupRecoveryMax" }, { label = "Sources", modName = { "LifeRecoup", "PhysicalLifeRecoup", "LightningLifeRecoup", "ColdLifeRecoup", "FireLifeRecoup", "ChaosLifeRecoup", "PhysicalDamageMitigatedLifePseudoRecoup" } }, @@ -2449,7 +2465,7 @@ return { { label = "Faster Recoup", modName = "3SecondRecoup" }, }, }, - { label = "Recoup Avg.", haveOutput = "anyRecoup", + { label = "Recoup Avg.", haveOutput = "anyRecoup", { format = "{0:output:LifeRecoupRecoveryAvg}", { breakdown = "LifeRecoupRecoveryAvg" }, { label = "Sources", modName = { "LifeRecoup", "PhysicalLifeRecoup", "LightningLifeRecoup", "ColdLifeRecoup", "FireLifeRecoup", "ChaosLifeRecoup", "PhysicalDamageMitigatedLifePseudoRecoup" } }, @@ -2469,24 +2485,24 @@ return { { label = "Faster Recoup", modName = "3SecondRecoup" }, }, }, - { label = "Hit Over Time Max.", haveOutput = "preventedLifeLossTotal", + { label = "Hit Over Time Max.", haveOutput = "preventedLifeLossTotal", { format = "{0:output:LifeLossLostMax}", { breakdown = "LifeLossLostMax" }, { modName = { "LifeLossPrevented", "LifeLossBelowHalfPrevented", "LifeLossLost", "LifeLossBelowHalfLost" } }, }, }, - { label = "Hit Over Time Avg.", haveOutput = "preventedLifeLossTotal", + { label = "Hit Over Time Avg.", haveOutput = "preventedLifeLossTotal", { format = "{0:output:LifeLossLostAvg}", { breakdown = "LifeLossLostAvg" }, { modName = { "LifeLossPrevented", "LifeLossBelowHalfPrevented", "LifeLossLost", "LifeLossBelowHalfLost" } }, }, }, - { label = "Net Max.", haveOutput = "showNetRecoup", + { label = "Net Max.", haveOutput = "showNetRecoup", { format = "{0:output:netLifeRecoupAndLossLostOverTimeMax}", { breakdown = "netLifeRecoupAndLossLostOverTimeMax" }, }, }, - { label = "Net Avg.", haveOutput = "showNetRecoup", + { label = "Net Avg.", haveOutput = "showNetRecoup", { format = "{0:output:netLifeRecoupAndLossLostOverTimeAvg}", { breakdown = "netLifeRecoupAndLossLostOverTimeAvg" }, }, @@ -2501,8 +2517,8 @@ return { { format = colorCodes.CHAOS.."Chaos:" }, }, { label = "DoT taken", - { format = "x {2:output:PhysicalTakenDotMult}", - { breakdown = "PhysicalTakenDotMult" }, + { format = "x {2:output:PhysicalTakenDotMult}", + { breakdown = "PhysicalTakenDotMult" }, { modName = { "DamageTaken", "DamageTakenOverTime", "PhysicalDamageTaken", "PhysicalDamageTakenOverTime" } }, { label = "Physical Taken as", modName = { "PhysicalDamageTakenAsLightning", @@ -2519,7 +2535,7 @@ return { } }, }, { format = "x {2:output:LightningTakenDotMult}", - { breakdown = "LightningTakenDotMult" }, + { breakdown = "LightningTakenDotMult" }, { modName = { "DamageTaken", "DamageTakenOverTime", "LightningDamageTaken", "LightningDamageTakenOverTime", "ElementalDamageTaken", "ElementalDamageTakenOverTime", "SelfIgnoreLightningResistance" } }, { label = "Lightning Taken as", modName = { "LightningDamageTakenAsPhysical", @@ -2536,7 +2552,7 @@ return { } }, }, { format = "x {2:output:ColdTakenDotMult}", - { breakdown = "ColdTakenDotMult" }, + { breakdown = "ColdTakenDotMult" }, { modName = { "DamageTaken", "DamageTakenOverTime", "ColdDamageTaken", "ColdDamageTakenOverTime", "ElementalDamageTaken", "ElementalDamageTakenOverTime", "SelfIgnoreColdResistance" } }, { label = "Cold Taken as", modName = { "ColdDamageTakenAsPhysical", @@ -2552,14 +2568,14 @@ return { "ChaosDamageTakenAsCold" } }, }, - { format = "x {2:output:FireTakenDotMult}", - { breakdown = "FireTakenDotMult" }, + { format = "x {2:output:FireTakenDotMult}", + { breakdown = "FireTakenDotMult" }, { modName = { "DamageTaken", "DamageTakenOverTime", "FireDamageTaken", "FireDamageTakenOverTime", "ElementalDamageTaken", "ElementalDamageTakenOverTime", "SelfIgnoreFireResistance" } }, { label = "Fire Taken as", modName = { "FireDamageTakenAsPhysical", "FireDamageTakenAsLightning", "FireDamageTakenAsCold", - "ElementalDamageTakenAsPhysical", "ElementalDamageTakenAsChaos", + "ElementalDamageTakenAsPhysical", "ElementalDamageTakenAsChaos", "FireDamageTakenAsChaos" } }, { label = "Taken as Fire", modName = { @@ -2570,7 +2586,7 @@ return { } }, }, { format = "x {2:output:ChaosTakenDotMult}", - { breakdown = "ChaosTakenDotMult" }, + { breakdown = "ChaosTakenDotMult" }, { modName = { "DamageTaken", "DamageTakenOverTime", "ChaosDamageTaken", "ChaosDamageTakenOverTime", "SelfIgnoreChaosResistance" } }, { label = "Chaos Taken as", modName = { "ChaosDamageTakenAsPhysical", @@ -2588,62 +2604,62 @@ return { }, }, { label = "Total Pool", - { format = "{0:output:PhysicalTotalPool}", - { breakdown = "PhysicalTotalPool" }, + { format = "{0:output:PhysicalTotalPool}", + { breakdown = "PhysicalTotalPool" }, }, { format = "{0:output:LightningTotalPool}", - { breakdown = "LightningTotalPool" }, + { breakdown = "LightningTotalPool" }, }, { format = "{0:output:ColdTotalPool}", { breakdown = "ColdTotalPool" }, }, - { format = "{0:output:FireTotalPool}", - { breakdown = "FireTotalPool" }, + { format = "{0:output:FireTotalPool}", + { breakdown = "FireTotalPool" }, }, { format = "{0:output:ChaosTotalPool}", - { breakdown = "ChaosTotalPool" }, + { breakdown = "ChaosTotalPool" }, }, - }, + }, { label = "Effective DoT Pool", - { format = "{0:output:PhysicalDotEHP}", - { breakdown = "PhysicalDotEHP" }, + { format = "{0:output:PhysicalDotEHP}", + { breakdown = "PhysicalDotEHP" }, }, { format = "{0:output:LightningDotEHP}", - { breakdown = "LightningDotEHP" }, + { breakdown = "LightningDotEHP" }, }, { format = "{0:output:ColdDotEHP}", - { breakdown = "ColdDotEHP" }, + { breakdown = "ColdDotEHP" }, }, - { format = "{0:output:FireDotEHP}", - { breakdown = "FireDotEHP" }, + { format = "{0:output:FireDotEHP}", + { breakdown = "FireDotEHP" }, }, { format = "{0:output:ChaosDotEHP}", - { breakdown = "ChaosDotEHP" }, + { breakdown = "ChaosDotEHP" }, }, }, { label = "Degens", haveOutput = "TotalBuildDegen", - { format = "{0:output:PhysicalBuildDegen}", - { breakdown = "PhysicalBuildDegen" }, + { format = "{0:output:PhysicalBuildDegen}", + { breakdown = "PhysicalBuildDegen" }, { modName = "PhysicalDegen", } }, { format = "{0:output:LightningBuildDegen}", - { breakdown = "LightningBuildDegen" }, + { breakdown = "LightningBuildDegen" }, { modName = "LightningDegen", } }, { format = "{0:output:ColdBuildDegen}", - { breakdown = "ColdBuildDegen" }, + { breakdown = "ColdBuildDegen" }, { modName = "ColdDegen", } }, - { format = "{0:output:FireBuildDegen}", - { breakdown = "FireBuildDegen" }, + { format = "{0:output:FireBuildDegen}", + { breakdown = "FireBuildDegen" }, { modName = "FireDegen", } }, { format = "{0:output:ChaosBuildDegen}", - { breakdown = "ChaosBuildDegen" }, + { breakdown = "ChaosBuildDegen" }, { modName = "ChaosDegen", } }, }, - { label = "Total Degen", haveOutput = "TotalBuildDegen", { format = "{1:output:TotalBuildDegen}", + { label = "Total Degen", haveOutput = "TotalBuildDegen", { format = "{1:output:TotalBuildDegen}", { breakdown = "TotalBuildDegen" }, { label = "Sources", modName = { "PhysicalDegen", "FireDegen", "ColdDegen", "LightningDegen", "ChaosDegen" }, modType = "BASE" }, }, }, @@ -2663,23 +2679,23 @@ return { { format = colorCodes.CHAOS.."Chaos:" }, }, { label = "Degens", haveOutput = "TotalDegen", - { format = "{0:output:PhysicalEnemyDegen}", - { breakdown = "PhysicalEnemyDegen" }, + { format = "{0:output:PhysicalEnemyDegen}", + { breakdown = "PhysicalEnemyDegen" }, }, { format = "{0:output:LightningEnemyDegen}", - { breakdown = "LightningEnemyDegen" }, + { breakdown = "LightningEnemyDegen" }, }, { format = "{0:output:ColdEnemyDegen}", - { breakdown = "ColdEnemyDegen" }, + { breakdown = "ColdEnemyDegen" }, }, - { format = "{0:output:FireEnemyDegen}", - { breakdown = "FireEnemyDegen" }, + { format = "{0:output:FireEnemyDegen}", + { breakdown = "FireEnemyDegen" }, }, { format = "{0:output:ChaosEnemyDegen}", - { breakdown = "ChaosEnemyDegen" }, + { breakdown = "ChaosEnemyDegen" }, }, }, - { label = "Total Degen", haveOutput = "TotalDegen", { format = "{1:output:TotalDegen}", + { label = "Total Degen", haveOutput = "TotalDegen", { format = "{1:output:TotalDegen}", { breakdown = "TotalDegen" }, }, }, { label = "Total Net Recovery", haveOutput = "ComprehensiveTotalNetRegen", { format = "{1:output:ComprehensiveTotalNetRegen}", diff --git a/src/Modules/CalcSetup.lua b/src/Modules/CalcSetup.lua index 02c55fe4d..072f8a598 100644 --- a/src/Modules/CalcSetup.lua +++ b/src/Modules/CalcSetup.lua @@ -615,6 +615,7 @@ function calcs.initEnv(build, mode, override, specEnv) modDB:NewMod("Life", "BASE", data.characterConstants["life_per_level"], "Base", { type = "Multiplier", var = "Level", base = 16 }) modDB:NewMod("Mana", "BASE", data.characterConstants["mana_per_level"], "Base", { type = "Multiplier", var = "Level", base = 30 }) modDB:NewMod("ManaRegen", "BASE", env.data.misc.ManaRegenBase, "Base", { type = "PerStat", stat = "Mana", div = 1 }, { type = "Condition", var = "NoInherentManaRegen", neg = true }) + modDB:NewMod("WardRegenPercent", "BASE", data.gameConstants["BaseWardRegenerationPercentPerMinute"]/60, "Base" ) modDB:NewMod("Spirit", "BASE", 0, "Base") modDB:NewMod("Devotion", "BASE", 0, "Base") modDB:NewMod("Tribute", "BASE", 0, "Base") diff --git a/src/Modules/Data.lua b/src/Modules/Data.lua index 8fc98820d..c02f866f6 100644 --- a/src/Modules/Data.lua +++ b/src/Modules/Data.lua @@ -74,14 +74,14 @@ local function processMod(grantedEffect, mod, statName) if type(mod.value) == "table" and mod.value.mod then mod.value.mod.source = "Skill:"..grantedEffect.id end - + for _, tag in ipairs(mod) do if tag.type == "GlobalEffect" then grantedEffect.hasGlobalEffect = true break end end - + local notMinionStat = false for _, statStet in ipairs(grantedEffect.statSets) do if statStet.notMinionStat and statName and (grantedEffect.support or grantedEffect.skillTypes and grantedEffect.skillTypes[SkillType.Buff]) then @@ -428,6 +428,9 @@ data.highPrecisionMods = { ["EnergyShieldRegenPercent"] = { ["BASE"] = 2, }, + ["WardRegenPercent"] = { + ["BASE"] = 2, + }, ["LifeRegen"] = { ["BASE"] = 1, }, @@ -437,6 +440,9 @@ data.highPrecisionMods = { ["EnergyShieldRegen"] = { ["BASE"] = 1, }, + ["WardRegen"] = { + ["BASE"] = 1, + }, ["RageRegen"] = { ["BASE"] = 1, }, @@ -772,10 +778,10 @@ data.itemTagSpecialExclusionPattern = { } -- Load bosses -do +do data.bosses = { } LoadModule("Data/Bosses", data.bosses) - + local count, uberCount = 0, 0 local armourTotal, evasionTotal = 0, 0 local uberArmourTotal, uberEvasionTotal = 0, 0 @@ -972,7 +978,7 @@ for gemId, gem in pairs(data.gems) do data.gemGrantedEffectIdForVaalGemId[gem.secondaryGrantedEffectId] = gemId for otherGemId, otherGem in pairs(data.gems) do if otherGem.grantedEffectId == gem.secondaryGrantedEffectId then - data.gemVaalGemIdForBaseGemId[gemId] = otherGemId + data.gemVaalGemIdForBaseGemId[gemId] = otherGemId break end end diff --git a/src/Modules/ModParser.lua b/src/Modules/ModParser.lua index b669c20de..659bc4d46 100644 --- a/src/Modules/ModParser.lua +++ b/src/Modules/ModParser.lua @@ -166,7 +166,7 @@ local modNameList = { ["all attributes"] = { "Str", "Dex", "Int", "All" }, ["devotion"] = "Devotion", ["tribute"] = "Tribute", - -- Life/Mana/Spirit/Darkness + -- Life/Mana/Spirit/Runic Ward/Darkness ["maximum darkness"] = "Darkness", ["spirit"] = "Spirit", ["maximum spirit"] = "Spirit", @@ -179,6 +179,7 @@ local modNameList = { ["maximum mana"] = "Mana", ["mana regeneration"] = "ManaRegen", ["mana regeneration rate"] = "ManaRegen", + ["runic ward regeneration rate"] = "ManaRegen", ["mana cost"] = "ManaCost", ["mana cost of"] = "ManaCost", ["mana cost of skills"] = "ManaCost", From 8e94926b80370f35b591ed7b2382784c86e4afbb Mon Sep 17 00:00:00 2001 From: Blitz54 Date: Tue, 9 Jun 2026 19:59:41 -0500 Subject: [PATCH 06/13] Add to resource --- src/Modules/CalcDefence.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Modules/CalcDefence.lua b/src/Modules/CalcDefence.lua index a0b6cd050..472d4c913 100644 --- a/src/Modules/CalcDefence.lua +++ b/src/Modules/CalcDefence.lua @@ -1635,7 +1635,7 @@ function calcs.defence(env, actor) end -- Regeneration - local resources = {"Mana", "Life", "Energy Shield", "Rage"} + local resources = {"Mana", "Life", "Energy Shield", "Rage", "Ward"} for i, resourceName in ipairs(resources) do local resource = resourceName:gsub(" ", "") local pool = output[resource] or 0 From 1cafe2ddb9f303b70dd45b005360c6a9ef998029 Mon Sep 17 00:00:00 2001 From: Blitz54 Date: Tue, 9 Jun 2026 23:47:29 -0500 Subject: [PATCH 07/13] Ward costs --- src/Modules/BuildDisplayStats.lua | 2 + src/Modules/CalcOffence.lua | 75 ++++++++++++++++--------------- src/Modules/CalcSections.lua | 3 ++ 3 files changed, 43 insertions(+), 37 deletions(-) diff --git a/src/Modules/BuildDisplayStats.lua b/src/Modules/BuildDisplayStats.lua index f61926f96..2a08bce30 100644 --- a/src/Modules/BuildDisplayStats.lua +++ b/src/Modules/BuildDisplayStats.lua @@ -88,6 +88,8 @@ local displayStats = { { stat = "ESCost", label = "Energy Shield Cost", fmt = "d", color = colorCodes.ES, pool = "EnergyShield", compPercent = true, lowerIsBetter = true, condFunc = function(v,o) return o.ESHasCost end }, { stat = "ESPerSecondCost", label = "ES Cost per second", fmt = ".2f", color = colorCodes.ES, pool = "EnergyShield", compPercent = true, lowerIsBetter = true, condFunc = function(v,o) return o.ESPerSecondHasCost end }, { stat = "ESPercentPerSecondCost", label = "ES Cost per second", fmt = ".2f%%", color = colorCodes.ES, compPercent = true, lowerIsBetter = true, condFunc = function(v,o) return o.ESPercentPerSecondHasCost end }, + { stat = "WardCost", label = "Runic Ward Cost", fmt = "d", color = colorCodes.WARD, pool = "Ward", compPercent = true, lowerIsBetter = true, condFunc = function(v,o) return o.WardHasCost end }, + { stat = "WardPerSecondCost", label = "Ward Cost per second", fmt = ".2f", color = colorCodes.WARD, pool = "Ward", compPercent = true, lowerIsBetter = true, condFunc = function(v,o) return o.WardPerSecondHasCost end }, { stat = "RageCost", label = "Rage Cost", fmt = "d", color = colorCodes.RAGE, pool = "Rage", compPercent = true, lowerIsBetter = true, condFunc = function(v,o) return o.RageHasCost end }, { stat = "RagePerSecondCost", label = "Rage Cost per second", fmt = ".2f", color = colorCodes.RAGE, pool = "Rage", compPercent = true, lowerIsBetter = true, condFunc = function(v,o) return o.RagePerSecondHasCost end }, { stat = "SoulCost", label = "Soul Cost", fmt = "d", color = colorCodes.RAGE, pool = "Soul", compPercent = true, lowerIsBetter = true, condFunc = function(v,o) return o.SoulHasCost end }, diff --git a/src/Modules/CalcOffence.lua b/src/Modules/CalcOffence.lua index a87a9518a..39daa6d58 100644 --- a/src/Modules/CalcOffence.lua +++ b/src/Modules/CalcOffence.lua @@ -111,7 +111,7 @@ local function calcDamage(activeSkill, output, cfg, breakdown, damageType, typeF local skillModList = activeSkill.skillModList typeFlags = bor(typeFlags, dmgTypeFlags.flags[damageType]) - + local conversionTable = activeSkill.conversionTable local addMin, addMax = 0, 0 @@ -149,7 +149,7 @@ local function calcDamage(activeSkill, output, cfg, breakdown, damageType, typeF convDst = convDst and conversionTable[damageType][convDst] > 0 and s_format("%d%% to %s", conversionTable[damageType][convDst] * 100, convDst), }) end - + return round(summedMin * inc * more * moreMinDamage + addMin), round(summedMax * inc * more * moreMaxDamage + addMax) end @@ -290,7 +290,7 @@ local function calcCrossbowReloadTime(weaponData, boltSkill) return baseReloadTime / reloadTimeMulti end -- Calculate stats from parent Ammo skill that are not available on children, such as mana cost and reload speed ----@param actor table +---@param actor table ---@param activeSkill table ---@return table @Table containing cost, boltCount, reloadTime local function calcCrossbowAmmoStats(actor, activeSkill) @@ -390,7 +390,7 @@ function calcs.offence(env, actor, activeSkill) local skillFlags if env.mode == "CALCS" then skillFlags = activeSkill.activeEffect.statSetCalcs.skillFlags - else + else skillFlags = activeSkill.activeEffect.statSet.skillFlags end local skillCfg = activeSkill.skillCfg @@ -553,7 +553,7 @@ function calcs.offence(env, actor, activeSkill) func(activeSkill, output, breakdown) end end - + local function modHasSkillType(mod, skillType) for _, tag in ipairs(mod) do if tag.type == "SkillType" then @@ -967,7 +967,7 @@ function calcs.offence(env, actor, activeSkill) else local additionalProjectiles = (skillModList:Sum("BASE", skillCfg, "ProjectileCount") + 2 * skillModList:Sum("BASE", skillCfg, "TwoAdditionalProjectilesChance") / 100 + skillModList:Sum("BASE", skillCfg, "SurpassingProjectileChance") / 100 - 1) * skillModList:More(skillCfg, "ProjectileCount") if additionalProjectiles > 0 then - local barrageAttackTimePenalty = skillModList:Sum("BASE", skillCfg, "BarrageAttackTimePenalty") + local barrageAttackTimePenalty = skillModList:Sum("BASE", skillCfg, "BarrageAttackTimePenalty") if barrageAttackTimePenalty == 0 then barrageAttackTimePenalty = 100 end -- If not otherwise specified on the skill, each additional projectile adds 100% of attack time skillModList:ReplaceMod("SkillAttackTime", "MORE", barrageAttackTimePenalty * additionalProjectiles, activeSkill.activeEffect.grantedEffect.name .. s_format(": %d%% attack time per add. projectile", barrageAttackTimePenalty) ) skillModList:NewMod("DPS", "MORE", skillModList:Sum("BASE", skillCfg, "ProjectileCount") + 2 * skillModList:Sum("BASE", skillCfg, "TwoAdditionalProjectilesChance") / 100 + skillModList:Sum("BASE", skillCfg, "SurpassingProjectileChance") / 100, "Barrage Repeats") @@ -1125,7 +1125,7 @@ function calcs.offence(env, actor, activeSkill) skillData.boltCount = ammoStats.boltCount skillData.reloadTime = ammoStats.reloadTime end - + if activeSkill.skillTypes[SkillType.Grenade] then local detonateTwice = m_min(skillModList:Sum("BASE", skillCfg, "GrenadeActivateTwice"), 100) modDB:NewMod("DPS", "MORE", detonateTwice, "Grenade Activate Twice") @@ -1655,7 +1655,7 @@ function calcs.offence(env, actor, activeSkill) output.Cooldown = cooldown output.EffectiveCooldown = cooldown - + if breakdown then breakdown.Cooldown = { s_format("%.2fs ^8(base)", skillData.cooldown or 0 + addedCooldown), @@ -1669,9 +1669,9 @@ function calcs.offence(env, actor, activeSkill) unpack(breakdown.Cooldown), } t_insert(breakdown.EffectiveCooldown, s_format("* %.2f ^8(effect of %d%% chance to not consume cooldown)", effectiveCooldownMultiplier, noCooldownChance * 100)) - t_insert(breakdown.EffectiveCooldown, s_format("= %.3fs", output.EffectiveCooldown)) + t_insert(breakdown.EffectiveCooldown, s_format("= %.3fs", output.EffectiveCooldown)) end - + if rounded then t_insert(breakdown.Cooldown, s_format("rounded up to nearest server tick")) end @@ -1710,14 +1710,14 @@ function calcs.offence(env, actor, activeSkill) output.MineLayingSpeed = m_min(output.MineLayingSpeed, data.misc.ServerTickRate) output.MineLayingTime = 1 / output.MineLayingSpeed - + -- Trap mine interaction where the Character throws mines, mine throws traps if skillFlags.trap then skillData.timeOverride = output.MineLayingTime / output.MineThrowCount / output.TrapThrowCount else skillData.timeOverride = output.MineLayingTime / output.MineThrowCount end - + if breakdown then breakdown.MineLayingTime = { } breakdown.multiChain(breakdown.MineLayingTime, { @@ -2035,11 +2035,12 @@ function calcs.offence(env, actor, activeSkill) -- Calculate costs (may be slightly off due to rounding differences) local costs = { - order = { "Mana","Life","ES","Soul","Rage","ManaPercent","LifePercent","ManaPerMinute","LifePerMinute","ManaPercentPerMinute","LifePercentPerMinute","ESPerMinute","ESPercentPerMinute" }, - + order = { "Mana","Life","ES","Ward","Soul","Rage","ManaPercent","LifePercent","ManaPerMinute","LifePerMinute","ManaPercentPerMinute","LifePercentPerMinute","ESPerMinute","ESPercentPerMinute" }, + ["Mana"] = { type = "Mana", upfront = true, percent = false, text = "mana", baseCost = 0, baseCostRaw = 0, totalCost = 0, baseCostNoMult = 0, finalBaseCost = 0 }, ["Life"] = { type = "Life", upfront = true, percent = false, text = "life", baseCost = 0, totalCost = 0, baseCostNoMult = 0, finalBaseCost = 0 }, ["ES"] = { type = "ES", upfront = true, percent = false, text = "ES", baseCost = 0, totalCost = 0, baseCostNoMult = 0, finalBaseCost = 0 }, + ["Ward"] = { type = "Ward", upfront = true, percent = false, unaffectedByGenericCostMults = true, text = "ward", baseCost = 0, totalCost = 0, baseCostNoMult = 0, finalBaseCost = 0 }, ["Soul"] = { type = "Soul", upfront = true, percent = false, unaffectedByGenericCostMults = true, text = "soul", baseCost = 0, totalCost = 0, baseCostNoMult = 0, finalBaseCost = 0 }, ["Rage"] = { type = "Rage", upfront = true, percent = false, text = "rage", baseCost = 0, totalCost = 0, baseCostNoMult = 0, finalBaseCost = 0 }, ["ManaPercent"] = { type = "Mana", upfront = true, percent = true, text = "mana", baseCost = 0, totalCost = 0, baseCostNoMult = 0, finalBaseCost = 0 }, @@ -2569,7 +2570,7 @@ function calcs.offence(env, actor, activeSkill) local incVsEnemy = skillModList:Sum("INC", cfg, "Accuracy", "AccuracyVsEnemy") local more = skillModList:More("MORE", cfg, "Accuracy") local moreVsEnemy = skillModList:More("MORE", cfg, "Accuracy", "AccuracyVsEnemy") - + local enemyDistance = env.modDB:Sum("BASE", nil, "Multiplier:enemyDistance") / 10 or 25 local enemyDistanceCapped = m_max(m_min(enemyDistance * 10, data.misc.AccuracyFalloffEnd), data.misc.AccuracyFalloffStart) local modValue = m_floor(data.misc.MaxAccuracyRangePenalty * calcLib.mod(skillModList, cfg, "AccuracyPenalty")) @@ -2579,7 +2580,7 @@ function calcs.offence(env, actor, activeSkill) for _, distance in ipairs(distances) do accuracyPenalties["accuracyPenalty" .. distance .. "m"] = 1 - ((distance * 10 - data.misc.AccuracyFalloffStart) / (data.misc.AccuracyFalloffEnd - data.misc.AccuracyFalloffStart)) * modValue / 100 -- Fix end - + output.Accuracy = m_max(0, m_floor(base * (1 + inc / 100) * more)) local accuracyVsEnemy = m_max(0, m_floor(baseVsEnemy * (1 + incVsEnemy / 100) * moreVsEnemy)) local accuracyVsEnemyBase = accuracyVsEnemy @@ -2648,7 +2649,7 @@ function calcs.offence(env, actor, activeSkill) chance = {" ", " ", ""} } for _, distance in ipairs(distances) do -- put distance values in order, incl. config value - if distance < hitChances[#hitChances].distance then + if distance < hitChances[#hitChances].distance then t_insert(hitChances, #hitChances, { distance = distance }) elseif distance > hitChances[#hitChances].distance then t_insert(hitChances, { distance = distance }) @@ -2831,12 +2832,12 @@ function calcs.offence(env, actor, activeSkill) skillModList:NewMod("Multiplier:TraumaStacks", "BASE", skillModList:Sum("BASE", skillCfg, "Multiplier:SustainableTraumaStacks"), "Maximum Sustainable Trauma Stacks") end local inc = skillModList:Sum("INC", cfg, "Speed") - + if skillFlags.warcry then output.Speed = 1 / output.WarcryCastTime else output.Speed = 1 / (baseTime / round((1 + inc/100) * more, 2) + skillModList:Sum("BASE", cfg, "TotalAttackTime") + skillModList:Sum("BASE", cfg, "TotalCastTime")) - + end output.CastRate = output.Speed if skillFlags.selfCast then @@ -3165,7 +3166,7 @@ function calcs.offence(env, actor, activeSkill) } end end - + --Calculate damage (exerts, crits, ruthless, DPS, etc) for _, pass in ipairs(passList) do globalOutput, globalBreakdown = output, breakdown @@ -3395,7 +3396,7 @@ function calcs.offence(env, actor, activeSkill) end end end - + output.FistOfWarDamageEffect = 1 output.AncestralCallDamageEffect = 1 output.AncestralEmpowermentDamageEffect = 1 @@ -3870,7 +3871,7 @@ function calcs.offence(env, actor, activeSkill) end output.DoubleDamageEffect = output.DoubleDamageChance / 100 output.ScaledDamageEffect = output.ScaledDamageEffect * (1 + output.DoubleDamageEffect + output.TripleDamageEffect) - + skillData.dpsMultiplier = ( skillData.dpsMultiplier or 1 ) * calcLib.mod(skillModList, skillCfg, "DPS") local hitRate = output.HitChance / 100 * (globalOutput.HitSpeed or globalOutput.Speed) * skillData.dpsMultiplier @@ -4217,7 +4218,7 @@ function calcs.offence(env, actor, activeSkill) if convertModName and convertFlag then local tempCfg = copyTable(cfg, true) tempCfg.overrideCond = { ["No" .. resource .. "LeechFromPhysicalDamage"] = false } -- Need to force Condition to `false`, to calculate original phys leech values - local physLeechMods = skillModList:Tabulate("BASE", tempCfg , "PhysicalDamage" .. resource .. "Leech") + local physLeechMods = skillModList:Tabulate("BASE", tempCfg , "PhysicalDamage" .. resource .. "Leech") for _, entry in ipairs(physLeechMods) do -- Add new leech mods for that damage type with the same conditions, source, etc. local newMod = copyTable(entry.mod) @@ -4598,7 +4599,7 @@ function calcs.offence(env, actor, activeSkill) for _, damageType in ipairs(dmgTypeList) do combineStat(damageType.."StoredCombinedAvg", "DPS") end - -- Crossbows: + -- Crossbows: if activeSkill.skillTypes[SkillType.CrossbowSkill] and not activeSkill.skillTypes[SkillType.Grenade] then -- Combine stats related to reload and bolt functionality combineStat("FiringRate", "AVERAGE") @@ -4836,7 +4837,7 @@ function calcs.offence(env, actor, activeSkill) end return sourceHitDmg, sourceCritDmg end - + ---Calculates damage to be used in damaging ailment calculations ---@param ailment string ---@param defaultDamageTypes table @@ -4864,7 +4865,7 @@ function calcs.offence(env, actor, activeSkill) end return hitMin, hitMax, critMin, critMax end - + ---Calculates damage to be used in poise related ailment calculations ---@param ailment string ---@param defaultDamageTypes table @@ -4904,7 +4905,7 @@ function calcs.offence(env, actor, activeSkill) end return hitMin, hitMax, hitAvg, critMin, critMax, critAvg, poseDamageAvg end - + ---Calculate the inflict chance and base damage of a secondary effect (bleed/poison/ignite/shock/freeze) ---@param ailment string ---@param sourceCritChance number @@ -5349,7 +5350,7 @@ function calcs.offence(env, actor, activeSkill) skillFlags["inflict"..flatAilment] = true end end - + local unmitigatedColdDamage = calcAverageUnmitigatedSourceDamage("Chill", data.defaultAilmentDamageTypes["Chill"]["ScalesFrom"]) local chillMinimumThreshold = enemyThreshold / data.gameConstants.ChillEffectMultiplier output['chillMinimumThreshold'] = chillMinimumThreshold @@ -5362,14 +5363,14 @@ function calcs.offence(env, actor, activeSkill) output["ChillChanceOnCrit"] = 0 skillFlags["inflictChill"] = false end - + output["FreezeChanceOnHit"] = 0 output["FreezeChanceOnCrit"] = 0 skillFlags["inflictFreeze"] = false skillFlags["inflictElectrocute"] = false - + -- Calculate poise-related debuffs - for _, ailment in ipairs({"Freeze", "Electrocute", "HeavyStun", "Pin"}) do + for _, ailment in ipairs({"Freeze", "Electrocute", "HeavyStun", "Pin"}) do local enemyPoiseThreshold = m_floor(data.monsterPoiseThresholdTable[env.enemyLevel] * calcLib.mod(enemyDB, nil, "PoiseThreshold", ailment.."Threshold", ailment == "HeavyStun" and "EnemyStunThreshold", (ailment == "Freeze" or ailment == "Electrocute") and "EnemyAilmentThreshold")) local hitMin, hitMax, hitAvg, critMin, critMax, critAvg, poiseAvg = calcMinMaxPoiseSourceDamage(ailment, data.buildupTypes[ailment].ScalesFrom) -- TODO: average for now, can do more complicated calculation later @@ -5383,7 +5384,7 @@ function calcs.offence(env, actor, activeSkill) local maxCrit = critMax * poiseBuildup local critPoiseBuildup = critAvg * poiseBuildup local totalAvgPoiseBuildup = poiseAvg * poiseBuildup - + if skillFlags.hit and not skillModList:Flag(cfg, "Cannot"..ailment) then globalOutput[ailment .. "BuildupAvg"] = totalAvgPoiseBuildup else @@ -5405,7 +5406,7 @@ function calcs.offence(env, actor, activeSkill) t_insert(globalBreakdown[ailment .. "Buildup"], s_format("Crit Min: %.1f%%", minCrit)) t_insert(globalBreakdown[ailment .. "Buildup"], s_format("Crit Max: %.1f%%", maxCrit)) t_insert(globalBreakdown[ailment .. "Buildup"], s_format("Crit Avg: %.1f%%", critPoiseBuildup)) - + t_insert(globalBreakdown[ailment .. "Buildup"], s_format("")) t_insert(globalBreakdown[ailment .. "Buildup"], s_format("Average "..ailment.." buildup")) t_insert(globalBreakdown[ailment .. "Buildup"], s_format("= %.1f%%", totalAvgPoiseBuildup)) @@ -5687,7 +5688,7 @@ function calcs.offence(env, actor, activeSkill) end end end - + -- Calculate impale chance and modifiers if canDeal.Physical and (output.ImpaleChance + output.ImpaleChanceOnCrit) > 0 then skillFlags.impale = true @@ -5928,7 +5929,7 @@ function calcs.offence(env, actor, activeSkill) end end end - + if skillModList:Flag(nil, "DotCanStack") then skillFlags.DotCanStack = true local speed = output.Speed @@ -6041,7 +6042,7 @@ function calcs.offence(env, actor, activeSkill) end if dmgType and dmgVal then -- !!!! WARNING !!!! -- - -- applyDmgTakenConversion does NOT consider the "And protect me from Harm" yet + -- applyDmgTakenConversion does NOT consider the "And protect me from Harm" yet local dmgBreakdown, totalDmgTaken = calcs.applyDmgTakenConversion(activeSkill, output, breakdown, dmgType, dmgVal) t_insert(dmgBreakdown, 1, s_format("Heartbound Loop base damage: %d", dmgVal)) t_insert(dmgBreakdown, 2, s_format("")) @@ -6175,7 +6176,7 @@ function calcs.offence(env, actor, activeSkill) output.ParryRangeProj = (skillData.parryRangeProj or 0) * calcLib.mod(skillModList, skillCfg, "ParryRangeProj") if breakdown then if output.ParryRangeNonProj > 0 then - breakdown.ParryRangeNonProj = { + breakdown.ParryRangeNonProj = { s_format("Max Parry distance vs. non-projectiles:"), s_format(""), s_format("%.1f m ^8(base parry range for non-projectiles)", skillData.parryRangeNonProj), diff --git a/src/Modules/CalcSections.lua b/src/Modules/CalcSections.lua index ce8ed6ab3..1ab49103d 100644 --- a/src/Modules/CalcSections.lua +++ b/src/Modules/CalcSections.lua @@ -665,6 +665,9 @@ return { { label = "ES Cost", color = colorCodes.ES, haveOutput = "ESHasCost", { format = "{0:output:ESCost}", { breakdown = "ESCost" }, { modName = { "ESCost", "Cost", "ESCostNoMult" }, cfg = "skill" }, }, }, { label = "ES per second", color = colorCodes.ES, haveOutput = "ESPerSecondHasCost", { format = "{2:output:ESPerSecondCost}", { breakdown = "ESPerSecondCost" }, { modName = { "ESCost", "Cost", "ESCostNoMult" }, cfg = "skill" }, }, }, { label = "ES % per second", color = colorCodes.ES, haveOutput = "ESPercentPerSecondHasCost", { format = "{2:output:ESPercentPerSecondCost}", { breakdown = "ESPercentPerSecondCost" }, { modName = { "ESCost", "Cost", "ESCostNoMult" }, cfg = "skill" }, }, }, + { label = "Ward Cost", color = colorCodes.WARD, haveOutput = "WardHasCost", { format = "{0:output:WardCost}", { breakdown = "WardCost" }, { modName = { "WardCost", "Cost", "WardCostNoMult" }, cfg = "skill" }, }, }, + { label = "Ward per second", color = colorCodes.WARD, haveOutput = "WardPerSecondHasCost", { format = "{2:output:WardPerSecondCost}", { breakdown = "WardPerSecondCost" }, { modName = { "WardCost", "Cost", "WardCostNoMult" }, cfg = "skill" }, }, }, + { label = "Ward % per second", color = colorCodes.WARD, haveOutput = "WardPercentPerSecondHasCost", { format = "{2:output:WardPercentPerSecondCost}", { breakdown = "WardPercentPerSecondCost" }, { modName = { "WardCost", "Cost", "WardCostNoMult" }, cfg = "skill" }, }, }, { label = "Rage Cost", color = colorCodes.RAGE, haveOutput = "RageHasCost", { format = "{0:output:RageCost}", { breakdown = "RageCost" }, { modName = { "RageCost", "Cost", "RageNoMult" }, cfg = "skill" }, }, }, { label = "Rage per second", color = colorCodes.RAGE, haveOutput = "RagePerSecondHasCost", { format = "{2:output:RagePerSecondCost}", { breakdown = "RagePerSecondCost" }, { modName = { "RageCost", "Cost", "RageNoMult" }, cfg = "skill" }, }, }, { label = "Armour Break / hit", haveOutput = "ArmourBreakPerHit", { format = "{0:output:ArmourBreakPerHit}", { modName = "ArmourBreakPerHit", modType = "BASE"} }, }, From 2e8e102ba148b723a8a521552f06e51485f0c707 Mon Sep 17 00:00:00 2001 From: Blitz54 Date: Wed, 10 Jun 2026 00:17:34 -0500 Subject: [PATCH 08/13] Some ward on block (doesn't affect EHP yet) --- src/Modules/CalcDefence.lua | 4 +++- src/Modules/CalcSections.lua | 1 + src/Modules/ConfigOptions.lua | 18 +++++++++--------- src/Modules/ModParser.lua | 1 + 4 files changed, 14 insertions(+), 10 deletions(-) diff --git a/src/Modules/CalcDefence.lua b/src/Modules/CalcDefence.lua index 472d4c913..31dbd709c 100644 --- a/src/Modules/CalcDefence.lua +++ b/src/Modules/CalcDefence.lua @@ -723,7 +723,7 @@ local function incomingDamageBreakdown(breakdownTable, poolsRemaining, output) t_insert(breakdownTable, s_format("\t%d "..colorCodes.SCOURGE.."Shared Guard charge ^7(%d remaining)", output.sharedGuardAbsorb - poolsRemaining.Guard.shared, poolsRemaining.Guard.shared)) end if output.Ward and output.Ward > 0 then - t_insert(breakdownTable, s_format("\t%d "..colorCodes.WARD.."Ward", output.Ward)) + t_insert(breakdownTable, s_format("\t%d "..colorCodes.WARD.."Runic Ward", output.Ward)) end if output.EnergyShieldRecoveryCap ~= poolsRemaining.EnergyShield and output.EnergyShieldRecoveryCap and output.EnergyShieldRecoveryCap > 0 then t_insert(breakdownTable, s_format("\t%d "..colorCodes.ES.."Energy Shield ^7(%d remaining)", output.EnergyShieldRecoveryCap - poolsRemaining.EnergyShield, poolsRemaining.EnergyShield)) @@ -1909,6 +1909,8 @@ function calcs.defence(env, actor) output.ManaOnBlock = modDB:Sum("BASE", nil, "ManaOnBlock") + output.WardOnBlock = modDB:Sum("BASE", nil, "WardOnBlock") + output.EnergyShieldOnBlock = modDB:Sum("BASE", nil, "EnergyShieldOnBlock") output.EnergyShieldOnSpellBlock = modDB:Sum("BASE", nil, "EnergyShieldOnSpellBlock") output.EnergyShieldOnSuppress = modDB:Sum("BASE", nil, "EnergyShieldOnSuppress") diff --git a/src/Modules/CalcSections.lua b/src/Modules/CalcSections.lua index 1ab49103d..16d3259d0 100644 --- a/src/Modules/CalcSections.lua +++ b/src/Modules/CalcSections.lua @@ -1836,6 +1836,7 @@ return { }, }, { label = "Life on Block", haveOutput = "LifeOnBlock", { format = "{0:output:LifeOnBlock}", { modName = "LifeOnBlock" }, }, }, { label = "Mana on Block", haveOutput = "ManaOnBlock", { format = "{0:output:ManaOnBlock}", { modName = "ManaOnBlock" }, }, }, + { label = "Ward on Block", haveOutput = "WardOnBlock", { format = "{0:output:WardOnBlock}", { modName = "WardOnBlock" }, }, }, { label = "ES on Block", haveOutput = "EnergyShieldOnBlock", { format = "{0:output:EnergyShieldOnBlock}", { modName = "EnergyShieldOnBlock" }, }, }, { label = "ES on Spell Block", haveOutput = "EnergyShieldOnSpellBlock", { format = "{0:output:EnergyShieldOnSpellBlock}", { modName = "EnergyShieldOnSpellBlock" }, }, }, } }, { defaultCollapsed = false, label = "Dodge", data = { diff --git a/src/Modules/ConfigOptions.lua b/src/Modules/ConfigOptions.lua index ffabe09e1..1c99a8902 100644 --- a/src/Modules/ConfigOptions.lua +++ b/src/Modules/ConfigOptions.lua @@ -185,7 +185,7 @@ local configSettings = { end end }, { var = "EHPUnluckyWorstOf", type = "list", label = "EHP calc unlucky:", tooltip = "Sets the EHP calc to pretend its unlucky and reduce the effects of random events such as\n\tBlock/Spell Block Chance\n\tDodge/Spell Dodge Chance\n\tSpell Suppression Chance\n\tAvoidance Chance", list = {{val=1,label="Average"},{val=2,label="Unlucky"},{val=4,label="Very Unlucky"}} }, - { var = "DisableEHPGainOnBlock", type = "check", label = "Disable EHP gain on block/suppress:", ifMod = {"LifeOnBlock", "ManaOnBlock", "EnergyShieldOnBlock", "EnergyShieldOnSpellBlock", "LifeOnSuppress", "EnergyShieldOnSuppress"}, tooltip = "Sets the EHP calc to not apply gain on block and suppress effects"}, + { var = "DisableEHPGainOnBlock", type = "check", label = "Disable EHP gain on block/suppress:", ifMod = {"LifeOnBlock", "ManaOnBlock", "WardOnBlock", "EnergyShieldOnBlock", "EnergyShieldOnSpellBlock", "LifeOnSuppress", "EnergyShieldOnSuppress"}, tooltip = "Sets the EHP calc to not apply gain on block and suppress effects"}, { var = "armourCalculationMode", type = "list", label = "Armour calculation mode:", ifCond = { "ArmourMax", "ArmourAvg" }, tooltip = "Controls how Defending with Double Armour is calculated:\n\tMinimum: never Defend with Double Armour\n\tAverage: Damage Reduction from Defending with Double Armour is proportional to chance\n\tMaximum: always Defend with Double Armour\nThis setting has no effect if you have 100% chance to Defend with Double Armour.", list = {{val="MIN",label="Minimum"},{val="AVERAGE",label="Average"},{val="MAX",label="Maximum"}}, apply = function(val, modList, enemyModList) if val == "MAX" then modList:NewMod("Condition:ArmourMax", "FLAG", true, "Config") @@ -1574,7 +1574,7 @@ Huge sets the radius to 11. { var = "conditionHaveArborix", type = "check", label = "Do you have Iron Reflexes?", ifFlag = "Condition:HaveArborix", tooltip = "This option is specific to Arborix.",apply = function(val, modList, enemyModList) modList:NewMod("Condition:HaveIronReflexes", "FLAG", true, "Config", { type = "Condition", var = "Combat" }) modList:NewMod("Keystone", "LIST", "Iron Reflexes", "Config") - end }, + end }, { var = "conditionHaveAugyre", type = "list", label = "Augyre rotating buff:", ifFlag = "Condition:HaveAugyre", list = {{val="EleOverload",label="Elemental Overload"},{val="ResTechnique",label="Resolute Technique"}}, tooltip = "This option is specific to Augyre.", apply = function(val, modList, enemyModList) if val == "EleOverload" then modList:NewMod("Condition:HaveElementalOverload", "FLAG", true, "Config", { type = "Condition", var = "Combat" }) @@ -1583,7 +1583,7 @@ Huge sets the radius to 11. modList:NewMod("Condition:HaveResoluteTechnique", "FLAG", true, "Config", { type = "Condition", var = "Combat" }) modList:NewMod("Keystone", "LIST", "Resolute Technique", "Config") end - end }, + end }, { var = "conditionHaveVulconus", type = "check", label = "Do you have Avatar Of Fire?", ifFlag = "Condition:HaveVulconus", tooltip = "This option is specific to Vulconus.", apply = function(val, modList, enemyModList) modList:NewMod("Condition:HaveAvatarOfFire", "FLAG", true, "Config", { type = "Condition", var = "Combat" }) modList:NewMod("Keystone", "LIST", "Avatar of Fire", "Config") @@ -2183,7 +2183,7 @@ Huge sets the radius to 11. build.configTab.varControls['enemyColdDamage']:SetPlaceholder(defaultDamage, true) build.configTab.varControls['enemyFireDamage']:SetPlaceholder(defaultDamage, true) build.configTab.varControls['enemyChaosDamage']:SetPlaceholder(defaultDamage, true) - + local rollRangeMult = m_min(m_max(build.configTab.input['enemyDamageRollRange'] or build.configTab.varControls['enemyDamageRollRange'].placeholder, 0), 100) for damageType, damageMult in pairs(bossData.DamageMultipliers) do if isUber and bossData.UberDamageMultiplier then @@ -2198,7 +2198,7 @@ Huge sets the radius to 11. build.configTab.varControls['enemyLightningPen']:SetPlaceholder(defaultPen, true) build.configTab.varControls['enemyColdPen']:SetPlaceholder(defaultPen, true) build.configTab.varControls['enemyFirePen']:SetPlaceholder(defaultPen, true) - + if bossData.DamagePenetrations then for penType, pen in pairs(bossData.DamagePenetrations) do if isUber and bossData.UberDamagePenetrations and bossData.UberDamagePenetrations[penType] then @@ -2208,13 +2208,13 @@ Huge sets the radius to 11. end end end - + if bossData.DamageType then build.configTab.varControls['enemyDamageType']:SelByValue(bossData.DamageType, "val") build.configTab.input['enemyDamageType'] = bossData.DamageType end build.configTab.varControls['enemyDamageType'].enabled = false - + if isUber and bossData.UberSpeed then build.configTab.varControls['enemySpeed']:SetPlaceholder(bossData.UberSpeed, true) elseif bossData.speed then @@ -2223,7 +2223,7 @@ Huge sets the radius to 11. if bossData.critChance then build.configTab.varControls['enemyCritChance']:SetPlaceholder(bossData.critChance, true) end - + modList:NewMod("BossSkillActive", "FLAG", true, "Config") -- boss specific mods @@ -2275,7 +2275,7 @@ Huge sets the radius to 11. { var = "enemyFireDamage", type = "countAllowZero", label = "Enemy Skill ^xB97123Fire Damage:"}, { var = "enemyFirePen", type = "countAllowZero", label = "Enemy Skill ^xB97123Fire Pen:"}, { var = "enemyChaosDamage", type = "countAllowZero", label = "Enemy Skill ^xD02090Chaos Damage:"}, - + -- Section: Custom mods { section = "Custom Modifiers", col = 1 }, { var = "customMods", type = "text", label = "", doNotHighlight = true, resizable = true, diff --git a/src/Modules/ModParser.lua b/src/Modules/ModParser.lua index 659bc4d46..38a14da01 100644 --- a/src/Modules/ModParser.lua +++ b/src/Modules/ModParser.lua @@ -5008,6 +5008,7 @@ local specialModList = { ["damage t?a?k?e?n? from blocked hits cannot bypass energy shield"] = { flag("BlockedDamageDoesntBypassES", { type = "Condition", var = "EVBypass", neg = true }) }, ["damage t?a?k?e?n? from unblocked hits always bypasses energy shield"] = { flag("UnblockedDamageDoesBypassES", { type = "Condition", var = "EVBypass", neg = true }) }, ["recover (%d+) life when you block"] = function(num) return { mod("LifeOnBlock", "BASE", num) } end, + ["recover (%d+) runic ward when you block"] = function(num) return { mod("WardOnBlock", "BASE", num) } end, ["recover (%d+) energy shield when you block spell damage"] = function(num) return { mod("EnergyShieldOnSpellBlock", "BASE", num) } end, ["recover (%d+) energy shield when you suppress spell damage"] = function(num) return { mod("EnergyShieldOnSuppress", "BASE", num) } end, ["recover (%d+) life when you suppress spell damage"] = function(num) return { mod("LifeOnSuppress", "BASE", num) } end, From 19b41c7818bfc3a364a6e128a8d0a5fe9a3c6435 Mon Sep 17 00:00:00 2001 From: Blitz54 Date: Wed, 10 Jun 2026 00:21:25 -0500 Subject: [PATCH 09/13] Runic ward cost efficiency --- src/Modules/ModParser.lua | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Modules/ModParser.lua b/src/Modules/ModParser.lua index 38a14da01..db4d35485 100644 --- a/src/Modules/ModParser.lua +++ b/src/Modules/ModParser.lua @@ -205,6 +205,7 @@ local modNameList = { ["life cost efficiency of skills"] = "LifeCostEfficiency", ["spirit cost efficiency"] = "SpiritCostEfficiency", ["spirit cost efficiency of skills"] = "SpiritCostEfficiency", + ["runic ward cost efficiency"] = "WardCostEfficiency", ["energy shield cost efficiency"] = "ESCostEfficiency", ["energy shield cost efficiency of skills"] = "ESCostEfficiency", ["es cost efficiency"] = "ESCostEfficiency", From cce769c83dca84e350225f77318ab02b4bd8373a Mon Sep 17 00:00:00 2001 From: Blitz54 Date: Wed, 10 Jun 2026 00:28:45 -0500 Subject: [PATCH 10/13] Runic ward cost warning --- src/Modules/Build.lua | 2 +- src/Modules/Calcs.lua | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/Modules/Build.lua b/src/Modules/Build.lua index c5dd0b6c0..bfc7fd585 100644 --- a/src/Modules/Build.lua +++ b/src/Modules/Build.lua @@ -2164,7 +2164,7 @@ function buildMode:AddDisplayStatList(statList, actor) end end end - for pool, warningFlag in pairs({["Life"] = "LifeCostWarningList", ["Mana"] = "ManaCostWarningList", ["Rage"] = "RageCostWarningList", ["Energy Shield"] = "ESCostWarningList"}) do + for pool, warningFlag in pairs({["Life"] = "LifeCostWarningList", ["Mana"] = "ManaCostWarningList", ["Runic Ward"] = "WardCostWarningList", ["Rage"] = "RageCostWarningList", ["Energy Shield"] = "ESCostWarningList"}) do if actor.output[warningFlag] then local line = "You do not have enough "..(actor.output.EnergyShieldProtectsMana and pool == "Mana" and "Energy Shield and Mana" or pool).." to use: " for _, skill in ipairs(actor.output[warningFlag]) do diff --git a/src/Modules/Calcs.lua b/src/Modules/Calcs.lua index 7f06f8bd6..5c163e8a4 100644 --- a/src/Modules/Calcs.lua +++ b/src/Modules/Calcs.lua @@ -99,7 +99,7 @@ local function getCalculator(build, fullInit, modFunc) -- Call function to make modifications to the environment modFunc(env, ...) - + -- Run calculation pass calcs.perform(env) fullDPS = calcs.calcFullDPS(build, "CALCULATOR", {}, { cachedPlayerDB = cachedPlayerDB, cachedEnemyDB = cachedEnemyDB, cachedMinionDB = cachedMinionDB, env = nil}) @@ -108,7 +108,7 @@ local function getCalculator(build, fullInit, modFunc) env.player.output.FullDotDPS = fullDPS.TotalDotDPS return env.player.output - end, baseOutput + end, baseOutput end -- Get fast calculator for adding tree node modifiers @@ -137,7 +137,7 @@ function calcs.getMiscCalculator(build) env.override = override calcs.perform(env) if (useFullDPS ~= false or build.viewMode == "TREE") and usedFullDPS then - -- prevent upcoming calculation from using Cached Data and thus forcing it to re-calculate new FullDPS roll-up + -- prevent upcoming calculation from using Cached Data and thus forcing it to re-calculate new FullDPS roll-up -- without this, FullDPS increase/decrease when for node/item/gem comparison would be all 0 as it would be comparing -- A with A (due to cache reuse) instead of A with B local fullDPS = calcs.calcFullDPS(build, "CALCULATOR", override, { cachedPlayerDB = cachedPlayerDB, cachedEnemyDB = cachedEnemyDB, cachedMinionDB = cachedMinionDB, env = nil}) @@ -416,7 +416,7 @@ function calcs.buildOutput(build, mode) end if GlobalCache.cachedData[mode][uuid] and (not skill.triggeredBy or skill.triggeredBy.grantedEffect.id ~= "SupportBlasphemyPlayer") then output.EnergyShieldProtectsMana = env.modDB:Flag(nil, "EnergyShieldProtectsMana") - for pool, costResource in pairs({["LifeUnreserved"] = "LifeCost", ["ManaUnreserved"] = "ManaCost", ["Rage"] = "RageCost", ["EnergyShield"] = "ESCost"}) do + for pool, costResource in pairs({["LifeUnreserved"] = "LifeCost", ["ManaUnreserved"] = "ManaCost", ["Rage"] = "RageCost", ["Ward"] = "WardCost", ["EnergyShield"] = "ESCost"}) do local cachedCost = GlobalCache.cachedData[mode][uuid].Env.player.output[costResource] if cachedCost then local totalPool = (output.EnergyShieldProtectsMana and costResource == "ManaCost" and output["EnergyShield"] or 0) + (output[pool] or 0) @@ -446,7 +446,7 @@ function calcs.buildOutput(build, mode) end end end - + output.ExtraPoints = env.modDB:Sum("BASE", nil, "ExtraPoints") output.WeaponSetPassivePoints = env.modDB:Sum("BASE", nil, "WeaponSetPassivePoints") output.PassivePointsToWeaponSetPoints = env.modDB:Sum("BASE", nil, "PassivePointsToWeaponSetPoints") @@ -511,7 +511,7 @@ function calcs.buildOutput(build, mode) end local function addModTags(actor, mod) addTo(env.modsUsed, mod.name, mod) - + -- Imply enemy conditionals based on damage type -- Needed to preemptively show config options for elemental ailments for dmgType, conditions in pairs({["[fi][ig][rn][ei]t?e?"] = {"Ignited", "Burning"}, ["[cf][or][le][de]z?e?"] = {"Frozen"}}) do @@ -521,7 +521,7 @@ function calcs.buildOutput(build, mode) end end end - + for _, tag in ipairs(mod) do addTo(env.tagTypesUsed, tag.type, mod) if tag.type == "IgnoreCond" then From 2631c30eb5c916402f3de1b41b8be99338a33155 Mon Sep 17 00:00:00 2001 From: Blitz54 Date: Wed, 10 Jun 2026 00:41:51 -0500 Subject: [PATCH 11/13] Fix ward regen mod --- src/Modules/ModParser.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Modules/ModParser.lua b/src/Modules/ModParser.lua index db4d35485..4102ce7e5 100644 --- a/src/Modules/ModParser.lua +++ b/src/Modules/ModParser.lua @@ -179,7 +179,7 @@ local modNameList = { ["maximum mana"] = "Mana", ["mana regeneration"] = "ManaRegen", ["mana regeneration rate"] = "ManaRegen", - ["runic ward regeneration rate"] = "ManaRegen", + ["runic ward regeneration rate"] = "WardRegen", ["mana cost"] = "ManaCost", ["mana cost of"] = "ManaCost", ["mana cost of skills"] = "ManaCost", From 33a142a85c135c3ca08dff01e536dca3676b3792 Mon Sep 17 00:00:00 2001 From: Blitz54 Date: Wed, 10 Jun 2026 01:40:10 -0500 Subject: [PATCH 12/13] Per maximum runic ward mods --- src/Modules/ModParser.lua | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Modules/ModParser.lua b/src/Modules/ModParser.lua index 4102ce7e5..977141894 100644 --- a/src/Modules/ModParser.lua +++ b/src/Modules/ModParser.lua @@ -1582,6 +1582,7 @@ local modTagList = { ["per (%d+) of maximum life or maximum mana, whichever is lower"] = function(num) return { tag = { type = "PerStat", stat = "LowestOfMaximumLifeAndMaximumMana", div = num } } end, ["per (%d+) player maximum life"] = function(num) return { tag = { type = "PerStat", stat = "Life", div = num, actor = "parent" } } end, ["per (%d+) life cost"] = function(num) return { tag = { type = "PerStat", stat = "LifeCost", div = num}} end, + ["per (%d+) maximum runic ward"] = function(num) return { tag = { type = "PerStat", stat = "Ward", div = num } } end, ["per (%d+) maximum mana"] = function(num) return { tag = { type = "PerStat", stat = "Mana", div = num } } end, ["per (%d+) maximum mana, up to (%d+)%%"] = function(num, _, limit) return { tag = { type = "PerStat", stat = "Mana", div = num, limit = tonumber(limit), limitTotal = true } } end, ["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, From 43eb6e2fa54c2dec1591b40a1d1b7f9a6210f6cf Mon Sep 17 00:00:00 2001 From: Blitz54 Date: Wed, 10 Jun 2026 16:50:10 -0500 Subject: [PATCH 13/13] Change spirit colour to more creamy yellow like in game, and move spirit higher in side bar --- src/Data/Global.lua | 4 ++-- src/Modules/BuildDisplayStats.lua | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/Data/Global.lua b/src/Data/Global.lua index a78a6d4d7..1845083ba 100644 --- a/src/Data/Global.lua +++ b/src/Data/Global.lua @@ -66,7 +66,8 @@ colorCodes = { SCOURGE = "^xFF6E25", CRUCIBLE = "^xFFA500", GEMDESCRIPTION = "^xBAAD85", - SPLITPERSONALITY = "^xFFD62A" + SPLITPERSONALITY = "^xFFD62A", + SPIRIT = "^xF5D076" } colorCodes.STRENGTH = colorCodes.MARAUDER colorCodes.DEXTERITY = colorCodes.RANGER @@ -74,7 +75,6 @@ colorCodes.INTELLIGENCE = colorCodes.WITCH colorCodes.LIFE = colorCodes.MARAUDER colorCodes.MANA = colorCodes.WITCH -colorCodes.SPIRIT = colorCodes.RARE colorCodes.ES = colorCodes.SOURCE colorCodes.WARD = colorCodes.RARE colorCodes.ARMOUR = colorCodes.NORMAL diff --git a/src/Modules/BuildDisplayStats.lua b/src/Modules/BuildDisplayStats.lua index 2a08bce30..eb1662cd5 100644 --- a/src/Modules/BuildDisplayStats.lua +++ b/src/Modules/BuildDisplayStats.lua @@ -119,6 +119,10 @@ local displayStats = { { stat = "Darkness", label = "Total Darkness", fmt = "d", color = colorCodes.CHAOS}, { stat = "ReservedDarkness", label = "Reserved Darkness", fmt ="d", color = colorCodes.CHAOS}, { }, + { stat = "Spirit", label = "Total Spirit", fmt = "d", color = colorCodes.SPIRIT, compPercent = true }, + { stat = "SpiritUnreserved", label = "Unreserved Spirit", fmt = "d", color = colorCodes.SPIRIT, condFunc = function(v,o) return v < o.Spirit end, compPercent = true, warnFunc = function(v) return v < 0 and "Your unreserved Spirit is negative" end }, + { stat = "SpiritUnreservedPercent", label = "Unreserved Spirit", fmt = "d%%", color = colorCodes.SPIRIT, condFunc = function(v,o) return v < 100 end }, + { }, { stat = "Life", label = "Total Life", fmt = "d", color = colorCodes.LIFE, compPercent = true }, { stat = "Spec:LifeInc", label = "%Inc Life", fmt = "d%%", color = colorCodes.LIFE, condFunc = function(v,o) return v > 0 and o.Life > 1 end }, { stat = "LifeUnreserved", label = "Unreserved Life", fmt = "d", color = colorCodes.LIFE, condFunc = function(v,o) return v < o.Life end, compPercent = true, warnFunc = function(v) return v <= 0 and "Your unreserved Life is below 1" end }, @@ -138,10 +142,6 @@ local displayStats = { { stat = "ManaLeechGainRate", label = "Mana Leech/On Hit Rate", fmt = ".1f", color = colorCodes.MANA, compPercent = true }, { stat = "ManaLeechGainPerHit", label = "Mana Leech/Gain per Hit", fmt = ".1f", color = colorCodes.MANA, compPercent = true }, { }, - { stat = "Spirit", label = "Total Spirit", fmt = "d", color = colorCodes.SPIRIT, compPercent = true }, - { stat = "SpiritUnreserved", label = "Unreserved Spirit", fmt = "d", color = colorCodes.SPIRIT, condFunc = function(v,o) return v < o.Spirit end, compPercent = true, warnFunc = function(v) return v < 0 and "Your unreserved Spirit is negative" end }, - { stat = "SpiritUnreservedPercent", label = "Unreserved Spirit", fmt = "d%%", color = colorCodes.SPIRIT, condFunc = function(v,o) return v < 100 end }, - { }, { stat = "EnergyShield", label = "Energy Shield", fmt = "d", color = colorCodes.ES, compPercent = true }, { stat = "EnergyShieldRecoveryCap", label = "Recoverable ES", color = colorCodes.ES, fmt = "d", condFunc = function(v,o) return o.CappingES end }, { stat = "Spec:EnergyShieldInc", label = "%Inc ES from Tree", color = colorCodes.ES, fmt = "d%%" },