From f2aa2386f6a389cf8f460bbc61dcf3f1dc12b2a5 Mon Sep 17 00:00:00 2001 From: Adam Chodaba Date: Tue, 8 Oct 2024 05:17:48 -0400 Subject: [PATCH] implement off GCD apl --- proto/apl.proto | 18 +- sim/core/apl_action.go | 16 + sim/core/apl_actions_casting.go | 78 +- sim/core/apl_actions_misc.go | 63 ++ sim/core/apl_actions_sequences.go | 68 +- sim/core/apl_actions_timing.go | 320 ++++++- sim/druid/balance/TestBalance.results | 98 +-- sim/druid/feral/TestFeral.results | 778 +++++++++--------- sim/druid/feral/apl_values.go | 8 + sim/hunter/TestBM.results | 58 +- sim/hunter/TestSV.results | 2 +- sim/mage/TestArcane.results | 102 +-- sim/mage/TestFire.results | 200 ++--- sim/mage/TestFrost.results | 132 +-- sim/paladin/apl_values.go | 8 + sim/paladin/judgement.go | 2 + sim/paladin/protection/TestProtection.results | 28 +- sim/paladin/retribution/TestExodin.results | 16 +- .../retribution/TestRetribution.results | 202 ++--- sim/paladin/retribution/TestShockadin.results | 40 +- sim/shaman/elemental/TestElemental.results | 252 +++--- .../enhancement/TestEnhancement.results | 282 +++---- sim/shaman/warden/TestWardenShaman.results | 64 +- sim/warlock/dps/TestAffliction.results | 52 +- sim/warlock/dps/TestDestruction.results | 28 +- .../dps_warrior/TestDualWieldWarrior.results | 250 +++--- .../dps_warrior/TestTwoHandedWarrior.results | 182 ++-- .../tank_warrior/TestTankWarrior.results | 72 +- .../individual_sim_ui/apl_actions.ts | 42 + .../apls/p5ret-twist-4DR-CancelAura.apl.json | 20 + .../gear_sets/p5twistingHaste.gear.json | 21 + ui/retribution_paladin/presets.ts | 19 +- ui/retribution_paladin/sim.ts | 7 + 33 files changed, 2094 insertions(+), 1434 deletions(-) create mode 100644 ui/retribution_paladin/apls/p5ret-twist-4DR-CancelAura.apl.json create mode 100644 ui/retribution_paladin/gear_sets/p5twistingHaste.gear.json diff --git a/proto/apl.proto b/proto/apl.proto index 236a6f804e..ad98e49260 100644 --- a/proto/apl.proto +++ b/proto/apl.proto @@ -41,7 +41,7 @@ message APLListItem { APLAction action = 3; // The action to be performed. } -// NextIndex: 24 +// NextIndex: 26 message APLAction { APLValue condition = 1; // If set, action will only execute if value is true or != 0. @@ -56,7 +56,9 @@ message APLAction { // Timing APLActionWait wait = 4; APLActionWaitUntil wait_until = 14; + APLActionRelativeSchedule relative_schedule = 24; APLActionSchedule schedule = 15; + APLActionPeriodicSchedule periodic_schedule = 25; // Sequences APLActionSequence sequence = 2; @@ -219,6 +221,13 @@ message APLActionWaitUntil { APLValue condition = 1; } +message APLActionRelativeSchedule { + // relative time compared to current time, e.g. '1s' + string schedule = 1; + + APLAction inner_action = 2; +} + message APLActionSchedule { // Comma-separated list of times, e.g. '0s, 30s, 60s' string schedule = 1; @@ -226,6 +235,13 @@ message APLActionSchedule { APLAction inner_action = 2; } +message APLActionPeriodicSchedule { + // Comma-separated list of starttime and period e.g. '1s, 3s' for every 3 seconds starting at 1 seconds + string schedule = 1; + + APLAction inner_action = 2; +} + message APLActionSequence { string name = 1; diff --git a/sim/core/apl_action.go b/sim/core/apl_action.go index ad192e5619..b2ec408618 100644 --- a/sim/core/apl_action.go +++ b/sim/core/apl_action.go @@ -2,6 +2,7 @@ package core import ( "fmt" + "time" "github.com/wowsims/sod/sim/core/proto" ) @@ -26,6 +27,10 @@ func (action *APLAction) Execute(sim *Simulation) { action.impl.Execute(sim) } +func (action *APLAction) ExecuteOffGCD(sim *Simulation, offGCDTime time.Duration) { + action.impl.ExecuteOffGCD(sim, offGCDTime) +} + // Returns this Action, along with all inner Actions. func (action *APLAction) GetAllActions() []*APLAction { actions := action.impl.GetInnerActions() @@ -90,9 +95,15 @@ type APLActionImpl interface { // Whether this action is available to be used right now. IsReady(*Simulation) bool + // Whether this action is available Even during GCD + IsOffGCDAction() bool + // Performs the action. Execute(*Simulation) + // Performs the action off GCD at the given time + ExecuteOffGCD(*Simulation, time.Duration) + // Called only while this action is controlling the rotation. GetNextAction(sim *Simulation) *APLAction @@ -109,6 +120,7 @@ func (impl defaultAPLActionImpl) GetAPLValues() []APLValue { return func (impl defaultAPLActionImpl) Finalize(*APLRotation) {} func (impl defaultAPLActionImpl) Reset(*Simulation) {} func (impl defaultAPLActionImpl) GetNextAction(*Simulation) *APLAction { return nil } +func (impl defaultAPLActionImpl) IsOffGCDAction() bool { return false } func (rot *APLRotation) newAPLAction(config *proto.APLAction) *APLAction { if config == nil { @@ -155,8 +167,12 @@ func (rot *APLRotation) newAPLActionImpl(config *proto.APLAction) APLActionImpl return rot.newActionWait(config.GetWait()) case *proto.APLAction_WaitUntil: return rot.newActionWaitUntil(config.GetWaitUntil()) + case *proto.APLAction_RelativeSchedule: + return rot.newActionRelativeSchedule(config.GetRelativeSchedule()) case *proto.APLAction_Schedule: return rot.newActionSchedule(config.GetSchedule()) + case *proto.APLAction_PeriodicSchedule: + return rot.newActionPeriodicSchedule(config.GetPeriodicSchedule()) // Sequences case *proto.APLAction_Sequence: diff --git a/sim/core/apl_actions_casting.go b/sim/core/apl_actions_casting.go index 4646c05e24..d1b80e6f8e 100644 --- a/sim/core/apl_actions_casting.go +++ b/sim/core/apl_actions_casting.go @@ -2,14 +2,18 @@ package core import ( "fmt" + "time" "github.com/wowsims/sod/sim/core/proto" ) type APLActionCastSpell struct { defaultAPLActionImpl - spell *Spell - target UnitReference + spell *Spell + target UnitReference + offGCD bool + offGCDTime time.Duration + offGCDTimeExe time.Duration } func (rot *APLRotation) newActionCastSpell(config *proto.APLActionCastSpell) APLActionImpl { @@ -27,11 +31,53 @@ func (rot *APLRotation) newActionCastSpell(config *proto.APLActionCastSpell) APL } } func (action *APLActionCastSpell) IsReady(sim *Simulation) bool { - return action.spell.CanCast(sim, action.target.Get()) && (!action.spell.Flags.Matches(SpellFlagMCD) || action.spell.Unit.GCD.IsReady(sim) || action.spell.DefaultCast.GCD == 0) + action.offGCD = false + ready := action.spell.CanCast(sim, action.target.Get()) && (!action.spell.Flags.Matches(SpellFlagMCD) || action.spell.Unit.GCD.IsReady(sim) || action.spell.DefaultCast.GCD == 0) + + if !ready && (action.spell.DefaultCast.GCD == 0) && action.spell.CD.Timer != nil && (action.spell.CD.Timer.TimeToReady(sim) < 1500*time.Millisecond) && action.offGCDTimeExe != action.spell.CD.Timer.ReadyAt() { + //if sim.Log != nil { + // sim.Log("APLActionCastSpell IsReady offGCD") + //} + ready = true + action.offGCD = true + action.offGCDTime = action.spell.CD.Timer.ReadyAt() + } + return ready +} +func (action *APLActionCastSpell) IsOffGCDAction() bool { + return action.spell.DefaultCast.GCD == 0 } func (action *APLActionCastSpell) Execute(sim *Simulation) { - action.spell.Cast(sim, action.target.Get()) + if action.offGCD { + // Used when using APLActionCastSpell as an unnested action + action.offGCDTimeExe = action.offGCDTime + offGCDTimeExe := action.offGCDTimeExe + //if sim.Log != nil { + // sim.Log("APLActionCastSpell Execute Scheduling delayed off GCD action for %f", offGCDTimeExe) + //} + StartDelayedAction(sim, DelayedActionOptions{ + DoAt: offGCDTimeExe, + OnAction: func(s *Simulation) { + if action.spell.CanCast(sim, action.target.Get()) { + action.spell.Cast(sim, action.target.Get()) + } + }, + }) + } else { + action.spell.Cast(sim, action.target.Get()) + } +} + +func (action *APLActionCastSpell) ExecuteOffGCD(sim *Simulation, time time.Duration) { + //if sim.Log != nil { + // sim.Log("APLActionCastSpell ExecuteOffGCD Scheduling delayed off GCD action for %f", time) + //} + // Used when using APLActionCastSpell as a nested action (e.g. within a sequence) + action.offGCD = true + action.offGCDTime = time + action.Execute(sim) // Default to Execute unless impletented for this APL Action } + func (action *APLActionCastSpell) String() string { return fmt.Sprintf("Cast Spell(%s)", action.spell.ActionID) } @@ -82,6 +128,9 @@ func (action *APLActionChannelSpell) GetAPLValues() []APLValue { func (action *APLActionChannelSpell) IsReady(sim *Simulation) bool { return action.spell.CanCast(sim, action.target.Get()) } +func (action *APLActionChannelSpell) IsOffGCDAction() bool { + return false +} func (action *APLActionChannelSpell) Execute(sim *Simulation) { action.spell.Cast(sim, action.target.Get()) @@ -95,6 +144,9 @@ func (action *APLActionChannelSpell) Execute(sim *Simulation) { action.spell.Unit.Rotation.allowChannelRecastOnInterrupt = action.allowRecast } } +func (action *APLActionChannelSpell) ExecuteOffGCD(sim *Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} func (action *APLActionChannelSpell) String() string { return fmt.Sprintf("Channel Spell(%s, interruptIf=%s)", action.spell.ActionID, action.interruptIf) } @@ -167,9 +219,15 @@ func (action *APLActionMultidot) IsReady(sim *Simulation) bool { } return false } +func (action *APLActionMultidot) IsOffGCDAction() bool { + return false +} func (action *APLActionMultidot) Execute(sim *Simulation) { action.spell.Cast(sim, action.nextTarget) } +func (action *APLActionMultidot) ExecuteOffGCD(sim *Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} func (action *APLActionMultidot) String() string { return fmt.Sprintf("Multidot(%s)", action.spell.ActionID) } @@ -228,9 +286,15 @@ func (action *APLActionMultishield) IsReady(sim *Simulation) bool { } return false } +func (action *APLActionMultishield) IsOffGCDAction() bool { + return false +} func (action *APLActionMultishield) Execute(sim *Simulation) { action.spell.Cast(sim, action.nextTarget) } +func (action *APLActionMultishield) ExecuteOffGCD(sim *Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} func (action *APLActionMultishield) String() string { return fmt.Sprintf("Multishield(%s)", action.spell.ActionID) } @@ -259,10 +323,16 @@ func (action *APLActionAutocastOtherCooldowns) IsReady(sim *Simulation) bool { // true even for MCDs which do not require the GCD. return action.nextReadyMCD != nil && action.character.GCD.IsReady(sim) } +func (action *APLActionAutocastOtherCooldowns) IsOffGCDAction() bool { + return false +} func (action *APLActionAutocastOtherCooldowns) Execute(sim *Simulation) { action.nextReadyMCD.tryActivateHelper(sim, action.character) action.character.UpdateMajorCooldowns() } +func (action *APLActionAutocastOtherCooldowns) ExecuteOffGCD(sim *Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} func (action *APLActionAutocastOtherCooldowns) String() string { return "Autocast Other Cooldowns" } diff --git a/sim/core/apl_actions_misc.go b/sim/core/apl_actions_misc.go index 1023521ae8..e8534510a5 100644 --- a/sim/core/apl_actions_misc.go +++ b/sim/core/apl_actions_misc.go @@ -30,12 +30,19 @@ func (rot *APLRotation) newActionChangeTarget(config *proto.APLActionChangeTarge func (action *APLActionChangeTarget) IsReady(sim *Simulation) bool { return action.unit.CurrentTarget != action.newTarget.Get() } + +func (action *APLActionChangeTarget) IsOffGCDAction() bool { + return false +} func (action *APLActionChangeTarget) Execute(sim *Simulation) { if sim.Log != nil { action.unit.Log(sim, "Changing target to %s", action.newTarget.Get().Label) } action.unit.CurrentTarget = action.newTarget.Get() } +func (action *APLActionChangeTarget) ExecuteOffGCD(sim *Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} func (action *APLActionChangeTarget) String() string { return fmt.Sprintf("Change Target(%s)", action.newTarget.Get().Label) } @@ -58,12 +65,19 @@ func (rot *APLRotation) newActionCancelAura(config *proto.APLActionCancelAura) A func (action *APLActionCancelAura) IsReady(sim *Simulation) bool { return action.aura.IsActive() } + +func (action *APLActionCancelAura) IsOffGCDAction() bool { + return true +} func (action *APLActionCancelAura) Execute(sim *Simulation) { if sim.Log != nil { action.aura.Unit.Log(sim, "Cancelling aura %s", action.aura.ActionID) } action.aura.Deactivate(sim) } +func (action *APLActionCancelAura) ExecuteOffGCD(sim *Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} func (action *APLActionCancelAura) String() string { return fmt.Sprintf("Cancel Aura(%s)", action.aura.ActionID) } @@ -87,6 +101,9 @@ func (action *APLActionActivateAura) IsReady(sim *Simulation) bool { return true } +func (action *APLActionActivateAura) IsOffGCDAction() bool { + return false +} func (action *APLActionActivateAura) Execute(sim *Simulation) { if sim.Log != nil { action.aura.Unit.Log(sim, "Activating aura %s", action.aura.ActionID) @@ -94,6 +111,10 @@ func (action *APLActionActivateAura) Execute(sim *Simulation) { action.aura.Activate(sim) } +func (action *APLActionActivateAura) ExecuteOffGCD(sim *Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} + func (action *APLActionActivateAura) String() string { return fmt.Sprintf("Activate Aura(%s)", action.aura.ActionID) } @@ -129,6 +150,10 @@ func (action *APLActionActivateAuraWithStacks) IsReady(sim *Simulation) bool { return true } +func (action *APLActionActivateAuraWithStacks) IsOffGCDAction() bool { + return false +} + func (action *APLActionActivateAuraWithStacks) Execute(sim *Simulation) { if sim.Log != nil { action.aura.Unit.Log(sim, "Activating aura %s (%d stacks)", action.aura.ActionID, action.numStacks) @@ -137,6 +162,10 @@ func (action *APLActionActivateAuraWithStacks) Execute(sim *Simulation) { action.aura.SetStacks(sim, action.numStacks) } +func (action *APLActionActivateAuraWithStacks) ExecuteOffGCD(sim *Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} + func (action *APLActionActivateAuraWithStacks) String() string { return fmt.Sprintf("Activate Aura(%s) Stacks(%d)", action.aura.ActionID, action.numStacks) } @@ -167,6 +196,10 @@ func (action *APLActionAddComboPoints) IsReady(sim *Simulation) bool { return true } +func (action *APLActionAddComboPoints) IsOffGCDAction() bool { + return false +} + func (action *APLActionAddComboPoints) Execute(sim *Simulation) { numPoints := strconv.Itoa(int(action.numPoints)) @@ -177,6 +210,10 @@ func (action *APLActionAddComboPoints) Execute(sim *Simulation) { action.character.AddComboPoints(sim, action.numPoints, action.metrics) } +func (action *APLActionAddComboPoints) ExecuteOffGCD(sim *Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} + func (action *APLActionAddComboPoints) String() string { numPoints := strconv.Itoa(int(action.numPoints)) return fmt.Sprintf("Add Combo Points(%s)", numPoints) @@ -199,12 +236,19 @@ func (rot *APLRotation) newActionTriggerICD(config *proto.APLActionTriggerICD) A func (action *APLActionTriggerICD) IsReady(sim *Simulation) bool { return action.aura.IsActive() } + +func (action *APLActionTriggerICD) IsOffGCDAction() bool { + return false +} func (action *APLActionTriggerICD) Execute(sim *Simulation) { if sim.Log != nil { action.aura.Unit.Log(sim, "Triggering ICD %s", action.aura.ActionID) } action.aura.Icd.Use(sim) } +func (action *APLActionTriggerICD) ExecuteOffGCD(sim *Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} func (action *APLActionTriggerICD) String() string { return fmt.Sprintf("Trigger ICD(%s)", action.aura.ActionID) } @@ -237,6 +281,10 @@ func (rot *APLRotation) newActionItemSwap(config *proto.APLActionItemSwap) APLAc func (action *APLActionItemSwap) IsReady(sim *Simulation) bool { return (action.swapSet == proto.APLActionItemSwap_Main) == action.character.ItemSwap.IsSwapped() } + +func (action *APLActionItemSwap) IsOffGCDAction() bool { + return false +} func (action *APLActionItemSwap) Execute(sim *Simulation) { if sim.Log != nil { action.character.Log(sim, "Item Swap to set %s", action.swapSet) @@ -248,6 +296,9 @@ func (action *APLActionItemSwap) Execute(sim *Simulation) { action.character.ItemSwap.SwapItems(sim, action.character.ItemSwap.slots) } } +func (action *APLActionItemSwap) ExecuteOffGCD(sim *Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} func (action *APLActionItemSwap) String() string { return fmt.Sprintf("Item Swap(%s)", action.swapSet) } @@ -268,6 +319,9 @@ func (action *APLActionMove) IsReady(sim *Simulation) bool { isPrepull := sim.CurrentTime < 0 return !action.unit.IsMoving() && (action.moveRange.GetFloat(sim) != action.unit.DistanceFromTarget || isPrepull) && !action.unit.IsCasting(sim) } +func (action *APLActionMove) IsOffGCDAction() bool { + return false +} func (action *APLActionMove) Execute(sim *Simulation) { moveRange := action.moveRange.GetFloat(sim) if sim.Log != nil { @@ -276,6 +330,9 @@ func (action *APLActionMove) Execute(sim *Simulation) { action.unit.MoveTo(moveRange, sim) } +func (action *APLActionMove) ExecuteOffGCD(sim *Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} func (action *APLActionMove) String() string { return fmt.Sprintf("Move(%s)", action.moveRange) } @@ -306,10 +363,16 @@ func (action *APLActionCustomRotation) IsReady(sim *Simulation) bool { // Prevent infinite loops by only allowing this action to be performed once at each timestamp. return action.lastExecutedAt != sim.CurrentTime } +func (action *APLActionCustomRotation) IsOffGCDAction() bool { + return false +} func (action *APLActionCustomRotation) Execute(sim *Simulation) { action.lastExecutedAt = sim.CurrentTime action.agent.ExecuteCustomRotation(sim) } +func (action *APLActionCustomRotation) ExecuteOffGCD(sim *Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} func (action *APLActionCustomRotation) String() string { return "Custom Rotation()" } diff --git a/sim/core/apl_actions_sequences.go b/sim/core/apl_actions_sequences.go index 9fc2a0dfe7..636f53e6ab 100644 --- a/sim/core/apl_actions_sequences.go +++ b/sim/core/apl_actions_sequences.go @@ -3,6 +3,7 @@ package core import ( "fmt" "strings" + "time" "github.com/wowsims/sod/sim/core/proto" ) @@ -44,10 +45,16 @@ func (action *APLActionSequence) Reset(*Simulation) { func (action *APLActionSequence) IsReady(sim *Simulation) bool { return action.curIdx < len(action.subactions) && action.subactions[action.curIdx].IsReady(sim) } +func (action *APLActionSequence) IsOffGCDAction() bool { + return false +} func (action *APLActionSequence) Execute(sim *Simulation) { action.subactions[action.curIdx].Execute(sim) action.curIdx++ } +func (action *APLActionSequence) ExecuteOffGCD(sim *Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} func (action *APLActionSequence) String() string { return "Sequence(" + strings.Join(MapSlice(action.subactions, func(subaction *APLAction) string { return fmt.Sprintf("(%s)", subaction) }), "+") + ")" } @@ -79,9 +86,15 @@ func (action *APLActionResetSequence) Finalize(rot *APLRotation) { func (action *APLActionResetSequence) IsReady(sim *Simulation) bool { return action.sequence != nil && action.sequence.curIdx != 0 } +func (action *APLActionResetSequence) IsOffGCDAction() bool { + return false +} func (action *APLActionResetSequence) Execute(sim *Simulation) { action.sequence.curIdx = 0 } +func (action *APLActionResetSequence) ExecuteOffGCD(sim *Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} func (action *APLActionResetSequence) String() string { return fmt.Sprintf("Reset Sequence(name = '%s')", action.name) } @@ -92,7 +105,8 @@ type APLActionStrictSequence struct { subactions []*APLAction curIdx int - subactionSpells []*Spell + subactionSpells []*Spell + subactionsOffGCD bool } func (rot *APLRotation) newActionStrictSequence(config *proto.APLActionStrictSequence) APLActionImpl { @@ -122,22 +136,61 @@ func (action *APLActionStrictSequence) Reset(*Simulation) { action.curIdx = 0 } func (action *APLActionStrictSequence) IsReady(sim *Simulation) bool { - if !action.unit.GCD.IsReady(sim) { + if !action.unit.GCD.IsReady(sim) && !action.IsOffGCDAction() { + //if sim.Log != nil { + // sim.Log("APLActionStrictSequence - Is not ready due to GCD") + //} return false } if !action.subactions[0].IsReady(sim) { + //if sim.Log != nil { + // sim.Log("APLActionStrictSequence - Is not ready due to first subaction not ready") + //} return false } for _, spell := range action.subactionSpells { if !spell.IsReady(sim) { + //if sim.Log != nil { + // sim.Log("APLActionStrictSequence - Is not ready due to a subaction spell not ready") + //} return false } } return true } +func (action *APLActionStrictSequence) IsOffGCDAction() bool { + action.subactionsOffGCD = true + for _, subaction := range action.subactions { + if !subaction.impl.IsOffGCDAction() { + action.subactionsOffGCD = false + } + } + + return action.subactionsOffGCD +} func (action *APLActionStrictSequence) Execute(sim *Simulation) { action.unit.Rotation.pushControllingAction(action) } +func (action *APLActionStrictSequence) ExecuteOffGCD(sim *Simulation, time time.Duration) { + if action.IsOffGCDAction() { + for _, subaction := range action.subactions { + //if sim.Log != nil { + // sim.Log("APLActionStrictSequence - Scheduling subaction %s for time %f ", subaction.String(), time) + //} + + subactionTemp := subaction // needed for delayed action to use correct subaction + StartDelayedAction(sim, DelayedActionOptions{ + DoAt: time, + OnAction: func(s *Simulation) { + subactionTemp.ExecuteOffGCD(sim, time) + }, + }) + } + + } else { + action.Execute(sim) // Default to Execute unless all subactions are off the GCD + } +} func (action *APLActionStrictSequence) GetNextAction(sim *Simulation) *APLAction { if action.subactions[action.curIdx].IsReady(sim) { nextAction := action.subactions[action.curIdx] @@ -147,15 +200,24 @@ func (action *APLActionStrictSequence) GetNextAction(sim *Simulation) *APLAction action.curIdx = 0 action.unit.Rotation.popControllingAction(action) } - + //if sim.Log != nil { + // sim.Log("APLActionStrictSequence - Next action is ready") + //} return nextAction } else if action.unit.GCD.IsReady(sim) { // If the GCD is ready when the next subaction isn't, it means the sequence is bad // so reset and exit the sequence. + //if sim.Log != nil { + // sim.Log("APLActionStrictSequence - Next action not ready but GCD is ready") + //} + action.curIdx = 0 action.unit.Rotation.popControllingAction(action) return action.unit.Rotation.getNextAction(sim) } else { + //if sim.Log != nil { + // sim.Log("APLActionStrictSequence GetNextAction (offGCD) Return Nil") + //} // Return nil to wait for the GCD to become ready. return nil } diff --git a/sim/core/apl_actions_timing.go b/sim/core/apl_actions_timing.go index 4c0843afc3..7c541a485a 100644 --- a/sim/core/apl_actions_timing.go +++ b/sim/core/apl_actions_timing.go @@ -35,6 +35,10 @@ func (action *APLActionWait) IsReady(sim *Simulation) bool { return action.duration.GetDuration(sim) > 0 } +func (action *APLActionWait) IsOffGCDAction() bool { + return false +} + func (action *APLActionWait) Execute(sim *Simulation) { action.unit.Rotation.pushControllingAction(action) action.curWaitTime = sim.CurrentTime + action.duration.GetDuration(sim) @@ -47,6 +51,10 @@ func (action *APLActionWait) Execute(sim *Simulation) { sim.AddPendingAction(pa) } +func (action *APLActionWait) ExecuteOffGCD(sim *Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} + func (action *APLActionWait) GetNextAction(sim *Simulation) *APLAction { if sim.CurrentTime >= action.curWaitTime { action.unit.Rotation.popControllingAction(action) @@ -85,6 +93,10 @@ func (action *APLActionWaitUntil) IsReady(sim *Simulation) bool { return !action.condition.GetBool(sim) } +func (action *APLActionWaitUntil) IsOffGCDAction() bool { + return false +} + func (action *APLActionWaitUntil) Execute(sim *Simulation) { action.unit.Rotation.pushControllingAction(action) } @@ -98,10 +110,101 @@ func (action *APLActionWaitUntil) GetNextAction(sim *Simulation) *APLAction { } } +func (action *APLActionWaitUntil) ExecuteOffGCD(sim *Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} + func (action *APLActionWaitUntil) String() string { return fmt.Sprintf("WaitUntil(%s)", action.condition) } +type APLActionRelativeSchedule struct { + defaultAPLActionImpl + innerAction *APLAction + + timing time.Duration + prevTime time.Duration +} + +func (rot *APLRotation) newActionRelativeSchedule(config *proto.APLActionRelativeSchedule) APLActionImpl { + innerAction := rot.newAPLAction(config.InnerAction) + if innerAction == nil { + return nil + } + + timing := 1 * time.Second + valid := true + + if durVal, err := time.ParseDuration(strings.TrimSpace(config.Schedule)); err == nil { + timing = durVal + } else { + rot.ValidationWarning("Invalid duration value '%s'", strings.TrimSpace(config.Schedule)) + valid = false + } + + if !valid { + return nil + } + + return &APLActionRelativeSchedule{ + innerAction: innerAction, + timing: timing, + prevTime: -1 * time.Second, + } +} +func (action *APLActionRelativeSchedule) Reset(*Simulation) { +} +func (action *APLActionRelativeSchedule) GetInnerActions() []*APLAction { + return []*APLAction{action.innerAction} +} +func (action *APLActionRelativeSchedule) IsReady(sim *Simulation) bool { + isReady := action.innerAction.IsReady(sim) && (action.prevTime != (sim.CurrentTime + action.timing)) + + return isReady +} + +func (action *APLActionRelativeSchedule) IsOffGCDAction() bool { + return action.innerAction.impl.IsOffGCDAction() +} + +func (action *APLActionRelativeSchedule) Execute(sim *Simulation) { + action.prevTime = sim.CurrentTime + action.timing + scheduledTime := action.prevTime + + if action.IsOffGCDAction() { + + //if sim.Log != nil { + // sim.Log("APLActionRelativeSchedule Execute Scheduling delayed off GCD action for %f", scheduledTime) + //} + StartDelayedAction(sim, DelayedActionOptions{ + DoAt: scheduledTime, + OnAction: func(s *Simulation) { + action.innerAction.ExecuteOffGCD(sim, scheduledTime) + }, + }) + } else { + //if sim.Log != nil { + // sim.Log("APLActionRelativeSchedule Execute Scheduling delayed on GCD action ") + //} + StartDelayedAction(sim, DelayedActionOptions{ + DoAt: scheduledTime, + OnAction: func(s *Simulation) { + if action.innerAction.IsReady(sim) { // Need to check as there is no guarantee it will be ready + action.innerAction.Execute(sim) + } + }, + }) + } +} + +func (action *APLActionRelativeSchedule) ExecuteOffGCD(sim *Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} + +func (action *APLActionRelativeSchedule) String() string { + return fmt.Sprintf("RelativeSchedule(%s, %s)", action.timing, action.innerAction) +} + type APLActionSchedule struct { defaultAPLActionImpl innerAction *APLAction @@ -147,16 +250,223 @@ func (action *APLActionSchedule) GetInnerActions() []*APLAction { return []*APLAction{action.innerAction} } func (action *APLActionSchedule) IsReady(sim *Simulation) bool { - return action.nextTimingIdx < len(action.timings) && - sim.CurrentTime >= action.timings[action.nextTimingIdx] && - action.innerAction.IsReady(sim) + + //if sim.Log != nil { + // sim.Log("APLActionSchedule IsReady timing index is %d", action.nextTimingIdx) + //} + + checkA := action.nextTimingIdx < len(action.timings) + checkB := false + + if checkA { + if action.IsOffGCDAction() { + //if sim.Log != nil { + // sim.Log("Scheduled action is offGCD B check") + //} + checkB = sim.CurrentTime >= action.timings[action.nextTimingIdx]-(time.Millisecond*1500) + } else { + //if sim.Log != nil { + // sim.Log("Scheduled action is regular B check") + //} + checkB = sim.CurrentTime >= action.timings[action.nextTimingIdx] + } + } + + checkC := action.innerAction.IsReady(sim) + isReady := checkA && checkB && checkC + + //if sim.Log != nil && isReady { + // sim.Log("Scheduled action is ready") + //} + //if sim.Log != nil && !isReady { + // sim.Log("Scheduled action is not ready") + // if checkA { + // sim.Log("Scheduled action is not ready currentTime %f nextactionTime %f ", sim.CurrentTime, action.timings[action.nextTimingIdx]) + // } + // sim.Log("Scheduled action is not ready reason %t %t %t", checkA, checkB, checkC) + //} + return isReady +} + +func (action *APLActionSchedule) IsOffGCDAction() bool { + return action.innerAction.impl.IsOffGCDAction() } func (action *APLActionSchedule) Execute(sim *Simulation) { - action.nextTimingIdx++ - action.innerAction.Execute(sim) + + //if sim.Log != nil { + // sim.Log("APLActionSchedule Execute timing index is %d", action.nextTimingIdx) + //} + + if action.IsOffGCDAction() { + offGCDTime := action.timings[action.nextTimingIdx] + + //if sim.Log != nil { + // sim.Log("APLActionSchedule Execute Scheduling delayed off GCD action for %f", offGCDTime) + //} + StartDelayedAction(sim, DelayedActionOptions{ + DoAt: offGCDTime, + OnAction: func(s *Simulation) { + action.innerAction.ExecuteOffGCD(sim, offGCDTime) + }, + }) + //action.innerAction.ExecuteOffGCD(sim, offGCDTime) + action.nextTimingIdx++ + } else { + //if sim.Log != nil { + // sim.Log("APLActionSchedule Execute Scheduling non-delayed action ") + //} + action.nextTimingIdx++ + action.innerAction.Execute(sim) + } +} + +func (action *APLActionSchedule) ExecuteOffGCD(sim *Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action } func (action *APLActionSchedule) String() string { return fmt.Sprintf("Schedule(%s, %s)", action.timings, action.innerAction) } + +type APLActionPeriodicSchedule struct { + defaultAPLActionImpl + innerAction *APLAction + + timings []time.Duration + period time.Duration + nextTimingIdx int +} + +func (rot *APLRotation) newActionPeriodicSchedule(config *proto.APLActionPeriodicSchedule) APLActionImpl { + innerAction := rot.newAPLAction(config.InnerAction) + if innerAction == nil { + return nil + } + + timingStrs := strings.Split(config.Schedule, ",") + if len(timingStrs) != 2 { + return nil + } + + timings := make([]time.Duration, len(timingStrs)) + valid := true + period := 1 * time.Second + for i, timingStr := range timingStrs { + if durVal, err := time.ParseDuration(strings.TrimSpace(timingStr)); err == nil { + timings[i] = durVal + if i == 1 { + period = durVal + + if timings[1] == 0 { + rot.ValidationWarning("Invalid periodic duration value '%s'", strings.TrimSpace(timingStr)) + valid = false + } + timings[1] = timings[0] + durVal + } + } else { + rot.ValidationWarning("Invalid duration value '%s'", strings.TrimSpace(timingStr)) + valid = false + } + } + if !valid { + return nil + } + + return &APLActionPeriodicSchedule{ + innerAction: innerAction, + timings: timings, + period: period, + } +} +func (action *APLActionPeriodicSchedule) Reset(*Simulation) { + action.nextTimingIdx = 0 +} +func (action *APLActionPeriodicSchedule) GetInnerActions() []*APLAction { + return []*APLAction{action.innerAction} +} +func (action *APLActionPeriodicSchedule) IsReady(sim *Simulation) bool { + + //if sim.Log != nil { + // sim.Log("APLActionPeriodicSchedule IsReady timing index is %d", action.nextTimingIdx) + //} + + checkA := action.nextTimingIdx < len(action.timings) + checkB := false + + if checkA { + if action.IsOffGCDAction() { + //if sim.Log != nil { + // sim.Log("Scheduled action is offGCD B check") + //} + checkB = sim.CurrentTime >= action.timings[action.nextTimingIdx]-(time.Millisecond*1500) + } else { + //if sim.Log != nil { + // sim.Log("Scheduled action is regular B check") + //} + checkB = sim.CurrentTime >= action.timings[action.nextTimingIdx] + } + } + + checkC := action.innerAction.IsReady(sim) + isReady := checkA && checkB && checkC + + //if sim.Log != nil && isReady { + // sim.Log("Scheduled action is ready") + //} + //if sim.Log != nil && !isReady { + // sim.Log("Scheduled action is not ready") + // if checkA { + // sim.Log("Scheduled action is not ready currentTime %f nextactionTime %f ", sim.CurrentTime, action.timings[action.nextTimingIdx]) + // } + // sim.Log("Scheduled action is not ready reason %t %t %t", checkA, checkB, checkC) + //} + return isReady +} + +func (action *APLActionPeriodicSchedule) IsOffGCDAction() bool { + return action.innerAction.impl.IsOffGCDAction() +} + +func (action *APLActionPeriodicSchedule) Execute(sim *Simulation) { + + //if sim.Log != nil { + // sim.Log("APLActionPeriodicSchedule Execute timing index is %d", action.nextTimingIdx) + //} + + if action.IsOffGCDAction() { + offGCDTime := action.timings[action.nextTimingIdx] + + //if sim.Log != nil { + // sim.Log("APLActionPeriodicSchedule Execute Scheduling delayed off GCD action for %f", offGCDTime) + //} + StartDelayedAction(sim, DelayedActionOptions{ + DoAt: offGCDTime, + OnAction: func(s *Simulation) { + action.innerAction.ExecuteOffGCD(sim, offGCDTime) + }, + }) + + action.nextTimingIdx++ + if action.nextTimingIdx >= len(action.timings) { + action.timings = append(action.timings, action.timings[action.nextTimingIdx-1]+action.period) + } + } else { + //if sim.Log != nil { + // sim.Log("APLActionPeriodicSchedule Execute Scheduling non-delayed action ") + //} + action.nextTimingIdx++ + if action.nextTimingIdx >= len(action.timings) { + action.timings = append(action.timings, action.timings[action.nextTimingIdx-1]+action.period) + } + action.innerAction.Execute(sim) + } +} + +func (action *APLActionPeriodicSchedule) ExecuteOffGCD(sim *Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} + +func (action *APLActionPeriodicSchedule) String() string { + return fmt.Sprintf("PeriodicSchedule(%s, %s)", action.timings, action.innerAction) +} diff --git a/sim/druid/balance/TestBalance.results b/sim/druid/balance/TestBalance.results index ff1c6c0a61..809e8c7323 100644 --- a/sim/druid/balance/TestBalance.results +++ b/sim/druid/balance/TestBalance.results @@ -445,9 +445,9 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: -0.9318 + weights: -0.11858 weights: 0 - weights: 2.80172 + weights: 2.80217 weights: 0 weights: 0 weights: 0 @@ -456,7 +456,7 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 32.8774 + weights: 31.48077 weights: 0 weights: 0 weights: 0 @@ -995,113 +995,113 @@ dps_results: { dps_results: { key: "TestBalance-Phase5-Lvl60-AllItems-BloodGuard'sCracklingLeather" value: { - dps: 1458.56635 - tps: 1476.92569 + dps: 1458.63776 + tps: 1476.9971 } } dps_results: { key: "TestBalance-Phase5-Lvl60-AllItems-BloodGuard'sLeather" value: { - dps: 1356.31886 - tps: 1374.65362 + dps: 1356.67809 + tps: 1375.01284 } } dps_results: { key: "TestBalance-Phase5-Lvl60-AllItems-BloodGuard'sRestoredLeather" value: { - dps: 1336.39897 - tps: 1354.57148 + dps: 1336.62252 + tps: 1354.79503 } } dps_results: { key: "TestBalance-Phase5-Lvl60-AllItems-CoagulateBloodguard'sLeathers" value: { - dps: 1986.97173 - tps: 1911.79031 + dps: 1987.27483 + tps: 1913.2051 } } dps_results: { key: "TestBalance-Phase5-Lvl60-AllItems-EmeraldDreamkeeperGarb" value: { - dps: 1341.96291 - tps: 1360.16 + dps: 1341.24212 + tps: 1359.44413 } } dps_results: { key: "TestBalance-Phase5-Lvl60-AllItems-EmeraldLeathers" value: { - dps: 1355.30376 - tps: 1373.63852 + dps: 1355.66298 + tps: 1373.99774 } } dps_results: { key: "TestBalance-Phase5-Lvl60-AllItems-EmeraldWatcherVestments" value: { - dps: 1405.97594 - tps: 1424.1337 + dps: 1405.81278 + tps: 1423.97054 } } dps_results: { key: "TestBalance-Phase5-Lvl60-AllItems-ExiledProphet'sRaiment" value: { - dps: 2020.54896 - tps: 1944.32665 + dps: 2020.67352 + tps: 1944.45122 } } dps_results: { key: "TestBalance-Phase5-Lvl60-AllItems-FeralheartRaiment" value: { - dps: 1232.66017 - tps: 1250.94651 + dps: 1231.91586 + tps: 1250.19237 } } dps_results: { key: "TestBalance-Phase5-Lvl60-AllItems-Knight-Lieutenant'sCracklingLeather" value: { - dps: 1458.56635 - tps: 1476.92569 + dps: 1458.63776 + tps: 1476.9971 } } dps_results: { key: "TestBalance-Phase5-Lvl60-AllItems-Knight-Lieutenant'sLeather" value: { - dps: 1356.31886 - tps: 1374.65362 + dps: 1356.67809 + tps: 1375.01284 } } dps_results: { key: "TestBalance-Phase5-Lvl60-AllItems-Knight-Lieutenant'sRestoredLeather" value: { - dps: 1336.39897 - tps: 1354.57148 + dps: 1336.62252 + tps: 1354.79503 } } dps_results: { key: "TestBalance-Phase5-Lvl60-AllItems-LostWorshipper'sArmor" value: { - dps: 2108.77655 - tps: 2042.51355 + dps: 2108.94811 + tps: 2043.60183 } } dps_results: { key: "TestBalance-Phase5-Lvl60-Average-Default" value: { - dps: 4447.03401 - tps: 4313.98692 + dps: 4447.38202 + tps: 4314.29235 } } dps_results: { key: "TestBalance-Phase5-Lvl60-Settings-NightElf-phase_5-Default-phase_5-FullBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 6296.28259 - tps: 6584.47242 + dps: 6299.42711 + tps: 6587.42027 } } dps_results: { key: "TestBalance-Phase5-Lvl60-Settings-NightElf-phase_5-Default-phase_5-FullBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 4385.38379 - tps: 4242.37957 + dps: 4384.05711 + tps: 4241.06272 } } dps_results: { @@ -1114,15 +1114,15 @@ dps_results: { dps_results: { key: "TestBalance-Phase5-Lvl60-Settings-NightElf-phase_5-Default-phase_5-NoBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 2889.14057 - tps: 3001.58154 + dps: 2889.29892 + tps: 3001.7044 } } dps_results: { key: "TestBalance-Phase5-Lvl60-Settings-NightElf-phase_5-Default-phase_5-NoBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 2006.72752 - tps: 1939.99736 + dps: 2007.28473 + tps: 1940.55457 } } dps_results: { @@ -1135,15 +1135,15 @@ dps_results: { dps_results: { key: "TestBalance-Phase5-Lvl60-Settings-Tauren-phase_5-Default-phase_5-FullBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 6201.30625 - tps: 6487.45891 + dps: 6206.21175 + tps: 6492.46274 } } dps_results: { key: "TestBalance-Phase5-Lvl60-Settings-Tauren-phase_5-Default-phase_5-FullBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 4381.59552 - tps: 4238.80736 + dps: 4378.46339 + tps: 4235.18439 } } dps_results: { @@ -1156,15 +1156,15 @@ dps_results: { dps_results: { key: "TestBalance-Phase5-Lvl60-Settings-Tauren-phase_5-Default-phase_5-NoBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 2886.95281 - tps: 2998.70681 + dps: 2886.78666 + tps: 2998.44078 } } dps_results: { key: "TestBalance-Phase5-Lvl60-Settings-Tauren-phase_5-Default-phase_5-NoBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 2011.83414 - tps: 1943.60359 + dps: 2011.82576 + tps: 1943.5952 } } dps_results: { @@ -1177,7 +1177,7 @@ dps_results: { dps_results: { key: "TestBalance-Phase5-Lvl60-SwitchInFrontOfTarget-Default" value: { - dps: 4412.50121 - tps: 4268.70275 + dps: 4412.29488 + tps: 4268.49642 } } diff --git a/sim/druid/feral/TestFeral.results b/sim/druid/feral/TestFeral.results index 126f8dd4fa..4ddfbf173c 100644 --- a/sim/druid/feral/TestFeral.results +++ b/sim/druid/feral/TestFeral.results @@ -295,8 +295,8 @@ stat_weights_results: { stat_weights_results: { key: "TestFeral-Phase2-Lvl40-StatWeights-Default" value: { - weights: 0.94445 - weights: 1.02691 + weights: 0.94594 + weights: 0.97485 weights: 0 weights: 0 weights: 0 @@ -312,9 +312,9 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 0.41281 - weights: 4.83242 - weights: 5.45266 + weights: 0.41346 + weights: 4.76229 + weights: 5.78957 weights: 0 weights: 0 weights: 0 @@ -344,8 +344,8 @@ stat_weights_results: { stat_weights_results: { key: "TestFeral-Phase3-Lvl50-StatWeights-Default" value: { - weights: 1.51638 - weights: 1.61816 + weights: 1.51371 + weights: 1.62225 weights: 0 weights: 0 weights: 0 @@ -361,9 +361,9 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 0.63821 - weights: 16.71662 - weights: 11.8052 + weights: 0.63708 + weights: 16.42342 + weights: 11.74783 weights: 0 weights: 0 weights: 0 @@ -393,8 +393,8 @@ stat_weights_results: { stat_weights_results: { key: "TestFeral-Phase4-Lvl60-StatWeights-Default" value: { - weights: 2.10198 - weights: 2.29903 + weights: 2.10169 + weights: 2.95304 weights: 0 weights: 0 weights: 0 @@ -410,9 +410,9 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 0.79621 + weights: 0.79609 weights: 0 - weights: 24.06366 + weights: 23.90886 weights: 0 weights: 0 weights: 0 @@ -442,8 +442,8 @@ stat_weights_results: { stat_weights_results: { key: "TestFeral-Phase5-Lvl60-StatWeights-Default" value: { - weights: 2.78722 - weights: 2.42429 + weights: 2.78998 + weights: 2.36785 weights: 0 weights: 0 weights: 0 @@ -459,9 +459,9 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 0.91806 + weights: 0.91897 weights: 0 - weights: 22.26447 + weights: 22.73454 weights: 0 weights: 0 weights: 0 @@ -771,260 +771,260 @@ dps_results: { dps_results: { key: "TestFeral-Phase2-Lvl40-Average-Default" value: { - dps: 803.37838 - tps: 586.00606 + dps: 802.9137 + tps: 585.69904 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-NightElf-phase_2-Default-NoBleed-phase_2-FullBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 495.06327 - tps: 392.06085 + dps: 494.93354 + tps: 392.06825 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-NightElf-phase_2-Default-NoBleed-phase_2-FullBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 460.40739 - tps: 332.31019 + dps: 460.27766 + tps: 332.2434 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-NightElf-phase_2-Default-NoBleed-phase_2-FullBuffs-P2-Consumes-ShortSingleTarget" value: { - dps: 573.95949 - tps: 426.89892 + dps: 571.53236 + tps: 425.22963 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-NightElf-phase_2-Default-NoBleed-phase_2-NoBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 287.73721 - tps: 216.36583 + dps: 287.92683 + tps: 214.55599 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-NightElf-phase_2-Default-NoBleed-phase_2-NoBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 270.49596 - tps: 194.74383 + dps: 270.67308 + tps: 194.7721 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-NightElf-phase_2-Default-NoBleed-phase_2-NoBuffs-P2-Consumes-ShortSingleTarget" value: { - dps: 344.09267 - tps: 257.76428 + dps: 343.27479 + tps: 256.69616 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-NightElf-phase_2-Default-phase_2-FullBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 495.06327 - tps: 392.06085 + dps: 494.93354 + tps: 392.06825 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-NightElf-phase_2-Default-phase_2-FullBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 460.40739 - tps: 332.31019 + dps: 460.27766 + tps: 332.2434 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-NightElf-phase_2-Default-phase_2-FullBuffs-P2-Consumes-ShortSingleTarget" value: { - dps: 573.95949 - tps: 426.89892 + dps: 571.53236 + tps: 425.22963 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-NightElf-phase_2-Default-phase_2-NoBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 287.73721 - tps: 216.36583 + dps: 287.92683 + tps: 214.55599 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-NightElf-phase_2-Default-phase_2-NoBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 270.49596 - tps: 194.74383 + dps: 270.67308 + tps: 194.7721 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-NightElf-phase_2-Default-phase_2-NoBuffs-P2-Consumes-ShortSingleTarget" value: { - dps: 344.09267 - tps: 257.76428 + dps: 343.27479 + tps: 256.69616 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-NightElf-phase_2-Flower-Aoe-phase_2-FullBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 495.06327 - tps: 392.06085 + dps: 494.93354 + tps: 392.06825 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-NightElf-phase_2-Flower-Aoe-phase_2-FullBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 460.40739 - tps: 332.31019 + dps: 460.27766 + tps: 332.2434 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-NightElf-phase_2-Flower-Aoe-phase_2-FullBuffs-P2-Consumes-ShortSingleTarget" value: { - dps: 573.95949 - tps: 426.89892 + dps: 571.53236 + tps: 425.22963 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-NightElf-phase_2-Flower-Aoe-phase_2-NoBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 287.73721 - tps: 216.36583 + dps: 287.92683 + tps: 214.55599 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-NightElf-phase_2-Flower-Aoe-phase_2-NoBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 270.49596 - tps: 194.74383 + dps: 270.67308 + tps: 194.7721 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-NightElf-phase_2-Flower-Aoe-phase_2-NoBuffs-P2-Consumes-ShortSingleTarget" value: { - dps: 344.09267 - tps: 257.76428 + dps: 343.27479 + tps: 256.69616 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-Tauren-phase_2-Default-NoBleed-phase_2-FullBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 495.77207 - tps: 391.731 + dps: 494.70875 + tps: 391.02602 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-Tauren-phase_2-Default-NoBleed-phase_2-FullBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 460.41075 - tps: 332.315 + dps: 460.06238 + tps: 332.08055 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-Tauren-phase_2-Default-NoBleed-phase_2-FullBuffs-P2-Consumes-ShortSingleTarget" value: { - dps: 574.27838 - tps: 427.30376 + dps: 571.49408 + tps: 425.32821 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-Tauren-phase_2-Default-NoBleed-phase_2-NoBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 288.01464 - tps: 218.42999 + dps: 287.40519 + tps: 217.02425 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-Tauren-phase_2-Default-NoBleed-phase_2-NoBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 270.93339 - tps: 195.14296 + dps: 270.32394 + tps: 194.67213 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-Tauren-phase_2-Default-NoBleed-phase_2-NoBuffs-P2-Consumes-ShortSingleTarget" value: { - dps: 344.42307 - tps: 258.44165 + dps: 343.72094 + tps: 257.75255 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-Tauren-phase_2-Default-phase_2-FullBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 495.77207 - tps: 391.731 + dps: 494.70875 + tps: 391.02602 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-Tauren-phase_2-Default-phase_2-FullBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 460.41075 - tps: 332.315 + dps: 460.06238 + tps: 332.08055 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-Tauren-phase_2-Default-phase_2-FullBuffs-P2-Consumes-ShortSingleTarget" value: { - dps: 574.27838 - tps: 427.30376 + dps: 571.49408 + tps: 425.32821 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-Tauren-phase_2-Default-phase_2-NoBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 288.01464 - tps: 218.42999 + dps: 287.40519 + tps: 217.02425 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-Tauren-phase_2-Default-phase_2-NoBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 270.93339 - tps: 195.14296 + dps: 270.32394 + tps: 194.67213 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-Tauren-phase_2-Default-phase_2-NoBuffs-P2-Consumes-ShortSingleTarget" value: { - dps: 344.42307 - tps: 258.44165 + dps: 343.72094 + tps: 257.75255 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-Tauren-phase_2-Flower-Aoe-phase_2-FullBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 495.77207 - tps: 391.731 + dps: 494.70875 + tps: 391.02602 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-Tauren-phase_2-Flower-Aoe-phase_2-FullBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 460.41075 - tps: 332.315 + dps: 460.06238 + tps: 332.08055 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-Tauren-phase_2-Flower-Aoe-phase_2-FullBuffs-P2-Consumes-ShortSingleTarget" value: { - dps: 574.27838 - tps: 427.30376 + dps: 571.49408 + tps: 425.32821 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-Tauren-phase_2-Flower-Aoe-phase_2-NoBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 288.01464 - tps: 218.42999 + dps: 287.40519 + tps: 217.02425 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-Tauren-phase_2-Flower-Aoe-phase_2-NoBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 270.93339 - tps: 195.14296 + dps: 270.32394 + tps: 194.67213 } } dps_results: { key: "TestFeral-Phase2-Lvl40-Settings-Tauren-phase_2-Flower-Aoe-phase_2-NoBuffs-P2-Consumes-ShortSingleTarget" value: { - dps: 344.42307 - tps: 258.44165 + dps: 343.72094 + tps: 257.75255 } } dps_results: { @@ -1045,326 +1045,326 @@ dps_results: { dps_results: { key: "TestFeral-Phase3-Lvl50-Average-Default" value: { - dps: 1883.19205 - tps: 1347.46916 - hps: 10.23573 + dps: 1880.83445 + tps: 1345.8214 + hps: 10.22905 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-NightElf-phase_3-Default-NoBleed-phase_3-FullBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 1348.16294 - tps: 1068.11345 - hps: 6.98502 + dps: 1350.29332 + tps: 1072.05986 + hps: 7.01307 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-NightElf-phase_3-Default-NoBleed-phase_3-FullBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 1275.30935 - tps: 911.05043 - hps: 7.06116 + dps: 1277.41265 + tps: 912.66546 + hps: 7.08521 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-NightElf-phase_3-Default-NoBleed-phase_3-FullBuffs-P3-Consumes-ShortSingleTarget" value: { - dps: 1436.01366 - tps: 1022.92126 + dps: 1435.83257 + tps: 1022.79268 hps: 7.2131 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-NightElf-phase_3-Default-NoBleed-phase_3-NoBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 638.49717 - tps: 531.56795 - hps: 4.202 + dps: 639.38043 + tps: 532.40323 + hps: 4.19467 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-NightElf-phase_3-Default-NoBleed-phase_3-NoBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 612.88253 - tps: 439.24266 - hps: 4.25333 + dps: 613.72421 + tps: 439.85065 + hps: 4.246 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-NightElf-phase_3-Default-NoBleed-phase_3-NoBuffs-P3-Consumes-ShortSingleTarget" value: { - dps: 744.37964 - tps: 532.88105 + dps: 744.27586 + tps: 532.80736 hps: 4.87667 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-NightElf-phase_3-Default-phase_3-FullBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 1348.16294 - tps: 1068.11345 - hps: 6.98502 + dps: 1350.29332 + tps: 1072.05986 + hps: 7.01307 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-NightElf-phase_3-Default-phase_3-FullBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 1275.30935 - tps: 911.05043 - hps: 7.06116 + dps: 1277.41265 + tps: 912.66546 + hps: 7.08521 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-NightElf-phase_3-Default-phase_3-FullBuffs-P3-Consumes-ShortSingleTarget" value: { - dps: 1436.01366 - tps: 1022.92126 + dps: 1435.83257 + tps: 1022.79268 hps: 7.2131 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-NightElf-phase_3-Default-phase_3-NoBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 638.49717 - tps: 531.56795 - hps: 4.202 + dps: 639.38043 + tps: 532.40323 + hps: 4.19467 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-NightElf-phase_3-Default-phase_3-NoBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 612.88253 - tps: 439.24266 - hps: 4.25333 + dps: 613.72421 + tps: 439.85065 + hps: 4.246 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-NightElf-phase_3-Default-phase_3-NoBuffs-P3-Consumes-ShortSingleTarget" value: { - dps: 744.37964 - tps: 532.88105 + dps: 744.27586 + tps: 532.80736 hps: 4.87667 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-NightElf-phase_3-Flower-Aoe-phase_3-FullBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 1348.16294 - tps: 1068.11345 - hps: 6.98502 + dps: 1350.29332 + tps: 1072.05986 + hps: 7.01307 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-NightElf-phase_3-Flower-Aoe-phase_3-FullBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 1275.30935 - tps: 911.05043 - hps: 7.06116 + dps: 1277.41265 + tps: 912.66546 + hps: 7.08521 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-NightElf-phase_3-Flower-Aoe-phase_3-FullBuffs-P3-Consumes-ShortSingleTarget" value: { - dps: 1436.01366 - tps: 1022.92126 + dps: 1435.83257 + tps: 1022.79268 hps: 7.2131 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-NightElf-phase_3-Flower-Aoe-phase_3-NoBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 638.49717 - tps: 531.56795 - hps: 4.202 + dps: 639.38043 + tps: 532.40323 + hps: 4.19467 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-NightElf-phase_3-Flower-Aoe-phase_3-NoBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 612.88253 - tps: 439.24266 - hps: 4.25333 + dps: 613.72421 + tps: 439.85065 + hps: 4.246 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-NightElf-phase_3-Flower-Aoe-phase_3-NoBuffs-P3-Consumes-ShortSingleTarget" value: { - dps: 744.37964 - tps: 532.88105 + dps: 744.27586 + tps: 532.80736 hps: 4.87667 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-Tauren-phase_3-Default-NoBleed-phase_3-FullBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 1378.13303 - tps: 1101.98561 - hps: 6.98702 + dps: 1380.20132 + tps: 1103.33682 + hps: 6.99304 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-Tauren-phase_3-Default-NoBleed-phase_3-FullBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 1305.35391 - tps: 933.09281 - hps: 7.06116 + dps: 1307.40884 + tps: 934.5231 + hps: 7.06517 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-Tauren-phase_3-Default-NoBleed-phase_3-FullBuffs-P3-Consumes-ShortSingleTarget" value: { - dps: 1471.681 - tps: 1048.25471 + dps: 1471.67727 + tps: 1048.25207 hps: 7.2131 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-Tauren-phase_3-Default-NoBleed-phase_3-NoBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 636.10185 - tps: 527.6207 - hps: 4.16533 + dps: 638.69219 + tps: 531.79051 + hps: 4.20933 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-Tauren-phase_3-Default-NoBleed-phase_3-NoBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 610.41729 - tps: 437.39167 - hps: 4.224 + dps: 613.03261 + tps: 439.36508 + hps: 4.268 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-Tauren-phase_3-Default-NoBleed-phase_3-NoBuffs-P3-Consumes-ShortSingleTarget" value: { - dps: 740.85134 - tps: 531.16316 + dps: 740.74732 + tps: 531.0893 hps: 4.87667 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-Tauren-phase_3-Default-phase_3-FullBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 1378.13303 - tps: 1101.98561 - hps: 6.98702 + dps: 1380.20132 + tps: 1103.33682 + hps: 6.99304 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-Tauren-phase_3-Default-phase_3-FullBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 1305.35391 - tps: 933.09281 - hps: 7.06116 + dps: 1307.40884 + tps: 934.5231 + hps: 7.06517 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-Tauren-phase_3-Default-phase_3-FullBuffs-P3-Consumes-ShortSingleTarget" value: { - dps: 1471.681 - tps: 1048.25471 + dps: 1471.67727 + tps: 1048.25207 hps: 7.2131 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-Tauren-phase_3-Default-phase_3-NoBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 636.10185 - tps: 527.6207 - hps: 4.16533 + dps: 638.69219 + tps: 531.79051 + hps: 4.20933 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-Tauren-phase_3-Default-phase_3-NoBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 610.41729 - tps: 437.39167 - hps: 4.224 + dps: 613.03261 + tps: 439.36508 + hps: 4.268 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-Tauren-phase_3-Default-phase_3-NoBuffs-P3-Consumes-ShortSingleTarget" value: { - dps: 740.85134 - tps: 531.16316 + dps: 740.74732 + tps: 531.0893 hps: 4.87667 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-Tauren-phase_3-Flower-Aoe-phase_3-FullBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 1378.13303 - tps: 1101.98561 - hps: 6.98702 + dps: 1380.20132 + tps: 1103.33682 + hps: 6.99304 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-Tauren-phase_3-Flower-Aoe-phase_3-FullBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 1305.35391 - tps: 933.09281 - hps: 7.06116 + dps: 1307.40884 + tps: 934.5231 + hps: 7.06517 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-Tauren-phase_3-Flower-Aoe-phase_3-FullBuffs-P3-Consumes-ShortSingleTarget" value: { - dps: 1471.681 - tps: 1048.25471 + dps: 1471.67727 + tps: 1048.25207 hps: 7.2131 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-Tauren-phase_3-Flower-Aoe-phase_3-NoBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 636.10185 - tps: 527.6207 - hps: 4.16533 + dps: 638.69219 + tps: 531.79051 + hps: 4.20933 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-Tauren-phase_3-Flower-Aoe-phase_3-NoBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 610.41729 - tps: 437.39167 - hps: 4.224 + dps: 613.03261 + tps: 439.36508 + hps: 4.268 } } dps_results: { key: "TestFeral-Phase3-Lvl50-Settings-Tauren-phase_3-Flower-Aoe-phase_3-NoBuffs-P3-Consumes-ShortSingleTarget" value: { - dps: 740.85134 - tps: 531.16316 + dps: 740.74732 + tps: 531.0893 hps: 4.87667 } } dps_results: { key: "TestFeral-Phase3-Lvl50-SwitchInFrontOfTarget-Default" value: { - dps: 1241.5312 - tps: 885.22962 - hps: 9.35676 + dps: 1238.2116 + tps: 882.8798 + hps: 9.34874 } } dps_results: { key: "TestFeral-Phase4-Lvl60-AllItems-BloodGuard'sCracklingLeather" value: { - dps: 1314.6924 - tps: 960.21936 + dps: 1314.89285 + tps: 960.35819 } } dps_results: { key: "TestFeral-Phase4-Lvl60-AllItems-BloodGuard'sLeather" value: { - dps: 1363.69219 - tps: 994.99603 + dps: 1363.22684 + tps: 994.74584 } } dps_results: { key: "TestFeral-Phase4-Lvl60-AllItems-BloodGuard'sRestoredLeather" value: { - dps: 1285.22161 - tps: 939.32495 + dps: 1285.03808 + tps: 939.19814 } } dps_results: { @@ -1377,351 +1377,351 @@ dps_results: { dps_results: { key: "TestFeral-Phase4-Lvl60-AllItems-EmeraldDreamkeeperGarb" value: { - dps: 1289.30737 - tps: 942.03505 + dps: 1289.81985 + tps: 942.40589 } } dps_results: { key: "TestFeral-Phase4-Lvl60-AllItems-EmeraldLeathers" value: { - dps: 1356.32766 - tps: 989.75726 + dps: 1355.86631 + tps: 989.50992 } } dps_results: { key: "TestFeral-Phase4-Lvl60-AllItems-EmeraldWatcherVestments" value: { - dps: 1295.93285 - tps: 946.77113 + dps: 1297.01455 + tps: 947.616 } } dps_results: { key: "TestFeral-Phase4-Lvl60-AllItems-ExiledProphet'sRaiment" value: { dps: 1900.20315 - tps: 1375.01524 + tps: 1375.15706 } } dps_results: { key: "TestFeral-Phase4-Lvl60-AllItems-FeralheartRaiment" value: { - dps: 1394.39894 - tps: 1016.7611 + dps: 1394.85355 + tps: 1017.08387 } } dps_results: { key: "TestFeral-Phase4-Lvl60-AllItems-Knight-Lieutenant'sCracklingLeather" value: { - dps: 1314.6924 - tps: 960.21936 + dps: 1314.89285 + tps: 960.35819 } } dps_results: { key: "TestFeral-Phase4-Lvl60-AllItems-Knight-Lieutenant'sLeather" value: { - dps: 1363.69219 - tps: 994.99603 + dps: 1363.22684 + tps: 994.74584 } } dps_results: { key: "TestFeral-Phase4-Lvl60-AllItems-Knight-Lieutenant'sRestoredLeather" value: { - dps: 1285.22161 - tps: 939.32495 + dps: 1285.03808 + tps: 939.19814 } } dps_results: { key: "TestFeral-Phase4-Lvl60-AllItems-LostWorshipper'sArmor" value: { dps: 1954.88611 - tps: 1415.12921 + tps: 1415.20593 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Average-Default" value: { - dps: 3673.23248 - tps: 2631.56809 + dps: 3671.32035 + tps: 2630.26716 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-NightElf-phase_4-Default-NoBleed-phase_4-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 16323.52455 - tps: 11881.41938 + dps: 16148.92562 + tps: 11758.19863 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-NightElf-phase_4-Default-NoBleed-phase_4-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 2444.69831 - tps: 1751.40161 + dps: 2452.02571 + tps: 1756.5634 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-NightElf-phase_4-Default-NoBleed-phase_4-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 2720.52557 - tps: 1943.81982 + dps: 2721.40982 + tps: 1944.44423 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-NightElf-phase_4-Default-NoBleed-phase_4-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 6823.84005 - tps: 4999.83933 + dps: 6741.04518 + tps: 4941.59758 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-NightElf-phase_4-Default-NoBleed-phase_4-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 1194.61006 - tps: 856.63872 + dps: 1192.25349 + tps: 855.16179 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-NightElf-phase_4-Default-NoBleed-phase_4-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 1487.64553 - tps: 1063.41531 + dps: 1485.10791 + tps: 1061.6136 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-NightElf-phase_4-Default-phase_4-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 16323.52455 - tps: 11881.41938 + dps: 16148.92562 + tps: 11758.19863 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-NightElf-phase_4-Default-phase_4-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 2444.69831 - tps: 1751.40161 + dps: 2452.02571 + tps: 1756.5634 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-NightElf-phase_4-Default-phase_4-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 2720.52557 - tps: 1943.81982 + dps: 2721.40982 + tps: 1944.44423 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-NightElf-phase_4-Default-phase_4-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 6823.84005 - tps: 4999.83933 + dps: 6741.04518 + tps: 4941.59758 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-NightElf-phase_4-Default-phase_4-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 1194.61006 - tps: 856.63872 + dps: 1192.25349 + tps: 855.16179 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-NightElf-phase_4-Default-phase_4-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 1487.64553 - tps: 1063.41531 + dps: 1485.10791 + tps: 1061.6136 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-NightElf-phase_4-Flower-Aoe-phase_4-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 16323.52455 - tps: 11881.41938 + dps: 16148.92562 + tps: 11758.19863 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-NightElf-phase_4-Flower-Aoe-phase_4-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 2444.69831 - tps: 1751.40161 + dps: 2452.02571 + tps: 1756.5634 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-NightElf-phase_4-Flower-Aoe-phase_4-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 2720.52557 - tps: 1943.81982 + dps: 2721.40982 + tps: 1944.44423 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-NightElf-phase_4-Flower-Aoe-phase_4-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 6823.84005 - tps: 4999.83933 + dps: 6741.04518 + tps: 4941.59758 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-NightElf-phase_4-Flower-Aoe-phase_4-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 1194.61006 - tps: 856.63872 + dps: 1192.25349 + tps: 855.16179 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-NightElf-phase_4-Flower-Aoe-phase_4-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 1487.64553 - tps: 1063.41531 + dps: 1485.10791 + tps: 1061.6136 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-Tauren-phase_4-Default-NoBleed-phase_4-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 17230.15357 - tps: 12525.33124 + dps: 17053.26444 + tps: 12399.86327 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-Tauren-phase_4-Default-NoBleed-phase_4-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 2581.04158 - tps: 1848.09428 + dps: 2578.97008 + tps: 1846.48533 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-Tauren-phase_4-Default-NoBleed-phase_4-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 2872.11002 - tps: 2051.39611 + dps: 2880.83503 + tps: 2057.59794 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-Tauren-phase_4-Default-NoBleed-phase_4-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 6868.45667 - tps: 5034.46675 + dps: 6812.58161 + tps: 4995.69992 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-Tauren-phase_4-Default-NoBleed-phase_4-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 1191.25725 - tps: 854.25148 + dps: 1195.57443 + tps: 857.13345 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-Tauren-phase_4-Default-NoBleed-phase_4-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 1483.73989 - tps: 1060.6423 + dps: 1480.92741 + tps: 1058.64544 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-Tauren-phase_4-Default-phase_4-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 17230.15357 - tps: 12525.33124 + dps: 17053.26444 + tps: 12399.86327 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-Tauren-phase_4-Default-phase_4-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 2581.04158 - tps: 1848.09428 + dps: 2578.97008 + tps: 1846.48533 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-Tauren-phase_4-Default-phase_4-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 2872.11002 - tps: 2051.39611 + dps: 2880.83503 + tps: 2057.59794 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-Tauren-phase_4-Default-phase_4-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 6868.45667 - tps: 5034.46675 + dps: 6812.58161 + tps: 4995.69992 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-Tauren-phase_4-Default-phase_4-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 1191.25725 - tps: 854.25148 + dps: 1195.57443 + tps: 857.13345 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-Tauren-phase_4-Default-phase_4-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 1483.73989 - tps: 1060.6423 + dps: 1480.92741 + tps: 1058.64544 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-Tauren-phase_4-Flower-Aoe-phase_4-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 17230.15357 - tps: 12525.33124 + dps: 17053.26444 + tps: 12399.86327 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-Tauren-phase_4-Flower-Aoe-phase_4-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 2581.04158 - tps: 1848.09428 + dps: 2578.97008 + tps: 1846.48533 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-Tauren-phase_4-Flower-Aoe-phase_4-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 2872.11002 - tps: 2051.39611 + dps: 2880.83503 + tps: 2057.59794 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-Tauren-phase_4-Flower-Aoe-phase_4-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 6868.45667 - tps: 5034.46675 + dps: 6812.58161 + tps: 4995.69992 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-Tauren-phase_4-Flower-Aoe-phase_4-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 1191.25725 - tps: 854.25148 + dps: 1195.57443 + tps: 857.13345 } } dps_results: { key: "TestFeral-Phase4-Lvl60-Settings-Tauren-phase_4-Flower-Aoe-phase_4-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 1483.73989 - tps: 1060.6423 + dps: 1480.92741 + tps: 1058.64544 } } dps_results: { key: "TestFeral-Phase4-Lvl60-SwitchInFrontOfTarget-Default" value: { - dps: 2734.27196 - tps: 1953.02028 + dps: 2741.20117 + tps: 1958.17974 } } dps_results: { key: "TestFeral-Phase5-Lvl60-AllItems-BloodGuard'sCracklingLeather" value: { - dps: 1377.59081 - tps: 1004.04158 + dps: 1378.25657 + tps: 1004.5974 } } dps_results: { key: "TestFeral-Phase5-Lvl60-AllItems-BloodGuard'sLeather" value: { - dps: 1431.66558 - tps: 1042.87063 + dps: 1434.13965 + tps: 1044.69411 } } dps_results: { key: "TestFeral-Phase5-Lvl60-AllItems-BloodGuard'sRestoredLeather" value: { - dps: 1348.96712 - tps: 983.6285 + dps: 1348.75479 + tps: 983.47426 } } dps_results: { @@ -1734,329 +1734,329 @@ dps_results: { dps_results: { key: "TestFeral-Phase5-Lvl60-AllItems-EmeraldDreamkeeperGarb" value: { - dps: 1354.75271 - tps: 987.97939 + dps: 1355.62539 + tps: 988.60248 } } dps_results: { key: "TestFeral-Phase5-Lvl60-AllItems-EmeraldLeathers" value: { - dps: 1424.3206 - tps: 1037.64572 + dps: 1426.78313 + tps: 1039.461 } } dps_results: { key: "TestFeral-Phase5-Lvl60-AllItems-EmeraldWatcherVestments" value: { - dps: 1361.09757 - tps: 992.41287 + dps: 1361.44558 + tps: 992.65996 } } dps_results: { key: "TestFeral-Phase5-Lvl60-AllItems-ExiledProphet'sRaiment" value: { dps: 2157.17379 - tps: 1556.59203 + tps: 1556.66959 } } dps_results: { key: "TestFeral-Phase5-Lvl60-AllItems-FeralheartRaiment" value: { dps: 1456.27775 - tps: 1058.74733 + tps: 1058.83249 } } dps_results: { key: "TestFeral-Phase5-Lvl60-AllItems-Knight-Lieutenant'sCracklingLeather" value: { - dps: 1377.59081 - tps: 1004.04158 + dps: 1378.25657 + tps: 1004.5974 } } dps_results: { key: "TestFeral-Phase5-Lvl60-AllItems-Knight-Lieutenant'sLeather" value: { - dps: 1431.66558 - tps: 1042.87063 + dps: 1434.13965 + tps: 1044.69411 } } dps_results: { key: "TestFeral-Phase5-Lvl60-AllItems-Knight-Lieutenant'sRestoredLeather" value: { - dps: 1348.96712 - tps: 983.6285 + dps: 1348.75479 + tps: 983.47426 } } dps_results: { key: "TestFeral-Phase5-Lvl60-AllItems-LostWorshipper'sArmor" value: { dps: 2200.18992 - tps: 1587.84763 + tps: 1587.92532 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Average-Default" value: { - dps: 4563.57393 - tps: 3262.9485 + dps: 4560.54564 + tps: 3260.85003 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-NightElf-phase_5-Default-NoBleed-phase_5-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 3374.49385 - tps: 2666.92492 + dps: 3382.23531 + tps: 2678.37673 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-NightElf-phase_5-Default-NoBleed-phase_5-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 3333.33301 - tps: 2382.05968 + dps: 3340.77659 + tps: 2387.49222 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-NightElf-phase_5-Default-NoBleed-phase_5-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 3663.72275 - tps: 2613.20131 + dps: 3658.85302 + tps: 2609.74381 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-NightElf-phase_5-Default-NoBleed-phase_5-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 1480.13533 - tps: 1203.85845 + dps: 1477.80419 + tps: 1207.69479 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-NightElf-phase_5-Default-NoBleed-phase_5-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 1457.88646 - tps: 1044.01818 + dps: 1455.56631 + tps: 1042.55471 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-NightElf-phase_5-Default-NoBleed-phase_5-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 1765.87131 - tps: 1260.95561 + dps: 1764.86602 + tps: 1260.24185 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-NightElf-phase_5-Default-phase_5-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 3374.49385 - tps: 2666.92492 + dps: 3382.23531 + tps: 2678.37673 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-NightElf-phase_5-Default-phase_5-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 3333.33301 - tps: 2382.05968 + dps: 3340.77659 + tps: 2387.49222 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-NightElf-phase_5-Default-phase_5-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 3663.72275 - tps: 2613.20131 + dps: 3658.85302 + tps: 2609.74381 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-NightElf-phase_5-Default-phase_5-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 1480.13533 - tps: 1203.85845 + dps: 1477.80419 + tps: 1207.69479 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-NightElf-phase_5-Default-phase_5-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 1457.88646 - tps: 1044.01818 + dps: 1455.56631 + tps: 1042.55471 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-NightElf-phase_5-Default-phase_5-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 1765.87131 - tps: 1260.95561 + dps: 1764.86602 + tps: 1260.24185 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-NightElf-phase_5-Flower-Aoe-phase_5-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 3374.49385 - tps: 2666.92492 + dps: 3382.23531 + tps: 2678.37673 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-NightElf-phase_5-Flower-Aoe-phase_5-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 3333.33301 - tps: 2382.05968 + dps: 3340.77659 + tps: 2387.49222 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-NightElf-phase_5-Flower-Aoe-phase_5-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 3663.72275 - tps: 2613.20131 + dps: 3658.85302 + tps: 2609.74381 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-NightElf-phase_5-Flower-Aoe-phase_5-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 1480.13533 - tps: 1203.85845 + dps: 1477.80419 + tps: 1207.69479 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-NightElf-phase_5-Flower-Aoe-phase_5-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 1457.88646 - tps: 1044.01818 + dps: 1455.56631 + tps: 1042.55471 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-NightElf-phase_5-Flower-Aoe-phase_5-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 1765.87131 - tps: 1260.95561 + dps: 1764.86602 + tps: 1260.24185 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-Tauren-phase_5-Default-NoBleed-phase_5-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 3335.37628 - tps: 2646.92276 + dps: 3344.76341 + tps: 2655.01598 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-Tauren-phase_5-Default-NoBleed-phase_5-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 3294.2373 - tps: 2355.12701 + dps: 3303.33453 + tps: 2361.44543 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-Tauren-phase_5-Default-NoBleed-phase_5-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 3631.10014 - tps: 2590.04656 + dps: 3626.24235 + tps: 2586.59753 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-Tauren-phase_5-Default-NoBleed-phase_5-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 1484.03672 - tps: 1204.10527 + dps: 1482.29965 + tps: 1204.85669 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-Tauren-phase_5-Default-NoBleed-phase_5-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 1461.4496 - tps: 1046.55281 + dps: 1459.71252 + tps: 1045.32774 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-Tauren-phase_5-Default-NoBleed-phase_5-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 1765.84061 - tps: 1260.93381 + dps: 1764.8383 + tps: 1260.22217 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-Tauren-phase_5-Default-phase_5-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 3335.37628 - tps: 2646.92276 + dps: 3344.76341 + tps: 2655.01598 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-Tauren-phase_5-Default-phase_5-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 3294.2373 - tps: 2355.12701 + dps: 3303.33453 + tps: 2361.44543 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-Tauren-phase_5-Default-phase_5-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 3631.10014 - tps: 2590.04656 + dps: 3626.24235 + tps: 2586.59753 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-Tauren-phase_5-Default-phase_5-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 1484.03672 - tps: 1204.10527 + dps: 1482.29965 + tps: 1204.85669 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-Tauren-phase_5-Default-phase_5-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 1461.4496 - tps: 1046.55281 + dps: 1459.71252 + tps: 1045.32774 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-Tauren-phase_5-Default-phase_5-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 1765.84061 - tps: 1260.93381 + dps: 1764.8383 + tps: 1260.22217 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-Tauren-phase_5-Flower-Aoe-phase_5-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 3335.37628 - tps: 2646.92276 + dps: 3344.76341 + tps: 2655.01598 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-Tauren-phase_5-Flower-Aoe-phase_5-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 3294.2373 - tps: 2355.12701 + dps: 3303.33453 + tps: 2361.44543 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-Tauren-phase_5-Flower-Aoe-phase_5-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 3631.10014 - tps: 2590.04656 + dps: 3626.24235 + tps: 2586.59753 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-Tauren-phase_5-Flower-Aoe-phase_5-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 1484.03672 - tps: 1204.10527 + dps: 1482.29965 + tps: 1204.85669 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-Tauren-phase_5-Flower-Aoe-phase_5-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 1461.4496 - tps: 1046.55281 + dps: 1459.71252 + tps: 1045.32774 } } dps_results: { key: "TestFeral-Phase5-Lvl60-Settings-Tauren-phase_5-Flower-Aoe-phase_5-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 1765.84061 - tps: 1260.93381 + dps: 1764.8383 + tps: 1260.22217 } } dps_results: { key: "TestFeral-Phase5-Lvl60-SwitchInFrontOfTarget-Default" value: { - dps: 3304.53819 - tps: 2356.45457 + dps: 3297.24992 + tps: 2351.30588 } } diff --git a/sim/druid/feral/apl_values.go b/sim/druid/feral/apl_values.go index 509eaa0bbb..6b3c1c01b4 100644 --- a/sim/druid/feral/apl_values.go +++ b/sim/druid/feral/apl_values.go @@ -126,6 +126,10 @@ func (action *APLActionCatOptimalRotationAction) IsReady(sim *core.Simulation) b return sim.CurrentTime > action.lastAction } +func (action *APLActionCatOptimalRotationAction) IsOffGCDAction() bool { + return false +} + func (action *APLActionCatOptimalRotationAction) Execute(sim *core.Simulation) { cat := action.cat @@ -145,6 +149,10 @@ func (action *APLActionCatOptimalRotationAction) Execute(sim *core.Simulation) { action.lastAction = sim.CurrentTime } +func (action *APLActionCatOptimalRotationAction) ExecuteOffGCD(sim *core.Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} + func (action *APLActionCatOptimalRotationAction) Reset(*core.Simulation) { action.lastAction = core.DurationFromSeconds(-100) } diff --git a/sim/hunter/TestBM.results b/sim/hunter/TestBM.results index 919a4442e0..02b6f66fbb 100644 --- a/sim/hunter/TestBM.results +++ b/sim/hunter/TestBM.results @@ -190,14 +190,14 @@ dps_results: { dps_results: { key: "TestBM-Phase2-Lvl40-Settings-NightElf-p2_melee-Basic-p2_ranged_bm-FullBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 566.13278 - tps: 554.08885 + dps: 566.20003 + tps: 554.18132 } } dps_results: { key: "TestBM-Phase2-Lvl40-Settings-NightElf-p2_melee-Basic-p2_ranged_bm-FullBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 507.56516 + dps: 507.39608 tps: 254.52732 } } @@ -211,15 +211,15 @@ dps_results: { dps_results: { key: "TestBM-Phase2-Lvl40-Settings-NightElf-p2_melee-Basic-p2_ranged_bm-NoBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 316.62459 - tps: 443.45974 + dps: 316.38372 + tps: 443.63226 } } dps_results: { key: "TestBM-Phase2-Lvl40-Settings-NightElf-p2_melee-Basic-p2_ranged_bm-NoBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 273.97217 - tps: 150.68734 + dps: 273.67095 + tps: 150.66331 } } dps_results: { @@ -274,15 +274,15 @@ dps_results: { dps_results: { key: "TestBM-Phase2-Lvl40-Settings-NightElf-p2_ranged_bm-Basic-p2_ranged_bm-FullBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 764.77859 - tps: 871.48694 + dps: 764.85149 + tps: 871.31683 } } dps_results: { key: "TestBM-Phase2-Lvl40-Settings-NightElf-p2_ranged_bm-Basic-p2_ranged_bm-FullBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 687.51263 - tps: 437.26689 + dps: 687.6932 + tps: 437.30682 } } dps_results: { @@ -295,15 +295,15 @@ dps_results: { dps_results: { key: "TestBM-Phase2-Lvl40-Settings-NightElf-p2_ranged_bm-Basic-p2_ranged_bm-NoBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 444.1887 - tps: 674.76614 + dps: 444.51861 + tps: 675.41498 } } dps_results: { key: "TestBM-Phase2-Lvl40-Settings-NightElf-p2_ranged_bm-Basic-p2_ranged_bm-NoBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 394.32004 - tps: 271.50277 + dps: 394.27976 + tps: 271.55917 } } dps_results: { @@ -358,14 +358,14 @@ dps_results: { dps_results: { key: "TestBM-Phase2-Lvl40-Settings-Orc-p2_melee-Basic-p2_ranged_bm-FullBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 570.15106 + dps: 570.08024 tps: 552.31469 } } dps_results: { key: "TestBM-Phase2-Lvl40-Settings-Orc-p2_melee-Basic-p2_ranged_bm-FullBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 514.9936 + dps: 514.82356 tps: 251.97392 } } @@ -379,15 +379,15 @@ dps_results: { dps_results: { key: "TestBM-Phase2-Lvl40-Settings-Orc-p2_melee-Basic-p2_ranged_bm-NoBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 319.68528 - tps: 440.89267 + dps: 319.48151 + tps: 440.202 } } dps_results: { key: "TestBM-Phase2-Lvl40-Settings-Orc-p2_melee-Basic-p2_ranged_bm-NoBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 277.19063 - tps: 149.19322 + dps: 276.93899 + tps: 149.1178 } } dps_results: { @@ -442,15 +442,15 @@ dps_results: { dps_results: { key: "TestBM-Phase2-Lvl40-Settings-Orc-p2_ranged_bm-Basic-p2_ranged_bm-FullBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 762.32999 - tps: 868.37384 + dps: 763.31363 + tps: 867.66549 } } dps_results: { key: "TestBM-Phase2-Lvl40-Settings-Orc-p2_ranged_bm-Basic-p2_ranged_bm-FullBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 687.33049 - tps: 430.57903 + dps: 687.8634 + tps: 431.10426 } } dps_results: { @@ -463,15 +463,15 @@ dps_results: { dps_results: { key: "TestBM-Phase2-Lvl40-Settings-Orc-p2_ranged_bm-Basic-p2_ranged_bm-NoBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 446.72113 - tps: 670.58118 + dps: 446.72783 + tps: 670.93193 } } dps_results: { key: "TestBM-Phase2-Lvl40-Settings-Orc-p2_ranged_bm-Basic-p2_ranged_bm-NoBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 395.22567 - tps: 267.8743 + dps: 395.17339 + tps: 267.94646 } } dps_results: { diff --git a/sim/hunter/TestSV.results b/sim/hunter/TestSV.results index 7d89f0229b..1fecfca385 100644 --- a/sim/hunter/TestSV.results +++ b/sim/hunter/TestSV.results @@ -482,7 +482,7 @@ dps_results: { key: "TestSV-Phase4-Lvl60-Settings-Dwarf-p4_weave-Weave-p4_weave-NoBuffs-P4-Consumes-LongSingleTarget" value: { dps: 1659.50096 - tps: 1493.65804 + tps: 1493.62941 hps: 10.32722 } } diff --git a/sim/mage/TestArcane.results b/sim/mage/TestArcane.results index d413d5aa7f..6f27c6e3d2 100644 --- a/sim/mage/TestArcane.results +++ b/sim/mage/TestArcane.results @@ -249,10 +249,10 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: -0.29596 + weights: -0.25498 weights: 0 - weights: 0.50746 - weights: 0.50746 + weights: 0.50735 + weights: 0.50735 weights: 0 weights: 0 weights: 0 @@ -260,7 +260,7 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 2.53194 + weights: 2.53017 weights: 0 weights: 0 weights: 0 @@ -298,18 +298,18 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: -0.73132 + weights: -1.25543 weights: 0 - weights: 1.21853 - weights: 1.0916 - weights: 0.12692 + weights: 1.2215 + weights: 1.09341 + weights: 0.12808 weights: 0 weights: 0 weights: 0 weights: 0 weights: 0 weights: 0 - weights: 14.06111 + weights: 13.78883 weights: 0 weights: 0 weights: 0 @@ -491,8 +491,8 @@ dps_results: { dps_results: { key: "TestArcane-Phase2-Lvl40-Average-Default" value: { - dps: 441.12825 - tps: 276.23124 + dps: 441.08396 + tps: 276.20448 } } dps_results: { @@ -540,15 +540,15 @@ dps_results: { dps_results: { key: "TestArcane-Phase2-Lvl40-Settings-Troll-p2_arcane-Arcane-p2_arcane-FullBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 456.41338 - tps: 507.72569 + dps: 456.38845 + tps: 507.6576 } } dps_results: { key: "TestArcane-Phase2-Lvl40-Settings-Troll-p2_arcane-Arcane-p2_arcane-FullBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 456.41338 - tps: 285.54191 + dps: 456.38845 + tps: 285.5243 } } dps_results: { @@ -582,8 +582,8 @@ dps_results: { dps_results: { key: "TestArcane-Phase2-Lvl40-SwitchInFrontOfTarget-Default" value: { - dps: 446.41717 - tps: 279.59983 + dps: 446.27514 + tps: 279.51461 } } dps_results: { @@ -617,8 +617,8 @@ dps_results: { dps_results: { key: "TestArcane-Phase4-Lvl60-AllItems-IronweaveBattlesuit" value: { - dps: 590.19959 - tps: 614.93977 + dps: 590.39506 + tps: 615.12049 } } dps_results: { @@ -638,8 +638,8 @@ dps_results: { dps_results: { key: "TestArcane-Phase4-Lvl60-AllItems-MalevolentProphet'sVestments" value: { - dps: 1630.73808 - tps: 1652.48143 + dps: 1639.4439 + tps: 1661.15514 } } dps_results: { @@ -652,99 +652,99 @@ dps_results: { dps_results: { key: "TestArcane-Phase4-Lvl60-Average-Default" value: { - dps: 2054.77473 - tps: 2078.0935 + dps: 2056.64591 + tps: 2080.04322 } } dps_results: { key: "TestArcane-Phase4-Lvl60-Settings-Gnome-p4_arcane-Arcane-p4_arcane-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 2081.4061 - tps: 2491.74947 + dps: 2080.78387 + tps: 2487.04156 } } dps_results: { key: "TestArcane-Phase4-Lvl60-Settings-Gnome-p4_arcane-Arcane-p4_arcane-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 2081.4061 - tps: 2101.92327 + dps: 2080.78387 + tps: 2101.09676 } } dps_results: { key: "TestArcane-Phase4-Lvl60-Settings-Gnome-p4_arcane-Arcane-p4_arcane-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 2341.45102 - tps: 2359.2573 + dps: 2303.92082 + tps: 2321.91028 } } dps_results: { key: "TestArcane-Phase4-Lvl60-Settings-Gnome-p4_arcane-Arcane-p4_arcane-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 980.28689 - tps: 1226.95652 + dps: 986.14631 + tps: 1227.41657 } } dps_results: { key: "TestArcane-Phase4-Lvl60-Settings-Gnome-p4_arcane-Arcane-p4_arcane-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 980.28689 - tps: 992.62037 + dps: 986.14631 + tps: 998.20983 } } dps_results: { key: "TestArcane-Phase4-Lvl60-Settings-Gnome-p4_arcane-Arcane-p4_arcane-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 1250.73439 - tps: 1266.68376 + dps: 1232.33072 + tps: 1248.28009 } } dps_results: { key: "TestArcane-Phase4-Lvl60-Settings-Troll-p4_arcane-Arcane-p4_arcane-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 2090.03172 - tps: 2501.29642 + dps: 2082.46034 + tps: 2495.91558 } } dps_results: { key: "TestArcane-Phase4-Lvl60-Settings-Troll-p4_arcane-Arcane-p4_arcane-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 2090.03172 - tps: 2110.59496 + dps: 2082.46034 + tps: 2103.1331 } } dps_results: { key: "TestArcane-Phase4-Lvl60-Settings-Troll-p4_arcane-Arcane-p4_arcane-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 2371.02537 - tps: 2390.30879 + dps: 2343.42318 + tps: 2362.13004 } } dps_results: { key: "TestArcane-Phase4-Lvl60-Settings-Troll-p4_arcane-Arcane-p4_arcane-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 968.53061 - tps: 1215.9156 + dps: 979.0447 + tps: 1226.16438 } } dps_results: { key: "TestArcane-Phase4-Lvl60-Settings-Troll-p4_arcane-Arcane-p4_arcane-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 968.53061 - tps: 980.89986 + dps: 979.0447 + tps: 991.40069 } } dps_results: { key: "TestArcane-Phase4-Lvl60-Settings-Troll-p4_arcane-Arcane-p4_arcane-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 1264.62377 - tps: 1281.48918 + dps: 1259.10578 + tps: 1275.5002 } } dps_results: { key: "TestArcane-Phase4-Lvl60-SwitchInFrontOfTarget-Default" value: { - dps: 2049.85046 - tps: 2073.17395 + dps: 2044.94207 + tps: 2068.25241 } } dps_results: { @@ -813,8 +813,8 @@ dps_results: { dps_results: { key: "TestArcane-Phase5-Lvl60-Average-Default" value: { - dps: 3247.61451 - tps: 1956.91706 + dps: 3247.54511 + tps: 1956.87542 } } dps_results: { diff --git a/sim/mage/TestFire.results b/sim/mage/TestFire.results index 198e3b7130..ff9e14b1c7 100644 --- a/sim/mage/TestFire.results +++ b/sim/mage/TestFire.results @@ -396,18 +396,18 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 3.40147 + weights: 2.32281 weights: 0 - weights: 1.98432 + weights: 1.96034 weights: 0 - weights: 1.98432 + weights: 1.96034 weights: 0 weights: 0 weights: 0 weights: 0 weights: 0 weights: 0 - weights: 21.26948 + weights: 26.35326 weights: 0 weights: 0 weights: 0 @@ -445,18 +445,18 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 0.64024 + weights: 1.89259 weights: 0 - weights: 2.39253 + weights: 2.37893 weights: 0 - weights: 2.39253 + weights: 2.37893 weights: 0 weights: 0 weights: 0 weights: 0 weights: 0 weights: 0 - weights: 33.06184 + weights: 40.933 weights: 0 weights: 0 weights: 0 @@ -785,322 +785,322 @@ dps_results: { dps_results: { key: "TestFire-Phase4-Lvl60-AllItems-BloodGuard'sDreadweave" value: { - dps: 1978.13588 - tps: 1295.26232 + dps: 1958.20768 + tps: 1283.68596 } } dps_results: { key: "TestFire-Phase4-Lvl60-AllItems-BloodGuard'sSatin" value: { - dps: 1840.53503 - tps: 1209.90291 + dps: 1849.41137 + tps: 1215.12504 } } dps_results: { key: "TestFire-Phase4-Lvl60-AllItems-EmeraldEnchantedVestments" value: { - dps: 1930.02845 - tps: 1266.50107 + dps: 1923.16901 + tps: 1259.33716 } } dps_results: { key: "TestFire-Phase4-Lvl60-AllItems-EmeraldWovenGarb" value: { - dps: 1768.03779 - tps: 1158.05177 + dps: 1750.59139 + tps: 1147.46063 } } dps_results: { key: "TestFire-Phase4-Lvl60-AllItems-IronweaveBattlesuit" value: { - dps: 677.2455 - tps: 647.81838 + dps: 673.32828 + tps: 645.02934 } } dps_results: { key: "TestFire-Phase4-Lvl60-AllItems-Knight-Lieutenant'sDreadweave" value: { - dps: 1978.13588 - tps: 1295.26232 + dps: 1958.20768 + tps: 1283.68596 } } dps_results: { key: "TestFire-Phase4-Lvl60-AllItems-KnightLieutenant'sSatin" value: { - dps: 1840.53503 - tps: 1209.90291 + dps: 1849.41137 + tps: 1215.12504 } } dps_results: { key: "TestFire-Phase4-Lvl60-AllItems-MalevolentProphet'sVestments" value: { - dps: 2170.06198 - tps: 1425.62099 + dps: 2177.69757 + tps: 1428.46121 } } dps_results: { key: "TestFire-Phase4-Lvl60-AllItems-Sorcerer'sRegalia" value: { - dps: 834.05546 - tps: 797.51135 + dps: 833.7584 + tps: 797.06397 } } dps_results: { key: "TestFire-Phase4-Lvl60-Average-Default" value: { - dps: 3001.35682 - tps: 1972.31589 + dps: 2954.90991 + tps: 1942.83586 } } dps_results: { key: "TestFire-Phase4-Lvl60-Settings-Gnome-p4_fire-Fire-p4_fire-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 3047.60889 - tps: 2549.63272 + dps: 3078.75674 + tps: 2574.1803 } } dps_results: { key: "TestFire-Phase4-Lvl60-Settings-Gnome-p4_fire-Fire-p4_fire-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 3047.60889 - tps: 1998.57808 + dps: 3078.75674 + tps: 2017.65862 } } dps_results: { key: "TestFire-Phase4-Lvl60-Settings-Gnome-p4_fire-Fire-p4_fire-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 3476.20477 - tps: 2242.25903 + dps: 3531.64916 + tps: 2277.12449 } } dps_results: { key: "TestFire-Phase4-Lvl60-Settings-Gnome-p4_fire-Fire-p4_fire-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 834.74694 - tps: 884.25808 + dps: 839.79885 + tps: 890.34611 } } dps_results: { key: "TestFire-Phase4-Lvl60-Settings-Gnome-p4_fire-Fire-p4_fire-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 834.74694 - tps: 543.80302 + dps: 839.79885 + tps: 546.5651 } } dps_results: { key: "TestFire-Phase4-Lvl60-Settings-Gnome-p4_fire-Fire-p4_fire-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 1645.24917 - tps: 1053.60661 + dps: 1652.86779 + tps: 1056.90467 } } dps_results: { key: "TestFire-Phase4-Lvl60-Settings-Troll-p4_fire-Fire-p4_fire-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 3011.23011 - tps: 2525.06781 + dps: 2975.11126 + tps: 2499.49214 } } dps_results: { key: "TestFire-Phase4-Lvl60-Settings-Troll-p4_fire-Fire-p4_fire-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 3011.23011 - tps: 1980.07046 + dps: 2975.11126 + tps: 1956.26968 } } dps_results: { key: "TestFire-Phase4-Lvl60-Settings-Troll-p4_fire-Fire-p4_fire-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 3594.48987 - tps: 2326.14064 + dps: 3653.57332 + tps: 2367.08022 } } dps_results: { key: "TestFire-Phase4-Lvl60-Settings-Troll-p4_fire-Fire-p4_fire-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 763.26259 - tps: 830.3161 + dps: 776.5832 + tps: 840.30564 } } dps_results: { key: "TestFire-Phase4-Lvl60-Settings-Troll-p4_fire-Fire-p4_fire-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 763.26259 - tps: 495.25131 + dps: 776.5832 + tps: 503.08908 } } dps_results: { key: "TestFire-Phase4-Lvl60-Settings-Troll-p4_fire-Fire-p4_fire-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 1674.73169 - tps: 1078.63593 + dps: 1680.28235 + tps: 1082.73049 } } dps_results: { key: "TestFire-Phase4-Lvl60-SwitchInFrontOfTarget-Default" value: { - dps: 3022.39287 - tps: 1987.29295 + dps: 2976.60506 + tps: 1957.35133 } } dps_results: { key: "TestFire-Phase5-Lvl60-AllItems-BloodGuard'sDreadweave" value: { - dps: 2295.68875 - tps: 1509.21895 + dps: 2297.27248 + tps: 1510.95236 } } dps_results: { key: "TestFire-Phase5-Lvl60-AllItems-BloodGuard'sSatin" value: { - dps: 2085.42728 - tps: 1372.47773 + dps: 2066.85422 + tps: 1360.58359 } } dps_results: { key: "TestFire-Phase5-Lvl60-AllItems-EmeraldEnchantedVestments" value: { - dps: 2264.64873 - tps: 1489.62535 + dps: 2262.54685 + tps: 1488.15265 } } dps_results: { key: "TestFire-Phase5-Lvl60-AllItems-EmeraldWovenGarb" value: { - dps: 2060.57681 - tps: 1354.97988 + dps: 2061.25865 + tps: 1355.75549 } } dps_results: { key: "TestFire-Phase5-Lvl60-AllItems-IronweaveBattlesuit" value: { - dps: 986.6752 - tps: 720.19692 + dps: 984.81492 + tps: 718.87348 } } dps_results: { key: "TestFire-Phase5-Lvl60-AllItems-Knight-Lieutenant'sDreadweave" value: { - dps: 2295.68875 - tps: 1509.21895 + dps: 2297.27248 + tps: 1510.95236 } } dps_results: { key: "TestFire-Phase5-Lvl60-AllItems-KnightLieutenant'sSatin" value: { - dps: 2085.42728 - tps: 1372.47773 + dps: 2066.85422 + tps: 1360.58359 } } dps_results: { key: "TestFire-Phase5-Lvl60-AllItems-MalevolentProphet'sVestments" value: { - dps: 2778.70289 - tps: 1647.40547 + dps: 2807.93947 + tps: 1661.21903 } } dps_results: { key: "TestFire-Phase5-Lvl60-AllItems-Sorcerer'sRegalia" value: { - dps: 1206.5568 - tps: 882.73657 + dps: 1206.3018 + tps: 882.55414 } } dps_results: { key: "TestFire-Phase5-Lvl60-Average-Default" value: { - dps: 3703.34736 - tps: 2134.47055 + dps: 3701.52473 + tps: 2133.0093 } } dps_results: { key: "TestFire-Phase5-Lvl60-Settings-Gnome-p5_fire-Fire-p5_fire-FullBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 16389.24084 - tps: 9703.17079 + dps: 16388.99074 + tps: 9702.99622 } } dps_results: { key: "TestFire-Phase5-Lvl60-Settings-Gnome-p5_fire-Fire-p5_fire-FullBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 3702.12666 - tps: 2138.63682 + dps: 3717.2932 + tps: 2146.44376 } } dps_results: { key: "TestFire-Phase5-Lvl60-Settings-Gnome-p5_fire-Fire-p5_fire-FullBuffs-P5-Consumes-ShortSingleTarget" value: { - dps: 4448.55448 - tps: 2565.57358 + dps: 4545.24011 + tps: 2622.2677 } } dps_results: { key: "TestFire-Phase5-Lvl60-Settings-Gnome-p5_fire-Fire-p5_fire-NoBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 5163.17202 - tps: 3165.74673 + dps: 5161.5757 + tps: 3164.89947 } } dps_results: { key: "TestFire-Phase5-Lvl60-Settings-Gnome-p5_fire-Fire-p5_fire-NoBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 1007.04839 - tps: 594.24594 + dps: 1008.35439 + tps: 594.56374 } } dps_results: { key: "TestFire-Phase5-Lvl60-Settings-Gnome-p5_fire-Fire-p5_fire-NoBuffs-P5-Consumes-ShortSingleTarget" value: { - dps: 1966.15283 - tps: 1150 + dps: 1983.5947 + tps: 1160.75477 } } dps_results: { key: "TestFire-Phase5-Lvl60-Settings-Troll-p5_fire-Fire-p5_fire-FullBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 15853.19775 - tps: 9391.6087 + dps: 15851.72706 + tps: 9390.78511 } } dps_results: { key: "TestFire-Phase5-Lvl60-Settings-Troll-p5_fire-Fire-p5_fire-FullBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 3672.47039 - tps: 2122.22097 + dps: 3674.73839 + tps: 2123.37415 } } dps_results: { key: "TestFire-Phase5-Lvl60-Settings-Troll-p5_fire-Fire-p5_fire-FullBuffs-P5-Consumes-ShortSingleTarget" value: { - dps: 4444.63571 - tps: 2569.78667 + dps: 4521.15321 + tps: 2613.46203 } } dps_results: { key: "TestFire-Phase5-Lvl60-Settings-Troll-p5_fire-Fire-p5_fire-NoBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 5220.12261 - tps: 3188.56792 + dps: 5218.42461 + tps: 3187.50025 } } dps_results: { key: "TestFire-Phase5-Lvl60-Settings-Troll-p5_fire-Fire-p5_fire-NoBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 981.78903 - tps: 578.48686 + dps: 942.8505 + tps: 554.92115 } } dps_results: { key: "TestFire-Phase5-Lvl60-Settings-Troll-p5_fire-Fire-p5_fire-NoBuffs-P5-Consumes-ShortSingleTarget" value: { - dps: 1970.74534 - tps: 1152.89052 + dps: 1974.48262 + tps: 1157.11523 } } dps_results: { key: "TestFire-Phase5-Lvl60-SwitchInFrontOfTarget-Default" value: { - dps: 3750.62217 - tps: 2163.14984 + dps: 3709.18486 + tps: 2139.34127 } } diff --git a/sim/mage/TestFrost.results b/sim/mage/TestFrost.results index 91a324cd92..48425a1dd1 100644 --- a/sim/mage/TestFrost.results +++ b/sim/mage/TestFrost.results @@ -200,18 +200,18 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 1.13758 + weights: -0.45033 weights: 0 - weights: 1.8705 + weights: 1.87001 weights: 0 - weights: 1.69684 - weights: 0.17366 + weights: 1.6962 + weights: 0.17381 weights: 0 weights: 0 weights: 0 weights: 0 weights: 0 - weights: 24.3911 + weights: 24.50519 weights: 0 weights: 0 weights: 0 @@ -251,16 +251,16 @@ stat_weights_results: { weights: 0 weights: 0.30982 weights: 0 - weights: 2.01654 + weights: 2.01631 weights: 0 weights: 0 - weights: 1.91277 + weights: 1.91246 weights: 0 weights: 0 weights: 0 weights: 0 weights: 0 - weights: 18.96179 + weights: 18.87768 weights: 0 weights: 0 weights: 0 @@ -393,50 +393,50 @@ dps_results: { dps_results: { key: "TestFrost-Phase4-Lvl60-AllItems-BloodGuard'sDreadweave" value: { - dps: 1735.03537 - tps: 1426.5872 + dps: 1720.33096 + tps: 1415.07179 } } dps_results: { key: "TestFrost-Phase4-Lvl60-AllItems-BloodGuard'sSatin" value: { - dps: 1569.19276 - tps: 1289.56962 + dps: 1575.03273 + tps: 1296.01771 } } dps_results: { key: "TestFrost-Phase4-Lvl60-AllItems-EmeraldEnchantedVestments" value: { - dps: 1724.7375 - tps: 1417.97999 + dps: 1729.44428 + tps: 1424.104 } } dps_results: { key: "TestFrost-Phase4-Lvl60-AllItems-EmeraldWovenGarb" value: { - dps: 1563.2498 - tps: 1284.01585 + dps: 1550.78274 + tps: 1274.69348 } } dps_results: { key: "TestFrost-Phase4-Lvl60-AllItems-IronweaveBattlesuit" value: { - dps: 746.8374 - tps: 597.27512 + dps: 743.77897 + tps: 595.21391 } } dps_results: { key: "TestFrost-Phase4-Lvl60-AllItems-Knight-Lieutenant'sDreadweave" value: { - dps: 1735.03537 - tps: 1426.5872 + dps: 1720.33096 + tps: 1415.07179 } } dps_results: { key: "TestFrost-Phase4-Lvl60-AllItems-KnightLieutenant'sSatin" value: { - dps: 1569.19276 - tps: 1289.56962 + dps: 1575.03273 + tps: 1296.01771 } } dps_results: { @@ -456,99 +456,99 @@ dps_results: { dps_results: { key: "TestFrost-Phase4-Lvl60-Average-Default" value: { - dps: 2625.34978 - tps: 2153.65875 + dps: 2630.84429 + tps: 2160.25342 } } dps_results: { key: "TestFrost-Phase4-Lvl60-Settings-Gnome-p4_frost-Frost-p4_frost-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 2583.35331 - tps: 2594.23521 + dps: 2583.64906 + tps: 2606.96035 } } dps_results: { key: "TestFrost-Phase4-Lvl60-Settings-Gnome-p4_frost-Frost-p4_frost-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 2583.35331 - tps: 2117.32722 + dps: 2583.64906 + tps: 2121.20369 } } dps_results: { key: "TestFrost-Phase4-Lvl60-Settings-Gnome-p4_frost-Frost-p4_frost-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 2676.3681 - tps: 2190.28614 + dps: 2695.24021 + tps: 2215.32943 } } dps_results: { key: "TestFrost-Phase4-Lvl60-Settings-Gnome-p4_frost-Frost-p4_frost-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 851.57348 - tps: 1014.04358 + dps: 859.71016 + tps: 1021.41086 } } dps_results: { key: "TestFrost-Phase4-Lvl60-Settings-Gnome-p4_frost-Frost-p4_frost-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 851.57348 - tps: 696.92317 + dps: 859.71016 + tps: 702.83225 } } dps_results: { key: "TestFrost-Phase4-Lvl60-Settings-Gnome-p4_frost-Frost-p4_frost-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 1278.07339 - tps: 1043.85554 + dps: 1309.96482 + tps: 1070.36679 } } dps_results: { key: "TestFrost-Phase4-Lvl60-Settings-Troll-p4_frost-Frost-p4_frost-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 2578.03716 - tps: 2596.13904 + dps: 2591.9672 + tps: 2615.46528 } } dps_results: { key: "TestFrost-Phase4-Lvl60-Settings-Troll-p4_frost-Frost-p4_frost-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 2578.03716 - tps: 2112.71514 + dps: 2591.9672 + tps: 2127.05735 } } dps_results: { key: "TestFrost-Phase4-Lvl60-Settings-Troll-p4_frost-Frost-p4_frost-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 2740.55736 - tps: 2239.1776 + dps: 2753.78618 + tps: 2258.74328 } } dps_results: { key: "TestFrost-Phase4-Lvl60-Settings-Troll-p4_frost-Frost-p4_frost-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 841.6182 - tps: 1005.33412 + dps: 840.48344 + tps: 1005.66548 } } dps_results: { key: "TestFrost-Phase4-Lvl60-Settings-Troll-p4_frost-Frost-p4_frost-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 841.6182 - tps: 688.48257 + dps: 840.48344 + tps: 688.22444 } } dps_results: { key: "TestFrost-Phase4-Lvl60-Settings-Troll-p4_frost-Frost-p4_frost-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 1340.70261 - tps: 1089.30997 + dps: 1363.01202 + tps: 1108.74767 } } dps_results: { key: "TestFrost-Phase4-Lvl60-SwitchInFrontOfTarget-Default" value: { - dps: 2586.06266 - tps: 2119.12656 + dps: 2603.72026 + tps: 2136.60822 } } dps_results: { @@ -617,22 +617,22 @@ dps_results: { dps_results: { key: "TestFrost-Phase5-Lvl60-Average-Default" value: { - dps: 3193.73752 - tps: 1358.80609 + dps: 3193.52792 + tps: 1358.63291 } } dps_results: { key: "TestFrost-Phase5-Lvl60-Settings-Gnome-p5_frost-Frost-p5_spellfrost-FullBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 6537.78901 - tps: 1493.76068 + dps: 6536.39018 + tps: 1493.17316 } } dps_results: { key: "TestFrost-Phase5-Lvl60-Settings-Gnome-p5_frost-Frost-p5_spellfrost-FullBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 3174.15308 - tps: 1348.99778 + dps: 3173.86367 + tps: 1348.87623 } } dps_results: { @@ -645,15 +645,15 @@ dps_results: { dps_results: { key: "TestFrost-Phase5-Lvl60-Settings-Gnome-p5_frost-Frost-p5_spellfrost-NoBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 3958.34555 - tps: 947.60776 + dps: 3958.15236 + tps: 947.52661 } } dps_results: { key: "TestFrost-Phase5-Lvl60-Settings-Gnome-p5_frost-Frost-p5_spellfrost-NoBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 1860.10908 - tps: 789.48441 + dps: 1859.91217 + tps: 789.4017 } } dps_results: { @@ -673,8 +673,8 @@ dps_results: { dps_results: { key: "TestFrost-Phase5-Lvl60-Settings-Troll-p5_frost-Frost-p5_spellfrost-FullBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 3195.36991 - tps: 1359.00799 + dps: 3195.2317 + tps: 1358.94994 } } dps_results: { @@ -694,8 +694,8 @@ dps_results: { dps_results: { key: "TestFrost-Phase5-Lvl60-Settings-Troll-p5_frost-Frost-p5_spellfrost-NoBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 1868.20021 - tps: 792.66016 + dps: 1868.10023 + tps: 792.61817 } } dps_results: { @@ -708,7 +708,7 @@ dps_results: { dps_results: { key: "TestFrost-Phase5-Lvl60-SwitchInFrontOfTarget-Default" value: { - dps: 3199.21121 - tps: 1361.01759 + dps: 3199.073 + tps: 1360.95953 } } diff --git a/sim/paladin/apl_values.go b/sim/paladin/apl_values.go index 20d7ce015e..15998d2f1a 100644 --- a/sim/paladin/apl_values.go +++ b/sim/paladin/apl_values.go @@ -75,10 +75,18 @@ func (x *APLActionCastPaladinPrimarySeal) Execute(sim *core.Simulation) { x.paladin.primarySeal.Cast(sim, x.paladin.CurrentTarget) } +func (action *APLActionCastPaladinPrimarySeal) ExecuteOffGCD(sim *core.Simulation, time time.Duration) { + action.Execute(sim) // Default to Execute unless impletented for this APL Action +} + func (x *APLActionCastPaladinPrimarySeal) IsReady(sim *core.Simulation) bool { return sim.CurrentTime > x.lastAction && x.paladin.primarySeal.CanCast(sim, x.paladin.CurrentTarget) } +func (action *APLActionCastPaladinPrimarySeal) IsOffGCDAction() bool { + return false +} + func (x *APLActionCastPaladinPrimarySeal) Reset(*core.Simulation) { x.lastAction = core.DurationFromSeconds(-100) } diff --git a/sim/paladin/judgement.go b/sim/paladin/judgement.go index 2e48886deb..abfbf69c70 100644 --- a/sim/paladin/judgement.go +++ b/sim/paladin/judgement.go @@ -64,6 +64,8 @@ func (paladin *Paladin) registerJudgement() { }, }) + + paladin.judgement.DefaultCast.GCD = 0 } // Helper Function For casting Judgement diff --git a/sim/paladin/protection/TestProtection.results b/sim/paladin/protection/TestProtection.results index c3b8ccb9f6..4cfe983d70 100644 --- a/sim/paladin/protection/TestProtection.results +++ b/sim/paladin/protection/TestProtection.results @@ -155,8 +155,8 @@ dps_results: { dps_results: { key: "TestProtection-Phase4-Lvl60-AllItems-ZandalarFreethinker'sBelt-231330" value: { - dps: 1460.63499 - tps: 2970.027 + dps: 1460.60731 + tps: 2969.83338 } } dps_results: { @@ -176,22 +176,22 @@ dps_results: { dps_results: { key: "TestProtection-Phase4-Lvl60-Settings-Dwarf-p4prot-P4 Prot-p4prot-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 670.93693 - tps: 2024.76379 + dps: 658.0379 + tps: 1976.56426 } } dps_results: { key: "TestProtection-Phase4-Lvl60-Settings-Dwarf-p4prot-P4 Prot-p4prot-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 265.2898 - tps: 810.49878 + dps: 257.36941 + tps: 779.54723 } } dps_results: { key: "TestProtection-Phase4-Lvl60-Settings-Dwarf-p4prot-P4 Prot-p4prot-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 517.05451 - tps: 1479.44849 + dps: 517.06854 + tps: 1476.73615 } } dps_results: { @@ -218,22 +218,22 @@ dps_results: { dps_results: { key: "TestProtection-Phase4-Lvl60-Settings-Human-p4prot-P4 Prot-p4prot-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 680.95739 - tps: 2056.07981 + dps: 666.36227 + tps: 2005.2703 } } dps_results: { key: "TestProtection-Phase4-Lvl60-Settings-Human-p4prot-P4 Prot-p4prot-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 272.5193 - tps: 826.376 + dps: 263.89722 + tps: 801.54875 } } dps_results: { key: "TestProtection-Phase4-Lvl60-Settings-Human-p4prot-P4 Prot-p4prot-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 522.30619 - tps: 1492.70417 + dps: 521.38021 + tps: 1492.00351 } } dps_results: { diff --git a/sim/paladin/retribution/TestExodin.results b/sim/paladin/retribution/TestExodin.results index d1ed092100..f60d42e903 100644 --- a/sim/paladin/retribution/TestExodin.results +++ b/sim/paladin/retribution/TestExodin.results @@ -463,15 +463,15 @@ dps_results: { dps_results: { key: "TestExodin-Phase5-Lvl60-Settings-Dwarf-p5exodin-P5 Seal of Martyrdom Ret-p5ret-exodin-6CF2DR-NoBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 805.55478 - tps: 1173.54922 + dps: 803.89439 + tps: 1171.69492 } } dps_results: { key: "TestExodin-Phase5-Lvl60-Settings-Dwarf-p5exodin-P5 Seal of Martyrdom Ret-p5ret-exodin-6CF2DR-NoBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 357.36301 - tps: 375.80405 + dps: 358.52712 + tps: 376.97786 } } dps_results: { @@ -505,15 +505,15 @@ dps_results: { dps_results: { key: "TestExodin-Phase5-Lvl60-Settings-Human-p5exodin-P5 Seal of Martyrdom Ret-p5ret-exodin-6CF2DR-NoBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 816.83445 - tps: 1185.63731 + dps: 820.03024 + tps: 1189.02827 } } dps_results: { key: "TestExodin-Phase5-Lvl60-Settings-Human-p5exodin-P5 Seal of Martyrdom Ret-p5ret-exodin-6CF2DR-NoBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 366.13194 - tps: 384.54559 + dps: 366.45392 + tps: 384.86757 } } dps_results: { diff --git a/sim/paladin/retribution/TestRetribution.results b/sim/paladin/retribution/TestRetribution.results index 631cb08278..0b8cbc8c4b 100644 --- a/sim/paladin/retribution/TestRetribution.results +++ b/sim/paladin/retribution/TestRetribution.results @@ -344,12 +344,12 @@ stat_weights_results: { stat_weights_results: { key: "TestRetribution-Phase3-Lvl50-StatWeights-Default" value: { - weights: 1.07177 - weights: 1.58648 + weights: 1.07185 + weights: 1.57333 weights: 0 weights: 0 weights: 0 - weights: 0.28005 + weights: 0.28004 weights: 0 weights: 0 weights: 0 @@ -357,13 +357,13 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 2.56734 + weights: 2.5554 weights: 0.46665 weights: 0 weights: 0 - weights: 0.40607 - weights: 13.08333 - weights: 9.80118 + weights: 0.4061 + weights: 13.05855 + weights: 9.79484 weights: 0 weights: 0 weights: 0 @@ -442,12 +442,12 @@ stat_weights_results: { stat_weights_results: { key: "TestRetribution-Phase5-Lvl60-StatWeights-Default" value: { - weights: 2.97887 - weights: 2.64655 + weights: 3.01926 + weights: 2.1564 weights: 0 weights: 0 weights: 0 - weights: 0.50617 + weights: 0.50979 weights: 0 weights: 0 weights: 0 @@ -455,13 +455,13 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 10.54596 - weights: 0.7012 + weights: 11.88441 + weights: 0.72426 weights: 0 weights: 0 - weights: 0.90698 - weights: 1.22682 - weights: 35.56262 + weights: 1.12198 + weights: 0.37267 + weights: 35.18495 weights: 0 weights: 0 weights: 0 @@ -673,15 +673,15 @@ dps_results: { dps_results: { key: "TestRetribution-Phase2-Lvl40-Settings-Dwarf-p2retsoc-P2 Seal of Command Ret-p2ret-NoBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 234.29971 - tps: 393.64451 + dps: 233.51314 + tps: 393.69908 } } dps_results: { key: "TestRetribution-Phase2-Lvl40-Settings-Dwarf-p2retsoc-P2 Seal of Command Ret-p2ret-NoBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 107.82373 - tps: 115.83897 + dps: 107.9339 + tps: 116.01287 } } dps_results: { @@ -715,15 +715,15 @@ dps_results: { dps_results: { key: "TestRetribution-Phase2-Lvl40-Settings-Human-p2retsoc-P2 Seal of Command Ret-p2ret-NoBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 236.71967 - tps: 397.45738 + dps: 239.00218 + tps: 401.28114 } } dps_results: { key: "TestRetribution-Phase2-Lvl40-Settings-Human-p2retsoc-P2 Seal of Command Ret-p2ret-NoBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 108.2034 - tps: 116.26073 + dps: 108.12419 + tps: 116.18152 } } dps_results: { @@ -743,8 +743,8 @@ dps_results: { dps_results: { key: "TestRetribution-Phase3-Lvl50-AllItems-Hero'sBrand-231328" value: { - dps: 1125.85858 - tps: 1164.31199 + dps: 1125.63369 + tps: 1164.09645 } } dps_results: { @@ -757,36 +757,36 @@ dps_results: { dps_results: { key: "TestRetribution-Phase3-Lvl50-AllItems-ZandalarFreethinker'sBelt-231330" value: { - dps: 979.22521 - tps: 1017.72037 + dps: 979.38961 + tps: 1017.88414 } } dps_results: { key: "TestRetribution-Phase3-Lvl50-AllItems-ZandalarFreethinker'sBreastplate-231329" value: { - dps: 1111.97788 - tps: 1150.30924 + dps: 1112.11288 + tps: 1150.44808 } } dps_results: { key: "TestRetribution-Phase3-Lvl50-Average-Default" value: { - dps: 1136.05918 - tps: 1174.45671 + dps: 1136.0788 + tps: 1174.47512 } } dps_results: { key: "TestRetribution-Phase3-Lvl50-Settings-Dwarf-p3retsom-P3 Seal of Martyrdom Ret-p3ret-FullBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 1443.31925 - tps: 1984.92111 + dps: 1446.12407 + tps: 1987.86301 } } dps_results: { key: "TestRetribution-Phase3-Lvl50-Settings-Dwarf-p3retsom-P3 Seal of Martyrdom Ret-p3ret-FullBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 338.44428 - tps: 365.55762 + dps: 339.66101 + tps: 366.74427 } } dps_results: { @@ -799,15 +799,15 @@ dps_results: { dps_results: { key: "TestRetribution-Phase3-Lvl50-Settings-Dwarf-p3retsom-P3 Seal of Martyrdom Ret-p3ret-NoBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 511.7067 - tps: 785.58458 + dps: 424.58361 + tps: 695.15049 } } dps_results: { key: "TestRetribution-Phase3-Lvl50-Settings-Dwarf-p3retsom-P3 Seal of Martyrdom Ret-p3ret-NoBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 138.35953 - tps: 152.05343 + dps: 147.99886 + tps: 161.5272 } } dps_results: { @@ -820,15 +820,15 @@ dps_results: { dps_results: { key: "TestRetribution-Phase3-Lvl50-Settings-Human-p3retsom-P3 Seal of Martyrdom Ret-p3ret-FullBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 1450.5652 - tps: 1995.45665 + dps: 1450.40903 + tps: 1994.88167 } } dps_results: { key: "TestRetribution-Phase3-Lvl50-Settings-Human-p3retsom-P3 Seal of Martyrdom Ret-p3ret-FullBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 342.19786 - tps: 369.42643 + dps: 342.41823 + tps: 369.64208 } } dps_results: { @@ -841,15 +841,15 @@ dps_results: { dps_results: { key: "TestRetribution-Phase3-Lvl50-Settings-Human-p3retsom-P3 Seal of Martyrdom Ret-p3ret-NoBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 500.45425 - tps: 775.49746 + dps: 437.7162 + tps: 709.89892 } } dps_results: { key: "TestRetribution-Phase3-Lvl50-Settings-Human-p3retsom-P3 Seal of Martyrdom Ret-p3ret-NoBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 141.79319 - tps: 155.54535 + dps: 149.95832 + tps: 163.56745 } } dps_results: { @@ -862,8 +862,8 @@ dps_results: { dps_results: { key: "TestRetribution-Phase3-Lvl50-SwitchInFrontOfTarget-Default" value: { - dps: 1073.30308 - tps: 1111.25164 + dps: 1073.39701 + tps: 1111.34556 } } dps_results: { @@ -1092,15 +1092,15 @@ dps_results: { dps_results: { key: "TestRetribution-Phase4-Lvl60-Settings-Dwarf-p4rettwist-P4 Seal of Martyrdom Ret-p4ret-twisting-6pcT1-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 240.11438 - tps: 575.40679 + dps: 240.41179 + tps: 575.7042 } } dps_results: { key: "TestRetribution-Phase4-Lvl60-Settings-Dwarf-p4rettwist-P4 Seal of Martyrdom Ret-p4ret-twisting-6pcT1-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 183.16826 - tps: 199.93288 + dps: 184.0067 + tps: 200.77132 } } dps_results: { @@ -1259,15 +1259,15 @@ dps_results: { dps_results: { key: "TestRetribution-Phase4-Lvl60-Settings-Human-p4rettwist-P4 Seal of Martyrdom Ret-p4ret-twisting-6pcT1-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 239.36515 - tps: 575.14597 + dps: 239.63246 + tps: 575.41329 } } dps_results: { key: "TestRetribution-Phase4-Lvl60-Settings-Human-p4rettwist-P4 Seal of Martyrdom Ret-p4ret-twisting-6pcT1-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 185.94433 - tps: 202.72274 + dps: 185.90385 + tps: 202.68226 } } dps_results: { @@ -1287,92 +1287,92 @@ dps_results: { dps_results: { key: "TestRetribution-Phase5-Lvl60-AllItems-EmeraldEncrustedBattleplate" value: { - dps: 2378.0297 - tps: 2434.71004 + dps: 2354.44011 + tps: 2410.27501 } } dps_results: { key: "TestRetribution-Phase5-Lvl60-AllItems-Hero'sBrand-231328" value: { - dps: 4438.40657 - tps: 4494.74115 + dps: 4392.45187 + tps: 4447.88889 } } dps_results: { key: "TestRetribution-Phase5-Lvl60-AllItems-Knight-Lieutenant'sImbuedPlate" value: { - dps: 2379.31828 - tps: 2436.60092 + dps: 2348.91646 + tps: 2405.27844 } } dps_results: { key: "TestRetribution-Phase5-Lvl60-AllItems-Knight-Lieutenant'sLamellarPlate" value: { - dps: 2539.93306 - tps: 2598.92634 + dps: 2503.59967 + tps: 2561.64354 } } dps_results: { key: "TestRetribution-Phase5-Lvl60-AllItems-LibramofDraconicDestruction-221457" value: { - dps: 4522.05654 - tps: 4578.24805 + dps: 4473.65975 + tps: 4528.91554 } } dps_results: { key: "TestRetribution-Phase5-Lvl60-AllItems-ObsessedProphet'sPlate" value: { - dps: 3877.80872 - tps: 3941.15255 + dps: 3691.10091 + tps: 3754.31439 } } dps_results: { key: "TestRetribution-Phase5-Lvl60-AllItems-SanctifiedOrb-20512" value: { - dps: 4388.04121 - tps: 4444.01111 + dps: 4373.1372 + tps: 4428.2447 } } dps_results: { key: "TestRetribution-Phase5-Lvl60-AllItems-SoulforgeArmor" value: { - dps: 1873.41958 - tps: 1923.64291 + dps: 1714.62738 + tps: 1761.77158 } } dps_results: { key: "TestRetribution-Phase5-Lvl60-AllItems-ZandalarFreethinker'sBelt-231330" value: { - dps: 3797.59515 - tps: 3853.95139 + dps: 3726.55266 + tps: 3781.93008 } } dps_results: { key: "TestRetribution-Phase5-Lvl60-AllItems-ZandalarFreethinker'sBreastplate-231329" value: { - dps: 4091.50736 - tps: 4149.43616 + dps: 4074.84258 + tps: 4133.26734 } } dps_results: { key: "TestRetribution-Phase5-Lvl60-Average-Default" value: { - dps: 4479.89757 - tps: 4536.3157 + dps: 4451.82288 + tps: 4507.91868 } } dps_results: { key: "TestRetribution-Phase5-Lvl60-Settings-Dwarf-p5twisting-P5 Seal of Martyrdom Ret-p5ret-twist-4DR-3.5-3.6-FullBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 812.75414 - tps: 1063.31764 + dps: 824.65727 + tps: 1075.81076 } } dps_results: { key: "TestRetribution-Phase5-Lvl60-Settings-Dwarf-p5twisting-P5 Seal of Martyrdom Ret-p5ret-twist-4DR-3.5-3.6-FullBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 721.34694 - tps: 733.89478 + dps: 730.56114 + tps: 743.13357 } } dps_results: { @@ -1385,15 +1385,15 @@ dps_results: { dps_results: { key: "TestRetribution-Phase5-Lvl60-Settings-Dwarf-p5twisting-P5 Seal of Martyrdom Ret-p5ret-twist-4DR-3.5-3.6-NoBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 185.65736 - tps: 366.40418 + dps: 186.87842 + tps: 367.62524 } } dps_results: { key: "TestRetribution-Phase5-Lvl60-Settings-Dwarf-p5twisting-P5 Seal of Martyrdom Ret-p5ret-twist-4DR-3.5-3.6-NoBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 154.03461 - tps: 163.07195 + dps: 154.35186 + tps: 163.3892 } } dps_results: { @@ -1447,15 +1447,15 @@ dps_results: { dps_results: { key: "TestRetribution-Phase5-Lvl60-Settings-Human-p5twisting-P5 Seal of Martyrdom Ret-p5ret-twist-4DR-3.5-3.6-FullBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 852.78393 - tps: 1104.33076 + dps: 856.17795 + tps: 1107.92145 } } dps_results: { key: "TestRetribution-Phase5-Lvl60-Settings-Human-p5twisting-P5 Seal of Martyrdom Ret-p5ret-twist-4DR-3.5-3.6-FullBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 751.28103 - tps: 763.88788 + dps: 753.95643 + tps: 766.56819 } } dps_results: { @@ -1468,15 +1468,15 @@ dps_results: { dps_results: { key: "TestRetribution-Phase5-Lvl60-Settings-Human-p5twisting-P5 Seal of Martyrdom Ret-p5ret-twist-4DR-3.5-3.6-NoBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 188.35139 - tps: 369.09822 + dps: 188.45629 + tps: 369.20312 } } dps_results: { key: "TestRetribution-Phase5-Lvl60-Settings-Human-p5twisting-P5 Seal of Martyrdom Ret-p5ret-twist-4DR-3.5-3.6-NoBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 154.24095 - tps: 163.27829 + dps: 154.31857 + tps: 163.35591 } } dps_results: { @@ -1489,15 +1489,15 @@ dps_results: { dps_results: { key: "TestRetribution-Phase5-Lvl60-Settings-Human-p5twisting-P5 Seal of Martyrdom Ret-p5ret-twist-4DR-3.7-4.0-FullBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 43.27783 - tps: 229.62966 + dps: 41.7981 + tps: 227.95326 } } dps_results: { key: "TestRetribution-Phase5-Lvl60-Settings-Human-p5twisting-P5 Seal of Martyrdom Ret-p5ret-twist-4DR-3.7-4.0-FullBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 39.93029 - tps: 49.24788 + dps: 38.45056 + tps: 47.75832 } } dps_results: { @@ -1530,7 +1530,7 @@ dps_results: { dps_results: { key: "TestRetribution-Phase5-Lvl60-SwitchInFrontOfTarget-Default" value: { - dps: 3647.00211 - tps: 3702.34274 + dps: 3654.04747 + tps: 3708.25053 } } diff --git a/sim/paladin/retribution/TestShockadin.results b/sim/paladin/retribution/TestShockadin.results index 5d72359780..a793ad5221 100644 --- a/sim/paladin/retribution/TestShockadin.results +++ b/sim/paladin/retribution/TestShockadin.results @@ -204,8 +204,8 @@ dps_results: { dps_results: { key: "TestShockadin-Phase2-Lvl40-AllItems-SoulforgeArmor" value: { - dps: 384.17911 - tps: 403.88708 + dps: 384.35163 + tps: 404.06511 } } dps_results: { @@ -232,15 +232,15 @@ dps_results: { dps_results: { key: "TestShockadin-Phase2-Lvl40-Settings-Dwarf-p2retsom-P2 Seal of Martyrdom Shockadin-p2ret-FullBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 545.35844 - tps: 824.06297 + dps: 534.26237 + tps: 814.42207 } } dps_results: { key: "TestShockadin-Phase2-Lvl40-Settings-Dwarf-p2retsom-P2 Seal of Martyrdom Shockadin-p2ret-FullBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 147.15029 - tps: 161.05377 + dps: 149.85211 + tps: 163.81861 } } dps_results: { @@ -253,15 +253,15 @@ dps_results: { dps_results: { key: "TestShockadin-Phase2-Lvl40-Settings-Dwarf-p2retsom-P2 Seal of Martyrdom Shockadin-p2ret-NoBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 257.61526 - tps: 442.56154 + dps: 237.19124 + tps: 421.19573 } } dps_results: { key: "TestShockadin-Phase2-Lvl40-Settings-Dwarf-p2retsom-P2 Seal of Martyrdom Shockadin-p2ret-NoBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 77.75211 - tps: 86.99943 + dps: 79.82225 + tps: 89.02247 } } dps_results: { @@ -274,15 +274,15 @@ dps_results: { dps_results: { key: "TestShockadin-Phase2-Lvl40-Settings-Human-p2retsom-P2 Seal of Martyrdom Shockadin-p2ret-FullBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 557.35472 - tps: 836.37459 + dps: 539.43234 + tps: 820.38863 } } dps_results: { key: "TestShockadin-Phase2-Lvl40-Settings-Human-p2retsom-P2 Seal of Martyrdom Shockadin-p2ret-FullBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 146.71806 - tps: 160.67813 + dps: 150.84753 + tps: 164.91624 } } dps_results: { @@ -295,22 +295,22 @@ dps_results: { dps_results: { key: "TestShockadin-Phase2-Lvl40-Settings-Human-p2retsom-P2 Seal of Martyrdom Shockadin-p2ret-NoBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 263.72985 - tps: 450.00713 + dps: 230.99513 + tps: 415.91324 } } dps_results: { key: "TestShockadin-Phase2-Lvl40-Settings-Human-p2retsom-P2 Seal of Martyrdom Shockadin-p2ret-NoBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 77.95938 - tps: 87.27325 + dps: 81.48621 + tps: 90.73211 } } dps_results: { key: "TestShockadin-Phase2-Lvl40-Settings-Human-p2retsom-P2 Seal of Martyrdom Shockadin-p2ret-NoBuffs-P2-Consumes-ShortSingleTarget" value: { - dps: 107.47706 - tps: 118.46779 + dps: 107.59894 + tps: 118.58967 } } dps_results: { diff --git a/sim/shaman/elemental/TestElemental.results b/sim/shaman/elemental/TestElemental.results index b7b9b361b1..dfe796a5f5 100644 --- a/sim/shaman/elemental/TestElemental.results +++ b/sim/shaman/elemental/TestElemental.results @@ -298,18 +298,18 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 1.0995 + weights: 1.22619 weights: 0 - weights: 0.87591 + weights: 0.87541 weights: 0 - weights: 0.26526 + weights: 0.26531 weights: 0 weights: 0 - weights: 0.61065 + weights: 0.6101 weights: 0 weights: 0 - weights: 7.52003 - weights: 3.32702 + weights: 7.58787 + weights: 3.34134 weights: 0 weights: 0 weights: 0 @@ -351,13 +351,13 @@ stat_weights_results: { weights: 0 weights: 1.13933 weights: 0 - weights: 0.35578 + weights: 0.3558 weights: 0 weights: 0 - weights: 0.78355 + weights: 0.78353 weights: 0 weights: 0 - weights: 12.39762 + weights: 12.42431 weights: 7.47639 weights: 0 weights: 0 @@ -396,18 +396,18 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 2.19784 + weights: 2.24288 weights: 0 - weights: 1.731 + weights: 1.73092 weights: 0 - weights: 0.54471 + weights: 0.54489 weights: 0 weights: 0 - weights: 1.1863 + weights: 1.18603 weights: 0 weights: 0 - weights: 30.70512 - weights: 16.11665 + weights: 31.58306 + weights: 15.23656 weights: 0 weights: 0 weights: 0 @@ -445,18 +445,18 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 3.10644 + weights: 3.14296 weights: 0 - weights: 2.1359 + weights: 2.13554 weights: 0 - weights: 0.5345 + weights: 0.53407 weights: 0 weights: 0 - weights: 1.6014 + weights: 1.60147 weights: 0 weights: 0 weights: 0 - weights: 23.52306 + weights: 23.54242 weights: 0 weights: 0 weights: 0 @@ -492,7 +492,7 @@ dps_results: { key: "TestElemental-Phase1-Lvl25-Average-Default" value: { dps: 197.0368 - tps: 157.08202 + tps: 157.08224 } } dps_results: { @@ -520,14 +520,14 @@ dps_results: { key: "TestElemental-Phase1-Lvl25-Settings-Orc-phase_1-Adaptive-phase_1-NoBuffs-P1-Consumes-LongMultiTarget" value: { dps: 133.67122 - tps: 297.14769 + tps: 297.15069 } } dps_results: { key: "TestElemental-Phase1-Lvl25-Settings-Orc-phase_1-Adaptive-phase_1-NoBuffs-P1-Consumes-LongSingleTarget" value: { dps: 133.67122 - tps: 107.87665 + tps: 107.8768 } } dps_results: { @@ -589,22 +589,22 @@ dps_results: { dps_results: { key: "TestElemental-Phase2-Lvl40-Average-Default" value: { - dps: 625.31624 - tps: 525.02289 + dps: 625.436 + tps: 525.18487 } } dps_results: { key: "TestElemental-Phase2-Lvl40-Settings-Orc-phase_2-Adaptive-phase_2-FullBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 713.89151 - tps: 1174.1531 + dps: 714.05944 + tps: 1174.1338 } } dps_results: { key: "TestElemental-Phase2-Lvl40-Settings-Orc-phase_2-Adaptive-phase_2-FullBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 591.87712 - tps: 495.81417 + dps: 593.00804 + tps: 496.6142 } } dps_results: { @@ -617,15 +617,15 @@ dps_results: { dps_results: { key: "TestElemental-Phase2-Lvl40-Settings-Orc-phase_2-Adaptive-phase_2-NoBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 377.37717 - tps: 729.49641 + dps: 377.25593 + tps: 729.31948 } } dps_results: { key: "TestElemental-Phase2-Lvl40-Settings-Orc-phase_2-Adaptive-phase_2-NoBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 323.96512 - tps: 273.69308 + dps: 323.99312 + tps: 273.69899 } } dps_results: { @@ -638,15 +638,15 @@ dps_results: { dps_results: { key: "TestElemental-Phase2-Lvl40-Settings-Troll-phase_2-Adaptive-phase_2-FullBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 719.20797 - tps: 1187.72949 + dps: 719.8241 + tps: 1187.92758 } } dps_results: { key: "TestElemental-Phase2-Lvl40-Settings-Troll-phase_2-Adaptive-phase_2-FullBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 598.08632 - tps: 502.22388 + dps: 599.01504 + tps: 503.16178 } } dps_results: { @@ -659,15 +659,15 @@ dps_results: { dps_results: { key: "TestElemental-Phase2-Lvl40-Settings-Troll-phase_2-Adaptive-phase_2-NoBuffs-P2-Consumes-LongMultiTarget" value: { - dps: 377.98189 - tps: 736.52082 + dps: 377.7085 + tps: 736.41558 } } dps_results: { key: "TestElemental-Phase2-Lvl40-Settings-Troll-phase_2-Adaptive-phase_2-NoBuffs-P2-Consumes-LongSingleTarget" value: { - dps: 318.36619 - tps: 268.82856 + dps: 318.84218 + tps: 269.33906 } } dps_results: { @@ -680,29 +680,29 @@ dps_results: { dps_results: { key: "TestElemental-Phase2-Lvl40-SwitchInFrontOfTarget-Default" value: { - dps: 624.30514 - tps: 527.08711 + dps: 624.62409 + tps: 527.34599 } } dps_results: { key: "TestElemental-Phase3-Lvl50-Average-Default" value: { - dps: 1515.21228 - tps: 1312.20494 + dps: 1515.19687 + tps: 1312.17404 } } dps_results: { key: "TestElemental-Phase3-Lvl50-Settings-Orc-phase_3-Adaptive-phase_3-FullBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 3327.057 - tps: 3435.59468 + dps: 3326.81779 + tps: 3432.22287 } } dps_results: { key: "TestElemental-Phase3-Lvl50-Settings-Orc-phase_3-Adaptive-phase_3-FullBuffs-P3-Consumes-LongSingleTarget" value: { dps: 1457.59977 - tps: 1268.49328 + tps: 1268.46868 } } dps_results: { @@ -715,15 +715,15 @@ dps_results: { dps_results: { key: "TestElemental-Phase3-Lvl50-Settings-Orc-phase_3-Adaptive-phase_3-NoBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 1679.35513 - tps: 1884.29353 + dps: 1682.98644 + tps: 1886.1771 } } dps_results: { key: "TestElemental-Phase3-Lvl50-Settings-Orc-phase_3-Adaptive-phase_3-NoBuffs-P3-Consumes-LongSingleTarget" value: { dps: 879.20185 - tps: 779.17511 + tps: 779.13305 } } dps_results: { @@ -737,14 +737,14 @@ dps_results: { key: "TestElemental-Phase3-Lvl50-Settings-Troll-phase_3-Adaptive-phase_3-FullBuffs-P3-Consumes-LongMultiTarget" value: { dps: 3350.96791 - tps: 3467.39762 + tps: 3467.22427 } } dps_results: { key: "TestElemental-Phase3-Lvl50-Settings-Troll-phase_3-Adaptive-phase_3-FullBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 1487.91321 - tps: 1294.92606 + dps: 1487.73579 + tps: 1294.76687 } } dps_results: { @@ -757,15 +757,15 @@ dps_results: { dps_results: { key: "TestElemental-Phase3-Lvl50-Settings-Troll-phase_3-Adaptive-phase_3-NoBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 1657.02256 - tps: 1877.42881 + dps: 1654.84928 + tps: 1876.05878 } } dps_results: { key: "TestElemental-Phase3-Lvl50-Settings-Troll-phase_3-Adaptive-phase_3-NoBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 891.91317 - tps: 789.85877 + dps: 892.09312 + tps: 789.90187 } } dps_results: { @@ -779,91 +779,91 @@ dps_results: { key: "TestElemental-Phase3-Lvl50-SwitchInFrontOfTarget-Default" value: { dps: 1492.67681 - tps: 1296.72801 + tps: 1296.7254 } } dps_results: { key: "TestElemental-Phase4-Lvl60-AllItems-BloodGuard'sInscribedMail" value: { dps: 1422.69303 - tps: 1489.04487 + tps: 1488.82093 } } dps_results: { key: "TestElemental-Phase4-Lvl60-AllItems-BloodGuard'sMail" value: { dps: 1421.8746 - tps: 1488.34949 + tps: 1488.04103 } } dps_results: { key: "TestElemental-Phase4-Lvl60-AllItems-BloodGuard'sPulsingMail" value: { dps: 1553.00757 - tps: 1620.23306 + tps: 1620.09324 } } dps_results: { key: "TestElemental-Phase4-Lvl60-AllItems-EmeraldChainmail" value: { dps: 1501.7497 - tps: 1567.13397 + tps: 1566.99132 } } dps_results: { key: "TestElemental-Phase4-Lvl60-AllItems-EmeraldLadenChain" value: { dps: 1420.947 - tps: 1487.46381 + tps: 1487.32115 } } dps_results: { key: "TestElemental-Phase4-Lvl60-AllItems-EmeraldScalemail" value: { dps: 1421.25167 - tps: 1487.76848 + tps: 1487.62583 } } dps_results: { key: "TestElemental-Phase4-Lvl60-AllItems-OstracizedBerserker'sBattlemail" value: { - dps: 2321.76321 - tps: 2363.31088 + dps: 2326.23814 + tps: 2368.64973 } } dps_results: { key: "TestElemental-Phase4-Lvl60-AllItems-ShunnedDevotee'sChainmail" value: { dps: 2452.35095 - tps: 2492.80892 + tps: 2492.95356 } } dps_results: { key: "TestElemental-Phase4-Lvl60-AllItems-TheFiveThunders" value: { dps: 1318.1199 - tps: 1309.61239 + tps: 1309.57367 } } dps_results: { key: "TestElemental-Phase4-Lvl60-Average-Default" value: { - dps: 3226.246 - tps: 1969.15217 + dps: 3226.18277 + tps: 1969.24133 } } dps_results: { key: "TestElemental-Phase4-Lvl60-Settings-Orc-phase_4-Adaptive-phase_4-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 5883.40244 - tps: 4039.62491 + dps: 5884.90239 + tps: 4042.0552 } } dps_results: { key: "TestElemental-Phase4-Lvl60-Settings-Orc-phase_4-Adaptive-phase_4-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 3124.22548 - tps: 1905.61812 + dps: 3121.90205 + tps: 1904.40203 } } dps_results: { @@ -876,15 +876,15 @@ dps_results: { dps_results: { key: "TestElemental-Phase4-Lvl60-Settings-Orc-phase_4-Adaptive-phase_4-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 2407.47801 - tps: 1922.21442 + dps: 2408.07325 + tps: 1921.09566 } } dps_results: { key: "TestElemental-Phase4-Lvl60-Settings-Orc-phase_4-Adaptive-phase_4-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 1534.58869 - tps: 953.72683 + dps: 1533.50902 + tps: 952.68569 } } dps_results: { @@ -897,15 +897,15 @@ dps_results: { dps_results: { key: "TestElemental-Phase4-Lvl60-Settings-Troll-phase_4-Adaptive-phase_4-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 5911.26999 - tps: 4036.99925 + dps: 5912.86825 + tps: 4037.62721 } } dps_results: { key: "TestElemental-Phase4-Lvl60-Settings-Troll-phase_4-Adaptive-phase_4-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 3182.48508 - tps: 1948.3319 + dps: 3177.0025 + tps: 1944.79576 } } dps_results: { @@ -918,15 +918,15 @@ dps_results: { dps_results: { key: "TestElemental-Phase4-Lvl60-Settings-Troll-phase_4-Adaptive-phase_4-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 2355.89208 - tps: 1894.19501 + dps: 2343.96022 + tps: 1889.18273 } } dps_results: { key: "TestElemental-Phase4-Lvl60-Settings-Troll-phase_4-Adaptive-phase_4-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 1553.14897 - tps: 970.37977 + dps: 1552.60222 + tps: 969.29499 } } dps_results: { @@ -939,92 +939,92 @@ dps_results: { dps_results: { key: "TestElemental-Phase4-Lvl60-SwitchInFrontOfTarget-Default" value: { - dps: 3196.68304 - tps: 1948.06403 + dps: 3194.05975 + tps: 1946.48396 } } dps_results: { key: "TestElemental-Phase5-Lvl60-AllItems-BloodGuard'sInscribedMail" value: { - dps: 1494.07326 - tps: 1520.59525 + dps: 1491.34444 + tps: 1517.60057 } } dps_results: { key: "TestElemental-Phase5-Lvl60-AllItems-BloodGuard'sMail" value: { - dps: 1493.13794 - tps: 1519.47915 + dps: 1490.61953 + tps: 1516.93346 } } dps_results: { key: "TestElemental-Phase5-Lvl60-AllItems-BloodGuard'sPulsingMail" value: { - dps: 1625.9067 - tps: 1652.75439 + dps: 1628.82794 + tps: 1655.10077 } } dps_results: { key: "TestElemental-Phase5-Lvl60-AllItems-EmeraldChainmail" value: { - dps: 1575.73503 - tps: 1601.02994 + dps: 1573.60976 + tps: 1598.87562 } } dps_results: { key: "TestElemental-Phase5-Lvl60-AllItems-EmeraldLadenChain" value: { - dps: 1491.25118 - tps: 1517.62446 + dps: 1489.22567 + tps: 1515.57199 } } dps_results: { key: "TestElemental-Phase5-Lvl60-AllItems-EmeraldScalemail" value: { - dps: 1491.56724 - tps: 1517.94051 + dps: 1489.54015 + tps: 1515.88647 } } dps_results: { key: "TestElemental-Phase5-Lvl60-AllItems-OstracizedBerserker'sBattlemail" value: { - dps: 2537.1534 - tps: 2539.68406 + dps: 2537.58191 + tps: 2540.11257 } } dps_results: { key: "TestElemental-Phase5-Lvl60-AllItems-ShunnedDevotee'sChainmail" value: { - dps: 2662.76773 - tps: 2665.59756 + dps: 2663.21197 + tps: 2666.0418 } } dps_results: { key: "TestElemental-Phase5-Lvl60-AllItems-TheFiveThunders" value: { dps: 1334.55092 - tps: 1318.38416 + tps: 1318.82347 } } dps_results: { key: "TestElemental-Phase5-Lvl60-Average-Default" value: { - dps: 4222.71645 - tps: 2549.82077 + dps: 4221.60171 + tps: 2549.26404 } } dps_results: { key: "TestElemental-Phase5-Lvl60-Settings-Orc-phase_5-Adaptive-phase_5-FullBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 8064.48365 - tps: 3985.03402 + dps: 8063.86825 + tps: 3984.40918 } } dps_results: { key: "TestElemental-Phase5-Lvl60-Settings-Orc-phase_5-Adaptive-phase_5-FullBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 4090.36115 - tps: 2468.81191 + dps: 4094.44946 + tps: 2472.34945 } } dps_results: { @@ -1037,15 +1037,15 @@ dps_results: { dps_results: { key: "TestElemental-Phase5-Lvl60-Settings-Orc-phase_5-Adaptive-phase_5-NoBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 4257.98424 - tps: 2187.10517 + dps: 4257.68685 + tps: 2186.64731 } } dps_results: { key: "TestElemental-Phase5-Lvl60-Settings-Orc-phase_5-Adaptive-phase_5-NoBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 1876.31779 - tps: 1140.85213 + dps: 1876.14911 + tps: 1141.28851 } } dps_results: { @@ -1058,15 +1058,15 @@ dps_results: { dps_results: { key: "TestElemental-Phase5-Lvl60-Settings-Troll-phase_5-Adaptive-phase_5-FullBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 8095.25783 - tps: 4004.05207 + dps: 8094.05907 + tps: 4003.38858 } } dps_results: { key: "TestElemental-Phase5-Lvl60-Settings-Troll-phase_5-Adaptive-phase_5-FullBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 4097.09717 - tps: 2473.60998 + dps: 4095.26931 + tps: 2472.16396 } } dps_results: { @@ -1079,15 +1079,15 @@ dps_results: { dps_results: { key: "TestElemental-Phase5-Lvl60-Settings-Troll-phase_5-Adaptive-phase_5-NoBuffs-P5-Consumes-LongMultiTarget" value: { - dps: 4249.53231 - tps: 2187.95259 + dps: 4249.05788 + tps: 2188.29253 } } dps_results: { key: "TestElemental-Phase5-Lvl60-Settings-Troll-phase_5-Adaptive-phase_5-NoBuffs-P5-Consumes-LongSingleTarget" value: { - dps: 1895.91966 - tps: 1152.99406 + dps: 1895.60415 + tps: 1152.83601 } } dps_results: { @@ -1100,7 +1100,7 @@ dps_results: { dps_results: { key: "TestElemental-Phase5-Lvl60-SwitchInFrontOfTarget-Default" value: { - dps: 4162.69244 - tps: 2520.6441 + dps: 4154.3978 + tps: 2513.204 } } diff --git a/sim/shaman/enhancement/TestEnhancement.results b/sim/shaman/enhancement/TestEnhancement.results index c281abd746..1cc6dc20d2 100644 --- a/sim/shaman/enhancement/TestEnhancement.results +++ b/sim/shaman/enhancement/TestEnhancement.results @@ -393,12 +393,12 @@ stat_weights_results: { stat_weights_results: { key: "TestEnhancement-Phase4-Lvl60-StatWeights-Default" value: { - weights: 2.07157 + weights: 2.07145 weights: 0.20361 weights: 0 weights: 0 weights: 0 - weights: 0.75973 + weights: 0.75975 weights: 0 weights: 0 weights: 0 @@ -410,9 +410,9 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 0.94162 - weights: 26.60824 - weights: 9.6735 + weights: 0.94157 + weights: 26.83415 + weights: 9.64659 weights: 0 weights: 0 weights: 0 @@ -442,12 +442,12 @@ stat_weights_results: { stat_weights_results: { key: "TestEnhancement-Phase5-Lvl60-StatWeights-Default" value: { - weights: 2.52146 + weights: 2.52139 weights: 0.98864 weights: 0 weights: 0 weights: 0 - weights: 0.83925 + weights: 0.83919 weights: 0 weights: 0 weights: 0 @@ -459,9 +459,9 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 0.99662 - weights: 26.56841 - weights: 13.04911 + weights: 0.9966 + weights: 26.49206 + weights: 13.03771 weights: 0 weights: 0 weights: 0 @@ -701,8 +701,8 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase2-Lvl40-Settings-Orc-phase_2-Sync Auto-phase_2-NoBuffs-P2-Consumes WF/FT-LongSingleTarget" value: { - dps: 222.28753 - tps: 250.16185 + dps: 222.52132 + tps: 250.39334 } } dps_results: { @@ -743,8 +743,8 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase2-Lvl40-Settings-Orc-phase_2-Sync Delay OH-phase_2-NoBuffs-P2-Consumes WF/FT-LongSingleTarget" value: { - dps: 222.28753 - tps: 250.16185 + dps: 222.52132 + tps: 250.39334 } } dps_results: { @@ -785,8 +785,8 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase2-Lvl40-Settings-Troll-phase_2-Sync Auto-phase_2-NoBuffs-P2-Consumes WF/FT-LongSingleTarget" value: { - dps: 219.37072 - tps: 246.65469 + dps: 219.51271 + tps: 246.50714 } } dps_results: { @@ -827,8 +827,8 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase2-Lvl40-Settings-Troll-phase_2-Sync Delay OH-phase_2-NoBuffs-P2-Consumes WF/FT-LongSingleTarget" value: { - dps: 219.37072 - tps: 246.65469 + dps: 219.51271 + tps: 246.50714 } } dps_results: { @@ -883,8 +883,8 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase3-Lvl50-Settings-Orc-phase_3-Sync Auto-phase_3-NoBuffs-P3-Consumes WF/FT-LongSingleTarget" value: { - dps: 428.02822 - tps: 324.78601 + dps: 428.02971 + tps: 324.79487 } } dps_results: { @@ -925,8 +925,8 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase3-Lvl50-Settings-Orc-phase_3-Sync Delay OH-phase_3-NoBuffs-P3-Consumes WF/FT-LongSingleTarget" value: { - dps: 428.02822 - tps: 324.78601 + dps: 428.02971 + tps: 324.79487 } } dps_results: { @@ -967,8 +967,8 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase3-Lvl50-Settings-Troll-phase_3-Sync Auto-phase_3-NoBuffs-P3-Consumes WF/FT-LongSingleTarget" value: { - dps: 419.10779 - tps: 319.08108 + dps: 418.33243 + tps: 318.66354 } } dps_results: { @@ -1009,8 +1009,8 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase3-Lvl50-Settings-Troll-phase_3-Sync Delay OH-phase_3-NoBuffs-P3-Consumes WF/FT-LongSingleTarget" value: { - dps: 419.10779 - tps: 319.08108 + dps: 418.33243 + tps: 318.66354 } } dps_results: { @@ -1037,15 +1037,15 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase4-Lvl60-AllItems-BloodGuard'sInscribedMail" value: { - dps: 1849.47794 - tps: 1875.79395 + dps: 1848.76165 + tps: 1875.25602 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-AllItems-BloodGuard'sMail" value: { - dps: 1918.07366 - tps: 1943.13934 + dps: 1917.30417 + tps: 1942.54912 } } dps_results: { @@ -1059,63 +1059,63 @@ dps_results: { key: "TestEnhancement-Phase4-Lvl60-AllItems-EmeraldChainmail" value: { dps: 1894.62572 - tps: 1921.1968 + tps: 1921.19044 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-AllItems-EmeraldLadenChain" value: { dps: 1848.4291 - tps: 1875.01903 + tps: 1875.01267 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-AllItems-EmeraldScalemail" value: { dps: 1895.23608 - tps: 1920.91075 + tps: 1920.90438 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-AllItems-OstracizedBerserker'sBattlemail" value: { - dps: 2810.13676 - tps: 2870.68055 + dps: 2806.45161 + tps: 2867.16059 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-AllItems-ShunnedDevotee'sChainmail" value: { - dps: 2755.81179 - tps: 2818.85444 + dps: 2752.04542 + tps: 2815.25344 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-AllItems-TheFiveThunders" value: { - dps: 1521.68227 - tps: 1555.65418 + dps: 1521.39588 + tps: 1555.36583 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-Average-Default" value: { - dps: 3721.81576 - tps: 2657.21696 + dps: 3721.81195 + tps: 2657.21051 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Orc-phase_4_2h-Sync Auto-phase_4-FullBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { dps: 1669.36957 - tps: 1684.94427 + tps: 1684.83409 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Orc-phase_4_2h-Sync Auto-phase_4-FullBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { dps: 1032.47835 - tps: 746.93537 + tps: 746.92306 } } dps_results: { @@ -1128,15 +1128,15 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Orc-phase_4_2h-Sync Auto-phase_4-NoBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { - dps: 693.09317 - tps: 927.74159 + dps: 691.74052 + tps: 927.04756 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Orc-phase_4_2h-Sync Auto-phase_4-NoBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { - dps: 445.67796 - tps: 330.43406 + dps: 445.71276 + tps: 330.42969 } } dps_results: { @@ -1150,14 +1150,14 @@ dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Orc-phase_4_2h-Sync Delay OH-phase_4-FullBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { dps: 1669.36957 - tps: 1684.94427 + tps: 1684.83409 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Orc-phase_4_2h-Sync Delay OH-phase_4-FullBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { dps: 1032.47835 - tps: 746.93537 + tps: 746.92306 } } dps_results: { @@ -1170,15 +1170,15 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Orc-phase_4_2h-Sync Delay OH-phase_4-NoBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { - dps: 693.09317 - tps: 927.74159 + dps: 691.74052 + tps: 927.04756 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Orc-phase_4_2h-Sync Delay OH-phase_4-NoBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { - dps: 445.67796 - tps: 330.43406 + dps: 445.71276 + tps: 330.42969 } } dps_results: { @@ -1192,14 +1192,14 @@ dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Orc-phase_4_dw-Sync Auto-phase_4-FullBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { dps: 2926.1018 - tps: 2572.28696 + tps: 2571.98144 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Orc-phase_4_dw-Sync Auto-phase_4-FullBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { dps: 1464.13752 - tps: 1048.06051 + tps: 1047.85908 } } dps_results: { @@ -1212,15 +1212,15 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Orc-phase_4_dw-Sync Auto-phase_4-NoBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { - dps: 1201.24215 - tps: 1294.38157 + dps: 1187.70849 + tps: 1285.11428 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Orc-phase_4_dw-Sync Auto-phase_4-NoBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { - dps: 607.06757 - tps: 443.5615 + dps: 603.60399 + tps: 442.68858 } } dps_results: { @@ -1234,14 +1234,14 @@ dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Orc-phase_4_dw-Sync Delay OH-phase_4-FullBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { dps: 2926.1018 - tps: 2572.28696 + tps: 2571.98144 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Orc-phase_4_dw-Sync Delay OH-phase_4-FullBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { dps: 1464.13752 - tps: 1048.06051 + tps: 1047.85908 } } dps_results: { @@ -1254,15 +1254,15 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Orc-phase_4_dw-Sync Delay OH-phase_4-NoBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { - dps: 1201.24215 - tps: 1294.38157 + dps: 1187.70849 + tps: 1285.11428 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Orc-phase_4_dw-Sync Delay OH-phase_4-NoBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { - dps: 607.06757 - tps: 443.5615 + dps: 603.60399 + tps: 442.68858 } } dps_results: { @@ -1283,7 +1283,7 @@ dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Troll-phase_4_2h-Sync Auto-phase_4-FullBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { dps: 1036.75287 - tps: 750.03649 + tps: 750.03842 } } dps_results: { @@ -1296,15 +1296,15 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Troll-phase_4_2h-Sync Auto-phase_4-NoBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { - dps: 690.17314 - tps: 926.6511 + dps: 690.65816 + tps: 927.02405 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Troll-phase_4_2h-Sync Auto-phase_4-NoBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { - dps: 440.67515 - tps: 326.58931 + dps: 440.71101 + tps: 326.79013 } } dps_results: { @@ -1325,7 +1325,7 @@ dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Troll-phase_4_2h-Sync Delay OH-phase_4-FullBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { dps: 1036.75287 - tps: 750.03649 + tps: 750.03842 } } dps_results: { @@ -1338,15 +1338,15 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Troll-phase_4_2h-Sync Delay OH-phase_4-NoBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { - dps: 690.17314 - tps: 926.6511 + dps: 690.65816 + tps: 927.02405 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Troll-phase_4_2h-Sync Delay OH-phase_4-NoBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { - dps: 440.67515 - tps: 326.58931 + dps: 440.71101 + tps: 326.79013 } } dps_results: { @@ -1360,14 +1360,14 @@ dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Troll-phase_4_dw-Sync Auto-phase_4-FullBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { dps: 2914.37135 - tps: 2569.31348 + tps: 2571.889 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Troll-phase_4_dw-Sync Auto-phase_4-FullBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { dps: 1452.73493 - tps: 1040.25384 + tps: 1040.29026 } } dps_results: { @@ -1380,15 +1380,15 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Troll-phase_4_dw-Sync Auto-phase_4-NoBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { - dps: 1184.37147 - tps: 1283.61319 + dps: 1189.48681 + tps: 1286.79417 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Troll-phase_4_dw-Sync Auto-phase_4-NoBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { - dps: 599.02874 - tps: 438.06039 + dps: 599.07562 + tps: 438.32663 } } dps_results: { @@ -1402,14 +1402,14 @@ dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Troll-phase_4_dw-Sync Delay OH-phase_4-FullBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { dps: 2914.37135 - tps: 2569.31348 + tps: 2571.889 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Troll-phase_4_dw-Sync Delay OH-phase_4-FullBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { dps: 1452.73493 - tps: 1040.25384 + tps: 1040.29026 } } dps_results: { @@ -1422,15 +1422,15 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Troll-phase_4_dw-Sync Delay OH-phase_4-NoBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { - dps: 1184.37147 - tps: 1283.61319 + dps: 1189.48681 + tps: 1286.79417 } } dps_results: { key: "TestEnhancement-Phase4-Lvl60-Settings-Troll-phase_4_dw-Sync Delay OH-phase_4-NoBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { - dps: 599.02874 - tps: 438.06039 + dps: 599.07562 + tps: 438.32663 } } dps_results: { @@ -1492,15 +1492,15 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase5-Lvl60-AllItems-OstracizedBerserker'sBattlemail" value: { - dps: 3195.99393 - tps: 3243.88992 + dps: 3196.42545 + tps: 3244.34971 } } dps_results: { key: "TestEnhancement-Phase5-Lvl60-AllItems-ShunnedDevotee'sChainmail" value: { - dps: 3133.53913 - tps: 3183.88531 + dps: 3133.94768 + tps: 3184.32139 } } dps_results: { @@ -1513,22 +1513,22 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase5-Lvl60-Average-Default" value: { - dps: 4346.95992 - tps: 3097.73429 + dps: 4346.95827 + tps: 3097.7354 } } dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Orc-phase_5_2h-Sync Auto-phase_5-FullBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { dps: 2183.39859 - tps: 2079.26572 + tps: 2081.13777 } } dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Orc-phase_5_2h-Sync Auto-phase_5-FullBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { dps: 1357.89541 - tps: 970.27076 + tps: 970.20827 } } dps_results: { @@ -1541,15 +1541,15 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Orc-phase_5_2h-Sync Auto-phase_5-NoBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { - dps: 854.0451 - tps: 1061.18898 + dps: 866.94268 + tps: 1069.97404 } } dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Orc-phase_5_2h-Sync Auto-phase_5-NoBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { - dps: 567.82282 - tps: 416.16667 + dps: 567.37427 + tps: 416.39352 } } dps_results: { @@ -1563,14 +1563,14 @@ dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Orc-phase_5_2h-Sync Delay OH-phase_5-FullBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { dps: 2183.39859 - tps: 2079.26572 + tps: 2081.13777 } } dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Orc-phase_5_2h-Sync Delay OH-phase_5-FullBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { dps: 1357.89541 - tps: 970.27076 + tps: 970.20827 } } dps_results: { @@ -1583,15 +1583,15 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Orc-phase_5_2h-Sync Delay OH-phase_5-NoBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { - dps: 854.0451 - tps: 1061.18898 + dps: 866.94268 + tps: 1069.97404 } } dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Orc-phase_5_2h-Sync Delay OH-phase_5-NoBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { - dps: 567.82282 - tps: 416.16667 + dps: 567.37427 + tps: 416.39352 } } dps_results: { @@ -1612,7 +1612,7 @@ dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Orc-phase_5_dw-Sync Auto-phase_5-FullBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { dps: 1610.64489 - tps: 1151.99298 + tps: 1151.90965 } } dps_results: { @@ -1625,15 +1625,15 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Orc-phase_5_dw-Sync Auto-phase_5-NoBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { - dps: 1481.17304 - tps: 1603.61882 + dps: 1479.19397 + tps: 1601.77217 } } dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Orc-phase_5_dw-Sync Auto-phase_5-NoBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { - dps: 661.63052 - tps: 484.34476 + dps: 663.15884 + tps: 485.69316 } } dps_results: { @@ -1654,7 +1654,7 @@ dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Orc-phase_5_dw-Sync Delay OH-phase_5-FullBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { dps: 1610.64489 - tps: 1151.99298 + tps: 1151.90965 } } dps_results: { @@ -1667,15 +1667,15 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Orc-phase_5_dw-Sync Delay OH-phase_5-NoBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { - dps: 1481.17304 - tps: 1603.61882 + dps: 1479.19397 + tps: 1601.77217 } } dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Orc-phase_5_dw-Sync Delay OH-phase_5-NoBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { - dps: 661.63052 - tps: 484.34476 + dps: 663.15884 + tps: 485.69316 } } dps_results: { @@ -1689,14 +1689,14 @@ dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Troll-phase_5_2h-Sync Auto-phase_5-FullBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { dps: 2155.64123 - tps: 2056.76791 + tps: 2054.42831 } } dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Troll-phase_5_2h-Sync Auto-phase_5-FullBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { dps: 1349.85987 - tps: 967.23249 + tps: 967.20374 } } dps_results: { @@ -1709,15 +1709,15 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Troll-phase_5_2h-Sync Auto-phase_5-NoBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { - dps: 845.80607 - tps: 1056.867 + dps: 851.09685 + tps: 1059.33465 } } dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Troll-phase_5_2h-Sync Auto-phase_5-NoBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { - dps: 559.45812 - tps: 409.58072 + dps: 559.46678 + tps: 410.18262 } } dps_results: { @@ -1731,14 +1731,14 @@ dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Troll-phase_5_2h-Sync Delay OH-phase_5-FullBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { dps: 2155.64123 - tps: 2056.76791 + tps: 2054.42831 } } dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Troll-phase_5_2h-Sync Delay OH-phase_5-FullBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { dps: 1349.85987 - tps: 967.23249 + tps: 967.20374 } } dps_results: { @@ -1751,15 +1751,15 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Troll-phase_5_2h-Sync Delay OH-phase_5-NoBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { - dps: 845.80607 - tps: 1056.867 + dps: 851.09685 + tps: 1059.33465 } } dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Troll-phase_5_2h-Sync Delay OH-phase_5-NoBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { - dps: 559.45812 - tps: 409.58072 + dps: 559.46678 + tps: 410.18262 } } dps_results: { @@ -1773,14 +1773,14 @@ dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Troll-phase_5_dw-Sync Auto-phase_5-FullBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { dps: 3449.81429 - tps: 2962.6459 + tps: 2962.6844 } } dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Troll-phase_5_dw-Sync Auto-phase_5-FullBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { dps: 1598.6239 - tps: 1143.70692 + tps: 1143.70835 } } dps_results: { @@ -1793,15 +1793,15 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Troll-phase_5_dw-Sync Auto-phase_5-NoBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { - dps: 1470.80467 - tps: 1599.14937 + dps: 1471.69341 + tps: 1599.1047 } } dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Troll-phase_5_dw-Sync Auto-phase_5-NoBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { - dps: 655.61534 - tps: 478.85873 + dps: 657.43802 + tps: 480.88145 } } dps_results: { @@ -1815,14 +1815,14 @@ dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Troll-phase_5_dw-Sync Delay OH-phase_5-FullBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { dps: 3449.81429 - tps: 2962.6459 + tps: 2962.6844 } } dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Troll-phase_5_dw-Sync Delay OH-phase_5-FullBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { dps: 1598.6239 - tps: 1143.70692 + tps: 1143.70835 } } dps_results: { @@ -1835,15 +1835,15 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Troll-phase_5_dw-Sync Delay OH-phase_5-NoBuffs-P4-Consumes WF/WF-LongMultiTarget" value: { - dps: 1470.80467 - tps: 1599.14937 + dps: 1471.69341 + tps: 1599.1047 } } dps_results: { key: "TestEnhancement-Phase5-Lvl60-Settings-Troll-phase_5_dw-Sync Delay OH-phase_5-NoBuffs-P4-Consumes WF/WF-LongSingleTarget" value: { - dps: 655.61534 - tps: 478.85873 + dps: 657.43802 + tps: 480.88145 } } dps_results: { @@ -1856,7 +1856,7 @@ dps_results: { dps_results: { key: "TestEnhancement-Phase5-Lvl60-SwitchInFrontOfTarget-Default" value: { - dps: 3586.45636 - tps: 2555.03835 + dps: 3585.11474 + tps: 2554.2286 } } diff --git a/sim/shaman/warden/TestWardenShaman.results b/sim/shaman/warden/TestWardenShaman.results index 979014152a..6666ea5885 100644 --- a/sim/shaman/warden/TestWardenShaman.results +++ b/sim/shaman/warden/TestWardenShaman.results @@ -50,12 +50,12 @@ character_stats_results: { stat_weights_results: { key: "TestWardenShaman-Phase4-Lvl60-StatWeights-Default" value: { - weights: 1.10733 + weights: 1.1075 weights: 0 weights: 0 weights: 0 weights: 0 - weights: 0.48821 + weights: 0.48877 weights: 0 weights: 0 weights: 0 @@ -67,7 +67,7 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 0.50333 + weights: 0.50341 weights: 0 weights: 0 weights: 0 @@ -78,7 +78,7 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 0.95019 + weights: 0.95173 weights: 0 weights: 0 weights: 0 @@ -100,77 +100,77 @@ dps_results: { key: "TestWardenShaman-Phase4-Lvl60-AllItems-BloodGuard'sInscribedMail" value: { dps: 1130.37677 - tps: 1171.93995 + tps: 1171.64703 } } dps_results: { key: "TestWardenShaman-Phase4-Lvl60-AllItems-BloodGuard'sMail" value: { dps: 1178.21861 - tps: 1218.20431 + tps: 1217.85955 } } dps_results: { key: "TestWardenShaman-Phase4-Lvl60-AllItems-BloodGuard'sPulsingMail" value: { dps: 1169.52495 - tps: 1212.63273 + tps: 1212.41723 } } dps_results: { key: "TestWardenShaman-Phase4-Lvl60-AllItems-EmeraldChainmail" value: { dps: 1157.93481 - tps: 1199.37725 + tps: 1199.39446 } } dps_results: { key: "TestWardenShaman-Phase4-Lvl60-AllItems-EmeraldLadenChain" value: { dps: 1130.20952 - tps: 1171.32503 + tps: 1171.34224 } } dps_results: { key: "TestWardenShaman-Phase4-Lvl60-AllItems-EmeraldScalemail" value: { dps: 1162.94275 - tps: 1203.1976 + tps: 1203.21482 } } dps_results: { key: "TestWardenShaman-Phase4-Lvl60-AllItems-OstracizedBerserker'sBattlemail" value: { dps: 1734.01986 - tps: 1924.86118 + tps: 1924.78693 } } dps_results: { key: "TestWardenShaman-Phase4-Lvl60-AllItems-TheFiveThunders" value: { dps: 1032.16452 - tps: 1064.34119 + tps: 1064.11558 } } dps_results: { key: "TestWardenShaman-Phase4-Lvl60-Average-Default" value: { - dps: 1945.40033 - tps: 1558.35717 + dps: 1946.18516 + tps: 1559.27187 } } dps_results: { key: "TestWardenShaman-Phase4-Lvl60-Settings-Orc-phase_4_enh_tank-Default-phase_4_enh_tank-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 2060.07253 - tps: 2964.93738 + dps: 2064.82332 + tps: 2971.04346 } } dps_results: { key: "TestWardenShaman-Phase4-Lvl60-Settings-Orc-phase_4_enh_tank-Default-phase_4_enh_tank-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 915.3125 - tps: 797.19719 + dps: 915.97368 + tps: 799.98813 } } dps_results: { @@ -183,15 +183,15 @@ dps_results: { dps_results: { key: "TestWardenShaman-Phase4-Lvl60-Settings-Orc-phase_4_enh_tank-Default-phase_4_enh_tank-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 653.20384 - tps: 1176.27589 + dps: 651.30064 + tps: 1174.51372 } } dps_results: { key: "TestWardenShaman-Phase4-Lvl60-Settings-Orc-phase_4_enh_tank-Default-phase_4_enh_tank-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 325.58904 - tps: 269.14031 + dps: 325.342 + tps: 269.19669 } } dps_results: { @@ -204,15 +204,15 @@ dps_results: { dps_results: { key: "TestWardenShaman-Phase4-Lvl60-Settings-Troll-phase_4_enh_tank-Default-phase_4_enh_tank-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 2041.98474 - tps: 2938.67285 + dps: 2037.93436 + tps: 2933.07072 } } dps_results: { key: "TestWardenShaman-Phase4-Lvl60-Settings-Troll-phase_4_enh_tank-Default-phase_4_enh_tank-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 914.06275 - tps: 794.95484 + dps: 912.82526 + tps: 793.71254 } } dps_results: { @@ -225,15 +225,15 @@ dps_results: { dps_results: { key: "TestWardenShaman-Phase4-Lvl60-Settings-Troll-phase_4_enh_tank-Default-phase_4_enh_tank-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 641.75682 - tps: 1157.14176 + dps: 642.88502 + tps: 1157.89442 } } dps_results: { key: "TestWardenShaman-Phase4-Lvl60-Settings-Troll-phase_4_enh_tank-Default-phase_4_enh_tank-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 319.26101 - tps: 263.50687 + dps: 319.58452 + tps: 263.7138 } } dps_results: { @@ -246,7 +246,7 @@ dps_results: { dps_results: { key: "TestWardenShaman-Phase4-Lvl60-SwitchInFrontOfTarget-Default" value: { - dps: 1678.84637 - tps: 1366.52146 + dps: 1683.63789 + tps: 1371.65062 } } diff --git a/sim/warlock/dps/TestAffliction.results b/sim/warlock/dps/TestAffliction.results index 3f62fecf57..fcf1bffb94 100644 --- a/sim/warlock/dps/TestAffliction.results +++ b/sim/warlock/dps/TestAffliction.results @@ -200,9 +200,9 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 1.27654 + weights: 1.1202 weights: 0 - weights: 1.82338 + weights: 1.70226 weights: 0 weights: 0 weights: 0 @@ -210,8 +210,8 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 8.91568 - weights: 11.47888 + weights: 8.88476 + weights: 11.34705 weights: 0 weights: 0 weights: 0 @@ -249,9 +249,9 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 0.88121 + weights: 0.75243 weights: 0 - weights: 2.36869 + weights: 2.34735 weights: 0 weights: 0 weights: 0 @@ -259,7 +259,7 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 13.52554 + weights: 13.43579 weights: 20.34587 weights: 0 weights: 0 @@ -365,29 +365,29 @@ dps_results: { dps_results: { key: "TestAffliction-Phase3-Lvl50-AllItems-DeathmistRaiment" value: { - dps: 364.27988 - tps: 242.02735 + dps: 364.48305 + tps: 242.34651 } } dps_results: { key: "TestAffliction-Phase3-Lvl50-AllItems-Kezan'sUnstoppableTaint-231346" value: { - dps: 1536.23506 - tps: 1335.96743 + dps: 1535.95199 + tps: 1335.2413 } } dps_results: { key: "TestAffliction-Phase3-Lvl50-Average-Default" value: { - dps: 1542.33025 - tps: 1341.66431 + dps: 1542.3321 + tps: 1341.68039 } } dps_results: { key: "TestAffliction-Phase3-Lvl50-Settings-Orc-nf.ruin-Affliction Warlock-nf.ruin-FullBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 2303.37175 - tps: 3110.34378 + dps: 2303.66701 + tps: 3111.58124 } } dps_results: { @@ -428,29 +428,29 @@ dps_results: { dps_results: { key: "TestAffliction-Phase3-Lvl50-SwitchInFrontOfTarget-Default" value: { - dps: 1526.8694 - tps: 1326.29501 + dps: 1525.78117 + tps: 1325.29798 } } dps_results: { key: "TestAffliction-Phase4-Lvl60-AllItems-BloodGuard'sDreadweave" value: { dps: 841.95051 - tps: 646.75401 + tps: 646.69877 } } dps_results: { key: "TestAffliction-Phase4-Lvl60-AllItems-DeathmistRaiment" value: { dps: 641.81367 - tps: 449.23255 + tps: 449.40754 } } dps_results: { key: "TestAffliction-Phase4-Lvl60-AllItems-EmeraldEnchantedVestments" value: { dps: 843.9855 - tps: 648.24089 + tps: 648.19113 } } dps_results: { @@ -464,7 +464,7 @@ dps_results: { key: "TestAffliction-Phase4-Lvl60-AllItems-IronweaveBattlesuit" value: { dps: 631.87947 - tps: 449.61526 + tps: 449.62901 } } dps_results: { @@ -478,28 +478,28 @@ dps_results: { key: "TestAffliction-Phase4-Lvl60-AllItems-Knight-Lieutenant'sDreadweave" value: { dps: 841.95051 - tps: 646.75401 + tps: 646.69877 } } dps_results: { key: "TestAffliction-Phase4-Lvl60-AllItems-MalevolentProphet'sVestments" value: { dps: 1341.30618 - tps: 1133.79295 + tps: 1133.78872 } } dps_results: { key: "TestAffliction-Phase4-Lvl60-AllItems-NightmareProphet'sGarb" value: { dps: 1329.96423 - tps: 1120.25494 + tps: 1120.07352 } } dps_results: { key: "TestAffliction-Phase4-Lvl60-Average-Default" value: { - dps: 3154.98055 - tps: 2979.90618 + dps: 3155.04244 + tps: 2979.97778 } } dps_results: { diff --git a/sim/warlock/dps/TestDestruction.results b/sim/warlock/dps/TestDestruction.results index 3ae54702c3..932fb25d9a 100644 --- a/sim/warlock/dps/TestDestruction.results +++ b/sim/warlock/dps/TestDestruction.results @@ -298,9 +298,9 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 0.35989 + weights: 0.32962 weights: 0 - weights: 2.06494 + weights: 2.05556 weights: 0 weights: 0 weights: 0 @@ -308,7 +308,7 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 13.08138 + weights: 13.02995 weights: 10.9915 weights: 0 weights: 0 @@ -533,35 +533,35 @@ dps_results: { dps_results: { key: "TestDestruction-Phase3-Lvl50-AllItems-DeathmistRaiment" value: { - dps: 375.63621 + dps: 375.67036 tps: 250.70076 } } dps_results: { key: "TestDestruction-Phase3-Lvl50-AllItems-Kezan'sUnstoppableTaint-231346" value: { - dps: 1718.25875 + dps: 1718.31661 tps: 1545.97325 } } dps_results: { key: "TestDestruction-Phase3-Lvl50-Average-Default" value: { - dps: 1733.28554 - tps: 1558.99888 + dps: 1733.24508 + tps: 1558.95882 } } dps_results: { key: "TestDestruction-Phase3-Lvl50-Settings-Orc-backdraft-Destruction Warlock-backdraft-FullBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 2681.43845 + dps: 2682.70411 tps: 3160.92955 } } dps_results: { key: "TestDestruction-Phase3-Lvl50-Settings-Orc-backdraft-Destruction Warlock-backdraft-FullBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 1728.68364 + dps: 1728.7415 tps: 1556.63607 } } @@ -575,15 +575,15 @@ dps_results: { dps_results: { key: "TestDestruction-Phase3-Lvl50-Settings-Orc-backdraft-Destruction Warlock-backdraft-NoBuffs-P3-Consumes-LongMultiTarget" value: { - dps: 1687.22031 - tps: 2289.86954 + dps: 1689.4618 + tps: 2292.23727 } } dps_results: { key: "TestDestruction-Phase3-Lvl50-Settings-Orc-backdraft-Destruction Warlock-backdraft-NoBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 979.66566 - tps: 885.5042 + dps: 979.90538 + tps: 885.76044 } } dps_results: { @@ -596,7 +596,7 @@ dps_results: { dps_results: { key: "TestDestruction-Phase3-Lvl50-SwitchInFrontOfTarget-Default" value: { - dps: 1719.76373 + dps: 1719.82159 tps: 1547.54005 } } diff --git a/sim/warrior/dps_warrior/TestDualWieldWarrior.results b/sim/warrior/dps_warrior/TestDualWieldWarrior.results index 99a9604ac6..a9ff10c8e7 100644 --- a/sim/warrior/dps_warrior/TestDualWieldWarrior.results +++ b/sim/warrior/dps_warrior/TestDualWieldWarrior.results @@ -148,8 +148,8 @@ character_stats_results: { stat_weights_results: { key: "TestDualWieldWarrior-Phase2-Lvl40-StatWeights-Default" value: { - weights: 0.1642 - weights: 0.07715 + weights: 0.35659 + weights: 0.14353 weights: 0 weights: 0 weights: 0 @@ -165,9 +165,9 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 0.71965 - weights: 8.44477 - weights: 8.35111 + weights: 0.92605 + weights: 8.64998 + weights: 8.26897 weights: 0 weights: 0 weights: 0 @@ -197,8 +197,8 @@ stat_weights_results: { stat_weights_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-StatWeights-Default" value: { - weights: 2.06213 - weights: 1.4984 + weights: 2.42289 + weights: 0.88604 weights: 0 weights: 0 weights: 0 @@ -214,9 +214,9 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 1.17945 - weights: 5.54724 - weights: 24.85866 + weights: 0.89851 + weights: 9.71414 + weights: 23.96413 weights: 0 weights: 0 weights: 0 @@ -246,8 +246,8 @@ stat_weights_results: { stat_weights_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-StatWeights-Default" value: { - weights: 2.36943 - weights: 1.67032 + weights: 2.342 + weights: 1.64292 weights: 0 weights: 0 weights: 0 @@ -263,9 +263,9 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 0.45228 - weights: 38.08932 - weights: 25.51098 + weights: 0.56125 + weights: 34.00254 + weights: 23.21678 weights: 0 weights: 0 weights: 0 @@ -295,15 +295,15 @@ stat_weights_results: { dps_results: { key: "TestDualWieldWarrior-Phase2-Lvl40-AllItems-BattlegearofHeroism" value: { - dps: 549.93761 - tps: 488.71629 + dps: 549.14216 + tps: 488.18372 } } dps_results: { key: "TestDualWieldWarrior-Phase2-Lvl40-Average-Default" value: { - dps: 607.36853 - tps: 536.6699 + dps: 607.42419 + tps: 536.72713 } } dps_results: { @@ -393,371 +393,371 @@ dps_results: { dps_results: { key: "TestDualWieldWarrior-Phase2-Lvl40-SwitchInFrontOfTarget-Default" value: { - dps: 562.85785 - tps: 498.46466 + dps: 562.93004 + tps: 498.66892 } } dps_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-AllItems-BanishedMartyr'sFullPlate" value: { - dps: 2640.40383 - tps: 2285.16758 + dps: 2640.84091 + tps: 2285.45419 } } dps_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-AllItems-BattlegearofHeroism" value: { - dps: 2006.20591 - tps: 1771.85472 + dps: 2009.24057 + tps: 1773.88204 } } dps_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-AllItems-BloodGuard'sPlate" value: { - dps: 2380.76863 - tps: 2062.39792 + dps: 2385.56292 + tps: 2067.04592 } } dps_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-AllItems-EmeraldDreamPlate" value: { - dps: 2343.79433 - tps: 2030.92792 + dps: 2344.26733 + tps: 2031.38617 } } dps_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-AllItems-Knight-Lieutenant'sPlate" value: { - dps: 2380.76863 - tps: 2062.39792 + dps: 2385.56292 + tps: 2067.04592 } } dps_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-AllItems-WailingBerserker'sPlateArmor" value: { - dps: 2809.42001 - tps: 2424.62313 + dps: 2808.56934 + tps: 2423.84148 } } dps_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-Average-Default" value: { - dps: 3650.52686 - tps: 2864.96759 + dps: 3558.06845 + tps: 2810.21818 } } dps_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-Settings-Human-phase_4_dw-Fury-phase_4_fury-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 1665.94355 - tps: 1596.17137 + dps: 1920.90518 + tps: 1848.85019 } } dps_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-Settings-Human-phase_4_dw-Fury-phase_4_fury-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 527.2622 - tps: 477.94961 + dps: 543.59854 + tps: 489.87477 } } dps_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-Settings-Human-phase_4_dw-Fury-phase_4_fury-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 721.71303 - tps: 631.12714 + dps: 742.6099 + tps: 654.26044 } } dps_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-Settings-Human-phase_4_dw-Fury-phase_4_fury-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 771.47964 - tps: 814.26555 + dps: 882.65917 + tps: 924.13407 } } dps_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-Settings-Human-phase_4_dw-Fury-phase_4_fury-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 267.89319 - tps: 270.69185 + dps: 274.69261 + tps: 274.93684 } } dps_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-Settings-Human-phase_4_dw-Fury-phase_4_fury-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 370.22181 - tps: 349.65945 + dps: 382.93307 + tps: 362.69364 } } dps_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-Settings-Orc-phase_4_dw-Fury-phase_4_fury-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 1782.44796 - tps: 1734.88847 + dps: 2111.48292 + tps: 2019.09226 } } dps_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-Settings-Orc-phase_4_dw-Fury-phase_4_fury-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 546.02403 - tps: 492.49924 + dps: 566.58248 + tps: 507.29288 } } dps_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-Settings-Orc-phase_4_dw-Fury-phase_4_fury-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 754.98822 - tps: 655.68534 + dps: 756.57409 + tps: 663.59347 } } dps_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-Settings-Orc-phase_4_dw-Fury-phase_4_fury-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 808.0255 - tps: 861.77431 + dps: 945.24535 + tps: 979.99355 } } dps_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-Settings-Orc-phase_4_dw-Fury-phase_4_fury-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 268.87524 - tps: 270.42504 + dps: 276.79458 + tps: 275.88395 } } dps_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-Settings-Orc-phase_4_dw-Fury-phase_4_fury-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 384.58615 - tps: 359.50764 + dps: 384.92667 + tps: 362.68756 } } dps_results: { key: "TestDualWieldWarrior-Phase4-Lvl60-SwitchInFrontOfTarget-Default" value: { - dps: 2860.91955 - tps: 2251.81103 + dps: 2796.61703 + tps: 2219.30972 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-AllItems-BanishedMartyr'sFullPlate" value: { - dps: 3018.44087 - tps: 2594.68586 + dps: 3016.04781 + tps: 2592.62227 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-AllItems-BattlegearofHeroism" value: { - dps: 2083.31057 - tps: 1826.4189 + dps: 2089.61037 + tps: 1832.11452 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-AllItems-BloodGuard'sPlate" value: { - dps: 2528.78496 - tps: 2176.47446 + dps: 2528.63866 + tps: 2176.07944 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-AllItems-EmeraldDreamPlate" value: { - dps: 2497.57838 - tps: 2150.89473 + dps: 2498.78434 + tps: 2153.75394 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-AllItems-Knight-Lieutenant'sPlate" value: { - dps: 2528.78496 - tps: 2176.47446 + dps: 2528.63866 + tps: 2176.07944 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-AllItems-WailingBerserker'sPlateArmor" value: { - dps: 3219.55159 - tps: 2763.33934 + dps: 3217.82146 + tps: 2761.85656 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Average-Default" value: { - dps: 4247.68499 - tps: 3309.32956 + dps: 4125.05398 + tps: 3210.38966 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Human-phase_5_dw_t1-Fury-phase_5_dw-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 1984.37927 - tps: 1830.49648 + dps: 1793.98046 + tps: 1685.84233 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Human-phase_5_dw_t1-Fury-phase_5_dw-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 531.65729 - tps: 459.07254 + dps: 498.46219 + tps: 436.82431 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Human-phase_5_dw_t1-Fury-phase_5_dw-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 744.12193 - tps: 618.50168 + dps: 619.02344 + tps: 527.68791 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Human-phase_5_dw_t1-Fury-phase_5_dw-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 859.51547 - tps: 875.43201 + dps: 757.10763 + tps: 797.77773 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Human-phase_5_dw_t1-Fury-phase_5_dw-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 224.96729 - tps: 226.39952 + dps: 211.36564 + tps: 217.1604 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Human-phase_5_dw_t1-Fury-phase_5_dw-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 334.39933 - tps: 307.68423 + dps: 278.22091 + tps: 268.23013 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Human-phase_5_dw_t2-Fury-phase_5_dw-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 1519.99206 - tps: 1474.72736 + dps: 1503.86323 + tps: 1444.90892 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Human-phase_5_dw_t2-Fury-phase_5_dw-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 427.63699 - tps: 379.10516 + dps: 430.72007 + tps: 381.28147 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Human-phase_5_dw_t2-Fury-phase_5_dw-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 554.2826 - tps: 485.8646 + dps: 556.14806 + tps: 474.27621 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Human-phase_5_dw_t2-Fury-phase_5_dw-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 631.33409 - tps: 701.06045 + dps: 614.03525 + tps: 678.90808 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Human-phase_5_dw_t2-Fury-phase_5_dw-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 171.2215 - tps: 185.13149 + dps: 170.40302 + tps: 184.44883 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Human-phase_5_dw_t2-Fury-phase_5_dw-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 227.19188 - tps: 230.97275 + dps: 229.4978 + tps: 227.95264 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Orc-phase_5_dw_t1-Fury-phase_5_dw-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 2077.36151 - tps: 1920.06936 + dps: 1803.47333 + tps: 1708.13867 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Orc-phase_5_dw_t1-Fury-phase_5_dw-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 537.46016 - tps: 462.80481 + dps: 499.78844 + tps: 435.3606 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Orc-phase_5_dw_t1-Fury-phase_5_dw-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 789.56162 - tps: 645.46675 + dps: 630.91444 + tps: 528.14516 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Orc-phase_5_dw_t1-Fury-phase_5_dw-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 931.88481 - tps: 941.90068 + dps: 779.81301 + tps: 820.92584 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Orc-phase_5_dw_t1-Fury-phase_5_dw-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 232.93777 - tps: 230.95747 + dps: 216.31953 + tps: 219.80096 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Orc-phase_5_dw_t1-Fury-phase_5_dw-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 359.93651 - tps: 323.04532 + dps: 286.91064 + tps: 271.0869 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Orc-phase_5_dw_t2-Fury-phase_5_dw-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 1297.32354 - tps: 1270.68014 + dps: 1548.26857 + tps: 1498.42959 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Orc-phase_5_dw_t2-Fury-phase_5_dw-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 428.93704 - tps: 375.57527 + dps: 428.49337 + tps: 378.48332 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Orc-phase_5_dw_t2-Fury-phase_5_dw-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 572.14908 - tps: 465.05196 + dps: 557.20038 + tps: 468.71355 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Orc-phase_5_dw_t2-Fury-phase_5_dw-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 536.97642 - tps: 615.03614 + dps: 640.62164 + tps: 707.04497 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Orc-phase_5_dw_t2-Fury-phase_5_dw-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 174.93958 - tps: 186.41504 + dps: 171.32602 + tps: 184.79604 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-Settings-Orc-phase_5_dw_t2-Fury-phase_5_dw-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 241.4118 - tps: 230.39304 + dps: 233.37833 + tps: 229.59805 } } dps_results: { key: "TestDualWieldWarrior-Phase5-Lvl60-SwitchInFrontOfTarget-Default" value: { - dps: 3355.53135 - tps: 2609.97597 + dps: 3260.74226 + tps: 2541.30019 } } diff --git a/sim/warrior/dps_warrior/TestTwoHandedWarrior.results b/sim/warrior/dps_warrior/TestTwoHandedWarrior.results index b5b6345806..4b974d6e39 100644 --- a/sim/warrior/dps_warrior/TestTwoHandedWarrior.results +++ b/sim/warrior/dps_warrior/TestTwoHandedWarrior.results @@ -99,8 +99,8 @@ character_stats_results: { stat_weights_results: { key: "TestTwoHandedWarrior-Phase3-Lvl50-StatWeights-Default" value: { - weights: 1.28624 - weights: 0.95655 + weights: 1.28691 + weights: 1.28641 weights: 0 weights: 0 weights: 0 @@ -116,9 +116,9 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 0.50989 - weights: 15.71723 - weights: 10.32656 + weights: 0.51015 + weights: 15.79775 + weights: 10.34512 weights: 0 weights: 0 weights: 0 @@ -148,8 +148,8 @@ stat_weights_results: { stat_weights_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-StatWeights-Default" value: { - weights: 2.35203 - weights: 1.10467 + weights: 2.52805 + weights: 1.4221 weights: 0 weights: 0 weights: 0 @@ -165,9 +165,9 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 1.07254 + weights: 1.04082 weights: 0 - weights: 21.72808 + weights: 24.34179 weights: 0 weights: 0 weights: 0 @@ -197,15 +197,15 @@ stat_weights_results: { dps_results: { key: "TestTwoHandedWarrior-Phase3-Lvl50-AllItems-BattlegearofHeroism" value: { - dps: 800.37525 - tps: 689.41703 + dps: 808.73565 + tps: 682.50594 } } dps_results: { key: "TestTwoHandedWarrior-Phase3-Lvl50-Average-Default" value: { - dps: 1168.22826 - tps: 998.0197 + dps: 1168.22549 + tps: 997.99464 } } dps_results: { @@ -218,15 +218,15 @@ dps_results: { dps_results: { key: "TestTwoHandedWarrior-Phase3-Lvl50-Settings-Human-phase_3_2h-Arms-phase_3_arms-FullBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 86.6047 - tps: 79.76864 + dps: 78.65611 + tps: 73.27992 } } dps_results: { key: "TestTwoHandedWarrior-Phase3-Lvl50-Settings-Human-phase_3_2h-Arms-phase_3_arms-FullBuffs-P3-Consumes-ShortSingleTarget" value: { - dps: 158.62624 - tps: 142.02593 + dps: 123.02895 + tps: 113.56845 } } dps_results: { @@ -239,15 +239,15 @@ dps_results: { dps_results: { key: "TestTwoHandedWarrior-Phase3-Lvl50-Settings-Human-phase_3_2h-Arms-phase_3_arms-NoBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 40.87872 - tps: 41.88825 + dps: 36.54158 + tps: 38.39805 } } dps_results: { key: "TestTwoHandedWarrior-Phase3-Lvl50-Settings-Human-phase_3_2h-Arms-phase_3_arms-NoBuffs-P3-Consumes-ShortSingleTarget" value: { - dps: 80.15143 - tps: 77.10208 + dps: 61.39207 + tps: 62.2559 } } dps_results: { @@ -260,15 +260,15 @@ dps_results: { dps_results: { key: "TestTwoHandedWarrior-Phase3-Lvl50-Settings-Orc-phase_3_2h-Arms-phase_3_arms-FullBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 93.89587 - tps: 85.90045 + dps: 86.23065 + tps: 79.42042 } } dps_results: { key: "TestTwoHandedWarrior-Phase3-Lvl50-Settings-Orc-phase_3_2h-Arms-phase_3_arms-FullBuffs-P3-Consumes-ShortSingleTarget" value: { - dps: 168.57229 - tps: 150.14534 + dps: 132.74908 + tps: 121.64683 } } dps_results: { @@ -281,245 +281,245 @@ dps_results: { dps_results: { key: "TestTwoHandedWarrior-Phase3-Lvl50-Settings-Orc-phase_3_2h-Arms-phase_3_arms-NoBuffs-P3-Consumes-LongSingleTarget" value: { - dps: 44.05879 - tps: 44.57861 + dps: 39.79389 + tps: 41.08626 } } dps_results: { key: "TestTwoHandedWarrior-Phase3-Lvl50-Settings-Orc-phase_3_2h-Arms-phase_3_arms-NoBuffs-P3-Consumes-ShortSingleTarget" value: { - dps: 85.2417 - tps: 81.17224 + dps: 66.31617 + tps: 66.34072 } } dps_results: { key: "TestTwoHandedWarrior-Phase3-Lvl50-SwitchInFrontOfTarget-Default" value: { - dps: 1088.73646 - tps: 934.41168 + dps: 1085.53521 + tps: 915.65592 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-AllItems-BanishedMartyr'sFullPlate" value: { - dps: 2518.71782 - tps: 2094.62934 + dps: 2527.71249 + tps: 2101.44737 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-AllItems-BattlegearofHeroism" value: { - dps: 1564.08877 - tps: 1326.46969 + dps: 1561.89726 + tps: 1325.24322 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-AllItems-BloodGuard'sPlate" value: { - dps: 1875.8462 - tps: 1581.55023 + dps: 1867.11073 + tps: 1574.41076 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-AllItems-EmeraldDreamPlate" value: { - dps: 1857.29159 - tps: 1565.29553 + dps: 1855.44599 + tps: 1564.10468 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-AllItems-Knight-Lieutenant'sPlate" value: { - dps: 1875.8462 - tps: 1581.55023 + dps: 1867.11073 + tps: 1574.41076 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-AllItems-WailingBerserker'sPlateArmor" value: { - dps: 2736.74289 - tps: 2276.7602 + dps: 2728.94006 + tps: 2270.42246 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Average-Default" value: { - dps: 4249.86633 - tps: 3224.99437 + dps: 4242.25007 + tps: 3223.93489 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Human-phase_5_2h_t1-Arms-phase_5_2h-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 930.46737 - tps: 704.95796 + dps: 930.83594 + tps: 706.58583 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Human-phase_5_2h_t1-Arms-phase_5_2h-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 912.14396 - tps: 597.36125 + dps: 912.51253 + tps: 598.96382 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Human-phase_5_2h_t1-Arms-phase_5_2h-FullBuffs-P4-Consumes-ShortSingleTarget" value: { dps: 1200.40369 - tps: 797.38541 + tps: 798.1354 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Human-phase_5_2h_t1-Arms-phase_5_2h-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 441.60384 - tps: 388.30563 + dps: 441.68427 + tps: 388.53209 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Human-phase_5_2h_t1-Arms-phase_5_2h-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 430.44384 - tps: 286.04615 + dps: 430.52427 + tps: 286.28798 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Human-phase_5_2h_t1-Arms-phase_5_2h-NoBuffs-P4-Consumes-ShortSingleTarget" value: { dps: 568.7573 - tps: 382.63447 + tps: 382.92863 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Human-phase_5_2h_t2-Arms-phase_5_2h-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 661.9888 - tps: 545.51182 + dps: 676.69412 + tps: 555.82884 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Human-phase_5_2h_t2-Arms-phase_5_2h-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 650.26937 - tps: 443.07114 + dps: 664.92077 + tps: 453.2674 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Human-phase_5_2h_t2-Arms-phase_5_2h-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 996.99915 - tps: 707.27605 + dps: 995.48949 + tps: 706.95729 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Human-phase_5_2h_t2-Arms-phase_5_2h-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 295.96286 - tps: 298.26706 + dps: 294.41586 + tps: 297.79681 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Human-phase_5_2h_t2-Arms-phase_5_2h-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 288.23286 - tps: 198.76501 + dps: 286.68586 + tps: 198.11959 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Human-phase_5_2h_t2-Arms-phase_5_2h-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 454.5056 - tps: 324.6227 + dps: 451.13908 + tps: 322.64098 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Orc-phase_5_2h_t1-Arms-phase_5_2h-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 950.85787 - tps: 721.044 + dps: 949.62771 + tps: 720.18918 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Orc-phase_5_2h_t1-Arms-phase_5_2h-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 933.29959 - tps: 613.98228 + dps: 932.36216 + tps: 613.38694 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Orc-phase_5_2h_t1-Arms-phase_5_2h-FullBuffs-P4-Consumes-ShortSingleTarget" value: { dps: 1279.7417 - tps: 854.11179 + tps: 854.24839 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Orc-phase_5_2h_t1-Arms-phase_5_2h-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 455.87283 - tps: 398.46767 + dps: 455.39175 + tps: 397.98404 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Orc-phase_5_2h_t1-Arms-phase_5_2h-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 445.02783 - tps: 296.40794 + dps: 444.71925 + tps: 296.05868 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Orc-phase_5_2h_t1-Arms-phase_5_2h-NoBuffs-P4-Consumes-ShortSingleTarget" value: { dps: 610.73073 - tps: 412.04702 + tps: 411.9581 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Orc-phase_5_2h_t2-Arms-phase_5_2h-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 668.7265 - tps: 551.66098 + dps: 679.70083 + tps: 560.76689 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Orc-phase_5_2h_t2-Arms-phase_5_2h-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 657.51411 - tps: 449.56076 + dps: 667.9112 + tps: 458.13154 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Orc-phase_5_2h_t2-Arms-phase_5_2h-FullBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 1071.83196 - tps: 763.79772 + dps: 1066.73891 + tps: 760.90688 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Orc-phase_5_2h_t2-Arms-phase_5_2h-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 296.23262 - tps: 299.75068 + dps: 298.151 + tps: 302.34264 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Orc-phase_5_2h_t2-Arms-phase_5_2h-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 288.65762 - tps: 200.44011 + dps: 290.5685 + tps: 202.75094 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-Settings-Orc-phase_5_2h_t2-Arms-phase_5_2h-NoBuffs-P4-Consumes-ShortSingleTarget" value: { - dps: 479.76603 - tps: 345.84801 + dps: 475.17394 + tps: 342.8837 } } dps_results: { key: "TestTwoHandedWarrior-Phase5-Lvl60-SwitchInFrontOfTarget-Default" value: { - dps: 3490.71511 - tps: 2629.23325 + dps: 3483.6556 + tps: 2628.79769 } } diff --git a/sim/warrior/tank_warrior/TestTankWarrior.results b/sim/warrior/tank_warrior/TestTankWarrior.results index 700c3b48dc..1fa94bce49 100644 --- a/sim/warrior/tank_warrior/TestTankWarrior.results +++ b/sim/warrior/tank_warrior/TestTankWarrior.results @@ -50,7 +50,7 @@ character_stats_results: { stat_weights_results: { key: "TestTankWarrior-Phase4-Lvl60-StatWeights-Default" value: { - weights: 0.8209 + weights: 0.91422 weights: 0 weights: 0 weights: 0 @@ -67,7 +67,7 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 0.81875 + weights: 0.70377 weights: 0 weights: 0 weights: 0 @@ -78,9 +78,9 @@ stat_weights_results: { weights: 0 weights: 0 weights: 0 - weights: 1.08872 + weights: 1.53747 weights: 0 - weights: 0.52154 + weights: 0.52263 weights: 0 weights: 0 weights: 0 @@ -99,64 +99,64 @@ stat_weights_results: { dps_results: { key: "TestTankWarrior-Phase4-Lvl60-AllItems-BanishedMartyr'sFullPlate" value: { - dps: 1578.6191 - tps: 3514.79604 + dps: 1578.0772 + tps: 3521.85991 } } dps_results: { key: "TestTankWarrior-Phase4-Lvl60-AllItems-BattlegearofHeroism" value: { - dps: 894.07226 - tps: 1833.25799 + dps: 894.16249 + tps: 1835.25281 } } dps_results: { key: "TestTankWarrior-Phase4-Lvl60-AllItems-BloodGuard'sPlate" value: { - dps: 896.47086 - tps: 1878.68094 + dps: 896.49252 + tps: 1878.9529 } } dps_results: { key: "TestTankWarrior-Phase4-Lvl60-AllItems-EmeraldDreamPlate" value: { - dps: 887.05895 - tps: 1859.49476 + dps: 887.04747 + tps: 1859.72844 } } dps_results: { key: "TestTankWarrior-Phase4-Lvl60-AllItems-Knight-Lieutenant'sPlate" value: { - dps: 896.47086 - tps: 1878.68094 + dps: 896.49252 + tps: 1878.9529 } } dps_results: { key: "TestTankWarrior-Phase4-Lvl60-AllItems-WailingBerserker'sPlateArmor" value: { - dps: 1660.38468 - tps: 3617.59261 + dps: 1657.23057 + tps: 3612.51467 } } dps_results: { key: "TestTankWarrior-Phase4-Lvl60-Average-Default" value: { - dps: 1493.58665 - tps: 3875.08542 + dps: 1494.20891 + tps: 3875.86074 } } dps_results: { key: "TestTankWarrior-Phase4-Lvl60-Settings-Human-phase_4_tanky-Arms-phase_4-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 430.00424 - tps: 1230.87024 + dps: 429.52493 + tps: 1228.36796 } } dps_results: { key: "TestTankWarrior-Phase4-Lvl60-Settings-Human-phase_4_tanky-Arms-phase_4-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 112.75603 - tps: 373.56071 + dps: 112.50303 + tps: 372.75981 } } dps_results: { @@ -169,15 +169,15 @@ dps_results: { dps_results: { key: "TestTankWarrior-Phase4-Lvl60-Settings-Human-phase_4_tanky-Arms-phase_4-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 144.50986 - tps: 568.28568 + dps: 144.27914 + tps: 566.8831 } } dps_results: { key: "TestTankWarrior-Phase4-Lvl60-Settings-Human-phase_4_tanky-Arms-phase_4-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 49.70933 - tps: 200.50334 + dps: 49.55895 + tps: 200.01979 } } dps_results: { @@ -190,15 +190,15 @@ dps_results: { dps_results: { key: "TestTankWarrior-Phase4-Lvl60-Settings-Orc-phase_4_tanky-Arms-phase_4-FullBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 446.44752 - tps: 1261.30931 + dps: 445.96821 + tps: 1258.80704 } } dps_results: { key: "TestTankWarrior-Phase4-Lvl60-Settings-Orc-phase_4_tanky-Arms-phase_4-FullBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 116.93311 - tps: 383.60741 + dps: 116.68012 + tps: 382.8065 } } dps_results: { @@ -211,15 +211,15 @@ dps_results: { dps_results: { key: "TestTankWarrior-Phase4-Lvl60-Settings-Orc-phase_4_tanky-Arms-phase_4-NoBuffs-P4-Consumes-LongMultiTarget" value: { - dps: 144.77341 - tps: 569.0788 + dps: 144.54269 + tps: 567.67622 } } dps_results: { key: "TestTankWarrior-Phase4-Lvl60-Settings-Orc-phase_4_tanky-Arms-phase_4-NoBuffs-P4-Consumes-LongSingleTarget" value: { - dps: 49.73817 - tps: 200.63862 + dps: 49.58779 + tps: 200.15507 } } dps_results: { @@ -232,7 +232,7 @@ dps_results: { dps_results: { key: "TestTankWarrior-Phase4-Lvl60-SwitchInFrontOfTarget-Default" value: { - dps: 1269.68994 - tps: 3325.92185 + dps: 1268.20082 + tps: 3331.84445 } } diff --git a/ui/core/components/individual_sim_ui/apl_actions.ts b/ui/core/components/individual_sim_ui/apl_actions.ts index d808d3b285..636f8b2290 100644 --- a/ui/core/components/individual_sim_ui/apl_actions.ts +++ b/ui/core/components/individual_sim_ui/apl_actions.ts @@ -19,7 +19,9 @@ import { APLActionMultidot, APLActionMultishield, APLActionResetSequence, + APLActionRelativeSchedule, APLActionSchedule, + APLActionPeriodicSchedule, APLActionSequence, APLActionStrictSequence, APLActionTriggerICD, @@ -476,6 +478,26 @@ const actionKindFactories: { [f in NonNullable]: ActionKindConfig newValue: () => APLActionWaitUntil.create(), fields: [AplValues.valueFieldConfig('condition')], }), + ['relativeSchedule']: inputBuilder({ + label: 'Scheduled Relative Action', + submenu: ['Timing'], + shortDescription: 'Executes the inner action once at each specified relative timing (Compared to current sim time).', + includeIf: (player: Player, isPrepull: boolean) => !isPrepull, + newValue: () => + APLActionSchedule.create({ + schedule: '1s', + innerAction: { + action: { oneofKind: 'castSpell', castSpell: {} }, + }, + }), + fields: [ + AplHelpers.stringFieldConfig('schedule', { + label: 'Do At', + labelTooltip: 'Comma-separated list of timings. The inner action will be performed once at each timing.', + }), + actionFieldConfig('innerAction'), + ], + }), ['schedule']: inputBuilder({ label: 'Scheduled Action', submenu: ['Timing'], @@ -496,6 +518,26 @@ const actionKindFactories: { [f in NonNullable]: ActionKindConfig actionFieldConfig('innerAction'), ], }), + ['periodicSchedule']: inputBuilder({ + label: 'Scheduled Periodic Action', + submenu: ['Timing'], + shortDescription: 'Executes the inner action once at each periodic timing starting at the start time.', + includeIf: (player: Player, isPrepull: boolean) => !isPrepull, + newValue: () => + APLActionSchedule.create({ + schedule: '0s, 60s', + innerAction: { + action: { oneofKind: 'castSpell', castSpell: {} }, + }, + }), + fields: [ + AplHelpers.stringFieldConfig('schedule', { + label: 'Do At', + labelTooltip: 'Comma-separated list of Start time followed by period. The inner action will be performed once at each timing.', + }), + actionFieldConfig('innerAction'), + ], + }), ['sequence']: inputBuilder({ label: 'Sequence', submenu: ['Sequences'], diff --git a/ui/retribution_paladin/apls/p5ret-twist-4DR-CancelAura.apl.json b/ui/retribution_paladin/apls/p5ret-twist-4DR-CancelAura.apl.json new file mode 100644 index 0000000000..1df3f315b3 --- /dev/null +++ b/ui/retribution_paladin/apls/p5ret-twist-4DR-CancelAura.apl.json @@ -0,0 +1,20 @@ +{ + "type": "TypeAPL", + "prepullActions": [ + {"action":{"castSpell":{"spellId":{"spellId":20920,"rank":5}}},"doAtValue":{"const":{"val":"-1.5"}}}, + {"action":{"castSpell":{"spellId":{"spellId":407798}}},"doAtValue":{"const":{"val":"0"}}}, + {"action":{"activateAuraWithStacks":{"auraId":{"spellId":21919},"numStacks":"4"}},"doAtValue":{"const":{"val":"0"}},"hide":true} + ], + "priorityList": [ + {"action":{"autocastOtherCooldowns":{}}}, + {"action":{"condition":{"cmp":{"op":"OpEq","lhs":{"autoTimeToNext":{"autoType":"MainHand"}},"rhs":{"autoSwingTime":{"autoType":"MainHand"}}}},"relativeSchedule":{"schedule":"0.2s","innerAction":{"condition":{"cmp":{"op":"OpLt","lhs":{"auraRemainingTime":{"auraId":{"spellId":20920,"rank":5}}},"rhs":{"const":{"val":"0.5s"}}}},"strictSequence":{"actions":[{"cancelAura":{"auraId":{"spellId":20920,"rank":5}}},{"castSpell":{"spellId":{"spellId":20271}}}]}}}}}, + {"action":{"condition":{"cmp":{"op":"OpEq","lhs":{"autoTimeToNext":{"autoType":"MainHand"}},"rhs":{"autoSwingTime":{"autoType":"MainHand"}}}},"relativeSchedule":{"schedule":"0.2s","innerAction":{"condition":{"or":{"vals":[{"cmp":{"op":"OpGt","lhs":{"auraRemainingTime":{"auraId":{"spellId":20920,"rank":5}}},"rhs":{"const":{"val":"0.5s"}}}},{"not":{"val":{"auraIsActive":{"auraId":{"spellId":20920,"rank":5}}}}}]}},"castSpell":{"spellId":{"spellId":20271}}}}}}, + {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpGt","lhs":{"const":{"val":"100ms"}},"rhs":{"autoTimeToNext":{"autoType":"Melee"}}}},{"auraIsActive":{"auraId":{"spellId":20920,"rank":5}}}]}},"castSpell":{"spellId":{"spellId":407798}}}}, + {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpGt","lhs":{"const":{"val":"200ms"}},"rhs":{"autoTimeToNext":{"autoType":"Melee"}}}},{"auraIsActive":{"auraId":{"spellId":407798}}},{"or":{"vals":[{"not":{"val":{"runeIsEquipped":{"runeId":{"spellId":429152}}}}},{"not":{"val":{"cmp":{"op":"OpLt","lhs":{"remainingTimePercent":{}},"rhs":{"const":{"val":"10%"}}}}}}]}}]}},"castSpell":{"spellId":{"spellId":20920,"rank":5}}}}, + {"action":{"condition":{"and":{"vals":[{"not":{"val":{"auraIsActive":{"auraId":{"spellId":407798}}}}},{"cmp":{"op":"OpLt","lhs":{"remainingTimePercent":{}},"rhs":{"const":{"val":"10%"}}}},{"runeIsEquipped":{"runeId":{"spellId":429152}}}]}},"castSpell":{"spellId":{"spellId":407798}}}}, + {"action":{"condition":{"and":{"vals":[{"spellCanCast":{"spellId":{"spellId":24239,"rank":3}}},{"cmp":{"op":"OpLt","lhs":{"remainingTimePercent":{}},"rhs":{"const":{"val":"10%"}}}},{"runeIsEquipped":{"runeId":{"spellId":429152}}}]}},"castSpell":{"spellId":{"spellId":24239,"rank":3}}}}, + {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpGt","lhs":{"autoTimeToNext":{"autoType":"Any"}},"rhs":{"const":{"val":"1.5s"}}}},{"gcdIsReady":{}}]}},"castSpell":{"spellId":{"spellId":407676}}}}, + {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpGt","lhs":{"autoTimeToNext":{"autoType":"Any"}},"rhs":{"const":{"val":"1.5s"}}}},{"gcdIsReady":{}}]}},"castSpell":{"spellId":{"spellId":407778}}}}, + {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpGt","lhs":{"autoTimeToNext":{"autoType":"Any"}},"rhs":{"const":{"val":"1.5s"}}}},{"gcdIsReady":{}},{"cmp":{"op":"OpGe","lhs":{"spellTimeToReady":{"spellId":{"spellId":407676}}},"rhs":{"math":{"op":"OpSub","lhs":{"autoTimeToNext":{"autoType":"Any"}},"rhs":{"const":{"val":"1.5s"}}}}}},{"cmp":{"op":"OpGe","lhs":{"spellTimeToReady":{"spellId":{"spellId":407778}}},"rhs":{"math":{"op":"OpSub","lhs":{"autoTimeToNext":{"autoType":"Any"}},"rhs":{"const":{"val":"1.5s"}}}}}},{"or":{"vals":[{"cmp":{"op":"OpLt","lhs":{"autoSwingTime":{"autoType":"MainHand"}},"rhs":{"const":{"val":"3.18"}}}}]}}]}},"castSpell":{"spellId":{"spellId":415073}}}} + ] +} diff --git a/ui/retribution_paladin/gear_sets/p5twistingHaste.gear.json b/ui/retribution_paladin/gear_sets/p5twistingHaste.gear.json new file mode 100644 index 0000000000..b48422a48d --- /dev/null +++ b/ui/retribution_paladin/gear_sets/p5twistingHaste.gear.json @@ -0,0 +1,21 @@ +{ + "items": [ + {"id":231178,"enchant":7619,"rune":429139}, + {"id":231902}, + {"id":231176,"enchant":2606}, + {"id":230842,"enchant":849,"rune":440672}, + {"id":231181,"enchant":1891,"rune":407778}, + {"id":231174,"enchant":1885,"rune":429152}, + {"id":230861,"enchant":931,"rune":407676}, + {"id":231175,"rune":426158}, + {"id":231177,"enchant":7619,"rune":407624}, + {"id":230741,"enchant":1887,"rune":426157}, + {"id":228261,"rune":442898}, + {"id":230734,"rune":442876}, + {"id":231779}, + {"id":228722}, + {"id":230242,"enchant":1900}, + {}, + {"id":232389} + ] +} \ No newline at end of file diff --git a/ui/retribution_paladin/presets.ts b/ui/retribution_paladin/presets.ts index f9dc5a8045..3ca901b071 100644 --- a/ui/retribution_paladin/presets.ts +++ b/ui/retribution_paladin/presets.ts @@ -34,6 +34,7 @@ import APLP4RetTwisting6PcT1Json from './apls/p4ret-twisting-6pcT1.apl.json'; import APLPP5ExodinJson from './apls/p5ret-exodin-6CF2DR.apl.json'; import APLPP5TwistingSlowJson from './apls/p5ret-twist-4DR-3.5-3.6.apl.json'; import APLPP5TwistingSlowerJson from './apls/p5ret-twist-4DR-3.7-4.0.apl.json'; +import APLPP5TwistingCancelAuraJson from './apls/p5ret-twist-4DR-CancelAura.apl.json'; import APLPP5ShockadinJson from './apls/p5Shockadin.apl.json'; import Phase1RetGearJson from './gear_sets/p1ret.gear.json'; import Phase2RetSoCGearJson from './gear_sets/p2retsoc.gear.json'; @@ -46,6 +47,7 @@ import Phase4RetGearJson from './gear_sets/p4rettwist.gear.json'; import Phase5ExodinGearJson from './gear_sets/p5exodin.gear.json'; import Phase5ShockadinGearJson from './gear_sets/p5shockadin.gear.json'; import Phase5TwistingGearJson from './gear_sets/p5twisting.gear.json'; +import Phase5TwistingHasteGearJson from './gear_sets/p5twistingHaste.gear.json'; // Preset options for this spec. // Eventually we will import these values for the raid sim too, so its good to @@ -82,6 +84,9 @@ export const Phase4RetExodin6pT1Gear = PresetUtils.makePresetGear('P4 Ret Exodin export const Phase5TwistingGear = PresetUtils.makePresetGear('P5 Twisting', Phase5TwistingGearJson, { customCondition: player => player.getLevel() == 60, }); +export const Phase5TwistingHasteGear = PresetUtils.makePresetGear('P5 Twisting Haste', Phase5TwistingHasteGearJson, { + customCondition: player => player.getLevel() == 60, +}); export const Phase5ExodinGear = PresetUtils.makePresetGear('P5 Exodin', Phase5ExodinGearJson, { customCondition: player => player.getLevel() == 60, }); @@ -94,7 +99,7 @@ export const GearPresets = { [Phase.Phase2]: [Phase2RetSoCGear, Phase2RetSoMGear], [Phase.Phase3]: [Phase3RetSoMGear], [Phase.Phase4]: [Phase4RetTwistGear, Phase4RetTwist6pT1Gear, Phase4RetExodinGear, Phase4RetExodin6pT1Gear], - [Phase.Phase5]: [Phase5TwistingGear, Phase5ExodinGear, Phase5ShockadinGear], + [Phase.Phase5]: [Phase5TwistingGear, Phase5TwistingHasteGear, Phase5ExodinGear, Phase5ShockadinGear], }; export const DefaultGear = GearPresets[Phase.Phase5][0]; @@ -130,6 +135,9 @@ export const APLPP5Twisting4DRSlow = PresetUtils.makePresetAPLRotation('P5 Twist export const APLPP5Twisting4DRSlower = PresetUtils.makePresetAPLRotation('P5 Twist 4DR Slower 3.7+', APLPP5TwistingSlowerJson, { customCondition: player => player.getLevel() === 60, }); +export const APLPP5Twisting4DRCancelAura = PresetUtils.makePresetAPLRotation('P5 Twist 4DR CancelAura', APLPP5TwistingCancelAuraJson, { + customCondition: player => player.getLevel() === 60, +}); export const APLPP5Exodin = PresetUtils.makePresetAPLRotation('P5 Exodin', APLPP5ExodinJson, { customCondition: player => player.getLevel() === 60, }); @@ -142,7 +150,7 @@ export const APLPresets = { [Phase.Phase2]: [APLP2Ret], [Phase.Phase3]: [APLP3Ret], [Phase.Phase4]: [APLP4RetTwist, APLP4RetTwist6pT1, APLP4RetExodin, APLP4RetExodin6pT1], - [Phase.Phase5]: [APLPP5Twisting4DRSlow, APLPP5Twisting4DRSlower, APLPP5Exodin, APLPP5Shockadin], + [Phase.Phase5]: [APLPP5Twisting4DRCancelAura, APLPP5Twisting4DRSlow, APLPP5Twisting4DRSlower, APLPP5Exodin, APLPP5Shockadin], }; export const DefaultAPLs: Record = { @@ -191,6 +199,13 @@ export const TalentPresets = { [Phase.Phase5]: [P4RetTalents, P5ShockadinTalents], }; +export const PresetBuildTwistingCancelAura = PresetUtils.makePresetBuild('TwistingCancelAura', { gear: Phase5TwistingHasteGear, talents: P4RetTalents, rotation: APLPP5Twisting4DRCancelAura }); +export const PresetBuildTwistingSlow = PresetUtils.makePresetBuild('TwistingSlow', { gear: Phase5TwistingGear, talents: P4RetTalents, rotation: APLPP5Twisting4DRSlow }); +export const PresetBuildTwistingSlower = PresetUtils.makePresetBuild('TwistingSlower', { gear: Phase5TwistingHasteGear, talents: P4RetTalents, rotation: APLPP5Twisting4DRSlower }); +export const PresetBuildExodin = PresetUtils.makePresetBuild('Exodin', { gear: Phase5ExodinGear, talents: P4RetTalents, rotation: APLPP5Exodin }); +export const PresetBuildShockadin = PresetUtils.makePresetBuild('Shockadin', { gear: Phase5ShockadinGear, talents: P5ShockadinTalents, rotation: APLPP5Shockadin }); + + export const DefaultTalents = TalentPresets[Phase.Phase5][0]; /////////////////////////////////////////////////////////////////////////// diff --git a/ui/retribution_paladin/sim.ts b/ui/retribution_paladin/sim.ts index 6b42d7f763..24affd28b7 100644 --- a/ui/retribution_paladin/sim.ts +++ b/ui/retribution_paladin/sim.ts @@ -150,6 +150,13 @@ const SPEC_CONFIG = registerSpecConfig(Spec.SpecRetributionPaladin, { ...Presets.GearPresets[Phase.Phase2], ...Presets.GearPresets[Phase.Phase1], ], + builds: [ + Presets.PresetBuildTwistingCancelAura, + Presets.PresetBuildTwistingSlow, + Presets.PresetBuildTwistingSlower, + Presets.PresetBuildExodin, + Presets.PresetBuildShockadin, + ], }, autoRotation: player => {