From 39cec3e173af3d20dce4117a2f3c28fcd04d77a8 Mon Sep 17 00:00:00 2001 From: Josh DM Date: Wed, 15 Nov 2023 11:00:25 -0500 Subject: [PATCH] add additional SM proc chances --- sim/deathknight/diseases.go | 14 ++++++++++++-- sim/deathknight/dps/TestFrost.results | 8 ++++---- sim/deathknight/dps/TestFrostUH.results | 8 ++++---- sim/deathknight/dps/TestUnholy.results | 8 ++++---- sim/deathknight/scourge_strike.go | 2 +- sim/deathknight/talents_unholy.go | 4 +--- sim/rogue/TestAssassination.results | 2 +- sim/rogue/TestCombat.results | 2 +- 8 files changed, 28 insertions(+), 20 deletions(-) diff --git a/sim/deathknight/diseases.go b/sim/deathknight/diseases.go index 84ab9e33f5..4006b43011 100644 --- a/sim/deathknight/diseases.go +++ b/sim/deathknight/diseases.go @@ -125,6 +125,17 @@ func (dk *Deathknight) registerBloodPlague() { // Tier9 4Piece canCrit := dk.HasSetBonus(ItemSetThassariansBattlegear, 4) + // SM can proc off blood plague application + bloodPlagueApplicationSpell := dk.RegisterSpell(core.SpellConfig{ + ActionID: core.ActionID{SpellID: 55078}.WithTag(1), + SpellSchool: core.SpellSchoolShadow, + ProcMask: core.ProcMaskProc, + Flags: core.SpellFlagNoLogs | core.SpellFlagNoMetrics, + ApplyEffects: func(sim *core.Simulation, target *core.Unit, spell *core.Spell) { + dk.BloodPlagueSpell.Dot(target).Apply(sim) + }, + }) + dk.BloodPlagueSpell = dk.RegisterSpell(core.SpellConfig{ ActionID: core.ActionID{SpellID: 55078}, SpellSchool: core.SpellSchoolShadow, @@ -170,8 +181,7 @@ func (dk *Deathknight) registerBloodPlague() { }, ApplyEffects: func(sim *core.Simulation, target *core.Unit, spell *core.Spell) { - dot := spell.Dot(target) - dot.Apply(sim) + bloodPlagueApplicationSpell.Cast(sim, target) }, }) dk.BloodPlagueExtended = make([]int, dk.Env.GetNumTargets()) diff --git a/sim/deathknight/dps/TestFrost.results b/sim/deathknight/dps/TestFrost.results index 98e4483976..0e268a33cf 100644 --- a/sim/deathknight/dps/TestFrost.results +++ b/sim/deathknight/dps/TestFrost.results @@ -252,15 +252,15 @@ dps_results: { dps_results: { key: "TestFrost-AllItems-DislodgedForeignObject-50348" value: { - dps: 11054.42214 - tps: 6470.50132 + dps: 11054.58588 + tps: 6470.59956 } } dps_results: { key: "TestFrost-AllItems-DislodgedForeignObject-50353" value: { - dps: 11002.10987 - tps: 6438.46412 + dps: 11001.03092 + tps: 6437.82133 } } dps_results: { diff --git a/sim/deathknight/dps/TestFrostUH.results b/sim/deathknight/dps/TestFrostUH.results index 30eb10a1de..f94d0de05b 100644 --- a/sim/deathknight/dps/TestFrostUH.results +++ b/sim/deathknight/dps/TestFrostUH.results @@ -252,15 +252,15 @@ dps_results: { dps_results: { key: "TestFrostUH-AllItems-DislodgedForeignObject-50348" value: { - dps: 11161.39555 - tps: 7940.5934 + dps: 11179.30689 + tps: 7954.12011 } } dps_results: { key: "TestFrostUH-AllItems-DislodgedForeignObject-50353" value: { - dps: 11092.40836 - tps: 7894.83816 + dps: 11092.15512 + tps: 7894.5297 } } dps_results: { diff --git a/sim/deathknight/dps/TestUnholy.results b/sim/deathknight/dps/TestUnholy.results index ab6c6c0e82..27b4ba7687 100644 --- a/sim/deathknight/dps/TestUnholy.results +++ b/sim/deathknight/dps/TestUnholy.results @@ -278,16 +278,16 @@ dps_results: { dps_results: { key: "TestUnholy-AllItems-DislodgedForeignObject-50348" value: { - dps: 11799.1826 - tps: 7724.64572 + dps: 11798.98234 + tps: 7724.62368 hps: 319.74369 } } dps_results: { key: "TestUnholy-AllItems-DislodgedForeignObject-50353" value: { - dps: 11803.67413 - tps: 7738.22348 + dps: 11803.88112 + tps: 7738.28514 hps: 318.90115 } } diff --git a/sim/deathknight/scourge_strike.go b/sim/deathknight/scourge_strike.go index be04cc7f53..4bec2961ca 100644 --- a/sim/deathknight/scourge_strike.go +++ b/sim/deathknight/scourge_strike.go @@ -21,7 +21,7 @@ func (dk *Deathknight) registerScourgeStrikeShadowDamageSpell() *core.Spell { return dk.Unit.RegisterSpell(core.SpellConfig{ ActionID: ScourgeStrikeActionID.WithTag(2), SpellSchool: core.SpellSchoolShadow, - ProcMask: core.ProcMaskSpellDamage, + ProcMask: core.ProcMaskSpellDamage | core.ProcMaskProc, Flags: core.SpellFlagMeleeMetrics | core.SpellFlagIgnoreAttackerModifiers, DamageMultiplier: 1, diff --git a/sim/deathknight/talents_unholy.go b/sim/deathknight/talents_unholy.go index 87161ccdbe..f339e874d4 100644 --- a/sim/deathknight/talents_unholy.go +++ b/sim/deathknight/talents_unholy.go @@ -158,12 +158,10 @@ func (dk *Deathknight) applyBloodCakedBlade() { } func (dk *Deathknight) bloodCakedBladeHit(isMh bool) *core.Spell { - procMask := core.ProcMaskProc - return dk.Unit.RegisterSpell(core.SpellConfig{ ActionID: core.ActionID{SpellID: 50463}.WithTag(core.TernaryInt32(isMh, 1, 2)), SpellSchool: core.SpellSchoolPhysical, - ProcMask: procMask, + ProcMask: core.ProcMaskProc, Flags: core.SpellFlagNoOnCastComplete | core.SpellFlagMeleeMetrics, DamageMultiplier: 1 * diff --git a/sim/rogue/TestAssassination.results b/sim/rogue/TestAssassination.results index 81bd6c8869..97b39a5669 100644 --- a/sim/rogue/TestAssassination.results +++ b/sim/rogue/TestAssassination.results @@ -13,7 +13,7 @@ character_stats_results: { final_stats: 221 final_stats: 0 final_stats: 5504.84 - final_stats: 469.94994 + final_stats: 469.94995 final_stats: 2072.9756 final_stats: 221 final_stats: 94 diff --git a/sim/rogue/TestCombat.results b/sim/rogue/TestCombat.results index 094e9c81fc..2dd7d795e2 100644 --- a/sim/rogue/TestCombat.results +++ b/sim/rogue/TestCombat.results @@ -13,7 +13,7 @@ character_stats_results: { final_stats: 264 final_stats: 0 final_stats: 5996.3904 - final_stats: 418.94994 + final_stats: 418.94995 final_stats: 2218.9399 final_stats: 264 final_stats: 94