What's new
  • Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Visit Resources
  • Visit Downloads
  • Visit Portal

CLU (Codified Likeness Utility)

Status
Not open for further replies.
Change Log
-------------

* 24/6/2012 [2.6.8]
Discipline Priest Archangel/Atonement healing added! (Tested in LFR's and party heroics.)
  • Archangel activated only during heavy damage phases or if Evangelism stacks are about to expire. (Use it or lose it.BUT still needs tweaking)
  • Holy Fire/Smite to build stacks of Evangelism to 5 or if its about to expire. (searchs for tanks target first then Random party members target that has enemy units nearby.[Checks for controlled units as well.])
  • Holy Fire/Smite will check if the current player targeted (single target) has enemy units within 15yrds of there location and smite there target, if not will heal them using Greater Heal/Heal. [Checks for controlled units as well.]
  • IsAtonementSpec check will detect if you are a normal disc priest or an AA priest all in the same rotation without having to stop the bot.
  • Prayer of Healing with inner focus
  • Greater heal with inner focus
  • Power Word: Barrier on players
  • Desperate Prayer detection and use.

In order to use AA rotation you must be speced into Atonement and have Glyph of Divine Accuracy and Glyph of Smite.


Minor Fixs/Improvements
  • Cooldowns when raid/party is taking alot of damage.
  • Dispel logic vastly improved.
  • Re-targeting if no target fixed
  • Never Dismount option added. (not fully tested.)
  • Shadowfiend management improved. (Shadowfiend with Hymn of Hope for heal rotations)
  • Lightwell placement improved.
  • Inner Will for heal rotations when low on mana and moving (for cheap shields and renews)


All healing classes/rotation should be very usable, please...test and report back with any requests/problems. I will be tweaking all healing rotations as I go along.

Thank you <3
 
Resto druid not doing anything at all in LFR.. 1 rejuve in 5 mins it seemed like

[CLU TARGETING] 2.6.7: Targeting RAID MEMBER Priestiality: Max 146429, Current 110537, Defecit 35892
[CLU SUCCEED] 2.6.7: Sh?gr?th Distance: 6, Rejuvenation, MaxHealth: 215415, CurrentHealth: 209780, Deficit: 5635, HealthPercent: 97.4
[CLU SUCCEED] 2.6.7: Sh?gr?th Distance: 6, Wild Growth, MaxHealth: 215415, CurrentHealth: 215415, Deficit: 0, HealthPercent: 100

CLU targeted that priest, the rejuve and wild growth I did by hand, thats all it did..

I had seen this when testing Disc priest but I assumed I had hit my key-bind for pause rotation, or lazyraiders pause rotation key. I have done many LFR's and heroics and not seen it since <shrug>
 
Just found this CC compilation and testing it now. Seems fantastic. Afew things though, I apologise if this is easily done and i've not seen it. Looking through 94 pages is abit much to be honest.

This is what i've found happens on my Holy Paladin (list will be updated as i find it)
-Dismounts to heal (even with movement disabled, would like this toggle-able)

Suggestions
- Do a check within 10 yards, If any attack mob is near, Use Hammer of Justice (not seen it use it)
- Auto-Attack nearest mob if within melee range (For Seal of Insight)
- Crusader Aura when Mounted

Again, I apologise if this is already their i just dont see any Paladin settings on the GUI.

Rest behaviour (which is what CLU is using to heal outside of combat) always had a never dismount applied so that left Combat behaviour/Pull behaviour which I have now added a toggle setting in the GUI for you :)

I will see what I can do for AutoAttack, Crusader. Hammer of Justice should be easy now I have created CastSpellOnCurrentTargetsTarget :D
 
Lol.
You sir are a huge tease and a pretty dam good coder can't wait for that is there a proper talent build for that or just standard on google search

Thanks man only cc I even look at now

Hi TheGuv! Thank you for your kind words, I have tested AA Disc priest rotation with this spec


Have fun! :D
 
Does this cc support hour of twilight tanking for dk? if so is there a certain bot?
Yes, I recommend LazyRaider but tick the "Run without tank option" and make sure auto targeting is off.

it doesnt seem to use heart strike or blood boil to get agro on multiple targets.
Drop DnD on the pull first, you shouldn't have a problem after that.
is there a certain blood spec i need to be using for this work?
CLU has been tested with this spec for Blood Tanking.

Thanks xcodesx and Have fun with your DK tanking :)
 
Hey Wulf there is a problem with Spine and Burning tendons, I target em and does nothing. last svn and playing enh chaman =)

I did notice this with AA Disc priest not using smite, will have to check and get back to you...has the problem gone with version 2.6.8?
 
Yes, I recommend LazyRaider but tick the "Run without tank option" and make sure auto targeting is off.


Drop DnD on the pull first, you shouldn't have a problem after that.

CLU has been tested with this spec for Blood Tanking.

Thanks xcodesx and Have fun with your DK tanking :)



Hey thanks for the response. Im capped on valor and lfrs already done for the week, ill be testing this further on tuesday when it all resets. Many thanks for this cc i can use it on all my characters. It really makes life easier when doing dungeons over and over. Next time i have a problem i will post a log for ya just incase.
 
hi wulf,

i've encountered the same problem like outland, with both speccs holy and discipline.
- Holy doesn't switch chakra for AOE_Healing
- CLU decides to heal single target
- maybe some options / settings would be nice were we as users could set the values for specific healings (how many people have to be injured and how much they have to be injured for entering AOE healing) and things like that (for all healing classes setting values by hand for healing spells, oh shit buttons and so on ... some priests want to have shadow fiend on CD or want it to be casted above 50%, resto druids sometimes want to inervate at 80% or 70% and not on 50. Paladins wanna bubble himself much earlier, use Haste-Buff earlier and so on).

I know it is much work to the user the abilitie to adjust the settings themself and finding good defaultvalues, but for raiding, it is very important to adjust these settings (and to blacklist players from healing^^)
Same for dispelling (haven't checked the code atm), it is important that the CC can a) distinguish between normal and hardmode or b) that some debuffs aren't dispelled (Disrupting Shadows).

For healing there are many improvents to do, for topping the healing charts (and this is not only healing like hell, this is healing,dispelling, using CDs)

noobrage does well on AOE healing but wastes many mana (so topping the healing charts is okay with noobrage but very inefficent on normal Raids or heroic raids)

if u need more suggestions or help to improve the healclasses, i could give u some support, just pm me :)
 
hi wulf,

i've encountered the same problem like outland, with both speccs holy and discipline.
- Holy doesn't switch chakra for AOE_Healing
- CLU decides to heal single target
- maybe some options / settings would be nice were we as users could set the values for specific healings (how many people have to be injured and how much they have to be injured for entering AOE healing) and things like that (for all healing classes setting values by hand for healing spells, oh shit buttons and so on ... some priests want to have shadow fiend on CD or want it to be casted above 50%, resto druids sometimes want to inervate at 80% or 70% and not on 50. Paladins wanna bubble himself much earlier, use Haste-Buff earlier and so on).

I know it is much work to the user the abilitie to adjust the settings themself and finding good defaultvalues, but for raiding, it is very important to adjust these settings (and to blacklist players from healing^^)
Same for dispelling (haven't checked the code atm), it is important that the CC can a) distinguish between normal and hardmode or b) that some debuffs aren't dispelled (Disrupting Shadows).

For healing there are many improvents to do, for topping the healing charts (and this is not only healing like hell, this is healing,dispelling, using CDs)

noobrage does well on AOE healing but wastes many mana (so topping the healing charts is okay with noobrage but very inefficent on normal Raids or heroic raids)

if u need more suggestions or help to improve the healclasses, i could give u some support, just pm me :)

Thanks Stormchasing,

Holy Priest is my worst rotation at the moment as I have not spent enough time on it...AA/DISC took a lot of time.
I had forgotten to apply the single targeting logic to the AoE Targeting logic which left the AoE very frantic, this now feels more deliberate in its actions.
Disc was not healing low healthers very well so I increased the low value for healing from 25% to 40% across all specs and rotations this should greatly increase the responiveness.

CLU is *EXTREME* with mana effeciency, but can also (with some healing rotations) top the charts easily with a well geared healer....BUT..my goal here is to heal the raid as best we can with all of the tools the healer has and not blindly spamming big AoE heals to pad the meters :D (We don't want to look like a bot!!!)

CLU is dispelling everything (except for ignored dispells) Magic, Curses, Diseases, Poisons...if the class has a spell for it and they have the proper talents (which CLU detects automaticly). CLU will ignore "Blackout", "Toxic Torment", "Frostburn Formula", "Burning Blood and any others that are reported can be added easy enough. CLU also prioritises Dispels for the following:

"Disrupting Shadows", // magic
"Boulder Smash", // ??
"Chains of Ice", // Magic
"Freezing Trap", // Magic
"Tentacle Smash", // Magic
"Shackles of Ice", // Magic
"Righteous Shear", // Magic
"Twilight Shear", // Magic
"Molten Blast", // Magic
"Temporal Vortex", // Magic
"Earth and Moon", // Magic
"Arcane Bomb", // Magic
"Shriek of the Highborne", // Magic
"Frost Corruption" // Magic


I love all your suggestions and will try to address them one at a time until complete :) and yes I may need your help with some party healing logic I can not seem to return GroupNumbers properly..once this is fixed priest healing will be even more efficient!


In the end I wanted the end user to simply open CLU up for his raid night, change a couple of minor settings and it would heal flawlessly without the need for intervention or tweaking (I know sometimes this is not possible.) that's why I ask for everyone's input :)

Check the latest SVN it has much improved AoE targeting and seems more responsive. (Holy Priest needs work on chakra healing.)


Updated 25/06/2012:
Sending wulfdev\trunk\CLU\Classes\Druid\Restoration.cs
Sending wulfdev\trunk\CLU\Classes\Paladin\Holy.cs
Sending wulfdev\trunk\CLU\Classes\Priest\Discipline.cs
Sending wulfdev\trunk\CLU\Classes\Priest\Holy.cs
Sending wulfdev\trunk\CLU\Classes\Shaman\Restoration.cs
Sending wulfdev\trunk\CLU\Helpers\TargetBase.cs

What I do need is a really easy to configure GUI that takes settings and adds them automagicly :D]
 
Last edited:
Hi wulf,

i'll test your changes later this day (i kept lfr part two for this^^)
For the SubGroup-Problem, i have a bad solution (building an array / list / hastable / whatever by using a for each / for to loop and determining the groupnumber of each player by executing some lua.) This would slowdown CLU, so i do not suggest this solution, but i'll have a look into the HB API, maybe we can get these numbers much easier (the bad solution is from far far away where much things weren't supported by default from HB, most of my hackish solutions are supported atm, so it should be much easier, maybe a framelock can compensate the slowdown, i'll test this)

but something like that should help to check if there are
Code:
        public static List<WoWPartyMember> GroupMembersOfPlayer(string NameOfMemberToCheck, int _healtPercent)
        { 
            var raidinfo = StyxWoW.Me.RaidMemberInfos;
            var raidMember = StyxWoW.Me.RaidMemberInfos.Where(p => p.ToPlayer().Name == NameOfMemberToCheck && p.ToPlayer().HealthPercent <= _healtPercent).FirstOrDefault();
            if (StyxWoW.Me.IsInRaid)
            {
                if (raidMember != null)
                {

                    return raidinfo.Where(p => p.GroupNumber == raidMember.GroupNumber).ToList<WoWPartyMember>();
                }
                else
                {
                    return null;
                }
            }
            return null;
        }
        public static bool shouldAOE(int GroupMemberCount, WoWPlayer unit, int _healthPercent)
        {
            return GroupMembersOfPlayer(unit.Name, _healthPercent).Count() >= GroupMemberCount;
        }
and the call should be someting like that, this should make sure that the AOE-Spells are only used when enough partymembers are in range
(there'S atm no range check, this must be added, theres atm no return value if we are in a Party ... this works only with raids)
Code:
                        Spells.CastSelfSpell("Circle of Healing", a => shouldAOE((Me.IsInRaid ? 4 : 3), Me.CurrentTarget, (Me.IsInRaid ? 60 : 50)), "Circle of Healing"),
                        Spells.CastSelfSpell("Prayer of Healing", a => shouldAOE((Me.IsInRaid ? 4 : 3), Me.CurrentTarget, (Me.IsInRaid ? 60 : 50)), "Prayer of healing")


The snippet is done very fast, so u need to tweak it for your needs.

If u need to have a separate List of Players, which u can query for the GroupNumber than u have to look at the first part "GroupMembersOfPlayer" this should give u an idea how to do it :)
 
a small bugfix from me ...
There's an calculation issue with TimeToDeath which causes the CC to partially stop working
a small improvement from me ...
Class: Warlock
Talenttree: Affliction
Change:
- Moved Multidotting down in the tree, we do want to have it later :)
- Added Shadow Bolt before applying dots (changed the Priorities to elitistjerks optimal opener -> now we apply Shadow Embrace and / or Shadow and Flame first, if we have the Talent(s))

This should increase the Damage a little bit, we apply this first (and moved multidotting, cause this part causes CLU to apply Corr and UA first) cause some spells aren't updated while already ticking

However ... patches and complete CS file provided as attachment :)
The unit patch is critical
the Affliction patch is improvement / nice to have
 

Attachments

Having problems on Spine, everything works fine but when I get to the tendron it just wont cast any attacks. Range issue (Frost DK)?
 
Having problems on Spine, everything works fine but when I get to the tendron it just wont cast any attacks. Range issue (Frost DK)?

Did you had these on Ultraxion too?
If it's an range issue you should have had it on Ultraxion too.

greetz

Weischbier
 
That's meh, but I guess it would.
But if Wulf has any range checks within his castspell method like 'iswithinmeleerange' then HB fucks up.

greetz

Weischbier
 
Works fine on Ultraxion (no range issue)
im doin atm 2nd time spine and have same issues, all works fine till the point i take Tendrons as target.
Issues exists on DK (Unholy) and Warlock (Affliction) so i assume this is an issue with all classes.
Atm i'm looking at the log

[21:49:21:833] [CLU SUCCEED] 2.6.8: Hideous Amalgamation Distance: 22, Death Coil, MaxHealth: 5475615, CurrentHealth: 1, Deficit: 5475614, HealthPercent: 0
[21:49:28:246] [CLU SUCCEED] 2.6.8: Burning Tendons Distance: 10, Icy Touch, MaxHealth: 2254665, CurrentHealth: 2193332, Deficit: 61333, HealthPercent: 97.3
[21:49:29:335] [CLU SUCCEED] 2.6.8: Burning Tendons Distance: 10, Plague Strike, MaxHealth: 2254665, CurrentHealth: 2101987, Deficit: 152678, HealthPercent: 93.2
[21:49:31:144] [CLU SUCCEED] 2.6.8: Burning Tendons Distance: 10, Death and Decay, MaxHealth: 2254665, CurrentHealth: 1849772, Deficit: 404893, HealthPercent: 82
[21:49:34:379] [CLU SUCCEED] 2.6.8: Burning Tendons Distance: 10, Scourge Strike, MaxHealth: 2254665, CurrentHealth: 1280867, Deficit: 973798, HealthPercent: 56.8
[21:49:35:559] [CLU SUCCEED] 2.6.8: Burning Tendons Distance: 10, Death Coil, MaxHealth: 2254665, CurrentHealth: 1109162, Deficit: 1145503, HealthPercent: 49.2
[21:49:36:611] [CLU SUCCEED] 2.6.8: Burning Tendons Distance: 10, Death Coil, MaxHealth: 2254665, CurrentHealth: 806579, Deficit: 1448086, HealthPercent: 35.8
[21:49:37:625] [CLU SUCCEED] 2.6.8: Burning Tendons Distance: 10, Dark Transformation, MaxHealth: 2254665, CurrentHealth: 595904, Deficit: 1658761, HealthPercent: 26.4
[21:49:38:576] [CLU SUCCEED] 2.6.8: Burning Tendons Distance: 10, Scourge Strike, MaxHealth: 2254665, CurrentHealth: 511449, Deficit: 1743216, HealthPercent: 22.7
[21:49:39:576] [CLU SUCCEED] 2.6.8: Burning Tendons Distance: 10, Scourge Strike, MaxHealth: 2254665, CurrentHealth: 330984, Deficit: 1923681, HealthPercent: 14.7
[21:49:40:307] [CLU] 2.6.8: [Casting] Blood Tap
[21:49:40:307] Spell_C::CastSpell(45529, 0, 0xF130DCFF0000C2CB, 0) [2581]
[21:49:40:412] Spell_C::CastSpell(45529, 0, 0xF130DCFF0000C2CB, 0) [2582]
[21:49:40:484] [CLU SUCCEED] 2.6.8: Burning Tendons Distance: 10, Blood Tap, MaxHealth: 2254665, CurrentHealth: 46127, Deficit: 2208538, HealthPercent: 2
[21:49:40:631] [CLU SUCCEED] 2.6.8: Burning Tendons Distance: 10, Scourge Strike, MaxHealth: 2254665, CurrentHealth: 46127, Deficit: 2208538, HealthPercent: 2

log sais, all fine and attacking, but toon does nothing.
Some Area effects are not working

[21:48:13:689] [CLU SUCCEED] 2.6.8: Corrupted Blood Distance: 3, Scourge Strike, MaxHealth: 124491, CurrentHealth: 124491, Deficit: 0, HealthPercent: 100
[21:48:14:137] System.NullReferenceException: Object reference not set to an instance of an object.
at CLU.Classes.DeathKnight.Unholy.<get_SingleRotation>b__16(Object ret) in e:\Selektra\Deathknight\CustomClasses\CLU\Classes\DeathKnight\Unholy.cs:line 87
at CLU.Helpers.Spell.<>c__DisplayClass4a.<CastSpellAtLocation>b__46(Object a) in e:\Selektra\Deathknight\CustomClasses\CLU\Helpers\Spell.cs:line 626
at TreeSharp.Decorator.CanRun(Object context)
at TreeSharp.Decorator.#h.#nF.MoveNext()
at (Object )
at TreeSharp.Composite.Tick(Object context)
at TreeSharp.PrioritySelector.#h.#nF.MoveNext()
at (Object )
at TreeSharp.Composite.Tick(Object context)
at TreeSharp.Sequence.#h.#nF.MoveNext()
at (Object )
at TreeSharp.Composite.Tick(Object context)
at TreeSharp.Decorator.#h.#nF.MoveNext()
at (Object )
at TreeSharp.Composite.Tick(Object context)
at TreeSharp.DecoratorContinue.#h.#nF.MoveNext()
at (Object )
at TreeSharp.Composite.Tick(Object context)
at TreeSharp.Sequence.#h.#nF.MoveNext()
at (Object )
at TreeSharp.Composite.Tick(Object context)
at TreeSharp.Decorator.#h.#nF.MoveNext()
at (Object )
at TreeSharp.Composite.Tick(Object context)
at TreeSharp.PrioritySelector.#h.#nF.MoveNext()
at (Object )
at TreeSharp.Composite.Tick(Object context)
at TreeSharp.Decorator.#h.#nF.MoveNext()
at (Object )
at TreeSharp.Composite.Tick(Object context)
at TreeSharp.PrioritySelector.#h.#nF.MoveNext()
at (Object )
at TreeSharp.Composite.Tick(Object context)
at TreeSharp.Decorator.#h.#nF.MoveNext()
at (Object )
at TreeSharp.Composite.Tick(Object context)
at TreeSharp.PrioritySelector.#h.#nF.MoveNext()
at (Object )
at TreeSharp.Composite.Tick(Object context)
at Styx.Logic.BehaviorTree.TreeRoot.Tick()
[21:48:14:137] Cleared POI - Reason Exception in Root.Tick()
[21:48:14:137] Cleared POI
i think the override is wrong

doin now madness, mutated corruption and arm tentacle, blistering tetns are working fine

also encountered pet attack issues sometimes, not in every fight -.-

Deathwings head not attacked all the time (after killing fragments, toon stopped attacking)
i do not shortened the log, i'll provide timestamps to look for

first exception at [21:44:21:192] - Amalgamation died (should be checked^^)
next exception at [21:44:28:729] - Never casted

[22:07:17:491] - stopped casting anything on Deathwing
 

Attachments

Last edited:
I'm not feeling the AA rotation. You gotta treat it like its own spec, like Cats and Bears. Looks like it is only building stacks for bosses? This is ok, i guess.

Not a huge fan of Healing CCs that change your current target, but when I was messing around with Treesharp, I couldn't get around it.

Didn't I post this in here?


Spell Rotation: Of course this is dependent on whether you are in a 5 man or Tank/Raid healer in a raid. This will therefore be broke down into Dungeons vs Raids.
*** On Cooldown - this means every time the cool down is up, you use this ability
In General:​

  • [*=1]Start with PW:S for Borrowed Time preferrable on Tank (hopefully CC allows setting/finding a tank)
    [*=1]Stack Evangalism as soon as the fight starts... Start with Holy Fire (HF), followed by 4 smites (should assist tank)

    • [*=1]Healing with Atonement consists of using Holy Fire as soon as cooldown is up followed Smites
      [*=1]Use HF/Smite at minimum every 15 seconds to keep Evangalism stacks rolling
      [*=1]Stack Evangalism to 5 and use ArchAngel as soon as it's off cooldown if you need to cast a PoH/PoM/Flash Heal (see below)
    [*=1]If 2-3 people in a group are less than 75% than you should cast Prayer of Healing (PoH) (I prefer 2)
    [*=1]Heals not used in this rotation: Heal, Renew, Greater Heal, Binding Heal and Holy Nova

  • [*=1]Heal with Atonement until someone is at 50% (but as above, if 2+ people are < 75% PoH/PoM)
    [*=1]Use PoH if 3+ players < 75%, should be cast on the player with the lowest health
    [*=1]Heal rotation: PW:S (tank if possible/needed), PoH, PoM, Penance and Flash Heal (if someone is still < 50%)
    [*=1]Use ArchAngel if Evangalism is stacked to 5 AND needing to cast PoH / Flash Heal / PoM

***Replace Flash Heal above with HF/Smite when ArchAngel is down​



Cooldowns:
  • Use Power Infusion on Cooldown (for botting purposes), should not be cast during lust/heroism as they dont stack
  • Use Inner Focus with a Greater Heal on Cooldown when someone drops below 50%
  • Pain Suppression at 30% (selectively on tank if possible)
  • Divine Hymn if 5+ people are below 50%
  • Hymn of Hope and Shadowfiend at your preference, but I recommend early (~ 50% and 75% respectively)
  • Cast a PW:S before either Hymn for Borrowed Time
 
a small bugfix from me ...
Class: Warlock
Talenttree: Affliction
Change:
- Moved Multidotting down in the tree, we do want to have it later :)
- Added Shadow Bolt before applying dots (changed the Priorities to elitistjerks optimal opener -> now we apply Shadow Embrace and / or Shadow and Flame first, if we have the Talent(s))

Patch committed thanks Stormchasing!

With the groupnumbers, could you take a look at TargetBase.cs (Specificly FindPartySubroutine()) as I am doing basicly the same thing except it is part of CLU's targeting routine EDIT Just made some changes but havnt tested it.. you can test it by calling FindParty() instead of FindAreaHeal().
 
Last edited:
Status
Not open for further replies.
Back
Top