• Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Singular - A community driven All-In-One CC - It Just Plain Works - (Pt. 2)

    Discussion in 'Archives' started by Xanathos, Apr 19, 2011.

    1. tumbum

      tumbum Active Member

      Joined:
      Mar 17, 2011
      Messages:
      3,341
      Likes Received:
      13
      Trophy Points:
      38
      Possible to add a detection for mage not to fall down of any clip or bridge or anything? mage uses frost nova and move back, if there is nothing the toon will fall down and die. dont know if its possible.
      and if use iceblock maybe do a blick afterward, and not stay there to get slayed.
       
    2. zeldrak

      zeldrak Well-Known Member

      Joined:
      Oct 25, 2010
      Messages:
      3,516
      Likes Received:
      25
      Trophy Points:
      48
      Just some observations since the last update

      I don't know what was changed, exactly, but I've noticed that Singular isn't performing as well as it used to. What I mean by this is that it gets stuck, now, facing and moving towards mobs. I've been using Singular religiously because it was working far better than any of the other CCs, but now it seems that it's found itself a hiccup or two. This is more of an observation than anything else, so I'm not going to be posting a log. Another reason for no long is because I just deleted over 200 logs and I'm using Fpsware's DK CC to do my farming now. Once I'm done with farming I'll run it again using Singular and post the log. But, aside from not moving to mobs that are attacking my toon, I find that it doesn't go through its combat routine. It will auto attack, and sometimes raise dead, and fight until the mob is dead. This has only happened since the last one or two updates.
       
    3. fructiv

      fructiv New Member

      Joined:
      Jan 15, 2010
      Messages:
      23
      Likes Received:
      1
      Trophy Points:
      0
      the unholy death knight cc keeps spamming icy touch whenever it can. huge dps loss. is this a known problem?
      i love the blood tanking part, it?s just perfect!
       
    4. imdasandman

      imdasandman Active Member

      Joined:
      Feb 2, 2011
      Messages:
      1,207
      Likes Received:
      6
      Trophy Points:
      38
      have you updated via svn or were you using the old school singular because singularv1 is now gone like the wind and it now uses v2 as default.

      But all my farmers are DW frost DK's and I never had any issues with Singular even now at 5588
       
    5. zeldrak

      zeldrak Well-Known Member

      Joined:
      Oct 25, 2010
      Messages:
      3,516
      Likes Received:
      25
      Trophy Points:
      48
      Sorry about that. I should have mentioned that I'm using the most recent SVN build available since I update in the morning, during lunch, and before I go to bed. I love the SVN idea these guys had. It makes things so much easier to do. I do update all my SVN items no less than three times a day because I know they're always being worked on and improved.

      But, to answer your question, I am on the most current and up-to-date build of Singular available to the public.
       
    6. laria

      laria Well-Known Member

      Joined:
      Jan 15, 2010
      Messages:
      5,386
      Likes Received:
      36
      Trophy Points:
      48
      Although i see

      inside Paladin/Common.cs , my pally never puts the seal up during fight.
      Any idea why?
       
    7. borkat

      borkat New Member

      Joined:
      Jan 15, 2010
      Messages:
      30
      Likes Received:
      0
      Trophy Points:
      0
      I cannot find the HB version to download to go back to the last working version of this.
      Can any1 help with a link?
       
    8. benkoren

      benkoren New Member

      Joined:
      Jan 18, 2011
      Messages:
      356
      Likes Received:
      28
      Trophy Points:
      0
      This isn't just Blood DKs being overpowered (though at heroic raiding levels on single-targets they really are), I coded the Blood DK to be exceptionally well at timing death strikes to spread dmg intake over the long run and cycling all cooldowns. Take a look at the code and comments in the latest rev of Blood.cs, it's good stuff.

      - Ben
       
    9. laria

      laria Well-Known Member

      Joined:
      Jan 15, 2010
      Messages:
      5,386
      Likes Received:
      36
      Trophy Points:
      48
      Try deleting the content of the CustomClasses\Singular Folder and then either re-extract it from the HB.zip you can download or fetch the most recent version from Revision 519: /trunk/Singular
      People that just extract and overwrite Stuff on Release have slight issues with the christmas releases ;)
       
    10. Obliv

      Obliv New Member

      Joined:
      Oct 18, 2011
      Messages:
      636
      Likes Received:
      6
      Trophy Points:
      0
      View attachment BeastMaster.cs

      I need logic on Rapid Fire to not use it if I have Bloodlust, Heroism, Time Warp, or Ancient Hysteria and I think it'll be finished. Still playing with some of the values, but otherwise it's working fine. Really need to make a way to disable Disengage so this is viable with the new LFR, but keep it for leveling. Trying to figure out good logic there that would allow both.

      **Found some new issues. Apparently sometimes it doesn't want to put Serpent Sting or cast Cobra Shot on a boss. Still working on that.

      If any devs can PM me I'd love to implement some new features and get some advice. First time working on a CC, with basically no C++ knowledge.
       
      Last edited: Dec 29, 2011
    11. Paul.88

      Paul.88 New Member

      Joined:
      Nov 15, 2011
      Messages:
      21
      Likes Received:
      0
      Trophy Points:
      1
      IM having an issue with Stances here is the log file thing "8:39:29 PM:827] [Singular] Casting Battle Stance on Myself
      [8:39:29 PM:835] Spell_C::CastSpell(2457, 0, 0x3000000065BD3F0, 0) [1]
      [8:39:30 PM:051] Spell_C::CastSpell(2457, 0, 0x3000000065BD3F0, 0) [2]
      [8:39:30 PM:152] [Singular-DEBUG] Successfully cast Battle Stance"...... It will always go to battle stance ive changed thr CC so it wont auto do that but it dose anyway
       
    12. derhelge

      derhelge New Member

      Joined:
      Dec 4, 2011
      Messages:
      23
      Likes Received:
      0
      Trophy Points:
      0
      Hi,

      i have a Question. Is it Possible that my Durid always fight in Bear Form? I use Kicks Quest Profiles and i think hey is so much faster in Bear Form? I can switch him Manually to Bear Form but when he Fly to the next Quest and start Fight he uses the Cat Form.
       
    13. handnavi

      handnavi Well-Known Member Buddy Store Developer

      Joined:
      Jan 15, 2010
      Messages:
      2,489
      Likes Received:
      59
      Trophy Points:
      48
      Hello everyone!

      I decided to share my up to date version of my FeralCat.cc with you.

      My rotation is based on Mew (mew-wow-druid-model - World of Warcraft Feral Druid Model - Google Project Hosting), because
      this seems to be the best and detailled priority list for cats at the moment.

      I did the following 3 Changes to the original CC:

      1.) Add a variable when to start "Finishing Rotation"
      Code:
       private const int FINISHER_HEALTH = 100000;
      2.) Add a simple check for 4x T13 Bonus
      Code:
              private static bool HasTeir13Bonus2
              {
                  get
                  {
                      return NumTier13Pieces >= 4;
                  }
              }
      3.) Rewrite of the spell priority list
      Code:
      Movement.CreateMoveBehindTargetBehavior(),
      
      
                      /*Bases on Mew!*/
      
             
                      /*Tiger's Fury!*/
      
                      // #1
                      Spell.BuffSelf("Tiger's Fury", ret => StyxWoW.Me.CurrentEnergy <= 26 &&
                          !SpellManager.GlobalCooldown &&
                          StyxWoW.Me.CurrentTarget.Level < 85),
                      // #2
                      Spell.BuffSelf("Tiger's Fury", ret => StyxWoW.Me.CurrentEnergy <= 35 &&
                          !StyxWoW.Me.ActiveAuras.ContainsKey("Clearcasting") &&
                          !SpellManager.GlobalCooldown &&
                          StyxWoW.Me.CurrentTarget.Level >= 85),
                      // #3
                      Spell.BuffSelf("Tiger's Fury", ret => StyxWoW.Me.CurrentEnergy <= 45 &&
                          HasTeir13Bonus2 && !StyxWoW.Me.ActiveAuras.ContainsKey("Clearcasting") &&
                          !SpellManager.GlobalCooldown),
                      
                      /*Berserk!*/
      
                      //#4
                      Spell.BuffSelf("Berserk", ret => StyxWoW.Me.ActiveAuras.ContainsKey("Tiger's Fury") && !SpellManager.GlobalCooldown),
                      
                      //#5 (Depends on DPS!)
                      Spell.BuffSelf("Berserk", ret => !SpellManager.GlobalCooldown && StyxWoW.Me.CurrentTarget.CurrentHealth/FINISHER_HEALTH < 25 && Spell.GetSpellCooldown("Tiger's Fury").Seconds > 6),
      
                      //AoE
                      Spell.Cast("Swipe", ret => Clusters.GetClusterCount(StyxWoW.Me, Unit.NearbyUnfriendlyUnits, ClusterType.Cone, 7f) >=
                             SingularSettings.Instance.Druid.SwipeCount),
      
                      /*Debuffs!*/
      
                      //#6
                      Spell.Cast("Faerie Fire (Feral)", ret => StyxWoW.Me.CurrentTarget.IsBoss() && (!StyxWoW.Me.CurrentTarget.HasSunders() || StyxWoW.Me.CurrentTarget.GetAuraTimeLeft("Faerie Fire", true).Seconds <= 1)),
      
                      //#7
                      Spell.Cast("Mangle (Cat)", ret => !StyxWoW.Me.CurrentTarget.HasBleedDebuff() || StyxWoW.Me.CurrentTarget.GetAuraTimeLeft("Mangle",true).Seconds <= 2),
      
                      /*Ravage!*/
      
                      //#8
                      Spell.Cast("Ravage!", ret => StyxWoW.Me.ActiveAuras.ContainsKey("Stampede") && StyxWoW.Me.GetAuraTimeLeft("Stampede",true).Seconds <= 2.0),
      
                      /*Blood in the Water!*/
      
                      //#9
                      Spell.Cast("Ferocious Bite",
                          ret => StyxWoW.Me.ComboPoints > 0 &&
                                 StyxWoW.Me.CurrentTarget.HealthPercent <= (HasTeir13Bonus ? 60 : 25) &&
                                 StyxWoW.Me.CurrentTarget.GetAuraTimeLeft("Rip", true).Seconds <= 2.1 &&
                                 StyxWoW.Me.CurrentTarget.HasMyAura("Rip")),
      
                      //#10
                      Spell.Cast("Ferocious Bite",
                          ret => StyxWoW.Me.ComboPoints == 5 &&
                                 StyxWoW.Me.CurrentTarget.HealthPercent <= (HasTeir13Bonus ? 60 : 25) &&
                                 StyxWoW.Me.CurrentTarget.HasMyAura("Rip")),
      
                      /*Regular Rotation*/
      
                      //Missing Glyph of Bloodletting
      
                      //#11
                      Spell.Cast("Rip",
                          ret => StyxWoW.Me.ComboPoints == 5 && 
                              StyxWoW.Me.CurrentTarget.CurrentHealth / FINISHER_HEALTH >=6  &&
                              (!StyxWoW.Me.CurrentTarget.HasMyAura("Rip")||
                              (StyxWoW.Me.CurrentTarget.HasMyAura("Rip") && StyxWoW.Me.GetAuraTimeLeft("Rip",true).Seconds < 2.0))
                              &&(StyxWoW.Me.ActiveAuras.ContainsKey("Berserk") || 
                              StyxWoW.Me.CurrentTarget.GetAuraTimeLeft("Rip",true).Seconds + 2 <= Spell.GetSpellCooldown("Tiger's Fury").Seconds)),
      
                      //#12       
                      Spell.Cast("Ferocious Bite",
                      ret => StyxWoW.Me.ActiveAuras.ContainsKey("Berserk") && 
                      StyxWoW.Me.ComboPoints == 5 &&
                      StyxWoW.Me.CurrentEnergy >= 60 &&
                      StyxWoW.Me.CurrentTarget.GetAuraTimeLeft("Rip", true).Seconds > 5 &&
                      StyxWoW.Me.GetAuraTimeLeft("Savage Roar", true).Seconds >= 3),
      
                      //#13
                      Spell.Cast("Rake",
                      ret => StyxWoW.Me.CurrentTarget.CurrentHealth / FINISHER_HEALTH >= 8.5 &&
                      StyxWoW.Me.ActiveAuras.ContainsKey("Tiger's Fury") &&
                      StyxWoW.Me.CurrentTarget.HasMyAura("Rake") && 
                      StyxWoW.Me.CurrentTarget.GetAuraTimeLeft("Rake",true).Seconds < 9.0),
      
                      //#14
                      Spell.Cast("Rake",
                      ret => StyxWoW.Me.CurrentTarget.CurrentHealth / FINISHER_HEALTH >= 8.5 &&
                          (!StyxWoW.Me.CurrentTarget.HasMyAura("Rake") || 
                          (StyxWoW.Me.CurrentTarget.HasMyAura("Rake") && 
                          StyxWoW.Me.CurrentTarget.GetAuraTimeLeft("Rake",true).Seconds < 3.0)) &&
                          (StyxWoW.Me.ActiveAuras.ContainsKey("Berserk") || (StyxWoW.Me.CurrentTarget.HasMyAura("Rake") &&
                          StyxWoW.Me.CurrentTarget.GetAuraTimeLeft("Rake", true).Seconds - 0.8 <= Spell.GetSpellCooldown("Tiger's Fury").Seconds) ||
                          StyxWoW.Me.CurrentEnergy >= 71)),
      
                      //#15
                      Spell.Cast("Shred", ret => StyxWoW.Me.IsBehind(StyxWoW.Me.CurrentTarget) &&
                          StyxWoW.Me.ActiveAuras.ContainsKey("Clearcasting")),
      
                      Spell.Cast("Mangle (Cat)", ret => !StyxWoW.Me.IsBehind(StyxWoW.Me.CurrentTarget) &&
                          StyxWoW.Me.ActiveAuras.ContainsKey("Clearcasting")),
      
                      //#16
                      Spell.BuffSelf("Savage Roar",
                      ret => StyxWoW.Me.ComboPoints > 0 &&
                          (!StyxWoW.Me.ActiveAuras.ContainsKey("Savage Roar") ||
                          StyxWoW.Me.GetAuraTimeLeft("Savage Roar",true).Seconds <= 1)),
      
                      //#17
                      Spell.Cast("Ravage!", ret => StyxWoW.Me.ActiveAuras.ContainsKey("Stampede") &&
                          Spell.GetSpellCooldown("Tiger's Fury").Seconds == 0.0 &&
                          HasTeir13Bonus2),
      
      
                      //#18
                      Spell.Cast("Ferocious Bite",
                          ret => StyxWoW.Me.ComboPoints == 5 &&
                          StyxWoW.Me.CurrentTarget.CurrentHealth / FINISHER_HEALTH <= 7),
      
                      //#19
                      Spell.Cast("Ferocious Bite",
                          ret => (!StyxWoW.Me.ActiveAuras.ContainsKey("Berserk") ||
                          StyxWoW.Me.CurrentEnergy < 25) &&
                          StyxWoW.Me.ComboPoints == 5 &&
                          StyxWoW.Me.CurrentTarget.GetAuraTimeLeft("Rip", true).Seconds >= 8 &&
                          StyxWoW.Me.GetAuraTimeLeft("Savage Roar", true).Seconds >= 4 &&
                          StyxWoW.Me.CurrentTarget.Level < 85),
      
                      Spell.Cast("Ferocious Bite",
                          ret => (!StyxWoW.Me.ActiveAuras.ContainsKey("Berserk") ||
                          StyxWoW.Me.CurrentEnergy < 25) &&
                          StyxWoW.Me.ComboPoints == 5 &&
                          StyxWoW.Me.CurrentTarget.GetAuraTimeLeft("Rip",true).Seconds >= 14 &&
                          StyxWoW.Me.GetAuraTimeLeft("Savage Roar", true).Seconds >= 10 && 
                          StyxWoW.Me.CurrentTarget.Level >= 85),
      
                      //#20 
                      Spell.Cast("Ravage!", ret => StyxWoW.Me.ActiveAuras.ContainsKey("Stampede") &&
                          HasTeir13Bonus2 &&
                          !StyxWoW.Me.ActiveAuras.ContainsKey("Clearcasting") &&
                          StyxWoW.Me.CurrentEnergy <= (100 - 20)), //20 == energyPerSec ! Has to be fixed
      
                      //#21
                      Spell.Cast("Ravage!", ret => StyxWoW.Me.ActiveAuras.ContainsKey("Stampede") &&
                          !StyxWoW.Me.ActiveAuras.ContainsKey("Clearcasting") &&
                          StyxWoW.Me.ActiveAuras.ContainsKey("Tiger's Fury") &&
                          StyxWoW.Me.CurrentEnergy <= (100 - 20)), //20 == energyPerSec ! Has to be fixed
      
                      //Ignore 4x T11 Bonus
                      //#22
                      Spell.Cast("Shred", ret => StyxWoW.Me.IsBehind(StyxWoW.Me.CurrentTarget) &&
                          (StyxWoW.Me.ActiveAuras.ContainsKey("Tiger's Fury") ||
                          StyxWoW.Me.ActiveAuras.ContainsKey("Berserk"))),
      
                      Spell.Cast("Mangle (Cat)", ret => !StyxWoW.Me.IsBehind(StyxWoW.Me.CurrentTarget) &&
                           (StyxWoW.Me.ActiveAuras.ContainsKey("Tiger's Fury") ||
                          StyxWoW.Me.ActiveAuras.ContainsKey("Berserk"))),
      
                      //#23
                      Spell.Cast("Shred", ret => StyxWoW.Me.IsBehind(StyxWoW.Me.CurrentTarget) &&
                          (StyxWoW.Me.ComboPoints < 5 && StyxWoW.Me.CurrentTarget.GetAuraTimeLeft("Rip",true).Seconds <=3)
                          || (StyxWoW.Me.ComboPoints == 0 && StyxWoW.Me.GetAuraTimeLeft("Savage Roar",true).Seconds <=2)),
      
                      Spell.Cast("Mangle (Cat)", ret => !StyxWoW.Me.IsBehind(StyxWoW.Me.CurrentTarget) &&
                           (StyxWoW.Me.ComboPoints < 5 && StyxWoW.Me.CurrentTarget.GetAuraTimeLeft("Rip", true).Seconds <= 3)
                          || (StyxWoW.Me.ComboPoints == 0 && StyxWoW.Me.GetAuraTimeLeft("Savage Roar", true).Seconds <= 2)),
                      
      
                      //#24
                      Spell.Cast("Shred", ret => StyxWoW.Me.IsBehind(StyxWoW.Me.CurrentTarget) &&
                          Spell.GetSpellCooldown("Tiger's Fury").Seconds <= 3),
      
                      Spell.Cast("Mangle (Cat)", ret => !StyxWoW.Me.IsBehind(StyxWoW.Me.CurrentTarget) &&
                           Spell.GetSpellCooldown("Tiger's Fury").Seconds <= 3),
                      
                      //#25
                      Spell.Cast("Shred", ret => StyxWoW.Me.IsBehind(StyxWoW.Me.CurrentTarget) &&
                          StyxWoW.Me.CurrentTarget.CurrentHealth / FINISHER_HEALTH <= 8.5),
      
                      Spell.Cast("Mangle (Cat)", ret => !StyxWoW.Me.IsBehind(StyxWoW.Me.CurrentTarget) &&
                          StyxWoW.Me.CurrentTarget.CurrentHealth / FINISHER_HEALTH <= 8.5),
                      
                      //#26
                      Spell.Cast("Shred", ret => StyxWoW.Me.IsBehind(StyxWoW.Me.CurrentTarget) &&
                          StyxWoW.Me.CurrentEnergy >= (100 - 20)), //20 == energyPerSec ! Has to be fixed
      
                      Spell.Cast("Mangle (Cat)", ret => !StyxWoW.Me.IsBehind(StyxWoW.Me.CurrentTarget) &&
                           StyxWoW.Me.CurrentEnergy >= (100 - 20)), //20 == energyPerSec ! Has to be fixed
      
                      Movement.CreateMoveToMeleeBehavior(true)
      Maybe this should be added to svn?
       
      Last edited: Dec 30, 2011
    14. Obliv

      Obliv New Member

      Joined:
      Oct 18, 2011
      Messages:
      636
      Likes Received:
      6
      Trophy Points:
      0
      Handnavi, I hope you're back for good. I love your CC!

      In other news, any devs I can get ahold of about the BM updates I'm making? Not sure who to contact. Singular needs it's own subforum, and each class should have a separate topic. Would make communication between devs and regular joes much more efficient.

      ** EDIT
      Updating Holy Paladin as well. Just did LFR and was 2nd in healing to a damn resto shaman. Still trying to find a few things out if we have any Singular devs around.
       
      Last edited: Dec 31, 2011
    15. handnavi

      handnavi Well-Known Member Buddy Store Developer

      Joined:
      Jan 15, 2010
      Messages:
      2,489
      Likes Received:
      59
      Trophy Points:
      48
      Thanks for your kind words Obliv! :)

      If someone wants to try my stuff...:
       

      Attached Files:

    16. Obliv

      Obliv New Member

      Joined:
      Oct 18, 2011
      Messages:
      636
      Likes Received:
      6
      Trophy Points:
      0
      Here's my current Holy Paladin changes. Lots of things still WIP, but I don't know how to do most of it.

      Current issues:
      1) We need to Judge the tank's target only in combat if we don't have "Judgement of the Pure". I don't know how to code the targeting to make that happen.
      2) We need to Cleanse. Changing priority would be nice, but I don't know how to do that so just figuring out how to Cleanse would be enough for now. I can make it a good enough priority where it won't be an issue.
      3) I need to figure out a better solution for our Buffs Aura Mastery, Avenging Wrath, and Divine Favor. Currently I just keep them rolling, and they don't go off til we're at 85% health. This will be changing as I get more input. I have some ideas on logic, but with the raid lockouts until Tuesday I'm going to wait for more feedback before modifying.
      4) There are some defaults that can not be changed without modifying the CC. I'd like to find better default settings so the average user doesn't have to bother with it. I have HL at 85, DL at 60, FL at 35, and I believe the rest defaults. I forget what the defaults are now, though. In the end I'll probably only make settings for things that should be changed.
      5) Holy Shock is not casting unless close to tank. I can't figure this issue out, and have a feeling it's related to something with Singular. Be within 20 yards (enemy range for Holy Shock) and you'll do fine. Doesn't seem like Singular is distinguishing the difference between Holy Shock friendly and enemy distances. Most LFR and heroics you can practically stack on the tank anyways.

      I have currently healed LFR and the new 5 mans without any problems. I have movement and targeting completely disabled, and use LazyRaider is my bot. Test it out and let me know how it does for you. Please include gear levels when posting so I can compare. Include specifics if something goes wrong, or it could be doing something better.
       

      Attached Files:

      • Holy.cs
        File size:
        11.4 KB
        Views:
        33
    17. Ruinit

      Ruinit Member

      Joined:
      Nov 1, 2010
      Messages:
      992
      Likes Received:
      4
      Trophy Points:
      18
      What happened does feral.cs replace the beartank on svn? When I updated beard was deleted and now there is just feral?
       
    18. kbrebel04

      kbrebel04 New Member

      Joined:
      Dec 15, 2011
      Messages:
      294
      Likes Received:
      3
      Trophy Points:
      0
      ---ISSUES---

      Class: Shaman
      Spec: Enhancement
      Bot: LazyRaider
      Encounter: Ultraxion, Blackhorns Ship, Spine of Deathwing, Madness of Deathwing
      What it is supposed to do: Used ranged spells(5xMalestrom Lightning Bolt, Shocks, Unleash Elements) mixed in with the melee rotation
      What it isnt doing: It is not casting any of the above spells at all for the listed encounters.
      Remarks: Im guessing this has to do with the DISTANCE or RANGE that is set for MELEE or CASTING when assiciated with the fights in question that cause it to think it is outside of casting range when it is not. Is there any way i can manually fix this inside a .cs file so that it will cast spells like it should? Currently the CC is broken for these encounters. :(

      Log: View attachment 1-3-2012_12_16 AM 5640 Log.zip
       
      Last edited: Jan 3, 2012
    19. tazmo

      tazmo New Member

      Joined:
      Dec 15, 2011
      Messages:
      63
      Likes Received:
      0
      Trophy Points:
      0
      Last edited: Jan 3, 2012
    20. Aibo

      Aibo New Member

      Joined:
      Apr 27, 2010
      Messages:
      117
      Likes Received:
      0
      Trophy Points:
      0
      Retributions Paladin don't uses any CD :( So in raid rather useless becouse lack of DD.
       

    Share This Page