From 71ecedc705082c6770c9f0f9f3eb1c41a86537e3 Mon Sep 17 00:00:00 2001 From: sanguinerarogue Date: Sun, 1 Dec 2024 20:42:20 -0700 Subject: [PATCH] Rogue Tests --- sim/rogue/dps_rogue/TestAssassination.results | 210 ++++++++++++++++++ sim/rogue/dps_rogue/TestCombat.results | 210 ++++++++++++++++++ sim/rogue/dps_rogue/dps_rogue_test.go | 63 ++++++ sim/rogue/poisoned_knife.go | 2 +- sim/rogue/tank_rogue/TestTank.results | 210 ++++++++++++++++++ sim/rogue/tank_rogue/tank_rogue_test.go | 110 +++++++++ 6 files changed, 804 insertions(+), 1 deletion(-) create mode 100644 sim/rogue/tank_rogue/TestTank.results create mode 100644 sim/rogue/tank_rogue/tank_rogue_test.go diff --git a/sim/rogue/dps_rogue/TestAssassination.results b/sim/rogue/dps_rogue/TestAssassination.results index d02834d48c..142481eac7 100644 --- a/sim/rogue/dps_rogue/TestAssassination.results +++ b/sim/rogue/dps_rogue/TestAssassination.results @@ -96,6 +96,55 @@ character_stats_results: { final_stats: 0 } } +character_stats_results: { + key: "TestAssassination-Phase5-Lvl60-CharacterStats-Default" + value: { + final_stats: 459.195 + final_stats: 714.725 + final_stats: 615.35925 + final_stats: 127.765 + final_stats: 166.03125 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 49.6 + final_stats: 13 + final_stats: 27 + final_stats: 0 + final_stats: 0 + final_stats: 2351.92 + final_stats: 15 + final_stats: 57.65801 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 3109.45 + final_stats: 1702.725 + final_stats: 0 + final_stats: 5 + final_stats: 0 + final_stats: 52.31603 + final_stats: 5 + final_stats: 0 + final_stats: 7796.5925 + final_stats: 27 + final_stats: 73 + final_stats: 90 + final_stats: 100 + final_stats: 60 + final_stats: 384 + final_stats: 0 + final_stats: 0 + final_stats: 0 + } +} stat_weights_results: { key: "TestAssassination-Phase1-Lvl25-StatWeights-Default" value: { @@ -194,6 +243,55 @@ stat_weights_results: { weights: 0 } } +stat_weights_results: { + key: "TestAssassination-Phase5-Lvl60-StatWeights-Default" + value: { + weights: 0.34691 + weights: 0.55775 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0.27424 + weights: 13.16868 + weights: 2.57765 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + } +} dps_results: { key: "TestAssassination-Phase1-Lvl25-AllItems-DarkmantleArmor" value: { @@ -404,3 +502,115 @@ dps_results: { tps: 410.27406 } } +dps_results: { + key: "TestAssassination-Phase5-Lvl60-AllItems-BloodCorruptedLeathers" + value: { + dps: 853.94128 + tps: 606.29831 + } +} +dps_results: { + key: "TestAssassination-Phase5-Lvl60-AllItems-DarkmantleArmor" + value: { + dps: 562.93903 + tps: 399.68671 + } +} +dps_results: { + key: "TestAssassination-Phase5-Lvl60-Average-Default" + value: { + dps: 911.93624 + tps: 647.47473 + } +} +dps_results: { + key: "TestAssassination-Phase5-Lvl60-Settings-Human-p5_backstab-No Poisons-P5_Assassination_Backstab-FullBuffs-P4-Consumes-LongMultiTarget" + value: { + dps: 192.30395 + tps: 136.53581 + } +} +dps_results: { + key: "TestAssassination-Phase5-Lvl60-Settings-Human-p5_backstab-No Poisons-P5_Assassination_Backstab-FullBuffs-P4-Consumes-LongSingleTarget" + value: { + dps: 175.94258 + tps: 124.91923 + } +} +dps_results: { + key: "TestAssassination-Phase5-Lvl60-Settings-Human-p5_backstab-No Poisons-P5_Assassination_Backstab-FullBuffs-P4-Consumes-ShortSingleTarget" + value: { + dps: 373.67409 + tps: 265.30861 + } +} +dps_results: { + key: "TestAssassination-Phase5-Lvl60-Settings-Human-p5_backstab-No Poisons-P5_Assassination_Backstab-NoBuffs-P4-Consumes-LongMultiTarget" + value: { + dps: 87.13977 + tps: 61.86924 + } +} +dps_results: { + key: "TestAssassination-Phase5-Lvl60-Settings-Human-p5_backstab-No Poisons-P5_Assassination_Backstab-NoBuffs-P4-Consumes-LongSingleTarget" + value: { + dps: 77.85727 + tps: 55.27866 + } +} +dps_results: { + key: "TestAssassination-Phase5-Lvl60-Settings-Human-p5_backstab-No Poisons-P5_Assassination_Backstab-NoBuffs-P4-Consumes-ShortSingleTarget" + value: { + dps: 165.84464 + tps: 117.7497 + } +} +dps_results: { + key: "TestAssassination-Phase5-Lvl60-Settings-Orc-p5_backstab-No Poisons-P5_Assassination_Backstab-FullBuffs-P4-Consumes-LongMultiTarget" + value: { + dps: 197.34631 + tps: 140.11588 + } +} +dps_results: { + key: "TestAssassination-Phase5-Lvl60-Settings-Orc-p5_backstab-No Poisons-P5_Assassination_Backstab-FullBuffs-P4-Consumes-LongSingleTarget" + value: { + dps: 180.98494 + tps: 128.4993 + } +} +dps_results: { + key: "TestAssassination-Phase5-Lvl60-Settings-Orc-p5_backstab-No Poisons-P5_Assassination_Backstab-FullBuffs-P4-Consumes-ShortSingleTarget" + value: { + dps: 394.31 + tps: 279.9601 + } +} +dps_results: { + key: "TestAssassination-Phase5-Lvl60-Settings-Orc-p5_backstab-No Poisons-P5_Assassination_Backstab-NoBuffs-P4-Consumes-LongMultiTarget" + value: { + dps: 89.10867 + tps: 63.26716 + } +} +dps_results: { + key: "TestAssassination-Phase5-Lvl60-Settings-Orc-p5_backstab-No Poisons-P5_Assassination_Backstab-NoBuffs-P4-Consumes-LongSingleTarget" + value: { + dps: 79.82617 + tps: 56.67658 + } +} +dps_results: { + key: "TestAssassination-Phase5-Lvl60-Settings-Orc-p5_backstab-No Poisons-P5_Assassination_Backstab-NoBuffs-P4-Consumes-ShortSingleTarget" + value: { + dps: 173.7295 + tps: 123.34795 + } +} +dps_results: { + key: "TestAssassination-Phase5-Lvl60-SwitchInFrontOfTarget-Default" + value: { + dps: 714.46481 + tps: 507.27001 + } +} diff --git a/sim/rogue/dps_rogue/TestCombat.results b/sim/rogue/dps_rogue/TestCombat.results index 6cb347b108..b121ddf36a 100644 --- a/sim/rogue/dps_rogue/TestCombat.results +++ b/sim/rogue/dps_rogue/TestCombat.results @@ -96,6 +96,55 @@ character_stats_results: { final_stats: 0 } } +character_stats_results: { + key: "TestCombat-Phase5-Lvl60-CharacterStats-Default" + value: { + final_stats: 442.75 + final_stats: 786.83 + final_stats: 609.54025 + final_stats: 127.765 + final_stats: 166.03125 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 49.6 + final_stats: 15 + final_stats: 27 + final_stats: 0 + final_stats: 0 + final_stats: 2335.58 + final_stats: 20 + final_stats: 55.14564 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 3306.66 + final_stats: 1702.83 + final_stats: 0 + final_stats: 5 + final_stats: 0 + final_stats: 57.29127 + final_stats: 5 + final_stats: 0 + final_stats: 7738.4025 + final_stats: 27 + final_stats: 81 + final_stats: 110 + final_stats: 119 + final_stats: 60 + final_stats: 384 + final_stats: 0 + final_stats: 0 + final_stats: 0 + } +} stat_weights_results: { key: "TestCombat-Phase1-Lvl25-StatWeights-Default" value: { @@ -194,6 +243,55 @@ stat_weights_results: { weights: 0 } } +stat_weights_results: { + key: "TestCombat-Phase5-Lvl60-StatWeights-Default" + value: { + weights: 1.52138 + weights: 2.83182 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 1.20267 + weights: 17.48268 + weights: 18.9029 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + } +} dps_results: { key: "TestCombat-Phase1-Lvl25-AllItems-DarkmantleArmor" value: { @@ -404,3 +502,115 @@ dps_results: { tps: 368.0354 } } +dps_results: { + key: "TestCombat-Phase5-Lvl60-AllItems-BloodCorruptedLeathers" + value: { + dps: 1135.10326 + tps: 805.92331 + } +} +dps_results: { + key: "TestCombat-Phase5-Lvl60-AllItems-DarkmantleArmor" + value: { + dps: 962.0195 + tps: 683.03384 + } +} +dps_results: { + key: "TestCombat-Phase5-Lvl60-Average-Default" + value: { + dps: 4159.99249 + tps: 2953.59467 + } +} +dps_results: { + key: "TestCombat-Phase5-Lvl60-Settings-Human-p5_saber-No Poisons-P5_Saber-FullBuffs-P4-Consumes-LongMultiTarget" + value: { + dps: 2665.72406 + tps: 1892.66408 + } +} +dps_results: { + key: "TestCombat-Phase5-Lvl60-Settings-Human-p5_saber-No Poisons-P5_Saber-FullBuffs-P4-Consumes-LongSingleTarget" + value: { + dps: 2408.0726 + tps: 1709.73155 + } +} +dps_results: { + key: "TestCombat-Phase5-Lvl60-Settings-Human-p5_saber-No Poisons-P5_Saber-FullBuffs-P4-Consumes-ShortSingleTarget" + value: { + dps: 2399.73651 + tps: 1703.81292 + } +} +dps_results: { + key: "TestCombat-Phase5-Lvl60-Settings-Human-p5_saber-No Poisons-P5_Saber-NoBuffs-P4-Consumes-LongMultiTarget" + value: { + dps: 950.8942 + tps: 675.13488 + } +} +dps_results: { + key: "TestCombat-Phase5-Lvl60-Settings-Human-p5_saber-No Poisons-P5_Saber-NoBuffs-P4-Consumes-LongSingleTarget" + value: { + dps: 879.09424 + tps: 624.15691 + } +} +dps_results: { + key: "TestCombat-Phase5-Lvl60-Settings-Human-p5_saber-No Poisons-P5_Saber-NoBuffs-P4-Consumes-ShortSingleTarget" + value: { + dps: 877.10321 + tps: 622.74328 + } +} +dps_results: { + key: "TestCombat-Phase5-Lvl60-Settings-Orc-p5_saber-No Poisons-P5_Saber-FullBuffs-P4-Consumes-LongMultiTarget" + value: { + dps: 2784.83545 + tps: 1977.23317 + } +} +dps_results: { + key: "TestCombat-Phase5-Lvl60-Settings-Orc-p5_saber-No Poisons-P5_Saber-FullBuffs-P4-Consumes-LongSingleTarget" + value: { + dps: 2515.90033 + tps: 1786.28923 + } +} +dps_results: { + key: "TestCombat-Phase5-Lvl60-Settings-Orc-p5_saber-No Poisons-P5_Saber-FullBuffs-P4-Consumes-ShortSingleTarget" + value: { + dps: 2522.74915 + tps: 1791.1519 + } +} +dps_results: { + key: "TestCombat-Phase5-Lvl60-Settings-Orc-p5_saber-No Poisons-P5_Saber-NoBuffs-P4-Consumes-LongMultiTarget" + value: { + dps: 995.85789 + tps: 707.05911 + } +} +dps_results: { + key: "TestCombat-Phase5-Lvl60-Settings-Orc-p5_saber-No Poisons-P5_Saber-NoBuffs-P4-Consumes-LongSingleTarget" + value: { + dps: 917.42178 + tps: 651.36946 + } +} +dps_results: { + key: "TestCombat-Phase5-Lvl60-Settings-Orc-p5_saber-No Poisons-P5_Saber-NoBuffs-P4-Consumes-ShortSingleTarget" + value: { + dps: 932.93121 + tps: 662.38116 + } +} +dps_results: { + key: "TestCombat-Phase5-Lvl60-SwitchInFrontOfTarget-Default" + value: { + dps: 3522.55134 + tps: 2501.01145 + } +} diff --git a/sim/rogue/dps_rogue/dps_rogue_test.go b/sim/rogue/dps_rogue/dps_rogue_test.go index 90031cc40f..750bfd84f3 100644 --- a/sim/rogue/dps_rogue/dps_rogue_test.go +++ b/sim/rogue/dps_rogue/dps_rogue_test.go @@ -43,6 +43,24 @@ func TestCombat(t *testing.T) { Consumes: Phase2Consumes, SpecOptions: core.SpecOptionsCombo{Label: "No Poisons", SpecOptions: DefaultCombatRogue}, + ItemFilter: ItemFilters, + EPReferenceStat: proto.Stat_StatAttackPower, + StatsToWeigh: Stats, + }, + { + Class: proto.Class_ClassRogue, + Phase: 5, + Level: 60, + Race: proto.Race_RaceHuman, + OtherRaces: []proto.Race{proto.Race_RaceOrc}, + + Talents: P4DeadlyPoisonTalents, + GearSet: core.GetGearSet("../../../ui/rogue/gear_sets", "p5_saber"), + Rotation: core.GetAplRotation("../../../ui/rogue/apls", "P5_Saber"), + Buffs: core.FullBuffsPhase5, + Consumes: Phase4Consumes, + SpecOptions: core.SpecOptionsCombo{Label: "No Poisons", SpecOptions: DefaultCombatRogue}, + ItemFilter: ItemFilters, EPReferenceStat: proto.Stat_StatAttackPower, StatsToWeigh: Stats, @@ -82,6 +100,24 @@ func TestAssassination(t *testing.T) { Consumes: Phase2Consumes, SpecOptions: core.SpecOptionsCombo{Label: "No Poisons", SpecOptions: DefaultAssassinationRogue}, + ItemFilter: ItemFilters, + EPReferenceStat: proto.Stat_StatAttackPower, + StatsToWeigh: Stats, + }, + { + Class: proto.Class_ClassRogue, + Phase: 5, + Level: 60, + Race: proto.Race_RaceHuman, + OtherRaces: []proto.Race{proto.Race_RaceOrc}, + + Talents: P4DaggersTalents, + GearSet: core.GetGearSet("../../../ui/rogue/gear_sets", "p5_backstab"), + Rotation: core.GetAplRotation("../../../ui/rogue/apls", "P5_Assassination_Backstab"), + Buffs: core.FullBuffsPhase5, + Consumes: Phase4Consumes, + SpecOptions: core.SpecOptionsCombo{Label: "No Poisons", SpecOptions: DefaultAssassinationRogue}, + ItemFilter: ItemFilters, EPReferenceStat: proto.Stat_StatAttackPower, StatsToWeigh: Stats, @@ -93,6 +129,8 @@ var CombatDagger25Talents = "-025305000001" var CombatDagger40Talents = "-0053052020550100201" var Assassination25Talents = "0053021--05" var Assassination40Talents = "005303103551--05" +var P4DaggersTalents = "005323105551051-023302-05" +var P4DeadlyPoisonTalents = "00532310155104-02330520000501" var ItemFilters = core.ItemFilter{ ArmorType: proto.ArmorType_ArmorTypeLeather, @@ -150,3 +188,28 @@ var Phase2Consumes = core.ConsumesCombo{ StrengthBuff: proto.StrengthBuff_ElixirOfOgresStrength, }, } + +var Phase3Consumes = core.ConsumesCombo{ + Label: "P3-Consumes", + Consumes: &proto.Consumes{ + AgilityElixir: proto.AgilityElixir_ElixirOfTheMongoose, + DragonBreathChili: true, + Food: proto.Food_FoodGrilledSquid, + MainHandImbue: proto.WeaponImbue_WildStrikes, + OffHandImbue: proto.WeaponImbue_SolidSharpeningStone, + StrengthBuff: proto.StrengthBuff_ElixirOfOgresStrength, + }, +} + +var Phase4Consumes = core.ConsumesCombo{ + Label: "P4-Consumes", + Consumes: &proto.Consumes{ + AgilityElixir: proto.AgilityElixir_ElixirOfTheMongoose, + AttackPowerBuff: proto.AttackPowerBuff_JujuMight, + DragonBreathChili: true, + Food: proto.Food_FoodGrilledSquid, + MainHandImbue: proto.WeaponImbue_WildStrikes, + OffHandImbue: proto.WeaponImbue_ElementalSharpeningStone, + StrengthBuff: proto.StrengthBuff_JujuPower, + }, +} \ No newline at end of file diff --git a/sim/rogue/poisoned_knife.go b/sim/rogue/poisoned_knife.go index ff03aa91b1..3aff06793a 100644 --- a/sim/rogue/poisoned_knife.go +++ b/sim/rogue/poisoned_knife.go @@ -12,7 +12,7 @@ func (rogue *Rogue) registerPoisonedKnife() { return } - poisonedKnifeMetrics := rogue.NewEnergyMetrics(core.ActionID{SpellID: 425012}) + poisonedKnifeMetrics := rogue.NewEnergyMetrics(core.ActionID{SpellID: 425013}) hasDeadlyBrew := rogue.HasRune(proto.RogueRune_RuneDeadlyBrew) hasJustAFleshWound := rogue.HasRune(proto.RogueRune_RuneJustAFleshWound) diff --git a/sim/rogue/tank_rogue/TestTank.results b/sim/rogue/tank_rogue/TestTank.results new file mode 100644 index 0000000000..e8d3c76df3 --- /dev/null +++ b/sim/rogue/tank_rogue/TestTank.results @@ -0,0 +1,210 @@ +character_stats_results: { + key: "TestTank-Phase5-Lvl60-CharacterStats-Default" + value: { + final_stats: 371.91 + final_stats: 796.95 + final_stats: 711.37275 + final_stats: 127.765 + final_stats: 166.03125 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 49.6 + final_stats: 15 + final_stats: 23 + final_stats: 0 + final_stats: 0 + final_stats: 2246.86 + final_stats: 20 + final_stats: 51.49478 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 0 + final_stats: 3317.9 + final_stats: 1684.95 + final_stats: 100 + final_stats: 9 + final_stats: 0 + final_stats: 61.98955 + final_stats: 14 + final_stats: 0 + final_stats: 8756.7275 + final_stats: 27 + final_stats: 101 + final_stats: 110 + final_stats: 119 + final_stats: 60 + final_stats: 384 + final_stats: 0 + final_stats: 0 + final_stats: 0 + } +} +stat_weights_results: { + key: "TestTank-Phase5-Lvl60-StatWeights-Default" + value: { + weights: 0.62325 + weights: 0.86826 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0.49269 + weights: 14.90378 + weights: 1.68185 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + weights: 0 + } +} +dps_results: { + key: "TestTank-Phase5-Lvl60-AllItems-BloodCorruptedLeathers" + value: { + dps: 1603.4916 + tps: 1233.15925 + } +} +dps_results: { + key: "TestTank-Phase5-Lvl60-AllItems-DarkmantleArmor" + value: { + dps: 643.69377 + tps: 560.41906 + } +} +dps_results: { + key: "TestTank-Phase5-Lvl60-Average-Default" + value: { + dps: 1647.50212 + tps: 3926.80039 + } +} +dps_results: { + key: "TestTank-Phase5-Lvl60-Settings-Human-p5_saber-Basic-P5_Saber-FullBuffs-P4-Consumes-LongMultiTarget" + value: { + dps: 1448.58666 + tps: 5721.12437 + } +} +dps_results: { + key: "TestTank-Phase5-Lvl60-Settings-Human-p5_saber-Basic-P5_Saber-FullBuffs-P4-Consumes-LongSingleTarget" + value: { + dps: 982.42323 + tps: 2665.54198 + } +} +dps_results: { + key: "TestTank-Phase5-Lvl60-Settings-Human-p5_saber-Basic-P5_Saber-FullBuffs-P4-Consumes-ShortSingleTarget" + value: { + dps: 1050.48247 + tps: 2779.01488 + } +} +dps_results: { + key: "TestTank-Phase5-Lvl60-Settings-Human-p5_saber-Basic-P5_Saber-NoBuffs-P4-Consumes-LongMultiTarget" + value: { + dps: 577.25226 + tps: 2229.43125 + } +} +dps_results: { + key: "TestTank-Phase5-Lvl60-Settings-Human-p5_saber-Basic-P5_Saber-NoBuffs-P4-Consumes-LongSingleTarget" + value: { + dps: 395.43766 + tps: 1088.86222 + } +} +dps_results: { + key: "TestTank-Phase5-Lvl60-Settings-Human-p5_saber-Basic-P5_Saber-NoBuffs-P4-Consumes-ShortSingleTarget" + value: { + dps: 429.64865 + tps: 1120.25349 + } +} +dps_results: { + key: "TestTank-Phase5-Lvl60-Settings-Orc-p5_saber-Basic-P5_Saber-FullBuffs-P4-Consumes-LongMultiTarget" + value: { + dps: 1468.18567 + tps: 5787.68145 + } +} +dps_results: { + key: "TestTank-Phase5-Lvl60-Settings-Orc-p5_saber-Basic-P5_Saber-FullBuffs-P4-Consumes-LongSingleTarget" + value: { + dps: 993.77921 + tps: 2707.23342 + } +} +dps_results: { + key: "TestTank-Phase5-Lvl60-Settings-Orc-p5_saber-Basic-P5_Saber-FullBuffs-P4-Consumes-ShortSingleTarget" + value: { + dps: 1128.49402 + tps: 2932.91894 + } +} +dps_results: { + key: "TestTank-Phase5-Lvl60-Settings-Orc-p5_saber-Basic-P5_Saber-NoBuffs-P4-Consumes-LongMultiTarget" + value: { + dps: 587.62125 + tps: 2249.80067 + } +} +dps_results: { + key: "TestTank-Phase5-Lvl60-Settings-Orc-p5_saber-Basic-P5_Saber-NoBuffs-P4-Consumes-LongSingleTarget" + value: { + dps: 401.78938 + tps: 1097.47464 + } +} +dps_results: { + key: "TestTank-Phase5-Lvl60-Settings-Orc-p5_saber-Basic-P5_Saber-NoBuffs-P4-Consumes-ShortSingleTarget" + value: { + dps: 452.23693 + tps: 1183.81242 + } +} +dps_results: { + key: "TestTank-Phase5-Lvl60-SwitchInFrontOfTarget-Default" + value: { + dps: 1670.04395 + tps: 3975.9748 + } +} diff --git a/sim/rogue/tank_rogue/tank_rogue_test.go b/sim/rogue/tank_rogue/tank_rogue_test.go new file mode 100644 index 0000000000..b0e43fcf65 --- /dev/null +++ b/sim/rogue/tank_rogue/tank_rogue_test.go @@ -0,0 +1,110 @@ +package tankrogue + +import ( + "testing" + + "github.com/wowsims/sod/sim/core" + "github.com/wowsims/sod/sim/core/proto" +) + +func init() { + RegisterTankRogue() +} + +func TestTank(t *testing.T) { + core.RunTestSuite(t, t.Name(), core.FullCharacterTestSuiteGenerator([]core.CharacterSuiteConfig{ + { + Class: proto.Class_ClassRogue, + Phase: 5, + Level: 60, + Race: proto.Race_RaceHuman, + OtherRaces: []proto.Race{proto.Race_RaceOrc}, + + Talents: P5TankTalents, + GearSet: core.GetGearSet("../../../ui/tank_rogue/gear_sets", "p5_saber"), + Rotation: core.GetAplRotation("../../../ui/tank_rogue/apls", "P5_Saber"), + Buffs: core.FullBuffsPhase5, + Consumes: Phase4Consumes, + SpecOptions: core.SpecOptionsCombo{Label: "Basic", SpecOptions: PlayerOptionsBasic}, + + ItemFilter: ItemFilters, + EPReferenceStat: proto.Stat_StatAttackPower, + StatsToWeigh: Stats, + }, + })) +} +var P5TankTalents = "30532312-0230550100050140231" + +var ItemFilters = core.ItemFilter{ + ArmorType: proto.ArmorType_ArmorTypeLeather, + WeaponTypes: []proto.WeaponType{ + proto.WeaponType_WeaponTypeDagger, + proto.WeaponType_WeaponTypeFist, + proto.WeaponType_WeaponTypeSword, + proto.WeaponType_WeaponTypeMace, + }, + RangedWeaponTypes: []proto.RangedWeaponType{ + proto.RangedWeaponType_RangedWeaponTypeBow, + proto.RangedWeaponType_RangedWeaponTypeCrossbow, + proto.RangedWeaponType_RangedWeaponTypeGun, + }, +} + +var Stats = []proto.Stat{ + proto.Stat_StatAttackPower, + proto.Stat_StatAgility, + proto.Stat_StatStrength, + proto.Stat_StatMeleeHit, + proto.Stat_StatMeleeCrit, +} + +var PlayerOptionsBasic = &proto.Player_TankRogue{ + TankRogue: &proto.TankRogue{ + Options: &proto.RogueOptions{}, + }, +} + +var Phase1Consumes = core.ConsumesCombo{ + Label: "P1-Consumes", + Consumes: &proto.Consumes{ + AgilityElixir: proto.AgilityElixir_ElixirOfLesserAgility, + MainHandImbue: proto.WeaponImbue_WildStrikes, + OffHandImbue: proto.WeaponImbue_BlackfathomSharpeningStone, + StrengthBuff: proto.StrengthBuff_ElixirOfOgresStrength, + }, +} + +var Phase2Consumes = core.ConsumesCombo{ + Label: "P2-Consumes", + Consumes: &proto.Consumes{ + AgilityElixir: proto.AgilityElixir_ElixirOfAgility, + MainHandImbue: proto.WeaponImbue_WildStrikes, + OffHandImbue: proto.WeaponImbue_SolidSharpeningStone, + StrengthBuff: proto.StrengthBuff_ElixirOfOgresStrength, + }, +} + +var Phase3Consumes = core.ConsumesCombo{ + Label: "P3-Consumes", + Consumes: &proto.Consumes{ + AgilityElixir: proto.AgilityElixir_ElixirOfTheMongoose, + DragonBreathChili: true, + Food: proto.Food_FoodGrilledSquid, + MainHandImbue: proto.WeaponImbue_WildStrikes, + OffHandImbue: proto.WeaponImbue_SolidSharpeningStone, + StrengthBuff: proto.StrengthBuff_ElixirOfOgresStrength, + }, +} + +var Phase4Consumes = core.ConsumesCombo{ + Label: "P4-Consumes", + Consumes: &proto.Consumes{ + AgilityElixir: proto.AgilityElixir_ElixirOfTheMongoose, + AttackPowerBuff: proto.AttackPowerBuff_JujuMight, + DragonBreathChili: true, + Food: proto.Food_FoodGrilledSquid, + MainHandImbue: proto.WeaponImbue_WildStrikes, + OffHandImbue: proto.WeaponImbue_ElementalSharpeningStone, + StrengthBuff: proto.StrengthBuff_JujuPower, + }, +} \ No newline at end of file