Skip to content

Commit db202f0

Browse files
author
LocalIdentity
committed
Merge branch 'dev'
2 parents 5bb3246 + f253fac commit db202f0

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

70 files changed

+8978
-8184
lines changed

CHANGELOG.md

Lines changed: 63 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,67 @@
11
# Changelog
22

3+
## [v2.48.0](https://github.com/PathOfBuildingCommunity/PathOfBuilding/tree/v2.48.0) (2024/08/15)
4+
5+
[Full Changelog](https://github.com/PathOfBuildingCommunity/PathOfBuilding/compare/v2.47.3...v2.48.0)
6+
7+
<!-- Release notes generated using configuration in .github/release.yml at dev -->
8+
9+
## What's Changed
10+
### New to Path of Building
11+
- Hide legacy Tattoos from dropdown by default [\#8122](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8122) ([LocalIdentity](https://github.com/LocalIdentity), [Peechey](https://github.com/Peechey))
12+
- Add ability to search in the spectre library [\#8059](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8059) ([nofate121](https://github.com/nofate121))
13+
- Add Support for Enemy damaging ailments [\#6814](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/6814) ([Regisle](https://github.com/Regisle))
14+
- View Gem level sources in calc sections [\#8092](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8092) ([justjuangui](https://github.com/justjuangui))
15+
- Enable Tincture Effects to also apply to Ranged Weapons [\#8134](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8134) ([Regisle](https://github.com/Regisle))
16+
- Add support for Tincture mods [\#8078](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8078) ([LocalIdentity](https://github.com/LocalIdentity))
17+
- Add support for pseudo recoup like Divine Shield and Juggernaut [\#6833](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/6833) ([Regisle](https://github.com/Regisle))
18+
- Add support for some warcry power modifiers [\#8130](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8130) ([Regisle](https://github.com/Regisle))
19+
- Add Warcry effect mod to calcs tab with breakdown [\#8126](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8126) ([Regisle](https://github.com/Regisle))
20+
- Add support for export and importing warcry buffs to the Party Tab [\#8116](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8116) ([Regisle](https://github.com/Regisle))
21+
- Add The Living Blade [\#8065](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8065) ([Nostrademous](https://github.com/Nostrademous))
22+
### Fixed Crashes
23+
- Fix crash when using Power Charge on Crit from Elder staves [\#8048](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8048) ([Wires77](https://github.com/Wires77))
24+
- Fix crash when allocating Blood Magic with Manabond [\#8177](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8177) ([LocalIdentity](https://github.com/LocalIdentity))
25+
### User Interface
26+
- Color mastery differences blue when comparing trees [\#8044](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8044) ([nofate121](https://github.com/nofate121))
27+
- Improve Rage Calcs tab breakdown [\#8145](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8145) ([Regisle](https://github.com/Regisle))
28+
- Fix Calcs tab scroll bar [\#8118](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8118) ([Regisle](https://github.com/Regisle))
29+
- Fix full dps visual bug on gem dropdown [\#8087](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8087) ([Paliak](https://github.com/Paliak))
30+
### Fixed Calculations
31+
- Fix Charge duration not using More/Less modifiers [\#8049](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8049) ([Wires77](https://github.com/Wires77))
32+
- Fix Ynda's Stand Ward conversion mod not taking catalysts into consideration [\#8062](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8062) ([krfreak](https://github.com/krfreak))
33+
- Fix accuracy of scaled Warcry buffs [\#8129](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8109), [\#8129](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8129) ([Regisle](https://github.com/Regisle))
34+
- Fix Ward rounding final value incorrectly [\#8083](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8083) ([LocalIdentity](https://github.com/LocalIdentity))
35+
- Fix Hateforge Rage cost calculation [\#8176](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8176) ([LocalIdentity](https://github.com/LocalIdentity))
36+
- Minor improvements to Tinctures and Mana Burn [\#8135](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8135) ([Regisle](https://github.com/Regisle))
37+
### Fixed Behaviours
38+
- Fix issue where PoB did not detect changes when selecting gems via keyboard shortcuts [\#8072](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8072) ([nofate121](https://github.com/nofate121))
39+
- Fix The Light of Meaning adding stats to allocated sockets [\#8108](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8108) ([Paliak](https://github.com/Paliak))
40+
- Fix Rage Effect incorrectly scaling some mods [\#8113](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8113) ([LocalIdentity](https://github.com/LocalIdentity))
41+
- Fix Rage Support not enabling Rage damage bonus [\#8178](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8178) ([LocalIdentity](https://github.com/LocalIdentity))
42+
- Fix Arcane Surge effect per Summoned Totem mod not working [\#8102](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8102) ([LocalIdentity](https://github.com/LocalIdentity))
43+
- Fix Ynda's Stand not working correctly with Trickster's Escape Artist [\#8084](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8084) ([LocalIdentity](https://github.com/LocalIdentity))
44+
- Fix Divine Blessing not removing reservation from skill [\#8082](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8082) ([LocalIdentity](https://github.com/LocalIdentity))
45+
- Fix Overexertion not applying to skills linked with Generals Cry [\#8040](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8040) ([LocalIdentity](https://github.com/LocalIdentity))
46+
- Fix rare case with gain on suppression with no chance to mitigate damage (eg 100% suppress chance) [\#8121](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8121) ([Regisle](https://github.com/Regisle))
47+
- Fix Warcry options are not shown in all configurations [\#8173](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8173) ([n1tr0xs](https://github.com/n1tr0xs))
48+
- Fix Tattoos being removed from list when using Remove All Tattoos button [\#8171](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8171) ([Peechey](https://github.com/Peechey))
49+
- Fix Minions with Endurance Charges still gaining resists [\#8166](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8166) ([n1tr0xs](https://github.com/n1tr0xs))
50+
- Fix EHP and Maximum Hit taken with negative Unreserved Life [\#8120](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8120) ([Regisle](https://github.com/Regisle))
51+
- Fix Exerted multipliers applying twice when Dual Wielding [\#8174](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8174) ([LocalIdentity](https://github.com/LocalIdentity))
52+
- Fix Sand Stance "less damage taken" incorrectly applying to DoT degen [\#8175](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8175) ([LocalIdentity](https://github.com/LocalIdentity))
53+
### Accuracy Improvements
54+
- Update Sap of the Seasons to add new cap [\#8112](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8112) ([Regisle](https://github.com/Regisle))
55+
- Add variant for post 3.21 Combat Focus [\#8111](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8111) ([Paliak](https://github.com/Paliak))
56+
- Fix parsing missing for new wording on Emberwake [\#8110](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8110) ([Paliak](https://github.com/Paliak))
57+
- Fix Maata's Teaching using wrong crit chance range [\#8081](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8081) ([LocalIdentity](https://github.com/LocalIdentity))
58+
- Fix incorrect names for Timeless Jewel nodes [\#8080](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8080) ([LocalIdentity](https://github.com/LocalIdentity))
59+
- Fix Kaom's Primacy Rage mod not working [\#8101](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8101) ([LocalIdentity](https://github.com/LocalIdentity))
60+
- Fix broken base types on some items [\#8141](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8141) ([Regisle](https://github.com/Regisle))
61+
### Fixed Bugs
62+
- Fix infinitely nested XML stored as importLink [\#8066](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8066) ([Wires77](https://github.com/Wires77))
63+
64+
365
## [v2.47.3](https://github.com/PathOfBuildingCommunity/PathOfBuilding/tree/v2.47.3) (2024/07/30)
466

567
[Full Changelog](https://github.com/PathOfBuildingCommunity/PathOfBuilding/compare/v2.47.2...v2.47.3)
@@ -9,7 +71,7 @@
971
## What's Changed
1072
### Fixed Crashes
1173
- Fix crash when importing builds to Party tab [\#8022](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8022) ([Regisle](https://github.com/Regisle))
12-
- Fix crash when using Svalin unique shield [\#8023](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8023) ([Paliak](https://github.com/Paliak))
74+
- Fix crash when using Svalinn unique shield [\#8023](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8023) ([Paliak](https://github.com/Paliak))
1375
### Fixed Calculations
1476
- Fix Inspiration granting more Mana cost instead of Less [\#8015](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8015) ([LocalIdentity](https://github.com/LocalIdentity))
1577
- Fix Warcry trigger rate calculations [\#8025](https://github.com/PathOfBuildingCommunity/PathOfBuilding/pull/8025) ([Paliak](https://github.com/Paliak))

RELEASE.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,37 @@ Steps:
5656
7. Restart Path of Building Community. This should result in a new file `tree.lua`.
5757
8. Remove `data.json` and `sprites.json` from the new directory. Do not commit these files.
5858

59+
## Timeless Jewel updates
60+
61+
The Timeless jewels determine what effect they have on a node based on the "Look up Tables" in \src\Data\TimelessJewelData
62+
The LuTs for the Timeless jewels come from https://github.com/Regisle/TimelessJewelData
63+
More information can be found there.
64+
65+
The LuTs PoB uses are slightly different due to historical reasons, and so they can be generated using the generator from there.
66+
67+
68+
-------------------------------------------------------------------------------------------------------
69+
Steps to Generate Timeless Jewel LuTs for PoB:
70+
1. Clone repo from https://github.com/Regisle/TimelessJewelData/tree/Generator
71+
2. Open DatafileGenerator.sln in Visual Studio
72+
3. Grab new data.json tree file
73+
4. Grab new AlternatePassiveAdditions.json and AlternatePassiveSkills.json from https://snosme.github.io/poe-dat-viewer/ and clicking on 'Export data' in the top right
74+
5. Run following commands in the Visual Studio command prompt order, adjusting for file location
75+
dotnet run --project DataFileGenerator
76+
E:\PoB Dev Work\TimelessJewelData\AlternatePassiveAdditions.json
77+
E:\PoB Dev Work\TimelessJewelData\AlternatePassiveSkills.json
78+
E:\PoB Dev Work\GGG Skill Tree\data.json
79+
E:\PoB Dev Work\PathOfBuildingCommunity\src\Data\TimelessJewelData
80+
6. Choose Compressed
81+
7. Replace updated Files in \src\Data\TimelessJewelData
82+
83+
Alt tab out and back in to make right click paste work
84+
-------------------------------------------------------------------------------------------------------
85+
86+
If updated this way making a PR to https://github.com/Regisle/TimelessJewelData with the files in the format it uses is appreciated.
87+
To do this follow steps 1-5 the same and choose the other option for step 6.
88+
89+
5990
## Installer creation
6091

6192
Path of Building Community offers both installable and standalone releases. They're

changelog.txt

Lines changed: 63 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,70 @@
1+
VERSION[2.48.0][2024/08/15]
2+
3+
--- New to Path of Building ---
4+
* Hide legacy Tattoos from dropdown by default (LocalIdentity, Peechey)
5+
* Add ability to search in the spectre library (nofate121)
6+
* Add Support for Enemy damaging ailments (Regisle)
7+
* View Gem level sources in calc sections (justjuangui)
8+
* Enable Tincture Effects to also apply to Ranged Weapons (Regisle)
9+
* Add support for Tincture mods (LocalIdentity)
10+
* Add support for pseudo recoup like Divine Shield and Juggernaut (Regisle)
11+
* Add support for some warcry power modifiers (Regisle)
12+
* Add Warcry effect mod to calcs tab with breakdown (Regisle)
13+
* Add support for export and importing warcry buffs to the Party Tab (Regisle)
14+
* Add The Living Blade (Nostrademous)
15+
16+
--- Fixed Crashes ---
17+
* Fix crash when using Power Charge on Crit from Elder staves (Wires77)
18+
* Fix crash when allocating Blood Magic with Manabond (LocalIdentity)
19+
20+
--- User Interface ---
21+
* Color mastery differences blue when comparing trees (nofate121)
22+
* Improve Rage Calcs tab breakdown (Regisle)
23+
* Fix Calcs tab scroll bar (Regisle)
24+
* Fix full dps visual bug on gem dropdown (Paliak)
25+
26+
--- Fixed Calculations ---
27+
* Fix Charge duration not using More/Less modifiers (Wires77)
28+
* Fix Ynda's Stand Ward conversion mod not taking catalysts into consideration (krfreak)
29+
* Fix accuracy of scaled Warcry buffs (Regisle)
30+
* Fix Ward rounding final value incorrectly (LocalIdentity)
31+
* Fix Hateforge Rage cost calculation (LocalIdentity)
32+
* Minor improvements to Tinctures and Mana Burn (Regisle)
33+
34+
--- Fixed Behaviours ---
35+
* Fix issue where PoB did not detect changes when selecting gems via keyboard shortcuts (nofate121)
36+
* Fix The Light of Meaning adding stats to allocated sockets (Paliak)
37+
* Fix Rage Effect incorrectly scaling some mods (LocalIdentity)
38+
* Fix Rage Support not enabling Rage damage bonus (LocalIdentity)
39+
* Fix Arcane Surge effect per Summoned Totem mod not working (LocalIdentity)
40+
* Fix Ynda's Stand not working correctly with Trickster's Escape Artist (LocalIdentity)
41+
* Fix Divine Blessing not removing reservation from skill (LocalIdentity)
42+
* Fix Overexertion not applying to skills linked with Generals Cry (LocalIdentity)
43+
* Fix rare case with gain on suppression with no chance to mitigate damage (eg 100% suppress chance) (Regisle)
44+
* Fix Warcry options are not shown in all configurations (n1tr0xs)
45+
* Fix Tattoos being removed from list when using Remove All Tattoos button (Peechey)
46+
* Fix Minions with Endurance Charges still gaining resists (n1tr0xs)
47+
* Fix EHP and Maximum Hit taken with negative Unreserved Life (Regisle)
48+
* Fix Exerted multipliers applying twice when Dual Wielding (LocalIdentity)
49+
* Fix Sand Stance "less damage taken" incorrectly applying to DoT degen (LocalIdentity)
50+
51+
--- Accuracy Improvements ---
52+
* Update Sap of the Seasons to add new cap (Regisle)
53+
* Add variant for post 3.21 Combat Focus (Paliak)
54+
* Fix parsing missing for new wording on Emberwake (Paliak)
55+
* Fix Maata's Teaching using wrong crit chance range (LocalIdentity)
56+
* Fix incorrect names for Timeless Jewel nodes (LocalIdentity)
57+
* Fix Kaom's Primacy Rage mod not working (LocalIdentity)
58+
* Fix broken base types on some items (Regisle)
59+
60+
--- Fixed Bugs ---
61+
* Fix infinitely nested XML stored as importLink (Wires77)
62+
163
VERSION[2.47.3][2024/07/30]
264

365
--- Fixed Crashes ---
466
* Fix crash when importing builds to Party tab (Regisle)
5-
* Fix crash when using Svalin unique shield (Paliak)
67+
* Fix crash when using Svalinn unique shield (Paliak)
668

769
--- Fixed Calculations ---
870
* Fix Inspiration granting more Mana cost instead of Less (LocalIdentity)

help.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,12 @@ Adding ^ and then a number or hex code before text will change the colour of the
8181

8282
---[Timeless Jewels]
8383

84+
DEV[Developer Information:]
85+
DEV[The Timeless jewels determine what effect they have on a node based on the "Look up Tables" in \src\Data\TimelessJewelData]
86+
DEV[The LuTs for the timeless jewels come from https://github.com/Regisle/TimelessJewelData]
87+
DEV[ ]
88+
DEV[These can be generated if that repo is out of date (see RELEASE.md)]
89+
DEV[ ]
8490
Timeless jewels modify nodes in a radius based on their seed, the same seed will apply the same changes to the same small/notable nodes so that is the number you look for. The Conqueror (name on the jewel) only affects the keystone.
8591

8692
Path of Building has an inbuilt tool in the tree tab to search through seeds to find stats that would be good for your build.

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.47.3" />
3+
<Version number="2.48.0" />
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/" />

spec/GenerateBuilds.lua

Lines changed: 44 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1,53 +1,53 @@
11
local function fetchBuilds(path, buildList)
2-
buildList = buildList or {}
3-
for file in lfs.dir(path) do
4-
if file ~= "." and file ~= ".." then
5-
local f = path..'/'..file
6-
local attr = lfs.attributes (f)
7-
assert(type(attr) == "table")
8-
if attr.mode == "directory" then
9-
fetchBuilds(f, buildList)
10-
else
11-
if file:match("^.+(%..+)$") == ".xml" then
12-
local fileHnd, errMsg = io.open(f, "r")
13-
if not fileHnd then
14-
return nil, errMsg
15-
end
16-
local fileText = fileHnd:read("*a")
17-
fileHnd:close()
18-
buildList[f] = fileText
19-
end
20-
end
21-
end
22-
end
23-
return buildList
2+
buildList = buildList or {}
3+
for file in lfs.dir(path) do
4+
if file ~= "." and file ~= ".." then
5+
local f = path..'/'..file
6+
local attr = lfs.attributes (f)
7+
assert(type(attr) == "table")
8+
if attr.mode == "directory" then
9+
fetchBuilds(f, buildList)
10+
else
11+
if file:match("^.+(%..+)$") == ".xml" then
12+
local fileHnd, errMsg = io.open(f, "r")
13+
if not fileHnd then
14+
return nil, errMsg
15+
end
16+
local fileText = fileHnd:read("*a")
17+
fileHnd:close()
18+
buildList[f] = fileText
19+
end
20+
end
21+
end
22+
end
23+
return buildList
2424
end
2525

2626
function buildTable(tableName, values, string)
27-
string = string or ""
28-
string = string .. tableName .. " = {"
29-
for key, value in pairs(values) do
30-
if type(value) == "table" then
31-
buildTable(key, value, string)
32-
elseif type(value) == "boolean" then
33-
string = string .. "[\"" .. key .. "\"] = " .. (value and "true" or "false") .. ",\n"
34-
elseif type(value) == "string" then
35-
string = string .. "[\"" .. key .. "\"] = \"" .. value .. "\",\n"
36-
else
37-
string = string .. "[\"" .. key .. "\"] = " .. round(value, 4) .. ",\n"
38-
end
39-
end
40-
string = string .. "}\n"
41-
return string
27+
string = string or ""
28+
string = string .. tableName .. " = {"
29+
for key, value in pairs(values) do
30+
if type(value) == "table" then
31+
buildTable(key, value, string)
32+
elseif type(value) == "boolean" then
33+
string = string .. "[\"" .. key .. "\"] = " .. (value and "true" or "false") .. ",\n"
34+
elseif type(value) == "string" then
35+
string = string .. "[\"" .. key .. "\"] = \"" .. value .. "\",\n"
36+
else
37+
string = string .. "[\"" .. key .. "\"] = " .. round(value, 4) .. ",\n"
38+
end
39+
end
40+
string = string .. "}\n"
41+
return string
4242
end
4343

4444
local buildList = fetchBuilds("../spec/TestBuilds")
4545
for filename, testBuild in pairs(buildList) do
46-
loadBuildFromXML(testBuild)
47-
local fileHnd, errMsg = io.open(filename:gsub("^(.+)%..+$", "%1.lua"), "w+")
48-
fileHnd:write("return {\n xml = [[")
49-
fileHnd:write(testBuild)
50-
fileHnd:write("]],\n ")
51-
fileHnd:write(buildTable("output", build.calcsTab.mainOutput) .. "\n}")
52-
fileHnd:close()
46+
loadBuildFromXML(testBuild)
47+
local fileHnd, errMsg = io.open(filename:gsub("^(.+)%..+$", "%1.lua"), "w+")
48+
fileHnd:write("return {\n xml = [[")
49+
fileHnd:write(testBuild)
50+
fileHnd:write("]],\n ")
51+
fileHnd:write(buildTable("output", build.calcsTab.mainOutput) .. "\n}")
52+
fileHnd:close()
5353
end

0 commit comments

Comments
 (0)