Bot Macro

Posted version 2.62
Changes:
Reverted clarity potions.
Added Maintank.Dead check to [MainTankBuff]
Added lootwnd and tradewnd check specifically one for [Buffs], along with Me.Hovering
SelfBuffs exited routine if you have a Me.Casting.ID
Added !${Me.XTarget} check to enter rest/camp routines. Bards should now enter rest routine and return to camp along with everyone else.


Toshiro: !${Me.XTarget} should work a little better than Me.Combat for giving a true indication of whether or not you have mobs nearby. Give it a whirl and let me know.

KA: sounds like your moveto or /nav are getting interrupted by something else. do you have some sort of movement downshit/holyshit?
 
Use assisttype4 and netbots, or use the SetTargetMessage=Kill_this.

[Assist]
SetTargetMessage=Kill_this


So you make a hotkey (or the bot will auto do it for you if your tank is picking and killing targets using assisttype2) that says:
/bc Kill_this ${Target.ID}
 
Posted version 2.64
Changes:
- Bards should now use AutoClickies and ClickyMaintenance correctly
- Necros should use death blossom correctly (i need this verified)
- Updated a bunch of /ini entries, mostly in loot section. base compile changed how things worked and if it isnt in quotes, it was deleting the entry and resetting it to default value.
- Updated spell_routines.inc to work with bards (uses mq2twist to cast songs) and updated a couple subs.

EDIT: updated mac to automatically set "fear touched" and "latent ether" to be "Keep" for loot.
EDIT2: added a delay on the Death Blossom so it doesnt spam, not changing version for that but reposted new mac.
 
Last edited:
MANDATORY UPDATE IF YOU WANT YOUR MACRO TO WORK!

Posted version 2.65
Changes:
- Updated for 28 Jan patch. Mandatory update for macro to function correctly.
- Pet buff stacking check
- Pet gear correction
- misc other fixes

EQMule changed some base mq2 features and it affects this macro. XTargets are jacked up until you update.

Events changed for chat requests, the way this was coded means it shouldnt affect bot.mac, but if something isnt working, let me know and i will fix it fast. It only affects 3 lines in the macro.

/useitem was changed, it appears to function correctly as is, but if some clicky isnt working, I can change it.
 
Posted version 2.66
Changes:
- Updated for for recent patches.
- Added [Pet] PetGHold=
- Updated [Aggro] section to work with warriors
- misc other fixes including bards should stop standing around like tards

yady: old versions dont work due to recent patches breaking them. use latest version.
 
Fixed it so [HealPet] can properly use group heal spells.

Implemented the [MainTankBuff] DesignatedTank= so that you can set your pet to get MTBs. If your mage is named PeteSampras and you want their pet to get the buffs:

[MainTankBuff]
DesignatedTank=PeteSampras

If PeteSampras dies, then it defaults to whomever you have set as group maintank until PeteSampras is in zone again.

I havent made a custom toggle for it yet, you can change it while macro is running via:
/varset DesignatedTank Name

To stop it from using pet, you have to set it to NULL.
/varset DesignatedTank NULL

Posting for testing, let me know if you have any issues. I have been using it for a couple hours and it seems to work as intended. Will post as official version probably tomorrow, pending feedback. Note that some buffs are PC only for clerics, so I had to put a special flag in there.

MainTankBuffConditions7=(${DesignatedTank.Equal[NULL]})
Code:
[MainTankBuff]
MainTankBuffConditions=
DesignatedTank=PeteSampras
MainTankBuffTotal=7
MainTankBuffAnnounce=FALSE
MainTankBuffUse1=TRUE
MainTankBuffSpellName1=Divine Guardian
MainTankBuffConditions1=
MainTankBuffSpellGem1=alt
MainTankBuffUseAt1=100
MainTankBuffStopAt1=5
MainTankBuffNamedOnly1=FALSE
MainTankBuffRecast1=2m
MainTankBuffUse2=TRUE
MainTankBuffSpellName2=Focused Celestial Regeneration
MainTankBuffConditions2=
MainTankBuffSpellGem2=alt
MainTankBuffUseAt2=100
MainTankBuffStopAt2=5
MainTankBuffNamedOnly2=FALSE
MainTankBuffRecast2=2m
MainTankBuffUse3=TRUE
MainTankBuffSpellName3=Hand of Graceful Infusion
MainTankBuffSpellGem3=gem12
MainTankBuffUseAt3=100
MainTankBuffStopAt3=5
MainTankBuffNamedOnly3=FALSE
MainTankBuffRecast3=2m
MainTankBuffConditions3=
MainTankBuffUse4=TRUE
MainTankBuffSpellName4=Olsif's Retort
MainTankBuffSpellGem4=gem5
MainTankBuffUseAt4=100
MainTankBuffStopAt4=5
MainTankBuffNamedOnly4=FALSE
MainTankBuffRecast4=120s
MainTankBuffConditions4=
MainTankBuffUse5=TRUE
MainTankBuffSpellName5=Promised Reformation
MainTankBuffSpellGem5=gem12
MainTankBuffUseAt5=100
MainTankBuffStopAt5=5
MainTankBuffNamedOnly5=FALSE
MainTankBuffRecast5=30s
MainTankBuffConditions5=
MainTankBuffUse6=TRUE
MainTankBuffSpellName6=Shining Bastion
MainTankBuffSpellGem6=gem7
MainTankBuffUseAt6=100
MainTankBuffStopAt6=5
MainTankBuffNamedOnly6=FALSE
MainTankBuffRecast6=300s
MainTankBuffConditions6=
MainTankBuffUse7=TRUE
MainTankBuffSpellName7=Ward of Certitude
MainTankBuffSpellGem7=gem9
MainTankBuffUseAt7=100
MainTankBuffStopAt7=5
MainTankBuffNamedOnly7=FALSE
MainTankBuffRecast7=2m
MainTankBuffConditions7=(${DesignatedTank.Equal[NULL]})
EDIT: also swapped out the [AABuy] section for my include version I had made. It works way better, but wasnt a straight port so there could be a snag or two. Let me know if you have any issues with that as well.
 
Last edited:
On cleric, MQ2 window is being spammed with the following after every mob.

Code:
DoCommand - Couldn't parse '/bc Yaulp IX Rk. II --> NULL'
bot.mac@5953 (FightBuff): /if (${${CurrentSub}Announce} && ${AnnounceChannel.NotEqual[NULL]}) /docommand /${AnnounceChannel} ${${CurrentSub}SpellName${i}} --> ${Target.CleanName}
bot.mac@183 (Combat): /if (!${Select[${CombatRoutines.Arg[${i},|]},Dot,Nuke,Stun,Snare,AA,Lifetap,FeignDeath,Fade,Jolt]}) /call ${CombatRoutines.Arg[${i},|]}
bot.mac@1480 (Attacking2): /call Combat
bot.mac@1398 (CheckTarget3): /if (${UseMelee}||${UseArchery}) /call Attacking2
bot.mac@117 (Always): /call CheckTarget${AssistType}
bot.mac@88 (Main): /call Always
 
/plugin mq2eqbc
/bccmd connect

or change your channel from =bc
 
Protip of the day: if you add: ${CurrentSub} onto your hud somewhere, it will tell you the current routine it is in and you (i) can narrow it down a lot more quickly.
 
Im too lazy to explain as it is bedtime. just backup your old copies and put these 2 files in your mq2 folder.

Then:
/plugin mq2hud
/plugin mq2targets

Also, for those that havent noticed. I am trying to transition bot to a plugin. I've only been at it for a day, so it is super early, but if you want to go to the other thread and download the plugin to make sure it doesnt crash, that would be nifty. I'd like to ID issues as early as possible because I think some things will or wont work based on which compile is used and what ISBoxer or WinEQ you are using. I am trying to code it to vanilla or include custom code that isnt in vanilla/publicly available as possible. not sure I can maintain that though.

http://www.mmobugs.com/forums/everq...gins-offsets/28798-mq2bot-alpha-new-post.html
 
Last edited:
Posted version 2014.0409
Changes:
- Updated for for recent patches.
- Corrected a buff issue
- matched up AE spells to mob body types (turn undead and turn summoned lines)
- new version naming schema to reflect date of version rather than some obscure 2.x number
 
CRITICAL Update! 2014.0413

Fixed issue that plat would be spent trying to revive merc if your merc button said REVIVE even though your group was full. If you use mercs, you want this update!

Dealings: isnt that first spell a nuke? go under nuke section.

DebuffConditions1=!${Debuff1${DebuffID}}
should be:
DebuffConditions1=!${Debuff1${DebuffID}} && !${Debuff2${DebuffID}}
 
Last edited:
Well. It doesnt use netbots for cures and only self cures if you happen to use the hidden [Cure] section that I never really fully tested. So that would be one issue.

Otherwise, for just killing stuff, you should only need to have all your guys, including the tank, inside eqbc with netbots on.

Another method (that I use), is to force your toons targets.
If you put these in all your toons' inis, including the one you want to tank/puller, it will let force your guys onto specific mobs.
[Assist]
SetTargetMessage=Kill_this

[Pulling]
PullingAnnounceCMD=/bc ${SetTargetMessage} ${Target.ID}
 
thank you very much , i will try that right now.
i was also thinking that maybe i am not delivering the Kill_this message in the right place. i've tried /bccmd Kill_this (with desired target on main tank)
/bc Kill_this,/bca Kill_this , and i've also tried all the same with a /Kill_this. am i calling this out incorrectly? or is it not supposed to be called out in eqbc but instead all are supposed to have some level of bot mac running (be it fully automated or hardly at all/mostly manual) and then the toons talk amongst themselves calling out kill commands?
 
The macro does it automatically if you are using it on your tank/puller. If you do it manually, you need:
/bc ${SetTargetMessage} ${Target.ID}

or in your case you could just hardcode the message:
/bc Kill_this ${Target.ID}
 
SK casting Explosion of Hatred & not wanting too

I've looked and looked on my bot.ini file and not able to find it in there. I've did a new /mac bot load, and tried my old ini file. It looks like its still firing, and unable to disable it.
 
I've looked and looked on my bot.ini file and not able to find it in there. I've did a new /mac bot load, and tried my old ini file. It looks like its still firing, and unable to disable it.
It is hardcoded in. You can edit it out. I cant think of why you wouldnt use it based on how it is set to fire though. Only if you are in aggro mode and only if ${AddCount} is >= the number of NPCs nearby.
 
Posted version 2014.0424
Changes:
- Some spells have a space at the end of their named. Fixed it for [SelfBuff] section and error message notification to check for that.

Should fix Veil of Mindshadow and one of the wiz spells.
 
Has to be TRUE, not True. So open up your .ini and ctrl h any True with TRUE.
 
Not sure about your bot part, I'm sure Pete can tell you if that's doing anything, but in case it's mq2melee you can try and set a hotkey to hit: /melee reset
If you need to multiline it (remember spacing): /multiline ; /melee reset;/target clear

htw