diff --git a/engine/class_modules/sc_rogue.cpp b/engine/class_modules/sc_rogue.cpp index 4412bd6bcd8..fbe37cf50e3 100644 --- a/engine/class_modules/sc_rogue.cpp +++ b/engine/class_modules/sc_rogue.cpp @@ -5150,6 +5150,19 @@ struct killing_spree_t : public rogue_attack_t } } + void snapshot_state( action_state_t* state, result_amount_type rt ) override + { + rogue_attack_t::snapshot_state( state, rt ); + + // 08-29-2025 -- If Killing Spree consumes Supercharger, its effective CPs are reduced by one + // So with Forced Induction, it is treated as +2 CPs as opposed to +3 + if ( p()->bugs && range::any_of( p()->buffs.supercharger, []( const buff_t* buff ) { return buff->check(); } ) ) + { + auto rs = cast_state( state ); + rs->set_combo_points( rs->get_combo_points( true ), rs->get_combo_points() - 1 ); + } + } + void tick( dot_t* d ) override { rogue_attack_t::tick( d );