diff --git a/CHANGELOG.md b/CHANGELOG.md index 63062aa1de..437e63a1c9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,15 @@ # Changelog +## [v2.47.2](https://github.com/PathOfBuildingCommunity/PathOfBuilding/tree/v2.47.2) (2024/07/29) + +[Full Changelog](https://github.com/PathOfBuildingCommunity/PathOfBuilding/compare/v2.47.1...v2.47.2) + + + +## What's Changed +### Fixed Calculations +- Fix Block Chance calculation ([LocalIdentity](https://github.com/LocalIdentity)) + ## [v2.47.1](https://github.com/PathOfBuildingCommunity/PathOfBuilding/tree/v2.47.1) (2024/07/29) [Full Changelog](https://github.com/PathOfBuildingCommunity/PathOfBuilding/compare/v2.47.0...v2.47.1) diff --git a/changelog.txt b/changelog.txt index c51888b1e7..77d535b71d 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,3 +1,8 @@ +VERSION[2.47.2][2024/07/29] + +--- Fixed Calculations --- +* Fix Block Chance calculation (LocalIdentity) + VERSION[2.47.1][2024/07/29] --- Fixed Calculations --- diff --git a/manifest.xml b/manifest.xml index 7dd5aff10a..56844a2997 100644 --- a/manifest.xml +++ b/manifest.xml @@ -1,11 +1,11 @@ - + - + @@ -77,7 +77,7 @@ - + diff --git a/src/Classes/Item.lua b/src/Classes/Item.lua index c13ff579ba..7897b9cca0 100644 --- a/src/Classes/Item.lua +++ b/src/Classes/Item.lua @@ -1385,7 +1385,6 @@ function ItemClass:BuildModListForSlotNum(baseList, slotNum) local energyShieldVariance = (self.base.armour.EnergyShieldBaseMax or 0) - (self.base.armour.EnergyShieldBaseMin or 0) local armourEnergyShieldBase = calcLocal(modList, "ArmourAndEnergyShield", "BASE", 0) local wardBase = calcLocal(modList, "Ward", "BASE", 0) + (self.base.armour.WardBaseMin or 0) - local blockBase = calcLocal(modList, "BlockChance", "BASE", 0) local wardVariance = (self.base.armour.WardBaseMax or 0) - (self.base.armour.WardBaseMin or 0) local armourInc = calcLocal(modList, "Armour", "INC", 0) local armourEvasionInc = calcLocal(modList, "ArmourAndEvasion", "INC", 0) @@ -1394,7 +1393,6 @@ function ItemClass:BuildModListForSlotNum(baseList, slotNum) local energyShieldInc = calcLocal(modList, "EnergyShield", "INC", 0) local wardInc = calcLocal(modList, "Ward", "INC", 0) local armourEnergyShieldInc = calcLocal(modList, "ArmourAndEnergyShield", "INC", 0) - local blockInc = calcLocal(modList, "BlockChance", "INC", 0) local defencesInc = calcLocal(modList, "Defences", "INC", 0) local qualityScalar = self.quality if calcLocal(modList, "AlternateQualityArmour", "BASE", 0) > 0 then @@ -1437,7 +1435,7 @@ function ItemClass:BuildModListForSlotNum(baseList, slotNum) end if self.base.armour.BlockChance then - armourData.BlockChance = m_floor((self.base.armour.BlockChance + blockBase) * (1 + blockInc / 100)) + armourData.BlockChance = m_floor((self.base.armour.BlockChance + calcLocal(modList, "BlockChance", "BASE", 0)) * (1 + calcLocal(modList, "BlockChance", "INC", 0) / 100)) end if self.base.armour.MovementPenalty then modList:NewMod("MovementSpeed", "INC", -self.base.armour.MovementPenalty, self.modSource, { type = "Condition", var = "IgnoreMovementPenalties", neg = true })