• Visit Rebornbuddy
  • PureRotation V2

    Discussion in 'Archives' started by Stormchasing, Apr 16, 2013.

    1. Stormchasing

      Stormchasing Community Developer

      Joined:
      Jan 15, 2011
      Messages:
      4,029
      Likes Received:
      48
      Trophy Points:
      48
      No updates planned, support canceld, currently full functional, looking for a new dev who will update it in the future or rewrite it
      [​IMG]


      Welcome to this epic thread!


      Small History Lesson:
      It was a dark day for Weischbier as he was chatting with the CLU team, everyone was online at that particular time. Weischbier suddenly suggested to create a new raiding combat routine from scratch. This routine would've required massive framelock support. Wulf agreed and so did Stormchasing. PureRotation was born, after several days of hard work with the core of the PureRotation Team.


      Enjoy this little hot chocolate CR.


      Installation / Usage
      https://www.thebuddyforum.com/thebu...tore-trouble-shooting-streaming-products.html

      Credits

      Thanks go out to Wulf, Stormchasing, Mirabis, Dagradt, Lao, Ama, Handnavi, nomnomnom, Weischbier & alxaw for making this epic project possible. We had a great time while working on this. I'd also like to thank all the testers who took their time while the combat routine was being developed.


      Thanks to Kink For the logo!



      SVN Link
      GONE For new updates obtain your free copy of PR on the store


      PureRotation Team

      • Wulf - Main developer and leader of the project.
      • Stormchasing - Main developer and co-leader of this project.
      • Weischbier - Main developer and co-leader of this project.
      • Dagradt - For being awesome and supportive. Most likely he will add PVP to pure at a later stage.
      • Handnavi - For working on Feral, hopefully completed next year.
      • Mirabis - For working on Resto & Balance Druid. Also working with Ama on the HealManager.
      • Lao - For working on Sub & Combat Rogue. He should be back next year with a new PC.
      • Ama - For working on Healingmanager for Pure and completing Paladin Holy, Shaman Resto, Monk Mistweaver (/w Wulf).
      • nomnomnom - For working on Fury & Arms warrior (Arms should be ready soon).
      • alxaw - For working on Deathknight(Frost), Rogue (Assassination), Shaman (Elemental and Enhancement), Warlock (Destro), Hunter (BM).
      • Natfoth - For being there, and advice.

      PureRotation Features

      • Hotkey system for cooldown usage and AoE usage.
      • Fast CC for raiding environments.
      • GUI with customizable options (Cooldowns, trinket usage etc).
      • Supports Tyrael BotBase, and LazyRaider without movement (Tyrael is adviced).
      • Pre-Combat buffing.

      What will never be added to PureRotation

      • Movement.
      • Targetting.
      • LowLevelSupport

      Special Key Features

      Death-Knight Special Key

      • Blood (Special Key ON Tier 6 Talent in AOE-Mode)
      • Frost (Special Key ON Tier 6 Talent in AOE-Mode)
      • Unholy (Special Key ON Tier 6 Talent in AOE-Mode)

      Monk Special Key

      • Windwalker (Special Key ON Fists of Fury)
      • Mistweaver (Special Key OFF Fistweave / Special Key ON Mistweave)

      Rogue Special Key


      • Assassination (Special Key ON Tricks of the trade on focus target)
      • Combat (Special Key ON Tricks of the trade on focus target)

      Warlock Special Key

      • Demonology (Glyph Demon Hunting ON and Special Key ON this will turn Tanking Mode on)

      Warrior Special Key

      • Fury (Special Key ON Heroic Leap on your currenttarget)
      • Protection (Special Key ON Shield Barrier usage, Special Key OFF Shield Block usage)


      Troubleshooting
      Question : Help, I'm getting this error -->
      Answer : Redownload .NET Framework 4.5.1
      If You're using Windows XP and recive this error, switch to Windows 7 or higher

      Question: Hotkeys are not working for me
      thanks to Benny who figured this out (we are still testing this to confirm it! but this seems to be ONE possible issue atm)


      Supported specs in PureRotation

      • Hunter (ALL Specs).
      • Rogue (ALL Specs).
      • Warrior (Arms Not completed yet, will be shortly though!).
      • Warlock (ALL Specs).
      • Paladin (Prot / Retri).
      • Death Knight (ALL Specs).
      • Druid (Ballance / Feral / Guardian).
      • Monk (Windwalker / Brewmaster).
      • Mage (ALL Specs).
      • Priest (Shadow).
      • Shaman (Enhancer / Elemental).

      BotBase for PureRotation
      We recommend using the Tyrael BotBase with FrameLock enabled.

      With framelock enabled:
      30 ticks < 60 fps
      60 ticks > 60 fps

      With framelock disabled:
      Doesn't matter, select whatever you feel is right.


      Support for PureRotation
      Support will be limited during the next months as people are taking their time off wow and Honorbuddy in general. In case of any major bugs on healing Mirabis and Ama will take care of that. I'll take care of the dps bugs if any.

      While we may work on this always, you'll notice when we post an update to the svn that's coming up in a few days!
       
      Last edited: Aug 27, 2014
      nomnomnom likes this.
    2. Millz

      Millz Well-Known Member Buddy Store Developer

      Joined:
      Jan 15, 2010
      Messages:
      6,495
      Likes Received:
      223
      Trophy Points:
      63
      If you've been linked to this post, chances are you've posted an issue which has a common/easy answer, or you've posted an issue which requires a log.

      Please read this post in full, as it's likely to solve your problems!



      I'm having problems;
      1) Close all copies of Honorbuddy.
      2) Delete your files under <Honorbuddy>/Settings/PureRotation/*
      3) Delete the files under <Honorbuddy>/CompiledAssemblies/*
      4) Update your .NET 4.5 install using this link; Download Microsoft .NET Framework 4.5 from Official Microsoft Download Centre
      5) Update your copy of PureRotation from SVN - the .zip on the first post of this thread is generally very far out of date, so you absolutely must use the SVN.
      6) If you have a trinket that can only be used in a specific zone, or isn't a 'traditional' use to gain x buff for x seconds, then disable it via the 'Class Config' window.

      If you're still having issues after trying the above and/or have been asked to post a log;
      1) Open Honorbuddy and select PureRotation.
      2) Click Settings and Tools
      3) Change the logging level from 'Normal' to 'Diagnostic'
      4) Save and Close
      5) Click Start
      6) Attack something, wait for the issue to occur, and then stop the bot.
      7) Post the log into this thread, here's a guide for posting a log; http://www.thebuddyforum.com/honorb...-how-attach-your-hb-db-log-file-pictures.html


      How do I use an SVN? How can I update this?
      - Follow this guide for a how-to on using an SVN; http://www.thebuddyforum.com/honorbuddy-forum/honorbuddy-guides/26031-guide-how-svn-jvidia.html
      - The SVN link to use is purerotation - Revision 972: /trunk/PureRotation


      Quick instructions specific to PureRotation after downloading and installing Tortoise.

      1) Navigate to <Honorbuddy>/Routines/
      2) Create a folder, called PureRotation.
      3) Right click -> SVN Checkout
      4) Use SVN link above


      It's not casting cooldowns and/or using spell X and/or using AoE abilities?
      - If the spell is PvP orientated, then chances are it isn't supported (yet!).
      - You need to either use Automatic mode (auto uses cooldowns/switches to aoe mode) or Hotkey mode to manually control cooldowns/aoe mode. These can be enabled via the 'Class Config' window.
      new paste

      ---

      Old Thread (archived due to size): http://www.thebuddyforum.com/archives/99239-released-purerotation.html
      Old Thread v2 (archived to change thread creator): http://www.thebuddyforum.com/honorbuddy-forum/combat-routines/all-one/114611-purerotation-v2.html

      Want to know if PureRotation is better than X Routine? Take a look at BuddyRanks: http://www.thebuddyforum.com/honorb...-buddyranks-honorbuddy-cr-ranking-system.html

      Updated to a bad version that now doesn't work?
      - Right click on your PureRotation folder
      - Select Tortoise SVN from your context menu
      - Select "Update to revision..." from your context menu
      - Enter the revision number you wish to roll back to in the text box.
      - Press Return key or hit the button "OK"
      - Tortoise will update your folder with the files from your desired revision.
       
      Last edited: May 16, 2013
    3. bennyquest

      bennyquest Community Developer

      Joined:
      Dec 6, 2010
      Messages:
      2,644
      Likes Received:
      22
      Trophy Points:
      38
      //reservered.....for nothing.


      PS my hotkeys are working now.
       
    4. Captian

      Captian New Member

      Joined:
      Apr 16, 2013
      Messages:
      22
      Likes Received:
      0
      Trophy Points:
      0
      Having an issue with PureRotation.... i used the SVN and now HB will load it but when i click on settings it shuts HB down and pops up saying "HonorBuddy has encountered a problem.. will only do this with PureRotation none of the others.. plz help
       
    5. Toney001

      Toney001 New Member

      Joined:
      Oct 12, 2011
      Messages:
      1,206
      Likes Received:
      5
      Trophy Points:
      0
      Hello good people.

      Yesterday I started fiddling with PR on my Fire Mage, and after finding some problems with the cooldown logic, I've implemented a few fixes so it works the way it's supposed to (I haven't played in a long time, so my knowledge of current rotations is based on the information available in Elitist Jerks and Icy-Veins, feel free to correct me if I'm wrong).

      By the time I was done last night, it was very late, so I may be missing something. I'll try to be thorough with the details of what I've changed, but I'll upload the modified file just in case a dev wants to take a look at.

      The list of changes includes, but is not limited to (again, sorry if I fail to remember something):
      * Made Alter Time actually work (it used to be cast and "cancelled" immediately, rendering it completely useless). I've added a new action, to cancel it.
      * Presence of Mind wasn't cast, as it was set to cast only if Alter Time was not on cooldown, but Alter Time was above in the priority list, so the condition was never met.
      * Combustion was cast as soon as it was up and the target had Ignite, resulting in very small dots. I understand the best way is to handle it manually, but I've fixed this all to be included in a "one action" CD burst phase, as all three align perfectly.

      Disclaimer: My coding knowledge is pretty limited, so this might not be pretty. The important thing here is the logic, if you can make the code more efficient, go for it!

      Old Cooldown Code:
      Code:
              private static Composite HandleOffensiveCooldowns()
              {
                  return new PrioritySelector(
                      Spell.Cast("Combustion", ret => NeedCombustion),
                      Spell.Cast("Alter Time", ret => NeedAlterTime),
                      Spell.Cast("Presence of Mind", ret => NeedPresenceofMind),
                      Spell.Cast("Mirror Image", ret => NeedMirrorImage),
                      Spell.PreventDoubleCastOnGround("Evocation", 2, loc => Me.Location, ret => NeedRuneofPower,true));
              }
      New Cooldown Code:
      Code:
              private static Composite HandleOffensiveCooldowns()
              {
                  return new PrioritySelector(
                      Spell.Cast("Combustion", ret => NeedCombustion),
                      Spell.Cast("Presence of Mind", ret => NeedPresenceofMind),
                      Spell.PreventDoubleCast("Alter Time", ThrottleTime, ret => NeedAlterTime),
                      Spell.Cast("Alter Time", ret => NeedCancelAlterTime),
                      Spell.Cast("Mirror Image", ret => NeedMirrorImage),
                      Spell.PreventDoubleCastOnGround("Evocation", 2, loc => Me.Location, ret => NeedRuneofPower,true));
              }
      Booleans:

      Old Combustion:
      Code:
      private static bool NeedCombustion { get { return UseCombustion && Me.CurrentTarget.HasAura("Ignite"); } }
      New Combustion:
      Code:
      private static bool NeedCombustion { get { return UseCombustion && Me.CurrentTarget.HasAura("Ignite") && Spell.SpellOnCooldown("Presence of Mind") && Spell.SpellOnCooldown("Alter Time") && !StyxWoW.Me.ActiveAuras.ContainsKey("Pyroblast!") && !Me.HasAura("Presence of Mind") && Spell.Lastspellcast == "Pyroblast"; } }
      Note: The change was made to align Combustion with the other cooldowns, to make sure it'd go off after the "cooldown phase", instead of whenever it was up.
      This change might interfere with the AoE rotation, I haven't tested. If needed, you could split it and add the old as NeedAoECombustion and the new one as NeedSingleTargetCombustion.

      Old Alter Time:
      Code:
      private static bool NeedAlterTime { get { return UseAlterTime && Me.HasAnyAura("Invoker's Energy", "Rune of Power") && StyxWoW.Me.ActiveAuras.ContainsKey("Pyroblast!") && !Me.HasAura("Alter Time"); } }
      New Alter Time:
      Code:
      private static bool NeedAlterTime { get { return UseAlterTime && Me.HasAnyAura("Invoker's Energy", "Rune of Power") && StyxWoW.Me.ActiveAuras.ContainsKey("Pyroblast!") && Me.HasAura("Presence of Mind") && !Me.HasAura("Alter Time"); } }
      Note: The AT boolean wasn't wrong, I just added the PoM check JUST to make sure it went in the right order, even though I moved it up the priority in the cooldown code.

      New "CancelAlterTime":
      Code:
      private static bool NeedCancelAlterTime { get { return UseAlterTime && Me.HasAnyAura("Invoker's Energy", "Rune of Power") && !StyxWoW.Me.ActiveAuras.ContainsKey("Pyroblast!") && !Me.HasAura("Presence of Mind") && Me.HasAura("Alter Time"); } }
      Note: This one is brand new. It was added to make sure the "cooldown phase" was properly executed in order before "clicking it off". Could probably use a check to make sure the last spell cast was Pyroblast.

      Old Presence of Mind:
      Code:
      private static bool NeedPresenceofMind { get { return UsePresenceofMind && StyxWoW.Me.ActiveAuras.ContainsKey("Pyroblast!") && !Spell.SpellOnCooldown("Alter Time"); } }
      New Presence of Mind:
      Code:
      private static bool NeedPresenceofMind { get { return UsePresenceofMind && StyxWoW.Me.ActiveAuras.ContainsKey("Pyroblast!") && Me.HasAnyAura("Invoker's Energy", "Rune of Power") && !Spell.SpellOnCooldown("Alter Time"); } }
      Note: Added a check for Rune of Power/Invoker's Energy. The idea was to make sure I was buffed before executing the "cooldown phase", as it was falling off in the middle. I can optimize this further without much trouble. Just wanted to go to bed tbh...

      Old Pyroblast:
      Code:
      private static bool NeedPyroBlast { get { return Me.HasAnyAura("Pyroblast!", "Presence of Mind"); } }
      New Pyroblast:
      Code:
      private static bool NeedPyroBlast { get { return Me.HasAnyAura("Pyroblast!", "Presence of Mind") && (Spell.SpellOnCooldown("Alter Time") || Me.HasAura("Alter Time")); } }
      Note: This change makes a lot less sense now than it did at 2am last night... I know I did this for a reason, but I don't see why now. The trigger I added looks to be moot. I wonder why I added it... feel free to delete. I'll do further tests myself, though I'm fairly sure I was just tired...

      I think that's it for the cooldowns.
      Basically I corrected what wasn't working, and I aligned them so it was ONE burst per cycle (instead of not stacking them), which should go like this:

      (Pyroblast! buff is applied) > PoM > Alter Time > Pyroblast > Pyroblast > Alter Time > Pyroblast > Pyroblast > Combustion (I'm assuming the Ignite will be huge by now)

      I'm sure this can be further optimized, but take it, if nothing else, as a proof of concept. It's raised my Mage's DPS by 20% just by doing cooldowns in one burst.
      It does require the Glyph of Combustion so all three cooldowns are 1.5m. I believe this is one of the "cookie-cutter" choices, but if not, I suppose there could be some sort of check for all this.

      I've also tried a bit of change with the way Invoker's Energy was applied, because it was falling off in the middle of the "cooldown phase".

      Old Evocation:
      Code:
      private static bool NeedEvocationFirstCheck { get { return TalentManager.HasTalent(16) && !Me.HasAura("Invoker's Energy") && !Me.HasAura("Alter Time"); } }
      New Evocation:
      Code:
      private static bool NeedEvocationFirstCheck { get { return TalentManager.HasTalent(16) && (Spell.GetMyAuraTimeLeft("Invoker's Energy", Me) =< 3) && !Me.HasAura("Alter Time"); } }

      Note:
      This changes the buff to be applied 3 secs before it goes down, instead of waiting for it to go down before applying it. In theory it shouldn't make much difference, but it did feel like it was falling off less during "cooldown phase".
      In retrospective, this could probably be handled better by adding a condition to the "cooldown phase" to check for the buff duration, and making sure it'll last. Same thing needs to be done for the Mage Bombs, since Pyromaniac often falls off during "cooldown phase", resulting in smaller Pyroblasts.

      I think this is all. Remember, this needs much optimizing, but the dps improvement was immediate so I figured I'd share :)
      I'll come back to this if I manage to optimize it further before a dev does, or if I remember something I missed.

      Anyway... hope you can get some use out of this!
       

      Attached Files:

      • Fire.cs
        File size:
        10.8 KB
        Views:
        199
    6. bennyquest

      bennyquest Community Developer

      Joined:
      Dec 6, 2010
      Messages:
      2,644
      Likes Received:
      22
      Trophy Points:
      38

      Delete your compiled assemblies folder contents and honrobuddy>settings>purerotation folder

      should fix you up
       
    7. bennyquest

      bennyquest Community Developer

      Joined:
      Dec 6, 2010
      Messages:
      2,644
      Likes Received:
      22
      Trophy Points:
      38
      Toney, thanks for looking at firemage not sure most of the devs have had a lot of time to get to it. Contributions like this is what makes the HB community what it is.
       
    8. Millz

      Millz Well-Known Member Buddy Store Developer

      Joined:
      Jan 15, 2010
      Messages:
      6,495
      Likes Received:
      223
      Trophy Points:
      63
      Thanks for the very well thought out post. Can't just copy and paste your version unfortunately (;)) as I've already made changes ready for pure v2, but will be sure to add these changes in.

      *Edit*

      [PureRotation 2.0.0]: *Fireball on Raider's Training Dummy at 12.7 yds at 100.0%
      [PureRotation 2.0.0]: *Fireball on Raider's Training Dummy at 12.7 yds at 100.0%
      [PureRotation 2.0.0]: *Inferno Blast on Raider's Training Dummy at 12.7 yds at 100.0%
      [PureRotation 2.0.0]: *Presence of Mind on Raider's Training Dummy at 12.7 yds at 100.0%
      [PureRotation 2.0.0]: *Alter Time on Raider's Training Dummy at 12.7 yds at 100.0%
      [PureRotation 2.0.0]: *Pyroblast on Raider's Training Dummy at 12.7 yds at 100.0%
      [PureRotation 2.0.0]: *Pyroblast on Raider's Training Dummy at 12.7 yds at 100.0%
      [PureRotation 2.0.0]: *Alter Time on Raider's Training Dummy at 12.7 yds at 100.0%
      [PureRotation 2.0.0]: *Nether Tempest on Raider's Training Dummy at 12.7 yds at 100.0%
      [PureRotation 2.0.0]: *Pyroblast on Raider's Training Dummy at 12.7 yds at 100.0%
      [PureRotation 2.0.0]: *Pyroblast on Raider's Training Dummy at 12.7 yds at 100.0%
      [PureRotation 2.0.0]: *Combustion on Raider's Training Dummy at 12.7 yds at 100.0%
      [PureRotation 2.0.0]: *Inferno Blast on Raider's Training Dummy at 12.7 yds at 100.0%
      [PureRotation 2.0.0]: *Pyroblast on Raider's Training Dummy at 12.7 yds at 100.0%


      :)
       
      Last edited: Apr 17, 2013
    9. Stormchasing

      Stormchasing Community Developer

      Joined:
      Jan 15, 2011
      Messages:
      4,029
      Likes Received:
      48
      Trophy Points:
      48
      It stosp aoeing when u toggle it :)
      for the DnD ... will redirect it to the dev




      the issue is the interrupt method, this checks for Strangulate and does currently not see that Asphyxiate (the strangulate replacement) is on cooldown, it sees that Strangulate is NOT on Cooldown and tries to cast it.
      The interrupt method is the next on my list, cause this one is wrong ... since weeks, there are popped all interrupts at the same time and overloaded spells are not recognized
       
    10. gen0m

      gen0m Member

      Joined:
      Feb 8, 2013
      Messages:
      78
      Likes Received:
      1
      Trophy Points:
      6
    11. Stormchasing

      Stormchasing Community Developer

      Joined:
      Jan 15, 2011
      Messages:
      4,029
      Likes Received:
      48
      Trophy Points:
      48
    12. nomnomnom

      nomnomnom Well-Known Member

      Joined:
      Feb 18, 2011
      Messages:
      1,506
      Likes Received:
      73
      Trophy Points:
      48
    13. lancerx78

      lancerx78 New Member

      Joined:
      Sep 30, 2012
      Messages:
      108
      Likes Received:
      0
      Trophy Points:
      0
      thanks for such a great CC and continued support. I was just wondering if there was anyway I could set my Paladin tanking Settings up so that I can use whatever seal I want. When heroic raiding with my healers, I dont really need to run Insight, yet I can't figure out a way to stop the CC from switching it everytime I change it to Seal of Truth. Any suggestions?
       
    14. simplyxz

      simplyxz New Member

      Joined:
      Nov 13, 2012
      Messages:
      9
      Likes Received:
      0
      Trophy Points:
      0
      Still loving the CC, although I'm still finding Weischbier's original frost CC better so I'm using that.

      What I wanted to ask was, when will the unholy CC be fixed? I tested it last night and found that the DPS is quite terrible, since the addition of festerblight, even with it disabled the rotation's been slow and it's dropping "Dark Transformation" without using it. It ran smooth before that, I ranked in the top 20 for primordius using it around 4 weeks ago with 166k DPS on 10Man, but now on a single target dummy I only pulled around 70k.
       
    15. dubstep1337

      dubstep1337 Member

      Joined:
      Feb 6, 2012
      Messages:
      199
      Likes Received:
      1
      Trophy Points:
      18

      no help in the old thread.. and still doesnt work for me.. :(
       
    16. nomnomnom

      nomnomnom Well-Known Member

      Joined:
      Feb 18, 2011
      Messages:
      1,506
      Likes Received:
      73
      Trophy Points:
      48
      Its cause you use arms. Not completed yet, will be shortly though!
       
    17. dubstep1337

      dubstep1337 Member

      Joined:
      Feb 6, 2012
      Messages:
      199
      Likes Received:
      1
      Trophy Points:
      18

      oh.. okay didnt knew that sorry.. and thanx for helping me :)
       
    18. Stormchasing

      Stormchasing Community Developer

      Joined:
      Jan 15, 2011
      Messages:
      4,029
      Likes Received:
      48
      Trophy Points:
      48
      update your pure
      Sealswapping is now only done when enabled (for switching between AOE and Default seal (Insight)
      if u disabled Sealswapping it won't anymore swap now (as long as there is one seal active)
       
    19. User0828

      User0828 New Member

      Joined:
      Mar 1, 2012
      Messages:
      549
      Likes Received:
      2
      Trophy Points:
      0
      hey pure rotation devs! i just wanted to save what a GREAT job you have done with this CR! i use it on all 6 of my 90'd for raiding, and it works great.

      you really have come a long way since PR first came out. and i hope u keep up the good work! you truely are a dedicated bunch.
       
    20. Alucardtnuoc

      Alucardtnuoc New Member

      Joined:
      Oct 20, 2012
      Messages:
      161
      Likes Received:
      0
      Trophy Points:
      0
      Frost mage -
      Doesn't cast Evocation for invocation buff when it falls off.
      Tries to use freeze from pet on bosses (anything immune to the snaring won't grant FoF charges)

      Only things i have noticed really, besides that... good routine.
       

    Share This Page