Skip to content

Commit

Permalink
Update shred.go
Browse files Browse the repository at this point in the history
  • Loading branch information
kayla-glick authored Dec 23, 2024
1 parent 539a358 commit c0b8631
Showing 1 changed file with 2 additions and 19 deletions.
21 changes: 2 additions & 19 deletions sim/druid/shred.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,33 +7,20 @@ import (
"github.com/wowsims/classic/sim/core/proto"
)

// See https://www.wowhead.com/classic/spell=436895/s03-tuning-and-overrides-passive-druid
// Modifies Effect #1's Value -24%:
// Modifies Effect #2's Value +76:
const ShredWeaponMultiplierBuff = 0.75 // increases multiplier additively by 75% from 2.25 to 3.0
const ShredFlatDmgMultiplier = .75 // decreases flat damage modifier multiplicatively by -25% to counteract 3.0/2.25 overall scaling buff

func (druid *Druid) registerShredSpell() {
hasGoreRune := druid.HasRune(proto.DruidRune_RuneHelmGore)
// has6pCunningOfStormrage := druid.HasSetBonus(ItemSetCunningOfStormrage, 6)

damageMultiplier := 2.25
flatDamageBonus := map[int32]float64{
25: 24,
40: 44,
50: 64,
60: 80,
}[druid.Level] * ShredFlatDmgMultiplier
}[druid.Level]

// if druid.Ranged().ID == IdolOfTheDream {
// damageMultiplier *= 1.02
// flatDamageBonus *= 1.02
// }

// In-game testing concluded that, unintuitively, Idol of the Drea's 1.02x damage applies to the original 2.25x
// Shred mod, and to the flat damage bonus, but that the .75x SoD buff happens additively after Idol
damageMultiplier += ShredWeaponMultiplierBuff

druid.Shred = druid.RegisterSpell(Cat, core.SpellConfig{
SpellCode: SpellCode_DruidShred,
ActionID: core.ActionID{SpellID: map[int32]int32{
Expand All @@ -58,7 +45,7 @@ func (druid *Druid) registerShredSpell() {
IgnoreHaste: true,
},
ExtraCastCondition: func(sim *core.Simulation, target *core.Unit) bool {
return druid.ShredPositionOverride || !druid.PseudoStats.InFrontOfTarget
return !druid.PseudoStats.InFrontOfTarget
},

DamageMultiplier: damageMultiplier,
Expand All @@ -78,10 +65,6 @@ func (druid *Druid) registerShredSpell() {

if result.Landed() {
druid.AddComboPoints(sim, 1, target, spell.ComboPointMetrics())

if hasGoreRune {
druid.rollGoreCatReset(sim)
}
} else {
spell.IssueRefund(sim)
}
Expand Down

0 comments on commit c0b8631

Please sign in to comment.