From d494c1dfef849210fff67cd346cf5ea34e66b9cb Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Tue, 2 Jun 2026 20:30:31 +0200 Subject: [PATCH 01/30] add MP5 from items only in classic --- Modules/Data/MP5.lua | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/Modules/Data/MP5.lua b/Modules/Data/MP5.lua index 5ea8de85..ce00298f 100755 --- a/Modules/Data/MP5.lua +++ b/Modules/Data/MP5.lua @@ -97,9 +97,10 @@ function Data:GetMP5WhileCasting() local castingModifier, mp5BuffBonus, periodicMana = Data:GetMP5FromBuffs() castingModifier = min(1,castingModifier + _MP5:GetTalentModifier() + Data:GetSetBonusModifierMP5()) -- capped at 100% - local mp5Items = Data:GetMP5FromItems() - casting = (casting * 5) + mp5Items + mp5BuffBonus * castingModifier + periodicMana - + casting = (casting * 5) + mp5BuffBonus * castingModifier + periodicMana + if ECS.IsClassic then + casting = casting + Data:GetMP5FromItems() + end return DataUtils:Round(casting, 2) end @@ -107,9 +108,10 @@ end function Data:GetMP5OutsideCasting() local mp5FromSpirit = Data:GetMP5FromSpirit() local _, mp5BuffBonus, periodicMana = Data:GetMP5FromBuffs() - local mp5FromItems = Data:GetMP5FromItems() - - local totalMP5 = mp5FromSpirit + mp5FromItems + mp5BuffBonus + periodicMana + local totalMP5 = mp5FromSpirit + mp5BuffBonus + periodicMana + if ECS.IsClassic then + totalMP5 = totalMP5 + Data:GetMP5FromItems() + end return DataUtils:Round(totalMP5, 2) end From cf07fd04a8cbb4c69c72b2c314bad3b1e88b6aeb Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Tue, 2 Jun 2026 22:27:33 +0200 Subject: [PATCH 02/30] Refactor GetMP5FromSpirit to use GetUnitManaRegenRateFromSpirit --- Modules/Data/MP5.lua | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/Modules/Data/MP5.lua b/Modules/Data/MP5.lua index ce00298f..84f9e2fc 100755 --- a/Modules/Data/MP5.lua +++ b/Modules/Data/MP5.lua @@ -78,12 +78,7 @@ local lastManaReg = 0 ---@return number function Data:GetMP5FromSpirit() - local base, _ = GetManaRegen() -- Returns mana reg per 1 second (including talent and buff modifiers) - if base < 1 then - base = lastManaReg - end - lastManaReg = base - + local base = GetUnitManaRegenRateFromSpirit("player") return DataUtils:Round(base * 5, 2) end From 30da78d6a78446aef8ac9425f0c822bfa101d63e Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Tue, 2 Jun 2026 22:32:10 +0200 Subject: [PATCH 03/30] remove unused variable --- Modules/Data/MP5.lua | 2 -- 1 file changed, 2 deletions(-) diff --git a/Modules/Data/MP5.lua b/Modules/Data/MP5.lua index 84f9e2fc..02175dc0 100755 --- a/Modules/Data/MP5.lua +++ b/Modules/Data/MP5.lua @@ -74,8 +74,6 @@ function _MP5:GetMP5ValueOnItems() return mp5 end -local lastManaReg = 0 - ---@return number function Data:GetMP5FromSpirit() local base = GetUnitManaRegenRateFromSpirit("player") From 25ab01909249afff97caff07acef6a4307efc254 Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Tue, 2 Jun 2026 22:33:25 +0200 Subject: [PATCH 04/30] Add GetUnitManaRegenRateFromSpirit to luacheckrc --- .luacheckrc | 1 + 1 file changed, 1 insertion(+) diff --git a/.luacheckrc b/.luacheckrc index 2e903fee..7aec53ce 100644 --- a/.luacheckrc +++ b/.luacheckrc @@ -1497,6 +1497,7 @@ stds.ecs = { "GetUICameraInfo", "GetUITextureKitInfo", "GetUnitHealthModifier", + "GetUnitManaRegenRateFromSpirit", "GetUnitMaxHealthModifier", "GetUnitPowerModifier", "GetUnitSpeed", From 0283a059b29469e7ec48a9f550e1e978a0c1695c Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Tue, 2 Jun 2026 22:56:34 +0200 Subject: [PATCH 05/30] more mp5 fixes --- Modules/Data/MP5.lua | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/Modules/Data/MP5.lua b/Modules/Data/MP5.lua index 02175dc0..f80e77bf 100755 --- a/Modules/Data/MP5.lua +++ b/Modules/Data/MP5.lua @@ -84,9 +84,7 @@ end ---@return number function Data:GetMP5WhileCasting() local _, casting = GetManaRegen() -- Returns mana reg per 1 second (including talent and buff modifiers) - if casting < 0.1 then - casting = 0 - end + casting = math.max(0,casting) local castingModifier, mp5BuffBonus, periodicMana = Data:GetMP5FromBuffs() castingModifier = min(1,castingModifier + _MP5:GetTalentModifier() + Data:GetSetBonusModifierMP5()) -- capped at 100% @@ -99,9 +97,9 @@ end ---@return number function Data:GetMP5OutsideCasting() - local mp5FromSpirit = Data:GetMP5FromSpirit() + local base, _ = GetManaRegen() local _, mp5BuffBonus, periodicMana = Data:GetMP5FromBuffs() - local totalMP5 = mp5FromSpirit + mp5BuffBonus + periodicMana + local totalMP5 = (base * 5) + mp5BuffBonus + periodicMana if ECS.IsClassic then totalMP5 = totalMP5 + Data:GetMP5FromItems() end From ee9bea20970b17e0968a10e32c8767e71be59a64 Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Wed, 3 Jun 2026 00:55:46 +0200 Subject: [PATCH 06/30] manually calculate spirit regen in classic --- Modules/Data/MP5.lua | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/Modules/Data/MP5.lua b/Modules/Data/MP5.lua index f80e77bf..5b665df6 100755 --- a/Modules/Data/MP5.lua +++ b/Modules/Data/MP5.lua @@ -76,8 +76,25 @@ end ---@return number function Data:GetMP5FromSpirit() - local base = GetUnitManaRegenRateFromSpirit("player") - return DataUtils:Round(base * 5, 2) + local regen = 0 + if ECS.IsClassic then + local _, spirit, _, _ = UnitStat("unit", LE_UNIT_STAT_SPIRIT) + if spirit < 50 then + regen = 0.25 * spirit + else + if classId == Data.PRIEST or classId == Data.MAGE then + regen = (12.5 + spirit/4)/2 + elseif classId == Data.DRUID and (not DataUtils:IsShapeshifted()) then + regen = (15 + spirit/4.5)/2 + else + regen = (15 + spirit/5)/2 + end + end + else + -- GetUnitManaRegenRateFromSpirit uses TBC formula in classic + regen = GetUnitManaRegenRateFromSpirit("player") + end + return DataUtils:Round(regen * 5, 2) end -- Get mana regen while casting From 19c6c349b05f737934424a8abc9d642bb337b710 Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Wed, 3 Jun 2026 00:58:10 +0200 Subject: [PATCH 07/30] luacheck --- Modules/Data/MP5.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modules/Data/MP5.lua b/Modules/Data/MP5.lua index 5b665df6..143d2ee0 100755 --- a/Modules/Data/MP5.lua +++ b/Modules/Data/MP5.lua @@ -76,7 +76,7 @@ end ---@return number function Data:GetMP5FromSpirit() - local regen = 0 + local regen if ECS.IsClassic then local _, spirit, _, _ = UnitStat("unit", LE_UNIT_STAT_SPIRIT) if spirit < 50 then From 501ece5e880f55eeb5103fe14cebb2242dc080bf Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Wed, 3 Jun 2026 00:58:55 +0200 Subject: [PATCH 08/30] Add LE_UNIT_STAT_SPIRIT to .luacheckrc --- .luacheckrc | 1 + 1 file changed, 1 insertion(+) diff --git a/.luacheckrc b/.luacheckrc index 7aec53ce..8d8ff494 100644 --- a/.luacheckrc +++ b/.luacheckrc @@ -2768,6 +2768,7 @@ stds.ecs = { "WOW_PROJECT_WRATH_CLASSIC", "-----------------------------------------------------> Enums", "LE_EXPANSION_BURNING_CRUSADE", + "LE_UNIT_STAT_SPIRIT", "-----------------------------------------------------> GlobalStrings", "CLOSE", "DEFENSE", From c15adc39b62cee2cbe30d82012628a65f8fdcd4e Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Wed, 3 Jun 2026 01:38:25 +0200 Subject: [PATCH 09/30] Fix UnitStat call to use 'player' instead of 'unit' --- Modules/Data/MP5.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modules/Data/MP5.lua b/Modules/Data/MP5.lua index 143d2ee0..418b3e74 100755 --- a/Modules/Data/MP5.lua +++ b/Modules/Data/MP5.lua @@ -78,7 +78,7 @@ end function Data:GetMP5FromSpirit() local regen if ECS.IsClassic then - local _, spirit, _, _ = UnitStat("unit", LE_UNIT_STAT_SPIRIT) + local _, spirit, _, _ = UnitStat("player", LE_UNIT_STAT_SPIRIT) if spirit < 50 then regen = 0.25 * spirit else From 97cfb4192243631eef9264103120830708a00b09 Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Thu, 4 Jun 2026 01:46:40 +0200 Subject: [PATCH 10/30] Add PowerRegenPercentModifier data --- Modules/Data/Constants.lua | 40 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/Modules/Data/Constants.lua b/Modules/Data/Constants.lua index 66fa6185..40045ef4 100755 --- a/Modules/Data/Constants.lua +++ b/Modules/Data/Constants.lua @@ -284,6 +284,46 @@ Data.Aura = { [25894] = (ECS.IsClassic and 1 or nil), -- Greater Blessing of Wisdom rank 1 [25918] = (ECS.IsClassic and 1 or nil), -- Greater Blessing of Wisdom rank 2 }, + PowerRegenPercentModifier = { + [Enum.PowerType.Energy] = { + [13750] = 1, -- Adrenaline Rush + [58427] = 0.3, -- Overkill + [66203] = -1, -- Steam Blast + [69470] = -1, -- Heat Drain + [70385] = -1, -- Abomination Vehicle Power Drain + [72242] = -1, -- Zero Power + [1231381] = 0.26, -- Feral Dedication + }, + [Enum.PowerType.Mana] = { + [5419] = (ECS.IsTBC and -0.11 or nil), -- Travel Form (Passive) + [5421] = (ECS.IsTBC and -0.11 or nil), -- Aquatic Form (Passive) + [12051] = (ECS.IsClassic and 15 or nil), -- Evocation + [18371] = (ECS.IsClassic and 0.5 or nil), -- Soul Siphon + [24705] = (ECS.IsClassic and 0.25 or nil), -- Invocation of the Wickerman + [27747] = -1, -- Steam Tank Passive + [29166] = ((not ECS.IsWotlk) and 4 or nil), -- Innervate + [33948] = (ECS.IsTBC and -0.11 or nil), -- Flight Form (Passive) + [34754] = (ECS.IsWotlk and 0.16 or nil), -- Holy Concentration + [40121] = (ECS.IsTBC and -0.11 or nil), -- Swift Flight Form (Passive) + [42514] = 1, -- Arcane Surge + [49307] = 1, -- Full Mana Regen + [51623] = 5, -- Sholazar Guardian Heartbeat + [63724] = 0.32, -- Holy Concentration + [63725] = 0.5, -- Holy Concentration + [456195] = 4, -- Innervate + [468466] = 1, -- Unmaking the Simulacrum + }, + [Enum.PowerType.RuneBlood] = { + [50469] = -0.5, -- Rhythm of the Fallen + [50779] = 1, -- Blood Rune Mastery + }, + [Enum.PowerType.RuneFrost] = { + [50469] = -0.5, -- Rhythm of the Fallen + }, + [Enum.PowerType.RuneUnholy] = { + [50469] = -0.5, -- Rhythm of the Fallen + }, + }, SpellCrit = { [24907] = ((not ECS.IsClassic) and 5 or nil), -- Moonkin Aura [29177] = 6, -- Elemental Devastation Rank 2 From 2458c3bd0565071158e414734f4d25864c336bae Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Thu, 4 Jun 2026 01:56:59 +0200 Subject: [PATCH 11/30] wip --- Modules/Data/MP5.lua | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Modules/Data/MP5.lua b/Modules/Data/MP5.lua index 418b3e74..ab4d6c98 100755 --- a/Modules/Data/MP5.lua +++ b/Modules/Data/MP5.lua @@ -103,9 +103,9 @@ function Data:GetMP5WhileCasting() local _, casting = GetManaRegen() -- Returns mana reg per 1 second (including talent and buff modifiers) casting = math.max(0,casting) - local castingModifier, mp5BuffBonus, periodicMana = Data:GetMP5FromBuffs() - castingModifier = min(1,castingModifier + _MP5:GetTalentModifier() + Data:GetSetBonusModifierMP5()) -- capped at 100% - casting = (casting * 5) + mp5BuffBonus * castingModifier + periodicMana + local modifier, mp5BuffBonus, periodicMana = Data:GetMP5FromBuffs() + -- castingModifier = min(1,castingModifier + _MP5:GetTalentModifier() + Data:GetSetBonusModifierMP5()) -- capped at 100% + casting = (casting * 5) * (1 + modifier) + mp5BuffBonus + periodicMana if ECS.IsClassic then casting = casting + Data:GetMP5FromItems() end @@ -115,8 +115,8 @@ end ---@return number function Data:GetMP5OutsideCasting() local base, _ = GetManaRegen() - local _, mp5BuffBonus, periodicMana = Data:GetMP5FromBuffs() - local totalMP5 = (base * 5) + mp5BuffBonus + periodicMana + local modifier, mp5BuffBonus, periodicMana = Data:GetMP5FromBuffs() + local totalMP5 = (base * 5) * (1 + modifier) + mp5BuffBonus + periodicMana if ECS.IsClassic then totalMP5 = totalMP5 + Data:GetMP5FromItems() end @@ -137,7 +137,7 @@ function Data:GetMP5FromBuffs() bonus = bonus + (Data.Aura.MP5[aura.spellId] or 0) bonus = bonus + (Data.Aura.PercentageMp5[aura.spellId] or 0) * maxmana periodic = periodic + (Data.Aura.PeriodicallyGiveMana[aura.spellId] or 0) - mod = mod + (Data.Aura.AllowCastingManaRegeneration[aura.spellId] or 0) -- assuming buffs stacking, to be investigated + mod = mod + (Data.Aura.PowerRegenPercentModifier[Enum.PowerType.Mana][aura.spellId] or 0) if Data.Aura.IsLightningShield[aura.spellId] and Data:IsSetBonusActive(Data.setNames.THE_EARTHSHATTERER, 8) then bonus = bonus + 15 -- 15 MP5 from Shaman T3 8 piece bonus when Lightning Shield is active end From 49ed92977849847dff4dc02f59bd9e1e8db1840b Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Fri, 5 Jun 2026 01:19:42 +0200 Subject: [PATCH 12/30] wip --- Modules/Data/MP5.lua | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/Modules/Data/MP5.lua b/Modules/Data/MP5.lua index ab4d6c98..b1b205fb 100755 --- a/Modules/Data/MP5.lua +++ b/Modules/Data/MP5.lua @@ -78,6 +78,7 @@ end function Data:GetMP5FromSpirit() local regen if ECS.IsClassic then + -- GetUnitManaRegenRateFromSpirit uses TBC formula in classic local _, spirit, _, _ = UnitStat("player", LE_UNIT_STAT_SPIRIT) if spirit < 50 then regen = 0.25 * spirit @@ -91,41 +92,43 @@ function Data:GetMP5FromSpirit() end end else - -- GetUnitManaRegenRateFromSpirit uses TBC formula in classic regen = GetUnitManaRegenRateFromSpirit("player") end - return DataUtils:Round(regen * 5, 2) + return DataUtils:Round(regen * 5, 1) end -- Get mana regen while casting ---@return number function Data:GetMP5WhileCasting() - local _, casting = GetManaRegen() -- Returns mana reg per 1 second (including talent and buff modifiers) - casting = math.max(0,casting) - + -- Returns mana reg per 1 second (including talent and buff casting modifiers) + local _, casting = GetManaRegen() local modifier, mp5BuffBonus, periodicMana = Data:GetMP5FromBuffs() -- castingModifier = min(1,castingModifier + _MP5:GetTalentModifier() + Data:GetSetBonusModifierMP5()) -- capped at 100% - casting = (casting * 5) * (1 + modifier) + mp5BuffBonus + periodicMana + casting = casting * 5 if ECS.IsClassic then + -- mp5 from items isn't accounted in classic casting = casting + Data:GetMP5FromItems() end - return DataUtils:Round(casting, 2) + casting = casting * modifier + mp5BuffBonus + periodicMana + return DataUtils:Round(casting, 1) end ---@return number function Data:GetMP5OutsideCasting() local base, _ = GetManaRegen() local modifier, mp5BuffBonus, periodicMana = Data:GetMP5FromBuffs() - local totalMP5 = (base * 5) * (1 + modifier) + mp5BuffBonus + periodicMana + local totalMP5 = base * 5 if ECS.IsClassic then + -- mp5 from items isn't accounted in classic totalMP5 = totalMP5 + Data:GetMP5FromItems() end - return DataUtils:Round(totalMP5, 2) + local totalMP5 = totalMP5 * modifier + mp5BuffBonus + periodicMana + return DataUtils:Round(totalMP5, 1) end ---@return number, number, number function Data:GetMP5FromBuffs() - local mod = 0 + local mod = 1 local bonus = 0 local periodic = 0 local maxmana = UnitPowerMax("player", Enum.PowerType.Mana) @@ -163,7 +166,7 @@ function Data:GetMP5FromBuffs() end i = i + 1 until (not aura) - return min(mod,1), bonus, periodic + return max(mod,0), bonus, periodic end ---@return number From e12e31e5954a04c856d6a917dec5303f9888513d Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Fri, 5 Jun 2026 01:25:26 +0200 Subject: [PATCH 13/30] wip --- Modules/Data/MP5.lua | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Modules/Data/MP5.lua b/Modules/Data/MP5.lua index b1b205fb..37971557 100755 --- a/Modules/Data/MP5.lua +++ b/Modules/Data/MP5.lua @@ -106,7 +106,7 @@ function Data:GetMP5WhileCasting() -- castingModifier = min(1,castingModifier + _MP5:GetTalentModifier() + Data:GetSetBonusModifierMP5()) -- capped at 100% casting = casting * 5 if ECS.IsClassic then - -- mp5 from items isn't accounted in classic + -- in classic GetManaRegen doesn't account for mp5 from items casting = casting + Data:GetMP5FromItems() end casting = casting * modifier + mp5BuffBonus + periodicMana @@ -119,10 +119,10 @@ function Data:GetMP5OutsideCasting() local modifier, mp5BuffBonus, periodicMana = Data:GetMP5FromBuffs() local totalMP5 = base * 5 if ECS.IsClassic then - -- mp5 from items isn't accounted in classic + -- in classic GetManaRegen doesn't account for mp5 from items totalMP5 = totalMP5 + Data:GetMP5FromItems() end - local totalMP5 = totalMP5 * modifier + mp5BuffBonus + periodicMana + totalMP5 = totalMP5 * modifier + mp5BuffBonus + periodicMana return DataUtils:Round(totalMP5, 1) end From f04073373bc6132deaa62e05b5ecfc1fd2322024 Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Fri, 5 Jun 2026 01:28:53 +0200 Subject: [PATCH 14/30] wip --- Modules/Data/MP5.lua | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Modules/Data/MP5.lua b/Modules/Data/MP5.lua index 37971557..ede12066 100755 --- a/Modules/Data/MP5.lua +++ b/Modules/Data/MP5.lua @@ -106,8 +106,8 @@ function Data:GetMP5WhileCasting() -- castingModifier = min(1,castingModifier + _MP5:GetTalentModifier() + Data:GetSetBonusModifierMP5()) -- capped at 100% casting = casting * 5 if ECS.IsClassic then - -- in classic GetManaRegen doesn't account for mp5 from items - casting = casting + Data:GetMP5FromItems() + -- in classic GetManaRegen doesn't account for mp5 from items nor buffs + casting = casting + Data:GetMP5FromItems() + mp5BuffBonus end casting = casting * modifier + mp5BuffBonus + periodicMana return DataUtils:Round(casting, 1) @@ -119,10 +119,10 @@ function Data:GetMP5OutsideCasting() local modifier, mp5BuffBonus, periodicMana = Data:GetMP5FromBuffs() local totalMP5 = base * 5 if ECS.IsClassic then - -- in classic GetManaRegen doesn't account for mp5 from items - totalMP5 = totalMP5 + Data:GetMP5FromItems() + -- in classic GetManaRegen doesn't account for mp5 from items nor buffs + totalMP5 = totalMP5 + Data:GetMP5FromItems() + mp5BuffBonus end - totalMP5 = totalMP5 * modifier + mp5BuffBonus + periodicMana + totalMP5 = totalMP5 * modifier + periodicMana return DataUtils:Round(totalMP5, 1) end From 1bdeaa64b9feb83752731144dda12b9a7f4ce863 Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Thu, 11 Jun 2026 03:36:24 +0200 Subject: [PATCH 15/30] wip --- Modules/Profile.lua | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Modules/Profile.lua b/Modules/Profile.lua index 2a2152fe..48adadae 100755 --- a/Modules/Profile.lua +++ b/Modules/Profile.lua @@ -6,7 +6,7 @@ local Utils = ECSLoader:ImportModule("Utils") ---@return number function Profile.GetProfileVersion() - return 25 + return 26 end ---@return ECSProfile @@ -296,10 +296,10 @@ local function GetDefaultStatsProfile() refName = "ManaHeader", text = "Mana", - mp5Items = { + mp5CastingModifier = { display = true, - refName = "MP5Items", - text = "MP5 (Items)", + refName = "MP5CastingModifier", + text = "MP5 Casting Modifier", textColor = colors.MP5_SECONDARY, statColor = colors.MP5_PRIMARY }, @@ -310,10 +310,10 @@ local function GetDefaultStatsProfile() textColor = colors.MP5_SECONDARY, statColor = colors.MP5_PRIMARY }, - mp5Buffs = { + mp5Periodic = { display = true, - refName = "MP5Buffs", - text = "MP5 (Buffs)", + refName = "MP5Periodic", + text = "MP5 (Periodic)", textColor = colors.MP5_SECONDARY, statColor = colors.MP5_PRIMARY }, From 31e411b006e695268395ea0bd7c91713908c00b6 Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Thu, 11 Jun 2026 03:39:33 +0200 Subject: [PATCH 16/30] wip --- Modules/Config/ManaSection.lua | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/Modules/Config/ManaSection.lua b/Modules/Config/ManaSection.lua index d62c4f5c..a0e4ef9c 100755 --- a/Modules/Config/ManaSection.lua +++ b/Modules/Config/ManaSection.lua @@ -28,16 +28,16 @@ function _Config:LoadManaSection() Stats.RebuildStatInfos() end, }, - mp5Items = { + mp5CastingModifier = { type = "toggle", order = 1, - name = function() return i18n("MP5 Items") end, - desc = function() return i18n("Shows/Hides the MP5 value from items.") end, + name = function() return i18n("MP5 Casting Modifier") end, + desc = function() return i18n("Shows/Hides the MP5 casting modifier.") end, width = 1.5, disabled = function() return (not ExtendedCharacterStats.profile.regen.display); end, - get = function () return ExtendedCharacterStats.profile.regen.mp5Items.display; end, + get = function () return ExtendedCharacterStats.profile.regen.mp5CastingModifier.display; end, set = function (_, value) - ExtendedCharacterStats.profile.regen.mp5Items.display = value + ExtendedCharacterStats.profile.regen.mp5CastingModifier.display = value Stats.RebuildStatInfos() end, }, @@ -54,16 +54,16 @@ function _Config:LoadManaSection() Stats.RebuildStatInfos() end, }, - mp5Buffs = { + mp5Periodic = { type = "toggle", order = 3, - name = function() return i18n("MP5 Buffs") end, - desc = function() return i18n("Shows/Hides the MP5 value from buffs.") end, + name = function() return i18n("MP5 Periodic") end, + desc = function() return i18n("Shows/Hides the periodic MP5 value.") end, width = 1.5, disabled = function() return (not ExtendedCharacterStats.profile.regen.display); end, - get = function () return ExtendedCharacterStats.profile.regen.mp5Buffs.display; end, + get = function () return ExtendedCharacterStats.profile.regen.mp5Periodic.display; end, set = function (_, value) - ExtendedCharacterStats.profile.regen.mp5Buffs.display = value + ExtendedCharacterStats.profile.regen.mp5Periodic.display = value Stats.RebuildStatInfos() end, }, From 8693e42197b21dde89d7433eaca581822e667fb8 Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Thu, 11 Jun 2026 03:43:48 +0200 Subject: [PATCH 17/30] wip --- .../ManaConfigTranslations.lua | 64 +++++++++---------- 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/Modules/i18n/translations/ConfigTranslations/ManaConfigTranslations.lua b/Modules/i18n/translations/ConfigTranslations/ManaConfigTranslations.lua index 21443840..423c2771 100644 --- a/Modules/i18n/translations/ConfigTranslations/ManaConfigTranslations.lua +++ b/Modules/i18n/translations/ConfigTranslations/ManaConfigTranslations.lua @@ -22,45 +22,45 @@ local manaConfigTranslations = { ["esMX"] = "Muestra/oculta todas estadísticas de maná", ["ptBR"] = "Mostra/oculta todas as estatísticas de mana" }, - ["MP5 Items"] = { + ["MP5 Periodic"] = { ["enUS"] = true, - ["deDE"] = "MP5 Gegenstände", - ["frFR"] = "MP5 (Objets)", - ["zhCN"] = "装备回蓝", - ["ruRU"] = "MP5 (экипировка)", - ["esES"] = "MP5 (Objetos)", - ["esMX"] = "MP5 (Objetos)", - ["ptBR"] = "MP5 (Itens)" + ["deDE"] = "", + ["frFR"] = "", + ["zhCN"] = "", + ["ruRU"] = "", + ["esES"] = "", + ["esMX"] = "", + ["ptBR"] = "", }, - ["Shows/Hides the MP5 value from items."] = { + ["Shows/Hides the periodic MP5 value."] = { ["enUS"] = true, - ["deDE"] = "Zeigt/Versteckt den MP5-Wert von Gegenständen.", - ["frFR"] = "Affiche/cache la valeur MP5 des objets.", - ["zhCN"] = "显示/隐藏 装备回蓝", - ["ruRU"] = "Показать/скрыть значение MP5 (восполнение маны каждые 5 сек вне боя) от экипировки", - ["esES"] = "Muestra/oculta el valor de MP5 de objetos", - ["esMX"] = "Muestra/oculta el valor de MP5 de objetos", - ["ptBR"] = "Mostra/oculta o valor de MP5 de itens" + ["deDE"] = "", + ["frFR"] = "", + ["zhCN"] = "", + ["ruRU"] = "", + ["esES"] = "", + ["esMX"] = "", + ["ptBR"] = "", }, - ["MP5 Buffs"] = { + ["MP5 Casting Modifier"] = { ["enUS"] = true, - ["deDE"] = "MP5 Stärkungszauber", - ["frFR"] = "MP5 (Amélioration)", - ["zhCN"] = "增益回蓝", - ["ruRU"] = "MP5 (баффы)", - ["esES"] = "MP5 (Beneficios)", - ["esMX"] = "MP5 (Beneficios)", - ["ptBR"] = "MP5 (Bônus)" + ["deDE"] = "", + ["frFR"] = "", + ["zhCN"] = "", + ["ruRU"] = "", + ["esES"] = "", + ["esMX"] = "", + ["ptBR"] = "" }, - ["Shows/Hides the MP5 value from buffs."] = { + ["Shows/Hides the MP5 casting modifier."] = { ["enUS"] = true, - ["deDE"] = "Zeigt/Versteckt den MP5-Wert Stärkungszauber.", - ["frFR"] = "Affiche/cache la valeur MP5 de Amélioration.", - ["zhCN"] = "显示/隐藏 增益回蓝", - ["ruRU"] = "Показать/скрыть значение MP5 (восполнение маны каждые 5 сек вне боя) от баффов", - ["esES"] = "Muestra/oculta el valor de MP5 de beneficios", - ["esMX"] = "Muestra/oculta el valor de MP5 de beneficios", - ["ptBR"] = "Mostra/oculta o valor de MP5 de bônus" + ["deDE"] = "", + ["frFR"] = "", + ["zhCN"] = "", + ["ruRU"] = "", + ["esES"] = "", + ["esMX"] = "", + ["ptBR"] = "", }, ["MP5 Spirit"] = { ["enUS"] = true, From 0aa5709531230e0b0c014141c36cf60c8db82caf Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Thu, 11 Jun 2026 03:48:05 +0200 Subject: [PATCH 18/30] profile --- Modules/Migration.lua | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Modules/Migration.lua b/Modules/Migration.lua index 0f1bf19b..1a742946 100644 --- a/Modules/Migration.lua +++ b/Modules/Migration.lua @@ -22,4 +22,10 @@ function Migration:ToLatestProfileVersion(profileVersion) if profileVersion < 25 then ExtendedCharacterStats.profile.defense.resilience = nil end + if profileVersion < 26 then + ExtendedCharacterStats.profile.regen.MP5Buffs = nil + ExtendedCharacterStats.profile.regen.MP5Items = nil + ExtendedCharacterStats.profile.regen.MP5Periodic = defaultProfile.profile.regen.MP5Periodic + ExtendedCharacterStats.profile.regen.MP5CastingModifier = defaultProfile.profile.MP5CastingModifier + end end From ee5d5280e35dc14f9bc833398303ad44b2439d72 Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Thu, 11 Jun 2026 03:52:06 +0200 Subject: [PATCH 19/30] wip --- Modules/Stats.lua | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Modules/Stats.lua b/Modules/Stats.lua index acac2a0b..39c603d3 100755 --- a/Modules/Stats.lua +++ b/Modules/Stats.lua @@ -295,7 +295,14 @@ _CreateStatInfos = function() if UnitHasMana("player") then category = profile.regen - _CreateStatInfo(category, category.mp5Items, category.mp5Spirit, category.mp5Buffs, category.mp5Casting, category.mp5NotCasting) + _CreateStatInfo( + category, + category.mp5Spirit, + category.mp5Periodic, + category.mp5CastingModifier, + category.mp5Casting, + category.mp5NotCasting, + ) end category = profile.spell From 087af75548e5511ca127d74a6d1e034cf32c4e84 Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Thu, 11 Jun 2026 04:10:52 +0200 Subject: [PATCH 20/30] wip --- Modules/Data/Data.lua | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Modules/Data/Data.lua b/Modules/Data/Data.lua index 4d1f3fe1..b9785793 100755 --- a/Modules/Data/Data.lua +++ b/Modules/Data/Data.lua @@ -77,12 +77,12 @@ dataFunctionRefs = { ["SpellHasteBonus"] = function() return Data:GetSpellHasteBonus() end, ["SpellPenetration"] = function() return Data:GetSpellPenetration() end, -- MP5 - ["MP5Items"] = function() return Data:GetMP5FromItems() end, - ["MP5Spirit"] = function() return Data:GetMP5FromSpirit() end, - ["MP5Buffs"] = function() - local _, mp5Buffs = Data:GetMP5FromBuffs() - return mp5Buffs + ["MP5Periodic"] = function() function() + local _, _, _, periodicMana = Data:GetMP5FromBuffs() + return periodicMana end, + ["MP5Spirit"] = function() return Data:GetMP5FromSpirit() end, + ["MP5CastingModifier"] = function() return Data:GetMP5CastingModifier() end, ["MP5Casting"] = function() return Data:GetMP5WhileCasting() end, ["MP5NotCasting"] = function() return Data:GetMP5OutsideCasting() end, -- Spell Power by school From e5aa2804011b76d2b7f7888cfbc54ad33f0601f1 Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Thu, 11 Jun 2026 04:22:00 +0200 Subject: [PATCH 21/30] Refactor MP5 calculations and remove gem checks --- Modules/Data/MP5.lua | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/Modules/Data/MP5.lua b/Modules/Data/MP5.lua index ede12066..8ebf8ae7 100755 --- a/Modules/Data/MP5.lua +++ b/Modules/Data/MP5.lua @@ -51,17 +51,6 @@ function _MP5:GetMP5ValueOnItems() if enchant then mp5 = mp5 + (Data.Enchant.MP5[enchant] or 0) end - -- Check for socketed gems (TODO: check for socket bonus) - local gem1, gem2, gem3 = DataUtils:GetSocketedGemsFromItemLink(itemLink) - if gem1 then - mp5 = mp5 + (Data.Gem.MP5[tonumber(gem1)] or 0) - end - if gem2 then - mp5 = mp5 + (Data.Gem.MP5[tonumber(gem2)] or 0) - end - if gem3 then - mp5 = mp5 + (Data.Gem.MP5[tonumber(gem3)] or 0) - end end end @@ -97,13 +86,20 @@ function Data:GetMP5FromSpirit() return DataUtils:Round(regen * 5, 1) end +-- Get mana regen while casting +---@return number +function Data:GetMP5CastingModifier() + local _, castingModifier, _, _ = Data:GetMP5FromBuffs() + castingModifier = min(1,castingModifier + _MP5:GetTalentModifier() + Data:GetSetBonusModifierMP5()) -- capped at 100% + return DataUtils:Round(castingModifier, 2) +end + -- Get mana regen while casting ---@return number function Data:GetMP5WhileCasting() -- Returns mana reg per 1 second (including talent and buff casting modifiers) local _, casting = GetManaRegen() - local modifier, mp5BuffBonus, periodicMana = Data:GetMP5FromBuffs() - -- castingModifier = min(1,castingModifier + _MP5:GetTalentModifier() + Data:GetSetBonusModifierMP5()) -- capped at 100% + local modifier, _, mp5BuffBonus, periodicMan = Data:GetMP5FromBuffs() casting = casting * 5 if ECS.IsClassic then -- in classic GetManaRegen doesn't account for mp5 from items nor buffs @@ -129,6 +125,7 @@ end ---@return number, number, number function Data:GetMP5FromBuffs() local mod = 1 + local castingMod = 0 local bonus = 0 local periodic = 0 local maxmana = UnitPowerMax("player", Enum.PowerType.Mana) @@ -140,6 +137,7 @@ function Data:GetMP5FromBuffs() bonus = bonus + (Data.Aura.MP5[aura.spellId] or 0) bonus = bonus + (Data.Aura.PercentageMp5[aura.spellId] or 0) * maxmana periodic = periodic + (Data.Aura.PeriodicallyGiveMana[aura.spellId] or 0) + castingMod = castingMod + (Data.Aura.AllowCastingManaRegeneration[aura.spellId] or 0) mod = mod + (Data.Aura.PowerRegenPercentModifier[Enum.PowerType.Mana][aura.spellId] or 0) if Data.Aura.IsLightningShield[aura.spellId] and Data:IsSetBonusActive(Data.setNames.THE_EARTHSHATTERER, 8) then bonus = bonus + 15 -- 15 MP5 from Shaman T3 8 piece bonus when Lightning Shield is active @@ -166,7 +164,7 @@ function Data:GetMP5FromBuffs() end i = i + 1 until (not aura) - return max(mod,0), bonus, periodic + return max(mod,0), min(castingMod,1), bonus, periodic end ---@return number From 027d0ee822c81f525e990d9fffc5dbafdde60087 Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Thu, 11 Jun 2026 17:27:31 +0200 Subject: [PATCH 22/30] Fix --- Modules/Data/Data.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modules/Data/Data.lua b/Modules/Data/Data.lua index b9785793..e52ae63e 100755 --- a/Modules/Data/Data.lua +++ b/Modules/Data/Data.lua @@ -77,7 +77,7 @@ dataFunctionRefs = { ["SpellHasteBonus"] = function() return Data:GetSpellHasteBonus() end, ["SpellPenetration"] = function() return Data:GetSpellPenetration() end, -- MP5 - ["MP5Periodic"] = function() function() + ["MP5Periodic"] = function() local _, _, _, periodicMana = Data:GetMP5FromBuffs() return periodicMana end, From 3ab17dea6ac09954e9acaf2b2ea48c5779e40f35 Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Thu, 11 Jun 2026 17:28:25 +0200 Subject: [PATCH 23/30] Fix variable name for periodic mana in GetMP5WhileCasting --- Modules/Data/MP5.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modules/Data/MP5.lua b/Modules/Data/MP5.lua index 17539998..1bd441ba 100755 --- a/Modules/Data/MP5.lua +++ b/Modules/Data/MP5.lua @@ -103,7 +103,7 @@ end function Data:GetMP5WhileCasting() -- Returns mana reg per 1 second (including talent and buff casting modifiers) local _, casting = GetManaRegen() - local modifier, _, mp5BuffBonus, periodicMan = Data:GetMP5FromBuffs() + local modifier, _, mp5BuffBonus, periodicMana = Data:GetMP5FromBuffs() casting = casting * 5 if ECS.IsClassic then -- in classic GetManaRegen doesn't account for mp5 from items nor buffs From 7603aa9d0c47b03fd65633ee7b9e6233726a4224 Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Thu, 11 Jun 2026 17:29:16 +0200 Subject: [PATCH 24/30] Fix formatting for mp5NotCasting category --- Modules/Stats.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modules/Stats.lua b/Modules/Stats.lua index 9463ca97..277fd5b6 100755 --- a/Modules/Stats.lua +++ b/Modules/Stats.lua @@ -328,7 +328,7 @@ _CreateStatInfos = function() category.mp5Periodic, category.mp5CastingModifier, category.mp5Casting, - category.mp5NotCasting, + category.mp5NotCasting ) end From 021001ade15db515300624503c1a5db45d233623 Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Thu, 11 Jun 2026 17:32:38 +0200 Subject: [PATCH 25/30] fixes --- Modules/Migration.lua | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Modules/Migration.lua b/Modules/Migration.lua index 1a742946..978af3c3 100644 --- a/Modules/Migration.lua +++ b/Modules/Migration.lua @@ -15,6 +15,8 @@ function Migration:ToLatestProfileVersion(profileVersion) return end + local defaultProfile = Profile:GetDefaultProfile() + if profileVersion < 24 then ExtendedCharacterStats.profile.defense.resilienceRating = ExtendedCharacterStats.profile.defense.resilience ExtendedCharacterStats.profile.defense.resilience = nil From e12bc301549594848f8e3b88af92831cca5b51fd Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Sat, 13 Jun 2026 02:18:40 +0200 Subject: [PATCH 26/30] Fix MP5 property names in migration logic --- Modules/Migration.lua | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Modules/Migration.lua b/Modules/Migration.lua index 978af3c3..6c1fc4ef 100644 --- a/Modules/Migration.lua +++ b/Modules/Migration.lua @@ -25,9 +25,9 @@ function Migration:ToLatestProfileVersion(profileVersion) ExtendedCharacterStats.profile.defense.resilience = nil end if profileVersion < 26 then - ExtendedCharacterStats.profile.regen.MP5Buffs = nil - ExtendedCharacterStats.profile.regen.MP5Items = nil - ExtendedCharacterStats.profile.regen.MP5Periodic = defaultProfile.profile.regen.MP5Periodic - ExtendedCharacterStats.profile.regen.MP5CastingModifier = defaultProfile.profile.MP5CastingModifier + ExtendedCharacterStats.profile.regen.mp5Buffs = nil + ExtendedCharacterStats.profile.regen.mp5Items = nil + ExtendedCharacterStats.profile.regen.mp5Periodic = defaultProfile.profile.regen.mp5Periodic + ExtendedCharacterStats.profile.regen.mp5CastingModifier = defaultProfile.profile.mp5CastingModifier end end From 1a801852320e06635d4b78f6c6dff13090e99bfc Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Sat, 13 Jun 2026 02:20:29 +0200 Subject: [PATCH 27/30] Rename and update MP5 translation keys --- .../i18n/translations/StatTranslations.lua | 32 +++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/Modules/i18n/translations/StatTranslations.lua b/Modules/i18n/translations/StatTranslations.lua index 6bf9140e..5829fa4d 100644 --- a/Modules/i18n/translations/StatTranslations.lua +++ b/Modules/i18n/translations/StatTranslations.lua @@ -382,15 +382,15 @@ local statTranslations = { ["esMX"] = "Maná", ["ptBR"] = true }, - ["MP5 (Items)"] = { + ["MP5 Casting Modifier"] = { ["enUS"] = true, - ["deDE"] = "MP5 (Gegenstände)", - ["frFR"] = "MP5 (Objets)", - ["zhCN"] = "装备回蓝", - ["ruRU"] = "MP5 (экип.)", - ["esES"] = "MP5 (Objetos)", - ["esMX"] = "MP5 (Objetos)", - ["ptBR"] = "MP5 (Itens)" + ["deDE"] = "", + ["frFR"] = "", + ["zhCN"] = "", + ["ruRU"] = "", + ["esES"] = "", + ["esMX"] = "", + ["ptBR"] = "", }, ["MP5 (Spirit)"] = { ["enUS"] = true, @@ -402,15 +402,15 @@ local statTranslations = { ["esMX"] = "MP5 (Espíritu)", ["ptBR"] = "MP5 (Espírito)" }, - ["MP5 (Buffs)"] = { + ["MP5 (Periodic)"] = { ["enUS"] = true, - ["deDE"] = "MP5 (Stärkungszauber)", - ["frFR"] = "MP5 (Améliorations)", - ["zhCN"] = "增益回蓝", - ["ruRU"] = "MP5 (баффы)", - ["esES"] = "MP5 (Beneficios)", - ["esMX"] = "MP5 (Beneficios)", - ["ptBR"] = "MP5 (Bônus)" + ["deDE"] = "", + ["frFR"] = "", + ["zhCN"] = "", + ["ruRU"] = "", + ["esES"] = "", + ["esMX"] = "", + ["ptBR"] = "", }, ["MP5 (Casting)"] = { ["enUS"] = true, From 9a487d5f14ac177609215a1c4a6991c6abbd4693 Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Sat, 13 Jun 2026 02:23:29 +0200 Subject: [PATCH 28/30] fix --- Modules/Migration.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modules/Migration.lua b/Modules/Migration.lua index 6c1fc4ef..4e5928a8 100644 --- a/Modules/Migration.lua +++ b/Modules/Migration.lua @@ -28,6 +28,6 @@ function Migration:ToLatestProfileVersion(profileVersion) ExtendedCharacterStats.profile.regen.mp5Buffs = nil ExtendedCharacterStats.profile.regen.mp5Items = nil ExtendedCharacterStats.profile.regen.mp5Periodic = defaultProfile.profile.regen.mp5Periodic - ExtendedCharacterStats.profile.regen.mp5CastingModifier = defaultProfile.profile.mp5CastingModifier + ExtendedCharacterStats.profile.regen.mp5CastingModifier = defaultProfile.profile.regen.mp5CastingModifier end end From 39693fd83645d07c78a1d9a9685d8ec706c90c3e Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Sun, 14 Jun 2026 00:52:09 +0200 Subject: [PATCH 29/30] Change translation values to false for multiple languages --- .../ManaConfigTranslations.lua | 54 +++++++++---------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/Modules/i18n/translations/ConfigTranslations/ManaConfigTranslations.lua b/Modules/i18n/translations/ConfigTranslations/ManaConfigTranslations.lua index 423c2771..508b4591 100644 --- a/Modules/i18n/translations/ConfigTranslations/ManaConfigTranslations.lua +++ b/Modules/i18n/translations/ConfigTranslations/ManaConfigTranslations.lua @@ -24,43 +24,43 @@ local manaConfigTranslations = { }, ["MP5 Periodic"] = { ["enUS"] = true, - ["deDE"] = "", - ["frFR"] = "", - ["zhCN"] = "", - ["ruRU"] = "", - ["esES"] = "", - ["esMX"] = "", - ["ptBR"] = "", + ["deDE"] = false, + ["frFR"] = false, + ["zhCN"] = false, + ["ruRU"] = false, + ["esES"] = false, + ["esMX"] = false, + ["ptBR"] = false, }, ["Shows/Hides the periodic MP5 value."] = { ["enUS"] = true, - ["deDE"] = "", - ["frFR"] = "", - ["zhCN"] = "", - ["ruRU"] = "", - ["esES"] = "", - ["esMX"] = "", - ["ptBR"] = "", + ["deDE"] = false, + ["frFR"] = false, + ["zhCN"] = false, + ["ruRU"] = false, + ["esES"] = false, + ["esMX"] = false, + ["ptBR"] = false, }, ["MP5 Casting Modifier"] = { ["enUS"] = true, - ["deDE"] = "", - ["frFR"] = "", - ["zhCN"] = "", - ["ruRU"] = "", - ["esES"] = "", - ["esMX"] = "", + ["deDE"] = false, + ["frFR"] = false, + ["zhCN"] = false, + ["ruRU"] = false, + ["esES"] = false, + ["esMX"] = false, ["ptBR"] = "" }, ["Shows/Hides the MP5 casting modifier."] = { ["enUS"] = true, - ["deDE"] = "", - ["frFR"] = "", - ["zhCN"] = "", - ["ruRU"] = "", - ["esES"] = "", - ["esMX"] = "", - ["ptBR"] = "", + ["deDE"] = false, + ["frFR"] = false, + ["zhCN"] = false, + ["ruRU"] = false, + ["esES"] = false, + ["esMX"] = false, + ["ptBR"] = false, }, ["MP5 Spirit"] = { ["enUS"] = true, From a618b0caf86ac51c516ae0368c634507bf9c7989 Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Sun, 14 Jun 2026 00:52:59 +0200 Subject: [PATCH 30/30] Change translation values to boolean false --- .../i18n/translations/StatTranslations.lua | 28 +++++++++---------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/Modules/i18n/translations/StatTranslations.lua b/Modules/i18n/translations/StatTranslations.lua index 5829fa4d..c6cf1e05 100644 --- a/Modules/i18n/translations/StatTranslations.lua +++ b/Modules/i18n/translations/StatTranslations.lua @@ -384,13 +384,13 @@ local statTranslations = { }, ["MP5 Casting Modifier"] = { ["enUS"] = true, - ["deDE"] = "", - ["frFR"] = "", - ["zhCN"] = "", - ["ruRU"] = "", - ["esES"] = "", - ["esMX"] = "", - ["ptBR"] = "", + ["deDE"] = false, + ["frFR"] = false, + ["zhCN"] = false, + ["ruRU"] = false, + ["esES"] = false, + ["esMX"] = false, + ["ptBR"] = false, }, ["MP5 (Spirit)"] = { ["enUS"] = true, @@ -404,13 +404,13 @@ local statTranslations = { }, ["MP5 (Periodic)"] = { ["enUS"] = true, - ["deDE"] = "", - ["frFR"] = "", - ["zhCN"] = "", - ["ruRU"] = "", - ["esES"] = "", - ["esMX"] = "", - ["ptBR"] = "", + ["deDE"] = false, + ["frFR"] = false, + ["zhCN"] = false, + ["ruRU"] = false, + ["esES"] = false, + ["esMX"] = false, + ["ptBR"] = false, }, ["MP5 (Casting)"] = { ["enUS"] = true,