Wow, lots of posts. Going to try to address them all.
Mystic:
Glad that did the trick for you!
----------------------------
A_Rogue00:
There's no real good answer here. I simply punch my hide button if I want to force RH to recast my downed clickies. This kinda sucks, but the only other option is for it to force a recast of downed clickies regardless of your situation. I could make it check your state to see if you're dealing with a vendor or banker (or looting a corpse!) before attempting to re-hide and sneak automatically though, which would kill the spam. The only other thing you can do (and it's what I do) is to turn off autohs with the /autohs command if you know you're not going to be fighting for a bit, and remember to turn it back on when you enter hostile territory. I can't really trap a manual use of a skill vs. the script actuating a skill for you due the state-driven way RH works. You can, however, create a hotkey and label it "Toggle HS" and make it's body text simply two lines:
This effectively does what you want--toggle hide and sneak off or on (as a mode).
I could probably optimize the autosticking so that it gets priority in the next loop ForeverLoop iteration. This means that if you're autosticking a mob and it's far away, you won't do the "herky jerky" dance every second getting near it (it'll seem more fluid). As the macro has grown, so has the complexity and jerky-factor. Generally speaking, I never intended RH to be used as a kite-chaser bot, but I'm pretty flattered that it works at all in these situations :)
As far as tank detection: The only way I could detect if you are tanking and not actually change targets is by using TargetOfTarget (as GD stated). If your raid or group leader doesn't have Target of Target AA skill, the rogue-self-tank sensing won't work. I'm sorry it's written that way; when I wrote it, I assumed MQ2 overrode the AA skill and made the TargetOfTarget spawn member available to anyone, not just those with the skill. I'll see if I can cleverly trap an event based on your target's clean name and the text "hits you" or "misses you" to switch tanking status. It won't be as fast or clean as using TargetOfTarget, but it should work for those without the AA skill. No promises though.
Enraged mob flees then stops enraging--yup, you'd chase it down like a raped ape! I thought about this possibility when I wrote the bit about reactivating attack on a mob who's enrage wore off and then I figured--ehh, if they're careful they'll use a leash so it won't be a problem. /Chuckle... Guess you didn't use a leash! If you want to rip that out, change this:
Code: Select all
Sub Event_NLEnraged
/echo Enrage done! Target: ${Target.CleanName}
/varset isEnraged FALSE
/if (${Target.ID}) /attack on
/return
... to this...
Code: Select all
[color=yellow]
Sub Event_NLEnraged
/echo Enrage done! Target: ${Target.CleanName}
/varset isEnraged FALSE
/return [/color]
----------------------------
Shocks:
That's normal behavior for a short-leash. You're trying to engage an NPC that's beyond the length of your leash. Envison a dog trying to chase a cat and the dog's at the end of his leash. He'll run and tug at the leash and choke, walk back a bit, remember the cat, and run back toward the cat, and choke again! If this happens, increase your leash length. A good rule of thumb is make your leash length twice as long as the maximum distance from the stake where you'd expect to fight.
----------------------------
Dirx:
I'm going to rip out the only code I ever borrowed for RH, the "back-side" detection code for backstabbing was borrowed from autorouge. Unfortunately, it's not perfect. I wrote another back-side detection code that always works, and it's used for the circle strafe portion. I'm going to make that a boolean subroutine and call it any time I need to find out if the rogue is behind a target. I'll use that for backstabbing as well, so autostriking will always work correctly (instead of sometimes stabbing shit in the side) as well as fixing up this back-stabbing small, medium and large target shit. My back-side detection separates mob size from orientation, but autorogue's rolls it into one and has issues with larger mobs or small mobs with huge hitboxes. Other than that, I'm at the mercy of what MQ2 has listed as a mob's MaxRangeTo (hit). You tweak the closeness settings after I'm done changing the back-side detect code and see if it works better. Be on the lookout for a patch.
As far as autoduelist and deadeye or deadly precision, I'm thinking about how best to implement this on a wide scale. I think I'll make a new autodisc switch that allows you to set skill of your choice via a switch as well as an endurance floor for it to autofire. That way the skill is whatever you choose and it occurs whenever you want it to happen, based on endurance levels.
Thanks for the compliments :)
Stano's Wicked Legs... Yes I have those as well. I still wear mine, however. I imagine it will freak out on clicking an item that summons something, assuming that item isn't worn. Because there will be two items on the cursor (the summoned venom, and the original pair of legs you took off). Hrmm. I never much intended iclick to work on items that summon stuff, but I can probably write a little fix into it to drop any items that it doesn't recognize into your inventory (that is if you suddenly have an item on your cursor that isn't the original item or the swapped in item, you must have summoned something). That shouldn't be too difficult to patch. Thanks for identifying it.
I can write in a dedicated autofollow routine. Not much to these really. How bout I make it stop autofollowing if your target changes to something new or nothing (/target something else or hit ESC or hit F1 would stop it).