Skip to content

Commit

Permalink
[Warlock] Update Succulent Soul proc chance for Demonology (simulatio…
Browse files Browse the repository at this point in the history
  • Loading branch information
Azevara authored Sep 6, 2024
1 parent 1bc079a commit 7044ddd
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 5 deletions.
16 changes: 13 additions & 3 deletions engine/class_modules/warlock/sc_warlock.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -631,7 +631,8 @@ std::string warlock_t::create_profile( save_e stype )
profile_str += append_rng_option( rng_settings.bleakheart_tactics );
profile_str += append_rng_option( rng_settings.seeds_of_their_demise );
profile_str += append_rng_option( rng_settings.mark_of_perotharn );
profile_str += append_rng_option( rng_settings.succulent_soul );
profile_str += append_rng_option( rng_settings.succulent_soul_aff );
profile_str += append_rng_option( rng_settings.succulent_soul_demo );
profile_str += append_rng_option( rng_settings.feast_of_souls );
profile_str += append_rng_option( rng_settings.umbral_lattice );
profile_str += append_rng_option( rng_settings.empowered_legion_strike );
Expand Down Expand Up @@ -664,7 +665,8 @@ void warlock_t::copy_from( player_t* source )
rng_settings.bleakheart_tactics = p->rng_settings.bleakheart_tactics;
rng_settings.seeds_of_their_demise = p->rng_settings.seeds_of_their_demise;
rng_settings.mark_of_perotharn = p->rng_settings.mark_of_perotharn;
rng_settings.succulent_soul = p->rng_settings.succulent_soul;
rng_settings.succulent_soul_aff = p->rng_settings.succulent_soul_aff;
rng_settings.succulent_soul_demo = p->rng_settings.succulent_soul_demo;
rng_settings.feast_of_souls = p->rng_settings.feast_of_souls;
rng_settings.umbral_lattice = p->rng_settings.umbral_lattice;
rng_settings.empowered_legion_strike = p->rng_settings.empowered_legion_strike;
Expand Down Expand Up @@ -936,7 +938,15 @@ double warlock_t::resource_gain( resource_e resource_type, double amount, gain_t
{
for ( int i = 0; i < as<int>( actual_amount ); i++ )
{
if ( rng().roll( rng_settings.succulent_soul.setting_value ) )
double chance = 0.0;

if ( specialization() == WARLOCK_AFFLICTION )
chance = rng_settings.succulent_soul_aff.setting_value;

if ( specialization() == WARLOCK_DEMONOLOGY )
chance = rng_settings.succulent_soul_demo.setting_value;

if ( chance )
{
buffs.succulent_soul->trigger();
procs.succulent_soul->occur();
Expand Down
3 changes: 2 additions & 1 deletion engine/class_modules/warlock/sc_warlock.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -784,7 +784,8 @@ struct warlock_t : public player_t
rng_setting_t mark_of_perotharn = { 0.15, 0.15, "mark_of_perotharn" };

// Soul Harvester
rng_setting_t succulent_soul = { 0.20, 0.20, "succulent_soul" };
rng_setting_t succulent_soul_aff = { 0.20, 0.20, "succulent_soul_aff" };
rng_setting_t succulent_soul_demo = { 0.15, 0.15, "succulent_soul_demo" };
rng_setting_t feast_of_souls = { 0.125, 0.125, "feast_of_souls" };
} rng_settings;

Expand Down
3 changes: 2 additions & 1 deletion engine/class_modules/warlock/sc_warlock_init.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1128,7 +1128,8 @@ namespace warlock
add_rng_option( rng_settings.bleakheart_tactics );
add_rng_option( rng_settings.seeds_of_their_demise );
add_rng_option( rng_settings.mark_of_perotharn );
add_rng_option( rng_settings.succulent_soul );
add_rng_option( rng_settings.succulent_soul_aff );
add_rng_option( rng_settings.succulent_soul_demo );
add_rng_option( rng_settings.feast_of_souls );
add_rng_option( rng_settings.umbral_lattice );
add_rng_option( rng_settings.empowered_legion_strike );
Expand Down

0 comments on commit 7044ddd

Please sign in to comment.