PathOfBuildingCommunity / PathOfBuildingCommunity/PathOfBuilding
Fix issues around scaleability and Runegraft of the Bound
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Lua
- Sterne
- 5.4k
- Forks
- 2.4k
- Ø Merge
- 1 T. 12 Std.
- Gemergte PRs (30 T.)
- 26
Beschreibung
Revisiting this code when looking over this PR makes me realize there are a few more hidden gotchas here.
- Making a mod
unscalablein a LIST mod doesn't do anything. An example of this would be "banners also cause enemies to take (%d+)%% increased damage". This code only checks forunscalableat the LIST level, not for each subMod: https://github.com/PathOfBuildingCommunity/PathOfBuilding/blob/78326a60910b00739c5f33be69cb140cd164a12c/src/Classes/ModStore.lua#L37-L50 - Unscaleable mods get added twice. I tested "take no extra damage from critical strikes" and saw the value double (even though there is a hard cap on a lot of these unscalable mods
In short, I'll merge this PR but I needed to write this down somewhere so it can be refactored again, with proper test cases added for all these corner cases.
Originally posted by @Wires77 in https://github.com/PathOfBuildingCommunity/PathOfBuilding/issues/8977#issuecomment-3251710545
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne in src/Classes/ModStore.lua bei der verlinkten scaleability logic und verfolge, wie LIST mods und unscalable mods verarbeitet werden. Füge Testfälle für die Behandlung von unscalable pro subMod und die doppelte Anwendung hinzu und überprüfe anschließend, dass die betroffenen modifiers die erwarteten Werte erzeugen, ohne doppelt gezählt zu werden.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- lua
- Bereich
- game-dev
- Issue-Typ
- Refactoring
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100