diff --git a/sim/druid/druid.go b/sim/druid/druid.go index a3249ce5bc..04f7ce5675 100644 --- a/sim/druid/druid.go +++ b/sim/druid/druid.go @@ -174,6 +174,12 @@ func (druid *Druid) Initialize() { druid.registerFaerieFireSpell() druid.registerRebirthSpell() druid.registerInnervateCD() + druid.registerFakeGotw() + + if druid.RaidBuffTargets == 0 { + // 17 is an arbitrary compromise between 10 and 25, plus pets + druid.RaidBuffTargets = core.MaxInt(17, len(druid.Env.Raid.AllUnits)) + } } func (druid *Druid) RegisterBalanceSpells() { @@ -204,7 +210,6 @@ func (druid *Druid) RegisterFeralCatSpells() { druid.registerSwipeBearSpell() druid.registerSwipeCatSpell() druid.registerTigersFurySpell() - druid.registerFakeGotw() } func (druid *Druid) RegisterFeralTankSpells(maulRageThreshold float64) { diff --git a/sim/druid/fake_gotw.go b/sim/druid/fake_gotw.go index 7c8f02bc08..55d21656db 100644 --- a/sim/druid/fake_gotw.go +++ b/sim/druid/fake_gotw.go @@ -23,5 +23,8 @@ func (druid *Druid) registerFakeGotw() { GCD: core.GCDDefault, }, }, + ExtraCastCondition: func(sim *core.Simulation, target *core.Unit) bool { + return druid.InForm(Humanoid) + }, }) } diff --git a/sim/druid/feral/feral.go b/sim/druid/feral/feral.go index f37ddead48..c3e80e3c2a 100644 --- a/sim/druid/feral/feral.go +++ b/sim/druid/feral/feral.go @@ -42,7 +42,7 @@ func NewFeralDruid(character core.Character, options *proto.Player) *FeralDruid cat.AssumeBleedActive = feralOptions.Options.AssumeBleedActive cat.maxRipTicks = cat.MaxRipTicks() cat.prepopOoc = feralOptions.Rotation.PrePopOoc - cat.RaidBuffTargets = int(core.MaxInt32(feralOptions.Rotation.RaidTargets, 1)) + cat.RaidBuffTargets = int(feralOptions.Rotation.RaidTargets) if !feralOptions.Rotation.ManualParams { cat.RaidBuffTargets = 30 }