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

Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

Honorbuddy has stopped working

Vastico

New Member
Joined
Jul 28, 2011
Messages
424
I get this output:

Code:
[21:08:32:121] Exception in CGWorld__TraceLine:Process must have frozen or gotten out of sync; InjectionFinishedEvent was never fired. -    at BlueMagic.ExecutorRand.Execute()
   at Styx.WoWInternals.World.GameWorld.#QJc(WoWPoint from, WoWPoint to, Single distance, CGWorldFrameHitFlags flags, WoWPoint& hitPoint) - Honorbuddy
[21:08:32:151] [LazyRaider] Version 1.1.1 Stopped
[21:08:32:153] Activity: Honorbuddy Stopped
[21:08:32:161] System.ApplicationException: Cannot run Tick before running Start first!
   at TreeSharp.Composite.Tick(Object context)
   at Styx.Logic.BehaviorTree.TreeRoot.Tick()
[21:08:32:161] Cleared POI - Reason Exception in Root.Tick()
[21:08:32:161] Cleared POI

Don't know why ;s

Modified CC:
Code:
using System.Linq;
using Singular.Dynamics;
using Singular.Helpers;
using Singular.Managers;
using Singular.Settings;
using Styx;
using Styx.Combat.CombatRoutine;
using Styx.Logic;
using Styx.Logic.Combat;
using Styx.WoWInternals.WoWObjects;
using TreeSharp;

namespace Singular.ClassSpecific.Paladin
{
    public static class Holy
    {
        [Class(WoWClass.Paladin)]
        [Spec(TalentSpec.HolyPaladin)]
        [Behavior(BehaviorType.Rest)]
        [Context(WoWContext.All)]
        public static Composite CreateHolyPaladinRest()
        {
            return new PrioritySelector(
                // Heal self before resting. There is no need to eat while we have 100% mana
                CreatePaladinHealBehavior(true),
                // Rest up damnit! Do this first, so we make sure we're fully rested.
                Rest.CreateDefaultRestBehaviour(),
                // Can we res people?
                Spell.Resurrect("Redemption"),
                // Make sure we're healing OOC too!
                CreatePaladinHealBehavior(false, false)
            );
        }

        [Class(WoWClass.Paladin)]
        [Spec(TalentSpec.HolyPaladin)]
        [Behavior(BehaviorType.Heal)]
        [Context(WoWContext.All)]
        public static Composite CreateHolyPaladinHealBehavior()
        {
            return new PrioritySelector(CreatePaladinHealBehavior());
        }

        [Class(WoWClass.Paladin)]
        [Spec(TalentSpec.HolyPaladin)]
        [Behavior(BehaviorType.CombatBuffs)]
        [Context(WoWContext.All)]
        public static Composite CreateHolyPaladinCombatBuffsBehavior()
        {
            return new PrioritySelector(
                Spell.BuffSelf(
                    "Divine Plea",
                    ret => StyxWoW.Me.ManaPercent <= SingularSettings.Instance.Paladin.DivinePleaMana && StyxWoW.Me.HealthPercent > 90)
            );
        }

        [Class(WoWClass.Paladin)]
        [Spec(TalentSpec.HolyPaladin)]
        [Behavior(BehaviorType.Combat)]
        [Context(WoWContext.All)]
        public static Composite CreateHolyPaladinCombatBehavior()
        {
            return new PrioritySelector(
                Safers.EnsureTarget(),
                Spell.Cast("Judgement",
                    ret => SpellManager.HasSpell("Judgement") &&
                        !StyxWoW.Me.HasAura("Judgements of the Pure") &&
                        StyxWoW.Me.CurrentTarget.Distance <= SpellManager.Spells["Judgement"].MaxRange - 2 &&
                        StyxWoW.Me.CurrentTarget.InLineOfSight &&
                        StyxWoW.Me.IsSafelyFacing(StyxWoW.Me.CurrentTarget)),
                new Decorator(
                    ret => !StyxWoW.Me.IsInParty && !StyxWoW.Me.IsInRaid,
                    new PrioritySelector(
                        Movement.CreateMoveToLosBehavior(),
                        Movement.CreateFaceTargetBehavior(),
                        Helpers.Common.CreateAutoAttack(true),
                        Helpers.Common.CreateInterruptSpellCast(ret => StyxWoW.Me.CurrentTarget),
                        Spell.Buff("Judgement"),
                        Spell.Cast("Hammer of Wrath"),
                        Spell.Cast("Holy Shock"),
                        Spell.Cast("Crusader Strike"),
                        Spell.Cast("Exorcism"),
                        Spell.Cast("Holy Wrath"),
                        Spell.Cast("Consecration"),
                        Movement.CreateMoveToTargetBehavior(true, 5f)
                        ))
                );
        }

        [Class(WoWClass.Paladin)]
        [Spec(TalentSpec.HolyPaladin)]
        [Behavior(BehaviorType.Pull)]
        [Context(WoWContext.All)]
        public static Composite CreateHolyPaladinPullBehavior()
        {
            return new PrioritySelector(
                new Decorator(
                    ret => !StyxWoW.Me.IsInParty && !StyxWoW.Me.IsInRaid,
                    new PrioritySelector(
                        Movement.CreateMoveToLosBehavior(),
                        Movement.CreateFaceTargetBehavior(),
                        Spell.Cast("Judgement"),
                        Helpers.Common.CreateAutoAttack(true),
                        Movement.CreateMoveToTargetBehavior(true, 5f)
                    )
                )
            );
        }

        internal static Composite CreatePaladinHealBehavior()
        {
            return CreatePaladinHealBehavior(false, true);
        }

        internal static Composite CreatePaladinHealBehavior(bool selfOnly)
        {
            return CreatePaladinHealBehavior(selfOnly, false);
        }

        internal static Composite CreatePaladinHealBehavior(bool selfOnly, bool moveInRange)
        {
            HealerManager.NeedHealTargeting = true;

            return
                new PrioritySelector(
                    ctx => selfOnly ? StyxWoW.Me : HealerManager.Instance.FirstUnit,
                    new Decorator(
                    ret => ret != null,
                        new PrioritySelector(
                            Spell.WaitForCast(),
                // BoL on the tank or myself.
                            Spell.Buff(
                             "Beacon of Light",
                                 ret => RaFHelper.Leader,
                                 ret => RaFHelper.Leader.IsAlive && !RaFHelper.Leader.HasMyAura("Beacon of Light")),
                             Spell.BuffSelf(
                             "Beacon of Light",
                                ret => RaFHelper.Leader == null && !StyxWoW.Me.HasAura("Beacon of Light")),
                // Big Heal
                            Spell.Heal(
                                "Lay on Hands",
                                ret => (WoWUnit)ret,
                                ret => StyxWoW.Me.Combat && !((WoWUnit)ret).HasAura("Forbearance") &&
                                       ((WoWUnit)ret).HealthPercent <= SingularSettings.Instance.Paladin.LayOnHandsHealth),
                // Cleanse
                            Spell.Buff(
                                "Cleanse",
                                ret => (WoWUnit)ret,
                                ret => SingularSettings.Instance.DispelPlayers && Dispelling.CanDispelUnit((WoWUnit)ret)),
                // Protection Cooldowns
                            Spell.Buff(
                                "Hand of Sacrifice",
                                ret => RaFHelper.Leader,
                                ret => SingularSettings.Instance.Paladin.HandOfSacrifice && RaFHelper.Leader.HealthPercent <= SingularSettings.Instance.Paladin.HandOfSacrificeHealthHoly && !RaFHelper.Leader.IsMe && !RaFHelper.Leader.Dead && !RaFHelper.Leader.IsGhost),
                            Spell.BuffSelf(
                                "Divine Protection",
                                ret => SingularSettings.Instance.Paladin.DivineProtection && StyxWoW.Me.HealthPercent <= SingularSettings.Instance.Paladin.DivineProtectionHealthHoly),
                            Spell.BuffSelf(
                                "Divine Plea",
                                ret => StyxWoW.Me.ManaPercent <= SingularSettings.Instance.Paladin.DivinePleaMana && StyxWoW.Me.HealthPercent > 85),
                // Cooldowns
                            Spell.BuffSelf(
                                "Divine Favor",
                                ret => (!SingularSettings.Instance.Paladin.DivineFavorExclusive || (!StyxWoW.Me.HasAura("Guardian of Ancient Kings") && !StyxWoW.Me.HasAura("Avenging Wrath") && !StyxWoW.Me.HasAura("Divine Plea"))) &&
                                    Unit.NearbyUnfriendlyUnits.Count(u => u.Distance < 40 && u.HealthPercent < SingularSettings.Instance.Paladin.DivineFavorHealth) >= SingularSettings.Instance.Paladin.DivineFavorMembers),
                            Spell.BuffSelf(
                                "Avenging Wrath",
                                ret => (!SingularSettings.Instance.Paladin.AvengingWrathExclusive || (!StyxWoW.Me.HasAura("Guardian of Ancient Kings") && !StyxWoW.Me.HasAura("Divine Favor") && !StyxWoW.Me.HasAura("Divine Plea"))) &&
                                    Unit.NearbyUnfriendlyUnits.Count(u => u.Distance < 40 && u.HealthPercent < SingularSettings.Instance.Paladin.AvengingWrathHealth) >= SingularSettings.Instance.Paladin.AvengingWrathMembers),
                            Spell.Cast(
                                "Guardian of Ancient Kings",
                                ret => (!SingularSettings.Instance.Paladin.GoAKExclusive || (!StyxWoW.Me.HasAura("Avenging Wrath") && !StyxWoW.Me.HasAura("Divine Favor") && !StyxWoW.Me.HasAura("Divine Plea"))) &&
                                    Unit.NearbyUnfriendlyUnits.Count(u => u.Distance < 40 && u.HealthPercent < SingularSettings.Instance.Paladin.GoAKHealthHoly) >= SingularSettings.Instance.Paladin.GoAKMembers),
                // LoD and WoG need to be used every time we get 3 HP.  LoD if AOE, WoG if single target.
                            Spell.Cast(
                                "Light of Dawn",
                                ret => StyxWoW.Me,
                                ret => StyxWoW.Me.CurrentHolyPower == 3 &&
                                    Clusters.GetClusterCount((WoWPlayer)ret, Unit.NearbyFriendlyPlayers.Where(p => !p.Dead && !p.IsGhost && p.HealthPercent <= SingularSettings.Instance.Paladin.LightOfDawnHealth).Cast<WoWUnit>(), ClusterType.Cone, 30f) >= SingularSettings.Instance.Paladin.LightOfDawnCount),
                
                            Spell.Heal(
                                "Word of Glory",
                                ret => (WoWUnit)ret,
                                ret => StyxWoW.Me.CurrentHolyPower == 3 && ((WoWUnit)ret).HealthPercent <= SingularSettings.Instance.Paladin.WordOfGloryHealth),
                
                // Big AoE
                            Spell.Cast(
                                "Holy Radiance",
                                ret => Clusters.GetBestUnitForCluster(Unit.NearbyFriendlyPlayers.Cast<WoWUnit>(), ClusterType.Radius, 10f),
                                ret => Clusters.GetClusterCount((WoWPlayer)ret, Unit.NearbyFriendlyPlayers.Where(p => !p.Dead && !p.IsGhost && p.HealthPercent <= SingularSettings.Instance.Paladin.LightOfDawnHealth).Cast<WoWUnit>(), ClusterType.Radius, 10f) >= SingularSettings.Instance.Paladin.LightOfDawnCount),
                            
                // Use on CD
                            Spell.Heal(
                                "Holy Shock",
                                ret => (WoWUnit)ret,
                                ret => ((WoWUnit)ret).HealthPercent <= SingularSettings.Instance.Paladin.HolyShockHealth),
                // Fast Heal - Lots of Mana
                            Spell.Heal(
                                "Flash of Light",
                                ret => (WoWUnit)ret,
                                ret => ((WoWUnit)ret).HealthPercent <= SingularSettings.Instance.Paladin.FlashOfLightHealth),
                // Big Heal - Lots of Mana
                            Spell.Heal(
                                "Divine Light",
                                ret => (WoWUnit)ret,
                                ret => ((WoWUnit)ret).HealthPercent <= SingularSettings.Instance.Paladin.DivineLightHealth),
                // The Heal
                            Spell.Heal(
                                "Holy Light",
                                ret => (WoWUnit)ret,
                                ret => ((WoWUnit)ret).HealthPercent <= SingularSettings.Instance.Paladin.HolyLightHealth),

                            new Decorator(
                                ret => moveInRange,
                                new PrioritySelector(
                // Get in range and los
                                    Movement.CreateMoveToLosBehavior(ret => (WoWUnit)ret),
                                    Movement.CreateMoveToTargetBehavior(true, 35f, ret => (WoWUnit)ret)))
                            )));
        }
    }
}
 
I admire your sense of wanting the full log but I cannot upload the log as it's too big due to the Singular Debug.
 
Back
Top