diff --git a/ui/rogue/apls/combat_backstab.apl.json b/ui/rogue/apls/combat_backstab.apl.json index c0eb6ed2e..aebcda58e 100644 --- a/ui/rogue/apls/combat_backstab.apl.json +++ b/ui/rogue/apls/combat_backstab.apl.json @@ -1,10 +1,10 @@ { "type": "TypeAPL", "priorityList": [ + {"action":{"condition":{"or":{"vals":[{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"1"}}}},{"not":{"val":{"auraIsActive":{"auraId":{"spellId":6774,"rank":2}}}}},{"cmp":{"op":"OpGe","lhs":{"remainingTime":{}},"rhs":{"const":{"val":"6"}}}}]}},{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"5"}}}},{"cmp":{"op":"OpLt","lhs":{"auraRemainingTime":{"auraId":{"spellId":6774,"rank":2}}},"rhs":{"const":{"val":"3"}}}},{"cmp":{"op":"OpGt","lhs":{"remainingTime":{}},"rhs":{"const":{"val":"9"}}}}]}}]}},"castSpell":{"spellId":{"spellId":6774,"rank":2}}}}, + {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpLt","lhs":{"currentEnergy":{}},"rhs":{"const":{"val":"59"}}}},{"cmp":{"op":"OpLt","lhs":{"timeToEnergyTick":{}},"rhs":{"const":{"val":"1"}}}}]}},"castSpell":{"spellId":{"spellId":13750}}}}, {"action":{"condition":{"auraIsActive":{"auraId":{"spellId":6774,"rank":2}}},"autocastOtherCooldowns":{}}}, - {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"2"}}}},{"not":{"val":{"auraIsActive":{"auraId":{"spellId":6774,"rank":2}}}}}]}},"castSpell":{"spellId":{"spellId":6774,"rank":2}}}}, - {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"5"}}}},{"cmp":{"op":"OpLt","lhs":{"auraRemainingTime":{"auraId":{"spellId":6774,"rank":2}}},"rhs":{"const":{"val":"1"}}}}]}},"castSpell":{"spellId":{"spellId":6774,"rank":2}}}}, - {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"5"}}}},{"cmp":{"op":"OpGt","lhs":{"auraRemainingTime":{"auraId":{"spellId":6774,"rank":2}}},"rhs":{"const":{"val":" 15"}}}}]}},"castSpell":{"spellId":{"spellId":31016}}}}, + {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"5"}}}},{"or":{"vals":[{"auraIsActive":{"auraId":{"spellId":6774,"rank":2}}},{"cmp":{"op":"OpGe","lhs":{"currentEnergy":{}},"rhs":{"const":{"val":"79"}}}},{"cmp":{"op":"OpLt","lhs":{"remainingTime":{}},"rhs":{"const":{"val":"6"}}}}]}}]}},"castSpell":{"spellId":{"spellId":31016}}}}, {"action":{"castSpell":{"spellId":{"spellId":25300,"rank":9}}}} ] } \ No newline at end of file diff --git a/ui/rogue/apls/combat_backstab_sweaty.apl.json b/ui/rogue/apls/combat_backstab_sweaty.apl.json new file mode 100644 index 000000000..1e4fc7398 --- /dev/null +++ b/ui/rogue/apls/combat_backstab_sweaty.apl.json @@ -0,0 +1,15 @@ +{ + "type": "TypeAPL", + "prepullActions": [ + {"action":{"castSpell":{"spellId":{"spellId":13877}}},"doAtValue":{"const":{"val":"-1s"}}} + ], + "priorityList": [ + {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpLe","lhs":{"currentEnergy":{}},"rhs":{"const":{"val":"29"}}}},{"cmp":{"op":"OpGt","lhs":{"timeToEnergyTick":{}},"rhs":{"const":{"val":"1"}}}},{"cmp":{"op":"OpLt","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"5"}}}},{"not":{"val":{"auraIsActive":{"auraId":{"spellId":13750}}}}}]}},"castSpell":{"spellId":{"itemId":7676}}}}, + {"action":{"condition":{"auraIsActive":{"auraId":{"spellId":6774,"rank":2}}},"castSpell":{"spellId":{"spellId":26297,"tag":6}}}}, + {"action":{"condition":{"or":{"vals":[{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"1"}}}},{"not":{"val":{"auraIsActive":{"auraId":{"spellId":6774,"rank":2}}}}},{"cmp":{"op":"OpGe","lhs":{"remainingTime":{}},"rhs":{"const":{"val":"6"}}}}]}},{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"5"}}}},{"cmp":{"op":"OpLt","lhs":{"auraRemainingTime":{"auraId":{"spellId":6774,"rank":2}}},"rhs":{"const":{"val":"3"}}}},{"cmp":{"op":"OpGt","lhs":{"remainingTime":{}},"rhs":{"const":{"val":"9"}}}}]}}]}},"castSpell":{"spellId":{"spellId":6774,"rank":2}}}}, + {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpLt","lhs":{"currentEnergy":{}},"rhs":{"const":{"val":"59"}}}},{"cmp":{"op":"OpLt","lhs":{"timeToEnergyTick":{}},"rhs":{"const":{"val":"1"}}}}]}},"castSpell":{"spellId":{"spellId":13750}}}}, + {"action":{"condition":{"auraIsActive":{"auraId":{"spellId":6774,"rank":2}}},"autocastOtherCooldowns":{}}}, + {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"5"}}}},{"or":{"vals":[{"auraIsActive":{"auraId":{"spellId":6774,"rank":2}}},{"cmp":{"op":"OpGe","lhs":{"currentEnergy":{}},"rhs":{"const":{"val":"79"}}}},{"cmp":{"op":"OpLt","lhs":{"remainingTime":{}},"rhs":{"const":{"val":"6"}}}}]}}]}},"castSpell":{"spellId":{"spellId":31016}}}}, + {"action":{"castSpell":{"spellId":{"spellId":25300,"rank":9}}}} + ] +} \ No newline at end of file diff --git a/ui/rogue/apls/combat_sinister_strike.apl.json b/ui/rogue/apls/combat_sinister_strike.apl.json index 71880a878..5d8f94d6c 100644 --- a/ui/rogue/apls/combat_sinister_strike.apl.json +++ b/ui/rogue/apls/combat_sinister_strike.apl.json @@ -1,10 +1,10 @@ { "type": "TypeAPL", "priorityList": [ + {"action":{"condition":{"or":{"vals":[{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"1"}}}},{"not":{"val":{"auraIsActive":{"auraId":{"spellId":6774,"rank":2}}}}},{"cmp":{"op":"OpGe","lhs":{"remainingTime":{}},"rhs":{"const":{"val":"6"}}}}]}},{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"5"}}}},{"cmp":{"op":"OpLt","lhs":{"auraRemainingTime":{"auraId":{"spellId":6774,"rank":2}}},"rhs":{"const":{"val":"3"}}}},{"cmp":{"op":"OpGt","lhs":{"remainingTime":{}},"rhs":{"const":{"val":"9"}}}}]}}]}},"castSpell":{"spellId":{"spellId":6774,"rank":2}}}}, + {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpLt","lhs":{"currentEnergy":{}},"rhs":{"const":{"val":"59"}}}},{"cmp":{"op":"OpLt","lhs":{"timeToEnergyTick":{}},"rhs":{"const":{"val":"1"}}}}]}},"castSpell":{"spellId":{"spellId":13750}}}}, {"action":{"condition":{"auraIsActive":{"auraId":{"spellId":6774,"rank":2}}},"autocastOtherCooldowns":{}}}, - {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"2"}}}},{"not":{"val":{"auraIsActive":{"auraId":{"spellId":6774,"rank":2}}}}}]}},"castSpell":{"spellId":{"spellId":6774,"rank":2}}}}, - {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"5"}}}},{"cmp":{"op":"OpLt","lhs":{"auraRemainingTime":{"auraId":{"spellId":6774,"rank":2}}},"rhs":{"const":{"val":"1"}}}}]}},"castSpell":{"spellId":{"spellId":6774,"rank":2}}}}, - {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"5"}}}},{"cmp":{"op":"OpGt","lhs":{"auraRemainingTime":{"auraId":{"spellId":6774,"rank":2}}},"rhs":{"const":{"val":" 15"}}}}]}},"castSpell":{"spellId":{"spellId":31016}}}}, + {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"5"}}}},{"or":{"vals":[{"auraIsActive":{"auraId":{"spellId":6774,"rank":2}}},{"cmp":{"op":"OpGe","lhs":{"currentEnergy":{}},"rhs":{"const":{"val":"79"}}}},{"cmp":{"op":"OpLt","lhs":{"remainingTime":{}},"rhs":{"const":{"val":"6"}}}}]}}]}},"castSpell":{"spellId":{"spellId":31016}}}}, {"action":{"castSpell":{"spellId":{"spellId":11294,"rank":8}}}} - ] + ] } \ No newline at end of file diff --git a/ui/rogue/apls/combat_sinister_strike_iea.apl.json b/ui/rogue/apls/combat_sinister_strike_iea.apl.json new file mode 100644 index 000000000..d100eb36b --- /dev/null +++ b/ui/rogue/apls/combat_sinister_strike_iea.apl.json @@ -0,0 +1,15 @@ +{ + "type": "TypeAPL", + "prepullActions": [ + {"action":{"castSpell":{"spellId":{"spellId":13750}}},"doAtValue":{"const":{"val":"-1s"}}} + ], + "priorityList": [ + {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpLe","lhs":{"currentEnergy":{}},"rhs":{"const":{"val":"29"}}}},{"cmp":{"op":"OpLt","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"5"}}}},{"cmp":{"op":"OpLe","lhs":{"auraRemainingTime":{"sourceUnit":{"type":"CurrentTarget"},"auraId":{"spellId":11198,"rank":5}}},"rhs":{"const":{"val":"6"}}}},{"cmp":{"op":"OpGt","lhs":{"timeToEnergyTick":{}},"rhs":{"const":{"val":"1"}}}},{"not":{"val":{"auraIsActive":{"auraId":{"spellId":13750}}}}}]}},"castSpell":{"spellId":{"itemId":7676}}}}, + {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpLt","lhs":{"auraRemainingTime":{"sourceUnit":{"type":"CurrentTarget"},"auraId":{"spellId":11198,"rank":5}}},"rhs":{"const":{"val":"3"}}}},{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"5"}}}},{"cmp":{"op":"OpGe","lhs":{"remainingTime":{}},"rhs":{"const":{"val":"3"}}}}]}},"castSpell":{"spellId":{"spellId":11198,"rank":5}}}}, + {"action":{"condition":{"or":{"vals":[{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"1"}}}},{"not":{"val":{"auraIsActive":{"auraId":{"spellId":6774,"rank":2}}}}},{"cmp":{"op":"OpGe","lhs":{"remainingTime":{}},"rhs":{"const":{"val":"6"}}}},{"auraIsActive":{"sourceUnit":{"type":"CurrentTarget"},"auraId":{"spellId":11198,"rank":5}}}]}},{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"5"}}}},{"cmp":{"op":"OpLt","lhs":{"auraRemainingTime":{"auraId":{"spellId":6774,"rank":2}}},"rhs":{"const":{"val":"3"}}}},{"cmp":{"op":"OpGt","lhs":{"remainingTime":{}},"rhs":{"const":{"val":"9"}}}},{"cmp":{"op":"OpGt","lhs":{"auraRemainingTime":{"sourceUnit":{"type":"CurrentTarget"},"auraId":{"spellId":11198,"rank":5}}},"rhs":{"const":{"val":"15"}}}}]}}]}},"castSpell":{"spellId":{"spellId":6774,"rank":2}}}}, + {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpLt","lhs":{"currentEnergy":{}},"rhs":{"const":{"val":"59"}}}},{"cmp":{"op":"OpLt","lhs":{"timeToEnergyTick":{}},"rhs":{"const":{"val":"1"}}}}]}},"castSpell":{"spellId":{"spellId":13750}}}}, + {"action":{"condition":{"auraIsActive":{"auraId":{"spellId":6774,"rank":2}}},"autocastOtherCooldowns":{}}}, + {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"5"}}}},{"or":{"vals":[{"auraIsActive":{"auraId":{"spellId":6774,"rank":2}}},{"cmp":{"op":"OpGe","lhs":{"currentEnergy":{}},"rhs":{"const":{"val":"79"}}}},{"cmp":{"op":"OpLt","lhs":{"remainingTime":{}},"rhs":{"const":{"val":"6"}}}}]}},{"cmp":{"op":"OpGt","lhs":{"auraRemainingTime":{"sourceUnit":{"type":"CurrentTarget"},"auraId":{"spellId":11198,"rank":5}}},"rhs":{"const":{"val":"15"}}}}]}},"castSpell":{"spellId":{"spellId":31016}}}}, + {"action":{"castSpell":{"spellId":{"spellId":11294,"rank":8}}}} + ] +} \ No newline at end of file diff --git a/ui/rogue/apls/combat_sinister_strike_sweaty.apl.json b/ui/rogue/apls/combat_sinister_strike_sweaty.apl.json new file mode 100644 index 000000000..782fa5210 --- /dev/null +++ b/ui/rogue/apls/combat_sinister_strike_sweaty.apl.json @@ -0,0 +1,15 @@ +{ + "type": "TypeAPL", + "prepullActions": [ + {"action":{"castSpell":{"spellId":{"spellId":13877}}},"doAtValue":{"const":{"val":"-1s"}}} + ], + "priorityList": [ + {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpLe","lhs":{"currentEnergy":{}},"rhs":{"const":{"val":"29"}}}},{"cmp":{"op":"OpGt","lhs":{"timeToEnergyTick":{}},"rhs":{"const":{"val":"1"}}}},{"cmp":{"op":"OpLt","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"5"}}}},{"not":{"val":{"auraIsActive":{"auraId":{"spellId":13750}}}}}]}},"castSpell":{"spellId":{"itemId":7676}}}}, + {"action":{"condition":{"auraIsActive":{"auraId":{"spellId":6774,"rank":2}}},"castSpell":{"spellId":{"spellId":26297,"tag":6}}}}, + {"action":{"condition":{"or":{"vals":[{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"1"}}}},{"not":{"val":{"auraIsActive":{"auraId":{"spellId":6774,"rank":2}}}}},{"cmp":{"op":"OpGe","lhs":{"remainingTime":{}},"rhs":{"const":{"val":"6"}}}}]}},{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"5"}}}},{"cmp":{"op":"OpLt","lhs":{"auraRemainingTime":{"auraId":{"spellId":6774,"rank":2}}},"rhs":{"const":{"val":"3"}}}},{"cmp":{"op":"OpGt","lhs":{"remainingTime":{}},"rhs":{"const":{"val":"9"}}}}]}}]}},"castSpell":{"spellId":{"spellId":6774,"rank":2}}}}, + {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpLt","lhs":{"currentEnergy":{}},"rhs":{"const":{"val":"59"}}}},{"cmp":{"op":"OpLt","lhs":{"timeToEnergyTick":{}},"rhs":{"const":{"val":"1"}}}}]}},"castSpell":{"spellId":{"spellId":13750}}}}, + {"action":{"condition":{"auraIsActive":{"auraId":{"spellId":6774,"rank":2}}},"autocastOtherCooldowns":{}}}, + {"action":{"condition":{"and":{"vals":[{"cmp":{"op":"OpGe","lhs":{"currentComboPoints":{}},"rhs":{"const":{"val":"5"}}}},{"or":{"vals":[{"auraIsActive":{"auraId":{"spellId":6774,"rank":2}}},{"cmp":{"op":"OpGe","lhs":{"currentEnergy":{}},"rhs":{"const":{"val":"79"}}}},{"cmp":{"op":"OpLt","lhs":{"remainingTime":{}},"rhs":{"const":{"val":"6"}}}}]}}]}},"castSpell":{"spellId":{"spellId":31016}}}}, + {"action":{"condition":{"or":{"vals":[{"cmp":{"op":"OpGt","lhs":{"autoTimeToNext":{"autoType":"MainHand"}},"rhs":{"math":{"op":"OpSub","lhs":{"autoSwingTime":{"autoType":"MainHand"}},"rhs":{"const":{"val":"0.5"}}}}}},{"cmp":{"op":"OpLt","lhs":{"remainingTime":{}},"rhs":{"const":{"val":"6"}}}},{"cmp":{"op":"OpGe","lhs":{"currentEnergy":{}},"rhs":{"const":{"val":"79"}}}}]}},"castSpell":{"spellId":{"spellId":11294,"rank":8}}}} + ] +} \ No newline at end of file diff --git a/ui/rogue/gear_sets/combat_backstab_p1_bis.gear.json b/ui/rogue/gear_sets/combat_backstab_p1_bis.gear.json new file mode 100644 index 000000000..b3248a790 --- /dev/null +++ b/ui/rogue/gear_sets/combat_backstab_p1_bis.gear.json @@ -0,0 +1,19 @@ +{"items": [ + {"id":16908,"enchant":1508}, + {"id":18404}, + {"id":16823}, + {"id":13340,"enchant":849}, + {"id":16820,"enchant":1891}, + {"id":16825,"enchant":1885}, + {"id":18823,"enchant":1887}, + {"id":16827}, + {"id":16909,"enchant":1508}, + {"id":16824,"enchant":1887}, + {"id":17063}, + {"id":17713}, + {"id":13965}, + {"id":11815}, + {"id":18816,"enchant":1900}, + {"id":18805,"enchant":1900}, + {"id":17069} +]} \ No newline at end of file diff --git a/ui/rogue/gear_sets/combat_backstab_prebis.gear.json b/ui/rogue/gear_sets/combat_backstab_prebis.gear.json index 35ca9fc81..1c5e7fed5 100644 --- a/ui/rogue/gear_sets/combat_backstab_prebis.gear.json +++ b/ui/rogue/gear_sets/combat_backstab_prebis.gear.json @@ -13,8 +13,7 @@ {"id":17713}, {"id":13965}, {"id":11815}, - {"id":12783,"enchant":1900}, - {"id":13368,"enchant":2564}, + {"id":12590,"enchant":1900}, + {"id":13368,"enchant":1900}, {"id":12651} - ] -} \ No newline at end of file +]} \ No newline at end of file diff --git a/ui/rogue/gear_sets/combat_sinister_strike_p1_bis.gear.json b/ui/rogue/gear_sets/combat_sinister_strike_p1_bis.gear.json new file mode 100644 index 000000000..d94302e78 --- /dev/null +++ b/ui/rogue/gear_sets/combat_sinister_strike_p1_bis.gear.json @@ -0,0 +1,19 @@ +{"items": [ + {"id":16908,"enchant":1508}, + {"id":18404}, + {"id":16823}, + {"id":13340,"enchant":849}, + {"id":16820,"enchant":1891}, + {"id":16825,"enchant":1885}, + {"id":16826,"enchant":1887}, + {"id":16827}, + {"id":16909,"enchant":1508}, + {"id":16824,"enchant":1887}, + {"id":17063}, + {"id":17713}, + {"id":13965}, + {"id":11815}, + {"id":17075,"enchant":1900}, + {"id":18832,"enchant":1900}, + {"id":17069} +]} diff --git a/ui/rogue/gear_sets/combat_sinister_strike_prebis.gear.json b/ui/rogue/gear_sets/combat_sinister_strike_prebis.gear.json index a4d7a6b83..38c657482 100644 --- a/ui/rogue/gear_sets/combat_sinister_strike_prebis.gear.json +++ b/ui/rogue/gear_sets/combat_sinister_strike_prebis.gear.json @@ -14,7 +14,6 @@ {"id":13965}, {"id":11815}, {"id":12940,"enchant":1900}, - {"id":12939,"enchant":2564}, + {"id":12939,"enchant":1900}, {"id":12651} - ] -} \ No newline at end of file +]} diff --git a/ui/rogue/presets.ts b/ui/rogue/presets.ts index 860b2dc08..4b04f650c 100644 --- a/ui/rogue/presets.ts +++ b/ui/rogue/presets.ts @@ -21,10 +21,15 @@ import { import { RogueOptions } from '../core/proto/rogue.js'; import { SavedTalents } from '../core/proto/ui.js'; import BackstabAPL from './apls/combat_backstab.apl.json'; +import BackstabSweatyAPL from './apls/combat_backstab_sweaty.apl.json'; import SinisterStrikeAPL from './apls/combat_sinister_strike.apl.json'; +import SinisterStrikeSweatyAPL from './apls/combat_sinister_strike_sweaty.apl.json'; +import SinisterStrikeIEAAPL from './apls/combat_sinister_strike_iea.apl.json'; import BlankGear from './gear_sets/blank.gear.json'; import BackstabGearPreBiS from './gear_sets/combat_backstab_prebis.gear.json'; import SinisterStrikeGearPreBiS from './gear_sets/combat_sinister_strike_prebis.gear.json'; +import BackstabGearP1BiS from './gear_sets/combat_backstab_p1_bis.gear.json'; +import SinisterStrikeGearP1BiS from './gear_sets/combat_sinister_strike_p1_bis.gear.json'; // Preset options for this spec. // Eventually we will import these values for the raid sim too, so its good to @@ -35,18 +40,16 @@ import SinisterStrikeGearPreBiS from './gear_sets/combat_sinister_strike_prebis. /////////////////////////////////////////////////////////////////////////// export const GearBlank = PresetUtils.makePresetGear('Blank', BlankGear); -export const GearDaggersPreBiS = PresetUtils.makePresetGear('Backstab PreBiS', BackstabGearPreBiS); -export const GearSwordsPreBiS = PresetUtils.makePresetGear('Swords PreBiS', SinisterStrikeGearPreBiS); +export const GearBackstabPreBiS = PresetUtils.makePresetGear('Backstab Pre-BiS', BackstabGearPreBiS); +export const GearSinisterStrikePreBiS = PresetUtils.makePresetGear('Sinister Strike Pre-BiS', SinisterStrikeGearPreBiS); +export const GearBackstabP1BiS = PresetUtils.makePresetGear('Backstab P1 BiS', BackstabGearP1BiS); +export const GearSinisterStrikeP1BiS = PresetUtils.makePresetGear('Sinister Strike P1 BiS', SinisterStrikeGearP1BiS); export const GearPresets = { - [Phase.Phase1]: [GearDaggersPreBiS, GearSwordsPreBiS], - [Phase.Phase2]: [GearDaggersPreBiS, GearSwordsPreBiS], - [Phase.Phase3]: [GearDaggersPreBiS, GearSwordsPreBiS], - [Phase.Phase4]: [GearDaggersPreBiS, GearSwordsPreBiS], - [Phase.Phase5]: [GearDaggersPreBiS, GearSwordsPreBiS], + [Phase.Phase1]: [GearBackstabPreBiS, GearSinisterStrikePreBiS, GearBackstabP1BiS, GearSinisterStrikeP1BiS], }; -export const DefaultGear = GearSwordsPreBiS; +export const DefaultGear = GearSinisterStrikePreBiS; /////////////////////////////////////////////////////////////////////////// // APL Presets[] @@ -54,13 +57,12 @@ export const DefaultGear = GearSwordsPreBiS; export const ROTATION_PRESET_BACKSTAB = PresetUtils.makePresetAPLRotation('Backstab', BackstabAPL, {}); export const ROTATION_PRESET_SINISTER_STRIKE = PresetUtils.makePresetAPLRotation('Sinister Strike', SinisterStrikeAPL, {}); +export const ROTATION_PRESET_BACKSTAB_SWEATY = PresetUtils.makePresetAPLRotation('Backstab (Sweaty)', BackstabSweatyAPL, {}); +export const ROTATION_PRESET_SINISTER_STRIKE_SWEATY = PresetUtils.makePresetAPLRotation('Sinister Strike (Sweaty)', SinisterStrikeSweatyAPL, {}); +export const ROTATION_PRESET_SINISTER_STRIKE_IEA = PresetUtils.makePresetAPLRotation('Improved Expose Armor (SS)', SinisterStrikeIEAAPL, {}); export const APLPresets = { - [Phase.Phase1]: [ROTATION_PRESET_BACKSTAB, ROTATION_PRESET_SINISTER_STRIKE], - [Phase.Phase2]: [ROTATION_PRESET_BACKSTAB, ROTATION_PRESET_SINISTER_STRIKE], - [Phase.Phase3]: [ROTATION_PRESET_BACKSTAB, ROTATION_PRESET_SINISTER_STRIKE], - [Phase.Phase4]: [ROTATION_PRESET_BACKSTAB, ROTATION_PRESET_SINISTER_STRIKE], - [Phase.Phase5]: [ROTATION_PRESET_BACKSTAB, ROTATION_PRESET_SINISTER_STRIKE], + [Phase.Phase1]: [ROTATION_PRESET_BACKSTAB, ROTATION_PRESET_SINISTER_STRIKE, ROTATION_PRESET_BACKSTAB_SWEATY, ROTATION_PRESET_SINISTER_STRIKE_SWEATY, ROTATION_PRESET_SINISTER_STRIKE_IEA], }; //Need to add main hand equip logic or talent/rotation logic to map to Auto APL @@ -69,8 +71,9 @@ export const DefaultAPLs: Record = { [1]: ROTATION_PRESET_BACKSTAB, }; -export const DefaultAPLBackstab = APLPresets[Phase.Phase5][0]; -export const DefaultAPLSinisterStrike = APLPresets[Phase.Phase5][1]; +export const DefaultAPLBackstab = APLPresets[Phase.Phase1][0]; +export const DefaultAPLSinisterStrike = APLPresets[Phase.Phase1][1]; +export const DefaultAPLIEA = APLPresets[Phase.Phase1][4]; /////////////////////////////////////////////////////////////////////////// // Talent Presets @@ -82,37 +85,46 @@ export const DefaultAPLSinisterStrike = APLPresets[Phase.Phase5][1]; // Preset name must be unique. Ex: 'Backstab DPS' cannot be used as a name more than once export const CombatBackstabTalents = PresetUtils.makePresetTalents( - 'Combat Backstab', + 'Backstab', SavedTalents.create({ talentsString: '005023104-0233050020550100221-05' }), ); -export const CombatSwordsTalents = PresetUtils.makePresetTalents('Combat Swords', SavedTalents.create({ talentsString: '005323105-0240052020050150231' })); +export const CombatSinisterStrikeTalents = PresetUtils.makePresetTalents('Sinister Strike', SavedTalents.create({ talentsString: '005323105-0240052020050150231' })); + +export const CombatSinisterStrikeIEATalents = PresetUtils.makePresetTalents('Improved Expose Armor (SS)', SavedTalents.create({ talentsString: '005323123-0240052020050150231' })); export const TalentPresets = { - [Phase.Phase1]: [CombatSwordsTalents, CombatBackstabTalents], - [Phase.Phase2]: [CombatSwordsTalents, CombatBackstabTalents], - [Phase.Phase3]: [CombatSwordsTalents, CombatBackstabTalents], - [Phase.Phase4]: [CombatSwordsTalents, CombatBackstabTalents], - [Phase.Phase5]: [CombatSwordsTalents, CombatBackstabTalents], + [Phase.Phase1]: [CombatBackstabTalents, CombatSinisterStrikeTalents, CombatSinisterStrikeIEATalents], }; -export const DefaultTalentsAssassin = TalentPresets[Phase.Phase5][0]; -export const DefaultTalentsCombat = TalentPresets[Phase.Phase5][0]; -export const DefaultTalentsSubtlety = TalentPresets[Phase.Phase5][0]; +export const DefaultTalentsAssassin = TalentPresets[Phase.Phase1][0]; +export const DefaultTalentsCombat = TalentPresets[Phase.Phase1][0]; +export const DefaultTalentsSubtlety = TalentPresets[Phase.Phase1][0]; -export const DefaultTalentsBackstab = TalentPresets[Phase.Phase5][0]; -export const DefaultTalentsSinisterStrike = TalentPresets[Phase.Phase5][1]; +export const DefaultTalentsBackstab = TalentPresets[Phase.Phase1][0]; +export const DefaultTalentsSinisterStrike = TalentPresets[Phase.Phase1][1]; +export const DefaultTalentsIEA = TalentPresets[Phase.Phase1][2]; -export const DefaultTalents = DefaultTalentsAssassin; +export const DefaultTalents = DefaultTalentsSinisterStrike; /////////////////////////////////////////////////////////////////////////// -// Encounters +// Build Presets /////////////////////////////////////////////////////////////////////////// export const PresetBuildBackstab = PresetUtils.makePresetBuild('Backstab', { - gear: GearDaggersPreBiS, + gear: GearBackstabPreBiS, talents: DefaultTalentsBackstab, rotation: DefaultAPLBackstab, }); +export const PresetBuildSinisterStrike = PresetUtils.makePresetBuild('Sinister Strike', { + gear: GearSinisterStrikePreBiS, + talents: DefaultTalentsSinisterStrike, + rotation: DefaultAPLSinisterStrike, +}); +export const PresetBuildIEA = PresetUtils.makePresetBuild('IEA', { + gear: GearSinisterStrikePreBiS, + talents: DefaultTalentsIEA, + rotation: DefaultAPLIEA, +}); /////////////////////////////////////////////////////////////////////////// // Options @@ -124,7 +136,7 @@ export const DefaultOptions = RogueOptions.create({}); // Consumes/Buffs/Debuffs /////////////////////////////////////////////////////////////////////////// -export const P5Consumes = Consumes.create({ +export const P1Consumes = Consumes.create({ agilityElixir: AgilityElixir.ElixirOfTheMongoose, attackPowerBuff: AttackPowerBuff.JujuMight, defaultConjured: Conjured.ConjuredRogueThistleTea, @@ -139,14 +151,10 @@ export const P5Consumes = Consumes.create({ }); export const DefaultConsumes = { - [Phase.Phase1]: P5Consumes, - [Phase.Phase2]: P5Consumes, - [Phase.Phase3]: P5Consumes, - [Phase.Phase4]: P5Consumes, - [Phase.Phase5]: P5Consumes, + [Phase.Phase1]: P1Consumes, }; -export const DefaultRaidBuffs = RaidBuffs.create({ +export const P1RaidBuffs = RaidBuffs.create({ battleShout: TristateEffect.TristateEffectImproved, fireResistanceAura: true, fireResistanceTotem: true, @@ -156,7 +164,11 @@ export const DefaultRaidBuffs = RaidBuffs.create({ leaderOfThePack: true, }); -export const DefaultIndividualBuffs = IndividualBuffs.create({ +export const DefaultRaidBuffs = { + [Phase.Phase1]: P1RaidBuffs, +}; + +export const P1IndividualBuffs = IndividualBuffs.create({ blessingOfKings: true, blessingOfMight: TristateEffect.TristateEffectImproved, fengusFerocity: true, @@ -168,14 +180,26 @@ export const DefaultIndividualBuffs = IndividualBuffs.create({ warchiefsBlessing: true, }); -export const DefaultDebuffs = Debuffs.create({ +export const DefaultIndividualBuffs = { + [Phase.Phase1]: P1IndividualBuffs, +}; + +export const P1DefaultDebuffs = Debuffs.create({ curseOfRecklessness: true, faerieFire: true, improvedScorch: true, sunderArmor: true, }); -export const OtherDefaults = { +export const DefaultDebuffs = { + [Phase.Phase1]: P1DefaultDebuffs, +}; + +export const P1OtherDefaults = { profession1: Profession.Engineering, profession2: Profession.Alchemy, }; + +export const OtherDefaults = { + [Phase.Phase1]: P1OtherDefaults, +}; diff --git a/ui/rogue/sim.ts b/ui/rogue/sim.ts index a526e1aea..18ce921a8 100644 --- a/ui/rogue/sim.ts +++ b/ui/rogue/sim.ts @@ -101,17 +101,17 @@ const SPEC_CONFIG = registerSpecConfig(Spec.SpecRogue, { ), // Default consumes settings. - consumes: Presets.DefaultConsumes[Phase.Phase5], + consumes: Presets.DefaultConsumes[Phase.Phase1], // Default talents. talents: Presets.DefaultTalents.data, // Default spec-specific settings. specOptions: Presets.DefaultOptions, - other: Presets.OtherDefaults, + other: Presets.OtherDefaults[Phase.Phase1], // Default raid/party buffs settings. - raidBuffs: Presets.DefaultRaidBuffs, + raidBuffs: Presets.DefaultRaidBuffs[Phase.Phase1], partyBuffs: PartyBuffs.create({}), - individualBuffs: Presets.DefaultIndividualBuffs, - debuffs: Presets.DefaultDebuffs, + individualBuffs: Presets.DefaultIndividualBuffs[Phase.Phase1], + debuffs: Presets.DefaultDebuffs[Phase.Phase1], }, playerInputs: { @@ -139,30 +139,20 @@ const SPEC_CONFIG = registerSpecConfig(Spec.SpecRogue, { presets: { // Preset talents that the user can quickly select. talents: [ - ...Presets.TalentPresets[Phase.Phase5], - //...Presets.TalentPresets[Phase.Phase4], Removed due to duplication with P5 - //...Presets.TalentPresets[Phase.Phase3], - //...Presets.TalentPresets[Phase.Phase2], - //...Presets.TalentPresets[Phase.Phase1], + ...Presets.TalentPresets[Phase.Phase1], ], // Preset rotations that the user can quickly select. rotations: [ - ...Presets.APLPresets[Phase.Phase5], - //...Presets.APLPresets[Phase.Phase4], Removed due to duplication with P5 - //...Presets.APLPresets[Phase.Phase3], - //...Presets.APLPresets[Phase.Phase2], - //...Presets.APLPresets[Phase.Phase1], + ...Presets.APLPresets[Phase.Phase1], ], // Preset gear configurations that the user can quickly select. gear: [ - ...Presets.GearPresets[Phase.Phase5], - //...Presets.GearPresets[Phase.Phase4], - //...Presets.GearPresets[Phase.Phase3], - //...Presets.GearPresets[Phase.Phase2], - //...Presets.GearPresets[Phase.Phase1], + ...Presets.GearPresets[Phase.Phase1], ], builds: [ - // Presets.PresetBuildBackstab, + Presets.PresetBuildBackstab, + Presets.PresetBuildSinisterStrike, + Presets.PresetBuildIEA, ], },