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

Even if questing is flawless, I just cant see how it can be used?

jimgpayne

New Member
Joined
Mar 21, 2010
Messages
47
Reaction score
0
The only major problem with questing right now is navigation, the problem is most quests have mobs close together, sure it might be able to kill them... but the real trouble happens when it dies.


Honorbuddy automatically, without checking around it, resses about 15 or 20 yards away behind it's corspe, only to die again... and again :confused:.

And what's worse is, once it finally stops dieing, it goes the same path that it died about 20 times on, getting stuck.



I don't see any functions at all for it to pick up certain quests, that aren't a vendor, or I don't see it grinding to like level 6, before heading to Goldshire, like the profile said.


These are just issues behind questing, as questing works very well at this moment, I'm impressed... but there are other problems that need to be fixed too.
 
Last edited:
Tbh, I have run into this problem.. but it was cuase my toon wasn't geared enough or trained yet..
 
Tbh, I have run into this problem.. but it was cuase my toon wasn't geared enough or trained yet..

True. Some classes need to train and gear almost every time you are able to or it won't be so smooth when botting....for example a Warrior
 
True. Some classes need to train and gear almost every time you are able to or it won't be so smooth when botting....for example a Warrior

Another example :P what I was using, A rogue LOL
 
Yea i treated my warrior like it was my hunter/warlock big mistake!

>.< yeah... If you do that its just like... Owey... Why do i keep DIEINGGG :( haha, My shaman, I didnt touch from 40-60 and he still raped hahah
 
I want to bot a shaman but I've never played the class I'd hate to have a level 80 toon i don't know how to play even at level 30 lol.

To the OP try upgrading gear and training if that doesn't work try a different profile maybe.
 
Honorbuddy automatically, without checking around it, resses about 15 or 20 yards away behind it's corspe, only to die again... and again :confused:.

What are you on.... the hard part was the nav mesh system, making the bot avoid mobs on rez is childs play compared to that....
 
at least at the beginning was a cc which checked the environment for mobs and decided then where to rest and where to rezz .. sadly the dev of this cc is gone ... but it should be a possible feature ...

but think this should be in a cc ...

sincery spud
 
guys I think some of you are being way too harsh. 6months these guys have spent getting this to pickup QUESTS ingame, and get you to the place to carry them out, and all you can do is slate it??? WAAAAA, it wont do this, WAAA it wont do that, you guys should be ashamed, its a beta for a start!!!! its a TEST of what is to come.


maybe i was a little harsh in this post, if i was my apologies, just woke up, work time, see ya later
 
Last edited:
you have to be patient guys,it was only the first release
it cant be perfect on first release

if you dont want to try/test beta there is a non beta version on downloads section
 
Last edited:
While I don't agree with your question of how questing can be used, I do agree that rez needs some work. A lot of my deaths occur (in all hb releases) because it rez's in the middle of a mob. I remember glider would wait until it was safe to rez. We need something similar to that.
 
guys I think some of you are being way too harsh. 6months these guys have spent getting this to pickup QUESTS ingame, and get you to the place to carry them out, and all you can do is slate it??? WAAAAA, it wont do this, WAAA it wont do that, you guys should be ashamed, its a beta for a start!!!! its a TEST of what is to come.


maybe i was a little harsh in this post, if i was my apologies, just woke up, work time, see ya later
I said the questing part was amazing... just that small issue like dieing over and over is what washes it down.
 
just as info ...

the feature don't need to be in HB ... this should be a cc feature ..

also ninkos warlock cc had this feature ... and i have a copy of his wonderfull work.

SO HEAR ME ... This feature allredy exists ... the cc devs just have to programm this into they CCs

part of his code:
Code:
  /*
         * Summary:     Finds the best safe spot. distance yards away from all mobs.
         */
        private Point FindSafeSpot()
        {
            Log("Finding safe spot...");
            Stopwatch timer = Stopwatch.StartNew();
            WoWPoint safeSpot = Me.Location;
            List<WoWUnit> units = new List<WoWUnit>(ObjectManager.NpcObjectList.Values);
            units.Sort(CompareDistance);
            List<WoWUnit> unitsInRange = new List<WoWUnit>();
            List<double> unitsDistance = new List<double>();
            List<Point> ThreadList1 = new List<Point>();
            List<Point> ThreadList2 = new List<Point>();
            List<Point> ThreadList3 = new List<Point>();
            int goodDistance = 0; //number of lowest distance found
            int distance = 30;
            double angleIncrements = DegreeToRadian(20);
            double angle = 0;

            foreach (WoWUnit unit in units)
            {
                if (Me.Combat || unit.Distance > distance)
                    break;
                if (ValidUnitCheck(unit) && unit.Distance <= distance
                    // UnitRelationCommented
                    //&& unit.GetUnitRelation(Me) != WoWUnit.WoWUnitRelation.Neutral
                    )
                {
                    unitsDistance.Add(0);
                    unitsInRange.Add(unit);
                }
            }
            Log("Looking target npc's finished. " + timer.ElapsedMilliseconds.ToString());
            if (unitsInRange.Count > 0)
                Log("Number of hostiles within a " + distance + " yard range: " + unitsInRange.Count.ToString());
            else
            {
                Log("No hostiles within a " + distance + " yard range");
                return safeSpot;
            }

            int distanceFromLocation = 15;
            int count = 1;
            for (int i = 0; i < 18; i++)
            {
                if (Me.Combat)
                    break;
                Point point = CalculatePointTo(Me.Location, angle, distanceFromLocation);
                switch (count)
                {
                    case 1:
                        ThreadList1.Add(point);
                        break;
                    case 2:
                        ThreadList2.Add(point);
                        break;
                    case 3:
                        ThreadList3.Add(point);
                        break;
                }
                count++;
                if (count == 4)
                    count = 1;
                angle += angleIncrements;
            }
            angle = 10;
            distanceFromLocation = 25;
            for (int i = 0; i < 18; i++)
            {
                if (Me.Combat)
                    break;
                Point point = CalculatePointTo(Me.Location, angle, distanceFromLocation);
                switch (count)
                {
                    case 1:
                        ThreadList1.Add(point);
                        break;
                    case 2:
                        ThreadList2.Add(point);
                        break;
                    case 3:
                        ThreadList3.Add(point);
                        break;
                }
                count++;
                if (count == 4)
                    count = 1;
                angle += angleIncrements;
            }
            _safeSpotPoints.Clear();
            _safeSpotPointsThread3.Clear();
            _safeSpotPointsThread2.Clear();
            _safeSpotPointsThread1.Clear();
            List<Point> npcLoc = new List<Point>();
            foreach (WoWUnit unit in units)
            {
                if (Me.Combat || unit.Distance > 75)
                    break;
                if (ValidUnitCheck(unit)
                    // UnitRelationCommented
                    //&& unit.GetUnitRelation(Me) != WoWUnit.WoWUnitRelation.Neutral
                    )
                {
                    npcLoc.Add(unit.Location);
                }
            }
            
            Log("Starting threads...");
            ThreadStart safeSpotCheck3 = () => SafeSpotCheck(ThreadList3, npcLoc, 3);
            
            _safeSpotCheck3 = new Thread(safeSpotCheck3);
            if (ThreadList3.Count > 0 && !Me.Combat)
                _safeSpotCheck3.Start();

            ThreadStart safeSpotCheck2 = () => SafeSpotCheck(ThreadList2, npcLoc, 2);

            _safeSpotCheck2 = new Thread(safeSpotCheck2);
            if (ThreadList2.Count > 0 && !Me.Combat)
                _safeSpotCheck2.Start();

            ThreadStart safeSpotCheck1 = () => SafeSpotCheck(ThreadList1, npcLoc, 1);

            _safeSpotCheck1 = new Thread(safeSpotCheck1);
            if (ThreadList1.Count > 0 && !Me.Combat)
                _safeSpotCheck1.Start();

            Log("Threads started waiting for complete...");
            while ((_safeSpotCheck1.IsAlive || _safeSpotCheck2.IsAlive || _safeSpotCheck3.IsAlive) && !Me.Combat)
                Thread.Sleep(50);

            _safeSpotPoints.AddRange(_safeSpotPointsThread3);
            _safeSpotPoints.AddRange(_safeSpotPointsThread2);
            _safeSpotPoints.AddRange(_safeSpotPointsThread1);
            Log("End threads: " + timer.ElapsedMilliseconds.ToString());
            if (Me.Combat)
                return safeSpot;
            foreach (Point testPoint in _safeSpotPoints)
            {
                if (Me.Combat)
                    break;
                bool skip = false;
                List<double> tempDistance = new List<double>(); // stores the distance of all units
                int countDistance = 0; // variable to count the number of good distance

                for (int i = 0; i < unitsInRange.Count; i++)
                {
                    if (Me.Combat)
                        break;
                    WoWUnit unitTest = unitsInRange[i];
                    tempDistance.Add(unitTest.Location.Distance(testPoint)); //gets unitdistance from new point
                    if (tempDistance[i] <= distance)
                    {
                        skip = true;
                        break;
                    }
                    if (tempDistance[i] >= unitsDistance[i])
                        countDistance++;
                }
                if (skip)
                    continue;
                else
                {
                    if (countDistance > goodDistance)
                    {
                        unitsDistance = tempDistance;
                        goodDistance = countDistance;
                        safeSpot = testPoint;
                    }
                }
            }
            timer.Stop();
            if (safeSpot != Me.Location)
                Log("Safe spot found... " + timer.ElapsedMilliseconds.ToString());
            else
                Log("Using current spot... " + timer.ElapsedMilliseconds.ToString());
            return safeSpot;
        }


sincery spud
 
Back
Top