Rogue Helper v6.0 [Complete Rogue Macro] (Updated: 10-26-04)

Post your completed (working) macros here. Only for macros using MQ2Data syntax!

Moderator: MacroQuest Developers

Blazza
a lesser mummy
a lesser mummy
Posts: 60
Joined: Thu Mar 11, 2004 4:27 am

Post by Blazza » Sun May 16, 2004 12:48 pm

The only behavioral thing I think would make a nice addition, is the ability to anchor to a PC, perhaps 10 loc units behind them or so? Would make this ideal for grouping ;)

Jerle69
a hill giant
a hill giant
Posts: 263
Joined: Wed Apr 28, 2004 3:26 pm

Post by Jerle69 » Sun May 16, 2004 12:59 pm

It's a very good idea. I thought about doing that too. Since you suggested it, I'll go ahead and implement it.

One thing though, anchoring 10 feet "behind" a player is alot more difficult than anchoring "within" 10 feet of a player (regardless of player facing), so how bout I go with just anchoring to within 10 feet :) Of course, if that player moves, so will the anchor point. In fact, as a side effect, activating an anchor point on a player will basically create a non-combat auto-follow with idling between combats ;)

I'll put that up later today; thanks for the suggestion.
--Jerle

Jerle69
a hill giant
a hill giant
Posts: 263
Joined: Wed Apr 28, 2004 3:26 pm

Post by Jerle69 » Sun May 16, 2004 2:52 pm

New leashing code as of version 3.2. Now you can leash to another player or NPC, not just a stake (your choice)! Once again, details of how to use it are in the macro itself.
--Jerle

Blazza
a lesser mummy
a lesser mummy
Posts: 60
Joined: Thu Mar 11, 2004 4:27 am

Post by Blazza » Mon May 17, 2004 11:48 am

Now, dont take this wrong. These are ideas for thought, not sugestions for additions ;) I know sometimes when writing my own macro's I have a hard time generating ideas for more features. So here you go, hope this helps you out a little in progressing to 3.3 and beyond ;) This is a great macro and I would hate to see it go stale...


Ini file support for different group makeups. (2 tanks, 1 tank, no healer, healer... etc.) *Personaly, I think it's a stupid idea*

Dynamic distance controll. This macro gets CLOSE to the damn mobs. And in some stupid groups, they decide to root and the rogue normaly eats it. *I think this would be #1 on to-do list*

Master Reporting.... Tank leave? /tell Master Oh SHIT!@ I dont have a main assist.

For the raiding enviroment, have your MA, SA, TA on a list. /if SA In Zone != True /assist SA.

Right clicky timer support (Never look like a dwarf again!)

Support for more than just the strike disc. What about using Duelist when it pops up if Endurance is over 50% and mob is above 80%.

AutoLoot?

No-Drop Loot Announcer (No-Drop? Say it in group!)

Dynamic agro control. Assisting at 95% geting you agro? Next time arround set it to 94%. Still geting hit? 93% not geting hit at all? Increase DPS go to 94%... Get hit again? Go to 93% and stay there untill you get agro.


Again, GREAT damn macro ;) I'm a fan.

Jerle69
a hill giant
a hill giant
Posts: 263
Joined: Wed Apr 28, 2004 3:26 pm

Post by Jerle69 » Mon May 17, 2004 12:36 pm

Let me address some of those suggestions :)
Ini file support for different group makeups. (2 tanks, 1 tank, no healer, healer... etc.) *Personaly, I think it's a stupid idea*
I agree, it's an idea but I don't think I'll persue this one. I could do this of course, but I think it's more trouble than it's worth (or useful).
Dynamic distance controll. This macro gets CLOSE to the damn mobs. And in some stupid groups, they decide to root and the rogue normaly eats it. *I think this would be #1 on to-do list*
Yes, it does get quite close. I use to have it stop at MaxRangeTo (which is that maximum range at which you can hit a mob) but then adjusted it to 50% of MaxRangeTo since it was WHIFFING air sometimes. I already considered adding a new command switch to adjust the percentage by commandline of the percentage of distance of closer (between 0% and 100% of the Maximum To-Hit range, with a default at 50% as it is now). Great idea, I thought of it too and was going to put it in :)
Master Reporting.... Tank leave? /tell Master Oh SHIT!@ I dont have a main assist.
This is cetainly doable, but there is one sticky point. If the tank dies but continues to play, it's impossible to know the difference really. I could check two see if three things have happened before giving this alert: 1) Did the tank leave the zone (dead or camped, apparently), AND 2) Is he/she no longer in the group OR 3) Is he/she no longer in the current raid. Remember, I use this primarily for raiding, even though it works great in exp groups and LDoN crawls. Checking for absent tanks is more than a group check, death check or zone check. I'll think more about this and try to come up with something comprehensive.
For the raiding enviroment, have your MA, SA, TA on a list. /if SA In Zone != True /assist SA.
Hrmm, cascading assists. Not a bad idea. If the third assist dies, then perhaps give a final alert with the above code. If I did the stuff above, I'd consider mixing it with the logic here too.
Right clicky timer support (Never look like a dwarf again!)
Yeah I thought about adding some right-click stuff. I may write a general body and bag search routine and subsequent click of an item then tack that onto an optional timer. These would be two separate features, but the timer would certainly take advantage of the generic right-item-click code. I'll see about working on this one.
Support for more than just the strike disc. What about using Duelist when it pops up if Endurance is over 50% and mob is above 80%.
Not too sure about auto duelist, but I'll think about it. This is something that if added, would certainly NOT be on by default. On our raids, we hold our big offensive discs for emergency use and are orderd to use them by the raid leader exclusively. It's a good idea (great for exp groups really) but bad bad bad for raids. I'll see what I can do.
AutoLoot?
You loot? Hehe.. I usually never loot anything anymore and don't care if I did. I'll see about writing this, but it's low-priority.
No-Drop Loot Announcer (No-Drop? Say it in group!)
Same response as autoloot.
Dynamic agro control. Assisting at 95% geting you agro? Next time arround set it to 94%. Still geting hit? 93% not geting hit at all? Increase DPS go to 94%... Get hit again? Go to 93% and stay there untill you get agro.
Nice idea, I could add some floating aggro analysis. This could get confusing with auto duelist kicking in. I'll check into this as well

Great ideas. And no, I don't get offended by asking for new features. Gives me something fun to do :)

Thanks,
--Jerle

Jerle69
a hill giant
a hill giant
Posts: 263
Joined: Wed Apr 28, 2004 3:26 pm

Post by Jerle69 » Wed May 19, 2004 10:12 am

I'm in the process of working on v4.0 right now.

So far I've implemented, but not tested Dynamic distance control, Master reporting, up to three main assists (with dynamic control over them) as well as cascading assists (failsafe assists), optional dynamic aggro control, full self-corpse looting (/lootmycorpse), and corpse dragging (/drag body1 body2... bodyN).

After I test this (maybe even here at work if I find a minute), I'll release this as v4.0

I plan to add in for v4.1+, item click support (with optional maintance modes for any clickable you have worn or bagged as well as smart-bouncing code to not refresh if a conflicting buff is already active).

The clicky stuff will probably take a day or so because it will be INI-based with click aliases and such. It'll make sense when I'm done though, and be easy to use.
--Jerle

Jerle69
a hill giant
a hill giant
Posts: 263
Joined: Wed Apr 28, 2004 3:26 pm

Post by Jerle69 » Wed May 19, 2004 11:29 pm

Version 4.0 is done. I actually finished everything I mentioned in the previous post. Details about using the new features are found inside the macro itself.
--Jerle

eluminate
orc pawn
orc pawn
Posts: 16
Joined: Wed Apr 28, 2004 4:20 am

Post by eluminate » Thu May 20, 2004 10:23 am

theres absolutely no use for a rogue to be determined to backstab at a raid, we just afk on the mob and hope to god that when we finish fixing up some lunch or going to the toilet that we're still alive =P

nice though, tried it out, preffer the old fashioned way tho.

Jerle69
a hill giant
a hill giant
Posts: 263
Joined: Wed Apr 28, 2004 3:26 pm

Post by Jerle69 » Thu May 20, 2004 11:32 am

I'm not sure if that was a compliment or not? :P Yes, you can totally afk and let this thing do everything for you (short of a corpse recovery) and it'll even keep you alive in dire circumstances, but I prefer to not use ALL of the automatic features ALL the time.

For me, I just use autosticking. I don't usually use the autoassist features, leashing or any other advanced feature unless I have to take a dump, walk the dog, or go eat dinner. I never use the new dynaggro feature unless I'm in a 6-man, and I'm watching the system -- you can get dead fast with that turned on! The new item click tools, autodragger and selfautolooting are pretty handy.

I guess that was the point when I wrote this. I want it to be ABLE to play for me if I'm tired or inattentive but not have this be a *must* to employ a useful macro. It's flexible, very flexible. Think of it like autopilot in an airplane--the technology is so good it can fly the plane and even do MOST of the landing, but you still have pilots and for the most part, they don't use the autopilot unless they have to :)

But umm, thanks for the compliment :)
--Jerle

Buuford
decaying skeleton
decaying skeleton
Posts: 6
Joined: Sun Apr 18, 2004 1:00 am

Post by Buuford » Thu May 20, 2004 11:47 am

this macro is simply the best 8)

maybe i'm using it wrong but the strike discipline usage does 1 of 2 things

A) if i'm just using the /echo finding a victim... /assist <MA>
then when "assassin's strike" is started my char will just stand there
or if "assassin's strike" not started my char will act normally and go kill

B) if I'm using auto assist I never see the "assassin's strike" discipline ever used =/

also, call me dumb....but what exactly do I do with the /autostick feature

great work and thanks for any suggestions you might have for me to properly use this great macro

Jerle69
a hill giant
a hill giant
Posts: 263
Joined: Wed Apr 28, 2004 3:26 pm

Post by Jerle69 » Thu May 20, 2004 6:22 pm

Can't explain all that right now (I gotta go home) but here's a nutshell for you:

A) That's right. Your character will just stand there. The reason being is, you have to move yourself to the back of a target in order for the strike attack to "fire." (It will wait patiently until you're in range). Basically you gotta "drive" and get behind the target when you punch your assist button. Remember, in this "basic" mode, you're still controlling your rogue and his movements, just not the button mashing (other than the assist button).

B) If you're using auto assist, your right, the assassin's strike feature won't get used. I may rewrite the logic a bit so that it does get used, but the premise of this macro originally didn't account for that. As of v4.1, assassin's strike will only "work" if you're not in autoassist mode.

... Autosticking is you staying behind your target and automatically finding the back. Autosticking is ON by default. If you turn it off, the macro will not move you around (just backstab when you should, evade when you should, etc.). Autosticking means "operate not only my hands, but my legs too, please" and "sticks" with your target.

-----------

VERSION 4.1 is posted... More new goodies! See original message for details.
--Jerle

Buuford
decaying skeleton
decaying skeleton
Posts: 6
Joined: Sun Apr 18, 2004 1:00 am

Post by Buuford » Thu May 20, 2004 8:53 pm

sorry to bother again =/

I'm trying the new feature /iset

used it as such
/iset levitation keepup fabled pegasus feather cloak

then when activated I'm spammed with
No such 'item' member 'Spell'
rh.mac@674 (Main):/varset itemspellname ${FindItem[${Ini[RHItems.ini,${ialias},FullName]}].Spell}

am I not using the /iset feature correctly?

also, when using /autoassist <ma> 95%
it will engage as soon as the ma targets the mob and not wait for the mobs health to reach 95%


thanks, and sorry to bother again =/

using v4.1

GD
a snow griffon
a snow griffon
Posts: 353
Joined: Sat Jun 29, 2002 11:57 pm

Post by GD » Thu May 20, 2004 10:41 pm

Buuford wrote:sorry to bother again =/

I'm trying the new feature /iset

used it as such
/iset levitation keepup fabled pegasus feather cloak

then when activated I'm spammed with
No such 'item' member 'Spell'
rh.mac@674 (Main):/varset itemspellname ${FindItem[${Ini[RHItems.ini,${ialias},FullName]}].Spell}

am I not using the /iset feature correctly?

also, when using /autoassist <ma> 95%
it will engage as soon as the ma targets the mob and not wait for the mobs health to reach 95%


thanks, and sorry to bother again =/

using v4.1
For the cloak, are you using Quotation Marks?
IE: /iset levitation keepup "Fabled Pegasus Feather Cloak"

For the assist %, you are putting in the tank name, correct?
IE: /autoassist Tankdude 95%

Now, on to the code addition!
To prevent lots of "Clicking: Blah" spam, add this:

Code: Select all

	} else {
		|- Just click it
		/if (${FindItem[${fullname}].InvSlot}) {
			/echo ** Clicking: ${fullname}
			/itemnotify ${FindItem[${fullname}].InvSlot} rightmouseup
		} else {
			/echo ** "${fullname}" not found!
		}
	}
[color=red]	:CastLoop
	/delay 1
	/if (${Me.Casting.ID}) /goto :CastLoop[/color]
/return

Sub Event_HelpInfo
Opinions are like assholes, everyone has one, but most of them stink.

Jerle69
a hill giant
a hill giant
Posts: 263
Joined: Wed Apr 28, 2004 3:26 pm

Post by Jerle69 » Fri May 21, 2004 12:23 am

I'm about to go post version 4.2. Some more nice changes in there...

With regards to Buuford's questions, GD answered them correctly.

If you wish to create an /iset for your cloak, you'd enter:

Code: Select all

/iset levitation keepup "Fabled Pegasus Feather Cloak"
If I were you, I'd just refer to it as Lev instead of levitation, because this is the alias by which you'd call it with an /iclick command: /iclick lev is easier to type than /iclick levitation.

I usually trap most of the more insane parsing errors that could happen, but I guess I didn't check this one thouroughly. OK... just patched a fix for it, and will put that in the v4.2 I'm about to post.

As far as your assist troubles, hrmmm... Don't enclose your main assist's name in <>'s, if that's what you're doing (I don't know if you are or not). If his name is Billybob, just use:

Code: Select all

/autoassist Billybob 95
...after you've loaded up RH and that'll do it. Version 4.2 introduces an INI file for all your settings so things will stay the way you want them after you've adjusted it to your liking. Keep tinkering; if you get the command input formats correct (and the /rhhelp will show you the correct syntax, by the way) it works without error.

GA:
Thanks for the fix there. I took a look at that portion of Event_ItemCast and noticed that if you had two keepup spells that were in your actual inventory, the second one would spam while the first one was being cast, assuming the first one wasn't insta-click. I never encountered that bug! Thanks... I incorperated your fix into version 4.2.

Enjoy!
--Jerle

GD
a snow griffon
a snow griffon
Posts: 353
Joined: Sat Jun 29, 2002 11:57 pm

Stop Sneaking during combat

Post by GD » Fri May 21, 2004 2:06 am

Code: Select all

Sub Event_AttackOn
  /echo Autoattack activated! Target: ${Target.CleanName}
  |- If we're sneaking, stop... since it serves no purpose and affects strafing
  /if (!${Me.AbilityReady["Sneak"]}) /doability "Sneak"
/return
More reliable as:

Code: Select all

Sub Event_AttackOn
  /echo Autoattack activated! Target: ${Target.CleanName}
  |- If we're sneaking, stop... since it serves no purpose and affects strafing
  /if (${Me.Sneaking}) /doability "Sneak"
/return
Opinions are like assholes, everyone has one, but most of them stink.