Hello and welcome! Description: Mage Helper is a very simple plugin. The basics of it are it will blink towards lootable mobs, will cast Slow fall if you are falling, and will cast invisibility if you are close to death in combat. Blinking is a natural bodily function, as is a Mage using Blink in game. Abilities: You can disable all of these individually if you want. Blinking: Will blink towards dead lootable mobs. Distance to loot between 19-40 yards. Will not blink if it finds hostiles near the loot. Will not blink if any closer loots are found (Won't happen with the new POI setup) Will 'attempt' to move into Line of Sight before blinking (if not already in LoS). [This was now updated to use HB's pathing system] (This uses current POI, so it won't blink to a mob farther away than the one the bot wants to loot, had this problem during Version 0.1) Slow Fall: Will cast Slow Fall if you are falling. Checks if you are falling. Will wait 1 second. If you are still falling it will then cast Slow Fall. This is to not have it cast every time you fall off a 2inch ledge. Invisibility: Will cast Invisibility to exit combat if you are about to die, and the following conditions are met. Two settings are available here. -Number of Mobs -Health Percent If you get below the set Health Percent, and have the set Number of Mobs attacking you it will cast Invisibility in an attempt to save your life. Defaults are set to 2 mobs, and at 20% health. -If Leveling I would suggest setting to 1 mob, and 10% health. Warning! - Do not have blinking turned on while leveling in Frost Spec! Blink is very important to frosts survivability, and having Blinking enabled will likely cause your toon more harm than good. Setup: Take the .zip file Unzip it in your folder "HB/Plugins/" So a full folder location of "HB/Plugins/MageHelper" Thanks To: CodenameG - For the settings file and GUI Setup! Stormchasing - For help with distance Methods! If you have anything you would like to see added feel free to post it in this thread. If you have any problems, again, post them in this thread (don't make a new one, and include a log). A ChangeLog is included in the MageHelper folder (just as a reference for myself, might be useful to you guys) [Current Version] 1.1.1 /Small updates[Previous] 1.1.0 /Heavy Updates [Previous] 1.0.1 /Tiny tiny updates [Previous] 1.0.0 /Initial Release Added to the: I Don't Know - Dev Team's SVN Trunk! Please enjoy the plugin. If you do I ask you to leave a little feedback, and maybe a +Rep. -N1Y
Reserved for whatever I want to use it for Or for whichever mod wants to leave their mark Spot marked for: Kickazz the Pwnfacer Spot marked for: CodenameG the Master Spot marked for: I'dRatherNotTellYou the Dragon Spot marked for: Altoids the Faith-Keeper Spot marked for: Tony... the Ruler!
So in a few hours of using it, the only thing I've been able to actually witness it do is save me from dying when my bot frost nova'd and then ran off the side of a tower .. it caught that and slow falled like a champ. So even if that's the only thing it does (which I'm sure the other stuff works too) - it's totally worth it. Thanks for the quality contribution.
My mage is level 85. Upon further testing, I found that in at least 1 instance, it has failed to use Invis. I'll attach a log, but I don't know if it will be of much use. It looks like in the log that my CC is throwing an exception for some reason, but would that stop your plugin from taking over and popping invis?
It should work just fine, since the CC kept on running and casting after the exception... I'll have a look at the invis checks when I get back. I may have placed the wrong variable somewhere or something along those lines. Thanks for bringing this to my attention. Also If you were at the comp when it happened could you give me a better description of what happened? It's hard to try to debug and picture what happened through a log on a phone Thanks.
Seems legit, I just started leveling a mage. Only lvl 8 atm but ill still try the plugin when i have the skillz
Sure, I can tell you exactly what happened. The bot got a mob in melee range and it frost nova'd. When it did that, it turned and ran for ~15 yards and agro'd another mob. It then sheeped this mob. It killed the mob it had frost nova'd, but then when it went to pull the one it had sheeped, it again turned and ran ~15 yards so as to distance itself from the sheep - in doing so, it agro'd yet another mob. It goes through this cycle of frost nova/sheeping mobs and running and agro'ing more mobs until it has 3 attackers. One of which is sheeped, one is frost nova'd in melee range, and the other is attacking. So it died to two mobs attacking it, with 3 in total being agroed. Hope that makes sense... ;x
Small update. Changed where the saved file goes. "/HB/Settings/MageHelper/[characternameandsuch].xml Changed when it checks for if you are a mage
Please do. I love my mage. I'm looking at more ways to possibly use the rest of the mages sexy spells. Stay tuned.
A good portion of the plugin got a rewrite. Now instead of just checking for LoS it will use the HB pathing system to be sure it only has one more click to make (and that is to the loot). Moved around some methods, added a variable to turn log(s) on/off. My plugin in its current state will spam the shit out of your logs if you turn the logging on, it is set to off when you download, and you actually have to edit the file to change it to on. So no log spamming, unless you modify the file (which you shouldn't be doing). Edit: I did leave two logs in place. Both notify you of a successful blink (one for if it had to move into LoS, and one for if it didn't) Also added a FrameLock() just to see how it worked. Can't really tell it is there with the small amount of information I processed in it, but at least I know how to use it now Anyways, I'm hungry. -Panda, Out.
not every framelock is needed u read apoc's post but i think at some points u or i (i dunno who of us is wrong^^) misunderstood something a little example, fresh from your svn PHP: private bool LockItUp(string method, List<WoWUnit> objList) { ObjectManager.Update(); using ( new FrameLock() ) { bool _Return = false; if (method == "moreMobs") { /*Checks for mobs within 15 yards of the loot we want to blink to... This way you won't be blinking into an agro field*/ foreach (WoWUnit z in objList) { if (z.IsValid && !z.IsMe && z.Guid != LastPOI.Guid && z.Location.Distance(LastPOI.Location) <= 15 && !z.Dead && z.IsHostile) { _Return = true; } } if (_Return && !IsLastPOItheCurrentPOI()) { Log("Found Hostiles near", LastPOI.Name); } return _Return; } if (method == "closerLoot") { /*Check is there is closer what our POI is... The bot is sometimes stupid, and could possibly set a POI different than what it is actually moving to loot * This would result in blinking to the wrong loot*/ foreach (WoWUnit z in objList) { if (z.IsValid && !z.IsMe && z.Guid != LastPOI.Guid && z.Lootable && z.Location.Distance(Me.Location) < LastPOI.Location.Distance(Me.Location)) { _Return = true; } } if (_Return && !IsLastPOItheCurrentPOI()) { Log("Found Loot closer than", LastPOI.Name); } return _Return; } return true; } } in this case (i think) is no framelock needed, because u don't do any injection at this point, there's only some math and some logging, nothing related to injection. The Framelock is meant to not slow down the injection things ... there's nothing really wrong with the code, because it will work, but there's no need to this in this case.
I know. It is worthless where I located it. I just wanted to try it out In fact, where I put it kinda slows the WoW Client down... Whatever tho lol. I'll remove it sometime. Not now, because I'm a Lazy Panda. And I'm tired. Edit. Nvm, I removed it, and added a /PetAbandon() macro to the invisibility part, for frost mages, so they don't stay in combat after invis (since it removed the current POI & Target). Also added a StopCasting() to Invisibility method. lul Okay, now I'm seriously tired. -Panda, sleepin...