• Visit Rebornbuddy
  • [Beta] Titan Shields - LazyRaider

    Discussion in 'Archives' started by Stree, Jan 9, 2012.

    1. Stree

      Stree New Member

      Joined:
      Jun 9, 2011
      Messages:
      276
      Likes Received:
      2
      Trophy Points:
      0

      [​IMG]
      Titan Shield
      A LazyRaider Prot / Arms CC
      Based on Titan Arms 2.3 by Shaddar


      What it does:
      • Automatic Spec Detection for Prot & Arms specs.
      • Will Interrupt when target is casting. (Currently commented out, see Interrupts section for details)
      • Uses Trinkets, Shield Wall, Rallying Cry, Enraged Regeneration (Commented out by default - see guide in post below on how to add these in)
      • Uses Trinkets, Recklessness, Deadly Calm, Inner Rage, and Racials (In Arms Spec).
      • Single Target and AoE rotations for both Protection and Arms.
      • Charges if your out of melee range, heroic leaps if charge is on CD. (Commented out by default - see guide in post below on how to add these in).

      What it does not do:
      • It doesn't eat or use health potions.
      • No facing, movement or targeting (as its a LazyRaider CC).
      • It doesn't Stance Dance as of yet.
      • There is currently no config GUI.

      [​IMG]

      Recommended Specs
      Arms: Arms Warrior Talent Build
      Arms Reforging: Strength > Hit Cap (8%) > Expertise (26) > Crit > Mastery > Haste

      Prot: Protection Warrior Talent Build
      Prot Reforging: Stamina = Mastery > Parry > Dodge > Expertise > Hit Cap (8%) > Strength > Crit
      * Note: Newly 85 or lower end geared tanks should be gemming/chanting raw Stam > Mastery for better survival until they are able to obtain enough stamina via gear to not be easily 1-2 shotted *


      [​IMG]

      TO DO
      Improve Rend Logic in both Arms and Prot rotations.
      Add HealthStone usage at low health.
      Add automatic stance swap on spec change.
      Improve Protection AOE Rotation (make it rend then Thunder Clap quicker).

      Add better Interrupt logic (database of spells to ONLY try to interrupt).
      Add check and support for 2p & 4p T13 set bonuses.
      Possibly add basic GUI for more options.



      [​IMG]

      Raid Information (Protection)

      Tank Swaps:
      This space will contain information about when you are expected as a tank to taunt on "tank swap" fights throughout various raids.

      Cooldowns:
      This space will contain information about when you are expected to use your cooldowns within DragonSoul.

      Interrupts:
      The "InterrupterUltimate.efaultDatabase.cs" found in the attachments below is to be used with the plugin Ultimate Interrupter. Download and install the plugin from the link provided, then download the attached file on this post and replace the default file of the plugin with my version (the attached file on this post).

      This DB covers ALL Cata dungeons and heroics as well as 10 & 25 versions of raids in their normal or heroic modes, and is still viable in PVP as well!

      *Note: Install the plugin in your HB > Plugins folder, then use the attached file on this post to over ride the default file in the plugin!*


      [​IMG]

      ~ If you find this CC useful please /like this post and be sure to +rep Shaddar for his great Titan Arms work ~
       

      Attached Files:

      Last edited: Jan 26, 2012
      snoweey likes this.
    2. Shaddar

      Shaddar Active Member

      Joined:
      Mar 23, 2011
      Messages:
      719
      Likes Received:
      56
      Trophy Points:
      28
      First!
      Good luck on your CC Stree :)
       
    3. Ama

      Ama New Member

      Joined:
      Jun 6, 2011
      Messages:
      1,171
      Likes Received:
      33
      Trophy Points:
      0
      Yeah good luck man.

      Prot CC will probably be a challenge, but its fun when you get stuff to work.
       
    4. Stree

      Stree New Member

      Joined:
      Jun 9, 2011
      Messages:
      276
      Likes Received:
      2
      Trophy Points:
      0
      Open the CC with Visual Studio or Notepad++ and do the following​

      How to use Automatic Charge / Heroic Leap

      Find:
      Code:
          /////////////////////////////////////////////Out of Range rotation here//////////////////////////////////////////////////////////////////////////////////////
      
      	//			    if (Me.CurrentTarget.Distance >=12d && Me.CurrentTarget.Distance <=30d)
      	//				    if (CastSpell("Charge") == true)
          //                        Logging.Write(Color.Crimson, ">> Charge <<");
      
      	//			    if (Me.CurrentTarget.Distance >=12d && Me.CurrentTarget.Distance <=40d && SpellManager.Spells["Charge"].CooldownTimeLeft.TotalSeconds < 10 && SpellManager.Spells["Charge"].CooldownTimeLeft.TotalSeconds > 1)
      	//				    Lua.DoString("CastSpellByName('Heroic Leap');");
      	//						    LegacySpellManager.ClickRemoteLocation(StyxWoW.Me.CurrentTarget.Location); //Took freakin ages to get this code right
      
          //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
      
      Replace With
      Code:
          /////////////////////////////////////////////Out of Range rotation here//////////////////////////////////////////////////////////////////////////////////////
      
      				    if (Me.CurrentTarget.Distance >=12d && Me.CurrentTarget.Distance <=30d)
      					    if (CastSpell("Charge") == true)
                                  Logging.Write(Color.Crimson, ">> Charge <<");
      
      				    if (Me.CurrentTarget.Distance >=12d && Me.CurrentTarget.Distance <=40d && SpellManager.Spells["Charge"].CooldownTimeLeft.TotalSeconds < 10 && SpellManager.Spells["Charge"].CooldownTimeLeft.TotalSeconds > 1)
      					    Lua.DoString("CastSpellByName('Heroic Leap');");
      							    LegacySpellManager.ClickRemoteLocation(StyxWoW.Me.CurrentTarget.Location); //Took freakin ages to get this code right
      
          //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
      
      Note: This code can be found twice within the CC (once in Prot section and once in Arms section). To use Charge/Heroic Leap in both specs you will need to make the change to both.


      [​IMG]

      How to Add / Remove Trinket usage

      Find: (for Protection)
      Code:
      //				    if (Me.HealthPercent <= 40)
      //					    Lua.DoString("RunMacroText('/use 13');");
      
                          if (Me.HealthPercent <= 40)
                              Lua.DoString("RunMacroText('/use 14');");
      
      OR (for Arms)
      Code:
      if (IsTargetBoss() && Me.ActiveAuras.ContainsKey("Bloodlust") == true || Me.ActiveAuras.ContainsKey("Time Warp") == true || Me.ActiveAuras.ContainsKey("Recklessness") == true)
      					    Lua.DoString("RunMacroText('/use 13');");
      
                          if (IsTargetBoss() && Me.ActiveAuras.ContainsKey("Bloodlust") == true || Me.ActiveAuras.ContainsKey("Time Warp") == true || Me.ActiveAuras.ContainsKey("Recklessness") == true)
      					    Lua.DoString("RunMacroText('/use 14');");
      
                          if (IsTargetBoss() && Me.ActiveAuras.ContainsKey("Bloodlust") == true || Me.ActiveAuras.ContainsKey("Time Warp") == true || Me.ActiveAuras.ContainsKey("Recklessness") == true)
      					    Lua.DoString("RunMacroText('/use 10');");
      
      Add or remove // as needed depending on your trinkets having a /use effect or not and their current equipped position.

      Add or Remove Cooldowns for Protection

      Find:
      Code:
                          //if (Me.HealthPercent <= 30 && IsTargetBoss())
                          //    if (CastSpell("Shield Wall") == true)
                          //        Logging.Write(color.Pink, ">> Shield Wall - Low HP <<");
      
                          //if (Me.HealthPercent <= 30 && IsTargetBoss() && CastSpell("Shield Wall") == false)
                          //    if (CastSpell("Enraged Regeneration") == true)
                          //        Logging.Write(color.Pink, ">> Enraged Regeneration - Low HP <<");
      
                          //if (Me.HealthPercent <= 20 && IsTargetBoss() && CastSpell("Shield Wall") == false)
                          //    if (CastSpell("Rallying Cry") == true)
                          //        Logging.Write(color.Pink, ">> Rallying Cry - Low HP <<");
      
      Replace With:
      Code:
                          if (Me.HealthPercent <= 30 && IsTargetBoss())
                              if (CastSpell("Shield Wall") == true)
                                  Logging.Write(color.Pink, ">> Shield Wall - Low HP <<");
      
                          if (Me.HealthPercent <= 30 && IsTargetBoss() && CastSpell("Shield Wall") == false)
                              if (CastSpell("Enraged Regeneration") == true)
                                  Logging.Write(color.Pink, ">> Enraged Regeneration - Low HP <<");
      
                          if (Me.HealthPercent <= 20 && IsTargetBoss() && CastSpell("Shield Wall") == false)
                              if (CastSpell("Rallying Cry") == true)
                                  Logging.Write(color.Pink, ">> Rallying Cry - Low HP <<");
      
       
      Last edited: Jan 11, 2012
    5. Stree

      Stree New Member

      Joined:
      Jun 9, 2011
      Messages:
      276
      Likes Received:
      2
      Trophy Points:
      0
      From the testing I have done in prot so far, everything is working fairly well, just have some small tweaking to do, but thus far I have tanked all the new 5mans and 7/7 firelands as well as 8/8 DS10 with this CC I am about to release, thanks to Shaddar!.

      The biggest thing I want to improve on is the AOE tanking section of it right now, as sometimes Thunder Clap and Shockwave are a bit slow to get off.
       
    6. Ama

      Ama New Member

      Joined:
      Jun 6, 2011
      Messages:
      1,171
      Likes Received:
      33
      Trophy Points:
      0
      Wow nice work. Ill def try this out after school.

      I haven't looked, but one cool idea would probably be to make a list of times to taunt off the other tank. For example, in BH when the other tank is "Skewered".

      Can't wait to try this out
       
    7. Stree

      Stree New Member

      Joined:
      Jun 9, 2011
      Messages:
      276
      Likes Received:
      2
      Trophy Points:
      0
      I like that Idea and will step it up one as well with when good times to use tanking CD's are as well for DS
       
    8. wownerds

      wownerds New Member

      Joined:
      Feb 15, 2011
      Messages:
      1,385
      Likes Received:
      30
      Trophy Points:
      0
      Am I missing the attachment or svn link?
       
    9. Stree

      Stree New Member

      Joined:
      Jun 9, 2011
      Messages:
      276
      Likes Received:
      2
      Trophy Points:
      0
      When working on the post I accidently clicked the "submit post" instead of "Preview Post"

      Will have it up shortly.
       
    10. nomnomnom

      nomnomnom Well-Known Member

      Joined:
      Feb 18, 2011
      Messages:
      1,506
      Likes Received:
      73
      Trophy Points:
      48
      Stree, do you have the same approach as Shaddar had? Like accepting the community to make code suggestions? And you got Shaddars permission to use his base?
       
    11. Stree

      Stree New Member

      Joined:
      Jun 9, 2011
      Messages:
      276
      Likes Received:
      2
      Trophy Points:
      0
      I do! Anyone who has any suggestions or additions to make to the CC that will make it work better, faster or stronger are encouraged to do so, so long as they are shared with the rest of us to use as well.

      Shaddar sadly has discontinued all of his CC's and has given me permission to do as I wish with the Titan Arms base. I hope to someday soon see Shaddar re-activate his work on ALL of his CC's so that we continue to have great updates and competitive CCs for all classes as well as so I could possibly release this as a side addition within his great CC.

      This is my first go at doing CC's and I have decided to start with Protection Warrior as it is the class I have the most experience playing by hand in raids (since mid BC) and have downed the most end-game content with by hand as well.

      The CC is in no way perfect right now, I do however feel it executes the transitions between Single and AOE rotations faster than any other CC I have tried, and manages spec changes with ease.

      Off-Topic Update:
      Have been up all night, time to take a nap for a bit. I am looking forward to seeing everyone's test results and feedback from such tests.
       
      Last edited: Jan 9, 2012
    12. Stree

      Stree New Member

      Joined:
      Jun 9, 2011
      Messages:
      276
      Likes Received:
      2
      Trophy Points:
      0
      Never mind, The code somehow keeps the rotation from executing unless you back off 10+ yards (then its too far to actually use anything). Reverting back to previous detection code and re uploading.
       
      Last edited: Jan 9, 2012
    13. nomnomnom

      nomnomnom Well-Known Member

      Joined:
      Feb 18, 2011
      Messages:
      1,506
      Likes Received:
      73
      Trophy Points:
      48
      Hey Stree, is the AoE/add detection working in yours? It isnt in 2.0 of Titan Arms.
       
    14. Shaddar

      Shaddar Active Member

      Joined:
      Mar 23, 2011
      Messages:
      719
      Likes Received:
      56
      Trophy Points:
      28
      I'm not sure if you know yet Stree, although it seems like im in the Shadows i still try to resolve the debuff issue with Rend and will post you a working code when/if I have it. For now I think i should let you know that
      Code:
      
      Me.CurrentTarget.HasAura("Rend")
      Me.CurrentTarget.ActiveAuras("Rend")
      (!Me.CurrentTarget.HasAura("Rend") || Me.CurrentTarget.ActiveAuras["Rend"].CreatorGuid != Me.Guid)
      
      Doesnt work properly when theres other warriors in a group/raid.


      Code:
      (!Me.CurrentTarget.HasAura("Rend") || Me.CurrentTarget.ActiveAuras["Rend"].CreatorGuid != Me.Guid)
      
      Only works properly if you are the first warrior to apply rend, whilst the other codes only work when going as a single warrior, else it will just spam Rend :(
      And that might lead to the issue you're having with Thunderclap.

      I also suggest you to take advantage of the
      Code:
       Lua.DoString("RunMacroText('  ');");
      
      This is by far the most underrated code ever oO and possibly a solution to the Stance Dancing! :)
      PS: /use 10 = engineering gloves.



      I might open Titan Arms again though.
      And IF i do, it will be a non bugged version, which has been tested for a week with several different warrior characters. So its a big IF.

      I really hope you succeed with this CC and i wish you all the best. From the looks of it, it looks really promising! :)

      PS: Check out Bowman and Pyromancer for additional codes if you are having problems, the solution might be in one of those CC's.

      - Shaddar.
       
    15. nomnomnom

      nomnomnom Well-Known Member

      Joined:
      Feb 18, 2011
      Messages:
      1,506
      Likes Received:
      73
      Trophy Points:
      48
      My first and probaly not my last contribution .. even though its small, it'll help ;)

      Change this:
      Code:
              #region Initialize
              public override void Initialize()
              {
                  Logging.Write(Color.White, "_______________________________________________");
                  Logging.Write(Color.Crimson, "----- Titan Shield BETA v1.0 CC by Stree -----");
                  Logging.Write(Color.Yellow, "---- 99.9% of the credit goes to Shaddar ----");
                  Logging.Write(Color.Crimson, "------ +rep Shaddar if you like this CC! ----");
                  Logging.Write(Color.White, "_______________________________________________");
              }
              #endregion
      
      To this:
      Code:
              #region Initialize
              public override void Initialize()
              {
                  Logging.Write(Color.White, "_______________________________________________");
                  Logging.Write(Color.Crimson, "-----" + Name + "CC by Stree -----");
                  Logging.Write(Color.Yellow, "---- 99.9% of the credit goes to Shaddar ----");
                  Logging.Write(Color.Crimson, "------ +rep Shaddar if you like this CC! ----");
                  Logging.Write(Color.White, "_______________________________________________");
              }
              #endregion
      
      Its not much, but saves you editing the name/version once ;).
       
    16. Shaddar

      Shaddar Active Member

      Joined:
      Mar 23, 2011
      Messages:
      719
      Likes Received:
      56
      Trophy Points:
      28
      Ive solved the Rend issue. And no im not joking now, and yes ive tested it in raid finder.
      Ill smooth things out with Titan Arms and reopen. Sorry for all the back and forth.

      Ill the code is in your inbox Stree.
       
    17. Stree

      Stree New Member

      Joined:
      Jun 9, 2011
      Messages:
      276
      Likes Received:
      2
      Trophy Points:
      0
      Last I tested, yes.
      I went back to the Titan Arms 1.3 format for AOE on the Arms rotation and the Prot AOE seems to be detecting and working as well.
       
    18. Stree

      Stree New Member

      Joined:
      Jun 9, 2011
      Messages:
      276
      Likes Received:
      2
      Trophy Points:
      0
      Pleased to announce Titan Shield V1.1 BETA Update thanks to Shaddar.

      Changelog:
      Code:
      - Rend & CS Logic now working as intended [I]*Thanks to Shaddar*[/I]
      - While in Arms, trinkets, racial, and engineering glove enchant will be used only if Target HP >= 900000, Bloodlust/Time Warp, or Deadly Calm is currently active.
      - Updated Arms to reflect Titan Arms 2.1 Release updates.
      - While in Protection: When HP % is equal to or lower than 40%, it will pop trinket 2 (if you have a dodge/armor/+max hp or other survival based use effects).
      - While in Protection: When HP % is equal to or lower than 20%, it will pop Shield Block, Enraged Regeneration, & use Healthstone.
      - Updated Add Detection to reflect the changes in Titan Arms 2.1 Release.
      
      *Also Thanks nomnomnom for the initialization update*
       
      Last edited: Jan 9, 2012
    19. Stree

      Stree New Member

      Joined:
      Jun 9, 2011
      Messages:
      276
      Likes Received:
      2
      Trophy Points:
      0
      Small Update Titan Shield 1.1.02 BETA.

      Change Log:
      Code:
      - Added automatic stance cast macro based on current spec. Will fire once in combat if you are not already in the proper stance for your active spec.
       

      Attached Files:

    20. Stree

      Stree New Member

      Joined:
      Jun 9, 2011
      Messages:
      276
      Likes Received:
      2
      Trophy Points:
      0
      Currently testing Stance Dance functions for Arms spec. IF working smoothly, update will be released shortly after!

      Update: No luck as of yet.
       
      Last edited: Jan 9, 2012

    Share This Page