Necro mac

..lol. you have to put in a minimal amount of effort. If you are using this entirely afk, this isnt the macro for you. This is designed with you controlling 1 toon at a camp and automating the rest. Yes, i could make it do that. No, I am not going to. AFK macros with nobody at the keyboard brings bad attention to mq2 and it just isnt my philosophy to publish entirely AFK macros that do absolutely everything.

That said:
For what you are describing, you probably want a /makecamp on/off. and adjust the settings.

You can set your leash radius to 40, and have a simple downshit or add a line in the macro that says:

/if (${Group.MainTank.Distance}<40 && ${Math.Distance[${Me.Y},${Me.X}:${MakeCamp.AnchorY}
,${MakeCamp.AnchorX]}>30 && && ${Macro.Name.Equal[necro.mac]}==TRUE) /makecamp ${Group.MainTank.Loc}


That would seem to be what you need. then you can just /makecamp on, /makecamp off when you start or stop the macro.
 
i'm sorta at the keyboard... lol just not completely here... taking care of a kid and having a friend wanting help with dps... lol but that little fix works...
 
any one have a ini set up for a lvl 90 necro just like a starting point
 
Hey Pete,

Any idea why my Recourse of mana drain aint working?

here's my ini parameter:

RecourseTotal=1

UseRecourse1=TRUE
Recourse1HPAt=100
Recourse1ManaAt=90
Recourse1SpellName=Thought Flay rk. ii
Recourse1Name=Thought Flay recourse
Recourse1Gem=gem12
 
I apologize that I've neglected updating this thread. The guy that was testing necro mac for me hasnt replied in quite some time. The reason that doesnt work is because that entire recourse routine is filled with variable typos and incorrect variables that i never noticed from inability to test. I redid it but didnt put it in the macro yet. I dont have a necro to actually test this macro any more, and people tend to only tell you a macro is broken but not provide feedback with the actual lines of code the error message says, so i cant verify everything works together.

This recourse routine DOES work for me, you should be able to just delete your current routine out and replace it with this one:

Code:
Sub Recourse
/if (!${Defined[recourselist]}) /declare recourselist string outer MNK|ROG|WAR|BER|BRD
 /if (!${RecourseTotal} ||${Me.Invis}||${IgnoreList.Find[${Spawn[${Target.CleanName}]}]}||${Target.Type.Equal[corpse]}||${Target.Type.Equal[pc]}||${Target.Type.Equal[pet]}) /return
 /declare x int local
/for x 1 to ${RecourseTotal} {
 /declare i int local
 /for i 0 to ${Group} {
  /if (${UseRecourse${x}} && ${Group.Member[${i}].PctHPs}<${Recourse${x}HPAt} && ${Group.Member[${i}].ID}||${Group.Member[${i}].PctMana}<${Recourse${x}ManaAt} && !${recourselist.Find[${Group.Member[${i}].Class.ShortName}]}) {
    /if ((${Group.Member[${i}].Type.Equal[PC]}||${Group.Member[${i}].Type.Equal[mercenary]}) && ${Group.Member[${i}].ID}) {
           /if (!${Me.Buff[${Recourse${x}Name}].ID} && !${Me.Song[${Recourse${x}Name}].ID} && (${Me.SpellReady[${Recourse${x}SpellName}]}||${Me.AltAbilityReady[${Recourse${x}SpellName}]}||${FindItem[${Recourse${x}SpellName}].InvSlot} && !${FindItem[${Recourse${x}SpellName}].Timer})) {
             /call Cast "${Recourse${x}SpellName}" ${Recourse${x}Gem}
         /if (${Plugin[MQ2CEcho].Name.Equal[MQ2CEcho]} && ${EchoAnnounce}) /cechob \amRecourse${x}: ${Recourse${x}SpellName}
        /if (!${Plugin[MQ2CEcho].Name.Equal[MQ2CEcho]} && ${EchoAnnounce}) /echo Recourse${x}: ${Recourse${x}SpellName}    
            }
            }
 
      }
    }
  /next i
}
/next x
/return

I added a bunch of .inc on the macro builder snippet thread. This was one of them. Those ones all work from my testing. But i cant necessarily test them in every environment. The part with necros that can screw things up is the FDing as deaggro vs on purpose to afk safely. It messes with how you want routines to function just enough that its not good enough to use another class that i have access to in order to test how the routines interact with each other.
 
Thanks Pete testing this out tonight. Funny that you mention the FD, is there a way to incorporate such as to make the necro FD after a certain amount of dots? My necro is dying pretty often due to aggro+summon, I had to lower all my dots to the non-fast ones that do high dmg & limit the number to 5 or he died nearly every single fight.

P.S: I'm willing to test with you about it and give you the errors it gives me, is there a way with a plugin for me to log this so I can properly paste it to you, I remember I saw something about logging feature.
 
in your ini already:

UseFD=TRUE
FDCount=5
FDat=50
FDSpell=Death Peace
FDSpellGem=alt
FDStandAt=70

that would make it FD after every 5 dots/nukes.
 
How would be the best way to configure a Death Bloom AA on low mana only in a fight situation to make sure he can lifetap himself while making sure the mob hp is high enough to sustain more than 1 tap?
 
You cant really figure out if a mob would support multiple lifetaps. you would have to guess that say a mob was level 80 or higher and above 20% that maybe you can get 2 taps off. but youd need to know your group's dps, and the mobs hp to do it smartly. You could use the SmartDPS routine to figure out if theres at least 10 seconds left on target mob or 20 seconds or whatever.

Beyond coding it to use death bloom when your mana reaches x%, and you are in combat, and you have at least y% hp, you dont really get much more precise.

There was a death bloom check in the CheckMana routine that was hardcoded:
Code:
  /if (!${Me.Invis} && ${Me.PctHPs}>80 && ${Me.PctMana}<80 && ${Me.AltAbilityReady[Death Bloom]} && ${Zone.ID}!=345 && ${Zone.ID}!=344 && ${Zone.ID}!=202 && ${Zone.ID}!=151) /call Cast "Death Bloom" alt

you could add a ${Me.CombatState.Equal[COMBAT]} check. you could consider replacing the entire CheckMana routine with the one i posted in macro builder thread and define death bloom as one of your manaboost spells.
 
Ok where in the mac should I paste that line?

Also if I want to make the necro use lifetap on specific hp% the Nuke section only mentions the mob hp but I'd rather base it on my own so that he would start tapping if he gets low to heal himself. Could I use the AA section to put it?
 
the death bloom goes in the check mana routine, and should already be there depending on the version of the macro you are using.

I could never get the lifetap routine to work 100% correctly even though its not hard. I must have been typoing something, at any rate, i removed it because you can do lifetaps through AAs.

there is a line in the AA routine: "&& ${Me.PctHPs}<=${UseAA${a}AtMyHPs}) {"


So what you can do is set your lifetap as AA1 or 2 so it always gets checked pretty high on the list. So say you want it as AA2, set your UseAA2AtMyHPs to be whatever % of your health you want to lifetap at.

example:
Code:
AA2=Divert Essence
AAGem2=gem1
UseAA2=TRUE
UseAA2At=95
NamedOnlyUseAA2=FALSE
UseAA2IfNearby=npc
UseAA2IfNearbyAMT=1
[COLOR=Yellow]UseAA2AtMyHPs=75[/COLOR]
StopAA2At=1
 
Hey Pete,

Sadly the fix you had posted to make the Mana Recourse work is also causing me wipe, basically in-between fights necro will keep spamming "You must first select a target for this spell" and as soon as my master assist (bard) click anything PC/NPC it will cast it right away even if the mob HP is @ 100%, so sometimes when I want to mez pull necro start casting it right away and end up training my whole group, any way to make it added so it only starts with the normal "CombatAt" loop? its really annoying but again I need that mana... =/
 
well ya.. just move it there. or change your settings. or add && ${Me.CombatState.Equal[COMBAT]}
 
Where/how would be the best way to add that line?

P.S: in the "UseDebuff" section I added Scent of Terris the AA @ DebuffAT=95 default, and even if it lands succesfully he recasts it in-between spells nonstop whole fight. Can you fix this?
 
Last edited:
add the recourse stuff on the line that checks the rest of the things in the recourse sub.

for scent of terris: just add it as your first Dot instead of a debuff if that causes issues. dot and debuff perform the same exact function, its just for some classes, certain debuffs are a priority (malo, slow, tash, etc) to it can be nice to distinguish them. but dots will always fire in order (sometimes skip 1 thanks to lag), so if you want scent first, put it as first dot.
 
Dot1=Scent of Terris
DotGem1=alt
DotMaxTries1=2

He doesnt cast it =/
 
Sigh. Working with these old macros that I have no characters to test with is a nuisance. I can't see an issue with the #event Debuffed and even though there are 2 "Scent of Terris" in the spelldat, it shouldnt matter. This is all solved in the newer version of dots routine that i wrote. But I can just slap that one in here without modding the macro to not check for your other stuff.


My best educated guess: you have spell filters turned off for when spells land on mobs.. those have to be turned on to detect. OR.. you are out of range to see that message and so you dont know it has been debuffed because of how the event is checked.
 
I have maxed leadership AA, I get to see that the debuff was never on the mob during whole fight and looking at the necro screen he goes right to DoT2