From fbb4db17a756fc60849635cc5ce01ee91f54767f Mon Sep 17 00:00:00 2001 From: rosenrusinov Date: Thu, 12 Jan 2023 22:03:52 +0100 Subject: [PATCH 1/8] unholy frenzy fixes for raid and blood dps sims --- sim/deathknight/deathknight.go | 2 ++ sim/deathknight/dps/dps_deathknight.go | 19 +++++++++++---- sim/deathknight/dps/rotation_blood.go | 16 ++++++++++++- sim/deathknight/dps/rotation_blood_helper.go | 25 ++++---------------- sim/deathknight/rotation.go | 7 ++++++ sim/deathknight/tank/tank_deathknight.go | 5 +--- sim/deathknight/unholy_frenzy.go | 8 +++++-- 7 files changed, 50 insertions(+), 32 deletions(-) diff --git a/sim/deathknight/deathknight.go b/sim/deathknight/deathknight.go index 897c0219ca..03e3286d76 100644 --- a/sim/deathknight/deathknight.go +++ b/sim/deathknight/deathknight.go @@ -151,6 +151,8 @@ type Deathknight struct { BoneShield *RuneSpell BoneShieldAura *core.Aura + UnholyFrenzy *core.Spell + IceboundFortitude *RuneSpell IceboundFortitudeAura *core.Aura diff --git a/sim/deathknight/dps/dps_deathknight.go b/sim/deathknight/dps/dps_deathknight.go index f14e260549..2d54a7b93d 100644 --- a/sim/deathknight/dps/dps_deathknight.go +++ b/sim/deathknight/dps/dps_deathknight.go @@ -36,6 +36,7 @@ type DpsDeathknight struct { CustomRotation *common.CustomRotation + Player *proto.Player Rotation *proto.Deathknight_Rotation } @@ -57,16 +58,14 @@ func NewDpsDeathknight(character core.Character, player *proto.Player) *DpsDeath AvgAMSSuccessRate: dk.Rotation.AvgAmsSuccessRate, AvgAMSHit: dk.Rotation.AvgAmsHit, }, player.TalentsString), + Player: player, Rotation: dk.Rotation, } if dpsDk.Talents.SummonGargoyle { dpsDk.Gargoyle = dpsDk.NewGargoyle(dk.Rotation.NerfedGargoyle) } - dpsDk.Inputs.UnholyFrenzyTarget = &proto.RaidTarget{TargetIndex: -1} - if dk.Options.UnholyFrenzyTarget != nil { - dpsDk.Inputs.UnholyFrenzyTarget = dk.Options.UnholyFrenzyTarget - } + dpsDk.Inputs.UnholyFrenzyTarget = dk.Options.UnholyFrenzyTarget dpsDk.EnableAutoAttacks(dpsDk, core.AutoAttackOptions{ MainHand: dpsDk.WeaponFromMainHand(dpsDk.DefaultMeleeCritMultiplier()), @@ -424,6 +423,9 @@ func (dk *DpsDeathknight) setupDrwProcTrackers() { func (dk *DpsDeathknight) setupDrwCooldowns() { dk.br.drwSnapshot.ClearMajorCooldowns() + // Unholy Frenzy + dk.drwCooldownSync(core.ActionID{SpellID: 49016, Tag: dk.Index}, false) + // hyperspeed accelerators dk.drwCooldownSync(core.ActionID{SpellID: 54758}, false) @@ -471,8 +473,15 @@ func (dk *DpsDeathknight) drwCooldownSync(actionID core.ActionID, isPotion bool) if majorCd := dk.Character.GetMajorCooldown(actionID); majorCd != nil { majorCd.ShouldActivate = func(sim *core.Simulation, character *core.Character) bool { + if character != &dk.Character { + return true + } // Hyperspeed hack - if actionID.SpellID == 54758 && sim.CurrentTime < 1*time.Second { + if actionID.SpellID == 54758 && sim.CurrentTime < 2*time.Second { + return true + } + // Unholy Frenzy hack + if actionID.SpellID == 49016 && sim.CurrentTime < 2*time.Second && dk.Player.Buffs.UnholyFrenzy == 0 { return true } if dk.br.activatingDrw { diff --git a/sim/deathknight/dps/rotation_blood.go b/sim/deathknight/dps/rotation_blood.go index 960790bee0..9642569064 100644 --- a/sim/deathknight/dps/rotation_blood.go +++ b/sim/deathknight/dps/rotation_blood.go @@ -38,7 +38,21 @@ func (dk *DpsDeathknight) RotationActionCallback_BloodRotation(sim *core.Simulat casted := false if dk.blDrwCheck(sim, target, 100*time.Millisecond) { - dk.blAfterDrwSequence(sim) + if dk.DancingRuneWeapon.IsReady(sim) { + dk.RotationSequence.Clear() + + if dk.UnholyFrenzy.IsReady(sim) { + dk.RotationSequence.NewAction(dk.RotationActionCallback_UF) + } + + dk.RotationSequence. + NewAction(dk.RotationActionCallback_DRW). + NewAction(dk.RotationActionBL_IT_Custom). + NewAction(dk.RotationActionBL_PS_Custom). + NewAction(dk.RotationAction_ResetToBloodMain) + } else { + dk.blAfterDrwSequence(sim) + } return sim.CurrentTime } diff --git a/sim/deathknight/dps/rotation_blood_helper.go b/sim/deathknight/dps/rotation_blood_helper.go index c92f39f7a6..b77d12b7ea 100644 --- a/sim/deathknight/dps/rotation_blood_helper.go +++ b/sim/deathknight/dps/rotation_blood_helper.go @@ -107,33 +107,18 @@ func (dk *DpsDeathknight) blDeathCoilCheck(sim *core.Simulation) bool { func (dk *DpsDeathknight) blDrwCheck(sim *core.Simulation, target *core.Unit, castTime time.Duration) bool { if dk.blDrwCanCast(sim, castTime) { - // Unholy Presence - // if !dk.PresenceMatches(deathknight.UnholyPresence) { - // if dk.CurrentUnholyRunes() == 0 { - // if dk.BloodTap.IsReady(sim) { - // dk.BloodTap.Cast(sim, dk.CurrentTarget) - // } else { - // return false - // } - // } - // dk.UnholyPresence.Cast(sim, dk.CurrentTarget) - // } - dk.br.activatingDrw = true dk.br.drwSnapshot.ActivateMajorCooldowns(sim) dk.br.activatingDrw = false - if dk.DancingRuneWeapon.Cast(sim, target) { - dk.br.drwSnapshot.ResetProcTrackers() - return true + if dk.GCD.IsReady(sim) { + if dk.DancingRuneWeapon.Cast(sim, target) { + dk.br.drwSnapshot.ResetProcTrackers() + } } + return true } - // Go back to Blood Presence after Drw - // if !dk.DancingRuneWeapon.IsReady(sim) && dk.PresenceMatches(deathknight.UnholyPresence) { - // return dk.BloodPresence.Cast(sim, target) - // } - return false } diff --git a/sim/deathknight/rotation.go b/sim/deathknight/rotation.go index 1c4972cb5c..7c03974a81 100644 --- a/sim/deathknight/rotation.go +++ b/sim/deathknight/rotation.go @@ -49,6 +49,13 @@ func (dk *Deathknight) RotationActionCallback_DRW(sim *core.Simulation, target * return -1 } +func (dk *Deathknight) RotationActionCallback_UF(sim *core.Simulation, target *core.Unit, s *Sequence) time.Duration { + casted := dk.UnholyFrenzy.Cast(sim, target) + + s.ConditionalAdvance(casted) + return -1 +} + func (dk *Deathknight) RotationActionCallback_DS(sim *core.Simulation, target *core.Unit, s *Sequence) time.Duration { casted := dk.DeathStrike.Cast(sim, target) advance := dk.LastOutcome.Matches(core.OutcomeLanded) diff --git a/sim/deathknight/tank/tank_deathknight.go b/sim/deathknight/tank/tank_deathknight.go index 91d6fe780c..f2ca7f33f2 100644 --- a/sim/deathknight/tank/tank_deathknight.go +++ b/sim/deathknight/tank/tank_deathknight.go @@ -43,10 +43,7 @@ func NewTankDeathknight(character core.Character, options *proto.Player) *TankDe Rotation: dkOptions.Rotation, } - dkOptions.Options.UnholyFrenzyTarget = &proto.RaidTarget{TargetIndex: -1} - if dkOptions.Options.UnholyFrenzyTarget != nil { - tankDk.Inputs.UnholyFrenzyTarget = dkOptions.Options.UnholyFrenzyTarget - } + tankDk.Inputs.UnholyFrenzyTarget = dkOptions.Options.UnholyFrenzyTarget tankDk.EnableAutoAttacks(tankDk, core.AutoAttackOptions{ MainHand: tankDk.WeaponFromMainHand(tankDk.DefaultMeleeCritMultiplier()), diff --git a/sim/deathknight/unholy_frenzy.go b/sim/deathknight/unholy_frenzy.go index 9d20e108d3..c0766ddb4d 100644 --- a/sim/deathknight/unholy_frenzy.go +++ b/sim/deathknight/unholy_frenzy.go @@ -15,15 +15,19 @@ func (dk *Deathknight) registerUnholyFrenzyCD() { unholyFrenzyTargetAgent := dk.Party.Raid.GetPlayerFromRaidTarget(dk.Inputs.UnholyFrenzyTarget) if unholyFrenzyTargetAgent == nil { + panic("No unholy frenzy target") return } unholyFrenzyTarget := unholyFrenzyTargetAgent.GetCharacter() unholyFrenzyAura := core.UnholyFrenzyAura(unholyFrenzyTarget, actionID.Tag) - unholyFrenzySpell := dk.Character.RegisterSpell(core.SpellConfig{ + dk.UnholyFrenzy = dk.Character.RegisterSpell(core.SpellConfig{ ActionID: actionID, Cast: core.CastConfig{ + DefaultCast: core.Cast{ + GCD: core.GCDDefault, + }, CD: core.Cooldown{ Timer: dk.NewTimer(), Duration: time.Minute * 3, @@ -36,7 +40,7 @@ func (dk *Deathknight) registerUnholyFrenzyCD() { }) dk.AddMajorCooldown(core.MajorCooldown{ - Spell: unholyFrenzySpell, + Spell: dk.UnholyFrenzy, Priority: core.CooldownPriorityBloodlust, Type: core.CooldownTypeDPS, }) From abd04ebb54ee00194e31162903a80616fc858a91 Mon Sep 17 00:00:00 2001 From: rosenrusinov Date: Thu, 12 Jan 2023 22:15:28 +0100 Subject: [PATCH 2/8] remove debug panic --- sim/deathknight/unholy_frenzy.go | 1 - 1 file changed, 1 deletion(-) diff --git a/sim/deathknight/unholy_frenzy.go b/sim/deathknight/unholy_frenzy.go index c0766ddb4d..0e85fc68d6 100644 --- a/sim/deathknight/unholy_frenzy.go +++ b/sim/deathknight/unholy_frenzy.go @@ -15,7 +15,6 @@ func (dk *Deathknight) registerUnholyFrenzyCD() { unholyFrenzyTargetAgent := dk.Party.Raid.GetPlayerFromRaidTarget(dk.Inputs.UnholyFrenzyTarget) if unholyFrenzyTargetAgent == nil { - panic("No unholy frenzy target") return } unholyFrenzyTarget := unholyFrenzyTargetAgent.GetCharacter() From 1ac0e691d6c2cddb3665588ca8644a364ae9ba40 Mon Sep 17 00:00:00 2001 From: rosenrusinov Date: Thu, 12 Jan 2023 22:56:55 +0100 Subject: [PATCH 3/8] add blood dps to raid sim --- ui/core/proto_utils/utils.ts | 1 + ui/deathknight/presets.ts | 95 ++++++++++++++++++++++++++++++++++++ ui/raid/presets.ts | 51 ++++++++++--------- 3 files changed, 121 insertions(+), 26 deletions(-) diff --git a/ui/core/proto_utils/utils.ts b/ui/core/proto_utils/utils.ts index bd8d3e1dd1..030b86c5ec 100644 --- a/ui/core/proto_utils/utils.ts +++ b/ui/core/proto_utils/utils.ts @@ -217,6 +217,7 @@ export const talentTreeIcons: Record> = { 'spell_deathknight_bloodpresence.jpg', 'spell_deathknight_frostpresence.jpg', 'spell_deathknight_unholypresence.jpg', + 'spell_deathknight_darkconviction.jpg', ], [Class.ClassDruid]: [ 'spell_nature_starfall.jpg', diff --git a/ui/deathknight/presets.ts b/ui/deathknight/presets.ts index f46631de2a..6d04afaa13 100644 --- a/ui/deathknight/presets.ts +++ b/ui/deathknight/presets.ts @@ -814,6 +814,101 @@ export const P1_FROST_PRE_BIS_PRESET = { ]}`), }; +export const P1_BLOOD_BIS_PRESET = { + name: 'P1 Blood', + tooltip: Tooltips.BASIC_BIS_DISCLAIMER, + enableWhen: (player: Player) => player.getTalentTree() == 0, + gear: EquipmentSpec.fromJsonString(`{ "items": [ + { + "id": 44006, + "enchant": 3817, + "gems": [ + 41398, + 42702 + ] + }, + { + "id": 44664, + "gems": [ + 39996 + ] + }, + { + "id": 40557, + "enchant": 3808, + "gems": [ + 39996 + ] + }, + { + "id": 40403, + "enchant": 3831 + }, + { + "id": 40550, + "enchant": 3832, + "gems": [ + 42142, + 42142 + ] + }, + { + "id": 40330, + "enchant": 3845, + "gems": [ + 42142, + 0 + ] + }, + { + "id": 40552, + "enchant": 3604, + "gems": [ + 39996, + 0 + ] + }, + { + "id": 40317, + "gems": [ + 39996 + ] + }, + { + "id": 40556, + "enchant": 3823, + "gems": [ + 39996, + 39996 + ] + }, + { + "id": 40591, + "enchant": 3606 + }, + { + "id": 40075 + }, + { + "id": 39401 + }, + { + "id": 40256 + }, + { + "id": 42987 + }, + { + "id": 40384, + "enchant": 3368 + }, + {}, + { + "id": 40207 + } + ]}`), +}; + export const P1_FROST_BIS_PRESET = { name: 'P1 Frost', tooltip: Tooltips.BASIC_BIS_DISCLAIMER, diff --git a/ui/raid/presets.ts b/ui/raid/presets.ts index ff78c50290..c19fd8f6c8 100644 --- a/ui/raid/presets.ts +++ b/ui/raid/presets.ts @@ -110,7 +110,7 @@ export const playerPresets: Array> = [ talents: TankDeathknightPresets.BloodTalents.data, specOptions: TankDeathknightPresets.DefaultOptions, consumes: TankDeathknightPresets.DefaultConsumes, - defaultName: 'Blood', + defaultName: 'Blood Tank', defaultFactionRaces: { [Faction.Unknown]: Race.RaceUnknown, [Faction.Alliance]: Race.RaceHuman, @@ -128,6 +128,30 @@ export const playerPresets: Array> = [ tooltip: 'Blood Tank Death Knight', iconUrl: getSpecIcon(Class.ClassDeathknight, 0), }, + { + spec: Spec.SpecDeathknight, + rotation: DeathknightPresets.DefaultBloodRotation, + talents: DeathknightPresets.BloodTalents.data, + specOptions: DeathknightPresets.DefaultBloodOptions, + consumes: DeathknightPresets.DefaultConsumes, + defaultName: 'Blood Dps', + defaultFactionRaces: { + [Faction.Unknown]: Race.RaceUnknown, + [Faction.Alliance]: Race.RaceHuman, + [Faction.Horde]: Race.RaceOrc, + }, + defaultGear: { + [Faction.Unknown]: {}, + [Faction.Alliance]: { + 1: DeathknightPresets.P1_BLOOD_BIS_PRESET.gear, + }, + [Faction.Horde]: { + 1: DeathknightPresets.P1_BLOOD_BIS_PRESET.gear, + }, + }, + tooltip: 'Blood Death Knight', + iconUrl: getSpecIcon(Class.ClassDeathknight, 3), + }, { spec: Spec.SpecDeathknight, rotation: DeathknightPresets.DefaultFrostRotation, @@ -178,31 +202,6 @@ export const playerPresets: Array> = [ tooltip: 'Dual-Wield Unholy DK', iconUrl: getSpecIcon(Class.ClassDeathknight, 2), }, - //{ - // spec: Spec.SpecDeathknight, - // rotation: DeathknightPresets.DefaultBloodRotation, - // talents: DeathknightPresets.BloodTalents.data, - // specOptions: DeathknightPresets.DefaultBloodOptions, - // consumes: DeathknightPresets.DefaultConsumes, - // defaultName: 'Blood Dps DK', - // defaultFactionRaces: { - // [Faction.Unknown]: Race.RaceUnknown, - // [Faction.Alliance]: Race.RaceHuman, - // [Faction.Horde]: Race.RaceTroll, - // }, - // defaultGear: { - // [Faction.Unknown]: {}, - // [Faction.Alliance]: { - // 1: DeathknightPresets.P1_UNHOLY_2H_BIS_PRESET.gear, - // }, - // [Faction.Horde]: { - // 1: DeathknightPresets.P1_UNHOLY_2H_BIS_PRESET.gear, - // }, - // }, - // otherDefaults: DeathknightPresets.OtherDefaults, - // tooltip: 'Blood Dps DK', - // iconUrl: talentTreeIcons[Class.ClassDeathknight][0], - //}, { spec: Spec.SpecBalanceDruid, rotation: BalanceDruidPresets.DefaultRotation, From 1560a523fbb44460e2aee681c6d9b219c5ef7727 Mon Sep 17 00:00:00 2001 From: rosenrusinov Date: Fri, 13 Jan 2023 00:10:11 +0100 Subject: [PATCH 4/8] add blood preset --- ui/deathknight/presets.ts | 6 +++--- ui/deathknight/sim.ts | 1 + ui/raid/import_export.ts | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/ui/deathknight/presets.ts b/ui/deathknight/presets.ts index 6d04afaa13..0d38caa740 100644 --- a/ui/deathknight/presets.ts +++ b/ui/deathknight/presets.ts @@ -99,7 +99,7 @@ export const Unholy2HTalents = { export const BloodTalents = { name: 'Blood DPS', data: SavedTalents.create({ - talentsString: '2305020530003303231023101351--230220305003', + talentsString: '2305120530003303231023001351--230130305003', glyphs: Glyphs.create({ major1: DeathknightMajorGlyph.GlyphOfDancingRuneWeapon, major2: DeathknightMajorGlyph.GlyphOfDeathStrike, @@ -151,8 +151,8 @@ export const DefaultFrostRotation = DeathKnightRotation.create({ avgAmsSuccessRate: 1.0, avgAmsHit: 10000.0, oblitDelayDuration: 1000.0, - frostRotationType: Deathknight_Rotation_FrostRotationType.SingleTarget, - frostCustomRotation: CustomRotation.create({ + frostRotationType: Deathknight_Rotation_FrostRotationType.SingleTarget, + frostCustomRotation: CustomRotation.create({ spells: [ CustomSpell.create({ spell: CustomSpellOption.CustomDeathAndDecay }), CustomSpell.create({ spell: CustomSpellOption.CustomIcyTouch }), diff --git a/ui/deathknight/sim.ts b/ui/deathknight/sim.ts index b257d2f33a..6bf4d806e9 100644 --- a/ui/deathknight/sim.ts +++ b/ui/deathknight/sim.ts @@ -173,6 +173,7 @@ export class DeathknightSimUI extends IndividualSimUI { presets: { // Preset talents that the user can quickly select. talents: [ + Presets.BloodTalents, Presets.FrostTalents, Presets.FrostUnholyTalents, Presets.UnholyDualWieldTalents, diff --git a/ui/raid/import_export.ts b/ui/raid/import_export.ts index 751e45d96e..054132e2f3 100644 --- a/ui/raid/import_export.ts +++ b/ui/raid/import_export.ts @@ -639,7 +639,7 @@ class WCLSimPlayer { const fullTypeToSpec: Record = { 'DeathKnightBlood': Spec.SpecTankDeathknight, 'DeathKnightLichborne': Spec.SpecTankDeathknight, - 'DeathKnightRuneblade': Spec.SpecTankDeathknight, + 'DeathKnightRuneblade': Spec.SpecDeathknight, 'DeathKnightFrost': Spec.SpecDeathknight, 'DeathKnightUnholy': Spec.SpecDeathknight, 'DruidBalance': Spec.SpecBalanceDruid, From bddfb2353812bcf1514a6dfc84cb62c87ff4c711 Mon Sep 17 00:00:00 2001 From: rosenrusinov Date: Fri, 13 Jan 2023 00:17:12 +0100 Subject: [PATCH 5/8] fix blood army default --- ui/deathknight/presets.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ui/deathknight/presets.ts b/ui/deathknight/presets.ts index 0d38caa740..f7907e85d2 100644 --- a/ui/deathknight/presets.ts +++ b/ui/deathknight/presets.ts @@ -181,6 +181,8 @@ export const DefaultBloodRotation = DeathKnightRotation.create({ useEmpowerRuneWeapon: true, startingPresence: Deathknight_Rotation_Presence.Blood, bloodRuneFiller: Deathknight_Rotation_BloodRuneFiller.BloodStrike, + armyOfTheDead: Deathknight_Rotation_ArmyOfTheDead.PreCast, + holdErwArmy: false, useAms: false, }); From 1cd2ce474d169bd1ac722e38599d003d24467042 Mon Sep 17 00:00:00 2001 From: rosenrusinov Date: Fri, 13 Jan 2023 00:24:48 +0100 Subject: [PATCH 6/8] delete unused field --- sim/deathknight/dps/dps_deathknight.go | 10 ++-------- ui/raid/presets.ts | 2 +- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/sim/deathknight/dps/dps_deathknight.go b/sim/deathknight/dps/dps_deathknight.go index 2d54a7b93d..42b46f6c82 100644 --- a/sim/deathknight/dps/dps_deathknight.go +++ b/sim/deathknight/dps/dps_deathknight.go @@ -36,7 +36,6 @@ type DpsDeathknight struct { CustomRotation *common.CustomRotation - Player *proto.Player Rotation *proto.Deathknight_Rotation } @@ -58,7 +57,6 @@ func NewDpsDeathknight(character core.Character, player *proto.Player) *DpsDeath AvgAMSSuccessRate: dk.Rotation.AvgAmsSuccessRate, AvgAMSHit: dk.Rotation.AvgAmsHit, }, player.TalentsString), - Player: player, Rotation: dk.Rotation, } if dpsDk.Talents.SummonGargoyle { @@ -476,12 +474,8 @@ func (dk *DpsDeathknight) drwCooldownSync(actionID core.ActionID, isPotion bool) if character != &dk.Character { return true } - // Hyperspeed hack - if actionID.SpellID == 54758 && sim.CurrentTime < 2*time.Second { - return true - } - // Unholy Frenzy hack - if actionID.SpellID == 49016 && sim.CurrentTime < 2*time.Second && dk.Player.Buffs.UnholyFrenzy == 0 { + // Opener use everything + if sim.CurrentTime < 2*time.Second { return true } if dk.br.activatingDrw { diff --git a/ui/raid/presets.ts b/ui/raid/presets.ts index c19fd8f6c8..ad7f7d31c5 100644 --- a/ui/raid/presets.ts +++ b/ui/raid/presets.ts @@ -149,7 +149,7 @@ export const playerPresets: Array> = [ 1: DeathknightPresets.P1_BLOOD_BIS_PRESET.gear, }, }, - tooltip: 'Blood Death Knight', + tooltip: 'Blood Dps Death Knight', iconUrl: getSpecIcon(Class.ClassDeathknight, 3), }, { From 2a3967cc9addcbee45c0187863a80e562fb96a1f Mon Sep 17 00:00:00 2001 From: rosenrusinov Date: Fri, 13 Jan 2023 00:40:12 +0100 Subject: [PATCH 7/8] update blood tests --- sim/deathknight/dps/TestBlood.results | 494 +++++++++++++------------- 1 file changed, 247 insertions(+), 247 deletions(-) diff --git a/sim/deathknight/dps/TestBlood.results b/sim/deathknight/dps/TestBlood.results index 1f2379e3f5..2b7a3ee0f5 100644 --- a/sim/deathknight/dps/TestBlood.results +++ b/sim/deathknight/dps/TestBlood.results @@ -46,815 +46,815 @@ character_stats_results: { dps_results: { key: "TestBlood-AllItems-Althor'sAbacus-50359" value: { - dps: 6197.61692 - tps: 3186.06446 + dps: 6208.16529 + tps: 3189.5812 } } dps_results: { key: "TestBlood-AllItems-Althor'sAbacus-50366" value: { - dps: 6197.61692 - tps: 3186.06446 + dps: 6208.16529 + tps: 3189.5812 } } dps_results: { key: "TestBlood-AllItems-AustereEarthsiegeDiamond" value: { - dps: 6449.49882 - tps: 3299.43744 + dps: 6459.92812 + tps: 3302.90464 } } dps_results: { key: "TestBlood-AllItems-Bandit'sInsignia-40371" value: { - dps: 6374.95407 - tps: 3281.91948 + dps: 6384.86884 + tps: 3285.3759 } } dps_results: { key: "TestBlood-AllItems-BaubleofTrueBlood-50354" value: { - dps: 6197.60082 - tps: 6322.30602 + dps: 6208.1675 + tps: 8701.73984 } } dps_results: { key: "TestBlood-AllItems-BaubleofTrueBlood-50726" value: { - dps: 6197.60082 - tps: 6322.30602 + dps: 6208.1675 + tps: 8701.73984 } } dps_results: { key: "TestBlood-AllItems-BeamingEarthsiegeDiamond" value: { - dps: 6468.10327 - tps: 3309.61653 + dps: 6478.60414 + tps: 3313.10211 } } dps_results: { key: "TestBlood-AllItems-Beast-tamer'sShoulders-30892" value: { - dps: 6344.31379 - tps: 3263.73803 + dps: 6353.24817 + tps: 3266.76901 } } dps_results: { key: "TestBlood-AllItems-BlessedBattlegearofUndeadSlaying" value: { - dps: 5469.09079 - tps: 2808.54755 + dps: 5476.33428 + tps: 2810.91461 } } dps_results: { key: "TestBlood-AllItems-BlessedGarboftheUndeadSlayer" value: { - dps: 5397.18024 - tps: 2767.46322 + dps: 5406.95317 + tps: 2771.09675 } } dps_results: { key: "TestBlood-AllItems-BlessedRegaliaofUndeadCleansing" value: { - dps: 5143.38107 - tps: 2636.23398 + dps: 5152.7931 + tps: 2639.65391 } } dps_results: { key: "TestBlood-AllItems-BracingEarthsiegeDiamond" value: { - dps: 6445.00742 - tps: 3231.06136 + dps: 6455.43574 + tps: 3234.45866 } } dps_results: { key: "TestBlood-AllItems-ChaoticSkyflareDiamond" value: { - dps: 6566.85602 - tps: 3368.86818 + dps: 6577.4654 + tps: 3372.41886 } } dps_results: { key: "TestBlood-AllItems-CorpseTongueCoin-50349" value: { - dps: 6197.61692 - tps: 3186.06446 + dps: 6208.16529 + tps: 3189.5812 } } dps_results: { key: "TestBlood-AllItems-CorpseTongueCoin-50352" value: { - dps: 6197.61692 - tps: 3186.06446 + dps: 6208.16529 + tps: 3189.5812 } } dps_results: { key: "TestBlood-AllItems-CorrodedSkeletonKey-50356" value: { - dps: 6199.12765 - tps: 3186.9475 - hps: 50.13333 + dps: 6208.07392 + tps: 3189.67197 + hps: 44.8 } } dps_results: { key: "TestBlood-AllItems-DarkmoonCard:Berserker!-42989" value: { - dps: 6292.91735 - tps: 3238.03971 + dps: 6303.50515 + tps: 3241.56308 } } dps_results: { key: "TestBlood-AllItems-DarkmoonCard:Death-42990" value: { - dps: 6371.50874 - tps: 3286.0471 + dps: 6380.46404 + tps: 3289.099 } } dps_results: { key: "TestBlood-AllItems-DarkmoonCard:Greatness-44255" value: { - dps: 6401.30102 - tps: 3282.50813 + dps: 6411.84939 + tps: 3286.02487 } } dps_results: { key: "TestBlood-AllItems-DarkrunedBattlegear" value: { - dps: 6373.98046 - tps: 3264.32462 + dps: 6382.29815 + tps: 3267.17035 } } dps_results: { key: "TestBlood-AllItems-DarkrunedPlate" value: { - dps: 5490.36663 - tps: 2794.27744 + dps: 5498.65203 + tps: 2797.05231 } } dps_results: { key: "TestBlood-AllItems-DeadlyGladiator'sSigilofStrife-42620" value: { - dps: 6522.0066 - tps: 3343.09823 + dps: 6532.60362 + tps: 3346.64359 } } dps_results: { key: "TestBlood-AllItems-Death'sChoice-47464" value: { - dps: 6721.27294 - tps: 3445.90624 + dps: 6731.85987 + tps: 3449.44547 } } dps_results: { key: "TestBlood-AllItems-DeathKnight'sAnguish-38212" value: { - dps: 6263.97993 - tps: 3221.33761 + dps: 6274.61612 + tps: 3224.87972 } } dps_results: { key: "TestBlood-AllItems-Deathbringer'sWill-50362" value: { - dps: 6618.88691 - tps: 3414.15782 + dps: 6630.24113 + tps: 3417.87311 } } dps_results: { key: "TestBlood-AllItems-Deathbringer'sWill-50363" value: { - dps: 6721.39635 - tps: 3474.95072 + dps: 6732.77359 + tps: 3478.8807 } } dps_results: { key: "TestBlood-AllItems-Defender'sCode-40257" value: { - dps: 6213.57472 - tps: 3194.79573 + dps: 6222.52033 + tps: 3197.52013 } } dps_results: { key: "TestBlood-AllItems-DestructiveSkyflareDiamond" value: { - dps: 6470.55188 - tps: 3311.0857 + dps: 6481.0445 + tps: 3314.56632 } } dps_results: { key: "TestBlood-AllItems-DislodgedForeignObject-50348" value: { - dps: 6305.6704 - tps: 3273.25006 + dps: 6320.91359 + tps: 3279.1417 } } dps_results: { key: "TestBlood-AllItems-DislodgedForeignObject-50353" value: { - dps: 6314.76327 - tps: 3289.3035 + dps: 6332.79302 + tps: 3296.28128 } } dps_results: { key: "TestBlood-AllItems-EffulgentSkyflareDiamond" value: { - dps: 6445.00742 - tps: 3297.00139 + dps: 6455.43574 + tps: 3300.46802 } } dps_results: { key: "TestBlood-AllItems-EmberSkyflareDiamond" value: { - dps: 6445.00742 - tps: 3297.00139 + dps: 6455.43574 + tps: 3300.46802 } } dps_results: { key: "TestBlood-AllItems-EnigmaticSkyflareDiamond" value: { - dps: 6468.10327 - tps: 3309.61653 + dps: 6478.60414 + tps: 3313.10211 } } dps_results: { key: "TestBlood-AllItems-EnigmaticStarflareDiamond" value: { - dps: 6462.42309 - tps: 3306.50816 + dps: 6472.89505 + tps: 3309.97615 } } dps_results: { key: "TestBlood-AllItems-EphemeralSnowflake-50260" value: { - dps: 6269.0602 - tps: 3226.1745 + dps: 6318.74783 + tps: 3252.26625 } } dps_results: { key: "TestBlood-AllItems-EssenceofGossamer-37220" value: { - dps: 6197.61692 - tps: 3186.06446 + dps: 6208.16529 + tps: 3189.5812 } } dps_results: { key: "TestBlood-AllItems-EternalEarthsiegeDiamond" value: { - dps: 6445.00742 - tps: 3297.00139 + dps: 6455.43574 + tps: 3300.46802 } } dps_results: { key: "TestBlood-AllItems-ExtractofNecromanticPower-40373" value: { - dps: 6345.54462 - tps: 3276.06622 + dps: 6354.54643 + tps: 3278.71709 } } dps_results: { key: "TestBlood-AllItems-EyeoftheBroodmother-45308" value: { - dps: 6281.96985 - tps: 3232.72495 + dps: 6292.57038 + tps: 3236.24397 } } dps_results: { key: "TestBlood-AllItems-Figurine-SapphireOwl-42413" value: { - dps: 6197.61692 - tps: 3186.06446 + dps: 6208.16529 + tps: 3189.5812 } } dps_results: { key: "TestBlood-AllItems-ForethoughtTalisman-40258" value: { - dps: 6197.61692 - tps: 3186.06446 + dps: 6208.16529 + tps: 3189.5812 } } dps_results: { key: "TestBlood-AllItems-ForgeEmber-37660" value: { - dps: 6263.39708 - tps: 3222.36523 + dps: 6273.95691 + tps: 3225.85967 } } dps_results: { key: "TestBlood-AllItems-ForlornSkyflareDiamond" value: { - dps: 6445.00742 - tps: 3297.00139 + dps: 6455.43574 + tps: 3300.46802 } } dps_results: { key: "TestBlood-AllItems-ForlornStarflareDiamond" value: { - dps: 6445.00742 - tps: 3297.00139 + dps: 6455.43574 + tps: 3300.46802 } } dps_results: { key: "TestBlood-AllItems-FuriousGladiator'sSigilofStrife-42621" value: { - dps: 6530.85343 - tps: 3347.65226 + dps: 6541.45319 + tps: 3351.19927 } } dps_results: { key: "TestBlood-AllItems-FuryoftheFiveFlights-40431" value: { - dps: 6385.01814 - tps: 3288.87794 + dps: 6395.60935 + tps: 3292.41968 } } dps_results: { key: "TestBlood-AllItems-FuturesightRune-38763" value: { - dps: 6199.12765 - tps: 3186.9475 + dps: 6208.07392 + tps: 3189.67197 } } dps_results: { key: "TestBlood-AllItems-GlowingTwilightScale-54573" value: { - dps: 6199.12765 - tps: 3186.9475 + dps: 6208.07392 + tps: 3189.67197 } } dps_results: { key: "TestBlood-AllItems-GlowingTwilightScale-54589" value: { - dps: 6199.12765 - tps: 3186.9475 + dps: 6208.07392 + tps: 3189.67197 } } dps_results: { key: "TestBlood-AllItems-GnomishLightningGenerator-41121" value: { - dps: 6314.72483 - tps: 3250.59885 + dps: 6320.67171 + tps: 3251.74278 } } dps_results: { key: "TestBlood-AllItems-HatefulGladiator'sSigilofStrife-42619" value: { - dps: 6500.45159 - tps: 3332.14213 + dps: 6511.047 + tps: 3335.68653 } } dps_results: { key: "TestBlood-AllItems-IllustrationoftheDragonSoul-40432" value: { - dps: 6197.61692 - tps: 3186.06446 + dps: 6208.16529 + tps: 3189.5812 } } dps_results: { key: "TestBlood-AllItems-ImpassiveSkyflareDiamond" value: { - dps: 6468.10327 - tps: 3309.61653 + dps: 6478.60414 + tps: 3313.10211 } } dps_results: { key: "TestBlood-AllItems-ImpassiveStarflareDiamond" value: { - dps: 6462.42309 - tps: 3306.50816 + dps: 6472.89505 + tps: 3309.97615 } } dps_results: { key: "TestBlood-AllItems-IncisorFragment-37723" value: { - dps: 6366.36761 - tps: 3273.49585 + dps: 6370.95399 + tps: 3273.70335 } } dps_results: { key: "TestBlood-AllItems-InsightfulEarthsiegeDiamond" value: { - dps: 6445.00742 - tps: 3297.00139 + dps: 6455.43574 + tps: 3300.46802 } } dps_results: { key: "TestBlood-AllItems-InvigoratingEarthsiegeDiamond" value: { - dps: 6470.39747 - tps: 3310.78027 + dps: 6480.83127 + tps: 3314.2501 hps: 12.35856 } } dps_results: { key: "TestBlood-AllItems-Lavanthor'sTalisman-37872" value: { - dps: 6199.12765 - tps: 3186.9475 + dps: 6208.07392 + tps: 3189.67197 } } dps_results: { key: "TestBlood-AllItems-MajesticDragonFigurine-40430" value: { - dps: 6197.61692 - tps: 3186.06446 + dps: 6208.16529 + tps: 3189.5812 } } dps_results: { key: "TestBlood-AllItems-MeteoriteWhetstone-37390" value: { - dps: 6320.50588 - tps: 3266.98128 + dps: 6333.47622 + tps: 3271.70753 } } dps_results: { key: "TestBlood-AllItems-NevermeltingIceCrystal-50259" value: { - dps: 6314.93133 - tps: 3244.29605 + dps: 6316.05197 + tps: 3242.1779 } } dps_results: { key: "TestBlood-AllItems-OfferingofSacrifice-37638" value: { - dps: 6208.47576 - tps: 3192.02577 + dps: 6217.4216 + tps: 3194.75019 } } dps_results: { key: "TestBlood-AllItems-PersistentEarthshatterDiamond" value: { - dps: 6465.45173 - tps: 3308.09 + dps: 6475.88448 + tps: 3311.55922 } } dps_results: { key: "TestBlood-AllItems-PersistentEarthsiegeDiamond" value: { - dps: 6470.26215 - tps: 3310.69908 + dps: 6480.69595 + tps: 3314.16891 } } dps_results: { key: "TestBlood-AllItems-PetrifiedTwilightScale-54571" value: { - dps: 6236.39457 - tps: 3207.12968 + dps: 6246.95142 + tps: 3210.65138 } } dps_results: { key: "TestBlood-AllItems-PetrifiedTwilightScale-54591" value: { - dps: 6241.39046 - tps: 3209.84361 + dps: 6251.9484 + tps: 3213.36594 } } dps_results: { key: "TestBlood-AllItems-PowerfulEarthshatterDiamond" value: { - dps: 6445.00742 - tps: 3297.00139 + dps: 6455.43574 + tps: 3300.46802 } } dps_results: { key: "TestBlood-AllItems-PowerfulEarthsiegeDiamond" value: { - dps: 6445.00742 - tps: 3297.00139 + dps: 6455.43574 + tps: 3300.46802 } } dps_results: { key: "TestBlood-AllItems-PurifiedShardoftheGods" value: { - dps: 6197.61692 - tps: 3186.06446 + dps: 6208.16529 + tps: 3189.5812 } } dps_results: { key: "TestBlood-AllItems-ReignoftheDead-47316" value: { - dps: 6271.34958 - tps: 3235.6802 + dps: 6279.3053 + tps: 3237.89498 } } dps_results: { key: "TestBlood-AllItems-ReignoftheDead-47477" value: { - dps: 6280.30653 - tps: 3241.05437 + dps: 6288.26225 + tps: 3243.26915 } } dps_results: { key: "TestBlood-AllItems-RelentlessEarthsiegeDiamond" value: { - dps: 6559.38647 - tps: 3364.70517 + dps: 6569.96972 + tps: 3368.24228 } } dps_results: { key: "TestBlood-AllItems-RelentlessGladiator'sSigilofStrife-42622" value: { - dps: 6541.17472 - tps: 3352.9653 + dps: 6551.77769 + tps: 3356.51424 } } dps_results: { key: "TestBlood-AllItems-RevitalizingSkyflareDiamond" value: { - dps: 6445.00742 - tps: 3297.00139 + dps: 6455.43574 + tps: 3300.46802 } } dps_results: { key: "TestBlood-AllItems-RuneofRepulsion-40372" value: { - dps: 6199.12765 - tps: 3186.9475 + dps: 6208.07392 + tps: 3189.67197 } } dps_results: { key: "TestBlood-AllItems-SavageGladiator'sSigilofStrife-42618" value: { - dps: 6497.88415 - tps: 3330.80469 + dps: 6508.47818 + tps: 3334.34827 } } dps_results: { key: "TestBlood-AllItems-ScourgeborneBattlegear" value: { - dps: 6022.14959 - tps: 3086.9736 + dps: 6031.51936 + tps: 3090.1446 } } dps_results: { key: "TestBlood-AllItems-ScourgebornePlate" value: { - dps: 5485.68547 - tps: 2799.08019 + dps: 5493.47773 + tps: 2801.53533 } } dps_results: { key: "TestBlood-AllItems-Scourgelord'sBattlegear" value: { - dps: 6896.44512 - tps: 3563.55795 + dps: 6906.08243 + tps: 3566.60367 } } dps_results: { key: "TestBlood-AllItems-Scourgelord'sPlate" value: { - dps: 5801.18074 - tps: 2960.695 + dps: 5809.07852 + tps: 2963.32689 } } dps_results: { key: "TestBlood-AllItems-SealofthePantheon-36993" value: { - dps: 6210.53307 - tps: 3192.49226 + dps: 6218.81034 + tps: 3194.8594 } } dps_results: { key: "TestBlood-AllItems-Shadowmourne-49623" value: { - dps: 8624.62982 - tps: 4521.66661 + dps: 8638.97841 + tps: 4527.57856 } } dps_results: { key: "TestBlood-AllItems-ShinyShardoftheGods" value: { - dps: 6197.61692 - tps: 3186.06446 + dps: 6208.16529 + tps: 3189.5812 } } dps_results: { key: "TestBlood-AllItems-SigilofHauntedDreams-40715" value: { - dps: 6477.7725 - tps: 3320.32807 + dps: 6488.35575 + tps: 3323.86518 } } dps_results: { key: "TestBlood-AllItems-SigilofVirulence-47673" value: { - dps: 6768.74455 - tps: 3472.42157 + dps: 6779.40535 + tps: 3476.00394 } } dps_results: { key: "TestBlood-AllItems-SigiloftheHangedMan-50459" value: { - dps: 6689.59424 - tps: 3432.82428 + dps: 6700.2341 + tps: 3436.39443 } } dps_results: { key: "TestBlood-AllItems-Sindragosa'sFlawlessFang-50361" value: { - dps: 6199.12765 - tps: 3186.9475 + dps: 6208.07392 + tps: 3189.67197 } } dps_results: { key: "TestBlood-AllItems-SliverofPureIce-50339" value: { - dps: 6199.12765 - tps: 3186.9475 + dps: 6208.07392 + tps: 3189.67197 } } dps_results: { key: "TestBlood-AllItems-SliverofPureIce-50346" value: { - dps: 6199.12765 - tps: 3186.9475 + dps: 6208.07392 + tps: 3189.67197 } } dps_results: { key: "TestBlood-AllItems-SouloftheDead-40382" value: { - dps: 6285.55144 - tps: 3234.01473 + dps: 6296.14145 + tps: 3237.53375 } } dps_results: { key: "TestBlood-AllItems-SparkofHope-45703" value: { - dps: 6197.61692 - tps: 3186.06446 + dps: 6208.16529 + tps: 3189.5812 } } dps_results: { key: "TestBlood-AllItems-SparkofLife-37657" value: { - dps: 6268.3527 - tps: 3238.76976 + dps: 6277.9672 + tps: 3242.33891 } } dps_results: { key: "TestBlood-AllItems-SphereofRedDragon'sBlood-37166" value: { - dps: 6376.91233 - tps: 3265.96793 + dps: 6409.00419 + tps: 3275.77938 } } dps_results: { key: "TestBlood-AllItems-StormshroudArmor" value: { - dps: 5055.30847 - tps: 2585.79099 + dps: 5065.70339 + tps: 2589.63705 } } dps_results: { key: "TestBlood-AllItems-SwiftSkyflareDiamond" value: { - dps: 6470.26215 - tps: 3310.69908 + dps: 6480.69595 + tps: 3314.16891 } } dps_results: { key: "TestBlood-AllItems-SwiftStarflareDiamond" value: { - dps: 6465.45173 - tps: 3308.09 + dps: 6475.88448 + tps: 3311.55922 } } dps_results: { key: "TestBlood-AllItems-SwiftWindfireDiamond" value: { - dps: 6457.03348 - tps: 3303.5241 + dps: 6467.46441 + tps: 3306.99225 } } dps_results: { key: "TestBlood-AllItems-TalismanofTrollDivinity-37734" value: { - dps: 6199.12765 - tps: 3186.9475 + dps: 6208.07392 + tps: 3189.67197 } } dps_results: { key: "TestBlood-AllItems-TearsoftheVanquished-47215" value: { - dps: 6197.61692 - tps: 3186.06446 + dps: 6208.16529 + tps: 3189.5812 } } dps_results: { key: "TestBlood-AllItems-Thassarian'sBattlegear" value: { - dps: 6473.26799 - tps: 3319.36077 + dps: 6481.6027 + tps: 3322.41218 } } dps_results: { key: "TestBlood-AllItems-Thassarian'sPlate" value: { - dps: 5620.35381 - tps: 2868.40932 + dps: 5628.52339 + tps: 2871.04945 } } dps_results: { key: "TestBlood-AllItems-TheGeneral'sHeart-45507" value: { - dps: 6197.61692 - tps: 3186.06446 + dps: 6208.16529 + tps: 3189.5812 } } dps_results: { key: "TestBlood-AllItems-TheTwinBladesofAzzinoth" value: { - dps: 5701.29951 - tps: 2885.78436 + dps: 5709.79459 + tps: 2888.88687 } } dps_results: { key: "TestBlood-AllItems-ThunderingSkyflareDiamond" value: { - dps: 6501.47634 - tps: 3338.97785 + dps: 6510.64954 + tps: 3341.76984 } } dps_results: { key: "TestBlood-AllItems-TinyAbominationinaJar-50351" value: { - dps: 6450.07415 - tps: 3309.14151 + dps: 6460.51793 + tps: 3312.16624 } } dps_results: { key: "TestBlood-AllItems-TinyAbominationinaJar-50706" value: { - dps: 6507.83957 - tps: 3340.16001 + dps: 6518.19481 + tps: 3343.18675 } } dps_results: { key: "TestBlood-AllItems-TirelessSkyflareDiamond" value: { - dps: 6445.00742 - tps: 3297.00139 + dps: 6455.43574 + tps: 3300.46802 } } dps_results: { key: "TestBlood-AllItems-TirelessStarflareDiamond" value: { - dps: 6445.00742 - tps: 3297.00139 + dps: 6455.43574 + tps: 3300.46802 } } dps_results: { key: "TestBlood-AllItems-TomeofArcanePhenomena-36972" value: { - dps: 6235.68598 - tps: 3214.11227 + dps: 6250.20905 + tps: 3205.92951 } } dps_results: { key: "TestBlood-AllItems-TrenchantEarthshatterDiamond" value: { - dps: 6445.00742 - tps: 3297.00139 + dps: 6455.43574 + tps: 3300.46802 } } dps_results: { key: "TestBlood-AllItems-TrenchantEarthsiegeDiamond" value: { - dps: 6445.00742 - tps: 3297.00139 + dps: 6455.43574 + tps: 3300.46802 } } dps_results: { key: "TestBlood-AllItems-UndeadSlayer'sBlessedArmor" value: { - dps: 5356.52518 - tps: 2748.53694 + dps: 5366.83718 + tps: 2752.28772 } } dps_results: { key: "TestBlood-AllItems-Val'anyr,HammerofAncientKings-46017" value: { - dps: 5055.26338 - tps: 2477.82333 + dps: 5064.72985 + tps: 2480.91213 } } dps_results: { key: "TestBlood-AllItems-WingedTalisman-37844" value: { - dps: 6199.12765 - tps: 3186.9475 + dps: 6208.07392 + tps: 3189.67197 } } dps_results: { key: "TestBlood-AllItems-WrathfulGladiator'sSigilofStrife-51417" value: { - dps: 6552.97048 - tps: 3359.03734 + dps: 6563.57712 + tps: 3362.58848 } } dps_results: { key: "TestBlood-Average-Default" value: { - dps: 6584.79048 - tps: 3381.62783 + dps: 6594.23255 + tps: 3384.70958 } } dps_results: { @@ -902,49 +902,49 @@ dps_results: { dps_results: { key: "TestBlood-Settings-Orc-Blood P1 -Basic-FullBuffs-LongMultiTarget" value: { - dps: 12297.94161 - tps: 6799.87572 + dps: 12299.97172 + tps: 6797.97678 } } dps_results: { key: "TestBlood-Settings-Orc-Blood P1 -Basic-FullBuffs-LongSingleTarget" value: { - dps: 6559.38647 - tps: 3364.70517 + dps: 6569.96972 + tps: 3368.24228 } } dps_results: { key: "TestBlood-Settings-Orc-Blood P1 -Basic-FullBuffs-ShortSingleTarget" value: { - dps: 8588.35728 - tps: 3776.9821 + dps: 8620.89054 + tps: 3778.95778 } } dps_results: { key: "TestBlood-Settings-Orc-Blood P1 -Basic-NoBuffs-LongMultiTarget" value: { - dps: 8003.50152 - tps: 4474.99042 + dps: 8001.04703 + tps: 4471.68951 } } dps_results: { key: "TestBlood-Settings-Orc-Blood P1 -Basic-NoBuffs-LongSingleTarget" value: { - dps: 3738.0074 - tps: 1929.88314 + dps: 3744.9472 + tps: 1932.35964 } } dps_results: { key: "TestBlood-Settings-Orc-Blood P1 -Basic-NoBuffs-ShortSingleTarget" value: { - dps: 4531.87406 - tps: 1941.63881 + dps: 4545.44182 + tps: 1939.90835 } } dps_results: { key: "TestBlood-SwitchInFrontOfTarget-Default" value: { - dps: 6283.04388 - tps: 3228.21768 + dps: 6293.10228 + tps: 3231.43362 } } From 6ad816d0349cbf2782d40aec48ccc5bd83a24a74 Mon Sep 17 00:00:00 2001 From: Kayla Glick Date: Thu, 12 Jan 2023 20:42:26 -0500 Subject: [PATCH 8/8] fix dps dk icon --- ui/core/proto_utils/utils.ts | 4 ++++ ui/deathknight/sim.ts | 2 +- ui/raid/presets.ts | 4 ++-- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/ui/core/proto_utils/utils.ts b/ui/core/proto_utils/utils.ts index 030b86c5ec..69910a639c 100644 --- a/ui/core/proto_utils/utils.ts +++ b/ui/core/proto_utils/utils.ts @@ -328,6 +328,10 @@ export function getSpecIcon(klass: Class, specNumber: number, size: IconSizes = export function getTalentTreeIcon(spec: Spec, talentsString: string, size: IconSizes = IconSizes.Medium): string { let specNumber = getTalentTree(talentsString); + // Blood DPS DK + if (spec == Spec.SpecDeathknight && specNumber == 0) + specNumber += 3; + // Cat Druid and Smite Priest are being considered a "4th spec" if (spec == Spec.SpecFeralDruid) specNumber += 2; diff --git a/ui/deathknight/sim.ts b/ui/deathknight/sim.ts index 6bf4d806e9..d838994a2c 100644 --- a/ui/deathknight/sim.ts +++ b/ui/deathknight/sim.ts @@ -30,7 +30,7 @@ export class DeathknightSimUI extends IndividualSimUI { cssScheme: 'death-knight', // List any known bugs / issues here and they'll be shown on the site. knownIssues: [ - "Blood dps is not implemented.", + "Blood DPS is not implemented.", "Frost Rotation logic is not fully tuned yet.", "Army of the Dead scaling needs to be fine-tuned." ], diff --git a/ui/raid/presets.ts b/ui/raid/presets.ts index ad7f7d31c5..0fd034b7ca 100644 --- a/ui/raid/presets.ts +++ b/ui/raid/presets.ts @@ -134,7 +134,7 @@ export const playerPresets: Array> = [ talents: DeathknightPresets.BloodTalents.data, specOptions: DeathknightPresets.DefaultBloodOptions, consumes: DeathknightPresets.DefaultConsumes, - defaultName: 'Blood Dps', + defaultName: 'Blood DPS', defaultFactionRaces: { [Faction.Unknown]: Race.RaceUnknown, [Faction.Alliance]: Race.RaceHuman, @@ -149,7 +149,7 @@ export const playerPresets: Array> = [ 1: DeathknightPresets.P1_BLOOD_BIS_PRESET.gear, }, }, - tooltip: 'Blood Dps Death Knight', + tooltip: 'Blood DPS Death Knight', iconUrl: getSpecIcon(Class.ClassDeathknight, 3), }, {