Documentation
¶
Index ¶
- Constants
- type BurningTreant
- type DefaultTreantImpl
- type Druid
- func (druid *Druid) ApplyBloodletting(target *core.Unit)
- func (druid *Druid) ApplyLeaderOfThePack()
- func (druid *Druid) ApplyNurturingInstinct()
- func (druid *Druid) ApplyPrimalFury()
- func (druid *Druid) ApplyTalents()
- func (druid *Druid) BalanceCritMultiplier() float64
- func (druid *Druid) CanApplyFaerieFireDebuff(target *core.Unit) bool
- func (druid *Druid) ClearForm(sim *core.Simulation)
- func (druid *Druid) CurrentFerociousBiteCost() float64
- func (druid *Druid) CurrentMangleCatCost() float64
- func (druid *Druid) CurrentRakeCost() float64
- func (druid *Druid) CurrentRipCost() float64
- func (druid *Druid) CurrentSwipeCatCost() float64
- func (druid *Druid) GetBearWeapon() core.Weapon
- func (druid *Druid) GetCatWeapon() core.Weapon
- func (druid *Druid) GetCharacter() *core.Character
- func (druid *Druid) GetSpellEclipseEnergy(spellMask int64, inEclipse bool) float64
- func (druid *Druid) HasMajorGlyph(glyph proto.DruidMajorGlyph) bool
- func (druid *Druid) HasMinorGlyph(glyph proto.DruidMinorGlyph) bool
- func (druid *Druid) InForm(form DruidForm) bool
- func (druid *Druid) Initialize()
- func (druid *Druid) IsMangle(spell *core.Spell) bool
- func (druid *Druid) IsSwipeSpell(spell *core.Spell) bool
- func (druid *Druid) NewBurningTreant() *BurningTreant
- func (druid *Druid) NewDefaultTreant(config TreantConfig) *DefaultTreantImpl
- func (druid *Druid) RegisterBalanceSpells()
- func (druid *Druid) RegisterBearFormAura()
- func (druid *Druid) RegisterCatFormAura()
- func (druid *Druid) RegisterFeralCatSpells()
- func (druid *Druid) RegisterFeralTankSpells()
- func (druid *Druid) RegisterSpell(formMask DruidForm, config core.SpellConfig) *DruidSpell
- func (druid *Druid) Reset(_ *core.Simulation)
- func (druid *Druid) SetSpellEclipseEnergy(spellMask int64, inEclipseEnergy float64, noEclipseEnergy float64)
- func (druid *Druid) ShouldFaerieFire(sim *core.Simulation, target *core.Unit) bool
- func (druid *Druid) TryApplyFaerieFireEffect(sim *core.Simulation, target *core.Unit)
- func (druid *Druid) UpdateBleedPower(bleedSpell *DruidSpell, sim *core.Simulation, target *core.Unit, ...)
- type DruidAgent
- type DruidForm
- type DruidSpell
- type EclipseEnergyMap
- type EclipseEnergyValues
- type SelfBuffs
- type TreantAgent
- type TreantAgents
- type TreantConfig
Constants ¶
View Source
const ( SpellFlagNaturesGrace = core.SpellFlagAgentReserved1 SpellFlagOmenTrigger = core.SpellFlagAgentReserved2 )
View Source
const ( WrathBaseEnergyGain float64 = 13 + 1.0/3 StarsurgeBaseEnergyGain float64 = 15 StarfireBaseEnergyGain float64 = 20 MoonfireBaseEnergyGain float64 = 0 SunfireBaseEnergyGain float64 = 0 MoonfireLunarShowerEnergyGain float64 = MoonfireBaseEnergyGain + 8 SunfireLunarShowerEnergyGain float64 = SunfireBaseEnergyGain + 8 Wrath4PT12EnergyGain float64 = WrathBaseEnergyGain + 3 Starfire4PT12EnergyGain float64 = StarfireBaseEnergyGain + 5 )
View Source
const ( DruidSpellFlagNone int64 = 0 DruidSpellBarkskin int64 = 1 << iota DruidSpellCyclone DruidSpellEntanglingRoots DruidSpellFearieFire DruidSpellHibernate DruidSpellHurricane DruidSpellInnervate DruidSpellInsectSwarm DruidSpellMangleBear DruidSpellMangleCat DruidSpellMaul DruidSpellMoonfire DruidSpellMoonfireDoT DruidSpellNaturesGrasp DruidSpellRavage DruidSpellShred DruidSpellStarfall DruidSpellStarfire DruidSpellStarsurge DruidSpellSunfire DruidSpellSunfireDoT DruidSpellThorns DruidSpellTyphoon DruidSpellWildMushroom DruidSpellWildMushroomDetonate DruidSpellWrath DruidSpellHealingTouch DruidSpellRegrowth DruidSpellLifebloom DruidSpellRejuvenation DruidSpellNourish DruidSpellTranquility DruidSpellMarkOfTheWild DruidSpellSwiftmend DruidSpellWildGrowth DruidSpellLast DruidSpellsAll = DruidSpellLast<<1 - 1 DruidSpellDoT = DruidSpellInsectSwarm | DruidSpellMoonfireDoT | DruidSpellSunfireDoT DruidSpellHoT = DruidSpellRejuvenation | DruidSpellLifebloom | DruidSpellRegrowth | DruidSpellWildGrowth DruidSpellInstant = DruidSpellBarkskin | DruidSpellInsectSwarm | DruidSpellMoonfire | DruidSpellStarfall | DruidSpellSunfire | DruidSpellFearieFire | DruidSpellBarkskin DruidSpellMangle = DruidSpellMangleBear | DruidSpellMangleCat DruidArcaneSpells = DruidSpellMoonfire | DruidSpellMoonfireDoT | DruidSpellStarfire | DruidSpellStarsurge | DruidSpellStarfall DruidNatureSpells = DruidSpellWrath | DruidSpellInsectSwarm | DruidSpellStarsurge | DruidSpellSunfire | DruidSpellSunfireDoT | DruidSpellTyphoon | DruidSpellHurricane DruidHealingSpells = DruidSpellHealingTouch | DruidSpellRegrowth | DruidSpellRejuvenation | DruidSpellLifebloom | DruidSpellNourish | DruidSpellSwiftmend DruidDamagingSpells = DruidArcaneSpells | DruidNatureSpells )
View Source
const AnimalSpiritRegenSuppression = 0.911337
Converts from 0.009327 to 0.0085
View Source
const BaseBearArmorMulti = 2.2
Thick Hide contribution handled separately in talents code for cleanliness and UI stats display.
View Source
const RendAndTearBonusCritPercent = 35.0
View Source
const RendAndTearDamageMultiplier = 1.2
View Source
const RipBaseNumTicks int32 = 8
View Source
const RipMaxNumTicks int32 = RipBaseNumTicks + 3
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BurningTreant ¶
type BurningTreant struct {
core.Pet
Fireseed *core.Spell
// contains filtered or unexported fields
}
func (*BurningTreant) ExecuteCustomRotation ¶
func (treant *BurningTreant) ExecuteCustomRotation(sim *core.Simulation)
func (*BurningTreant) GetPet ¶
func (treant *BurningTreant) GetPet() *core.Pet
func (*BurningTreant) Initialize ¶
func (treant *BurningTreant) Initialize()
func (*BurningTreant) Reset ¶
func (treant *BurningTreant) Reset(_ *core.Simulation)
type DefaultTreantImpl ¶
Embed this in spec-specific treant structs.
func (*DefaultTreantImpl) Enable ¶
func (treant *DefaultTreantImpl) Enable(sim *core.Simulation)
func (*DefaultTreantImpl) ExecuteCustomRotation ¶
func (treant *DefaultTreantImpl) ExecuteCustomRotation(_ *core.Simulation)
func (*DefaultTreantImpl) GetPet ¶
func (treant *DefaultTreantImpl) GetPet() *core.Pet
func (*DefaultTreantImpl) Initialize ¶
func (treant *DefaultTreantImpl) Initialize()
Overwrite these for spec variants that register spells.
func (*DefaultTreantImpl) Reset ¶
func (treant *DefaultTreantImpl) Reset(sim *core.Simulation)
type Druid ¶
type Druid struct {
core.Character
SelfBuffs
Talents *proto.DruidTalents
ClassSpellScaling float64
StartingForm DruidForm
Treants TreantAgents
EclipseEnergyMap EclipseEnergyMap
RebirthUsed bool
RebirthTiming float64
BleedsActive int
AssumeBleedActive bool
CannotShredTarget bool
MHAutoSpell *core.Spell
Barkskin *DruidSpell
Berserk *DruidSpell
CatCharge *DruidSpell
FaerieFire *DruidSpell
FerociousBite *DruidSpell
ForceOfNature *DruidSpell
FrenziedRegeneration *DruidSpell
Hurricane *DruidSpell
HurricaneTickSpell *DruidSpell
InsectSwarm *DruidSpell
Lacerate *DruidSpell
MangleBear *DruidSpell
MangleCat *DruidSpell
Maul *DruidSpell
MightOfUrsoc *DruidSpell
Moonfire *DruidSpell
Prowl *DruidSpell
Rebirth *DruidSpell
Rake *DruidSpell
Ravage *DruidSpell
Rip *DruidSpell
SavageRoar *DruidSpell
Shred *DruidSpell
Starfire *DruidSpell
Starfall *DruidSpell
Starsurge *DruidSpell
Sunfire *DruidSpell
SurvivalInstincts *DruidSpell
SwipeBear *DruidSpell
SwipeCat *DruidSpell
TigersFury *DruidSpell
ThrashBear *DruidSpell
ThrashCat *DruidSpell
Typhoon *DruidSpell
Wrath *DruidSpell
WildMushrooms *DruidSpell
WildMushroomsDetonate *DruidSpell
CatForm *DruidSpell
BearForm *DruidSpell
BarkskinAura *core.Aura
BearFormAura *core.Aura
BerserkBearAura *core.Aura
BerserkCatAura *core.Aura
CatFormAura *core.Aura
ClearcastingAura *core.Aura
WeakenedBlowsAuras core.AuraArray
FaerieFireAuras core.AuraArray
FrenziedRegenerationAura *core.Aura
LunarEclipseProcAura *core.Aura
MightOfUrsocAura *core.Aura
NaturesGraceProcAura *core.Aura
OwlkinFrenzyAura *core.Aura
ProwlAura *core.Aura
SolarEclipseProcAura *core.Aura
SurvivalInstinctsAura *core.Aura
SavageRoarDurationTable [6]time.Duration
ProcOoc func(sim *core.Simulation)
ExtendingMoonfireStacks int
// Guardian leather specialization is form-specific
GuardianLeatherSpecTracker *core.Aura
GuardianLeatherSpecDep *stats.StatDependency
// Item sets
T13Feral4pBonus *core.Aura
// contains filtered or unexported fields
}
func (*Druid) ApplyBloodletting ¶
func (*Druid) ApplyLeaderOfThePack ¶
func (druid *Druid) ApplyLeaderOfThePack()
func (*Druid) ApplyNurturingInstinct ¶
func (druid *Druid) ApplyNurturingInstinct()
func (*Druid) ApplyPrimalFury ¶
func (druid *Druid) ApplyPrimalFury()
func (*Druid) ApplyTalents ¶
func (druid *Druid) ApplyTalents()
func (*Druid) BalanceCritMultiplier ¶
func (*Druid) CanApplyFaerieFireDebuff ¶
func (*Druid) ClearForm ¶
func (druid *Druid) ClearForm(sim *core.Simulation)
func (*Druid) CurrentFerociousBiteCost ¶
func (*Druid) CurrentMangleCatCost ¶
func (*Druid) CurrentRakeCost ¶
func (*Druid) CurrentRipCost ¶
func (*Druid) CurrentSwipeCatCost ¶
func (*Druid) GetBearWeapon ¶
func (*Druid) GetCatWeapon ¶
func (*Druid) GetCharacter ¶
func (*Druid) GetSpellEclipseEnergy ¶
func (*Druid) HasMajorGlyph ¶
func (druid *Druid) HasMajorGlyph(glyph proto.DruidMajorGlyph) bool
func (*Druid) HasMinorGlyph ¶
func (druid *Druid) HasMinorGlyph(glyph proto.DruidMinorGlyph) bool
func (*Druid) Initialize ¶
func (druid *Druid) Initialize()
func (*Druid) NewBurningTreant ¶
func (druid *Druid) NewBurningTreant() *BurningTreant
func (*Druid) NewDefaultTreant ¶
func (druid *Druid) NewDefaultTreant(config TreantConfig) *DefaultTreantImpl
func (*Druid) RegisterBalanceSpells ¶
func (druid *Druid) RegisterBalanceSpells()
func (*Druid) RegisterBearFormAura ¶
func (druid *Druid) RegisterBearFormAura()
func (*Druid) RegisterCatFormAura ¶
func (druid *Druid) RegisterCatFormAura()
func (*Druid) RegisterFeralCatSpells ¶
func (druid *Druid) RegisterFeralCatSpells()
func (*Druid) RegisterFeralTankSpells ¶
func (druid *Druid) RegisterFeralTankSpells()
func (*Druid) RegisterSpell ¶
func (druid *Druid) RegisterSpell(formMask DruidForm, config core.SpellConfig) *DruidSpell
func (*Druid) Reset ¶
func (druid *Druid) Reset(_ *core.Simulation)
func (*Druid) SetSpellEclipseEnergy ¶
func (*Druid) ShouldFaerieFire ¶
func (*Druid) TryApplyFaerieFireEffect ¶
func (druid *Druid) TryApplyFaerieFireEffect(sim *core.Simulation, target *core.Unit)
func (*Druid) UpdateBleedPower ¶
func (druid *Druid) UpdateBleedPower(bleedSpell *DruidSpell, sim *core.Simulation, target *core.Unit, updateCurrent bool, updateNew bool)
type DruidAgent ¶
type DruidAgent interface {
GetDruid() *Druid
}
Agent is a generic way to access underlying druid on any of the agents (for example balance druid.)
type DruidSpell ¶
type DruidSpell struct {
*core.Spell
FormMask DruidForm
// Optional fields used in snapshotting calculations
CurrentSnapshotPower float64
NewSnapshotPower float64
ShortName string
}
func (*DruidSpell) CanCast ¶
func (ds *DruidSpell) CanCast(sim *core.Simulation, target *core.Unit) bool
func (*DruidSpell) IsReady ¶
func (ds *DruidSpell) IsReady(sim *core.Simulation) bool
type EclipseEnergyMap ¶
type EclipseEnergyMap = map[int64]EclipseEnergyValues
type EclipseEnergyValues ¶
type SelfBuffs ¶
type SelfBuffs struct {
InnervateTarget *proto.UnitReference
}
type TreantAgent ¶
type TreantAgent interface {
core.PetAgent
Enable(sim *core.Simulation)
}
Extension of PetAgent interface, for treants.
type TreantAgents ¶
type TreantAgents [3]TreantAgent
type TreantConfig ¶
type TreantConfig struct {
StatInheritance core.PetStatInheritance
EnableAutos bool
WeaponDamageCoefficient float64
}
Source Files
¶
- barkskin.go
- berserk.go
- burning_treant.go
- druid.go
- eclipse_energy_map.go
- faerie_fire.go
- ferocious_bite.go
- forms.go
- frenzied_regeneration.go
- hurricane.go
- insect_swarm.go
- lacerate.go
- mangle.go
- maul.go
- might_of_ursoc.go
- moonfire.go
- prowl.go
- rake.go
- ravage.go
- rip.go
- shared_feral_passives.go
- starsurge.go
- sunfire.go
- survival_instincts.go
- swipe.go
- talents.go
- thrash.go
- tranquility.go
- treants.go
- wild_mushrooms.go
- wrath.go
Click to show internal directories.
Click to hide internal directories.