Macro Bot.mac Updates and Bug Fixes by [40oz]

Hey Poly, I agree with you on the Sub IniLoad issues. I've reworked it a bit however. Trying to aim for efficiency as things are changed. While I agree it is a very mild change, as this thing has grown it has lacked any attempt at efficiency when it comes to the number of if statements evaluated, often times it finds itself doing 10 back to back if statements when it should be done as if/then/else to limit the amount of information parsed. So instead of 4 different evaluations each time, this could come up as only 2 with a max of 4, in the case where the variable hasn't been defined and the default isn't null, there will be only 2 total evaluations, with the most evaluations being if the variable has been defined and default is not null. If all portions of code were coded in this manner the time for a complete iteration through the check could have been reduced in half or more. However, with all the additional checks to see if things have been defined in the first place this is kinda working backwards to pick up lost processing time created by the change. Hopefully we can limit processor usage and increase efficiency as we move forward.

Code:
	/if (!${Defined[${var}]}) {
		/if (${default.Equal[Null]}) {
			/declare ${var} ${vartype} outer ${MMOIni[${ininame},${sec},${var}]}
		} else {
			/declare ${var} ${vartype} outer ${MMOIni[${ininame},${sec},${var},${default}]}
		}
	} else {
		/if (${default.Equal[Null]}) {
			/varset ${var} ${MMOIni[${ininame},${sec},${var}]}
		} else {
			/varset ${var} ${MMOIni[${ininame},${sec},${var},${default}]}
		}
	}

As for the Mez sub when I run the compare they come back as unchanged. I'm not sure if I missed something, or if you've perhaps provided the incorrect copy of the sub, as I see you've downloaded my copy of the latest bot40.mac it is possible that you've mistakenly sent me the current sub.
 
Last edited:
Any feedback to be had from the community on this. What's still broken that needs to be fixed?
 
ill test it tonight and let you know
 
OK tried it, zerkers are still just standing around and cleric and shaman dont seem to be healing at all since my bard is at 10% health lol. The mQ window keeps saying Macro is paused and a undeclared DoBurn no the zerkers. The Cleric did rez a dead body prior to the macro pausing tho. The Doburn is on line 6413 /squelch /moveto set stucklogic on then it just says macro paused again
 
Last edited:
Hey Poly, I agree with you on the Sub IniLoad issues. I've reworked it a bit however. Trying to aim for efficiency as things are changed. While I agree it is a very mild change, as this thing has grown it has lacked any attempt at efficiency when it comes to the number of if statements evaluated, often times it finds itself doing 10 back to back if statements when it should be done as if/then/else to limit the amount of information parsed. So instead of 4 different evaluations each time, this could come up as only 2 with a max of 4, in the case where the variable hasn't been defined and the default isn't null, there will be only 2 total evaluations, with the most evaluations being if the variable has been defined and default is not null. If all portions of code were coded in this manner the time for a complete iteration through the check could have been reduced in half or more. However, with all the additional checks to see if things have been defined in the first place this is kinda working backwards to pick up lost processing time created by the change. Hopefully we can limit processor usage and increase efficiency as we move forward.

Code:
	/if (!${Defined[${var}]}) {
		/if (${default.Equal[Null]}) {
			/declare ${var} ${vartype} outer ${MMOIni[${ininame},${sec},${var}]}
		} else {
			/declare ${var} ${vartype} outer ${MMOIni[${ininame},${sec},${var},${default}]}
		}
	} else {
		/if (${default.Equal[Null]}) {
			/varset ${var} ${MMOIni[${ininame},${sec},${var}]}
		} else {
			/varset ${var} ${MMOIni[${ininame},${sec},${var},${default}]}
		}
	}

As for the Mez sub when I run the compare they come back as unchanged. I'm not sure if I missed something, or if you've perhaps provided the incorrect copy of the sub, as I see you've downloaded my copy of the latest bot40.mac it is possible that you've mistakenly sent me the current sub.


Gah, I have so many copies of files open, I keep getting mixed up!

Lets try again on mez!

Code:
|mez start

Sub MezLoad
	/call Debug 3 "In Sub MezLoad"
	/varset CurrentSub Mez
	/if (!${Defined[MezLoaded]}) /declare MezLoaded int outer 0
	|/if (${${CurrentSub}Loaded}) /return
	/if (!${Defined[MezLoaded]}) /varset MezLoaded int outer 1
  	/if (!${Defined[mezcnt]})  /declare mezcnt int outer
  	/if (!${Defined[aemezcnt]}) /declare aemezcnt int outer
  	/if (!${Defined[PBAEMezcnt]}) /declare PBAEMezcnt int outer
  	/if (!${Defined[notmezcnt]}) /declare notmezcnt int outer
	/declare BeamTimer timer outer 5s
	/declare MezList string outer |
	/declare MezMaxNPCLevel int outer
	/declare AEMezMaxNPCLevel int outer
	/declare PBAEMezMaxNPCLevel int outer
	/declare FinalMezMaxNPCLevel int outer
	/declare MezBuffer timer outer
	/declare BeamUsed int outer 0
	/declare IgnoreImmuneLists bool outer ${Ini[Bot_${Me.CleanName}_${Me.Class}.ini,Mez,IgnoreImmuneLists,FALSE]}
	/if (!${IgnoreImmuneLists}) /mmoini "MyIni" "Mez" "IgnoreImmuneLists" "FALSE"
	/declare DontMezConColor string outer ${Ini[Bot_${Me.CleanName}_${Me.Class}.ini,Mez,DontMezConColor,|GREY|GREEN|]}
	/declare b int local
	/declare x int local
	/declare i int local 0
	/declare numEffects int local
	/if (${Select[${Me.Class.ShortName},NEC]}) /varset i 2
	/if (${Select[${Me.Class.ShortName},BRD]}) /varset i 4
	/if (${Select[${Me.Class.ShortName},ENC]}) /varset i 6
	/varset tempsubtotal ${Ini[Bot_${Me.CleanName}_${Me.Class}.ini,${CurrentSub},${CurrentSub}Total]}
	/if (${NeedLoad} && !${tempsubtotal} && ${i}) {
		/mmoini "MyIni" "Mez" "DontMezConColor" "|GREY|GREEN|"
		/call SpellLoad "${CurrentSub}" ${i} "|1|3|4|6|30|" "|${i}|TRUE|PH|PH|PH|"
	}
	/varset ${CurrentSub}Total ${Ini[MyIni,${CurrentSub},${CurrentSub}Total,0]}
	/call SpellLoad2 "${CurrentSub}" "3|4|6|30|"
	/declare ${CurrentSub}MaxNPCLevel${x} int outer 0
	/for x 1 to ${${CurrentSub}Total}
		/varcalc numEffects ${Spell[${${CurrentSub}SpellName${x}}].NumEffects}
		/for b 1 to ${numEffects}
			/if (${Spell[${${CurrentSub}SpellName${x}}].Subcategory.Equal[Enthrall]}) {
				/if (${Spell[${${CurrentSub}SpellName${x}}].Max[${b}]}>${MezMaxNPCLevel}) /varset MezMaxNPCLevel ${Spell[${${CurrentSub}SpellName${x}}].Max[${b}]}
			}
		/next b
	/next x

	/varset CurrentSub AEMez
	/if (${NeedLoad} && !${Defined[${CurrentSub}Total]} && ${Select[${Me.Class.ShortName},ENC]}) {
		/mmoini "MyIni" "Mez" "DontMezConColor" "|GREY|GREEN|"
		/call SpellLoad "${CurrentSub}" 1 "|1|3|4|6|30|" "|1|TRUE|PH|PH|PH|"
	}
	/varset ${CurrentSub}Total ${Ini[MyIni,${CurrentSub},${CurrentSub}Total,0]}
	/call SpellLoad2 "${CurrentSub}" "3|4|6|30|"
	/declare ${CurrentSub}MaxNPCLevel${x} int outer 0
	/for x 1 to ${${CurrentSub}Total}
		/varcalc numEffects ${Spell[${${CurrentSub}SpellName${x}}].NumEffects}
		/for b 1 to ${numEffects}
			/if (${Spell[${${CurrentSub}SpellName${x}}].Subcategory.Equal[Enthrall]}) {
				/if (${Spell[${${CurrentSub}SpellName${x}}].Max[${b}]}>${${CurrentSub}MaxNPCLevel}) /varset ${CurrentSub}MaxNPCLevel ${Spell[${${CurrentSub}SpellName${x}}].Max[${b}]}
			}
		/next b
	/next x

	/varset CurrentSub PBAEMez
	/if (${NeedLoad} && !${Defined[${CurrentSub}Total]} && ${Select[${Me.Class.ShortName},ENC,BRD]}) {
		/mmoini "MyIni" "Mez" "DontMezConColor" "|GREY|GREEN|"
		/call SpellLoad "${CurrentSub}" 1 "|1|3|4|6|30|" "|1|TRUE|PH|PH|PH|"
	}
	/varset ${CurrentSub}Total ${Ini[MyIni,${CurrentSub},${CurrentSub}Total,0]}
	/call SpellLoad2 "${CurrentSub}" "3|4|6|30|"
	/declare ${CurrentSub}MaxNPCLevel${x} int outer 0
	/for x 1 to ${${CurrentSub}Total}
		/varcalc numEffects ${Spell[${${CurrentSub}SpellName${x}}].NumEffects}
		/for b 1 to ${numEffects}
			/if (${Spell[${${CurrentSub}SpellName${x}}].Subcategory.Equal[Enthrall]}) {
				/if (${Spell[${${CurrentSub}SpellName${x}}].Max[${b}]}>${PBAEMezMaxNPCLevel}) /varset PBAEMezMaxNPCLevel ${Spell[${${CurrentSub}SpellName${x}}].Max[${b}]}				
			}
		/next b
	/next x
	/varset FinalMezMaxNPCLevel ${MezMaxNPCLevel}
	/if (${AEMezMaxNPCLevel}>${FinalMezMaxNPCLevel}) /varset FinalMezMaxNPCLevel ${AEMezMaxNPCLevel}
	/if (${PBAEMezMaxNPCLevel}>${FinalMezMaxNPCLevel}) /varset FinalMezMaxNPCLevel ${PBAEMezMaxNPCLevel}

	/call Debug 2 "MezMaxNPCLevel = ${MezMaxNPCLevel} | AEMezMaxNPCLevel: ${AEMezMaxNPCLevel} | PBAEMezMaxNPCLevel: ${PBAEMezMaxNPCLevel}"
	/call Debug 3 "Leaving Sub MezLoad"
/return

Sub MezClear(int MezMobID)
	/if (${Defined[MezTimer${MezMobID}]}) /deletevar ${MezTimer${MezMobID}}
/return

Sub Mez
	/call Debug 3 "In Sub Mez"
	/if (${Me.Hovering}) {
		/call Debug 3 "Leaving Sub Mez - In Hover State"
		/return
	}
	/varset CurrentSub Mez
	/if (!${Defined[${CurrentSub}Loaded]}) /call ${CurrentSub}Load
  	/if ((!${MezUse1} && !${AEMezUse1} && !${PBAEMezUse1}) || ${NeedLoad} || (${Me.Invis} && !${AutoBreakInvis})) {
	  	/call Debug 3 "Leaving Sub Mez - Mez Options not configured properly or can't break invis."
		/return
	}
  	/if (${Me.Class.ShortName.Equal[BRD]} && (!${Me.Gem[${PBAEMezSpellName1}]}||${Me.GemTimer[${PBAEMezSpellName1}]})) {
	  	/call Debug 3 "Leaving Sub Mez - Bard with no PBAEMez spell, unsupported combination"
		/return
	}

	/declare m int local
  	/declare i int local
  	/declare x int local

  	/varset TarID ${Me.XTarget[1].ID}
	/if (!${Defined[MezTimer${TarID}]}) /Declare MezTimer${TarID} timer outer 0
  	/if (${TarID} && ${MezTimer${TarID}}) /varset MezTimer${TarID} 0
  	/varset mezcnt 0
  	/varset aemezcnt 0
  	/varset PBAEMezcnt 0
  	/varset notmezcnt 0

  	/for m 1 to ${MezList.Count[|]}
		/if (${MezList.Length}>1 && ${MezList.Arg[${m},|].NotEqual[|]} && (!${Spawn[id ${MezList.Arg[${m},|]}].ID}||!${AddList.Find[${MezList.Arg[${m},|]}]})) /varset MezList ${MezList.Replace[${MezList.Arg[${m},|]},]}
		/if (${MezList.Find[||]}) /varset MezList ${MezList.Replace[||,|]}
  	/next m
	
	/call Debug 3 "MezList: ${MezList}"
	/call Debug 3 "AddList: ${AddList}"

  	/for m 1 to ${AddList.Count[|]}
		/if (!${MezList.Find[${AddList.Arg[${m},|]}]} && (${IgnoreImmuneLists}||!${MezImmuneList.Find[${Spawn[id ${AddList.Arg[${m},|]}].CleanName}]}) && ${AddList.Arg[${m},|]}!=${TarID} && !${DontMezConColor.Find[${Spawn[id ${AddList.Arg[${m},|]}].ConColor}]} && !${Spawn[id ${AddList.Arg[${m},|]}].CleanName.Find[_pet]} && ${Spawn[id ${AddList.Arg[${m},|]}].ID} && ${Spawn[id ${AddList.Arg[${m},|]}].Level}<=${FinalMezMaxNPCLevel}) {
			/if (${Defined[MezTimer${AddList.Arg[${m},|]}]}) /varset MezTimer${AddList.Arg[${m},|]} 0
			/varset MezList ${MezList}${AddList.Arg[${m},|]}|
		}
  	/next m
  
	/call Debug 3 "MezList after AddList Loop: ${MezList}"

  	/for m 1 to ${MezList.Count[|]}
		/if (!${Defined[MezTimer${MezList.Arg[${m},|]}]}) /declare MezTimer${MezList.Arg[${m},|]} timer outer 0
		/if (${Spawn[id ${MezList.Arg[${m},|]}].Distance}<100 && ${Spawn[id ${MezList.Arg[${m},|]}].Level}<=${MezMaxNPCLevel} && !${MezTimer${MezList.Arg[${m},|]}}) /varcalc mezcnt ${mezcnt}+1
		/if (${Spawn[id ${MezList.Arg[${m},|]}].Distance}<100 && ${Spawn[id ${MezList.Arg[${m},|]}].Level}<=${AEMezMaxNPCLevel} && !${MezTimer${MezList.Arg[${m},|]}}) /varcalc aemezcnt ${aemezcnt}+1
		/if (${Spawn[id ${MezList.Arg[${m},|]}].Distance}<35 && ${Spawn[id ${MezList.Arg[${m},|]}].Level}<=${PBAEMezMaxNPCLevel} && !${MezTimer${MezList.Arg[${m},|]}}) /varcalc PBAEMezcnt ${PBAEMezcnt}+1
  	/next m

	/call Debug 3 "mezcnt: ${mezcnt} | aemezcnt: ${aemezcnt} | PBAEMezcnt: ${PBAEMezcnt}"

	| Note: PBAEMezzing is currently only supported on bards.  Loop will run but take no action when not a bard.
	/varset CurrentSub PBAEMez
	/for i 1 to ${PBAEMezTotal}
 		/if ((${PBAEMezcnt}>2||${PBAEMezcnt}>0 && ${AddCount}>1 && ${SpawnCount[npc radius 35]}>1 && ${Me.Class.ShortName.Equal[BRD]}) && (${Me.SpellReady[${PBAEMezSpellName${i}}]}||${Me.AltAbilityReady[${PBAEMezSpellName${i}}]}||${Me.Class.ShortName.Equal[BRD]} && ${Me.Gem[${PBAEMezSpellName${i}}]} && !${Me.GemTimer[${PBAEMezSpellName${i}}]}) && ${Me.CurrentMana}>${Spell[${PBAEMezSpellName${i}}].Mana} && ${PBAEMezUse${i}}) {
			/if (!${Me.Class.ShortName.Equal[BRD]}) /call MezAdd "${PBAEMezSpellName${i}}" "${PBAEMezSpellGem${i}}" ${Target.ID} 
			/if (${Me.Class.ShortName.Equal[BRD]}) {
				/if (${Twist.Twisting}) {
					/varset twisting TRUE
					/squelch /twist stop
				}
			
				/delay !${Me.Casting.ID}
				/squelch /twist once ${Me.Gem[${PBAEMezSpellName${i}}]}
				/call ${EchoSub} "${DarkYellow} ${PBAEMezSpellName${i}}"
				/varset BeamUsed 1
				/varset BeamTimer ${BeamTimer.OriginalValue}
				/doevents
				/if (${Verbose} && ${MyChannel.NotEqual[NULL]}) /docommand /${MyChannel} ${PBAEMezSpellName${i}}
				/delay 38
				/twist
				/return
			}	
		}
	/next i
	
	/if (${twisting} && !${Twist.Twisting}) {
		/squelch /twist start
		/varset twisting FALSE
	}

	/varset CurrentSub AEMez
   	/for m 1 to ${MezList.Count[|]}
		/for i 1 to ${AEMezTotal}
  			/if (${aemezcnt}>2 && (${Me.SpellReady[${AEMezSpellName${i}}]}||${Me.AltAbilityReady[${AEMezSpellName${i}}]}) && ${Me.CurrentMana}>${Spell[${AEMezSpellName${i}}].Mana} && !${MezTimer${MezList.Arg[${m},|]}} && ${MezList.Arg[${m},|]}>0 && ${Spawn[id ${MezList.Arg[${m},|]}].ID} && ${AEMezUse${i}}) {
			  	/call Debug 3 "Trying to AE Mez using ${AEMezSpellName${i}} on ${MezList.Arg[${m},|]}"
				/squelch /tar id ${MezList.Arg[${m},|]}
				/call MezAdd "${AEMezSpellName${i}}" "${AEMezSpellGem${i}}" ${Target.ID}
			}
		/next i
   	/next m

	:refreshmez
| POLY: I commented this out cause of the comments (I assume 40oz?), but I think it might be needed cause I did notice that it sometimes tries to mez corpses. But I haven't retested this section.
|	/if (${Spawn[${MezMobID}].Type.Equal[corpse]}) {
|		/call Debug 3 "Leaving Sub Mez - MezMobID (${MezMobID}) is a corpse - not even sure you should see this because it looks like dead code."
|		/return
|	}
	/varset CurrentSub Mez
	/doevents
	/for i 1 to ${MezTotal}
 		/if (${mezcnt} && (${Me.SpellReady[${MezSpellName${i}}]} && ${Me.CurrentMana}>${Spell[${MezSpellName${i}}].Mana}||${Me.AltAbilityReady[${MezSpellName${i}}]}) && ${MezUse${i}}) {
			/for m 1 to ${MezList.Count[|]}
				/if (${MezTimer${MezList.Arg[${m},|]}}>6) /goto :skipmez
				/if ((!${Defined[MezTimer${MezList.Arg[${m},|]}]}||${Defined[MezTimer${MezList.Arg[${m},|]}]} && !${MezTimer${MezList.Arg[${m},|]}}) && ${MezList.Arg[${m},|]}!=${TarID} && ${MezList.Arg[${m},|]}>0 && ${Spawn[id ${MezList.Arg[${m},|]}].ID} && ${Spawn[id ${MezList.Arg[${m},|]}].Distance}<=${AttackRange}) {
					/squelch /tar id ${MezList.Arg[${m},|]}
					/delay 1s ${Target.ID}==${MezList.Arg[${m},|]}
					/call MezAdd "${MezSpellName${i}}" "${MezSpellGem${i}}" ${MezList.Arg[${m},|]}
					/if (${mezcnt}) /goto :refreshmez
				}
			:skipmez
			/next m
		}
	/next i

 	/if (!${mezcnt} && ${TarID} && ${Spawn[${TarID}].Type.Equal[npc]}) /squelch /tar id ${TarID}
	/call Debug 3 "Leaving Sub Mez"
/return

Sub MezAdd(string MezSpell,string GemName,int MezID)
	/if (!${MezID}||!${Target.LineOfSight}||!${Target.ID}) /return
	/varset BeamUsed 0
	/squelch /tar id ${MezID}
	/delay 1s ${Target.ID}
	/if (${MezSpell.Equal[Beam of Slumber]}) /face fast
	/call ${EchoSub} "${Purple} ${MezSpell} --> ${White} ${Target}"
    /if (${Verbose} && ${MyChannel.NotEqual[NULL]}) /docommand /${MyChannel} ${MezSpell} --> ${Target.CleanName}
    /if (${${CurrentSub}Announce} && ${AnnounceChannel.NotEqual[NULL]}  && ${AnnounceEvents.Find[TRY]}) /docommand /${AnnounceChannel} ${MezSpell} --> ${Target.CleanName}
	/if (${Spell[${MezSpell}].AERange.Int}) {
		/varset BeamTimer ${BeamTimer.OriginalValue}
		/varset BeamUsed 1
	}
    /casting "${MezSpell}" "${GemName}"
	/varset MezBuffer 2s
	/if (${Spell[${MezSpell}].AERange.Int}) {
		/varset BeamTimer ${BeamTimer.OriginalValue}
		/varset BeamUsed 1
	}
	/delay 5
	/delay 3s !${Me.Casting.ID}
	/if (${Cast.Result.Equal[CAST_SUCCESS]}) {
		/if (!${Defined[MezTimer${MezID}]}) /declare MezTimer${MezID} timer outer ${Spell[${MezSpell}].Duration}s
		/varset MezTimer${MezID} ${Spell[${MezSpell}].Duration.TotalSeconds}s
		/if (${MezSpell.Equal[Nightmare Stasis]}) /varset MezTimer${MezID} 3m
		/varcalc mezcnt ${mezcnt}-1
		/if (${Cast.Result.Equal[CAST_SUCCESS]} && ${${CurrentSub}Announce} && ${AnnounceChannel.NotEqual[NULL]} && ${AnnounceEvents.Find[${Macro.Return}]}) /docommand /${AnnounceChannel} ${MezSpell} --> ${Target.CleanName} MEZZED						
	}
	/if (!${Spell[${MezSpell}].AERange.Int} && (${Macro.Return.Equal[CAST_IMMUNE]}||${Cast.Result.Equal[CAST_NOTHOLD]}))  {
		/if (!${Defined[MezTimer${MezID}]}) /declare  MezTimer${MezID} timer outer 9999999
		/varset MezTimer${MezID} 9999999
		/varcalc mezcnt ${mezcnt}-1
	}
	/if (${Cast.Result.Equal[CAST_RESIST]})  {
		/if (${${CurrentSub}Announce} && ${AnnounceChannel.NotEqual[NULL]} && ${AnnounceEvents.Find[${Macro.Return}]}) /docommand /${AnnounceChannel} ${MezSpell} --> ${Target.CleanName} RESIST						
	}
	/doevents
/return
|mez end

So, there are some changes that you had made already that I don't have in there (like /face fast, and some more efficient /if blocks. The main thing is that I had to switch these subs to use MQ2 cast (like with the auras). The sub seems to work for me on a 105 chanter.
 
I've been working on the bard section. Seems like a lot of work so far. But I'm slowly getting there.
 
So, there are some changes that you had made already that I don't have in there (like /face fast, and some more efficient /if blocks. The main thing is that I had to switch these subs to use MQ2 cast (like with the auras). The sub seems to work for me on a 105 chanter.

The nuances of spell_routines.inc is an interesting creature. While I haven't run a compare at this point (i'm about to do so) It may be important to note that bypassing spell_routines leaves you open to casting failures. The existing subs in spell_routines.inc is designed to take the /call cast with params that ultimately not only leads it to the proper casting method (Determines if it should be a gem, ability, skill, alt, etc) It also incorporates the event subs that return a value to inform the macro of failure in casting, or success in casting. So while the changes likely do cause it to cast the spells in question at the needed time, for characters that aren't level 105 fizzling is quite possible, and the macro would require the ${Macro.Return} information to determine if it landed (assuming mq2's cast doesn't do that) The spell routines is specifically designed for this macro, some information from that routine gets lost without it and may hinder the macro in the long run. The idea is that it's going to do this without any baby sitting from the player.

I'll run the compare, then determine if this is something we need to push into the main macro for release. Obviously the player base can choose to include it in their copy of the macro pending my comparison and possible alteration to get it to work as originally intended. I suppose I should also run a compare again our updates to the last viable copy before the patch where the changes were made to aura's to make sure that nothing is getting lost there.

Thanks for your assistance on the macro. Any help is appreciated, don't want you to think that I'm throwing any of your fixes out. (I've updated my copy to include your fix for the buffsub, just haven't put it out yet.
 
Last edited:
Please for the love of all that is holy/unholy or sensible change all lines for usage of the INI from

Code:
/declare IgnoreImmuneLists bool outer ${Ini[Bot_${Me.CleanName}_${Me.Class}.ini,Mez,IgnoreImmuneLists,FALSE]}

to

Code:
/declare IgnoreImmuneLists bool outer ${Ini[MyIni,Mez,IgnoreImmuneLists,FALSE]}

I can tell you're using an greatly outdated copy of this macro based on seeing this flooded through your sub.

You will find that at the top of your macro

Code:
#define MyIni Bot_${Me.CleanName}_${MacroQuest.Server}_${Me.Class}.ini

This is in the code. This is to keep us from having to type the full INI name every time a reference to the INI is made. When I run the compare these are immediately brightened letting me know a change was made and I keep stopping at every other line to find it's just a reference to the INI. It would speed things along if we share the same naming conventions. :)

If you're doing this to maintain a seperate INI for your copy of the macro, changing this at the top one time for the #define MyIni would allow us to maintain a relatively similar copy minus the one change at the top and avoid highlighting everything with an INI change to it.
 
Last edited:
Code:
| POLY: I commented this out cause of the comments (I assume 40oz?), but I think it might be needed cause I did notice that it sometimes tries to mez corpses. But I haven't retested this section.
|	/if (${Spawn[${MezMobID}].Type.Equal[corpse]}) {
|		/call Debug 3 "Leaving Sub Mez - MezMobID (${MezMobID}) is a corpse - not even sure you should see this because it looks like dead code."
|		/return
|	}

Often times when you have something targeted and it becomes a corpse (it gets killed) you'll maintain it as a target (more often then not) So it is necessary to check. So I don't think it is dead code persay, but it could use a little work. Such as if you're already casting your mez spell at the target /call interrupt, and clearing your current target should be done. Not simply returning out of the macro with a fancy debug message.

I can see the issue with the
Code:
/call Cast "${MezSpell}" "${GemName}"
as it is only providing two arguements. however (from spell_routines.inc)
Code:
Sub Cast(spellName,spellType,giveUpValue,mySub,int ResistTotal)

This is what is expected. So while we have the spell name, and the spell type, there should be a give up value (timer) a sub provided (${CurrentSub} typically does the trick), a ResistTotal (how may times you want to cast it again if it gets resisted.) Without all of those variables it's likely that the cast will fail.

Code:
/call Cast "${${CurrentSub}SpellName${i}}" ${${CurrentSub}SpellGem${i}} 3s CheckMyHP

That is a call to cast a heal spell. There isn't a bother to check for resist recasting, however 3s is listed. I may need to look into optimizing spell_routines instead of looking into changing every call to cast like I've been doing as I go through. Mainly to not need all the parameters of the sub. IE: if the value isn't present for give up value it should just try once regardless of fizzle and only recast on interrupt? I'm not sure. I'll have to be sat there messing with it to even know. Hell fixing the spell routines might fix a lot of issues to do with casting in other subs. When I brought this up I went to my copy of the bot40.mac to pull a /call cast to show as an example and searching through the document trying to find one I felt was valid generated a lot of results that followed the same situation that calls to cast in the mez sub did. Just provind /call cast spellname spelltype(gem2etc) and no other parameters. It's quite possible that this is what is causing all the spells to fail to cast.

However I now see that you did change up the syntax for checking a macro.return. Kudos :)

Either way good stuff. I have something to work with.
 
OK tried it, zerkers are still just standing around and cleric and shaman dont seem to be healing at all since my bard is at 10% health lol. The mQ window keeps saying Macro is paused and a undeclared DoBurn no the zerkers. The Cleric did rez a dead body prior to the macro pausing tho. The Doburn is on line 6413 /squelch /moveto set stucklogic on then it just says macro paused again

I did a search of the macro and didn't find doburn anywhere. Other than that there is 26 instances of the word burn, some of them are manaburn, aamanaburn, etc. Here's a list.

Code:
Search "burn" (26 hits in 1 file)
  C:\Users\Jesse\Documents\bot40\bot40.mac (26 hits)
	Line 711: 	/declare AAManaBurn string outer Mana Burn|Mana Blaze|Volatile Mana Blaze|Mana Blast|
	Line 711: 	/declare AAManaBurn string outer Mana Burn|Mana Blaze|Volatile Mana Blaze|Mana Blast|
	Line 899: #event BurnMode "[MQ2] Toggle BurnMode#*#"
	Line 899: #event BurnMode "[MQ2] Toggle BurnMode#*#"
	Line 900: #event BurnMode "#*#|${BurnModeAlias}|#*#"
	Line 900: #event BurnMode "#*#|${BurnModeAlias}|#*#"
	Line 901: Sub Event_BurnMode
	Line 902: 	/varset BurnMode ${If[${BurnMode},FALSE,TRUE]}
	Line 902: 	/varset BurnMode ${If[${BurnMode},FALSE,TRUE]}
	Line 903: 	/if (${BurnMode}) /echo Now in BurnMode
	Line 903: 	/if (${BurnMode}) /echo Now in BurnMode
	Line 904: 	/if (!${BurnMode}) /echo No longer in BurnMode
	Line 904: 	/if (!${BurnMode}) /echo No longer in BurnMode
	Line 913: 	/echo /burn - Toggles BurnMode to TRUE/FALSE
	Line 913: 	/echo /burn - Toggles BurnMode to TRUE/FALSE
	Line 1335: 				/squelch /alias 	/burn 				/echo Toggle BurnMode
	Line 1335: 				/squelch /alias 	/burn 				/echo Toggle BurnMode
	Line 1482: 	/declare BurnMode bool outer FALSE
	Line 1483: 	/varset BurnModeAlias ${Ini[MyIni,Assist,BurnModeAlias,BurnModeAlias]}
	Line 1483: 	/varset BurnModeAlias ${Ini[MyIni,Assist,BurnModeAlias,BurnModeAlias]}
	Line 1483: 	/varset BurnModeAlias ${Ini[MyIni,Assist,BurnModeAlias,BurnModeAlias]}
	Line 1484: 	/if (${BurnModeAlias.Equal[BurnModeAlias]}) /mmoini "MyIni" "Assist" "BurnModeAlias" "BurnModeAlias"
	Line 1484: 	/if (${BurnModeAlias.Equal[BurnModeAlias]}) /mmoini "MyIni" "Assist" "BurnModeAlias" "BurnModeAlias"
	Line 1484: 	/if (${BurnModeAlias.Equal[BurnModeAlias]}) /mmoini "MyIni" "Assist" "BurnModeAlias" "BurnModeAlias"
	Line 1484: 	/if (${BurnModeAlias.Equal[BurnModeAlias]}) /mmoini "MyIni" "Assist" "BurnModeAlias" "BurnModeAlias"
	Line 3768: 	/if (${AALeap.Find[${aaName}]}||${AAFeignDeath.Find[${aaName}]}||${AAPet.Find[${aaName}]}||${AAMount.Find[${aaName}]}||${AARez.Find[${aaName}]}||${AAIgnore.Find[${aaName}]}||${AACure.Find[${aaName}]}||${AAVeteran.Find[${aaName}]}||${AAInvisUndead.Find[${aaName}]}||${aaReuseTime}<0||${AALeap.Find[${aaName}]}||${AADA.Find[${aaName}]}${AAGlyph.Find[${aaName}]}||${AASummon.Find[${aaName}]}||${AACharm.Find[${aaName}]}||${AAPort.Find[${aaName}]}||${AAManaBurn.Find[${aaName}]}||${AAIllusion.Find[${aaName}]}) /goto :aadone

I did find the /moveto command you referenced, if that is holding it up it may be possible that moveutils has some undeclared variable.

I'll review your INI to see if there is something else that could be causing it. But as of now I have no idea how to handle this pause.

Also I'm curious to know if your characters are buffing. I was looking at the INI and it says for instance

BuffUse2=TRUE
BuffSpellName2=Divine Interposition
BuffSpellIcon2=<~~~Nothing present
BuffSpellGem2=<~Nothing present
BuffAlias2=
BuffClasses2=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions2=<~If nothing is present should at least fill with TRUE so that the "Conditions" evaluate TRUE I believe.

Aside from that BuffTotal=0 which means it wouldn't try to buff period because it is set to 0. If you have BuffUse1=TRUE but BuffTotal=0 then it won't even try to do BuffSpellName1. I dunno :-x.

again for Debuffs, are those working.

DebuffTotal=3
DebuffTotalIfNamed=3
ForceMemDebuff=FALSE
DebuffAnnounce=FALSE
DebuffUse1=TRUE
DebuffSpellName1=Mark of Tohan
DebuffSpellGem1=gem12
DebuffUseAtMobPctHP1=96
DebuffStopAtMobPctHP1=1
DebuffRecast1=2m
DebuffMaxTries1=2
DebuffConditions1=<~~No value present, would presumably evaluate false, thus causing it to bypass this debuff.

and again for your HealSingle (the only confirmed healing sub I know that I have working for me.

HealSingleTotal=8
HealSingleAnnounce=FALSE
HealSingleUse1=TRUE
HealSingleSpellName1=Spiritual Remedy
HealSingleSpellGem1=gem2
HealSingleUseAt1=90
HealSingleStopAt1=100
HealSingleRecast1=1s
HealSingleConditions1=<~~~No value present, likely evaluates false. Thus not casting the spell.

Code:
/if (${${CurrentSub}Conditions${i}} && (${Range.Between[1,${${CurrentSub}UseAt${i}}:${Group.Member[${gmember}].PctHPs}]} && ${Spawn[id ${Group.Member[${gmember}].ID}].Distance}<${Spell[${${CurrentSub}SpellName${i}}].MyRange} && ${gmember} && (${Group.Member[${gmember}].ID}!=${Spawn[${HealPuller}].ID}||${Spawn[id ${Group.Member[${gmember}].ID}].Distance}<=${HealPullerDist}) && ${Group.Member[${gmember}].Type.NotEqual[corpse]} && !${HealSingleRecast${i}}||!${gmember} && ${Range.Between[1,${${CurrentSub}UseAt${i}}:${Me.PctHPs}]} && !${HealSingleRecast${i}})) {

This is the REALLY long if statement that evaluates if it should consider casting the heal. You'll note the first thing in that if statement is if ${CurrentSub}Conditions${i}, which is asking if, in a for loop, HealSingleConditions1=TRUE, if that evaluates false it's going to just skip that entire block of code. I suppose for me to do would be to check to see if the conditions is blank and if it /varset it to true. This could be the issue, but to confirm please make it HealSingleConditions1=TRUE

I'm sending you a private message on here. Got a question to ask.
 
Last edited:
Code:
/if (${${CurrentSub}Conditions${i}} && (${Range.Between[1,${${CurrentSub}UseAt${i}}:${Group.Member[${gmember}].PctHPs}]} && ${Spawn[id ${Group.Member[${gmember}].ID}].Distance}<${Spell[${${CurrentSub}SpellName${i}}].MyRange} && ${gmember} && (${Group.Member[${gmember}].ID}!=${Spawn[${HealPuller}].ID}||${Spawn[id ${Group.Member[${gmember}].ID}].Distance}<=${HealPullerDist}) && ${Group.Member[${gmember}].Type.NotEqual[corpse]} && !${HealSingleRecast${i}}||!${gmember} && ${Range.Between[1,${${CurrentSub}UseAt${i}}:${Me.PctHPs}]} && !${HealSingleRecast${i}})) {

This is the REALLY long if statement that evaluates if it should consider casting the heal. You'll note the first thing in that if statement is if ${CurrentSub}Conditions${i}, which is asking if, in a for loop, HealSingleConditions1=TRUE, if that evaluates false it's going to just skip that entire block of code. I suppose for me to do would be to check to see if the conditions is blank and if it /varset it to true. This could be the issue, but to confirm please make it HealSingleConditions1=TRUE.

the line in sub healsingle
Code:
/if (${${CurrentSub}Conditions.NotEqual[123456]}) /varset ${CurrentSub}Conditions ${Ini[MyIni,${CurrentSub},${CurrentSub}Conditions,123456]}

Sets it to "123456" if its blank, so leaving it blank in the INI should still work (and it appears to work for me).
 
Please for the love of all that is holy/unholy or sensible change all lines for usage of the INI from

Code:
/declare IgnoreImmuneLists bool outer ${Ini[Bot_${Me.CleanName}_${Me.Class}.ini,Mez,IgnoreImmuneLists,FALSE]}

to

Code:
/declare IgnoreImmuneLists bool outer ${Ini[MyIni,Mez,IgnoreImmuneLists,FALSE]}

I can tell you're using an greatly outdated copy of this macro based on seeing this flooded through your sub.

You will find that at the top of your macro

Code:
#define MyIni Bot_${Me.CleanName}_${MacroQuest.Server}_${Me.Class}.ini

This is in the code. This is to keep us from having to type the full INI name every time a reference to the INI is made. When I run the compare these are immediately brightened letting me know a change was made and I keep stopping at every other line to find it's just a reference to the INI. It would speed things along if we share the same naming conventions. :)

If you're doing this to maintain a seperate INI for your copy of the macro, changing this at the top one time for the #define MyIni would allow us to maintain a relatively similar copy minus the one change at the top and avoid highlighting everything with an INI change to it.

Thats not why im doing it, I posted why I had it like that. Haven't changed it back yet is all. Find and replace is your friend! Had been doing it myself before I posted, just forgot this time, new baby = no sleep.

I have everything working on a 105 bard, including mezzing. I had to hardcode AE mez as the code in place to auto detect it doesn't work and I haven't had time to look into why.

Doing some more testing on it.
 
Heya Chatwiththisname,

I am not so good with this part of the forum, but I have tested some of my f2p toons using the latest update of mq2 and the latest up date from a page or two ago on this thread. and have found the following problems. Let me know if there is a better way for me to communicate the errors I am finding from testing. Other than using applications, and expanding off of templets from others on computers, I am not so good. With Finace and Law thats my game, so if there is anything I can do to help, send me a message with instructions that an idiot could get right.

Log File for Palidain:

Spoiler:
PaladinNameReplaced - [2017/10/26 00:36:44] [MQ2Headshot] # of UNDEAD mobs in shardslanding: 0
PaladinNameReplaced - [2017/10/26 00:36:44] # Welcome to MQ2Eqbc, PaladinNameReplaced: Use /bccmd help to see help.
PaladinNameReplaced - [2017/10/26 00:37:10] Your integrity has been preserved.
PaladinNameReplaced - [2017/10/26 00:42:51] [MQ2Headshot] # of UNDEAD mobs in shardslanding: 0
PaladinNameReplaced - [2017/10/26 00:42:51] # Welcome to MQ2Eqbc, PaladinNameReplaced: Use /bccmd help to see help.
PaladinNameReplaced - [2017/10/26 00:43:51] Your integrity has been preserved.
PaladinNameReplaced - [2017/10/26 00:56:48] MQ2MMOBugs :: You are now logged in as okcmagistrate.
PaladinNameReplaced - [2017/10/26 00:56:48] MQ2MMOBugs :: Your account status is now set to premium.
PaladinNameReplaced - [2017/10/26 01:00:25] [MQ2] Starting bot40
PaladinNameReplaced - [2017/10/26 01:00:26] [MQ2] Available AssistTypes: 1 to just /assist, 2 to /target own prioritized mob, 3 to /assist with XTarget1 is kill target, 4 to use NetBots
PaladinNameReplaced - [2017/10/26 01:00:26] [MQ2] AssistType 2 = Pick own target at 100%
PaladinNameReplaced - [2017/10/26 01:00:26] [MQ2] IgnoreList: |Magus Burlshin|an Adventurer|Magus Burlshi00|a selyrah plainskeeper|a lesser plainskeeper|a dire plainskeeper|
PaladinNameReplaced - [2017/10/26 01:00:26] Added alert for: (0-200) any whose name contains cocoon
PaladinNameReplaced - [2017/10/26 01:00:26] WARNING: Undefined Variable Navigation used on line 2071@bot40.mac /if ((${PullingMethod.Find[nav]}||${PullingMethod.Find[hunt]}) && !${Navigation.MeshLoaded} && ${AmIPuller}) {Macro Paused.
PaladinNameReplaced - [2017/10/26 01:00:41] Syntax: /mqpause [on|off] [chat [on|off]]
PaladinNameReplaced - [2017/10/26 01:00:41] Macro is running again.
PaladinNameReplaced - [2017/10/26 01:00:41] WARNING: Undefined Variable AutoClickiesLoaded used on line 4125@bot40.mac /if (${AutoClickiesLoaded}) /returnMacro Paused.
PaladinNameReplaced - [2017/10/26 01:00:46] Syntax: /mqpause [on|off] [chat [on|off]]
PaladinNameReplaced - [2017/10/26 01:00:46] Macro is running again.
PaladinNameReplaced - [2017/10/26 01:00:48] [MQ2] HealPetTotal=0 -- You wont use this section, consider removing section from [Settings] OptionsCheck=
PaladinNameReplaced - [2017/10/26 01:00:49] Bot.Mac Loaded v2016.1009
PaladinNameReplaced - [2017/10/26 01:00:49] /helpme - Shows available options and commands
PaladinNameReplaced - [2017/10/26 01:00:49] [MQ2] AssistAt=100 - AssistPC=PaladinNameReplaced - AssistType=2
PaladinNameReplaced - [2017/10/26 01:00:49] [MQ2] Assisting PaladinNameReplaced
PaladinNameReplaced - [2017/10/26 01:00:49] [MQ2] Did I forget to say who I wanted to assist? - FALSE
PaladinNameReplaced - [2017/10/26 01:00:49] [MQ2] Beginning main bot loop
PaladinNameReplaced - [2017/10/26 01:00:49] Ardent Fury
PaladinNameReplaced - [2017/10/26 01:00:59] Valor of Marr
PaladinNameReplaced - [2017/10/26 01:01:04] Brell's Stalwart Bulwark
PaladinNameReplaced - [2017/10/26 01:01:10] No such 'string' member 'Name'
PaladinNameReplaced - [2017/10/26 01:01:10] bot40.mac@4038 (Aura): /if (${ImNotReady}||${Me.Aura[1].Name.Length} && !${Me.AltAbility[Spirit Mastery]} && !${Me.AltAbility[Auroria Mastery]}||${Me.Aura[2].Name.Length}||${AuraDelay}||${NeedLoad}) /return
PaladinNameReplaced - [2017/10/26 01:01:10] bot40.mac@473 (Rest): /call ${RestRoutines.Arg[${i},|]}
PaladinNameReplaced - [2017/10/26 01:01:10] bot40.mac@282 (Main(string Param0, string Param1)): /call Rest
PaladinNameReplaced - [2017/10/26 01:01:10] No such 'string' member 'Name'
PaladinNameReplaced - [2017/10/26 01:01:10] bot40.mac@4038 (Aura): /if (${ImNotReady}||${Me.Aura[1].Name.Length} && !${Me.AltAbility[Spirit Mastery]} && !${Me.AltAbility[Auroria Mastery]}||${Me.Aura[2].Name.Length}||${AuraDelay}||${NeedLoad}) /return
PaladinNameReplaced - [2017/10/26 01:01:10] bot40.mac@473 (Rest): /call ${RestRoutines.Arg[${i},|]}
PaladinNameReplaced - [2017/10/26 01:01:10] bot40.mac@282 (Main(string Param0, string Param1)): /call Rest
PaladinNameReplaced - [2017/10/26 01:01:10] No such 'string' member 'Name'
PaladinNameReplaced - [2017/10/26 01:01:10] bot40.mac@4052 (Aura): /if (${Me.Aura[1].Name.Length} && !${Me.AltAbility[Spirit Mastery]} && !${Me.AltAbility[Auroria Mastery]}||${Me.Aura[2].Name.Length}||${AuraDelay}||${NeedLoad}) /return
PaladinNameReplaced - [2017/10/26 01:01:10] bot40.mac@473 (Rest): /call ${RestRoutines.Arg[${i},|]}
PaladinNameReplaced - [2017/10/26 01:01:10] bot40.mac@282 (Main(string Param0, string Param1)): /call Rest
PaladinNameReplaced - [2017/10/26 01:01:10] No such 'string' member 'Name'
PaladinNameReplaced - [2017/10/26 01:01:10] bot40.mac@4052 (Aura): /if (${Me.Aura[1].Name.Length} && !${Me.AltAbility[Spirit Mastery]} && !${Me.AltAbility[Auroria Mastery]}||${Me.Aura[2].Name.Length}||${AuraDelay}||${NeedLoad}) /return
PaladinNameReplaced - [2017/10/26 01:01:10] bot40.mac@473 (Rest): /call ${RestRoutines.Arg[${i},|]}
PaladinNameReplaced - [2017/10/26 01:01:10] bot40.mac@282 (Main(string Param0, string Param1)): /call Rest
PaladinNameReplaced - [2017/10/26 01:01:10] No such 'string' member 'Name'
PaladinNameReplaced - [2017/10/26 01:01:10] bot40.mac@4061 (Aura): /if (!${Me.Aura[1].Name.Find[${${CurrentSub}Name${i}}]}||${dblaura.Find[${Me.Class.ShortName}]} && !${Me.Aura[1].Name.Find[${${CurrentSub}Name${i}}]}) {
PaladinNameReplaced - [2017/10/26 01:01:10] bot40.mac@473 (Rest): /call ${RestRoutines.Arg[${i},|]}
PaladinNameReplaced - [2017/10/26 01:01:10] bot40.mac@282 (Main(string Param0, string Param1)): /call Rest
PaladinNameReplaced - [2017/10/26 01:01:10] No such 'string' member 'Name'
PaladinNameReplaced - [2017/10/26 01:01:10] bot40.mac@4061 (Aura): /if (!${Me.Aura[1].Name.Find[${${CurrentSub}Name${i}}]}||${dblaura.Find[${Me.Class.ShortName}]} && !${Me.Aura[1].Name.Find[${${CurrentSub}Name${i}}]}) {
PaladinNameReplaced - [2017/10/26 01:01:10] bot40.mac@473 (Rest): /call ${RestRoutines.Arg[${i},|]}
PaladinNameReplaced - [2017/10/26 01:01:10] bot40.mac@282 (Main(string Param0, string Param1)): /call Rest
PaladinNameReplaced - [2017/10/26 01:01:11] No such 'string' member 'Name'
PaladinNameReplaced - [2017/10/26 01:01:11] bot40.mac@4069 (Aura): /if ((${Me.AltAbility[Spirit Mastery]}||${Me.AltAbility[Auroria Mastery]}) && !${Me.Aura[2].Name.Length}) /delay 3
PaladinNameReplaced - [2017/10/26 01:01:11] bot40.mac@473 (Rest): /call ${RestRoutines.Arg[${i},|]}
PaladinNameReplaced - [2017/10/26 01:01:11] bot40.mac@282 (Main(string Param0, string Param1)): /call Rest
PaladinNameReplaced - [2017/10/26 01:01:11] No such 'string' member 'Name'
PaladinNameReplaced - [2017/10/26 01:01:11] bot40.mac@4070 (Aura): /if ((${Me.AltAbility[Spirit Mastery]}||${Me.AltAbility[Auroria Mastery]}) && !${Me.Aura[2].Name.Length}) /delay !${Me.Casting.ID}
PaladinNameReplaced - [2017/10/26 01:01:11] bot40.mac@473 (Rest): /call ${RestRoutines.Arg[${i},|]}
PaladinNameReplaced - [2017/10/26 01:01:11] bot40.mac@282 (Main(string Param0, string Param1)): /call Rest
PaladinNameReplaced - [2017/10/26 01:01:11] No such 'string' member 'Name'
PaladinNameReplaced - [2017/10/26 01:01:11] bot40.mac@4038 (Aura): /if (${ImNotReady}||${Me.Aura[1].Name.Length} && !${Me.AltAbility[Spirit Mastery]} && !${Me.AltAbility[Auroria Mastery]}||${Me.Aura[2].Name.Length}||${AuraDelay}||${NeedLoad}) /return
PaladinNameReplaced - [2017/10/26 01:01:11] bot40.mac@473 (Rest): /call ${RestRoutines.Arg[${i},|]}
PaladinNameReplaced - [2017/10/26 01:01:11] bot40.mac@282 (Main(string Param0, string Param1)): /call Rest
PaladinNameReplaced - [2017/10/26 01:01:11] No such 'string' member 'Name'
PaladinNameReplaced - [2017/10/26 01:01:11] bot40.mac@4038 (Aura): /if (${ImNotReady}||${Me.Aura[1].Name.Length} && !${Me.AltAbility[Spirit Mastery]} && !${Me.AltAbility[Auroria Mastery]}||${Me.Aura[2].Name.Length}||${AuraDelay}||${NeedLoad}) /return
PaladinNameReplaced - [2017/10/26 01:01:11] bot40.mac@473 (Rest): /call ${RestRoutines.Arg[${i},|]}
PaladinNameReplaced - [2017/10/26 01:01:11] bot40.mac@282 (Main(string Param0, string Param1)): /call Rest
PaladinNameReplaced - [2017/10/26 01:01:12] No such 'string' member 'Name'
PaladinNameReplaced - [2017/10/26 01:01:12] bot40.mac@4038 (Aura): /if (${ImNotReady}||${Me.Aura[1].Name.Length} && !${Me.AltAbility[Spirit Mastery]} && !${Me.AltAbility[Auroria Mastery]}||${Me.Aura[2].Name.Length}||${AuraDelay}||${NeedLoad}) /return
PaladinNameReplaced - [2017/10/26 01:01:12] bot40.mac@473 (Rest): /call ${RestRoutines.Arg[${i},|]}
PaladinNameReplaced - [2017/10/26 01:01:12] bot40.mac@282 (Main(string Param0, string Param1)): /call Rest
PaladinNameReplaced - [2017/10/26 01:01:12] No such 'string' member 'Name'
PaladinNameReplaced - [2017/10/26 01:01:12] bot40.mac@4038 (Aura): /if (${ImNotReady}||${Me.Aura[1].Name.Length} && !${Me.AltAbility[Spirit Mastery]} && !${Me.AltAbility[Auroria Mastery]}||${Me.Aura[2].Name.Length}||${AuraDelay}||${NeedLoad}) /return
PaladinNameReplaced - [2017/10/26 01:01:12] bot40.mac@473 (Rest): /call ${RestRoutines.Arg[${i},|]}
PaladinNameReplaced - [2017/10/26 01:01:12] bot40.mac@282 (Main(string Param0, string Param1)): /call Rest
PaladinNameReplaced - [2017/10/26 01:01:12] No such 'string' member 'Name'
PaladinNameReplaced - [2017/10/26 01:01:12] bot40.mac@4038 (Aura): /if (${ImNotReady}||${Me.Aura[1].Name.Length} && !${Me.AltAbility[Spirit Mastery]} && !${Me.AltAbility[Auroria Mastery]}||${Me.Aura[2].Name.Length}||${AuraDelay}||${NeedLoad}) /return
PaladinNameReplaced - [2017/10/26 01:01:12] bot40.mac@473 (Rest): /call ${RestRoutines.Arg[${i},|]}
PaladinNameReplaced - [2017/10/26 01:01:12] bot40.mac@282 (Main(string Param0, string Param1)): /call Rest
PaladinNameReplaced - [2017/10/26 01:01:12] No such 'string' member 'Name'
PaladinNameReplaced - [2017/10/26 01:01:12] bot40.mac@4038 (Aura): /if (${ImNotReady}||${Me.Aura[1].Name.Length} && !${Me.AltAbility[Spirit Mastery]} && !${Me.AltAbility[Auroria Mastery]}||${Me.Aura[2].Name.Length}||${AuraDelay}||${NeedLoad}) /return
PaladinNameReplaced - [2017/10/26 01:01:12] bot40.mac@473 (Rest): /call ${RestRoutines.Arg[${i},|]}
PaladinNameReplaced - [2017/10/26 01:01:12] bot40.mac@282 (Main(string Param0, string Param1)): /call Rest
PaladinNameReplaced - [2017/10/26 01:01:13] No such 'string' member 'Name'
PaladinNameReplaced - [2017/10/26 01:01:13] bot40.mac@4038 (Aura): /if (${ImNotReady}||${Me.Aura[1].Name.Length} && !${Me.AltAbility[Spirit Mastery]} && !${Me.AltAbility[Auroria Mastery]}||${Me.Aura[2].Name.Length}||${AuraDelay}||${NeedLoad}) /return
PaladinNameReplaced - [2017/10/26 01:01:13] bot40.mac@473 (Rest): /call ${RestRoutines.Arg[${i},|]}
PaladinNameReplaced - [2017/10/26 01:01:13] bot40.mac@282 (Main(string Param0, string Param1)): /call Rest
PaladinNameReplaced - [2017/10/26 01:01:13] No such 'string' member 'Name'
PaladinNameReplaced - [2017/10/26 01:01:13] bot40.mac@4038 (Aura): /if (${ImNotReady}||${Me.Aura[1].Name.Length} && !${Me.AltAbility[Spirit Mastery]} && !${Me.AltAbility[Auroria Mastery]}||${Me.Aura[2].Name.Length}||${AuraDelay}||${NeedLoad}) /return
PaladinNameReplaced - [2017/10/26 01:01:13] bot40.mac@473 (Rest): /call ${RestRoutines.Arg[${i},|]}
PaladinNameReplaced - [2017/10/26 01:01:13] bot40.mac@282 (Main(string Param0, string Param1)): /call Rest
PaladinNameReplaced - [2017/10/26 01:01:13] No such 'string' member 'Name'
PaladinNameReplaced - [2017/10/26 01:01:13] bot40.mac@4038 (Aura): /if (${ImNotReady}||${Me.Aura[1].Name.Length} && !${Me.AltAbility[Spirit Mastery]} && !${Me.AltAbility[Auroria Mastery]}||${Me.Aura[2].Name.Length}||${AuraDelay}||${NeedLoad}) /return
PaladinNameReplaced - [2017/10/26 01:01:13] bot40.mac@473 (Rest): /call ${RestRoutines.Arg[${i},|]}
PaladinNameReplaced - [2017/10/26 01:01:13] bot40.mac@282 (Main(string Param0, string Param1)): /call Rest
PaladinNameReplaced - [2017/10/26 01:01:13] No such 'string' member 'Name'
PaladinNameReplaced - [2017/10/26 01:01:13] bot40.mac@4038 (Aura): /if (${ImNotReady}||${Me.Aura[1].Name.Length} && !${Me.AltAbility[Spirit Mastery]} && !${Me.AltAbility[Auroria Mastery]}||${Me.Aura[2].Name.Length}||${AuraDelay}||${NeedLoad}) /return
PaladinNameReplaced - [2017/10/26 01:01:13] bot40.mac@473 (Rest): /call ${RestRoutines.Arg[${i},|]}
PaladinNameReplaced - [2017/10/26 01:01:13] bot40.mac@282 (Main(string Param0, string Param1)): /call Rest
PaladinNameReplaced - [2017/10/26 01:01:14] No such 'string' member 'Name'
PaladinNameReplaced - [2017/10/26 01:01:14] bot40.mac@4038 (Aura): /if (${ImNotReady}||${Me.Aura[1].Name.Length} && !${Me.AltAbility[Spirit Mastery]} && !${Me.AltAbility[Auroria Mastery]}||${Me.Aura[2].Name.Length}||${AuraDelay}||${NeedLoad}) /return
PaladinNameReplaced - [2017/10/26 01:01:14] bot40.mac@473 (Rest): /call ${RestRoutines.Arg[${i},|]}
PaladinNameReplaced - [2017/10/26 01:01:14] bot40.mac@282 (Main(string Param0, string Param1)): /call Rest
PaladinNameReplaced - [2017/10/26 01:01:14] No such 'string' member 'Name'
PaladinNameReplaced - [2017/10/26 01:01:14] bot40.mac@4038 (Aura): /if (${ImNotReady}||${Me.Aura[1].Name.Length} && !${Me.AltAbility[Spirit Mastery]} && !${Me.AltAbility[Auroria Mastery]}||${Me.Aura[2].Name.Length}||${AuraDelay}||${NeedLoad}) /return
PaladinNameReplaced - [2017/10/26 01:01:14] bot40.mac@473 (Rest): /call ${RestRoutines.Arg[${i},|]}
PaladinNameReplaced - [2017/10/26 01:01:14] bot40.mac@282 (Main(string Param0, string Param1)): /call Rest
PaladinNameReplaced - [2017/10/26 01:01:15] [MQ2] Target scan: 750 range with 100 zradius.
PaladinNameReplaced - [2017/10/26 01:01:15] MQ2MoveUtils:: Break MoveTo if aggro turned ON
PaladinNameReplaced - [2017/10/26 01:01:15] [MQ2] Pulling --> a_verdantbeak_cub17
PaladinNameReplaced - [2017/10/26 01:01:15] WARNING: Undefined Variable Navigation used on line 2403@bot40.mac /if (${Navigation.Active}) /nav stopMacro Paused.
PaladinNameReplaced - [2017/10/26 01:01:22] Syntax: /mqpause [on|off] [chat [on|off]]
PaladinNameReplaced - [2017/10/26 01:01:22] Macro is running again.
PaladinNameReplaced - [2017/10/26 01:01:22] [MQ2] Disruptive Persecution --> a_verdantbeak_cub17
PaladinNameReplaced - [2017/10/26 01:01:22] WARNING: Undefined Variable spellID used on line 412@spell_routines.inc /if (${spellType.NotEqual[item]} && ${spellType.NotEqual[alt]} && ${spellType.NotEqual[ability]} && ${spellType.NotEqual[disc]}) /call SpellCast "${spellType}" "${spellName}" "${mySub}" "${spellID}" "${giveUpValue}"Macro Paused.
PaladinNameReplaced - [2017/10/26 01:01:31] MQ2Melee::Attacking [a verdantbeak cub].
PaladinNameReplaced - [2017/10/26 01:01:31] MQ2Melee::Sticking [11.21 id 17616 moveback].
PaladinNameReplaced - [2017/10/26 01:01:31] MQ2MoveUtils:: Dir(Any) Dist(11.21) Head(True) ID(17616) MB
PaladinNameReplaced - [2017/10/26 01:01:31] MQ2Melee::Sticking [11.21 id 17616 moveback].
PaladinNameReplaced - [2017/10/26 01:01:31] MQ2MoveUtils:: Dir(Any) Dist(11.21) Head(True) ID(17616) MB
PaladinNameReplaced - [2017/10/26 01:01:33] MQ2MoveUtils:: PAUSED
PaladinNameReplaced - [2017/10/26 01:01:33] MQ2MoveUtils:: RESUMED
PaladinNameReplaced - [2017/10/26 01:01:57] MQ2MoveUtils:: PAUSED
PaladinNameReplaced - [2017/10/26 01:01:57] MQ2MoveUtils:: RESUMED
PaladinNameReplaced - [2017/10/26 01:02:07] MQ2MoveUtils:: PAUSED
PaladinNameReplaced - [2017/10/26 01:02:07] MQ2MoveUtils:: RESUMED
PaladinNameReplaced - [2017/10/26 01:02:22] MQ2Melee::Sticking [OFF].
PaladinNameReplaced - [2017/10/26 01:11:25] Syntax: /mqpause [on|off] [chat [on|off]]
PaladinNameReplaced - [2017/10/26 01:11:25] Macro is running again.
PaladinNameReplaced - [2017/10/26 01:11:25] WARNING: Undefined Variable PullTotal used on line 2436@bot40.mac /if ((${Target.LineOfSight}||!${PullSkillRequiresLineOfSight2}) && ${PullTotal}==2 && !${Me.XTarget} && !${Me.CombatState.Equal[COMBAT]} && (!${Me.Moving}||${Me.Class.ShortName.Equal[BRD]}) && (!${Me.Casting.ID}||${Twist.Twisting}) && ((${Me.SpellReady[${PullSkillName2}]}||${Me.CombatAbilityReady[${PullSkillName2}]}||${Me.AltAbilityReady[${PullSkillName2}]})||(!${Me.Gem[${PullSkillName2}]} && ${PullSkillGem2.Find[gem]})||(${FindItem[${PullSkillName2}].ItemSlot} && !${FindItem[${PullSkillName2}].Timer}))) {Macro Paused.
PaladinNameReplaced - [2017/10/26 01:11:42] MQ2Melee::Attacking [a kangon verdantbeak].
PaladinNameReplaced - [2017/10/26 01:11:42] MQ2Melee::Sticking [13.29 id 19367 moveback].
PaladinNameReplaced - [2017/10/26 01:11:42] MQ2MoveUtils:: Dir(Any) Dist(13.29) Head(True) ID(19367) MB
PaladinNameReplaced - [2017/10/26 01:11:42] MQ2Melee::Sticking [13.29 id 19367 moveback].
PaladinNameReplaced - [2017/10/26 01:11:42] MQ2MoveUtils:: Dir(Any) Dist(13.29) Head(True) ID(19367) MB
PaladinNameReplaced - [2017/10/26 01:12:27] MQ2MoveUtils:: PAUSED
PaladinNameReplaced - [2017/10/26 01:12:28] MQ2MoveUtils:: RESUMED
PaladinNameReplaced - [2017/10/26 01:12:51] MQ2Melee::Sticking [OFF].
PaladinNameReplaced - [2017/10/26 01:17:04] MQ2Melee::Attacking [a verdantbeak cub].
PaladinNameReplaced - [2017/10/26 01:17:04] MQ2Melee::Sticking [11.21 id 17494 moveback].
PaladinNameReplaced - [2017/10/26 01:17:04] MQ2MoveUtils:: Dir(Any) Dist(11.21) Head(True) ID(17494) MB
PaladinNameReplaced - [2017/10/26 01:17:04] MQ2Melee::Sticking [11.21 id 17494 moveback].
PaladinNameReplaced - [2017/10/26 01:17:04] MQ2MoveUtils:: Dir(Any) Dist(11.21) Head(True) ID(17494) MB
PaladinNameReplaced - [2017/10/26 01:18:13] MQ2Melee::Sticking [OFF].
PaladinNameReplaced - [2017/10/26 01:26:20] MQ2Melee::Attacking [a verdantbeak cub].
PaladinNameReplaced - [2017/10/26 01:26:20] MQ2Melee::Sticking [11.21 id 7098 moveback].
PaladinNameReplaced - [2017/10/26 01:26:20] MQ2MoveUtils:: Dir(Any) Dist(11.21) Head(True) ID(7098) MB
PaladinNameReplaced - [2017/10/26 01:26:21] MQ2Melee::Sticking [11.21 id 7098 moveback].
PaladinNameReplaced - [2017/10/26 01:26:21] MQ2MoveUtils:: Dir(Any) Dist(11.21) Head(True) ID(7098) MB
PaladinNameReplaced - [2017/10/26 01:26:21] MQ2MoveUtils:: AutoPause halting movement...
PaladinNameReplaced - [2017/10/26 01:26:55] MQ2Melee::Sticking [OFF].
PaladinNameReplaced - [2017/10/26 01:33:39] The current macro has ended.
PaladinNameReplaced - [2017/10/26 01:33:40] [MQ2] Starting bot40
PaladinNameReplaced - [2017/10/26 01:33:40] [MQ2] Available AssistTypes: 1 to just /assist, 2 to /target own prioritized mob, 3 to /assist with XTarget1 is kill target, 4 to use NetBots
PaladinNameReplaced - [2017/10/26 01:33:40] [MQ2] AssistType 2 = Pick own target at 100%
PaladinNameReplaced - [2017/10/26 01:33:40] [MQ2] IgnoreList: |Magus Burlshin|an Adventurer|Magus Burlshi00|a selyrah plainskeeper|a lesser plainskeeper|a dire plainskeeper|
PaladinNameReplaced - [2017/10/26 01:33:40] Alert NOT added because there was already an alert for: (0-200) any whose name contains cocoon
PaladinNameReplaced - [2017/10/26 01:33:40] WARNING: Undefined Variable Navigation used on line 2071@bot40.mac /if ((${PullingMethod.Find[nav]}||${PullingMethod.Find[hunt]}) && !${Navigation.MeshLoaded} && ${AmIPuller}) {Macro Paused.
PaladinNameReplaced - [2017/10/26 01:33:44] Syntax: /mqpause [on|off] [chat [on|off]]
PaladinNameReplaced - [2017/10/26 01:33:44] Macro is running again.
PaladinNameReplaced - [2017/10/26 01:33:44] WARNING: Undefined Variable AutoClickiesLoaded used on line 4125@bot40.mac /if (${AutoClickiesLoaded}) /returnMacro Paused.
PaladinNameReplaced - [2017/10/26 01:33:45] Syntax: /mqpause [on|off] [chat [on|off]]
PaladinNameReplaced - [2017/10/26 01:33:45] Macro is running again.
PaladinNameReplaced - [2017/10/26 01:33:45] Syntax: /mqpause [on|off] [chat [on|off]]
PaladinNameReplaced - [2017/10/26 01:33:45] Macro is already running.
PaladinNameReplaced - [2017/10/26 01:33:45] Syntax: /mqpause [on|off] [chat [on|off]]
PaladinNameReplaced - [2017/10/26 01:33:45] Macro is already running.
PaladinNameReplaced - [2017/10/26 01:33:46] Syntax: /mqpause [on|off] [chat [on|off]]
PaladinNameReplaced - [2017/10/26 01:33:46] Macro is already running.
PaladinNameReplaced - [2017/10/26 01:33:46] [MQ2] HealPetTotal=0 -- You wont use this section, consider removing section from [Settings] OptionsCheck=
PaladinNameReplaced - [2017/10/26 01:33:47] Bot.Mac Loaded v2016.1009
PaladinNameReplaced - [2017/10/26 01:33:47] /helpme - Shows available options and commands
PaladinNameReplaced - [2017/10/26 01:33:47] [MQ2] AssistAt=100 - AssistPC=PaladinNameReplaced - AssistType=2
PaladinNameReplaced - [2017/10/26 01:33:47] [MQ2] Assisting PaladinNameReplaced
PaladinNameReplaced - [2017/10/26 01:33:47] [MQ2] Did I forget to say who I wanted to assist? - FALSE
PaladinNameReplaced - [2017/10/26 01:33:47] [MQ2] Beginning main bot loop
PaladinNameReplaced - [2017/10/26 01:33:51] [MQ2] Target scan: 750 range with 100 zradius.
PaladinNameReplaced - [2017/10/26 01:34:01] [MQ2] Target scan: 750 range with 100 zradius.
PaladinNameReplaced - [2017/10/26 01:34:03] Syntax: /mqpause [on|off] [chat [on|off]]
PaladinNameReplaced - [2017/10/26 01:34:03] Macro is paused.
PaladinNameReplaced - [2017/10/26 01:34:07] A macro is currently running. You may wish to /endmacro before you finish camping.


The INI used for the Palidan is:

Spoiler:
[Settings]

OptionsCheck=|Pulling|Merc|AA|Aura|AutoClickies|Buff|ClickyMaintenance|ClickyNuke|Aggro|Disc|FightBuff|HealSingle|HealGroup|HealSelf|HealSplash|HealPet|SelfBuff|Nuke|SelfBuff|Stun||Mana|ModRod|Endurance|
OptionsCheckRaid=|Pulling|Merc|AA|Aura|AutoClickies|Buff|ClickyMaintenance|ClickyNuke|Fade|Aggro|Debuff|Dot|FightBuff|HealSingle|HealGroup|HealSelf|HealSplash|HealPet|SelfBuff|Nuke|Rez|Root|SelfBuff|Snare|Stun|XHeal|Mana|ModRod|Endurance|
UseCamp=TRUE
CampRadius=30
CampRadiusMax=200
InterruptToHealAt=60
InterruptToXHealAt=50
RestrictedZones=344,202,151,345
LootNPCs=FALSE
Verbose=FALSE
MyChannel=bc
AnnounceChannel=bc
AnnounceEvents=TRY|CAST_SUCCESS|CAST_IMMUNE|CAST_R ESIST
EQBCAnnounceAdds=FALSE
AutoHideNPCCorpses=TRUE
EmergencySkill=EmergencySkill
ImmunityCheck=TRUE
BotVersion=v2016.1009

[Assist]
AssistType=2
AssistAt=100
AttackRange=150
AttackCommand=/attack on
AmIOffTank=TRUE
UseMelee=TRUE
UseArchery=FALSE
ArcheryMaxDistance=200
ArcheryMinDistance=35
BurnModeAlias=BurnModeAlias

[Follow]
FollowMethod=stick|50 loose
FollowCommand=FollowCommand
StopFollowCommand=StopFollowCommand
MoveUpCommand=MoveUpCommand

[ImHit]
ImHitTotal=0
ImHitAnnounce=FALSE
ImHitUse1=FALSE
ImHitSpellName1=
ImHitRecast1=1s
ImHitUseAtMyHP1=90
ImHitConditions1=
ImHitUse2=FALSE
ImHitSpellName2=
ImHitRecast2=1s
ImHitUseAtMyHP2=30
ImHitConditions2=
ImHitUse3=FALSE
ImHitSpellName3=
ImHitRecast3=1s
ImHitUseAtMyHP3=30
ImHitConditions3=

[Custom]
CustomCombatTotal=0
CustomRestTotal=0
CustomCombat1=
CustomRest1=

[Campfire]

CampfireName=Fellowship of Honor
CF_Item1=Fellowship Kit:
CF_Item2=Fellowship Lumber Bundle:

[Pulling]

AlertListClear=FALSE
AlertListClearTimer=60m
AmIPuller=TRUE
PullRadius=750
PullZRadius=100
PullCastRange=100
MQ2NavPullRadius=10
MQ2NavPullZRadius=10
ReturnActionTotal=0
ReturnAction1=
PullConColor=GREEN,LIGHT BLUE,BLUE,WHITE,YELLOW
CourseCorrectionTimer=4
PrePullSkillName=Yaulp (Lesser)
PrePullSkillGem=alt
PrePullSkillDelay=
PrePullSkillReuse=10s
PullingMethod=Standard
PullingAnnounceCMD=NULL
PullingTotal=2
PullAtMyHPs=95

PullSkillName1=Disruptive Persecution
PullSkillRequiresLineOfSight1=TRUE
PullSkillDistance1=100
PullSkillSummon1=

PullSkillName2=Lesson of Grief
PullSkillRequiresLineOfSight2=TRUE
PullSkillDistance2=125
PullSkillSummon2=
PullConditions=${Me.PctMana}>50 && ${SpawnCount[group]}==${Group.GroupSize} && ${Group.Member[${Group.Member[Skarlette]}].PctMana}>30 && ${Group.Member[${Group.Member[Leatta]}].PctMana}>30 && ${Group.Member[${Group.Member[Aleatta]}].PctMana}>20
LeapName=12345
PullSkillGem1=PullSkillGem1
PullSkillGem2=PullSkillGem2

[Merc]

MercUse=TRUE
UseMerc=TRUE
MercAssistAt=97
MercStanceNormal=Balanced
MercStanceNamed=Balanced
MercStanceOOC=Passive

[AA]
AATotal=5
AAAnnounce=FALSE
AAUse1=TRUE
AASpellName1=Armor of the Inquisitor
AAUseAtMobPctHP1=96
AAStopAtMobPctHP1=5
AARecast1=3s
AANamedOnly1=FALSE
AAConditions1=

AAUse2=TRUE
AASpellName2=Inquisitor's Judgment
AAUseAtMobPctHP2=96
AAStopAtMobPctHP2=5
AARecast2=3s
AANamedOnly2=FALSE
AAConditions2=

AAUse3=TRUE
AASpellName3=Projection of Piety
AAUseAtMobPctHP3=96
AAStopAtMobPctHP3=5
AARecast3=10s
AANamedOnly3=FALSE
AAConditions3=

AAUse4=TRUE
AASpellName4=Ageless Enmity
AAUseAtMobPctHP4=96
AAStopAtMobPctHP4=5
AARecast4=10s
AANamedOnly4=FALSE
AAConditions4=

AAUse5=TRUE
AASpellName5=Banestrike
AAUseAtMobPctHP5=96
AAStopAtMobPctHP5=5
AARecast5=1s
AANamedOnly5=FALSE
AAConditions5=!${Banestrike.Find[|${Target.Race}|]}

AAUse6=FALSE
AASpellName6=
AAUseAtMobPctHP6=96
AAStopAtMobPctHP6=5
AARecast6=1s
AANamedOnly6=FALSE
AAConditions6=

AAUse7=FALSE
AASpellName7=
AAUseAtMobPctHP7=96
AAStopAtMobPctHP7=5
AARecast7=1s
AANamedOnly7=FALSE
AAConditions7=
AAUse8=FALSE
AASpellName8=
AAUseAtMobPctHP8=96
AAStopAtMobPctHP8=5
AARecast8=1s
AANamedOnly8=FALSE
AAConditions8=
AAUse9=FALSE
AASpellName9=
AAUseAtMobPctHP9=96
AAStopAtMobPctHP9=5
AARecast9=1s
AANamedOnly9=FALSE
AAConditions9=
AAUse10=FALSE
AASpellName10=
AAUseAtMobPctHP10=96
AAStopAtMobPctHP10=5
AARecast10=1s
AANamedOnly10=FALSE
AAConditions10=
AASpellName5=
AAUseAtMobPctHP5=
AAStopAtMobPctHP5=
AARecast5=
AANamedOnly5=

[Aura]

AuraTotal=1
AuraAnnounce=FALSE
AuraUse1=TRUE
AuraSpellName1=Blessed Aura
AuraSpellIcon1=Blessed Aura
AuraConditions1=
AuraSpellGem1=gem11
AuraName1=Blessed Aura Effect

[Buff]

BuffXTargets=FALSE
BuffPets=FALSE
ForceMemBuff=TRUE
AutoInvis=FALSE
AutoBreakInvis=FALSE
InvisSpell=
InvisSpellGem=
InvisUndeadSpell=Group Perfected Invisibility to Undead
InvisUndeadSpellGem=alt
LevitateSpell=
LevitateSpellGem=
BuffTotal=0
BuffAnnounce=FALSE

BuffUse1=False
BuffSpellName1=Brell's Stalwart Bulwark
BuffSpellIcon1=Brell's Steadwart Bulwark
BuffSpellGem1=gem1
BuffAlias1=|palbrell's|
BuffClasses1=BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,R NG,ROG,SHD,SHM,WIZ
BuffConditions1=

BuffUse2=FALSE
BuffSpellName2=
BuffSpellIcon2=
BuffSpellGem2=gem1
BuffAlias2=
BuffClasses2=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,P AL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions2=
BuffUse3=FALSE
BuffSpellName3=
BuffSpellIcon3=
BuffSpellGem3=gem1
BuffAlias3=
BuffClasses3=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,P AL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions3=
BuffUse4=FALSE
BuffSpellName4=
BuffSpellIcon4=
BuffSpellGem4=gem1
BuffAlias4=
BuffClasses4=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,P AL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions4=
BuffUse5=FALSE
BuffSpellName5=
BuffSpellIcon5=
BuffSpellGem5=
BuffAlias5=
BuffClasses5=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,P AL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions5=
BuffUse6=FALSE
BuffSpellName6=
BuffSpellIcon6=
BuffSpellGem6=
BuffAlias6=
BuffClasses6=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,P AL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions6=
BuffUse7=FALSE
BuffSpellName7=
BuffSpellIcon7=
BuffSpellGem7=
BuffAlias7=
BuffClasses7=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,P AL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions7=

[ClickyMaintenance]
doclickies=1
clickies=2
click1=Parrot Feathered Short Cape
click2=Ball of Fluffy Cotton

[ClickyNuke]
ClickyNukeTotal=1
ClickyNukeAnnounce=FALSE

ClickyNukeUse1=TRUE
ClickyNukeName1=Sebilisian Dragonscale Breastplate
ClickyNukeConditions1=
ClickyNukeSpellGem1=item
ClickyNukeRecast1=10s
ClickyNukeUseAtMobPctHP1=96
ClickyNukeStopAtMobPctHP1=1
ClickyNukeNamedOnly1=TRUE

ClickyNukeUse2=FALSE
ClickyNukeName2=
ClickyNukeRecast2=1s
ClickyNukeUseAtMobPctHP2=96
ClickyNukeStopAtMobPctHP2=1
ClickyNukeNamedOnly2=FALSE
ClickyNukeConditions2=
ClickyNukeUse3=FALSE
ClickyNukeName3=
ClickyNukeRecast3=1s
ClickyNukeUseAtMobPctHP3=96
ClickyNukeStopAtMobPctHP3=1
ClickyNukeNamedOnly3=FALSE
ClickyNukeConditions3=

[Aggro]

AggroSpellName=Beacon of the Righteous
AEAggroMinMobCount=2
AggroSpellGem=alt
AggroAtAggroPct=50

[Debuff]

DontDebuffConColor=|GREY|GREEN|
DebuffAdds=FALSE
DebuffTotal=0
DebuffTotalIfNamed=3
ForceMemDebuff=FALSE
DebuffAnnounce=FALSE

DebuffUse1=FALSE
DebuffSpellName1=Shackle
DebuffSpellGem1=gem12
DebuffUseAtMobPctHP1=96
DebuffStopAtMobPctHP1=1
DebuffRecast1=2m
DebuffMaxTries1=2
DebuffConditions1=

DebuffUse2=FALSE
DebuffSpellName2=
DebuffSpellGem2=
DebuffUseAtMobPctHP2=96
DebuffStopAtMobPctHP2=1
DebuffRecast2=2m
DebuffMaxTries2=2
DebuffConditions2=

DebuffUse3=FALSE
DebuffSpellName3=
DebuffSpellGem3=
DebuffUseAtMobPctHP3=96
DebuffStopAtMobPctHP3=1
DebuffRecast3=2m
DebuffMaxTries3=2
DebuffConditions3=
DebuffConditions=

[Disc]
DiscTotal=8
DiscUse1=TRUE

DiscUse1=TRUE
DiscName1=Repel
DiscNamedOnly1=FALSE
DiscRecast1=6s
DiscConditions1=

DiscUse2=TRUE
DiscName2=Righteous Umbrage
DiscNamedOnly2=FALSE
DiscRecast2=4s
DiscConditions2=

DiscUse3=TRUE
DiscName3=Unbroken Affirmation
DiscNamedOnly3=FALSE
DiscRecast3=2s
DiscConditions3=

DiscUse4=TRUE
DiscName4=Reflexive Righteousness
DiscNamedOnly4=FALSE
DiscRecast4=4s
DiscConditions5=

DiscUse5=TRUE
DiscName5=Deflection Discipline
DiscNamedOnly5=TRUE
DiscRecast5=2s
DiscConditions5=${Me.PctHPs}<80

DiscUse6=TRUE
DiscName6=Sanctification Discipline
DiscNamedOnly6=FALSE
DiscRecast6=4s
DiscConditions6=

DiscUse7=TRUE
DiscName7=Armor of Ardency
DiscNamedOnly7=FALSE
DiscRecast7=3s
DiscConditions7=

DiscUse8=TRUE
DiscName8=Guard of Humility
DiscNamedOnly8=FALSE
DiscRecast8=2s
DiscConditions8=

[GoM]
GoMTotal=0
GoMTotalIfNamed=0
GoMAnnounce=FALSE
GoMUse1=TRUE
GoMSpellName1=
GoMSpellIcon1=
GoMSpellGem1=

[Dot]
DotTotal=1
DotTotalIfNamed=1
ForceMemDot=FALSE
DotAnnounce=FALSE
DotUse1=TRUE
DotSpellName1=
DotSpellGem1=
DotUseAtMobPctHP1=96
DotStopAtMobPctHP1=30
DotRecast1=1s
DotMaxTries1=2
DotConditions1=
DotConditions=

[FightBuff]
FightBuffTotal=4
ForceMemFightBuff=TRUE
FightBuffAnnounce=FALSE

FightBuffUse1=TRUE
FightBuffSpellName1=Projection of Piety
FightBuffSpellIcon1=Projection of Piety
FightBuffConditions1=
FightBuffSpellGem1=alt
FightBuffNamedOnly1=FALSE
FightBuffForAggro1=TRUE
FightBuffUse2=TRUE
FightBuffSpellName2=Reinvigorating Steel
FightBuffSpellIcon2=Reinvigorating Steel
FightBuffSpellGem2=gem2
FightBuffNamedOnly2=FALSE
FightBuffForAggro2=TRUE
FightBuffConditions2=
FightBuffUse3=FALSE
FightBuffSpellName3=Staunch Stance
FightBuffSpellIcon3=Staunch Stance
FightBuffSpellGem3=gem12
FightBuffNamedOnly3=FALSE
FightBuffForAggro3=FALSE
FightBuffConditions3=
FightBuffUse4=TRUE
FightBuffSpellName4=Preservation of the Iceclad
FightBuffSpellIcon4=Preservation of the Iceclad
FightBuffSpellGem4=gem6
FightBuffNamedOnly4=FALSE
FightBuffForAggro4=FALSE
FightBuffConditions4=
FightBuffUse5=FALSE
FightBuffSpellName5=
FightBuffSpellGem5=
FightBuffNamedOnly5=FALSE
FightBuffForAggro5=FALSE
FightBuffConditions5=
FightBuffSpellIcon5=

[HealSingle]

HealPullerName=Aleatta
HealPullerDist=50
HealSingleTotal=2
HealSingleAnnounce=FALSE

HealSingleUse1=TRUE
HealSingleSpellName1=Ardent Touch
HealSingleSpellGem1=gem10
HealSingleUseAt1=50
HealSingleStopAt1=100
HealSingleRecast1=1s
HealSingleConditions1=

HealSingleUse2=TRUE
HealSingleSpellName2=Grief
HealSingleSpellGem2=gem9
HealSingleUseAt2=40
HealSingleStopAt2=90
HealSingleRecast2=1s
HealSingleConditions2=

HealSingleUse3=FALSE
HealSingleSpellName3=
HealSingleSpellGem3=
HealSingleUseAt3=50
HealSingleStopAt3=90
HealSingleRecast3=1s
HealSingleConditions3=
HealSingleUse4=FALSE
HealSingleSpellName4=
HealSingleSpellGem4=
HealSingleUseAt4=50
HealSingleStopAt4=90
HealSingleRecast4=1s
HealSingleConditions4=

[HealGroup]

HealGroupTotal=2
HealGroupAnnounce=FALSE

HealGroupUse1=TRUE
HealGroupSpellName1=Aurora of Dayspring
HealGroupSpellGem1=gem8
HealGroupUseAt1=50
HealGroupStopAt1=80
HealGroupAvgHP1=60
HealGroupConditions1=

HealGroupUse2=TRUE
HealGroupSpellName2=Wave of Grief
HealGroupSpellGem2=gem7
HealGroupUseAt2=40
HealGroupStopAt2=80
HealGroupAvgHP2=50
HealGroupConditions2=

HealGroupUse3=FALSE
HealGroupSpellName3=
HealGroupSpellGem3=
HealGroupUseAt3=50
HealGroupStopAt3=80
HealGroupAvgHP3=60
HealGroupConditions3=

[HealSelf]

HealSelfTotal=2
HealSelfAnnounce=FALSE

HealSelfUse1=TRUE
HealSelfSpellName1=Grief
HealSelfSpellGem1=gem9
HealSelfUseAt1=30
HealSelfStopAt1=90
HealSelfConditions1=
HealSelfUse2=TRUE

HealSelfSpellName2=Aurora of Dayspring
HealSelfSpellGem2=gem8
HealSelfUseAt2=30
HealSelfStopAt2=90
HealSelfConditions2=
HealSelfUse3=FALSE
HealSelfSpellName3=
HealSelfSpellGem3=
HealSelfUseAt3=60
HealSelfStopAt3=90
HealSelfConditions3=
HealSelfSpellGem3=

[HealSplash]

HealSplashTotal=1
HealSplashAnnounce=FALSE

HealSplashUse1=TRUE
HealSplashSpellName1=Splash of Atonement
HealSplashSpellGem1=gem6
HealSplashAvgHP1=60

HealSplashUse2=FALSE
HealSplashSpellName2=
HealSplashSpellGem2=
HealSplashAvgHP2=60

[HealPet]

HealPetTotal=0
HealPetAnnounce=FALSE
HealPetUse1=FALSE
HealPetSpellName1=
HealPetSpellGem1=
HealPetUseAt1=50
HealPetStopAt1=90
HealPetRecast1=1s
HealPetConditions1=
HealPetUse2=FALSE
HealPetSpellName2=
HealPetSpellGem2=
HealPetUseAt2=50
HealPetStopAt2=90
HealPetRecast2=1s
HealPetConditions2=

[SelfBuff]
SelfBuffTotal=5
SelfBuffAnnounce=FALSE

SelfBuffUse1=TRUE
SelfBuffSpellName1=Ardent Fury
SelfBuffSpellIcon1=Ardent Fury
SelfBuffSpellGem1=gem2
SelfBuffConditions1=

SelfBuffUse2=TRUE
SelfBuffSpellName2=Armor of Formidable Spirit
SelfBuffSpellIcon2=Armor of Formidable Spirit
SelfBuffSpellGem2=gem3
SelfBuffConditions2=

SelfBuffUse3=TRUE
SelfBuffSpellName3=Valor of Marr
SelfBuffSpellIcon3=Valor of Marr
SelfBuffSpellGem3=gem2
SelfBuffConditions3=

SelfBuffUse4=True
SelfBuffSpellName4=Remorse for the Fallen
SelfBuffSpellIcon4=Remorse for the Fallen
SelfBuffSpellGem4=gem3
SelfBuffConditions4=

SelfBuffUse5=True
SelfBuffSpellName5=Brell's Stalwart Bulwark
SelfBuffSpellIcon5=Brell's Stalwart Bulwark
SelfBuffSpellGem5=gem1
SelfBuffConditions5=


[Nuke]
NukeTotal=6
NukeTotalIfNamed=6
ForceMemNuke=TRUE
NukeAnnounce=FALSE

NukeUse1=TRUE
NukeSpellName1=Disruptive Persecution
NukeConditions1=
NukeSpellGem1=alt
NukeUseAtMobPctHP1=97
NukeStopAtMobPctHP1=0
NukeRecast1=2s

NukeUse2=TRUE
NukeSpellName2=Crush of Povar
NukeSpellGem2=gem1
NukeUseAtMobPctHP2=97
NukeStopAtMobPctHP2=0
NukeRecast2=2s
NukeConditions2=

NukeUse3=TRUE
NukeSpellName3=Brilliant Vindication
NukeSpellGem3=gem5
NukeUseAtMobPctHP3=99
NukeStopAtMobPctHP3=0
NukeRecast3=2s
NukeConditions3=

NukeUse4=FALSE
NukeSpellName4=Lesson of Grief
NukeSpellGem4=gem11
NukeUseAtMobPctHP4=96
NukeStopAtMobPctHP4=0
NukeRecast4=12s
NukeConditions4=

NukeUse5=TRUE
NukeSpellName5=Crush of the Darkened Sea
NukeSpellGem5=gem12
NukeUseAtMobPctHP5=96
NukeStopAtMobPctHP5=0
NukeRecast5=1s
NukeConditions5=

NukeUse6=FALSE
NukeSpellName6=Force of the Darkened Sea
NukeSpellGem6=gem4
NukeUseAtMobPctHP6=97
NukeStopAtMobPctHP6=0
NukeRecast6=2s
NukeConditions6=

NukeUse7=FALSE
NukeSpellName7=
NukeSpellGem7=
NukeUseAtMobPctHP7=96
NukeStopAtMobPctHP7=1
NukeRecast7=1s
NukeConditions7=
NukeUse8=FALSE
NukeSpellName8=
NukeSpellGem8=
NukeUseAtMobPctHP8=96
NukeStopAtMobPctHP8=1
NukeRecast8=1s
NukeConditions8=
NukeUse9=FALSE
NukeSpellName9=
NukeSpellGem9=
NukeUseAtMobPctHP9=96
NukeStopAtMobPctHP9=1
NukeRecast9=1s
NukeConditions9=
NukeUse10=FALSe
NukeSpellName10=
NukeSpellGem10=
NukeUseAtMobPctHP10=96
NukeStopAtMobPctHP10=10
NukeRecast10=1s
NukeConditions10=

[Rez]
GrabCorpse=TRUE
RezTotal=1
ForceMemRez=FALSE
RezAnnounce=FALSE
RezUse1=TRUE
RezSpellName1=Gift of Resurrection
RezConditions1=
RezSpellGem1=alt
RezDuringCombat1=FALSE
RezAlias1=
RezUse2=FALSE
RezSpellName2=
RezSpellGem2=
RezDuringCombat2=FALSE
RezAlias2=
RezConditions2=
RezTrustedTotal=1
RezTrusted1=
RezTrusted2=
RezTrusted3=
RezTrusted4=
RezTrusted5=
RezConditions=
RezRaidTimer=5m
RezGroupTimer=1m

[Root]
DontRootConColor=|GREY|GREEN|
RootPrimaryTarget=FALSE
RootAdds=TRUE
FaceNPCToRoot=TRUE
RootTotal=1
RootTotalIfNamed=2
RootAnnounce=FALSE

RootUse1=FALSE
RootSpellName1=Shackles of Tunare
RootConditions1=
RootSpellGem1=alt
RootUseAtMobPctHP1=18
RootStopAtMobPctHP1=0
RootRecast1=2s
RootMaxTries1=55

RootUse2=FALSE
RootSpellName2=
RootSpellGem2=
RootUseAtMobPctHP2=12
RootStopAtMobPctHP2=0
RootRecast2=2s
RootMaxTries2=10
RootConditions2=
RootConditions=

[Snare]
SnareTotal=1
ForceMemSnare=FALSE
SnareAnnounce=FALSE
SnareUse1=TRUE
SnareSpellName1=Halt the Dead
SnareConditions1=
SnareSpellGem1=alt
SnareUseAtMobPctHP1=15
SnareMaxTries1=10
SnareConditions=

[Stun]
StunTotal=3
StunTotalIfNamed=3
ForceMemStun=TRUE
StunAnnounce=FALSE

StunUse1=TRUE
StunSpellName1=Disruptive Persecution
StunConditions1=
StunSpellGem1=alt
StunUseAtMobPctHP1=100
StunStopAtMobPctHP1=1
StunRecast1=2s

StunUse2=TRUE
StunSpellName2=Divine Stun
StunConditions2=
StunSpellGem2=alt
StunUseAtMobPctHP2=100
StunStopAtMobPctHP2=1
StunRecast2=2s

StunUse3=TRUE
StunSpellName3=Force of Disruption
StunConditions3=
StunSpellGem3=alt
StunUseAtMobPctHP3=98
StunStopAtMobPctHP3=1
StunRecast3=2s

StunUse4=FALSE
StunSpellName4=
StunSpellGem4=
StunUseAtMobPctHP4=100
StunStopAtMobPctHP4=1
StunRecast4=9s
StunConditions4=

StunUse5=FALSE
StunSpellName5=
StunSpellGem5=
StunUseAtMobPctHP5=100
StunStopAtMobPctHP5=1
StunRecast5=9s
StunConditions5=

StunUse6=FALSE
StunSpellName6=
StunSpellGem6=
StunUseAtMobPctHP6=100
StunStopAtMobPctHP6=1
StunRecast6=9s
StunConditions6=


[XHeal]

XHealPullerName=Aleatta
XHealPullerDist=50
XHealTotal=0
XHealAnnounce=FALSE
XHealUse1=FALSE
XHealSpellName1=
XHealSpellGem1=
XHealUseAt1=50
XHealStopAt1=90
XHealUse2=FALSE
XHealSpellName2=
XHealSpellGem2=
XHealUseAt2=50
XHealStopAt2=90
XHealUse3=FALSE
XHealSpellName3=
XHealSpellGem3=
XHealUseAt3=50
XHealStopAt3=90
XHealConditions=

[Mana]

MedAt=70
MedToFull=TRUE
MedEvenIfNotInOOCRegen=FALSE
MedTimer=10s
UseClarityPotions=TRUE

[Endurance]

SitAt=25
SitToFull=TRUE
EnduranceConditions=

[Combat]
CombatFrequency1=Nuke|HealSingle|Stun|AA
CombatFrequency2=Nuke|HealSingle|Stun|AA
CombatFrequency3=Nuke|HealSingle|Stun|AA
CombatFrequency4=Nuke|HealSingle|Stun|AA
CombatFrequency5=Nuke|HealSingle|HealGroup|HealBal ance|HealSelf|HealPet|Disc|MainTankBuff|FightBuff| Stun|AA|Snare|ClickyNuke|Rez|ModRod|Mana|Merc
StandardCombatOptions=Bard|XHeal|HealSingle|HealGroup|HealBalance|HealSelf|HealPet|Disc|MainTankBuff|FightBuff|Lifetap|Stun|AA|Dot|Nuke|Snare|ClickyNuke|Jolt|Rez|ModRod|Mana|Merc

[Roles]
SetRoles=FALSE
GroupLeader=
GroupMainTank=
GroupMainAssist=
GroupPuller=
GroupXTarget1=Group Assist Target
RaidXTarget1=Raid Assist 1 Target

[AAtoBuy]
AABuy=FALSE
AABuyChannel=/echo
AABuyAt=25
AABuyMode=Classic
AABuyPageOrder=Class|Archetype|General|Special
AAActivatedOnly=FALSE
SetAAPctOnLevelTo=0
AACount=0


Log for Cleric:

Spoiler:
ClericNameRemoved - [2017/10/26 00:36:53] [MQ2Headshot] # of UNDEAD mobs in shardslanding: 0
ClericNameRemoved - [2017/10/26 00:36:53] # Welcome to MQ2Eqbc, ClericNameRemoved: Use /bccmd help to see help.
ClericNameRemoved - [2017/10/26 00:37:28] Unknown # command: #warning
ClericNameRemoved - [2017/10/26 00:37:28] Unable to add macro line.
ClericNameRemoved - [2017/10/26 00:38:13] Your integrity has been preserved.
ClericNameRemoved - [2017/10/26 00:38:30] A macro is currently running. You may wish to /endmacro before you finish camping.
ClericNameRemoved - [2017/10/26 00:43:05] [MQ2Headshot] # of UNDEAD mobs in shardslanding: 0
ClericNameRemoved - [2017/10/26 00:43:05] # Welcome to MQ2Eqbc, ClericNameRemoved: Use /bccmd help to see help.
ClericNameRemoved - [2017/10/26 00:43:23] Your integrity has been preserved.
ClericNameRemoved - [2017/10/26 00:44:28] [MQ2] Starting bot40
ClericNameRemoved - [2017/10/26 00:44:28] [MQ2] Available AssistTypes: 1 to just /assist, 2 to /target own prioritized mob, 3 to /assist with XTarget1 is kill target, 4 to use NetBots
ClericNameRemoved - [2017/10/26 00:44:28] [MQ2] AssistType 3 = Using XTarget1 to assist NULL at 99%
ClericNameRemoved - [2017/10/26 00:44:28] [MQ2] IgnoreList: |Magus Burlshin|an Adventurer|Magus Burlshi00|a selyrah plainskeeper|a lesser plainskeeper|a dire plainskeeper|
ClericNameRemoved - [2017/10/26 00:44:29] Added alert for: (0-200) any whose name contains cocoon
ClericNameRemoved - [2017/10/26 00:44:29] WARNING: Undefined Variable Navigation used on line 2071@bot40.mac /if ((${PullingMethod.Find[nav]}||${PullingMethod.Find[hunt]}) && !${Navigation.MeshLoaded} && ${AmIPuller}) {Macro Paused.
ClericNameRemoved - [2017/10/26 00:44:58] Syntax: /mqpause [on|off] [chat [on|off]]
ClericNameRemoved - [2017/10/26 00:44:58] Macro is running again.
ClericNameRemoved - [2017/10/26 00:44:59] [MQ2] Error(s) found in Bot_ClericNameRemoved_bristle_Cleric.ini
ClericNameRemoved - [2017/10/26 00:44:59] [MQ2] [Buff] BuffAlias2= is missing or not filled out correctly
ClericNameRemoved - [2017/10/26 00:44:59] [MQ2] [Buff] BuffAlias2= was added to the INI.
ClericNameRemoved - [2017/10/26 00:44:59] [MQ2] [Buff] BuffAlias5= is missing or not filled out correctly
ClericNameRemoved - [2017/10/26 00:44:59] [MQ2] [Buff] BuffAlias5= was added to the INI.
ClericNameRemoved - [2017/10/26 00:44:59] [MQ2] [Buff] BuffAlias8= is missing or not filled out correctly
ClericNameRemoved - [2017/10/26 00:44:59] [MQ2] [Buff] BuffAlias8= was added to the INI.
ClericNameRemoved - [2017/10/26 00:44:59] [MQ2] [Buff] BuffAlias9= is missing or not filled out correctly
ClericNameRemoved - [2017/10/26 00:44:59] [MQ2] [Buff] BuffAlias9= was added to the INI.
ClericNameRemoved - [2017/10/26 00:44:59] [MQ2] [Buff] BuffAlias10= is missing or not filled out correctly
ClericNameRemoved - [2017/10/26 00:44:59] [MQ2] [Buff] BuffAlias10= was added to the INI.
ClericNameRemoved - [2017/10/26 00:44:59] [MQ2] FadeTotal=0 -- You wont use this section, consider removing section from [Settings] OptionsCheck=
ClericNameRemoved - [2017/10/26 00:44:59] [MQ2] [Dot] DotSpellName1= is missing or not filled out correctly
ClericNameRemoved - [2017/10/26 00:44:59] [MQ2] [Dot] DotSpellName1= was added to the INI.
ClericNameRemoved - [2017/10/26 00:44:59] [MQ2] [Dot] DotSpellGem1= is missing or not filled out correctly
ClericNameRemoved - [2017/10/26 00:44:59] [MQ2] [Dot] DotSpellGem1= was added to the INI.
ClericNameRemoved - [2017/10/26 00:44:59] WARNING: Undefined Variable gmember used on line 2844@bot40.mac /varset spellload2 ${Ini[Bot_${Me.CleanName}_${MacroQuest.Server}_${Me.Class}.ini,${SubName},${SubName}${SpellLoad2Cats.Arg[${SubOptions.Arg[${i},|]},|]}${x},NULL]}Macro Paused.
ClericNameRemoved - [2017/10/26 00:45:01] Syntax: /mqpause [on|off] [chat [on|off]]
ClericNameRemoved - [2017/10/26 00:45:01] Macro is running again.
ClericNameRemoved - [2017/10/26 00:45:01] WARNING: Undefined Variable gmember used on line 2846@bot40.mac /call Debug 3 "Declaring dynamic variable: /declare ${SubName}${SpellLoad2Cats.Arg[${SubOptions.Arg[${i},|]},|]}${x} ${SpellLoad2Vars.Arg[${SubOptions.Arg[${i},|]},|]} outer ${Ini[Bot_${Me.CleanName}_${MacroQuest.Server}_${Me.Class}.ini,${SubName},${SubName}${SpellLoad2Cats.Arg[${SubOptions.Arg[${i},|]},|]}${x}]}"Macro Paused.
ClericNameRemoved - [2017/10/26 00:45:03] Syntax: /mqpause [on|off] [chat [on|off]]
ClericNameRemoved - [2017/10/26 00:45:03] Macro is running again.
ClericNameRemoved - [2017/10/26 00:45:03] WARNING: Undefined Variable gmember used on line 2847@bot40.mac /declare ${SubName}${SpellLoad2Cats.Arg[${SubOptions.Arg[${i},|]},|]}${x} ${SpellLoad2Vars.Arg[${SubOptions.Arg[${i},|]},|]} outer ${Ini[Bot_${Me.CleanName}_${MacroQuest.Server}_${Me.Class}.ini,${SubName},${SubName}${SpellLoad2Cats.Arg[${SubOptions.Arg[${i},|]},|]}${x}]}Macro Paused.
ClericNameRemoved - [2017/10/26 00:45:08] Syntax: /mqpause [on|off] [chat [on|off]]
ClericNameRemoved - [2017/10/26 00:45:08] Macro is running again.
ClericNameRemoved - [2017/10/26 00:45:08] WARNING: Undefined Variable gmember used on line 2849@bot40.mac /if (${SpellLoad2Cats.Arg[${SubOptions.Arg[${i},|]},|].Equal[Conditions]}) /varset ${SubName}${SpellLoad2Cats.Arg[${SubOptions.Arg[${i},|]},|]}${x} ${Ini[Bot_${Me.CleanName}_${MacroQuest.Server}_${Me.Class}.ini,${SubName},${SubName}${SpellLoad2Cats.Arg[${SubOptions.Arg[${i},|]},|]}${x},123456]}Macro Paused.
ClericNameRemoved - [2017/10/26 00:45:09] Syntax: /mqpause [on|off] [chat [on|off]]
ClericNameRemoved - [2017/10/26 00:45:09] Macro is running again.
ClericNameRemoved - [2017/10/26 00:45:10] [MQ2] HealSelfTotal=0 -- You wont use this section, consider removing section from [Settings] OptionsCheck=
ClericNameRemoved - [2017/10/26 00:45:10] [MQ2] HealSplashTotal=0 -- You wont use this section, consider removing section from [Settings] OptionsCheck=
ClericNameRemoved - [2017/10/26 00:45:10] [MQ2] RootTotal=0 -- You wont use this section, consider removing section from [Settings] OptionsCheck=
ClericNameRemoved - [2017/10/26 00:45:10] [MQ2] They weren't declared
ClericNameRemoved - [2017/10/26 00:45:10] [MQ2] SnareTotal=0 -- You wont use this section, consider removing section from [Settings] OptionsCheck=
ClericNameRemoved - [2017/10/26 00:45:10] [MQ2] StunTotal=0 -- You wont use this section, consider removing section from [Settings] OptionsCheck=
ClericNameRemoved - [2017/10/26 00:45:11] Bot.Mac Loaded v2016.1009
ClericNameRemoved - [2017/10/26 00:45:11] /helpme - Shows available options and commands
ClericNameRemoved - [2017/10/26 00:45:11] [MQ2] AssistAt=99 - AssistPC=Aleatta - AssistType=3
ClericNameRemoved - [2017/10/26 00:45:11] [MQ2] Assisting Aleatta
ClericNameRemoved - [2017/10/26 00:45:11] [MQ2] Did I forget to say who I wanted to assist? - FALSE
ClericNameRemoved - [2017/10/26 00:45:11] [MQ2] Errors found in Bot_ClericNameRemoved_bristle_Cleric.ini. See messages above or look in \mq2\logs\bot40.log for errors encountered.
ClericNameRemoved - [2017/10/26 00:45:11] [MQ2] Beginning main bot loop
ClericNameRemoved - [2017/10/26 00:45:12] Ward of Censure
ClericNameRemoved - [2017/10/26 00:45:50] WARNING: Undefined Variable NULL_MercStanceNamed used on line 7733@bot40.mac /if (${Mercenary.State.Equal[ACTIVE]} && (${Target.Named}||${Target.Name.Find[#]}) && ${AddCount} && ${${Me.Mercenary.Class.ShortName}_MercStanceNamed.NotEqual[NULL]} && ${Mercenary.Stance.NotEqual[${${Me.Mercenary.Class.ShortName}_MercStanceNamed}]}) {Macro Paused.
ClericNameRemoved - [2017/10/26 00:45:50] WARNING: Undefined Variable NULL_MercStanceNamed used on line 7733@bot40.mac /if (${Mercenary.State.Equal[ACTIVE]} && (${Target.Named}||${Target.Name.Find[#]}) && ${AddCount} && ${${Me.Mercenary.Class.ShortName}_MercStanceNamed.NotEqual[NULL]} && ${Mercenary.Stance.NotEqual[${${Me.Mercenary.Class.ShortName}_MercStanceNamed}]}) {Macro Paused.
ClericNameRemoved - [2017/10/26 00:57:04] MQ2MMOBugs :: You are now logged in as okcmagistrate.
ClericNameRemoved - [2017/10/26 00:57:04] MQ2MMOBugs :: Your account status is now set to premium.
ClericNameRemoved - [2017/10/26 01:01:42] Syntax: /mqpause [on|off] [chat [on|off]]
ClericNameRemoved - [2017/10/26 01:01:42] Macro is running again.
ClericNameRemoved - [2017/10/26 01:01:42] WARNING: Undefined Variable NULL_MercStanceNormal used on line 7738@bot40.mac /if (${Mercenary.State.Equal[ACTIVE]} && !${Target.Named} && !${Target.Name.Find[#]} && ${AddCount} && ${${Me.Mercenary.Class.ShortName}_MercStanceNormal.NotEqual[NULL]} && ${Mercenary.Stance.NotEqual[${${Me.Mercenary.Class.ShortName}_MercStanceNormal}]}) {Macro Paused.
ClericNameRemoved - [2017/10/26 01:01:42] WARNING: Undefined Variable NULL_MercStanceNormal used on line 7738@bot40.mac /if (${Mercenary.State.Equal[ACTIVE]} && !${Target.Named} && !${Target.Name.Find[#]} && ${AddCount} && ${${Me.Mercenary.Class.ShortName}_MercStanceNormal.NotEqual[NULL]} && ${Mercenary.Stance.NotEqual[${${Me.Mercenary.Class.ShortName}_MercStanceNormal}]}) {Macro Paused.
ClericNameRemoved - [2017/10/26 01:15:47] The current macro has ended.
ClericNameRemoved - [2017/10/26 01:16:07] [MQ2] [MQ2] >> Initialized devCommonPremium.inc v2.51 - Written By Devestator
ClericNameRemoved - [2017/10/26 01:16:07] [MQ2] [MQ2] >> Initializing devMovementPremium.inc v1.74 - Written By Devestator
ClericNameRemoved - [2017/10/26 01:16:07] [MQ2] [MQ2] >> Initializing devCast.inc v1.06
ClericNameRemoved - [2017/10/26 01:16:07] [MQ2] [MQ2] >> Loading Bot specific configuration...
ClericNameRemoved - [2017/10/26 01:17:29] The current macro has ended.
ClericNameRemoved - [2017/10/26 01:17:31] [MQ2] [MQ2] >> Initialized devCommonPremium.inc v2.51 - Written By Devestator
ClericNameRemoved - [2017/10/26 01:17:31] [MQ2] [MQ2] >> Initializing devMovementPremium.inc v1.74 - Written By Devestator
ClericNameRemoved - [2017/10/26 01:17:31] [MQ2] [MQ2] >> Initializing devCast.inc v1.06
ClericNameRemoved - [2017/10/26 01:17:31] [MQ2] [MQ2] >> Loading Bot specific configuration...
ClericNameRemoved - [2017/10/26 01:18:13] XP Gained: 1 (0.303%) || XP Total: 1 (0.303%)
ClericNameRemoved - [2017/10/26 01:18:47] The current macro has ended.
ClericNameRemoved - [2017/10/26 01:18:51] [MQ2] [MQ2] >> Initialized devCommonPremium.inc v2.51 - Written By Devestator
ClericNameRemoved - [2017/10/26 01:18:51] [MQ2] [MQ2] >> Initializing devMovementPremium.inc v1.74 - Written By Devestator
ClericNameRemoved - [2017/10/26 01:18:51] [MQ2] [MQ2] >> Initializing devCast.inc v1.06
ClericNameRemoved - [2017/10/26 01:18:51] [MQ2] [MQ2] >> Loading Bot specific configuration...
ClericNameRemoved - [2017/10/26 01:19:40] The current macro has ended.
ClericNameRemoved - [2017/10/26 01:20:38] [MQ2] Starting bot40
ClericNameRemoved - [2017/10/26 01:20:38] [MQ2] Available AssistTypes: 1 to just /assist, 2 to /target own prioritized mob, 3 to /assist with XTarget1 is kill target, 4 to use NetBots
ClericNameRemoved - [2017/10/26 01:20:38] [MQ2] AssistType 3 = Using XTarget1 to assist NULL at 99%
ClericNameRemoved - [2017/10/26 01:20:38] [MQ2] IgnoreList: |Magus Burlshin|an Adventurer|Magus Burlshi00|a selyrah plainskeeper|a lesser plainskeeper|a dire plainskeeper|
ClericNameRemoved - [2017/10/26 01:20:38] Alert NOT added because there was already an alert for: (0-200) any whose name contains cocoon
ClericNameRemoved - [2017/10/26 01:20:38] WARNING: Undefined Variable Navigation used on line 2071@bot40.mac /if ((${PullingMethod.Find[nav]}||${PullingMethod.Find[hunt]}) && !${Navigation.MeshLoaded} && ${AmIPuller}) {Macro Paused.
ClericNameRemoved - [2017/10/26 01:23:32] Syntax: /mqpause [on|off] [chat [on|off]]
ClericNameRemoved - [2017/10/26 01:23:32] Macro is running again.
ClericNameRemoved - [2017/10/26 01:23:33] [MQ2] FadeTotal=0 -- You wont use this section, consider removing section from [Settings] OptionsCheck=
ClericNameRemoved - [2017/10/26 01:23:33] [MQ2] Error(s) found in Bot_ClericNameRemoved_bristle_Cleric.ini
ClericNameRemoved - [2017/10/26 01:23:33] [MQ2] [Dot] DotSpellName1=NULL -- You dont have this ability/item
ClericNameRemoved - [2017/10/26 01:23:33] WARNING: Undefined Variable gmember used on line 2844@bot40.mac /varset spellload2 ${Ini[Bot_${Me.CleanName}_${MacroQuest.Server}_${Me.Class}.ini,${SubName},${SubName}${SpellLoad2Cats.Arg[${SubOptions.Arg[${i},|]},|]}${x},NULL]}Macro Paused.
ClericNameRemoved - [2017/10/26 01:24:00] Syntax: /mqpause [on|off] [chat [on|off]]
ClericNameRemoved - [2017/10/26 01:24:00] Macro is running again.
ClericNameRemoved - [2017/10/26 01:24:00] WARNING: Undefined Variable gmember used on line 2846@bot40.mac /call Debug 3 "Declaring dynamic variable: /declare ${SubName}${SpellLoad2Cats.Arg[${SubOptions.Arg[${i},|]},|]}${x} ${SpellLoad2Vars.Arg[${SubOptions.Arg[${i},|]},|]} outer ${Ini[Bot_${Me.CleanName}_${MacroQuest.Server}_${Me.Class}.ini,${SubName},${SubName}${SpellLoad2Cats.Arg[${SubOptions.Arg[${i},|]},|]}${x}]}"Macro Paused.
ClericNameRemoved - [2017/10/26 01:24:07] Syntax: /mqpause [on|off] [chat [on|off]]
ClericNameRemoved - [2017/10/26 01:24:07] Macro is running again.
ClericNameRemoved - [2017/10/26 01:24:07] WARNING: Undefined Variable gmember used on line 2847@bot40.mac /declare ${SubName}${SpellLoad2Cats.Arg[${SubOptions.Arg[${i},|]},|]}${x} ${SpellLoad2Vars.Arg[${SubOptions.Arg[${i},|]},|]} outer ${Ini[Bot_${Me.CleanName}_${MacroQuest.Server}_${Me.Class}.ini,${SubName},${SubName}${SpellLoad2Cats.Arg[${SubOptions.Arg[${i},|]},|]}${x}]}Macro Paused.
ClericNameRemoved - [2017/10/26 01:24:08] Syntax: /mqpause [on|off] [chat [on|off]]
ClericNameRemoved - [2017/10/26 01:24:08] Macro is running again.
ClericNameRemoved - [2017/10/26 01:24:08] WARNING: Undefined Variable gmember used on line 2849@bot40.mac /if (${SpellLoad2Cats.Arg[${SubOptions.Arg[${i},|]},|].Equal[Conditions]}) /varset ${SubName}${SpellLoad2Cats.Arg[${SubOptions.Arg[${i},|]},|]}${x} ${Ini[Bot_${Me.CleanName}_${MacroQuest.Server}_${Me.Class}.ini,${SubName},${SubName}${SpellLoad2Cats.Arg[${SubOptions.Arg[${i},|]},|]}${x},123456]}Macro Paused.
ClericNameRemoved - [2017/10/26 01:24:09] Syntax: /mqpause [on|off] [chat [on|off]]
ClericNameRemoved - [2017/10/26 01:24:09] Macro is running again.
ClericNameRemoved - [2017/10/26 01:24:09] [MQ2] HealSelfTotal=0 -- You wont use this section, consider removing section from [Settings] OptionsCheck=
ClericNameRemoved - [2017/10/26 01:24:09] [MQ2] HealSplashTotal=0 -- You wont use this section, consider removing section from [Settings] OptionsCheck=
ClericNameRemoved - [2017/10/26 01:24:10] [MQ2] RootTotal=0 -- You wont use this section, consider removing section from [Settings] OptionsCheck=
ClericNameRemoved - [2017/10/26 01:24:10] [MQ2] They weren't declared
ClericNameRemoved - [2017/10/26 01:24:10] [MQ2] SnareTotal=0 -- You wont use this section, consider removing section from [Settings] OptionsCheck=
ClericNameRemoved - [2017/10/26 01:24:10] [MQ2] StunTotal=0 -- You wont use this section, consider removing section from [Settings] OptionsCheck=
ClericNameRemoved - [2017/10/26 01:24:10] Bot.Mac Loaded v2016.1009
ClericNameRemoved - [2017/10/26 01:24:10] /helpme - Shows available options and commands
ClericNameRemoved - [2017/10/26 01:24:11] [MQ2] AssistAt=99 - AssistPC=Aleatta - AssistType=3
ClericNameRemoved - [2017/10/26 01:24:11] [MQ2] Assisting Aleatta
ClericNameRemoved - [2017/10/26 01:24:11] [MQ2] Did I forget to say who I wanted to assist? - FALSE
ClericNameRemoved - [2017/10/26 01:24:11] [MQ2] Errors found in Bot_ClericNameRemoved_bristle_Cleric.ini. See messages above or look in \mq2\logs\bot40.log for errors encountered.
ClericNameRemoved - [2017/10/26 01:24:11] [MQ2] Beginning main bot loop
ClericNameRemoved - [2017/10/26 01:24:11] Ward of Censure
ClericNameRemoved - [2017/10/26 01:24:56] Greater Ward of Vie --> Apolla
ClericNameRemoved - [2017/10/26 01:25:02] Greater Ward of Vie --> Aleatta
ClericNameRemoved - [2017/10/26 01:25:14] Shining Bulwark --> ClericNameRemoved
ClericNameRemoved - [2017/10/26 01:25:20] Shining Bulwark --> Apolla
ClericNameRemoved - [2017/10/26 01:25:26] Shining Bulwark --> Aleatta
ClericNameRemoved - [2017/10/26 01:25:32] Shining Bulwark --> Leatta
ClericNameRemoved - [2017/10/26 01:25:38] Shining Bulwark --> Gebn
ClericNameRemoved - [2017/10/26 01:25:42] WARNING: Undefined Variable NULL_MercStanceNamed used on line 7733@bot40.mac /if (${Mercenary.State.Equal[ACTIVE]} && (${Target.Named}||${Target.Name.Find[#]}) && ${AddCount} && ${${Me.Mercenary.Class.ShortName}_MercStanceNamed.NotEqual[NULL]} && ${Mercenary.Stance.NotEqual[${${Me.Mercenary.Class.ShortName}_MercStanceNamed}]}) {Macro Paused.
ClericNameRemoved - [2017/10/26 01:25:42] WARNING: Undefined Variable NULL_MercStanceNamed used on line 7733@bot40.mac /if (${Mercenary.State.Equal[ACTIVE]} && (${Target.Named}||${Target.Name.Find[#]}) && ${AddCount} && ${${Me.Mercenary.Class.ShortName}_MercStanceNamed.NotEqual[NULL]} && ${Mercenary.Stance.NotEqual[${${Me.Mercenary.Class.ShortName}_MercStanceNamed}]}) {Macro Paused.
ClericNameRemoved - [2017/10/26 01:26:07] Syntax: /mqpause [on|off] [chat [on|off]]
ClericNameRemoved - [2017/10/26 01:26:07] Macro is running again.
ClericNameRemoved - [2017/10/26 01:26:07] WARNING: Undefined Variable NULL_MercStanceNormal used on line 7738@bot40.mac /if (${Mercenary.State.Equal[ACTIVE]} && !${Target.Named} && !${Target.Name.Find[#]} && ${AddCount} && ${${Me.Mercenary.Class.ShortName}_MercStanceNormal.NotEqual[NULL]} && ${Mercenary.Stance.NotEqual[${${Me.Mercenary.Class.ShortName}_MercStanceNormal}]}) {Macro Paused.
ClericNameRemoved - [2017/10/26 01:26:07] WARNING: Undefined Variable NULL_MercStanceNormal used on line 7738@bot40.mac /if (${Mercenary.State.Equal[ACTIVE]} && !${Target.Named} && !${Target.Name.Find[#]} && ${AddCount} && ${${Me.Mercenary.Class.ShortName}_MercStanceNormal.NotEqual[NULL]} && ${Mercenary.Stance.NotEqual[${${Me.Mercenary.Class.ShortName}_MercStanceNormal}]}) {Macro Paused.
ClericNameRemoved - [2017/10/26 01:26:09] Syntax: /mqpause [on|off] [chat [on|off]]
ClericNameRemoved - [2017/10/26 01:26:09] Macro is running again.
ClericNameRemoved - [2017/10/26 01:26:09] Yaulp (Lesser) --> ClericNameRemoved
ClericNameRemoved - [2017/10/26 01:26:09] [MQ2] "Yaulp (Lesser)" alt 3s CheckSingleHP <~~Passed to /call cast in HealSingle
ClericNameRemoved - [2017/10/26 01:26:09] WARNING: Undefined Variable spellID used on line 412@spell_routines.inc /if (${spellType.NotEqual[item]} && ${spellType.NotEqual[alt]} && ${spellType.NotEqual[ability]} && ${spellType.NotEqual[disc]}) /call SpellCast "${spellType}" "${spellName}" "${mySub}" "${spellID}" "${giveUpValue}"Macro Paused.
ClericNameRemoved - [2017/10/26 01:26:13] Syntax: /mqpause [on|off] [chat [on|off]]
ClericNameRemoved - [2017/10/26 01:26:13] Macro is running again.
ClericNameRemoved - [2017/10/26 01:26:13] Burst of Life --> Aleatta
ClericNameRemoved - [2017/10/26 01:26:13] [MQ2] "Burst of Life" alt 3s CheckSingleHP <~~Passed to /call cast in HealSingle
ClericNameRemoved - [2017/10/26 01:26:13] WARNING: Undefined Variable spellID used on line 412@spell_routines.inc /if (${spellType.NotEqual[item]} && ${spellType.NotEqual[alt]} && ${spellType.NotEqual[ability]} && ${spellType.NotEqual[disc]}) /call SpellCast "${spellType}" "${spellName}" "${mySub}" "${spellID}" "${giveUpValue}"Macro Paused.


INI for Cleric:

Spoiler:
[Settings]

OptionsCheck=|SelfBuff|Pulling|Merc|AA|Aura|Buff|ClickyNuke|Fade|Debuff|Dot|FightBuff|HealSingle|HealGroup|HealSelf|HealBalance|HealSplash|HealPet|MainTankBuff|Nuke|Rez|Root|Snare|Stun|XHeal|Mana|ModRod|

OptionsCheckRaid=|Pulling|Merc|AA|Aura|Buff|ClickyNuke|Fade|Debuff|Dot|FightBuff|HealSingle|HealGroup|HealSelf|HealBalance|HealSplash|HealPet|MainTankBuff|Nuke|Rez|Root|SelfBuff|Snare|Stun|XHeal|Mana|ModRod|

RestrictedZones=344,202,151,345
LootNPCs=FALSE
Verbose=FALSE
MyChannel=bc
AnnounceChannel=bc
AnnounceEvents=TRY|CAST_SUCCESS|CAST_IMMUNE|CAST_RESIST
EQBCAnnounceAdds=FALSE
AutoHideNPCCorpses=FALSE
EmergencySkill=EmergencySkill
ImmunityCheck=TRUE
BotVersion=v2016.1009
UseCamp=TRUE
CampRadius=30
CampRadiusMax=150
InterruptToHealAt=50
InterruptToXHealAt=50

[Assist]

AssistType=3
AssistAt=99
AttackRange=150
AttackCommand=/attack on
AmIOffTank=FALSE
UseMelee=FALSE
UseArchery=FALSE
ArcheryMaxDistance=200
ArcheryMinDistance=35
BurnModeAlias=BurnModeAlias

[Follow]

FollowMethod=stick|30 healer
FollowCommand=FollowCommand
StopFollowCommand=StopFollowCommand
MoveUpCommand=MoveUpCommand

[Campfire]

CF_Item1=Fellowship Kit:
CF_Item2=Fellowship Lumber Bundle:

[Pulling]

AlertListClear=FALSE
AlertListClearTimer=60m
PullConColor=LIGHT BLUE,BLUE,WHITE,YELLOW
CourseCorrectionTimer=4
AmIPuller=FALSE
PullRadius=600
PullZRadius=20
PullCastRange=150
MQ2NavPullRadius=10
MQ2NavPullZRadius=10
ReturnActionTotal=0
PullingMethod=Standard
PullingAnnounceCMD=NULL
PullingTotal=1
PullAtMyHPs=75
PullSkillRequiresLineOfSight1=TRUE
PullSkillRequiresLineOfSight2=TRUE
LeapName=12345
PrePullSkillName=12345
PrePullSkillGem=12345
PrePullSkillDelay=12345
PrePullSkillReuse=12345
PullSkillName1=NeedsAValue
PullSkillGem1=NeedsAValue
PullSkillDistance1=0

[Merc]

MercAssistAt=100

[Buff]

BuffXTargets=TRUE
BuffPets=TRUE
AutoInvis=FALSE
AutoBreakInvis=FALSE
InvisSpell=
InvisSpellGem=
InvisUndeadSpell=Group Perfected Invisibility to Undead
InvisUndeadSpellGem=alt
LevitateSpell=
LevitateSpellGem=
BuffTotal=10
BuffAnnounce=FALSE

BuffUse1=false
BuffSpellName1=Unity of Nonia
BuffSpellGem1=gem12
BuffClasses1=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions1=

BuffUse2=TRUE
BuffSpellName2=Unified Hand of Surety
BuffSpellIcon2=Surety
BuffSpellGem2=gem12
BuffClasses2=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions2=

BuffUse3=False
BuffSpellName3=Promised Rehabilitation
BuffSpellIcon3=Promised Rehabilitation
BuffSpellGem3=gem8
BuffClasses3=PAL,SHD,WAR
BuffConditions3=

BuffUse4=False
BuffSpellName4=Divine Indemnification
BuffSpellIcon4=Divine Indemnification
BuffSpellGem4=gem12
BuffClasses4=BRD,ENC,PAL,SHD,WAR
BuffConditions4=

BuffUse5=TRUE
BuffSpellName5=Greater Ward of Vie
BuffSpellIcon5=Greater Ward of Vie
BuffSpellGem5=gem12
BuffClasses5=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions5=

BuffUse6=False
BuffSpellName6=Unified Hand of Nonia
BuffSpellIcon6=
BuffSpellGem6=gem12
BuffAlias6=
BuffClasses6=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions6=

BuffUse7=false
BuffSpellName7=Unified Hand of Surety
BuffSpellIcon7=
BuffSpellGem7=gem12
BuffAlias7=
BuffClasses7=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions7=

BuffUse8=TRUE
BuffSpellName8=Rallied Greater Ward of Vie
BuffSpellIcon8=Rallied Greater Ward of Vie
BuffSpellGem8=gem12
BuffClasses8=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions8=

BuffUse9=TRUE
BuffSpellName9=Shining Bulwark
BuffSpellIcon9=Shining Bulwark
BuffSpellGem9=gem2
BuffClasses9=BER,BRD,BST,CLR,ENC,MNK,PAL,SHD,WAR
BuffConditions9=

BuffUse10=TRUE
BuffSpellName10=Blessing of Will
BuffSpellIcon10=Blessing of Will
BuffSpellGem10=gem12
BuffClasses10=BST,CLR,DRU,ENC,MAG,NEC,PAL,RNG,SHD,SHM,WIZ
BuffConditions10=
BuffAlias2=----------------------
BuffAlias5=----------------------
BuffAlias8=----------------------
BuffAlias9=----------------------
BuffAlias10=----------------------

[ClickyMaintenance]
clickies=0

[MainTankBuff]

DesignatedTank=Aleatta
MainTankBuffTotal=4
MainTankBuffAnnounce=FALSE

MainTankBuffUse1=TRUE
MainTankBuffSpellName1=Focused Celestial Regeneration
MainTankBuffConditions1=
MainTankBuffSpellGem1=alt
MainTankBuffUseAt1=100
MainTankBuffStopAt1=5
MainTankBuffNamedOnly1=FALSE
MainTankBuffRecast1=2m
MainTankBuffConditions1=

MainTankBuffUse2=TRUE
MainTankBuffSpellName2=Promised Rehabilitation
MainTankBuffSpellGem2=gem8
MainTankBuffUseAt2=98
MainTankBuffStopAt2=5
MainTankBuffNamedOnly2=FALSE
MainTankBuffRecast2=2m
MainTankBuffConditions2=

MainTankBuffUse3=TRUE
MainTankBuffSpellName3=Divine Guardian
MainTankBuffSpellGem3=alt
MainTankBuffUseAt3=100
MainTankBuffStopAt3=5
MainTankBuffNamedOnly3=FALSE
MainTankBuffRecast3=2m
MainTankBuffConditions3=

MainTankBuffUse4=false
MainTankBuffSpellName4=Vicarum's Retort
MainTankBuffSpellGem4=gem9
MainTankBuffUseAt4=100
MainTankBuffStopAt4=5
MainTankBuffNamedOnly4=FALSE
MainTankBuffRecast4=2m
MainTankBuffConditions4=

MainTankBuffUse5=False
MainTankBuffSpellName5=Anticipated Intercession
MainTankBuffSpellGem5=
MainTankBuffUseAt5=100
MainTankBuffStopAt5=5
MainTankBuffNamedOnly5=FALSE
MainTankBuffRecast5=2m
MainTankBuffConditions5=

[Rez]

RezRaidTimer=5m
RezGroupTimer=1m
GrabCorpse=TRUE
RezTotal=1
ForceMemRez=FALSE
RezAnnounce=FALSE

RezUse1=TRUE
RezSpellName1=Blessing of Resurrection
RezConditions1=
RezSpellGem1=alt
RezDuringCombat1=TRUE

RezTrustedTotal=0
RezTrusted1=
RezTrusted2=
RezTrusted3=
RezTrusted4=
RezTrusted5=
RezAlias1=rez

[Combat]

CombatFrequency1=XHeal|HealSingle|HealGroup|HealBalance|AA
CombatFrequency2=XHeal|HealSingle|HealGroup|HealBalance|AA
CombatFrequency3=XHeal|HealSingle|HealGroup|HealBalance|AA
CombatFrequency4=XHeal|HealSingle|HealGroup|HealBalance|AA
CombatFrequency5=Heal|MainTankBuff|HealSingle|HealGroup|HealBalance|XHeal|Rez|AA
StandardCombatOptions=Bard|XHeal|HealSingle|HealGroup|HealBalance|HealSelf|HealPet|Disc|MainTankBuff|FightBuff|Lifetap|Stun|AA|Dot|Nuke|Snare|ClickyNuke|Jolt|Rez|ModRod|Mana|Merc

[AAtoBuy]

AABuy=FALSE
AABuyChannel=/echo
AABuyAt=25
AABuyMode=Classic
AABuyPageOrder=Class|Archetype|General|Special
AAActivatedOnly=FALSE
SetAAPctOnLevelTo=0
AACount=0

[ImHit]

ImHitTotal=3
ImHitAnnounce=FALSE
ImHitUse1=FALSE
ImHitRecast1=1s
ImHitUseAtMyHP1=30
ImHitUse2=FALSE
ImHitRecast2=1s
ImHitUseAtMyHP2=30
ImHitUse3=FALSE
ImHitRecast3=1s
ImHitUseAtMyHP3=30

[Custom]

CustomCombatTotal=0
CustomRestTotal=0

[AA]


AATotal=10
AAAnnounce=FALSE

AAUse1=FALSE
AASpellName1=Item: Disable Item Abilities
AAUseAtMobPctHP1=96
AAStopAtMobPctHP1=5
AARecast1=1s
AANamedOnly1=FALSE
AAConditions1=

AAUse2=TRUE
AASpellName2=Fundament: Third Spire of Divinity
AAUseAtMobPctHP2=96
AAStopAtMobPctHP2=5
AARecast2=1s
AANamedOnly2=TRUE
AAConditions2=

AAUse3=TRUE
AASpellName3=Silent Casting
AAUseAtMobPctHP3=96
AAStopAtMobPctHP3=5
AARecast3=1s
AANamedOnly3=TRUE
AAConditions3=

AAUse4=TRUE
AASpellName4=Flurry of Life
AAUseAtMobPctHP4=96
AAStopAtMobPctHP4=5
AARecast4=1s
AANamedOnly4=TRUE
AAConditions4=

AAUse5=TRUE
AASpellName5=Healing Frenzy
AAUseAtMobPctHP5=96
AAStopAtMobPctHP5=5
AARecast5=1s
AANamedOnly5=TRUE
AAConditions5=

AAUse6=TRUE
AASpellName6=Flurry of Life
AAUseAtMobPctHP6=96
AAStopAtMobPctHP6=5
AARecast6=1s
AANamedOnly6=TRUE
AAConditions6=

AAUse7=True
AASpellName7= Divine Guardian
AAUseAtMobPctHP7=96
AAStopAtMobPctHP7=5
AARecast7=1s
AANamedOnly7=TRUE
AAConditions7=

AAUse8=FALSE
AASpellName8=Spell Casting Subtlety: Enabled
AAUseAtMobPctHP8=96
AAStopAtMobPctHP8=5
AARecast8=1s
AANamedOnly8=FALSE
AAConditions8=

AAUse9=TRUE
AASpellName9=Celestial Rapidity
AAUseAtMobPctHP9=96
AAStopAtMobPctHP9=5
AARecast9=1s
AANamedOnly9=TRUE
AAConditions9=

AAUse10=TRUE
AASpellName10=Yaulp (Lesser)
AAUseAtMobPctHP10=96
AAStopAtMobPctHP10=5
AARecast10=1s
AANamedOnly10=FALSE
AAConditions10=

[Aura]


AuraTotal=2
AuraAnnounce=FALSE

AuraUse1=False
AuraSpellName1=Aura of Divinity
AuraSpellGem1=gem12
AuraSpellIcon1=Aura of Divinity Effect
AuraName1=Aura of Divinity

AuraUse2=TRUE
AuraSpellName2=Aura of the Reverent
AuraSpellGem2=gem12
AuraSpellIcon2=Aura of the Reverent Effect
AuraName2=Aura of the Reverent

[ClickyNuke]

ClickyNukeTotal=1
ClickyNukeAnnounce=FALSE

ClickyNukeUse1=TRUE
ClickyNukeName1=Debilisian Dragonscale Breastplate
ClickyNukeConditions1=
ClickyNukeSpellGem1=item
ClickyNukeRecast1=1s
ClickyNukeUseAtMobPctHP1=96
ClickyNukeStopAtMobPctHP1=1indem

ClickyNukeNamedOnly1=True


[Fade]

FadeTotal=0
FadeAnnounce=TRUE

FadeUse1=False
FadeSpellName1=
FadeConditions1=
FadeSpellGem1=
FadeUseAtMyHP1=15


[Debuff]

DontDebuffConColor=|GREY|GREEN|
DebuffAdds=FALSE
DebuffTotal=1
DebuffTotalIfNamed=1
ForceMemDebuff=TRUE
DebuffAnnounce=FALSE

DebuffUse1=TRUE
DebuffSpellName1=Mark of the Vicarum
DebuffSpellGem1=gem12
DebuffUseAtMobPctHP1=96
DebuffStopAtMobPctHP1=1
DebuffRecast1=2m
DebuffMaxTries1=2

DebuffUse2=False
DebuffSpellName2=Blood of the Vicarum
DebuffSpellGem2=gem1
DebuffUseAtMobPctHP2=96
DebuffStopAtMobPctHP2=1
DebuffRecast2=2m
DebuffMaxTries2=2
DebuffUse3=TRUE
DebuffUseAtMobPctHP3=96
DebuffStopAtMobPctHP3=1
DebuffRecast3=2m
DebuffMaxTries3=2

[GoM]

GoMTotal=0
GoMTotalIfNamed=0
GoMAnnounce=FALSE
GoMUse1=TRUE

[Dot]

DotTotal=1
DotTotalIfNamed=1
ForceMemDot=FALSE
DotAnnounce=FALSE
DotUse1=TRUE
DotUseAtMobPctHP1=96
DotStopAtMobPctHP1=30
DotRecast1=1s
DotMaxTries1=2
DotSpellName1=----------------------
DotSpellGem1=----------------------

[FightBuff]

FightBuffTotal=5
ForceMemFightBuff=TRue
FightBuffAnnounce=FALSE

FightBuffUse1=TRUE
FightBuffSpellName1=Shining Bulwark
FightBuffSpellIcon1=Shining Bulwark
FightBuffConditions1=${Group.MainTank.Distance}<${Spell[Shining Bulwark Rk. II].AERange}
FightBuffSpellGem1=gem2
FightBuffNamedOnly1=FALSE
FightBuffForAggro1=FALSE

FightBuffUse2=TRUE
FightBuffSpellName2=Improved Twincast
FightBuffSpellIcon2=Improved Twincast
FightBuffConditions2=
FightBuffSpellGem2=alt
FightBuffNamedOnly2=True
FightBuffForAggro2=FALSE

FightBuffUse3=False
FightBuffSpellName3=Divine Indemnity
FightBuffSpellIcon3=Divine Indemnity
FightBuffSpellGem3=gem12
FightBuffNamedOnly3=FALSE
FightBuffForAggro3=FALSE
FightBuffConditions3=

FightBuffUse4=True
FightBuffSpellName4=Yaulp (Lesser)
FightBuffSpellIcon4=Yaulp IV
FightBuffSpellGem4=alt
FightBuffNamedOnly4=FALSE
FightBuffForAggro4=FALSE
FightBuffConditions4=

FightBuffUse5=TRUE
FightBuffSpellName5=Ward of Censure
FightBuffSpellIcon5=Ward of Censure
FightBuffSpellGem5=gem12
FightBuffNamedOnly5=FALSE
FightBuffForAggro5=FALSE
FightBuffConditions5=


[HealSingle]

HealPullerName=
HealPullerDist=50
HealSingleTotal=11
HealSingleAnnounce=FALSE

HealSingleUse1=TRUE
HealSingleSpellName1=Burst of Life
HealSingleConditions1=${Group.Member[${gmember}].Class.ShortName.NotEqual[SHM]}
HealSingleSpellGem1=alt
HealSingleUseAt1=89
HealSingleStopAt1=90
HealSingleRecast1=1s

HealSingleUse2=TRUE
HealSingleSpellName2=Spiritual Remedy
HealSingleSpellGem2=gem3
HealSingleUseAt2=89
HealSingleStopAt2=90
HealSingleRecast2=1s
HealSingleConditions2=

HealSingleUse3=TRUE
HealSingleSpellName3=Fervid Renewal
HealSingleSpellGem3=gem4
HealSingleUseAt3=89
HealSingleStopAt3=90
HealSingleRecast3=1s
HealSingleConditions3=

HealSingleUse4=TRUE
HealSingleSpellName4=Graceful Remedy
HealSingleSpellGem4=gem5
HealSingleUseAt4=89
HealSingleStopAt4=90
HealSingleRecast4=1s
HealSingleConditions4=

HealSingleUse5=TRUE
HealSingleSpellName5=Mystical Intervention
HealSingleSpellGem5=gem6
HealSingleUseAt5=89
HealSingleStopAt5=90
HealSingleRecast5=1s
HealSingleConditions5=

HealSingleUse6=TRUE
HealSingleSpellName6=Fraught Renewal
HealSingleSpellGem6=gem7
HealSingleUseAt6=98
HealSingleStopAt6=100
HealSingleRecast6=20s
HealSingleConditions6=

HealSingleUse7=False
HealSingleSpellName7=
HealSingleSpellGem7=
HealSingleUseAt7=71
HealSingleStopAt7=100
HealSingleRecast7=60s
HealSingleConditions7=

HealSingleUse8=TRUE
HealSingleSpellName8=Promised Rehabilitation
HealSingleSpellGem8=gem8
HealSingleUseAt8=98
HealSingleStopAt8=99
HealSingleRecast8=20s
HealSingleConditions8=

HealSingleUse89=TRUE
HealSingleSpellName9=Promised Rehabilitation
HealSingleSpellGem9=gem8
HealSingleUseAt9=98
HealSingleStopAt9=99
HealSingleRecast9=20s
HealSingleConditions9=${Group.Member[${gmember}].ID}==${Group.Puller.ID}


HealSingleUse10=TRUE
HealSingleSpellName10=Focused Celestial Regeneration
HealSingleSpellGem10=alt
HealSingleUseAt10=30
HealSingleStopAt10=100
HealSingleRecast10=20s
HealSingleConditions10=

HealSingleUse11=TRUE
HealSingleSpellName11=Yaulp (Lesser)
HealSingleSpellGem11=alt
HealSingleUseAt11=100
HealSingleStopAt11=100
HealSingleRecast11=20s
HealSingleConditions11=

[HealGroup]

HealGroupTotal=4
HealGroupAnnounce=FALSE

HealGroupUse1=TRUE
HealGroupSpellName1=Beacon of Life
HealGroupSpellGem1=alt
HealGroupUseAt1=50
HealGroupStopAt1=80
HealGroupAvgHP1=60
HealGroupConditions1=

HealGroupUse2=TRUE
HealGroupSpellName2=Celestial Regeneration
HealGroupSpellGem2=alt
HealGroupUseAt2=50
HealGroupStopAt2=80
HealGroupAvgHP2=60
HealGroupConditions2=

HealGroupUse3=TRUE
HealGroupSpellName3=Word of Greater Reformation
HealGroupSpellGem3=gem11
HealGroupUseAt3=50
HealGroupStopAt3=85
HealGroupAvgHP3=75
HealGroupConditions3=

HealGroupUse3=TRUE
HealGroupSpellName3=Syllable of Convalescence
HealGroupSpellGem3=gem9
HealGroupUseAt3=50
HealGroupStopAt3=85
HealGroupAvgHP3=65
HealGroupConditions3=

[HealBalance]

HealBalanceTotal=2
HealBalanceAnnounce=FALSE

HealBalanceUse1=TRUE
HealBalanceSpellName1=Divine Arbitration
HealBalanceConditions1=
HealBalanceSpellGem1=alt
HealBalanceUseAt1=30
HealBalanceStopAt1=70

HealBalanceUse2=TRUE
HealBalanceSpellName2=Harmony of the Soul
HealBalanceConditions2=
HealBalanceSpellGem2=item
HealBalanceUseAt2=30
HealBalanceStopAt2=70

[HealSplash]

HealSplashTotal=0
HealSplashAnnounce=FALSE
HealSplashUse1=FALSE
HealSplashSpellName1=Convalescent Splash
HealSplashSpellGem1=gem12
HealSplashAvgHP1=60
HealSplashUse2=TRUE
HealSplashAvgHP2=60

[HealPet]

HealPetTotal=2
HealPetAnnounce=FALSE

HealPetUse1=TRUE
HealPetSpellName1=Fervid Renewal
HealPetSpellGem1=gem4
HealPetUseAt1=50
HealPetStopAt1=90
HealPetRecast1=1s
HealPetConditions1=

HealPetUse2=TRUE
HealPetSpellName2=Spiritual Remedy
HealPetSpellGem2=gem3
HealPetUseAt2=50
HealPetStopAt2=90
HealPetRecast2=1s
HealPetConditions2=
HealPetConditions


[Nuke]

NukeTotal=1
NukeTotalIfNamed=1
ForceMemNuke=TRUE
NukeAnnounce=FALSE

NukeUse1=TRUE
NukeSpellName1=Glorious Judgment
NukeSpellGem1=gem10
NukeUseAtMobPctHP1=96
NukeStopAtMobPctHP1=1
NukeRecast1=1s
NukeConditions1=

[Root]

DontRootConColor=|GREY|GREEN|
RootPrimaryTarget=FALSE
RootAdds=FALSE

FaceNPCToRoot=FALSE
RootTotal=0
RootTotalIfNamed=2
RootAnnounce=FALSE
RootUse1=False
RootSpellName1=Blessed Chains
RootConditions1=
RootSpellGem1=alt
RootUseAtMobPctHP1=96
RootStopAtMobPctHP1=1
RootRecast1=2m
RootMaxTries1=2

RootUse2=TRUE
RootUseAtMobPctHP2=96
RootStopAtMobPctHP2=1
RootRecast2=2m
RootMaxTries2=2
RootConditions2=

[SelfBuff]

SelfBuffTotal=4
SelfBuffAnnounce=FALSE
ForceMemSelfbuff=TRUE

SelfBuffUse1=False
SelfBuffSpellName1=Vow of Vigor
SelfBuffSpellIcon1=Vow of Vigor
SelfBuffSpellGem1=gem12
SelfBuffConditions1=

SelfBuffUse2=TRUE
SelfBuffSpellName2=Ward of Censure
SelfBuffSpellIcon2=Ward of Censure
SelfBuffSpellGem2=gem12
SelfBuffConditions2=

SelfBuffUse3=TRUE
SelfBuffSpellName3=Armor of the Ardent
SelfBuffSpellIcon3=Armor of the Ardent
SelfBuffSpellGem3=gem12
SelfBuffConditions3=

SelfBuffUse4=TRUE
SelfBuffSpellName4=Blessing of Will
SelfBuffSpellIcon4=Blessing of Will
SelfBuffSpellGem4=gem12
SelfBuffConditions4=

SelfBuffUse5=TRUE
SelfBuffSpellName5=Yaulp (Lesser)
SelfBuffSpellIcon5=Yaulp IV
SelfBuffSpellGem5=alt
SelfBuffConditions5=

[Snare]

SnareTotal=0
ForceMemSnare=FALSE
SnareAnnounce=FALSE
SnareUse1=FALSE
SnareSpellName1=
SnareSpellGem1=
SnareUseAtMobPctHP1=15
SnareMaxTries1=2


[Stun]

StunTotal=0
StunTotalIfNamed=0
ForceMemStun=FALSE
StunAnnounce=FALSE

StunUse1=False
StunSpellName1=Awecrush
StunSpellGem1=gem0
StunUseAtMobPctHP1=100
StunStopAtMobPctHP1=1
StunRecast1=9s
StunConditions1=

StunUse2=False
StunSpellName2=Sound of Thunder
StunSpellGem2=gem0
StunUseAtMobPctHP2=100
StunStopAtMobPctHP2=1
StunRecast2=9s
StunConditions2=

StunUse3=False
StunSpellName3=
StunSpellGem3=
StunUseAtMobPctHP3=100
StunStopAtMobPctHP3=1
StunRecast3=9s
StunConditions3=

[XHeal]


XHealPullerName=RemovedToonName
XHealPullerDist=50
XHealTotal=9
XHealAnnounce=FALSE

XHealUse1=TRUE
XHealSpellName1=Burst of Life
XHealConditions1=
XHealSpellGem1=alt
XHealUseAt1=89
XHealStopAt1=90

XHealUse2=TRUE
XHealSpellName2=Spiritual Remedy
XHealSpellGem2=gem3
XHealUseAt2=89
XHealStopAt2=90

XHealUse3=TRUE
XHealSpellName3=Fervid Renewal
XHealSpellGem3=gem4
XHealUseAt3=89
XHealStopAt3=90

XHealUse4=TRUE
XHealSpellName4=Graceful Remedy
XHealSpellGem4=gem5
XHealUseAt4=89
XHealStopAt4=90

XHealUse5=TRUE
XHealSpellName5=Mystical Intervention
XHealSpellGem5=gem6
XHealUseAt5=89
XHealStopAt5=90

XHealUse6=TRUE
XHealSpellName6=Fraught Renewal
XHealSpellGem6=gem7
XHealUseAt6=89
XHealStopAt6=90

XHealUse7=FALSE
XHealSpellName7=
XHealSpellGem7=
XHealUseAt7=71
XHealStopAt7=100

XHealUse8=TRUE
XHealSpellName8=Promised Rehabilitation
XHealSpellGem8=gem8
XHealUseAt8=91
XHealStopAt8=99

XHealUse9=TRUE
XHealSpellName9=Focused Celestial Regeneration
XHealSpellGem9=alt
XHealUseAt9=30
XHealStopAt9=100


[Mana]

MedAt=75
MedToFull=TRUE
MedEvenIfNotInOOCRegen=FALSE
MedTimer=10s
QuietMiracle_IfManaBelow=5
QuietMiracle_Others_IfManaBelow=5
UseClarityPotions=FALSE

[Roles]

SetRoles=FALSE
GroupLeader=
GroupMainTank=
GroupMainAssist=
GroupPuller=
GroupXTarget1=Group Assist Target
RaidXTarget1=Raid Assist 1 Target


Log for Chanter:

Spoiler:
EnchanterNameReplaced - [2017/10/26 00:36:52] [MQ2Headshot] # of mobs in shardslanding: 0
EnchanterNameReplaced - [2017/10/26 00:36:52] # Welcome to MQ2Eqbc, EnchanterNameReplaced: Use /bccmd help to see help.
EnchanterNameReplaced - [2017/10/26 00:37:30] Unknown # command: #warning
EnchanterNameReplaced - [2017/10/26 00:37:30] Unable to add macro line.
EnchanterNameReplaced - [2017/10/26 00:38:34] A macro is currently running. You may wish to /endmacro before you finish camping.
EnchanterNameReplaced - [2017/10/26 00:38:52] Your integrity has been preserved.
EnchanterNameReplaced - [2017/10/26 00:43:00] [MQ2Headshot] # of mobs in shardslanding: 0
EnchanterNameReplaced - [2017/10/26 00:43:00] # Welcome to MQ2Eqbc, EnchanterNameReplaced: Use /bccmd help to see help.
EnchanterNameReplaced - [2017/10/26 00:43:36] [MQ2] Starting bot40
EnchanterNameReplaced - [2017/10/26 00:43:36] [MQ2] Available AssistTypes: 1 to just /assist, 2 to /target own prioritized mob, 3 to /assist with XTarget1 is kill target, 4 to use NetBots
EnchanterNameReplaced - [2017/10/26 00:43:36] [MQ2] AssistType 3 = Using XTarget1 to assist NULL at 99%
EnchanterNameReplaced - [2017/10/26 00:43:36] [MQ2] IgnoreList: |Magus Burlshin|an Adventurer|Magus Burlshi00|a selyrah plainskeeper|a lesser plainskeeper|a dire plainskeeper|
EnchanterNameReplaced - [2017/10/26 00:43:36] [MQ2] Error(s) found in Bot_EnchanterNameReplaced_bristle_Enchanter.ini
EnchanterNameReplaced - [2017/10/26 00:43:36] [MQ2] [ImHit] ImHitSpellName3=Color Shock: Enabled -- You dont have this ability/item
EnchanterNameReplaced - [2017/10/26 00:43:36] Added alert for: (0-200) any whose name contains cocoon
EnchanterNameReplaced - [2017/10/26 00:43:36] WARNING: Undefined Variable Navigation used on line 2071@bot40.mac /if ((${PullingMethod.Find[nav]}||${PullingMethod.Find[hunt]}) && !${Navigation.MeshLoaded} && ${AmIPuller}) {Macro Paused.
EnchanterNameReplaced - [2017/10/26 00:43:47] Syntax: /mqpause [on|off] [chat [on|off]]
EnchanterNameReplaced - [2017/10/26 00:43:47] Macro is running again.
EnchanterNameReplaced - [2017/10/26 00:43:47] [MQ2] [Aura] AuraSpellName2=Mana Reciprocration Aura -- You dont have this ability/item
EnchanterNameReplaced - [2017/10/26 00:43:47] [MQ2] [Aura] AuraSpellGem2=gem4 -- This gem is wrong format for AuraSpellName2=Mana Reciprocration Aura
EnchanterNameReplaced - [2017/10/26 00:43:48] [MQ2] [Buff] BuffAlias1= is missing or not filled out correctly
EnchanterNameReplaced - [2017/10/26 00:43:48] [MQ2] [Buff] BuffAlias1= was added to the INI.
EnchanterNameReplaced - [2017/10/26 00:43:48] [MQ2] [Buff] BuffClasses1= is missing or not filled out correctly
EnchanterNameReplaced - [2017/10/26 00:43:48] [MQ2] [Buff] BuffClasses1= was added to the INI.
EnchanterNameReplaced - [2017/10/26 00:43:48] [MQ2] [Buff] BuffAlias2= is missing or not filled out correctly
EnchanterNameReplaced - [2017/10/26 00:43:48] [MQ2] [Buff] BuffAlias2= was added to the INI.
EnchanterNameReplaced - [2017/10/26 00:43:48] [MQ2] [Buff] BuffClasses2= is missing or not filled out correctly
EnchanterNameReplaced - [2017/10/26 00:43:48] [MQ2] [Buff] BuffClasses2= was added to the INI.
EnchanterNameReplaced - [2017/10/26 00:43:48] [MQ2] [Dot] DotSpellName1=NULL -- You dont have this ability/item
EnchanterNameReplaced - [2017/10/26 00:43:48] WARNING: Undefined Variable MezSpellName1 used on line 7787@bot40.mac /varcalc numEffects ${Spell[${${CurrentSub}SpellName${x}}].NumEffects}Macro Paused.
EnchanterNameReplaced - [2017/10/26 00:43:53] Syntax: /mqpause [on|off] [chat [on|off]]
EnchanterNameReplaced - [2017/10/26 00:43:53] Macro is running again.
EnchanterNameReplaced - [2017/10/26 00:43:53] WARNING: Undefined Variable MezSpellName1 used on line 7789@bot40.mac /if (${Spell[${${CurrentSub}SpellName${x}}].Subcategory.Equal[Enthrall]}) {Macro Paused.
EnchanterNameReplaced - [2017/10/26 00:43:59] Syntax: /mqpause [on|off] [chat [on|off]]
EnchanterNameReplaced - [2017/10/26 00:43:59] Macro is running again.
EnchanterNameReplaced - [2017/10/26 00:43:59] WARNING: Undefined Variable MezSpellName5 used on line 7787@bot40.mac /varcalc numEffects ${Spell[${${CurrentSub}SpellName${x}}].NumEffects}Macro Paused.
EnchanterNameReplaced - [2017/10/26 00:44:01] Syntax: /mqpause [on|off] [chat [on|off]]
EnchanterNameReplaced - [2017/10/26 00:44:01] Macro is running again.
EnchanterNameReplaced - [2017/10/26 00:44:01] WARNING: Undefined Variable MezSpellName5 used on line 7789@bot40.mac /if (${Spell[${${CurrentSub}SpellName${x}}].Subcategory.Equal[Enthrall]}) {Macro Paused.
EnchanterNameReplaced - [2017/10/26 00:44:03] Syntax: /mqpause [on|off] [chat [on|off]]
EnchanterNameReplaced - [2017/10/26 00:44:03] Macro is running again.
EnchanterNameReplaced - [2017/10/26 00:44:03] [MQ2] [Pet] PetBuffName1=NULL -- Not a valid spell name
EnchanterNameReplaced - [2017/10/26 00:44:03] [MQ2] [Pet] PetBuffSpell1=NULL -- You dont have this spell/AA/Item
EnchanterNameReplaced - [2017/10/26 00:44:03] [MQ2] RootTotal=0 -- You wont use this section, consider removing section from [Settings] OptionsCheck=
EnchanterNameReplaced - [2017/10/26 00:44:03] [MQ2] They weren't declared
EnchanterNameReplaced - [2017/10/26 00:44:03] Bot.Mac Loaded v2016.1009
EnchanterNameReplaced - [2017/10/26 00:44:03] /helpme - Shows available options and commands
EnchanterNameReplaced - [2017/10/26 00:44:03] [MQ2] AssistAt=99 - AssistPC=AEnchanterNameReplaced - AssistType=3
EnchanterNameReplaced - [2017/10/26 00:44:03] [MQ2] Assisting AEnchanterNameReplaced
EnchanterNameReplaced - [2017/10/26 00:44:03] [MQ2] Did I forget to say who I wanted to assist? - FALSE
EnchanterNameReplaced - [2017/10/26 00:44:03] [MQ2] Errors found in Bot_EnchanterNameReplaced_bristle_Enchanter.ini. See messages above or look in \mq2\logs\bot40.log for errors encountered.
EnchanterNameReplaced - [2017/10/26 00:44:04] [MQ2] Beginning main bot loop
EnchanterNameReplaced - [2017/10/26 00:44:06] Sanguine Mind Crystal --> EnchanterNameReplaced
EnchanterNameReplaced - [2017/10/26 00:44:06] Azure Mind Crystal --> EnchanterNameReplaced
EnchanterNameReplaced - [2017/10/26 00:44:06] WARNING: Undefined Variable NULL_MercStanceNamed used on line 7733@bot40.mac /if (${Mercenary.State.Equal[ACTIVE]} && (${Target.Named}||${Target.Name.Find[#]}) && ${AddCount} && ${${Me.Mercenary.Class.ShortName}_MercStanceNamed.NotEqual[NULL]} && ${Mercenary.Stance.NotEqual[${${Me.Mercenary.Class.ShortName}_MercStanceNamed}]}) {Macro Paused.
EnchanterNameReplaced - [2017/10/26 00:44:06] WARNING: Undefined Variable NULL_MercStanceNamed used on line 7733@bot40.mac /if (${Mercenary.State.Equal[ACTIVE]} && (${Target.Named}||${Target.Name.Find[#]}) && ${AddCount} && ${${Me.Mercenary.Class.ShortName}_MercStanceNamed.NotEqual[NULL]} && ${Mercenary.Stance.NotEqual[${${Me.Mercenary.Class.ShortName}_MercStanceNamed}]}) {Macro Paused.
EnchanterNameReplaced - [2017/10/26 00:44:24] Syntax: /mqpause [on|off] [chat [on|off]]
EnchanterNameReplaced - [2017/10/26 00:44:24] Macro is running again.
EnchanterNameReplaced - [2017/10/26 00:44:24] WARNING: Undefined Variable NULL_MercStanceNormal used on line 7738@bot40.mac /if (${Mercenary.State.Equal[ACTIVE]} && !${Target.Named} && !${Target.Name.Find[#]} && ${AddCount} && ${${Me.Mercenary.Class.ShortName}_MercStanceNormal.NotEqual[NULL]} && ${Mercenary.Stance.NotEqual[${${Me.Mercenary.Class.ShortName}_MercStanceNormal}]}) {Macro Paused.
EnchanterNameReplaced - [2017/10/26 00:44:24] WARNING: Undefined Variable NULL_MercStanceNormal used on line 7738@bot40.mac /if (${Mercenary.State.Equal[ACTIVE]} && !${Target.Named} && !${Target.Name.Find[#]} && ${AddCount} && ${${Me.Mercenary.Class.ShortName}_MercStanceNormal.NotEqual[NULL]} && ${Mercenary.Stance.NotEqual[${${Me.Mercenary.Class.ShortName}_MercStanceNormal}]}) {Macro Paused.
EnchanterNameReplaced - [2017/10/26 00:44:55] Your integrity has been preserved.
EnchanterNameReplaced - [2017/10/26 00:56:56] MQ2MMOBugs :: You are now logged in as okcmagistrate.
EnchanterNameReplaced - [2017/10/26 00:56:56] MQ2MMOBugs :: Your account status is now set to premium.


INI for Enchanter:

Spoiler:
[Settings]

OptionsCheck=|SelfBuff|Pulling|Merc|AA|Aura|Buff|ClickyMaintenance|ClickyNuke|Fade|Debuff|Dot|FightBuff|Mez|Nuke|Pet|Root|Stun|Mana|ModRod|Buff
OptionsCheckRaid=|Pulling|Merc|AA|Aura|Buff|ClickyMaintenance|ClickyNuke|Fade|Debuff|Dot|FightBuff|Mez|Nuke|Pet|Root|SelfBuff|Stun|Mana|ModRod|
UseCamp=FALSE
CampRadius=30
CampRadiusMax=150
ChaseAssist=1
ChaseDistance=20
RestrictedZones=344,202,151,345
LootNPCs=FALSE
Verbose=FALSE
MyChannel=bc
AnnounceChannel=bc
AnnounceEvents=TRY|CAST_SUCCESS|CAST_IMMUNE|CAST_R ESIST
EQBCAnnounceAdds=FALSE
AutoHideNPCCorpses=FALSE
EmergencySkill=EmergencySkill
ImmunityCheck=TRUE
BotVersion=v2016.1009


[Assist]

AssistType=3
AssistAt=99
AttackRange=150
AttackCommand=/attack on
AmIOffTank=FALSE
UseMelee=FALSE
UseArchery=FALSE
ArcheryMaxDistance=200
ArcheryMinDistance=35
BurnModeAlias=BurnModeAlias

[Follow]

FollowMethod=stick|30 healer
FollowCommand=Follow
StopFollowCommand=Wait
MoveUpCommand=MoveUp

[ImHit]

ImHitTotal=3
ImHitAnnounce=FALSE

ImHitUse1=TRUE
ImHitSpellName1=Mental Contortion
ImHitRecast1=541s
ImHitUseAtMyHP1=70
ImHitConditions1=

ImHitUse2=False
ImHitSpellName2=Rune of Banishment
ImHitRecast2=601s
ImHitUseAtMyHP2=60
ImHitConditions2=

ImHitUse3=TRUE
ImHitSpellName3=Color Shock: Enabled
ImHitRecast3=2s
ImHitUseAtMyHP3=90
ImHitConditions3=

[Custom]

CustomCombatTotal=0
CustomRestTotal=0
CustomCombat1=
CustomRest1=

[Campfire]

CF_Item1=Fellowship Kit:
CF_Item2=Fellowship Lumber Bundle:

[Pulling]

AlertListClear=FALSE
AlertListClearTimer=60m
AmIPuller=FALSE
PullRadius=600
PullZRadius=20
PullCastRange=150
MQ2NavPullRadius=10
MQ2NavPullZRadius=10
ReturnActionTotal=0
ReturnAction1=
PullConColor=LIGHT BLUE,BLUE,WHITE,YELLOW
CourseCorrectionTimer=4
PullingMethod=Standard
PullingAnnounceCMD=NULL
PullingTotal=1
PullAtMyHPs=75
PullSkillName1=NeedsAValue
PullSkillRequiresLineOfSight1=TRUE
PullSkillDistance1=0
PullSkillSummon1=
PullSkillName2=
PullSkillRequiresLineOfSight2=TRUE
PullSkillDistance2=
PullSkillSummon2=
LeapName=12345
PrePullSkillName=12345
PrePullSkillGem=12345
PrePullSkillDelay=12345
PrePullSkillReuse=12345
PullSkillGem1=NeedsAValue

[Merc]

MercAssistAt=100

[AA]

AATotal=17
AAAnnounce=FALSE

AAUse1=False
AASpellName1=Illusions of Grandueur
AAUseAtMobPctHP1=96
AAStopAtMobPctHP1=5
AARecast1=721s
AANamedOnly1=TRUE
AAConditions1=

AAUse2=TRUE
AASpellName2=Soothing Words
AAUseAtMobPctHP2=98
AAStopAtMobPctHP2=5
AARecast2=1201s
AANamedOnly2=TRUE
AAConditions2=

AAUse3=TRUE
AASpellName3=Phantasmal Opponent
AAUseAtMobPctHP3=96
AAStopAtMobPctHP3=5
AARecast3=421s
AANamedOnly3=FALSE
AAConditions3=

AAUse4=TRUE
AASpellName4=Silent Casting
AAUseAtMobPctHP4=95
AAStopAtMobPctHP4=5
AARecast4=721s
AANamedOnly4=TRUE
AAConditions4=

AAUse5=TRUE
AASpellName5=Focus of Arcanum
AAUseAtMobPctHP5=94
AAStopAtMobPctHP5=5
AARecast5=601s
AANamedOnly5=TRUE
AAConditions5=

AAUse6=TRUE
AASpellName6=Fundament: Second Spire of Enchantment
AAUseAtMobPctHP6=96
AAStopAtMobPctHP6=5
AARecast6=451s
AANamedOnly6=TRUE
AAConditions6=

AAUse7=TRUE
AASpellName7=Arcane Whisper
AAUseAtMobPctHP7=99
AAStopAtMobPctHP7=5
AARecast7=601s
AANamedOnly7=TRUE
AAConditions7=

AAUse8=TRUE
AASpellName8=Glyph Spray
AAUseAtMobPctHP8=96
AAStopAtMobPctHP8=5
AARecast8=1081s
AANamedOnly8=TRUE
AAConditions8=

AAUse9=TRUE
AASpellName9=Improved Twincast
AAUseAtMobPctHP9=99
AAStopAtMobPctHP9=5
AARecast9=901s
AANamedOnly9=TRUE
AAConditions9=

AAUse10=FALSE
AASpellName10=Divine Companion Aura
AAUseAtMobPctHP10=96
AAStopAtMobPctHP10=5
AARecast10=1s
AANamedOnly10=FALSE
AAConditions10=

AAUse11=TRUE
AASpellName11=Crippling Aurora
AAUseAtMobPctHP11=96
AAStopAtMobPctHP11=5
AARecast11=181s
AANamedOnly11=FALSE
AAConditions11=

AAUse12=TRUE
AASpellName12=Banestrike
AAUseAtMobPctHP12=96
AAStopAtMobPctHP12=5
AARecast12=61s
AANamedOnly12=FALSE
AAConditions12=

AAUse13=False
AASpellName13=Reactive Rune
AAUseAtMobPctHP13=96
AAStopAtMobPctHP13=5
AARecast13=1201s
AANamedOnly13=TRUE
AAConditions13=

AAUse14=TRUE
AASpellName14=Calculated Insanity
AAUseAtMobPctHP14=96
AAStopAtMobPctHP14=5
AARecast14=1201s
AANamedOnly14=FALSE
AAConditions14=

AAUse15=False
AASpellName15=Chromatic Haze
AAUseAtMobPctHP15=96
AAStopAtMobPctHP15=5
AARecast15=601s
AANamedOnly15=TRUE
AAConditions15=
AAConditions15=

AAUse16=TRUE
AASpellName16=Fortify Companion
AAUseAtMobPctHP16=96
AAStopAtMobPctHP16=5
AARecast16=901s
AANamedOnly16=FALSE
AAConditions16=

AAUse17=TRUE
AASpellName17=Reactive False
AAUseAtMobPctHP17=96
AAStopAtMobPctHP17=5
AARecast17=1201s
AANamedOnly17=TRUE
AAConditions17=

[Aura]
AuraTotal=2
AuraAnnounce=FALSE

AuraUse1=TRUE
AuraSpellName1=Enticer's Aura
AuraSpellIcon1=Enticer's Aura Effect:permanent
AuraConditions1=
AuraSpellGem1=gem4
AuraName1=Enticer's Aura

AuraUse2=TRUE
AuraSpellName2=Mana Reciprocration Aura
AuraSpellIcon2=Mana Reciprocration
AuraSpellGem2=gem4
AuraName2=Mana Reciprocration

AuraUse3=FALSE
AuraSpellName3=Twincast Aura Rk. III
AuraSpellGem3=gem4
AuraSpellIcon3=
AuraName3=

AuraUse4=FALSE
AuraSpellName4=Befuddler's Aura
AuraSpellGem4=gem4
AuraSpellIcon4=
AuraName4=

AuraUse5=FALSE
AuraSpellName5=Aura of Abstract Acumen
AuraSpellGem5=gem4
AuraSpellIcon5=
AuraName5=


[Buff]

BuffXTargets=TRUE
BuffPets=TRUE
AutoInvis=FALSE
AutoBreakInvis=FALSE
InvisSpell=
InvisSpellGem=
InvisUndeadSpell=
InvisUndeadSpellGem=
LevitateSpell=
LevitateSpellGem=

BuffTotal=2
BuffAnnounce=FALSE

BuffUse1=TRUE
BuffSpellName1=Hastening of Prokev
BuffSpellIcon1=Hastening of Prokev
BuffConditions1=
BuffSpellGem1=gem4

BuffUse2=TRUE
BuffSpellName2=Voice of Precognition
BuffSpellIcon2=Voice of Precognition
BuffConditions2=
BuffSpellGem2=gem3

BuffUse3=FALSE
BuffSpellName3=Voice of Prescience
BuffSpellIcon3=
BuffSpellGem3=
BuffAlias3=
BuffClasses3=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions3=

BuffUse4=FALSE
BuffSpellName4=Rune of Yozan
BuffSpellIcon4=
BuffSpellGem4=
BuffAlias4=
BuffClasses4=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions4=

BuffUse5=FALSE
BuffSpellName5=Prescience
BuffSpellIcon5=
BuffSpellGem5=
BuffAlias5=
BuffClasses5=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions5=

BuffUse6=FALSE
BuffSpellName6=Aegis of Xadrith
BuffSpellIcon6=
BuffSpellGem6=
BuffAlias6=
BuffClasses6=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,P AL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions6=

BuffUse7=TRUE
BuffSpellName7=Legion of Lucem
BuffSpellIcon7=Legion of Lucem Rk. II
BuffSpellGem7=gem11
BuffAlias7=spell
BuffClasses7=
BuffConditions7=
BuffAlias1=----------------------
BuffClasses1=----------------------
BuffAlias2=----------------------
BuffClasses2=----------------------


[ClickyMaintenance]

clickies=0

[ClickyNuke]

ClickyNukeTotal=1
ClickyNukeAnnounce=FALSE

ClickyNukeUse1=TRUE
ClickyNukeName1=Sebilisan Froglokskin Robe
ClickyNukeConditions1=
ClickyNukeSpellGem1=item
ClickyNukeRecast1=1s
ClickyNukeUseAtMobPctHP1=96
ClickyNukeStopAtMobPctHP1=1
ClickyNukeNamedOnly1=TRue


[Fade]
FadeTotal=1
FadeAnnounce=FALSE
FadeUse1=TRUE
FadeSpellName1=Self Stasis
FadeConditions1=
FadeSpellGem1=alt
FadeUseAtMyHP1=35


[Debuff]

DontDebuffConColor=|GREY|GREEN|
DebuffAdds=TRUE
DebuffTotal=2
DebuffTotalIfNamed=7
ForceMemDebuff=TRUE
DebuffAnnounce=FALSE


DebuffUse1=TRUE
DebuffSpellName1=Dreary Deeds
DebuffConditions1=
DebuffSpellGem1=alt
DebuffUseAtMobPctHP1=96
DebuffStopAtMobPctHP1=1
DebuffRecast1=2m
DebuffMaxTries1=2

DebuffUse2=TRUE
DebuffSpellName2=Bite of Tashani
DebuffConditions2=
DebuffSpellGem2=alt
DebuffUseAtMobPctHP2=96
DebuffStopAtMobPctHP2=1
DebuffRecast2=2m
DebuffMaxTries2=2

DebuffUse3=FALSE
DebuffSpellName3=Slivered Consciousness
DebuffSpellGem3=gem12
DebuffUseAtMobPctHP3=96
DebuffStopAtMobPctHP3=1
DebuffRecast3=2m
DebuffMaxTries3=2
DebuffConditions3=

DebuffUse4=FALSE
DebuffSpellName4=Compelling Edict
DebuffSpellGem4=gem12
DebuffUseAtMobPctHP4=96
DebuffStopAtMobPctHP4=1
DebuffRecast4=2m
DebuffMaxTries4=2
DebuffConditions4=

DebuffUse5=TRUE
DebuffSpellName5=Decree of Tashan
DebuffSpellGem5=gem4
DebuffUseAtMobPctHP5=96
DebuffStopAtMobPctHP5=1
DebuffRecast5=2m
DebuffMaxTries5=2
DebuffConditions5=

DebuffUse6=TRUE
DebuffSpellName6=Undermining Helix
DebuffSpellGem6=gem3
DebuffUseAtMobPctHP6=96
DebuffStopAtMobPctHP6=1
DebuffRecast6=2m
DebuffMaxTries6=2
DebuffConditions6=

DebuffUse7=FALSE
DebuffSpellName7=Suffocation
DebuffSpellGem7=gem4
DebuffUseAtMobPctHP7=96
DebuffStopAtMobPctHP7=1
DebuffRecast7=2m
DebuffMaxTries7=2
DebuffConditions7=

DebuffUse8=FALSE
DebuffSpellName8=Confusing Constriction
DebuffSpellGem8=gem4
DebuffUseAtMobPctHP8=96
DebuffStopAtMobPctHP8=1
DebuffRecast8=2m
DebuffMaxTries8=2
DebuffConditions8=

DebuffUse9=False
DebuffSpellName9=Ethereal Manipulation
DebuffConditions9=
DebuffSpellGem9=alt
DebuffUseAtMobPctHP9=98
DebuffStopAtMobPctHP9=1
DebuffRecast9=2m
DebuffMaxTries9=2

[GoM]

GoMTotal=0
GoMTotalIfNamed=0
GoMAnnounce=FALSE
GoMUse1=TRUE
GoMSpellName1=
GoMSpellIcon1=
GoMSpellGem1=

[Dot]

DotTotal=1
DotTotalIfNamed=1
ForceMemDot=TRUE
DotAnnounce=FALSE

DotUse1=TRUE
DotSpellName1=Mind Storm
DotConditions1=
DotSpellGem1=gem9
DotUseAtMobPctHP1=96
DotStopAtMobPctHP1=50
DotRecast1=31s
DotMaxTries1=2

DotUse2=False
DotSpellName2=Drown
DotSpellGem2=gem10
DotUseAtMobPctHP2=96
DotStopAtMobPctHP2=50
DotRecast2=49s
DotMaxTries2=2
DotConditions2=

DotUse3=False
DotSpellName3=Mind Squall
DotSpellGem3=gem11
DotUseAtMobPctHP3=96
DotStopAtMobPctHP3=50
DotRecast3=31s
DotMaxTries3=2
DotConditions3=

[FightBuff]

FightBuffTotal=4
ForceMemFightBuff=TRUE
FightBuffAnnounce=FALSE

FightBuffUse1=FALSE
FightBuffSpellName1=Color Shock: Enabled
FightBuffSpellIcon1=Color Shock
FightBuffConditions1=
FightBuffSpellGem1=alt
FightBuffNamedOnly1=FALSE
FightBuffForAggro1=FALSE

FightBuffUse2=TRUE
FightBuffSpellName2=Silent Casting
FightBuffSpellIcon2=Silent Casting
FightBuffConditions2=
FightBuffSpellGem2=alt
FightBuffNamedOnly2=TRUE
FightBuffForAggro2=FALSE

FightBuffUse3=TRUE
FightBuffSpellName3=Improved Twincast
FightBuffSpellIcon3=Improved Twincast
FightBuffConditions3=
FightBuffSpellGem3=alt
FightBuffNamedOnly3=TRUE
FightBuffForAggro3=FALSE

FightBuffUse4=False
FightBuffSpellName4=Dichotomic Reinforcement
FightBuffSpellIcon4=Dichotomic Reinforcement
FightBuffConditions4=
FightBuffSpellGem4=gem12
FightBuffNamedOnly4=FALSE
FightBuffForAggro4=FALSE

[Mez]

IgnoreImmuneLists=FALSE
DontMezConColor=|GREY|GREEN|
MezTotal=5
ForceMemMez=TRUE
MezAnnounce=TRUE

MezUse1=FALSE
MezSpellName1=Nightmare Stasis
MezConditions1=${mezcnt}>2
MezSpellGem1=alt

MezUse2=TRUE
MezSpellName2=Bewilder
MezConditions2=${mezcnt}>2
MezSpellGem2=gem1

MezUse3=TRUE
MezSpellName3=Beam of Slumber
MezSpellGem3=alt
MezConditions3=

MezUse4=TRUE
MezSpellName4=Deadening Wave
MezSpellGem4=gem2
MezConditions4=${mezcnt}>3

MezUse5=False
MezSpellName5=Perilous Bafflement
MezSpellGem5=gem9
MezConditions5=
MezUse6=FALSE
MezSpellName6=
MezSpellGem6=
MezConditions6=


[AEMez]

AEMezTotal=1
AEMezAnnounce=FALSE
AEMezUse1=TRUE
AEMezSpellName1=Deadening Wave
AEMezSpellGem1=gem12
AEMezConditions1=${aemezcnt}>3


[PBAEMez]

PBAEMezTotal=0
PBAEMezAnnounce=FALSE

PBAEMezUse1=False
PBAEMezSpellName1=Confusion
PBAEMezSpellGem1=gem4
PBAEMezConditions1=${PBAEMezcnt}>2


[Nuke]
NukeTotal=4
NukeTotalIfNamed=4
ForceMemNuke=TRUE
NukeAnnounce=FALSE

NukeUse1=TRUE
NukeSpellName1=Mindsunder
NukeSpellGem1=gem5
NukeUseAtMobPctHP1=96
NukeStopAtMobPctHP1=50
NukeRecast1=15s
NukeConditions1=

NukeUse2=false
NukeSpellName2=Mindcleave
NukeSpellGem2=gem6
NukeUseAtMobPctHP2=96
NukeStopAtMobPctHP2=30
NukeRecast2=20s
NukeConditions2=

NukeUse3=False
NukeSpellName3=Polyrefractive Assault
NukeSpellGem3=gem7
NukeUseAtMobPctHP3=96
NukeStopAtMobPctHP3=40
NukeRecast3=20s
NukeConditions3=

NukeUse4=False
NukeSpellName4=Chromarift
NukeSpellGem4=gem8
NukeUseAtMobPctHP4=96
NukeStopAtMobPctHP4=50
NukeRecast4=20s
NukeConditions4=

NukeUse5=TRUE
NukeSpellName5=Color Shock: Enabled
NukeSpellGem5=alt
NukeUseAtMobPctHP5=96
NukeStopAtMobPctHP5=1
NukeRecast5=10s
NukeConditions5=

[Pet]

PetGHOLD=TRUE
UsePet=TRUE

PetSpell=Gordianus' Animation
PetSpellGem=gem12
UsePetFocusAA=TRUE
PetAttackAt=97
ShrinkPet=FALSE
ShrinkPetIfHeightAbove=1.5
ShrinkPetSpell=
ShrinkPetSpellGem=

DoPetHeals=FALSE
PetHealAt=50
PetHealSpell=
PetHealSpellGem=
UseAAPetHeal=TRUE
PetAAHealAt=5

DoPetBuffs=TRUE
PetBuffRecheck=60s
PetBuffTotal=1

PetBuffName1=
PetBuffSpell1=
PetBuffGem1=
PetBuffRecast1=3601s


[Root]

DontRootConColor=|GREY|GREEN|
RootPrimaryTarget=FALSE
RootAdds=FALSE
FaceNPCToRoot=TRUE
RootTotal=0
RootTotalIfNamed=3
RootAnnounce=FALSE

RootUse1=TRUE
RootSpellName1=Beguiler's Directed Banishment
RootConditions1=
RootSpellGem1=alt
RootUseAtMobPctHP1=96
RootStopAtMobPctHP1=1
RootRecast1=2m
RootMaxTries1=2

RootUse2=TRUE
RootSpellName2=Beguiler's Banishment
RootConditions2=
RootSpellGem2=alt
RootUseAtMobPctHP2=96
RootStopAtMobPctHP2=1
RootRecast2=2m
RootMaxTries2=2


[SelfBuff]

SelfBuffTotal=8
SelfBuffAnnounce=FALSE

SelfBuffUse1=TRUE
SelfBuffSpellName1=Shield of the Pellarus
SelfBuffSpellIcon1=Shield of the Pellarus
SelfBuffConditions1=
SelfBuffSpellGem1=gem3

SelfBuffUse2=TRUE
SelfBuffSpellName2=Mind Over Matter
SelfBuffSpellIcon2=Mind Over Matter
SelfBuffConditions2=
SelfBuffSpellGem2=alt

SelfBuffUse3=TRUE
SelfBuffSpellName3=Veil of Mindshadow
SelfBuffSpellIcon3=Veil of Mindshadow
SelfBuffConditions3=
SelfBuffSpellGem3=alt

SelfBuffUse4=TRUE
SelfBuffSpellName4=Enticer's Rune
SelfBuffSpellIcon4=Enticer's Rune
SelfBuffSpellGem4=gem4
SelfBuffConditions4=

SelfBuffUse5=TRUE
SelfBuffSpellName5=Eldritch Rune
SelfBuffSpellIcon5=Eldritch Rune
SelfBuffConditions5=
SelfBuffSpellGem5=alt

SelfBuffUse6= TRUE
SelfBuffSpellName6=Brimstone Resolution
SelfBuffSpellIcon6=Brimstone Resolution
SelfBuffSpellGem6=gem3
SelfBuffConditions6=

SelfBuffUse7=TRUE
SelfBuffSpellName7=Shield of Consequence
SelfBuffSpellIcon7=Shield of Consequence
SelfBuffSpellGem7=gem4
SelfBuffConditions7=

SelfBuffUse8=False
SelfBuffSpellName8=Enticer's Unity
SelfBuffSpellIcon8=Enticer's Unity
SelfBuffSpellGem8=gem3
SelfBuffConditions8=

[Stun]

StunTotal=1
StunTotalIfNamed=0
ForceMemStun=TRUE
StunAnnounce=FALSE

StunUse1=FAlse
StunSpellName1=Dizzying Storm
StunSpellGem1=gem12
StunUseAtMobPctHP1=100
StunStopAtMobPctHP1=1
StunRecast1=9s
StunConditions1=



[Mana]

MedAt=75
MedToFull=FALSE
MedEvenIfNotInOOCRegen=FALSE
MedTimer=10s
SecondSpire_IfManaBelow=65
SecondSpire_Others_IfManaBelow=5
UseClarityPotions=FALSE


[Combat]

CombatFrequency1=Mez
CombatFrequency2=Mez|AEMez|Debuff|Dot|Nuke
CombatFrequency3=Mez|Debuff|FightBuff|AA|Nuke|Clic kyNuke|Dot
CombatFrequency4=Mez|Debuff
CombatFrequency5=Mez|FightBuff|Stun|AA|Dot|Nuke|Cl ickyNuke|Jolt|Rez|ModRod|Mana|Merc|Buff
StandardCombatOptions=Bard|XHeal|HealSingle|HealGroup|HealBalance|HealSelf|HealPet|Disc|MainTankBuff|FightBuff|Lifetap|Stun|AA|Dot|Nuke|Snare|ClickyNuke|Jolt|Rez|ModRod|Mana|Merc


[Roles]

SetRoles=FALSE
GroupLeader=
GroupMainTank=
GroupMainAssist=
GroupPuller=
GroupXTarget1=Group Assist Target
RaidXTarget1=Raid Assist 1 Target

[AAtoBuy]

AABuy=FALSE
AABuyChannel=/echo
AABuyAt=25
AABuyMode=Classic
AABuyPageOrder=Class|Archetype|General|Special
AAActivatedOnly=FALSE
SetAAPctOnLevelTo=0
AACount=0

[Snare]

SnareConditions=

 
Last edited:
Heya Chatwiththisname,

I am not so good with this part of the forum, but I have tested some of my f2p toons using the latest update of mq2 and the latest up date from a page or two ago on this thread. and have found the following problems. Let me know if there is a better way for me to communicate the errors I am finding from testing. Other than using applications, and expanding off of templets from others on computers, I am not so good. With Finace and Law thats my game, so if there is anything I can do to help, send me a message with instructions that an idiot could get right.


That's a lot of good information for me to use. Thanks a lot for that. I'll get onto those fixes. I can see right away I need to add paladins to that list of Aura users. Think I'm going to just put all characters on that list and do away with that all together as the more people that send me the reports the more I can see that it's gone the way of the dodo bird. On the other stuff, ${Navigation} isn't declared because you don't have mq2nav loaded, which makes sense I'll add a declaration check and declare it false if not.

Other than that I'll just have to go through the logs and start sorting this stuff out.
 
Last edited:
Code:
/if (${${CurrentSub}Conditions${i}} && (${Range.Between[1,${${CurrentSub}UseAt${i}}:${Group.Member[${gmember}].PctHPs}]} && ${Spawn[id ${Group.Member[${gmember}].ID}].Distance}<${Spell[${${CurrentSub}SpellName${i}}].MyRange} && ${gmember} && (${Group.Member[${gmember}].ID}!=${Spawn[${HealPuller}].ID}||${Spawn[id ${Group.Member[${gmember}].ID}].Distance}<=${HealPullerDist}) && ${Group.Member[${gmember}].Type.NotEqual[corpse]} && !${HealSingleRecast${i}}||!${gmember} && ${Range.Between[1,${${CurrentSub}UseAt${i}}:${Me.PctHPs}]} && !${HealSingleRecast${i}})) {

This is the REALLY long if statement that evaluates if it should consider casting the heal. You'll note the first thing in that if statement is if ${CurrentSub}Conditions${i}, which is asking if, in a for loop, HealSingleConditions1=TRUE, if that evaluates false it's going to just skip that entire block of code. I suppose for me to do would be to check to see if the conditions is blank and if it /varset it to true. This could be the issue, but to confirm please make it HealSingleConditions1=TRUE.

the line in sub healsingle
Code:
/if (${${CurrentSub}Conditions.NotEqual[123456]}) /varset ${CurrentSub}Conditions ${Ini[MyIni,${CurrentSub},${CurrentSub}Conditions,123456]}

Sets it to "123456" if its blank, so leaving it blank in the INI should still work (and it appears to work for me).

I thought so when I looked at it, but I wasn't sure that it was working as intended, all the 123456 stuff was done by PeteSampras back in the day iirc. Was just a thought :)

Guess that just goes to confirm that I need to work out another way to use that as the conditions seem relevant if it's part of the INI.
 
Last edited:
Just FYI, even with the fork in the build the old macro is going crazy. I'm getting constant errors that say

No such 'string' member 'Name'

It doesn't crash the macro but it does happen with increasing frequency.
 
Just FYI, even with the fork in the build the old macro is going crazy. I'm getting constant errors that say

No such 'string' member 'Name'

It doesn't crash the macro but it does happen with increasing frequency.

Yeah I think I'm just going to apply the aura change to all characters. In the mean time, what's the class of the characters getting the error.
 
Shaman, cleric and enchanter.

Shaman shouldn't be doing it. Though the enchanter and cleric likely would be as I haven't added them to the list.

Code:
/if (!${Me.Class.ShortName.Equal[SHM]} && !${Me.Class.ShortName.Equal[BER]} && !${Me.Class.ShortName.Equal[BRD]}&& !${Me.Class.ShortName.Equal[SHD]}) {
		/if (${ImNotReady}||${Me.Aura[1].Name.Length} && !${Me.AltAbility[Spirit Mastery]} && !${Me.AltAbility[Auroria Mastery]}||${Me.Aura[2].Name.Length}||${AuraDelay}||${NeedLoad}) /return
  	} else {
		/if (${ImNotReady}||${Me.Aura[1].Length} && !${Me.AltAbility[Spirit Mastery]} && !${Me.AltAbility[Auroria Mastery]}||${Me.Aura[2].Length}||${AuraDelay}||${NeedLoad}) /return
	}

There is another line or two that would need to be changed, but this is one that should keep the SHM from displaying the error.

I made the change to remove the two different types to go with the one that only uses Aura.Length and am running a test to verify I didn't miss a bracket or something. Afterwords I'll submit it here for you.
 
Last edited:
Test release, minor change to spell_routines.inc and quite a few changes to bot40.mac

Changed how the assistPC is assessed...again.

Now it will store your assistPC as an INI entry when supplied as a parameter. The next time you use it you don't need to supply the parameter if you want to assist the same player. IE:

/mac bot40 aplayer

/end

/mac bot40

/end

/mac bot40 adifferentplayer

The first time you assign the assistpc, the second time it retrieves the assistpc. The third time it sees a new assistpc has been supplied and changes the ini entry.

Lots of corrections to /mac bot40 load

Undeclared Variables declared galore.

Fix for when MQ2Nav isn't loaded giving the undeclared for ${Navigation}
Fix for the fix for when MQ2Nav isn't loaded.

Changed all instances of ${Plugin[MQ2Navigation].Equal[MQ2Navigation]} to be MQ2Nav instead (because that is what we are using now).

Changed the version of the Bot and the way that version is output to be vYear.MonthDayHour

IE: v2017.10270100 means this version of the bot was done on oct 27, 2017 at 1am (CST). I don't feel like there was any rhyme or reason to the previous model and I hadn't heard anything about it, so I changed it to suit my own needs.

Can confirm TIKI's Berserker now kills things <~I got video proof (For TIKI's Eyes only).


I changed the Aura's again. I did away with the two different types. I got tired of the mess about a length and opted for a ${Me.Aura[1].ID} and ${Me.Aura[2].ID} instead. Seems to be working for me.

Then I rewrote the entire Aura sub because it was done poorly to begin with. As it stands I had access to a character with Dual Aura's temporarily, the cleric kept casting the first aura. So I would have Aura 1 on me, but not Aura 2. Two copies of the same aura don't have stacking effects, so that was pointless. Also not the intended design of the Aura Sub. But that should be fixed now.

As for changes to the way /mac bot40 load works. If you don't have an INI and you type /mac bot40 aplayersname it will see that and run /mac bot40 load, below is an automatically generated INI for a cleric. Without missing shit. I'm probably happier about this than you because I keep making new characters to test this this. I deleted about 40 INI's for the same character getting this to work lol.

Code:
[Settings]
OptionsCheck=|Pulling|Merc|AA|Aura|Buff|ClickyMaintenance|ClickyNuke|Fade|Debuff|Dot|FightBuff|HealSingle|HealGroup|HealSelf|HealBalance|HealSplash|HealPet|MainTankBuff|Nuke|Rez|Root|SelfBuff|Snare|Stun|XHeal|Mana|ModRod|
OptionsCheckRaid=|Pulling|Merc|AA|Aura|Buff|ClickyMaintenance|ClickyNuke|Fade|Debuff|Dot|FightBuff|HealSingle|HealGroup|HealSelf|HealBalance|HealSplash|HealPet|MainTankBuff|Nuke|Rez|Root|SelfBuff|Snare|Stun|XHeal|Mana|ModRod|
UseCamp=TRUE
CampRadius=30
CampRadiusMax=150
BotVersion=v2017.10270100
InterruptToHealAt=50
InterruptToXHealAt=50
RestrictedZones=344,202,151,345
LootNPCs=FALSE
Verbose=FALSE
MyChannel=bc
AnnounceChannel=bc
EQBCAnnounceAdds=FALSE
AutoHideNPCCorpses=FALSE
ClearTargetDataAlias=ClearTargetDataAlias
EmergencyAlias=EmergencyAlias
EmergencySkill=EmergencySkill
ImmunityCheck=TRUE
AnnounceEvents=TRY|CAST_SUCCESS|CAST_IMMUNE|CAST_RESIST
[Assist]
AssistType=3
AssistPC=aplayersname
AssistAt=99
AttackRange=150
AttackCommand=/attack on
AmIOffTank=FALSE
UseMelee=FALSE
UseArchery=FALSE
ArcheryMaxDistance=200
ArcheryMinDistance=35
SetTargetMessage=Kill_this
BurnModeAlias=BurnModeAlias
[Follow]
FollowMethod=stick|30 healer
FollowCommand=FollowCommand
StopFollowCommand=StopFollowCommand
MoveUpCommand=MoveUpCommand
[ImHit]
ImHitTotal=3
ImHitAnnounce=FALSE
ImHitUse1=FALSE
ImHitSpellName1=----
ImHitRecast1=1s
ImHitUseAtMyHP1=30
ImHitConditions1=TRUE
ImHitUse2=FALSE
ImHitSpellName2=----
ImHitRecast2=1s
ImHitUseAtMyHP2=30
ImHitConditions2=TRUE
ImHitUse3=FALSE
ImHitSpellName3=----
ImHitRecast3=1s
ImHitUseAtMyHP3=30
ImHitConditions3=TRUE
[Custom]
CustomCombatTotal=0
CustomRestTotal=0
[Campfire]
CF_Item1=Fellowship Kit:  
CF_Item2=Fellowship Lumber Bundle:  
[Pulling]
AlertListClear=FALSE
AlertListClearTimer=60m
AmIPuller=FALSE
PullRadius=600
PullZRadius=20
PullCastRange=150
MQ2NavPullRadius=10
MQ2NavPullZRadius=10
ReturnActionTotal=0
PullConColor=LIGHT BLUE,BLUE,WHITE,YELLOW
CourseCorrectionTimer=4
LeapName=12345
PrePullSkillName=12345
PrePullSkillGem=12345
PrePullSkillDelay=12345
PrePullSkillReuse=12345
PullSkillRequiresLineOfSight1=TRUE
PullingMethod=Standard
PullingAnnounceCMD=NULL
PullingTotal=1
PullAtMyHPs=75
PullSkillRequiresLineOfSight2=TRUE
PullSkillName1=NeedsAValue
PullSkillGem1=NeedsAValue
PullSkillDistance1=0
[Merc]
MercAssistAt=100
[AA]
AATotal=15
AAAnnounce=FALSE
AAUse1=FALSE
AASpellName1=----
AAUseAtMobPctHP1=96
AAStopAtMobPctHP1=5
AARecast1=1s
AANamedOnly1=FALSE
AAConditions1=TRUE
AAUse2=FALSE
AASpellName2=----
AAUseAtMobPctHP2=96
AAStopAtMobPctHP2=5
AARecast2=1s
AANamedOnly2=FALSE
AAConditions2=TRUE
AAUse3=FALSE
AASpellName3=----
AAUseAtMobPctHP3=96
AAStopAtMobPctHP3=5
AARecast3=1s
AANamedOnly3=FALSE
AAConditions3=TRUE
AAUse4=FALSE
AASpellName4=----
AAUseAtMobPctHP4=96
AAStopAtMobPctHP4=5
AARecast4=1s
AANamedOnly4=FALSE
AAConditions4=TRUE
AAUse5=FALSE
AASpellName5=----
AAUseAtMobPctHP5=96
AAStopAtMobPctHP5=5
AARecast5=1s
AANamedOnly5=FALSE
AAConditions5=TRUE
AAUse6=FALSE
AASpellName6=----
AAUseAtMobPctHP6=96
AAStopAtMobPctHP6=5
AARecast6=1s
AANamedOnly6=FALSE
AAConditions6=TRUE
AAUse7=FALSE
AASpellName7=----
AAUseAtMobPctHP7=96
AAStopAtMobPctHP7=5
AARecast7=1s
AANamedOnly7=FALSE
AAConditions7=TRUE
AAUse8=FALSE
AASpellName8=----
AAUseAtMobPctHP8=96
AAStopAtMobPctHP8=5
AARecast8=1s
AANamedOnly8=FALSE
AAConditions8=TRUE
AAUse9=FALSE
AASpellName9=----
AAUseAtMobPctHP9=96
AAStopAtMobPctHP9=5
AARecast9=1s
AANamedOnly9=FALSE
AAConditions9=TRUE
AAUse10=FALSE
AASpellName10=----
AAUseAtMobPctHP10=96
AAStopAtMobPctHP10=5
AARecast10=1s
AANamedOnly10=FALSE
AAConditions10=TRUE
AAUse11=FALSE
AASpellName11=----
AAUseAtMobPctHP11=96
AAStopAtMobPctHP11=5
AARecast11=1s
AANamedOnly11=FALSE
AAConditions11=TRUE
AAUse12=FALSE
AASpellName12=----
AAUseAtMobPctHP12=96
AAStopAtMobPctHP12=5
AARecast12=1s
AANamedOnly12=FALSE
AAConditions12=TRUE
AAUse13=FALSE
AASpellName13=----
AAUseAtMobPctHP13=96
AAStopAtMobPctHP13=5
AARecast13=1s
AANamedOnly13=FALSE
AAConditions13=TRUE
AAUse14=FALSE
AASpellName14=----
AAUseAtMobPctHP14=96
AAStopAtMobPctHP14=5
AARecast14=1s
AANamedOnly14=FALSE
AAConditions14=TRUE
AAUse15=FALSE
AASpellName15=----
AAUseAtMobPctHP15=96
AAStopAtMobPctHP15=5
AARecast15=1s
AANamedOnly15=FALSE
AAConditions15=TRUE
[Aura]
AuraTotal=2
AuraAnnounce=FALSE
AuraUse1=FALSE
AuraSpellName1=Holy Ground
AuraSpellGem1=----
AuraSpellIcon1=----
AuraName1=----
AuraUse2=FALSE
AuraSpellName2=----
AuraSpellIcon2=----
AuraName2=----
AuraSpellGem2=----
[Buff]
BuffXTargets=FALSE
BuffPets=FALSE
AutoInvis=FALSE
AutoBreakInvis=FALSE
InvisUndeadSpell=Group Perfected Invisibility to Undead
InvisUndeadSpellGem=alt
BuffTotal=0
BuffAnnounce=FALSE
BuffUse1=TRUE
BuffSpellName1=Promised Recuperation
BuffSpellIcon1=----
BuffSpellGem1=----
BuffAlias1=----
BuffClasses1=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions1=TRUE
BuffUse2=TRUE
BuffSpellName2=Darianna's Mark
BuffSpellIcon2=----
BuffSpellGem2=----
BuffAlias2=----
BuffClasses2=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions2=TRUE
BuffUse3=TRUE
BuffSpellName3=Hand of Gallantry
BuffSpellIcon3=----
BuffSpellGem3=----
BuffAlias3=----
BuffClasses3=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions3=TRUE
BuffUse4=TRUE
BuffSpellName4=Repel Corruption
BuffSpellIcon4=----
BuffSpellGem4=----
BuffAlias4=----
BuffClasses4=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions4=TRUE
BuffUse5=TRUE
BuffSpellName5=Palladium of Vie
BuffSpellIcon5=----
BuffSpellGem5=----
BuffAlias5=----
BuffClasses5=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions5=TRUE
BuffUse6=TRUE
BuffSpellName6=Order of the Devout
BuffSpellIcon6=----
BuffSpellGem6=----
BuffAlias6=----
BuffClasses6=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions6=TRUE
BuffUse7=TRUE
BuffSpellName7=Rallied Palladium of Vie
BuffSpellIcon7=----
BuffSpellGem7=----
BuffAlias7=----
BuffClasses7=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions7=TRUE
BuffUse8=TRUE
BuffSpellName8=----
BuffSpellIcon8=----
BuffSpellGem8=----
BuffAlias8=----
BuffClasses8=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions8=TRUE
BuffUse9=TRUE
BuffSpellName9=----
BuffSpellIcon9=----
BuffSpellGem9=----
BuffAlias9=----
BuffClasses9=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions9=TRUE
BuffUse10=TRUE
BuffSpellName10=----
BuffSpellIcon10=----
BuffSpellGem10=----
BuffAlias10=----
BuffClasses10=BER,BRD,BST,CLR,DRU,ENC,MAG,MNK,NEC,PAL,RNG,ROG,SHD,SHM,WAR,WIZ
BuffConditions10=TRUE
[ClickyMaintenance]
clickies=0
[ClickyNuke]
ClickyNukeTotal=2
ClickyNukeAnnounce=FALSE
ClickyNukeUse1=TRUE
ClickyNukeName1=Heroic Blessedbond Breastplate
ClickyNukeSpellGem1=gem1
ClickyNukeRecast1=Sound of Reverberance
ClickyNukeUseAtMobPctHP1=96
ClickyNukeStopAtMobPctHP1=1
ClickyNukeNamedOnly1=FALSE
ClickyNukeConditions1=TRUE
ClickyNukeUse2=TRUE
ClickyNukeName2=Promised Recuperation
ClickyNukeSpellGem2=gem2
ClickyNukeRecast2=1s
ClickyNukeUseAtMobPctHP2=96
ClickyNukeStopAtMobPctHP2=1
ClickyNukeNamedOnly2=FALSE
ClickyNukeConditions2=TRUE
ClickyNukeUse3=TRUE
ClickyNukeName3=Armor of the Devout
ClickyNukeSpellGem3=gem3
ClickyNukeRecast3=1s
ClickyNukeUseAtMobPctHP3=96
ClickyNukeStopAtMobPctHP3=1
ClickyNukeNamedOnly3=FALSE
ClickyNukeConditions3=TRUE
[Fade]
FadeTotal=1
FadeAnnounce=FALSE
FadeUse1=FALSE
FadeSpellName1=Sound of Reverberance
FadeSpellGem1=gem1
FadeUseAtMyHP1=5
FadeConditions1=TRUE
[Debuff]
DontDebuffConColor=|GREY|GREEN|
DebuffAdds=FALSE
DebuffTotal=3
DebuffTotalIfNamed=3
ForceMemDebuff=FALSE
DebuffAnnounce=FALSE
DebuffUse1=TRUE
DebuffSpellName1=Blood of the Unsullied
DebuffSpellGem1=----
DebuffUseAtMobPctHP1=96
DebuffStopAtMobPctHP1=1
DebuffRecast1=2m
DebuffMaxTries1=2
DebuffConditions1=TRUE
DebuffUse2=TRUE
DebuffSpellName2=Mark of the Unsullied
DebuffSpellGem2=----
DebuffUseAtMobPctHP2=96
DebuffStopAtMobPctHP2=1
DebuffRecast2=2m
DebuffMaxTries2=2
DebuffConditions2=TRUE
DebuffUse3=TRUE
DebuffSpellName3=----
DebuffSpellGem3=----
DebuffUseAtMobPctHP3=96
DebuffStopAtMobPctHP3=1
DebuffRecast3=2m
DebuffMaxTries3=2
DebuffConditions3=TRUE
[GoM]
GoMTotal=0
GoMTotalIfNamed=0
GoMAnnounce=FALSE
GoMUse1=TRUE
GoMSpellName1=----
GoMSpellIcon1=----
GoMSpellGem1=----
[DoT]
DoTTotal=1
DoTTotalIfNamed=1
ForceMemDoT=FALSE
DoTAnnounce=FALSE
DoTUse1=TRUE
DoTSpellName1=----
DoTSpellGem1=----
DoTUseAtMobPctHP1=96
DoTStopAtMobPctHP1=30
DoTRecast1=1s
DoTMaxTries1=2
DoTConditions1=TRUE
[FightBuff]
FightBuffTotal=5
ForceMemFightBuff=FALSE
FightBuffAnnounce=FALSE
FightBuffUse1=TRUE
FightBuffSpellName1=Yaulp
FightBuffSpellIcon1=Providence
FightBuffSpellGem1=gem12
FightBuffNamedOnly1=FALSE
FightBuffForAggro1=FALSE
FightBuffConditions1=TRUE
FightBuffUse2=TRUE
FightBuffSpellName2=----
FightBuffSpellIcon2=----
FightBuffSpellGem2=----
FightBuffNamedOnly2=FALSE
FightBuffForAggro2=FALSE
FightBuffConditions2=TRUE
FightBuffUse3=TRUE
FightBuffSpellName3=----
FightBuffSpellIcon3=----
FightBuffSpellGem3=----
FightBuffNamedOnly3=FALSE
FightBuffForAggro3=FALSE
FightBuffConditions3=TRUE
FightBuffUse4=TRUE
FightBuffSpellName4=----
FightBuffSpellIcon4=----
FightBuffSpellGem4=----
FightBuffNamedOnly4=FALSE
FightBuffForAggro4=FALSE
FightBuffConditions4=TRUE
FightBuffUse5=TRUE
FightBuffSpellName5=----
FightBuffSpellIcon5=----
FightBuffSpellGem5=----
FightBuffNamedOnly5=FALSE
FightBuffForAggro5=FALSE
FightBuffConditions5=TRUE
[HealSingle]
HealPullerName=NULL
HealPullerDist=50
HealSingleTotal=8
HealSingleAnnounce=FALSE
HealSingleUse1=TRUE
HealSingleSpellName1=----
HealSingleSpellGem1=----
HealSingleUseAt1=80
HealSingleStopAt1=90
HealSingleRecast1=1s
HealSingleConditions1=TRUE
HealSingleUse2=TRUE
HealSingleSpellName2=----
HealSingleSpellGem2=----
HealSingleUseAt2=80
HealSingleStopAt2=90
HealSingleRecast2=1s
HealSingleConditions2=TRUE
HealSingleUse3=TRUE
HealSingleSpellName3=----
HealSingleSpellGem3=----
HealSingleUseAt3=80
HealSingleStopAt3=90
HealSingleRecast3=1s
HealSingleConditions3=TRUE
HealSingleUse4=TRUE
HealSingleSpellName4=----
HealSingleSpellGem4=----
HealSingleUseAt4=80
HealSingleStopAt4=90
HealSingleRecast4=1s
HealSingleConditions4=TRUE
HealSingleUse5=TRUE
HealSingleSpellName5=----
HealSingleSpellGem5=----
HealSingleUseAt5=80
HealSingleStopAt5=90
HealSingleRecast5=1s
HealSingleConditions5=TRUE
HealSingleUse6=TRUE
HealSingleSpellName6=----
HealSingleSpellGem6=----
HealSingleUseAt6=80
HealSingleStopAt6=90
HealSingleRecast6=1s
HealSingleConditions6=TRUE
HealSingleUse7=TRUE
HealSingleSpellName7=----
HealSingleSpellGem7=----
HealSingleUseAt7=80
HealSingleStopAt7=90
HealSingleRecast7=1s
HealSingleConditions7=TRUE
HealSingleUse8=TRUE
HealSingleSpellName8=----
HealSingleSpellGem8=----
HealSingleUseAt8=80
HealSingleStopAt8=90
HealSingleRecast8=1s
HealSingleConditions8=TRUE
[HealGroup]
HealGroupTotal=3
HealGroupAnnounce=FALSE
HealGroupUse1=TRUE
HealGroupSpellName1=----
HealGroupSpellGem1=----
HealGroupUseAt1=50
HealGroupStopAt1=80
HealGroupAvgHP1=60
HealGroupConditions1=TRUE
HealGroupUse2=TRUE
HealGroupSpellName2=----
HealGroupSpellGem2=----
HealGroupUseAt2=50
HealGroupStopAt2=80
HealGroupAvgHP2=60
HealGroupConditions2=TRUE
HealGroupUse3=TRUE
HealGroupSpellName3=----
HealGroupSpellGem3=----
HealGroupUseAt3=50
HealGroupStopAt3=80
HealGroupAvgHP3=60
HealGroupConditions3=TRUE
[HealBalance]
HealBalanceTotal=2
HealBalanceAnnounce=FALSE
HealBalanceUse1=TRUE
HealBalanceSpellName1=Sound of Reverberance
HealBalanceSpellGem1=----
HealBalanceUseAt1=30
HealBalanceStopAt1=70
HealBalanceConditions1=TRUE
HealBalanceUse2=TRUE
HealBalanceSpellName2=Promised Recuperation
HealBalanceSpellGem2=----
HealBalanceUseAt2=30
HealBalanceStopAt2=70
HealBalanceConditions2=TRUE
[HealSplash]
HealSplashTotal=2
HealSplashAnnounce=FALSE
HealSplashUse1=TRUE
HealSplashSpellName1=----
HealSplashSpellGem1=----
HealSplashAvgHP1=60
HealSplashUse2=TRUE
HealSplashSpellName2=----
HealSplashSpellGem2=----
HealSplashAvgHP2=60
[HealPet]
HealPetTotal=2
HealPetAnnounce=FALSE
HealPetUse1=TRUE
HealPetSpellName1=----
HealPetSpellGem1=----
HealPetUseAt1=50
HealPetStopAt1=90
HealPetRecast1=1s
HealPetConditions1=TRUE
HealPetUse2=TRUE
HealPetSpellName2=----
HealPetSpellGem2=----
HealPetUseAt2=50
HealPetStopAt2=90
HealPetRecast2=1s
HealPetConditions2=TRUE
[MainTankBuff]
DesignatedTank=NULL
MainTankBuffTotal=7
MainTankBuffAnnounce=FALSE
MainTankBuffUse1=TRUE
MainTankBuffSpellName1=Focused Celestial Regeneration
MainTankBuffSpellGem1=alt
MainTankBuffSpellGem2=----
MainTankBuffUseAt2=100
MainTankBuffStopAt2=5
MainTankBuffNamedOnly2=FALSE
MainTankBuffRecast2=2m
MainTankBuffConditions2=TRUE
MainTankBuffUse3=TRUE
MainTankBuffSpellName3=Promised Recuperation
MainTankBuffSpellGem3=----
MainTankBuffUseAt3=100
MainTankBuffStopAt3=5
MainTankBuffNamedOnly3=FALSE
MainTankBuffRecast3=2m
MainTankBuffConditions3=TRUE
MainTankBuffUse4=TRUE
MainTankBuffSpellName4=Erud's Retort
MainTankBuffSpellGem4=----
MainTankBuffUseAt4=100
MainTankBuffStopAt4=5
MainTankBuffNamedOnly4=FALSE
MainTankBuffRecast4=2m
MainTankBuffConditions4=TRUE
MainTankBuffUse5=TRUE
MainTankBuffSpellName5=----
MainTankBuffSpellGem5=----
MainTankBuffUseAt5=100
MainTankBuffStopAt5=5
MainTankBuffNamedOnly5=FALSE
MainTankBuffRecast5=2m
MainTankBuffConditions5=TRUE
MainTankBuffUse6=TRUE
MainTankBuffSpellName6=----
MainTankBuffSpellGem6=----
MainTankBuffUseAt6=100
MainTankBuffStopAt6=5
MainTankBuffNamedOnly6=FALSE
MainTankBuffRecast6=2m
MainTankBuffConditions6=TRUE
MainTankBuffUse7=TRUE
MainTankBuffSpellName7=----
MainTankBuffSpellGem7=----
MainTankBuffUseAt7=100
MainTankBuffStopAt7=5
MainTankBuffNamedOnly7=FALSE
MainTankBuffRecast7=2m
MainTankBuffConditions7=TRUE
MainTankBuffUseAt1=----------------------
MainTankBuffStopAt1=----------------------
MainTankBuffNamedOnly1=----------------------
MainTankBuffRecast1=----------------------
[Nuke]
NukeTotal=10
NukeTotalIfNamed=10
ForceMemNuke=FALSE
NukeAnnounce=FALSE
NukeUse1=TRUE
NukeSpellName1=Sound of Reverberance
NukeSpellGem1=----
NukeUseAtMobPctHP1=96
NukeStopAtMobPctHP1=1
NukeRecast1=1s
NukeConditions1=TRUE
NukeUse2=TRUE
NukeSpellName2=Chromassail
NukeSpellGem2=----
NukeUseAtMobPctHP2=96
NukeStopAtMobPctHP2=1
NukeRecast2=1s
NukeConditions2=TRUE
NukeUse3=TRUE
NukeSpellName3=Glorious Denunciation
NukeSpellGem3=----
NukeUseAtMobPctHP3=96
NukeStopAtMobPctHP3=1
NukeRecast3=1s
NukeConditions3=TRUE
NukeUse4=TRUE
NukeSpellName4=----
NukeSpellGem4=----
NukeUseAtMobPctHP4=96
NukeStopAtMobPctHP4=1
NukeRecast4=1s
NukeConditions4=TRUE
NukeUse5=TRUE
NukeSpellName5=----
NukeSpellGem5=----
NukeUseAtMobPctHP5=96
NukeStopAtMobPctHP5=1
NukeRecast5=1s
NukeConditions5=TRUE
NukeUse6=TRUE
NukeSpellName6=----
NukeSpellGem6=----
NukeUseAtMobPctHP6=96
NukeStopAtMobPctHP6=1
NukeRecast6=1s
NukeConditions6=TRUE
NukeUse7=TRUE
NukeSpellName7=----
NukeSpellGem7=----
NukeUseAtMobPctHP7=96
NukeStopAtMobPctHP7=1
NukeRecast7=1s
NukeConditions7=TRUE
NukeUse8=TRUE
NukeSpellName8=----
NukeSpellGem8=----
NukeUseAtMobPctHP8=96
NukeStopAtMobPctHP8=1
NukeRecast8=1s
NukeConditions8=TRUE
NukeUse9=TRUE
NukeSpellName9=----
NukeSpellGem9=----
NukeUseAtMobPctHP9=96
NukeStopAtMobPctHP9=1
NukeRecast9=1s
NukeConditions9=TRUE
NukeUse10=TRUE
NukeSpellName10=----
NukeSpellGem10=----
NukeUseAtMobPctHP10=96
NukeStopAtMobPctHP10=1
NukeRecast10=1s
NukeConditions10=TRUE
[Rez]
GrabCorpse=TRUE
RezTotal=2
ForceMemRez=FALSE
RezAnnounce=FALSE
RezUse1=TRUE
RezSpellName1=Blessing of Resurrection
RezSpellGem1=gem1
RezDuringCombat1=Sound of Reverberance
RezAlias1=----
RezConditions1=TRUE
RezUse2=TRUE
RezSpellName2=Promised Recuperation
RezSpellGem2=----
RezDuringCombat2=TRUE
RezAlias2=----
RezConditions2=TRUE
RezTrustedTotal=0
RezRaidTimer=5m
RezGroupTimer=1m
[Root]
DontRootConColor=|GREY|GREEN|
RootPrimaryTarget=FALSE
RootAdds=TRUE
FaceNPCToRoot=FALSE
RootTotal=2
RootTotalIfNamed=2
RootAnnounce=FALSE
RootUse1=TRUE
RootSpellName1=----
RootSpellGem1=----
RootUseAtMobPctHP1=96
RootStopAtMobPctHP1=1
RootRecast1=2m
RootMaxTries1=2
RootConditions1=TRUE
RootUse2=TRUE
RootSpellName2=----
RootSpellGem2=----
RootUseAtMobPctHP2=96
RootStopAtMobPctHP2=1
RootRecast2=2m
RootMaxTries2=2
RootConditions2=TRUE
[SelfBuff]
SelfBuffTotal=0
SelfBuffAnnounce=FALSE
SelfBuffUse1=TRUE
SelfBuffSpellName1=Armor of the Devout
SelfBuffSpellIcon1=----
SelfBuffSpellGem1=----
SelfBuffConditions1=TRUE
SelfBuffUse2=TRUE
SelfBuffSpellName2=----
SelfBuffSpellIcon2=----
SelfBuffSpellGem2=----
SelfBuffConditions2=TRUE
SelfBuffUse3=TRUE
SelfBuffSpellName3=----
SelfBuffSpellIcon3=----
SelfBuffSpellGem3=----
SelfBuffConditions3=TRUE
SelfBuffUse4=TRUE
SelfBuffSpellName4=----
SelfBuffSpellIcon4=----
SelfBuffSpellGem4=----
SelfBuffConditions4=TRUE
SelfBuffUse5=TRUE
SelfBuffSpellName5=----
SelfBuffSpellIcon5=----
SelfBuffSpellGem5=----
SelfBuffConditions5=TRUE
SelfBuffUse6=TRUE
SelfBuffSpellName6=----
SelfBuffSpellIcon6=----
SelfBuffSpellGem6=----
SelfBuffConditions6=TRUE
SelfBuffUse7=TRUE
SelfBuffSpellName7=----
SelfBuffSpellIcon7=----
SelfBuffSpellGem7=----
SelfBuffConditions7=TRUE
SelfBuffUse8=TRUE
SelfBuffSpellName8=----
SelfBuffSpellIcon8=----
SelfBuffSpellGem8=----
SelfBuffConditions8=TRUE
[Snare]
SnareTotal=1
ForceMemSnare=FALSE
SnareAnnounce=FALSE
SnareUse1=FALSE
SnareSpellName1=Sound of Reverberance
SnareSpellGem1=----
SnareUseAtMobPctHP1=15
SnareMaxTries1=2
[Stun]
StunTotal=4
StunTotalIfNamed=4
ForceMemStun=FALSE
StunAnnounce=FALSE
StunUse1=TRUE
StunSpellName1=Sound of Reverberance
StunSpellGem1=----
StunUseAtMobPctHP1=100
StunStopAtMobPctHP1=1
StunRecast1=9s
StunConditions1=TRUE
StunUse2=TRUE
StunSpellName2=----
StunSpellGem2=----
StunUseAtMobPctHP2=100
StunStopAtMobPctHP2=1
StunRecast2=9s
StunConditions2=TRUE
StunUse3=TRUE
StunSpellName3=----
StunSpellGem3=----
StunUseAtMobPctHP3=100
StunStopAtMobPctHP3=1
StunRecast3=9s
StunConditions3=TRUE
StunUse4=TRUE
StunSpellName4=----
StunSpellGem4=----
StunUseAtMobPctHP4=100
StunStopAtMobPctHP4=1
StunRecast4=9s
StunConditions4=TRUE
[XHeal]
XHealPullerName=NULL
XHealPullerDist=50
XHealTotal=8
XHealAnnounce=FALSE
XHealUse1=TRUE
XHealSpellName1=----
XHealSpellGem1=----
XHealUseAt1=50
XHealStopAt1=90
XHealUse2=TRUE
XHealSpellName2=----
XHealSpellGem2=----
XHealUseAt2=50
XHealStopAt2=90
XHealUse3=TRUE
XHealSpellName3=----
XHealSpellGem3=----
XHealUseAt3=50
XHealStopAt3=90
XHealUse4=TRUE
XHealSpellName4=----
XHealSpellGem4=----
XHealUseAt4=50
XHealStopAt4=90
XHealUse5=TRUE
XHealSpellName5=----
XHealSpellGem5=----
XHealUseAt5=50
XHealStopAt5=90
XHealUse6=TRUE
XHealSpellName6=----
XHealSpellGem6=----
XHealUseAt6=50
XHealStopAt6=90
XHealUse7=TRUE
XHealSpellName7=----
XHealSpellGem7=----
XHealUseAt7=50
XHealStopAt7=90
XHealUse8=TRUE
XHealSpellName8=----
XHealSpellGem8=----
XHealUseAt8=50
XHealStopAt8=90
[Mana]
MedAt=75
MedToFull=FALSE
MedEvenIfNotInOOCRegen=FALSE
MedTimer=10s
QuietMiracle_IfManaBelow=5
QuietMiracle_Others_IfManaBelow=5
ManaConditions=123456
[Combat]
StandardCombatOptions=Bard|XHeal|HealSingle|HealGroup|HealBalance|HealSelf|HealPet|Disc|MainTankBuff|FightBuff|Lifetap|Stun|AA|Dot|Nuke|Snare|ClickyNuke|Jolt|Rez|ModRod|Mana|Merc
CombatFrequency5=Bard|XHeal|HealSingle|HealGroup|HealBalance|HealSelf|HealPet|Disc|MainTankBuff|FightBuff|Lifetap|Stun|AA|Dot|Nuke|Snare|ClickyNuke|Jolt|Rez|ModRod|Mana|Merc
 

Attachments

  • Spell_routines.inc
    68.4 KB · Views: 7
  • bot40.mac
    505.3 KB · Views: 8
Last edited: