Skip to content

Support Cadiro's Gambit's Perandus Arrows - #2416

Open
lucaskarsten wants to merge 1 commit into
PathOfBuildingCommunity:devfrom
lucaskarsten:feat/perandus-arrows
Open

Support Cadiro's Gambit's Perandus Arrows#2416
lucaskarsten wants to merge 1 commit into
PathOfBuildingCommunity:devfrom
lucaskarsten:feat/perandus-arrows

Conversation

@lucaskarsten

@lucaskarsten lucaskarsten commented Aug 15, 2026

Copy link
Copy Markdown

Related to #2415.

Description of the problem being solved:

Cadiro's Gambit has the line "Each Arrow fired is a Crescendo, Splinter, Reversing, Diamond, Covetous, or Blunt Arrow", which was unsupported, so the quiver calculated as if it only granted increased Attack Speed.

The Diamond Arrow is what makes that matter: all its Hits are Critical Hits, with 60% increased Critical Damage Bonus. On a bow character sitting at 28.88% Critical Hit Chance, that Arrow takes Total DPS from 120,714 to 297,952.

The six Arrows are rolled per Arrow and behave too differently to average into one number, so the item's line only sets a flag and a new config picks which Arrow to calculate. This follows the existing "Random element mode" config for modifiers that choose an element. The default, "Random (none applied)", applies none of them, so no existing build changes.

Each Arrow reuses modifiers that already exist:

Arrow Modifiers
Crescendo ChainCountMax +6, 60% increased Damage per Chain
Splinter SplitCount 6
Reversing PierceAllTargets
Diamond CritChance 100 override, 60% increased CritMultiplier
Covetous 600% increased LootRarity
Blunt 600% increased EnemyHeavyStunBuildup

The Reversing Arrow also returns to you, which PoB does not model.

Steps taken to verify a working solution:

  • Equipped Cadiro's Gambit on a level 96 Ice Shot Deadeye and stepped through every option of the new config.
  • Diamond: Total DPS 120,714 -> 297,952, Crit Chance 28.88% -> 100.00%, Crit Multiplier 396% -> 456%. Screenshots below.
  • Crescendo: Chain Max 0 -> 6, and with "# of times Skill has Chained" set to 6, Full DPS 392,738 -> 651,538.
  • Splinter: Split Count 0 -> 6. Reversing: Pierce Count 0 -> "All targets". Neither changes single target DPS, as expected.
  • Regenerated ModCache.lua, which now caches the line as a parsed flag instead of an unsupported mod.

Link to a build that showcases this PR:

Any bow build with this item works. The quiver used above:

Rarity: UNIQUE
Cadiro's Gambit
Primed Quiver
Item Level: 82
LevelReq: 66
Implicits: 0
10% increased Attack Speed
Each Arrow fired is a Crescendo, Splinter, Reversing, Diamond, Covetous, or Blunt Arrow

Before screenshot:

Path_of_Building-PoE2_Mv7eOzs2zW

After screenshot:

Path_of_Building-PoE2_pn4cFVBIM8

@lucaskarsten

Copy link
Copy Markdown
Author

Pushed a fix: the config now gates itself on Condition:PerandusArrows, granted by the quiver.

ifFlag only decides whether the control is drawn (ConfigTab.lua:445), while ConfigTab:BuildModList applies every stored list var regardless (ConfigTab.lua:902). Without the condition, a build that picked Diamond and then unequipped the quiver kept CritChance OVERRIDE 100 with the control no longer visible — measured 100% Critical Hit Chance on a character with no Cadiro's Gambit equipped. Every other item-gated ifFlag option in the file only sets a Condition: or Multiplier: that is inert without its item, so this was the odd one out.

With the quiver equipped the numbers are unchanged (Diamond still 903,906 Full DPS on the character in the description); without it, the character measures its normal 29.45% Critical Hit Chance again.

ModCache.lua regenerated with REGENERATE_MOD_CACHE=1 luajit HeadlessWrapper.lua. Full busted suite: 566 successes / 0 failures / 0 errors.

"Each Arrow fired is a Crescendo, Splinter, Reversing, Diamond, Covetous,
or Blunt Arrow" was unsupported, so Cadiro's Gambit measured as a plain
quiver with increased Attack Speed. The Diamond Arrow alone is worth more
than doubling the DPS of a bow build with average Critical Hit Chance,
which made the item look far weaker than it is.

The six Arrows behave too differently to average into a single number, so
the quiver's line only sets a condition and a new config picks which Arrow
to calculate, the same shape as the existing "Random element mode" for
modifiers that choose an element. Random, the default, applies none of
them and leaves the current behaviour untouched.

Crescendo (Chain +6, 60% increased Damage for each Chain), Splinter
(Split towards 6 targets), Reversing (Pierce all targets), Diamond (all
Hits are Critical Hits, 60% increased Critical Damage Bonus), Covetous
(600% increased Rarity) and Blunt (600% increased Stun Buildup) all reuse
existing modifiers. The Reversing Arrow also returns to you, which PoB
does not model.

The config gates itself on Condition:PerandusArrows, granted by the
quiver. ifFlag only decides whether the control is drawn, while
ConfigTab:BuildModList applies every stored list var regardless, so
without the condition a build that picked Diamond and then unequipped the
quiver would keep 100% Critical Hit Chance with the control no longer
visible.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant