Page 18 of 29
Posted: Fri Dec 24, 2004 5:15 am
by gxs
This macro is very, very useful, and I've had to do a bit of modification in order to get it to work with my lower level cleric, but I'm having two problems, and I'm wondering if they're common problems, or something wrong on my part.
Sitting: It seems as if when I start the macro, the cleric will sit when I want him to, when he is not casting. (i use the autosit=2 setting) After a little while, he'll just stand for a long period of time after doing anything, which has made me resort to manual sitting, am I doing something stupidly wrong?
Spamming due to insufficient mana: When my cleric gets out of mana and has to heal someone, it will continuously spam the group with the announements (if i have them enabled, which i prefer) if I dont have enough mana. Is there a pointer anyone can give for it not to continously spam, but instead just med until it has sufficient mana to cast?
Posted: Fri Dec 24, 2004 7:01 am
by A_Druid_00
In answer to your 2nd question:
Add a Mana check to the /if statement that makes the decision to cast, long story short. I added a mana check to my druid macro to keep it from wasting time spamming heals when OOM.
Basically, if you change:
Code: Select all
/if ((${Target.Distance}<=${patchhealrange})&&(${Target.PctHPs}<=${Math.Calc[0.7*${healpct}]})&&(${Target.PctHPs}>=1)) {
/if (${announce}==1) /g Casting ${patchheal} on %T
/call Cast "${patchheal}" gem2 1s CheckHP
/delay 15 ${Me.SpellReady[${patchheal}]}
}
to:
Code: Select all
/if ((${Target.Distance}<=${patchhealrange})&&(${Target.PctHPs}<=${Math.Calc[0.7*${healpct}]})&&(${Target.PctHPs}>=1)&&(${Me.CurrentMana}<${Spell[${patchheal}].Mana})) {
/if (${announce}==1) /g Casting ${patchheal} on %T
/call Cast "${patchheal}" gem2 1s CheckHP
/delay 15 ${Me.SpellReady[${patchheal}]}
}
It will then only spam you when the client is lying to you and says you have enough mana. You know what I'm talking about.. when you hit the heal button and it tells you that you have insufficient mana, and then your mana total falls to what your actual mana total is according to the server or WTFever.
You'll have to repeat this for every /if statement that has a /call Cast ${SomeHealSpell}.
Alternatively you can just turn off announicing, and then he'll still spam, he just won't spam groupchat.
Of course, the most reliable way to do all these cast checks is by using the Spell ID # instead of the name; but that'd require more of a rework than I feel like explaining in this post.
Posted: Fri Dec 24, 2004 8:48 pm
by fantum409
The problem with cleric LoM causing spam is because your cleric, being lesser mana pool, does not have enough mana at 7% to get the heal spell off. Try changing these 2 lines:
Code: Select all
/if ((${Me.PctMana}<=7)&&(${announce}==1)&&(${oomspam}==1)) {
to:
Code: Select all
/if ((${Me.PctMana}<=10)&&(${announce}==1)&&(${oomspam}==1)) {
and then
Code: Select all
/if (${Me.PctMana}<=8) /goto :oomwait
to:
Code: Select all
/if (${Me.PctMana}<=11) /goto :oomwait
A_Druid_00 has a good point about use of datatypes. If I had been thinking about it when I wrote this, I would have used actual mana to decide if its med time or not, instead of taking a guess with mana pct. This could be adapted to do so; perhaps a statement that looks at mana costs for each healspell you've defined, then sub in a variable representing actual mana amt of the most costly spell in the 2 lines above.
As for the sit/stand issue, the cleric will stand pre-emptively, if people n your group are taking damage, even if not enough to trigger heals. I am guessing thats what your seeing. That could be changed, but would be a good bit of reading and editing. hehe. Try searching for /sit, and then /stand and see all the spots it can be triggerred. Then add a distinctive /echo command in that will trigger at the same time, so you can track it down more easily. Personally, I havent had any problem with it the way it is, but I am using high enough healpoints that if someone is 85% or lower, clr is casting anyway.
Posted: Sun Dec 26, 2004 7:02 pm
by vanemon
i am probably to stupid to change that settings for lom-spam which a_druid_00 posted above.
my cle still keeps crying his patchheals when hes zoning back after he got rezzed. any suggestions how to turn this off?
thx a lot in advance
Posted: Mon Dec 27, 2004 1:59 pm
by Busguy
The only time I have seen this program cause a cleric to stand when there are no mobs in the immediate vicinity is when he reaches full mana and doesnt need to sit/med. After next round of heals/buffs etc, he plops down again to med up.
Posted: Mon Dec 27, 2004 2:23 pm
by Clueless_Coder
I have to set /varset sit 0 to get my cleric to stay standing (useful for moving from camp to camp and so on)
Otherwise I sit whenever theres no mobs in camp and only stand again when I'm 99% mana.
Rinse repeat for the next pull.
Posted: Mon Dec 27, 2004 10:45 pm
by JimJohnson
just turn on yaulp your mana goes so much farther and never have to worry about sit agro.
Posted: Wed Dec 29, 2004 12:19 am
by Cuervolush
Need a hint. Used search and RTFM, never came up with this error. Got the same error with the online vs.net and the command line one from the HELP forum, leads me to believe its not the compilers issue heh.
error C2006: '#include' : expected a filename, found 'identifier'
and
fatal error C1083: Cannot open include file: '': No such file or directory
Question is why is it seeing spell_routines.inc as a "identifier" and not a filename? I've also tried pointing it directly to the .inc file to no avail. .inc file is in the mq2afcleric folder. I'm sure its something retarded but after reading posts for 2 days everything is starting to blend together. Any help on this one would be much appreciated.
Posted: Wed Dec 29, 2004 1:27 am
by Valerian
try running the macro in game instead of trying to compile it...
Posted: Wed Dec 29, 2004 3:17 am
by Neolesh
JimJohnson wrote:just turn on yaulp your mana goes so much farther and never have to worry about sit agro.
Partly correct. you sort of give the impression that Yaulp is just as good as medding so to be clear I'd point out that medding is 5 more mana per tick than Yaulp VII. But still good advice.
Posted: Wed Dec 29, 2004 4:13 am
by JimJohnson
Neolesh wrote:JimJohnson wrote:just turn on yaulp your mana goes so much farther and never have to worry about sit agro.
Partly correct. you sort of give the impression that Yaulp is just as good as medding so to be clear I'd point out that medding is 5 more mana per tick than Yaulp VII. But still good advice.
those 10 + seconds you stand casting your CH your getting no mana regen other then worn. if you have NOTHING going on yea sitting is better. if your in an active group yaulp is way better your mana stays up alot longer. even with sitting after each ch i would run oom on say Xuzl fight. If Yaulped every other CH i usually had 35+ mana at end of fight.
Can we add this?
Posted: Mon Jan 03, 2005 12:19 pm
by AEbard
Can we add a spot for designating who the puller is so if puller is low on health the mac won't instant heal and gain aggro and die?
Posted: Fri Jan 07, 2005 12:59 pm
by gohan4
Looking through here I thought I saw something about if in the middle of a CH and the MT gets to low to finish it, there was a way to duck out and fast heal?..I can not seem to find that now. Can someone point me in the right direction? My MT's are dieing!
Thanks
Posted: Fri Jan 07, 2005 1:12 pm
by A_Druid_00
I don't think anyone posted that here. Neolesh did post code similar to that in my Raid Druid thread though.
Code: Select all
/if (${Spawn[${TankID}].PctHPs}<${Math.Calc[${MTHP}*0.5]} && ${castEndTime}>37) {
/call Interrupt
/if (${Target.ID}==${TankID}) /call CastSpell "${LightMsg}" "${TankHS}" spell CheckHP
/return
}
You'll have to change the name of the variables to match whatever it is AFCleric uses, but it'd fit in here.
Posted: Fri Jan 07, 2005 1:47 pm
by gohan4
Thanks for the reply, I am at work atm so I'm going to play with it and see if I can find where it fits. I am new to this, but have read alot about what some of the code means and does so I might be able to do it.