autodebuff.mac - Auto radius debuff macro - *New Parm Rdy*

A forum for you to dump all the macros you create, allowing users to use, modify, and comment on your work.

Moderator: MacroQuest Developers

JimJohnson
a grimling bloodguard
a grimling bloodguard
Posts: 1299
Joined: Sat Oct 11, 2003 6:00 am

Post by JimJohnson » Mon Apr 12, 2004 9:46 am

Sweet now I can swap over finally =)

ml2517
a grimling bloodguard
a grimling bloodguard
Posts: 1216
Joined: Wed Nov 12, 2003 1:12 am

Post by ml2517 » Thu Apr 15, 2004 8:09 pm

Updated:
Fixed a few bugs that reared their heads with the 4/15 update. Please let me know if you see any more with this version.

ml2517
a grimling bloodguard
a grimling bloodguard
Posts: 1216
Joined: Wed Nov 12, 2003 1:12 am

Post by ml2517 » Fri Apr 16, 2004 7:50 pm

Updated:
Added two new parameters to the INI:
SelfBuffIconCheck -- Set this to 1 if you want to have the macro check for a particular buff icon and refresh if it isn't seen.
SelfBuffIconName -- This is the name of the buff icon that it looks for if SelfBuffIconCheck is set to 1.

Example (This would make sure you kept your horse summoned):
SelfBuff1=item White Rope Bridle
SelfBuffDuration1=3600
SelfBuffAtStart1=0
SelfBuffIconCheck1=1
SelfBuffIconName1=Summon Horse

The behavior of the above would be:
It would NOT automatically summon your horse when you first started the macro. You would have to issue the rebuff 1 or rebuff command in order to start it off. (This is because of your SelfBuffAtStart1 setting of 0.)
Once you'd issued the rebuff 1 or rebuff command it would then wait 3600 seconds before refreshing OR if it doesn't seen the "Summon Horse" buff icon.

Anyways you get the idea.

ml2517
a grimling bloodguard
a grimling bloodguard
Posts: 1216
Joined: Wed Nov 12, 2003 1:12 am

Post by ml2517 » Fri Apr 16, 2004 8:51 pm

Updated:
Added some Aggro checking to the Sit code. You will now sit even if mobs are in your radius as long as the mob isn't directly facing you.

Please let me know if you have any problems with this addition.

NotHere
a lesser mummy
a lesser mummy
Posts: 40
Joined: Fri Jan 09, 2004 5:59 am

Post by NotHere » Sat Apr 17, 2004 1:36 am

Have a small problem with 1.25

If events and debuffs are paused from the beginning, doing

/echo hold

or

/echo events

unpauses them, but then instantly pauses them again?
NotHere
/afk

ml2517
a grimling bloodguard
a grimling bloodguard
Posts: 1216
Joined: Wed Nov 12, 2003 1:12 am

Post by ml2517 » Sat Apr 17, 2004 1:51 am

You sure? I'll be posting a new version soon anyway with some changes, let me know how it works with 1.26

ml2517
a grimling bloodguard
a grimling bloodguard
Posts: 1216
Joined: Wed Nov 12, 2003 1:12 am

Post by ml2517 » Sat Apr 17, 2004 2:14 am

Updated:
Adding group healing functions. Most of it is done, I'm still going to try to come up with something that can allow it to pick a preference based on the class it is healing.

iluvseq
Clueless Mudslinger
Posts: 269
Joined: Mon Apr 14, 2003 10:05 am

Post by iluvseq » Sat Apr 17, 2004 2:29 am

Whacked, thanks ml2517.
Last edited by iluvseq on Sat Apr 17, 2004 1:04 pm, edited 1 time in total.

ml2517
a grimling bloodguard
a grimling bloodguard
Posts: 1216
Joined: Wed Nov 12, 2003 1:12 am

Post by ml2517 » Sat Apr 17, 2004 2:36 am

iluvseq,
You can go ahead and wack that post if you want, I've merged it all in.

ml2517
a grimling bloodguard
a grimling bloodguard
Posts: 1216
Joined: Wed Nov 12, 2003 1:12 am

Post by ml2517 » Sat Apr 17, 2004 3:33 am

Updated:
autodebuff.mac
autodebuff.txt
spellcast.inc (Make sure to re-grab this or the announce feature isn't going to work correctly.)



Merged in the bugfix from iluvseq's post as well as the announce feature.

From iluvseq's post above:

Added the ability to have the character /gsay or /rsay the first time a buff is cast on a mob.

ie: (in the INI)

DebuffAnnounce1=MEZZED
DebuffAnnounce2=TASHANED

Announce=1
AnnounceChannel=raid

Will do:
/rsay MEZZED [ a wooly mammoth ]
The first time a given mob is mezzed. It won't say it again for as long as that NPC is in camp, but if a second "a wooly mammoth" is pulled, it will announce it for the new mob.

/echo announce will turn this on and off.

DebuffAnnounce1=NULL will set a given debuff to not announce (ie: so you can announce mezzes, but not nukes if you like)

ml2517
a grimling bloodguard
a grimling bloodguard
Posts: 1216
Joined: Wed Nov 12, 2003 1:12 am

Post by ml2517 » Sat Apr 17, 2004 5:21 am

Updated:
autodebuff.mac

Added the HealClass INI setting. Leave all classes in unless you specifically DO NOT want to heal a class with the corresponding heal spell.

For instance this would heal Warriors, Shadowknights and Paladins with Complete Healing and all the rest with Supernal Remedy:

Code: Select all

HealSpell1=Supernal Remedy
HealSpell2=Complete Healing

HealMinHP1=0
HealMinHP2=35

HealMaxHP1=60
HealMaxHP2=50

HealMinMana1=0
HealMinMana2=0

HealMinGroupCount1=0
HealMinGroupCount2=0

HealClass1=RNG|MNK|ROG|BRD|BST|BER|SHM|CLR|DRU|WIZ|MAG|ENC|NEC
HealClass2=WAR|SHD|PAL
I'll try to work in announcements for the healing spells tomorrow some time.

ml2517
a grimling bloodguard
a grimling bloodguard
Posts: 1216
Joined: Wed Nov 12, 2003 1:12 am

Post by ml2517 » Sat Apr 17, 2004 2:30 pm

Updated:
autodebuff.mac

Added in announcements for heals. If you set the announcement to NULL it won't send a message. I've also changed the debuff announcements and heal announcements to use %T just to be safe.

If you are casting a Group heal or a heal that has a minimum group count over 0 it will *Only* send the heal announcement and not a target name.

Fixed a bug that might cause the healer to skip themselves in the healing process.

iluvseq
Clueless Mudslinger
Posts: 269
Joined: Mon Apr 14, 2003 10:05 am

Post by iluvseq » Sat Apr 17, 2004 3:35 pm

Actually, just do this:

Code: Select all

/newif ((${Macro.Return.Equal["CAST_SUCCESS"]})&&(@Announce==1)&&(${String["@debannounce"].NotEqual["NULL"]})) {
    /newif ${String["@AnnounceChannel"].Equal["group"]} {
      [color=red]/gsay @debannounce[/color]
    }
    /newif ${String["@AnnounceChannel"].Equal["raid"]} {
      [color=red]/rsay @debannounce[/color]
    }
And then put :
DebuffAnnounce1=MEZZED [ %t ]

in the Ini file. That way it's not hard coded at all, folks can use whatever "EQ string" they want for the announcement.

Also, bugfix:

Code: Select all

/newif @MobAnnounced(@a,@b)==0 {
  /call Debuff @MobList(@a) "@Debuff(@b)" "@DebuffAnnounce(@b)"
} else {
  /call Debuff @MobList(@a) "@Debuff(@b)" "NULL"
}

/newif ${Macro.Return.Equal["NODELAY"]} {
  [color=red]/varset MobAnnounced(@a,@b) 1[/color]
  /newif @DebuffDuration(@b)==99999 {
The /varset MobAnnounced(@a,@b) 1 line is missing in your most recent version, which disables "only announce once" ... ie: without that line, the macro spams an announcement every time it re-debuffs a mob.

Might should make that a parameter (DebuffAnnounceOnce=1) or something, but I assume most folks will only want announcements the first time a given mob is debuffed, not every single time.

ml2517
a grimling bloodguard
a grimling bloodguard
Posts: 1216
Joined: Wed Nov 12, 2003 1:12 am

Post by ml2517 » Sat Apr 17, 2004 3:48 pm

Updated:
autodebuff.mac

bugfixes:
Will now only announce once per debuff.
There was a problem where if your heal wasn't successfull it would still mark the group member as having on a HoT on them.


Your announce messages are completely based on what is in your INI file now.

Examples:

Code: Select all

HealAnnounce1=Group Heal Inc!
HealAnnounce2=Complete Healing incoming for -[ %T ]-

DebuffAnnounce1=AE Tash Inc!
DebuffAnnounce2=Debuffing -[ %T ]- with Malosi!

ml2517
a grimling bloodguard
a grimling bloodguard
Posts: 1216
Joined: Wed Nov 12, 2003 1:12 am

Post by ml2517 » Sat Apr 17, 2004 3:49 pm

iluvseq wrote: Might should make that a parameter (DebuffAnnounceOnce=1) or something, but I assume most folks will only want announcements the first time a given mob is debuffed, not every single time.
I'll work on that after I get back from my movie.