Skip to content

Commit 8fa98f5

Browse files
author
LocalIdentity
committed
Merge branch 'dev'
2 parents 900c0c0 + 60ac32e commit 8fa98f5

28 files changed

+230
-131
lines changed

CHANGELOG.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,40 @@
11
# Changelog
22

3+
## [v2.55.4](https://github.com/PathOfBuildingCommunity/PathOfBuilding/tree/v2.55.4) (2025/07/14)
4+
5+
[Full Changelog](https://github.com/PathOfBuildingCommunity/PathOfBuilding/compare/v2.55.3...v2.55.4)
6+
7+
## What's Changed
8+
### New to Path of Building
9+
- Add support for Corrupted Blood flask mods [\#8798](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8798) ([Blitz54](https://github.com/Blitz54))
10+
- Add support for Righteous Fire of Arcane Devotion more Cast Speed mod [\#8830](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8830) ([oskar94](https://github.com/oskar94))
11+
### Fixed Crashes
12+
- Fix Crash when copying and pasting item into PoB sometimes [\#8789](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8789) ([Nightblade](https://github.com/Nightblade))
13+
### User Interface
14+
- Fix Attribute Requirement sorting [\#8814](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8814) ([Blitz54](https://github.com/Blitz54))
15+
- Remove Channelling time config box for Focused Channelling - Existing users should update their config [\#8823](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8823) ([Wires77](https://github.com/Wires77))
16+
- Fix gems being added to skill groups when sorting dropdown [\#8802](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8802) ([Paliak](https://github.com/Paliak))
17+
### Fixed Calculations
18+
- Fix Runegraft of the Bound scaling Facebreaker's incorrectly [\#8820](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8820) ([LocalIdentity](https://github.com/LocalIdentity), [Wires77](https://github.com/Wires77))
19+
- Fix Minion Scaling mods on Spinehail scaling with Widowhail [\#8779](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8779) ([LocalIdentity](https://github.com/LocalIdentity))
20+
- Fix Full DPS depending on order of skill groups [\#8800](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8800) ([Paliak](https://github.com/Paliak))
21+
- Fix Spark maximum hits being calculated incorrectly [\#8833](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8833) ([jeremykvlim](https://github.com/jeremykvlim))
22+
- Fix Minion DoT DPS not including +50% DoT multiplier from Crits [\#8826](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8826) ([Wires77](https://github.com/Wires77))
23+
- Fix Aura effect scaling when using Hand of Phrecia and "effect of auras on you" mods [\#8815](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8815) ([Wires77](https://github.com/Wires77))
24+
- Fix inc effect on Cluster Jewel causing rounding issues [\#8821](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8821) ([Wires77](https://github.com/Wires77))
25+
### Fixed Behaviours
26+
- Fix Autoexertion not working correctly with Arrogance [\#8804](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8804) ([Paliak](https://github.com/Paliak))
27+
- Fix Summon Spider / Spectral Wolf count config not scaling with Dark Monarch [\#8819](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8819) ([LocalIdentity](https://github.com/LocalIdentity))
28+
- Fix Brand attachment duration not being scaled by Temporal Chains [\#8796](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8796) ([LocalIdentity](https://github.com/LocalIdentity))
29+
- Fix Reduced Effect of Curses on Self scaling beyond 100% reduced effect [\#8783](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8783) ([Blitz54](https://github.com/Blitz54))
30+
- Fix Maven Memory Game skill breaking Vile Bastion from working [\#8781](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8781) ([Blitz54](https://github.com/Blitz54))
31+
- Fix Nametaker not instant leeching Mana and Energy Shield [\#8812](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8812) ([Blitz54](https://github.com/Blitz54))
32+
- Fix Item sort option for "Current Usable" not taking into account local attribute requirement mods [\#8803](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8803) ([LocalIdentity](https://github.com/LocalIdentity))
33+
- Fix Plague Bearer default config not applying [\#8810](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8810) ([Blitz54](https://github.com/Blitz54))
34+
### Accuracy Improvements
35+
- Fix Bound by Destiny Phys prevented as ES Regen mod value [\#8795](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8795) ([LocalIdentity](https://github.com/LocalIdentity))
36+
37+
338
## [v2.55.3](https://github.com/PathOfBuildingCommunity/PathOfBuilding/tree/v2.55.3) (2025/07/02)
439

540
[Full Changelog](https://github.com/PathOfBuildingCommunity/PathOfBuilding/compare/v2.55.2...v2.55.3)

changelog.txt

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,39 @@
1+
VERSION[2.55.4][2025/07/14]
2+
3+
--- New to Path of Building ---
4+
* Add support for Corrupted Blood flask mods (Blitz54)
5+
* Add support for Righteous Fire of Arcane Devotion more Cast Speed mod (oskar94)
6+
7+
--- Fixed Crashes ---
8+
* Fix Crash when copying and pasting item into PoB sometimes (Nightblade)
9+
10+
--- User Interface ---
11+
* Fix Attribute Requirement sorting (Blitz54)
12+
* Remove Channelling time config box for Focused Channelling - Existing users should update their config (Wires77)
13+
* Fix gems being added to skill groups when sorting dropdown (Paliak)
14+
15+
--- Fixed Calculations ---
16+
* Fix Runegraft of the Bound scaling Facebreaker's incorrectly (LocalIdentity, Wires77)
17+
* Fix Minion Scaling mods on Spinehail scaling with Widowhail (LocalIdentity)
18+
* Fix Full DPS depending on order of skill groups (Paliak)
19+
* Fix Spark maximum hits being calculated incorrectly (jeremykvlim)
20+
* Fix Minion DoT DPS not including +50% DoT multiplier from Crits (Wires77)
21+
* Fix Aura effect scaling when using Hand of Phrecia and "effect of auras on you" mods (Wires77)
22+
* Fix inc effect on Cluster Jewel causing rounding issues (Wires77)
23+
24+
--- Fixed Behaviours ---
25+
* Fix Autoexertion not working correctly with Arrogance (Paliak)
26+
* Fix Summon Spider / Spectral Wolf count config not scaling with Dark Monarch (LocalIdentity)
27+
* Fix Brand attachment duration not being scaled by Temporal Chains (LocalIdentity)
28+
* Fix Reduced Effect of Curses on Self scaling beyond 100% reduced effect (Blitz54)
29+
* Fix Maven Memory Game skill breaking Vile Bastion from working (Blitz54)
30+
* Fix Nametaker not instant leeching Mana and Energy Shield (Blitz54)
31+
* Fix Item sort option for "Current Usable" not taking into account local attribute requirement mods (LocalIdentity)
32+
* Fix Plague Bearer default config not applying (Blitz54)
33+
34+
--- Accuracy Improvements ---
35+
* Fix Bound by Destiny Phys prevented as ES Regen mod value (LocalIdentity)
36+
137
VERSION[2.55.3][2025/07/02]
238

339
--- Fixed Calculations ---

manifest.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version='1.0' encoding='UTF-8'?>
22
<PoBVersion>
3-
<Version number="2.55.3" />
3+
<Version number="2.55.4" />
44
<Source part="default" url="https://raw.githubusercontent.com/PathOfBuildingCommunity/PathOfBuilding/{branch}/" />
55
<Source part="runtime" platform="win32" url="https://raw.githubusercontent.com/PathOfBuildingCommunity/PathOfBuilding/{branch}/runtime/" />
66
<Source part="program" url="https://raw.githubusercontent.com/PathOfBuildingCommunity/PathOfBuilding/{branch}/src/" />

src/Classes/GemSelectControl.lua

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ end)
6060

6161
function GemSelectClass:CalcOutputWithThisGem(calcFunc, gemData, qualityId, useFullDPS)
6262
local gemList = self.skillsTab.displayGroup.gemList
63+
local displayGemList = self.skillsTab.displayGroup.displayGemList
6364
local oldGem
6465
if gemList[self.index] then
6566
oldGem = copyTable(gemList[self.index], true)
@@ -98,7 +99,9 @@ function GemSelectClass:CalcOutputWithThisGem(calcFunc, gemData, qualityId, useF
9899
else
99100
gemList[self.index] = nil
100101
end
101-
102+
103+
self.skillsTab.displayGroup.displayGemList = displayGemList
104+
102105
return output, gemInstance
103106
end
104107

src/Classes/ItemDBControl.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ function ItemDBClass:DoesItemMatchFilters(item)
128128
if (self.controls.requirement.selIndex == 2 or self.controls.requirement.selIndex == 4) and item.requirements.level and item.requirements.level > self.itemsTab.build.characterLevel then
129129
return false
130130
end
131-
if self.controls.requirement.selIndex > 2 and item.requirements and (item.requirements.str > self.itemsTab.build.calcsTab.mainOutput.Str or item.requirements.dex > self.itemsTab.build.calcsTab.mainOutput.Dex or item.requirements.int > self.itemsTab.build.calcsTab.mainOutput.Int) then
131+
if self.controls.requirement.selIndex > 2 and item.requirements and (item.requirements.strMod > self.itemsTab.build.calcsTab.mainOutput.Str or item.requirements.dexMod > self.itemsTab.build.calcsTab.mainOutput.Dex or item.requirements.intMod > self.itemsTab.build.calcsTab.mainOutput.Int) then
132132
return false
133133
end
134134
end

src/Classes/ItemsTab.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2569,7 +2569,7 @@ function ItemsTabClass:AddCustomModifierToDisplayItem()
25692569
local excludeGroups = { }
25702570
for _, modLine in ipairs({ self.displayItem.prefixes, self.displayItem.suffixes }) do
25712571
for i = 1, (modLine.limit or (self.displayItem.affixLimit / 2)) do
2572-
if modLine[i].modId ~= "None" then
2572+
if modLine[i] and modLine[i].modId ~= "None" then
25732573
excludeGroups[self.displayItem.affixes[modLine[i].modId].group] = true
25742574
end
25752575
end

src/Classes/ModDB.lua

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,9 @@ function ModDBClass:ReplaceModInternal(mod)
4545
local modIndex = -1
4646
for i = 1, #modList do
4747
local curMod = modList[i]
48-
if mod.name == curMod.name and mod.type == curMod.type and mod.flags == curMod.flags and mod.keywordFlags == curMod.keywordFlags and mod.source == curMod.source then
48+
if mod.name == curMod.name and mod.type == curMod.type and mod.flags == curMod.flags and mod.keywordFlags == curMod.keywordFlags and mod.source == curMod.source and not curMod.replaced then
4949
modIndex = i
50+
mod.replaced = true
5051
break;
5152
end
5253
end

src/Classes/ModStore.lua

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ local ModStoreClass = newClass("ModStore", function(self, parent)
3434
self.conditions = { }
3535
end)
3636

37-
function ModStoreClass:ScaleAddMod(mod, scale)
37+
function ModStoreClass:ScaleAddMod(mod, scale, replace)
3838
local unscalable = false
3939
for _, effects in ipairs(mod) do
4040
if effects.unscalable then
@@ -63,7 +63,11 @@ function ModStoreClass:ScaleAddMod(mod, scale)
6363
subMod.value = m_modf(round(subMod.value * scale, 2))
6464
end
6565
end
66-
self:AddMod(scaledMod)
66+
if replace then
67+
self:ReplaceModInternal(scaledMod)
68+
else
69+
self:AddMod(scaledMod)
70+
end
6771
end
6872
end
6973

@@ -73,12 +77,12 @@ function ModStoreClass:CopyList(modList)
7377
end
7478
end
7579

76-
function ModStoreClass:ScaleAddList(modList, scale)
80+
function ModStoreClass:ScaleAddList(modList, scale, replace)
7781
if scale == 1 then
7882
self:AddList(modList)
7983
else
8084
for i = 1, #modList do
81-
self:ScaleAddMod(modList[i], scale)
85+
self:ScaleAddMod(modList[i], scale, replace)
8286
end
8387
end
8488
end
@@ -297,8 +301,8 @@ function ModStoreClass:EvalMod(mod, cfg, globalLimits)
297301
local mult = m_floor(base / (tag.div or 1) + 0.0001)
298302
local limitTotal
299303
local limitNegTotal
300-
if tag.limit or tag.limitVar then
301-
local limit = tag.limit or limitTarget:GetMultiplier(tag.limitVar, cfg)
304+
if tag.limit or tag.limitVar or tag.limitStat then
305+
local limit = tag.limit or tag.limitVar and limitTarget:GetMultiplier(tag.limitVar, cfg) or tag.limitStat and limitTarget:GetStat(tag.limitStat, cfg)
302306
if tag.limitTotal then
303307
limitTotal = limit
304308
elseif tag.limitNegTotal then

0 commit comments

Comments
 (0)