Skip to content

Commit

Permalink
Merge pull request #1107 from hillerstorm/ret_stuff
Browse files Browse the repository at this point in the history
  • Loading branch information
hillerstorm authored Oct 18, 2024
2 parents e25effa + d124338 commit 24e8ea0
Show file tree
Hide file tree
Showing 16 changed files with 905 additions and 771 deletions.
2 changes: 1 addition & 1 deletion sim/paladin/exorcism.go
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ func (paladin *Paladin) registerExorcism() {
ThreatMultiplier: 1,

ApplyEffects: func(sim *core.Simulation, target *core.Unit, spell *core.Spell) {
baseDamage := sim.Roll(exorcismMinDamage, exorcismMaxDamage) +
baseDamage := sim.RollWithLabel(exorcismMinDamage, exorcismMaxDamage, "Exorcism") +
0.344*max(spell.SpellPower(), spell.MeleeAttackPower())

bonusCritPercent := core.TernaryFloat64(
Expand Down
2 changes: 1 addition & 1 deletion sim/paladin/guardian_of_ancient_kings.go
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,7 @@ func (paladin *Paladin) registerRetributionGuardian(duration time.Duration, snap
ThreatMultiplier: 1,

ApplyEffects: func(sim *core.Simulation, target *core.Unit, spell *core.Spell) {
baseDamage := sim.Roll(ancientFuryMinDamage, ancientFuryMaxDamage) +
baseDamage := sim.RollWithLabel(ancientFuryMinDamage, ancientFuryMaxDamage, "Ancient Fury") +
0.061*spell.SpellPower()

// Deals X Holy damage per application of Ancient Power,
Expand Down
2 changes: 1 addition & 1 deletion sim/paladin/hammer_of_wrath.go
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ func (paladin *Paladin) registerHammerOfWrathSpell() {
ThreatMultiplier: 1,

ApplyEffects: func(sim *core.Simulation, target *core.Unit, spell *core.Spell) {
baseDamage := sim.Roll(howMinDamage, howMaxDamage) +
baseDamage := sim.RollWithLabel(howMinDamage, howMaxDamage, "Hammer of Wrath") +
0.117*spell.SpellPower() +
0.39*spell.MeleeAttackPower()

Expand Down
14 changes: 11 additions & 3 deletions sim/paladin/judgement.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,7 @@ import (
)

func (paladin *Paladin) registerJudgement() {
actionId := core.ActionID{SpellID: 20271}
hpMetrics := paladin.NewHolyPowerMetrics(actionId)
hpMetrics := paladin.NewHolyPowerMetrics(core.ActionID{SpellID: 105767})
hasT132pc := paladin.HasSetBonus(ItemSetBattleplateOfRadiantGlory, 2)

paladin.RegisterSpell(core.SpellConfig{
Expand Down Expand Up @@ -41,7 +40,16 @@ func (paladin *Paladin) registerJudgement() {
if result.Landed() {
paladin.CurrentJudgement.Cast(sim, target)
if hasT132pc {
paladin.GainHolyPower(sim, 1, hpMetrics)
// TODO: Measure the aura update delay distribution on PTR.
waitTime := time.Millisecond * time.Duration(sim.RollWithLabel(150, 750, "T13 2pc"))
core.StartDelayedAction(sim, core.DelayedActionOptions{
DoAt: sim.CurrentTime + waitTime,
Priority: core.ActionPriorityRegen,

OnAction: func(_ *core.Simulation) {
paladin.GainHolyPower(sim, 1, hpMetrics)
},
})
}
}
},
Expand Down
2 changes: 1 addition & 1 deletion sim/paladin/protection/avengers_shield.go
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ func (prot *ProtectionPaladin) registerAvengersShieldSpell() {
constBaseDamage := 0.21*spell.SpellPower() + 0.419*spell.MeleeAttackPower()

for idx := int32(0); idx < numTargets; idx++ {
baseDamage := constBaseDamage + sim.Roll(asMinDamage, asMaxDamage)
baseDamage := constBaseDamage + sim.RollWithLabel(asMinDamage, asMaxDamage, "Avengers Shield")

currentTarget := sim.Environment.GetTargetUnit(idx)
results[idx] = spell.CalcDamage(sim, currentTarget, baseDamage, spell.OutcomeMeleeSpecialHitAndCrit)
Expand Down
Loading

0 comments on commit 24e8ea0

Please sign in to comment.