Skip to content

[Action] trigger generic harmful procs from energize_power effects#11253

Merged
gastank merged 5 commits intomidnightfrom
cb-on-energize
Mar 21, 2026
Merged

[Action] trigger generic harmful procs from energize_power effects#11253
gastank merged 5 commits intomidnightfrom
cb-on-energize

Conversation

@gastank
Copy link
Contributor

@gastank gastank commented Mar 19, 2026

It seems 'Generic Helpful' can be triggered by various resource energize effects from actions such that items & effects described as proccing off "heals" or have otherwise incorrect proc flags can trigger off harmful attacks and spells.

action_t::suppress_callback_from_energize = true to disable for the action.

gastank added 4 commits March 19, 2026 10:31
It seems 'Generic Helpful' can be triggered by various resource energize
effects from actions such that items & effects described as proccing off
"heals" or have otherwise incorrect proc flags can trigger off harmful attacks
and spells.

action_t::suppress_callback_from_energize = true to disable for the action.
@EvanMichaels
Copy link
Contributor

I believe this should resolve the issue described here: #11160

@EvanMichaels
Copy link
Contributor

Think the only issue here that I see is that action_t::gain_energize_resource feels comparatively underutilized vs. direct calls to p()->resource_gain() ?

It will at least work intrinsically for ability action_energize:: type ones which is probably enough to consistently proc things in stuff like the Rogue module, but I suspect many of the other resource gains would technically trigger it as well.

if ( callbacks && caster_callbacks && ( !suppress_caster_procs || enable_proc_from_suppressed ) &&
!suppress_callback_from_energize )
{
player->trigger_callbacks( PROC1_NONE_HELPFUL, PROC2_HIT, this, energize_state.get() );
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In follow-up to my comment on the main thread, I wonder if maybe this should just be moved into player_t::resource_gain instead, but only run if action_t* action is passed in? Many of the direct calls to resource_gain that are tied to an action pass in the action, similar to L5148 above.

e.g.

void actions::rogue_action_t<Base>::trigger_combo_point_gain( int cp, gain_t* gain )
{
  p()->resource_gain( RESOURCE_COMBO_POINT, cp, gain, this );
}

Similar in priest_t::generate_insanity and most Runic Power gains.

@gastank gastank merged commit 806df96 into midnight Mar 21, 2026
84 of 89 checks passed
@gastank gastank deleted the cb-on-energize branch March 21, 2026 18:16
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.

2 participants