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.
Hey Wulf

Dont know what code you're using for the Dragon Soul Logics, but you interested in the newest ones i created?

Heya Venus112, Sure, thank you!...although I think Stormchasing commented that it was no longer a problem...
 
Heya Venus112, Sure, thank you!...although I think Stormchasing commented that it was no longer a problem...

I can see that shrapnel is not funcional at least. (They wont always target you for spell cast)
Although i do belive there's gonna be some problems for people running different difficulties of the CC. Cause for some reason, i belive HB has a problem detecting the spells by name


Code:
        #region Dragon Soul

        public bool DebuffByID(int spellId)
        {
            if (Me.HasAura(spellId) && StyxWoW.Me.GetAuraById(spellId).TimeLeft.TotalMilliseconds <= 2000)
                return true;
            else return false;
        }

        public bool Ultra()
        {
            using (new FrameLock())
            {
                if (TitanSettings.Instance.DSL)
                {
                    if (!Me.ActiveAuras.ContainsKey("Shield Wall"))
                    {
                        foreach (WoWUnit u in ObjectManager.GetObjectsOfType<WoWUnit>(true, true))
                        {
                            if (u.IsAlive
                                && u.Guid != Me.Guid
                                && u.IsHostile
                                && u.IsCasting
                                && (u.CastingSpell.Id == 109417
                                    || u.CastingSpell.Id == 109416
                                    || u.CastingSpell.Id == 109415
                                    || u.CastingSpell.Id == 106371)
                                && u.CurrentCastTimeLeft.TotalMilliseconds <= 800)
                                return true;
                        }

                    }
                }

            }
            return false;
        }
        public bool UltraFL()
        {
            {
                if (TitanSettings.Instance.DSL && 
                    (DebuffByID(110079)
                    || DebuffByID(110080)
                    || DebuffByID(110070)
                    || DebuffByID(110069)
                    || DebuffByID(109075)
                    || DebuffByID(110068)
                    || DebuffByID(105925)
                    || DebuffByID(110078)))
                    return true;
            }
            return false;
        }

        public bool DW()
        {
            {
                if (TitanSettings.Instance.DSL && 
                    (DebuffByID(110139)
                    || DebuffByID(110140)
                    || DebuffByID(110141)
                    || DebuffByID(106791)
                    || DebuffByID(109599)
                    || DebuffByID(106794)
                    || DebuffByID(109597)
                    || DebuffByID(109598)))
                    return true;
            }
            return false;
        }
        #endregion
The code for hour of twilight will in this case allow warriors to pop "Shield Wall" and the CC wont use button. Used for soaking.
This can be implemented for several other classes as i've done in each CC created, but there's a problem with a class like Fire Mages, who doesn't pop any specific cooldowns to soak the cast

The codes contains all the spell IDs from WoWHead, to make sure that all spells are supported
 
Hmm...does anyone know how often RaidMemberInfos or ObjectManager.ObjectList is updated ?

It looks like its not updated very often...
 
Hmm...does anyone know how often RaidMemberInfos or ObjectManager.ObjectList is updated ?

It looks like its not updated very often...
should internally be updated with every pulse
 
should internally be updated with every pulse


How often does the engine pulse?

reason I ask is FindPartySubroutine is returning some - what looks like - cached values..its random..like it takes a snapshot and updates every so often..

EDIT: Styx.WoWPulsator.Pulse(PulseFlags.Objects); ??? Force an update of ObjectManager, WoWMovement, AvoidenceManager ?
 
Last edited:
Hi wulf, does your disc priest rotation support both AA and non-AA disc priest?
 
How often does the engine pulse?

reason I ask is FindPartySubroutine is returning some - what looks like - cached values..its random..like it takes a snapshot and updates every so often..

EDIT: Styx.WoWPulsator.Pulse(PulseFlags.Objects); ??? Force an update of ObjectManager, WoWMovement, AvoidenceManager ?

Dunno what u are trying, but Pulse should be nearly every frame in my thought or within a very little timespan (under 30ms), u can force the update, but it should update itself as my understanding is, and it's doin by itself cause Ultimate or Holy Cow doesn't force the updates

with Ultimate i did it at some specific positions in the source code but this leads to lacks and i removed the updating completely.
 
Dunno what u are trying, but Pulse should be nearly every frame in my thought or within a very little timespan (under 30ms), u can force the update, but it should update itself as my understanding is, and it's doin by itself cause Ultimate or Holy Cow doesn't force the updates

with Ultimate i did it at some specific positions in the source code but this leads to lacks and i removed the updating completely.

Im puzzled...

var players = Me.RaidMemberInfos.Where(x => x.GroupNumber == partyIndex && ObjectManager.ObjectList.Any(y => y.Guid == x.Guid) && x.Location3D.Distance2DSqr(Me.Location) < 40 * 40);

returns only 2 players (25 raid members clustered no more than 20yrds from me) from the above call. (foreach players loop)

[10:22:38 PM:962] FindPartySubroutine AvgHealth: 100 Player: player1 Distance: 6
[10:22:38 PM:964] FindPartySubroutine AvgHealth: 100 Player: player2 Distance: 19

this is repeated over and over....both of these players were in separate groups
 
try with this
PHP:
        public List<WoWPlayer> myParty { get { return ObjectManager.GetObjectsOfType<WoWPlayer>(true, true).Where(p => p.DistanceSqr <= 40 * 40 && p.IsFriendly && p.IsInMyPartyOrRaid).ToList(); } }
or
PHP:
public List<WoWPlayer> PartyorRaid { get { if (Me.IsInParty) { return Me.PartyMembers; } else if (Me.IsInRaid) { return Me.RaidMembers; } else { return null; } } }
or do u need the group number (subgroup of raid)?
 
try with this
PHP:
        public List<WoWPlayer> myParty { get { return ObjectManager.GetObjectsOfType<WoWPlayer>(true, true).Where(p => p.DistanceSqr <= 40 * 40 && p.IsFriendly && p.IsInMyPartyOrRaid).ToList(); } }
or
PHP:
public List<WoWPlayer> PartyorRaid { get { if (Me.IsInParty) { return Me.PartyMembers; } else if (Me.IsInRaid) { return Me.RaidMembers; } else { return null; } } }
or do u need the group number (subgroup of raid)?

We are parsing a party index to prioritise by group.

PHP:
private Composite FindPartySubroutine(int partyIndex, int minAverageHealth, int maxAverageHealth, float maxDistanceBetweenPlayers, int minUnits, string label)
        {
            return new TreeSharp.Action(a =>
            {
                var players = Me.RaidMemberInfos.Where(x => x.GroupNumber == partyIndex && ObjectManager.ObjectList.Any(y => y.Guid == x.Guid) && x.Location3D.Distance2DSqr(Me.Location) < 40 * 40);
                WoWPlayer best = null;
                int score = minUnits - 1;
                foreach (var player in players)
                {
                    var hits = players.Where(p => p.Location3D.Distance2DSqr(player.Location3D) < maxDistanceBetweenPlayers);
                    var avgHealth = hits.Average(p => p.Health * 100 / p.HealthMax);
                    var count = hits.Count();
                   Logparty("FindPartySubroutine hits: {0} AvgHealth: {1} Player: {2}", score, avgHealth, player.ToPlayer());
                    if (avgHealth >= minAverageHealth && avgHealth < maxAverageHealth && count > score)
                    {
                        best = player.ToPlayer();
                        score = count;
                        Logparty("Find Party hits: {0} AvgHealth: {1} Player: {2}", score, avgHealth, player.ToPlayer());
                    }
                }
                
                if (best != null)
                {
                    Logparty(label + " score {1}", "Sark", score);
                    best.Target();
                    return RunStatus.Success;
                }
                return RunStatus.Failure;
            });
        }


as far as I know you can always get RaidMemberInfos (minus buffs)
 
Last edited:
just normal at the moment... I'm not familiar with how the AA method works.
Well , I am myself just started playing priest and I am not that the familiar too with both AA and non-AA and I was using Disc Priest CC by Ama which was doing nice job on random hc and leveling ( have not tried it yet on raid).
And when I was asked by one of my friend to write a PQR's profile I tried to find some info and it kinda made me more confused than be4 i start the project till i found
How to AA Disc ... future CC developers please read by ArmyDr

the only part that i did not get on his advice is when we use GH or FH so on my last profile I made GH to be use on 70% till 40% were it will start using
 
Last edited:
My shaman goes oom super fast trying to cast a spell repeatedly till he goes oom.
 
Here is a log my shaman is ilv 388-391 and cant get passed 21k dps. Everyone i have spoken to and tried my shaman said they can reach 25k easy. Here is a log. I'm sure the shaman CLU needs tweeking. ill see what i can dig up.
 

Attachments

Heya , Awesome CC !

Just an issue to report ;)

Warlock, Destro Specc, it uses Bane of Agony on bosses instead of Bane of Doom ;)
 
Heya , Awesome CC !

Just an issue to report ;)

Warlock, Destro Specc, it uses Bane of Agony on bosses instead of Bane of Doom ;)

Agony is used when the target is < 25%.
 
Did someone order a Resto shaman ?....check SVN

EXTREME BETA
 
Here is a log my shaman is ilv 388-391 and cant get passed 21k dps. Everyone i have spoken to and tried my shaman said they can reach 25k easy. Here is a log. I'm sure the shaman CLU needs tweeking. ill see what i can dig up.


Hi hueyz, Unfortunetly my gear is not good enough to see high numbers..but I am seeing it perform the rotation as written..I do not see extreme mana usage...is there someone else that can comment/help that has a geared Ele shaman ?
 
Last edited:
EXTREME SLEEP!

What I want to ask, did you encounter any issues with any of you DK profiles?
I just portet my Masterfrost out and I've noticed a weird behaviour.

Say we want to cast Obliterate only when DDFFUU. Great.
Now what I see is: Death Knight uses all the runes and waits until they have all refilled and burned them right away after that.
Can you take a look at it? Click
greetz

Weischbier
 
Last edited by a moderator:
Status
Not open for further replies.
Back
Top