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

[For Developers] AOE Ground Effects - Friendly and Enemy

Apoc

Well-Known Member
Joined
Jan 16, 2010
Messages
2,790
Reaction score
94
There have been a few questions recently about dealing with ground-effects (such as fire, ground AOE heals, Blizzard, Flame Strike, etc).

What (I assume) hasn't been explained, is that Honorbuddy contains support to pull such things from the game client so you can either get in, or out, of ground effects.

The following is a small example (and very, very, basic, so don't expect it as an end-all solution!) on how to use WoWDynamicObject's:

Code:
        public static void GetInFriendlyGroundHeal()
        {
            var go =
                ObjectManager.GetObjectsOfType<WoWDynamicObject>().Where(
                    dgo => dgo.Caster.IsFriendly && dgo.Spell.Mechanic == WoWSpellMechanic.Healing).
                    OrderBy(dgo => dgo.DistanceSqr).FirstOrDefault();

            if (go != null)
            {
                Navigator.MoveTo(go.Location);
            }
        }

It will simply look for a ground healing effect (closest first), and move to its dead center.

The same can be done for harmful effects (by reversing the logic, and finding a safe place to stand for things such as fire, etc). This will allow your CCs, bots, plugins, etc, to deal with the new Cataclysm mechanics, where there is always something you shouldn't be standing in!

P.S. This support has been in Honorbuddy for nearly a month now, however it may not have been explained well enough!
 
This is MOST appreciated!

Apoc said:
The same can be done for harmful effects (by reversing the logic, and finding a safe place to stand for things such as fire, etc)

Obviously, this problem is much harder to solve than the 'get in' problem. Trying to find a safe location to move can be a beast when:
  • There may be multiple 'black spots' on the floor
  • Worse, if the black spots are ever-expanding
  • There are pillars, dropoffs, water, etc in the area.
  • There are other hostiles in the room that you don't want to pull
  • All the other players in the party are also bots

I don't suppose you care to demonstrate the 'get out' case would you? :-p

cheers,
chinajade
 
Would this logic also work for determining if an enemy is in a healing spot and work to pull them out? For example, the void guys before Setesh in HoO or the dragons in VP?
 
Very nice example, i cant wait to get home and see if this will have an positive effect on pvp routine.
 
Back
Top