thephoenix25
New Member
- Joined
- Jan 15, 2010
- Messages
- 289
- Reaction score
- 4
DO NOT USE AFK
What does it do ?
To begin with, the idea behind this plugin was to save time when repairing or selling junk by flying to and from the repair/sell NPC. But then I thought, why stop there? It will fly you to and from quest giving NPCs, to and from repair/sell/buy NPCs, to your grind and quest areas (both Grind and Quest profiles) etc.
What doesn't it do ?
It (at present) will not interfere with Custom Quest Behaviours used in questing profiles. RunTo, FlyTo, InteractWith, Escort, Vehicle transport and some of the UseItem type CBs.
What is it for ?
I've been using it to gain the quest achievements for each zone and continent as I instance boosted my toons to 60 before I started questing. But it should work fine for simple quest levelling or grinding profiles. (Bad landings in packs of mobs is on my todo list)
What do I need ?
You need a toon above level 60 with flying skill and a flying mount (with HB flying mount support). You will also need to have some spare time as I don't recommend using this plugin AFK yet.
What do I need to know ?
So far I have only tested it with Horde characters so I have no idea how it will perform for Alliance. It has only been tested by a limited number of people with varying levels of HB experience (so only use at your own risk). There are instructions as to how it works and what to do to get out of a ?failed landing? situation etc at the end of the post.
How does it work ?
It works by saving ?hotspots? which I refer to as ?safe landing spots?. When you want to travel to a place the plugin has not yet ?seen?, it will scan the area for places (in theory) HB's ground mounted navigation can handle to get you to the target NPC/Objective. It ?scans? 100 locations and attempts to find a navigable path to the target for each spot. Any that are successful are stored for later use as ?un-tested/possible? saved spots. The landing spot found to have the shortest ground mounted travel distance is chosen to be the preferred path. If it lands successfully within a time limit, the landing spot is saved and will used every time the bot needs to return to that area. If it fails to land because the target is inside a building, underground or in a generally difficult place to land it should choose the next closest landing spot and repeat until either a ?safe landing spot? is found or if no safe landing spots are found it will return to either a previously saved landing spot somewhere else, or the place from which you attempted to fly from (which ever is closer), and then it will use a ground mount to continue. In addition to this, every 10 seconds it will do a small scan of the area around the character looking for viable landing spots for future use. This way the scans will become quicker after using it for a while. Every now and then it will purge tightly grouped ?untested? saved landing spots, so you don't end up with 1000's of landing spots in a small area. It will automatically blackspot any area in which it has failed to land and if it exhausts all available options the target is ?temporarily? blacklisted. (the blacklist is not saved to file, stopping the bot will reset the blacklist. Blackspots are saved to file)
Why have I released this when it isn't 100% perfect ?
To test every eventuality would take a lifetime even though there are a few of us testing it. So I've released this to first gauge whether it is a plugin that will be worth while to the community and secondly, every safe landing spot recorded can be amalgamated into a set of distributable file to go with the plugin. So any feedback/logs/saved spots will be gratefully received.
Instructions
Anywhere within 100 yards is considered a safe/good landing distance. If the target is closer than 100 yards the plugin won't do anything. If the current point of interest (POI) is a ?Hotspot? used in grind or quest profiles, 300 yards is considered a safe landing distance (to avoid flying over quest objective mobs).
Hotspot = Safe landing spot = X Y Z
Blackspot = Not safe landing spot = X Y Z Radius
Both are stored in .xml files in the GiftOfFlight folder. They are continent specific, so be careful not to mix them up if you are adding/removing manually. If it fails to land and you want to fix it, the best option is to stop the bot, find a good landing location near to the target with little or nothing above to obstruct the flight and landing. Take a hotspot from HB for the location and add it to the end of the appropriate .xml file (be sure to pick the correct continent). The same applies to blackspots, if you find a place you know it won't be able to land (ie cleft of shadows in Orgrimmar, underground, or all of Undercity). You can record a blackspot with HB as you normally would and add this to the appropriate blackspot file. X Y Z and RADIUS are required. Any manually added/removed ?spots? must remain EXACTLY as they come from HB, one ? ? space in the wrong place break it.
*Edit* If it needs to generate 'new' safe landing spots, it can take anything from 0.2 to 120 second if it takes more than 5 mins, something is wrong. Stop the bot wait a few second for the "background thread" to finish and save to file. Then restart. If all else fails, complete the objective and try again.
Simple Setup
Install the zip file to your \plugins folder, unzip so that you have \HB\plugins\GiftOfFlight\Blah Blah. Find a ground mount (or flying if you want) profile, quest profiles are more interesting if you are watching it. I find the 1-60 profiles give a good example of what it can do, as these aren't designed to use flying mounts. Enable plugin and press start.
Side note
I am not an experienced C# programmer and I know my code isn't pretty! I've left a lot of ?commented? code in there for my own reference. If you don't like it, don't use it. But if you do have any suggestions or improvements I'd be happy to hear them.
Good luck and DONT AFK (yet)
EDIT Attachment removed - Latest version(s) is available later in the thread
Last edited: