• You've discovered RedGuides, an EverQuest multi-boxing and scripting community 🧙‍♀️⚙️. We want you to play several EQ characters at once, come join us and say hello! 👋

  • A TLP without truebox has thawed (Very Vanilla ready)
    Frostreaver

MQ2Bot

PeteSampras

Active member
Joined
Mar 18, 2012
RedCents
2,143¢
Latest version Build 12/31/2015 6:30PM HST

MQ2Bot Manual
Plugin to auto play your characters without needing to set up the ini unless you want to really customize it. It should work right out of the box for most users by just loading it and typing /bot on.

Details:
This plugin should effectively use all AAs and memorized spells that you have available similar to a mercenary. Most melee settings other than the amount to melee at should be done via MQ2Melee. It will generate an ini in your server_character.ini. ie:

/mq2/drinal_PeteSampras.ini

There will be a [MQ2Bot] section with all the settings that you can change manually or from in game.

Status:
Operational

Instructions:
1. Download the .dll and place it in your mq2 folder with the rest of the plugin .dlls.
2. /plugin mq2bot
3. To turn on: /bot on
4. To turn off: /bot off
5.To change ini settings: /bot key=value, ie. /bot MeleeAt=10, or /bot meleeat=10. Case insensitive

Required plugins

Notes:
All variables, settings, and relative instructions should be available on the following link.
MQ2Bot Manual

Follow the instructions and you will have success. Should you have any comments or suggestions or find an issue, please let me know. I will try to do focused testing as I add in new features and hopefully people can let me know if they function as expected.

Spells.mac just spits out all your spells/AAs into a log file and each category they belong to in case you were unsure. It will be located at: /logs/spell.mac.log You need to have /bot on for it to work.

FAQ:

Can I do ____? A: Check the manual, if it is not there, post/pm/request and i respond.
I crashed. What do I do? A: Use MQ2Log, sanitize your names and post the most recent log including when it crashed so I can get an idea of what was going on.
What's a plugin? A: This is not for you
 

Attachments

Last edited:
Re: MQ2Bot - Alpha testing

Added FightBuffs that will cast once you have Adds, added Aura because why not. it will only use 1 right now and i didnt put in the check for melee auras. So a handful of classes. Also had to add in /targeting of XTarget1 whenever you arent doing anything else because it was acting quirky with just targeting during heals.

- - - Updated - - -

Added Debuffs and a timer system. The timer system is really one of the largest remaining obstacles to adding everything else because of so many things depending on it. Currently, the last spell you cast is used to determine a timer, but if you cast the first spell on a new mob as the last spell on the last mob, it thinks you already used it on that mob, so I need to come up with a slightly different method. This one works, but it needs some TLC.

- - - Updated - - -

Added Nukes, Swarm Pets, Lifetaps, /pet attack (at 50 range). Still need to get timers working a little better for dots. But i have more routines roughed out than still need completed then i can start deep diving on each section to fully flesh them out.
 
Re: MQ2Bot - Alpha testing

Added:
Dots
MainTankBuff - will buff designated main tank unless main tank is necro or mage, then will instead buff their pet.
Removed Pet DA as a pet heal because it was messing things up. Corrected pet heals since it was previously checking the master's hp instead of the pets. Fixed a few other things that were causing more spam than they should have. You will no longer try to self buff during combat (as it turns out, chain casting runes arent so effective for killing a mob).
Youll no longer use clickies if you are invis.
 
Re: MQ2Bot - Alpha testing

I had stopped updating the thread due to no responses. At the time you couldnt. I posted latest version. You can now /bot on and /bot off to turn on the spell casting functionality. Also, there is now an ini you can change the settings for each section and reload the plugin to take effect. It is explained in the initial post. I added most the remaining sections that were missing such as AAs, Jolt, Aggro, Melee settings, Dots, MainTankBuffs, and Lifetaps. Anyway, if people actually provide feedback, I can keep posting updates, otherwise I will just let it die again =P
 
Re: MQ2Bot - Alpha testing

Hopefully I will have time to dive into this after easter looks very nice so far.
 
Re: MQ2Bot - Alpha testing

Updated .dll, there were a couple bugs that would crash healers if a merc was in the group. Fixed Mana section.

Added:
MedStartAt=0 <-- you will /sit when no adds are around and flag yourself as medding if you are below this amount.
MedStopAt=0 <-- this amount will remove the flag as medding and will no longer attempt to sit if you are above this % mana

Replaced UseMana=1 with:
ManaAt=80 <-- you will use your mana spells/AAs so long as you need as much mana as they provide. ie. if canni gives 15k mana but you only need 12k, it wont use it yet. That only applies to instant skills, not duration ones.

Added Rez section.
 
Re: MQ2Bot - Alpha testing

This looks great, does it have an auto follow feature?
Not yet. You can use mq2moveutils or mq2advpath to accomplish that atm. If/when I include the option, it would use one of those 2 choices. I dont intend to recreate the wheel for every facet of gameplay with mq2melee/mq2moveutils/mq2cast available in the core compile. However, I will include all custom functions so that it doesnt require any special plugins beyond those 3 mentioned/vanilla compile. That should allow it to work with emu/progression/live/test/any compile version hopefully.

- - - Updated - - -

This looks great, does it have an auto follow feature?
Went ahead and added in a stick option. Note: i set it so you dont try to stick while there are adds because you could potentially look like an idiot and it may cause issues if you went beyond 30.

Ini settings:
UseStick=0 <-- 1 on, 0 is off. Default is 0
StickSettings=30 healer <-- this is your /stick 30 healer hold !front etc settings.

Changed /bot on and /bot off a little, /bot off will stop everything, including turning off /stick. Stick functions is just like a merc. It will follow the leader unless the leader is also puller, in which case it follows the first group member that is not itself and not puller, if available. If none available, it follows nobody.
 
Bottom line: This auto plays your toon as if it was a merc without really needing any set up. Think KISS.mac but as a plugin and little to no setup required.

I completed alpha and beta phases, unfortunately nobody here provided feedback so I have no idea if it even works with this compile. I posted the latest version in case anyone wants to test/play around with it. I created a wiki for it that has all the settings and the TLO/members. There is something like 80 members in all right now. Hopefully the wiki can answer all questions regarding how to use it, if not I can update whatever is unclear.

Known issues: There are still a couple crashes i need to work out that seem to stem from a spawn existing and then suddenly not existing but it is mid-check on that spawn. I've tracked most down but a couple of rare instances still exist. For the most part it is running pretty stable for most classes. If a certain section is crashing you, you can simply disable that section and it will skip it instead. Then you can report the crash.

- - - Updated - - -

I was told there may be some spam associated with the plugin using core compile because Group.Member[].PctMana/Spawn[].PctMana doesnt exist in core code. I've asked EQMule to add it. In the meantime, if anyone compiles their own code, this is the code you add in MQ2Datatypes.cpp under mq2spawntype to make it work:
Rich (BB code):
case PctMana:
	    Dest.Type=pIntType;
	    if(pSpawn->ManaMax)
				Dest.Int=pSpawn->ManaCurrent*100/pSpawn->ManaMax;
			else
				Dest.Int=0;
	    return true;

Then you need to go into the mq2datatypes.h and add it as a TypeMember(PctMana); and as a member PctMana=x,
 
This doesnt really need updated each patch, but i do update it often, so just posting the latest.

Added alias:
/petgear <-- This will equip 1 norent item to each available slot on your pet depending on whatever you have in your bags at the time. It will choose the first for each slot that it finds and equip them when your pet is within 20 range and nothing else is going on. I will add some autoinventory options, for now just dont hold things you dont want to give your pet when typing the command. For now it only works when you do /bot on, i will get it working when the plugin is just loaded eventually though.

Added TLO members:
Bot.Twincast <-- do you have twincast on
Bot.GoM <-- returns level of GoM spell that is on you, if any.
Bot.Freeze <-- Does target have mindfreeze effect type debuff on it?

Added settings:
[MQ2Bot]
MercAssistAt=100 <-- will /mercassist if mob is at or below this amount and within MercAssistRange. Dont have autoassist on for merc if you want this to work.
MercAssistRange=0 <-- will /mercassist if mob is at or below MercAssistAt and is within this range. Dont have autoassist on for merc if you want this to work.
ManaToSummon=100 <-- mages/enc will auto summon certain clickies if % mana is above this amount. Set below 100 to work.

Added features:
Auto use several mage/enc summoned clickies if ready.
bards no longer try to use modrods

- You can now update all your ini settings on the fly from in game using /bot key=value, just like with mq2melee and /melee aggro=1 for example.

Examples (case insensitive):
/bot meleeat=100
/bot netbotsname=PeteSampras
/bot usenetbots=1

Changed Group.Member[].PctMana to .CurrentMana since .PctMana isnt in core compile and it doesnt really change anything.
 
Worked great so far from my testing no more crashes. One thing i was wondering for certain classes.

Can you make it so a bst will use focused para on classes in the group if they get below a certain % mana ? Also have a cleric use QM on certain classes in the group below 50% mana ?
 
Worked great so far from my testing no more crashes. One thing i was wondering for certain classes.

Can you make it so a bst will use focused para on classes in the group if they get below a certain % mana ? Also have a cleric use QM on certain classes in the group below 50% mana ?
it already does that using the ManaAt= setting.

Fixed a { error and reposted.
 
Pete,

So is this plugin limited as what you have posted on the wiki site?
This plugin is in semi-closed beta. This means anyone can access up to 3 spells/AA of each type, but to go above that requires authorization that you can obtain via active participation.

I will see if I can't take a shot running this in the next week or so.
 
Tried this out tonight. Loaded up fine and buffed toon. Was looking for a way to set to use Clickies in inventory and decided to try the /invis command and EQ crashed. Going to play with this some more, will post back.

Ctaylor
 
Wow, this is cool. I just got it going, and noticed something a little bit funny happening, replicated it twice.

My AA cutoff is default at 10, but my mages are casting their swarm pets even though the recast is 15 minutes. Is that due to swarmat settings?
My shaman is doing the same with Ancestral Aid and swarm pets (15 and 12 minute recasts).

Also, my mages want to use Elemental Form: Fire, but I'd prefer if they used water. I didn't see a setting for that, but maybe I'm overlooking it?

My mages are spamming " Unparsable in Calculation: '{' " but it's not effecting them when an add is in camp, rather, it spams once or so between spell casts.

I'd love to help test if you need it, I've always had a plugin like this in the back of my mind since I saw something similar on MQ2 boards years ago (I think just for emu clerics for that one though)
 
Version 2014.05022a.

- Fixed a "{" spam issue in modrods. I accidentally compiled a debug version rather than release.

Also made it so that it wont give your pets mod rods when you /petgear

Max: Correct @ AACutOff not affecting swarm pets and heals. The AACutOff is purely for stuff that is flagged as AAs. You can see those via Bot.AA, Bot.AA[1] etc. I will post a spells.mac that will printout your spells for you with their type so you know what is what if there is confusion.

ctaylor: I cant replicate the crash, but maybe because im authorized user. I can authorize those that want to participate by your SOE login. I dont think there is a RedGuides.UserName type of TLO/member. But if there is, I could use that. I've made the partial access to enforce feedback because it is the only way to improve the plugin.

EDIT: i dont allow clicky buffs from inventory yet because it was lagging toons out, but I can take by name requests for clicky nukes. I am guessing things like CoA robe for necro/sk amongst others are things people would want added. Just post/PM any requests and I can get them added. Also feel free to post anything I am missing. I do have at least one level 100 of every class with maxed or mostly maxed AAs, but that doesnt mean I didnt miss something. I have purposely not included some things because they were screwing portions up, but feel free to ask.
 
Thanks Pete. Another question. When do the ini checks happen for things like swarm pets? In other plugins/macros, I've seen you can do stuff like...

Rich (BB code):
SwarmAt=${If[${Target.Named},95,0]}

... to get more specific with when stuff will fire. Is that something that we can set, or is swarmAtHp a static variable?

Thanks
 
Ini checks are done on plugin load and /bot on or if you want to /bot swarmat=95. I might add something like that because I like customizable, but right now they are set up as int and it would crash it if you put a string there i'd imagine. For now it is designed around people having no idea wtf they are doing and they can just load the plugin and almost everything just works out of the box.

How those things work in general are that the plugin would read the ini. I would then store a copy and access/modify the copy whenever i wanted to change things so that I didnt have to reaccess the original other than to reset the copy but I would never reaccess the INI except when i load plugin, /bot on, or change the variable with /bot key=value.
 
Ahh, yeah, that makes a lot more sense than constantly reading the file. It must have been a long day. Cool, thanks for the info.
 
Version 2014.05022b.

- /petgear now works whenever the plugin is loaded, you no longer need /bot on
- Added a message to /petgear to let you know how many items have been detected that it will equip when able. Should clear up some confusion when you think you have an item but dont.
- Updated Authorized users list.

- - - Updated - - -

Version 2014.05023.

- Added 1 min delay between rez attempts on any corpse to allow for zoning.

- Updated for today's compile GetSpellByID changes that may or may not affect the plugin.
 
I have been having issues with 2 thing. When I have this running, my tank will not auto engage on mobs when I pull them in, and I have been crashing on Rezs on every toon that has it running. It just started today when I got new compile.
 
I have been having issues with 2 thing. When I have this running, my tank will not auto engage on mobs when I pull them in, and I have been crashing on Rezs on every toon that has it running. It just started today when I got new compile.
Make sure your tank has MeleeAt=100 and mq2melee turned on for all the /stick functions. This will only turn /attack on, but uses mq2mele to do any positioning or sticking. You can disable rezzes by setting RezRadius=0 until I can get a chance to look at it. I am just about to head out, so it wont be for awhile. In the meantime, I will hang the latest version I have compiled on this post. I switched nukes to fire spells first, then AAs rather than AAs then spells. This should allow them to cast AAs when the normal spells are in cooldown, but I didnt get a chance to test it yet so I dont want to post it as official until I do.
 
Last edited:
I do have tank set at MeleeAt=100 and Assistat=100....And having MQ2Melee set up...I can PM you my INI and see if you can see something wrong with it.
 
Version 2014.05025.

- Readded Bot.Snared check to snare routine. There may be a few versions of snare that are missing, so let me know.
- Changed nuke order so that normal spell nukes fire first, then AAs should fire when normal nukes arent ready.
- Added a check to pet heals so mage/enc/nec/shd dont try to heal someone else's pet.
- Found a crash in ImHit if you are taking hits. Fixed it (i think).
- Added Bot.DA to let you know if you have any form of divine aura on you.

Got to test it out a few hours tonight. There was a crash on tank from the ImHit section, but all the other toons ran pretty much without a hitch. It was my first real field testing as a group and it went better than expected. So.. hurray.
 
Just got back in town a few days ago and saw the MQ2Bot plugin.

Started using the plugin on my Warrior in my group of 4 Heroics.
One potentially serious problem reared it's head quickly, she's not facing the mob despite facing=1 in mq2melee ini, at times she's even facing 90 degrees and getting "You cannot see your target".

Experimenting:
when I set UseStick=1 she stuck to the MA's merc. (MA was also set as puller so that might explain why she was sticking to MA's merc)
Turned off Stick (UseStick=0) but she kept sticking to the MA's merc, even after setting UseStick=0 and doing /bot off then /bot on. Had to manually use "/stick off" to get her to stop sticking.
After UseStick=0 and /stick off then changing StickSettings=15 front, she moved to the mob and attacked facing mob. Mob moved and she chased, always facing mob.
Problem solved.

DPS is up about 30% over my kissassist settings.
Holds aggro about the same, maybe touch better. Wizzy merc on balanced steals aggro about 20% of the time, usually when mob is below 40%.
Expected for Heroic warrior who has no augs or aggro enhancing items yet.

Grabbed all the clicky buffs and seems to keep them up.

After getting her to face the mob, move to the mob and attack. Seemed to work flawless for about an hour of steady pulling.
Outstanding work Pete.

-Wolf
 
Just got back in town a few days ago and saw the MQ2Bot plugin.

Started using the plugin on my Warrior in my group of 4 Heroics.
One potentially serious problem reared it's head quickly, she's not facing the mob despite facing=1 in mq2melee ini, at times she's even facing 90 degrees and getting "You cannot see your target".

Experimenting:
when I set UseStick=1 she stuck to the MA's merc. (MA was also set as puller so that might explain why she was sticking to MA's merc)
Turned off Stick (UseStick=0) but she kept sticking to the MA's merc, even after setting UseStick=0 and doing /bot off then /bot on. Had to manually use "/stick off" to get her to stop sticking.
After UseStick=0 and /stick off then changing StickSettings=15 front, she moved to the mob and attacked facing mob. Mob moved and she chased, always facing mob.
Problem solved.

DPS is up about 30% over my kissassist settings.
Holds aggro about the same, maybe touch better. Wizzy merc on balanced steals aggro about 20% of the time, usually when mob is below 40%.
Expected for Heroic warrior who has no augs or aggro enhancing items yet.

Grabbed all the clicky buffs and seems to keep them up.

After getting her to face the mob, move to the mob and attack. Seemed to work flawless for about an hour of steady pulling.
Outstanding work Pete.

-Wolf
So ya, the StickSettings are for you to stick to someone in your group, not to mob. It will stick to your group leader unless your group leader is also puller, in which case it checks down the group until someone else is available. I'd suggest using the "healer" setting ie. StickSettings=30 healer. That way you only stick as needed.

It uses your mq2melee settings for all melee /stick settings. I've found having multiple plugins/macros fighting over /stick settings to be bad juju so I am letting mq2melee handle all of it with the exception of FaceAngle= so that you /face fast the mob if desired.

Thats a good point @ if you /bot usestick=0 that i need to make it squelch a /stick off. I hadnt considered that. You can set your AggroAt= to be lower, but since those are mostly discs on a warrior, youd need to set up the discs in mq2melee for now. You can check the next highest aggro amount using ${Target.SecondaryPctAggro}. I forget the exact warrior discs off the top of my head but you can do custom if commands like: BazuIf=${Target.SecondaryPctAggro}>50

Setting those mq2melee if commands up for that should significantly improve your aggro control. SK and pal are easier because they have spell/AA that are auto detected and used. Discs are on my to do list but I am not there yet.

- - - Updated - - -

Version 2014.05025a.

- You will now /stick off if you /bot usestick=0
- Added /coth, and /coth name commands. If no name is given, it will Call of the Hero the farthest person away that is at least beyond 20' distance.
ie:
/coth <-- will CotH the farthest person that is at least 20' away.
/coth PeteSampras <-- will CotH PeteSampras

- Added Bot.Farthest to let you know which PC in group is farthest from you. SpawnType.
 
Hey Pete, I've been working on using this off and on and there are a few issues I'm having. I'm just going to number them to keep them in order and make it easier to see each issue.

I'm using a level 100 bard to pull and currently auto-pulling with bot ON using another mac.

1) I would like to pull 3-4 mobs at a time, but when pulling bot tries to mez the mobs before I get back to camp with them.

2) Sometimes when pulling, my toon will turn auto attack on. I think this is because I had it set to melee at 100 so I'm switching that to 98 and we'll see how it goes. - Think this fixed that problem

3) With 3 toons running KA, my computer is smooth as silk. When I do 2 on KA and one with Bot, it's laggy and will randomly crash. If I turn bot off, smooth again. bot on, lag.

4) When it uses AA ability, it uses even the burn abilities I have. Would like a way to only use those on named.

5) I haven't figured out a way to do a clicky illusion... is this something I should just do as a down/holy?

6) I have combat twist set to 1 2 3 4, but I see this error in combat "MQ2Twist Invalid gem specified(NULL) - ignoring" then "MQ2Twist Twisting 0 song"
 
Last edited:
Posted today's version. Build 6/17/2014 4:13:05 PM

I stop updating the post when people don't respond so the version you have is wicked old at this point. I update the plugin several times a day usually. At this stage, I've made so many updates since the last one that it would be a challenge to list them all without going through a ton of logs. Umm a few of the big changes from the last couple weeks are:

Added TLO members:
Bot.Active <-- is /bot on
Bot.SpellCat[] <-- This will tell you what the bot plugin thinks your spell is for comparison purposes. If it is a snare or root or slow or mez, etc, it should match up with Bot.Snared, Bot.Rooted, Bot.Slowed, Bot.Mezzed.
Bot.AddCount and Bot.AddCount[radius]. <-- Bot.AddCount returns total number of adds (same as Bot.Adds), Bot.AddCount[250] returns the number of adds within 250 range.
Bot.DA to let you know if you have a divine aura type spell on you.
Bot.Farthest to let you know which PC in group is farthest from you. SpawnType.
Bot.Restricted to let you know what zone ids are currently restricted.
Bot.AddByID[] <-- This returns the Bot.Add[#] if that ID is on your add list.

You can change your default mq2hud.ini NPC= value to the following in order to display the add number in front of each mob's name:
Rich (BB code):
NPC=${If[${Bot.AddByID[${NamingSpawn.ID}]},${Bot.AddByID[${NamingSpawn.ID}]} - ,]}${If[${NamingSpawn.Mark},${NamingSpawn.Mark} - ,]}${If[${NamingSpawn.Assist},>> ,]}${NamingSpawn.DisplayName}${If[${NamingSpawn.Assist}, - ${NamingSpawn.PctHPs}%<<,]}${If[${NamingSpawn.Surname.Length},\n(${NamingSpawn.Surname}),]}

Added /if statements just like mq2melee has for most detrimental spell types.

NukeIfX=whatever <-- This corresponds to your nuke numbers (which are now displayed when you /bot on) Also you can check them via ${Bot.Nuke[x]}. Any statements you put in ini will also display in the proper place beneath the Nuke. Everything is labeled so you know what is what.

Example, I only want to use Nuke0 if the target is named and I have Twincast on:

[MQ2Bot]
NukeIf0=${Bot.Named} && ${Bot.Twincast}
NukeIf7=${Bot.Named} && ${Me.Song[Sustained Destruction].ID}

This works for the following sections so far:
Reminder that format is SectionIf#=
ie.
DotIf2=${Target.PctHPs}>80

Completed [Sections]:
Aggro
Charm
Debuff
Dot
Grab
ImHit
Jolt
Knockback
Lifetap
MainTankBuff
Mez
Nuke
Root
SelfBuff
Snare
Swarm


[MQ2Bot]
AnnounceAdds=1 <-- 1 is on, 0 is off to display adds in /echo.
RepositionIfSummoned=1 <-- 1 is on, 0 is Off. Default for melee/hybrid is 0, for priest/caster is 1.
RestrictedZones=344,202,151,345 <-- bot will not do anything automatically if in these zone IDs. Manual commands will still function
AlwaysCheckAdds=0 <-- 0 off, 1 is on. This will perform add handling and allow access to Bot.Adds/Bot.Adds[x] and allow add messages even while /bot off. This is so you can use it in macros if desired.
PetIllusionItem=Petamorph Wand - Domain Prowler <-- item name to use whatever spell illusion spell you want kept on your pet. *name of item, not spell*
AuthorizedUsers=|guild|group|netbots| <-- by guild/group/raid/netbots or by specific users for whom can request buffs from you using their spell cat or actual spell name. ie. if you say aego, it will give you Unified Hand of Credence.
BuffPassword=ILoveLamp <-- if anyone says "ILoveLamp=Unified Hand of Credence", it will cast Unified Hand of Credence on them. Password is Case Sensitive, spell name is not, = sign is required.

instead of using the exact spell name, you can use one of the aliases below to request that type:
Rich (BB code):
|clarity|haste|aego|skin|sv|se|pred|strength|brells|focus|regen|symbol|growth|shining|ds1|ds2|ds3|ds4|ds5|ds6|ds7|ds8|ds9|ds10|ds11|ds12|panther|fero|retort|hot|
I added in the option that in addition to "aego" you can ask for "cred","cert","temp","tem" and it will internally convert that to "aego" so it fits in with what people actually call the spell these days.


New commands/methods:
/campfire <-- this will attempt to create a standard campfire for you. It takes about 2 seconds to complete and does not check for too steep or having enough members nearby.

/bottwist 1 2 3 4
/bottwist off
/bottwist once 1


/bottwist replaces /twist entirely. You no longer require the mq2twist plugin to use mq2bot and to turn off the twist you must use /bottwist off rather than /twist off

/doorclick <-- This targets the nearest door with 250 range, runs to it, and uses it. It runs in a straight line, so dont make it complicated on yourself by trying it around corners.

Changes:
-Mana check for mod rods
-Clerics will stop rezzing pets
-Death Bloom/Blossom should now work, and should auto click off if you are below 5k HP so you dont kill yourself.
-Reverse DS is now detected as a debuff
-bard mez and twisting fixed
-Quick Time and Fierce Eye are now AA and affected by AACutoffTime= and are no longer "Fight Buffs"
-Changed nuke order so that normal spell nukes fire first, then AAs should fire when normal nukes arent ready.
-Added selos kick for bards
-Added a bunch of paladin/bard changes
-AssistRange should now get used for detrimental routines so you dont try to use the spells beyond that range.
-Updated a crapload of other things.. too many to list.

As far as how to improve performance: You can change CycleDelay=3 in your ini to something higher. it means that 1 in every 3 mq2 cycles it checks mq2bot.. which is roughly 30 times a second if CycleDelay=1. There is no reason at all to make it below 3, but really you are ok at 6 or 10 for most classes. You should see solid performance gains by bumping it up just a little and it will still cycle several times per second.

Yes @ holy/down for clicky illusion for now. I can add that is as an option though considering I added it in for pets.

For bard pulling: MQ2Bot will pause all functions if you have a macro variable: ${Pulling}, ${Looting} or ${MQ2BotPause} as a bool and TRUE or as an integer and not equal to 0. So if you are using a pulling macro:
/declare Pulling outer FALSE

When it goes out to get a mob, add this line to it:
/varset Pulling TRUE

and when it gets back to camp, have it:
/varset Pulling FALSE

I believe that answers all your questions, if you have any others let me know! I will gladly keep this updated if people provide feedback, otherwise I will just let it sit there until the next person says something =P Also I will happily take requests for improvements. Since I am not getting much feedback from users, I am just updating things as I get around to testing on each class. I used wiz/mag/clr mostly so far, with some shd mixed in. Now I have mixed in paladin, bard, shm so those are next up for changes.

- - - Updated - - -

I'm told there are some missions that mobs become immune to mez after the first cast. Added command to toggle checking of immune lists for snare/mez/charm so you can temporarily bypass the checks if you want. Default value when you load bot will be to check them.

/immunes <-- Toggles setting on and off and on and off (default is on)
/immunes on <-- Turns immunity checks on
/immunes off <-- Turns immunity checks off
 
Thanks Pete! Gonna try this out when I get the chance. Might fix some issues I'm having with Twist. What about pulling and me zing? Doe the Bot check for this? I kept dying with the Bot because I would run off to pull 3, then the bot stops and tries to mez. Bard gets squished! :-)
 
Mez has since been corrected since last update you had, and if you use the ${Pulling} variable, it will wait until mob is back to camp. However, it appears i introduced a CTD bug in this latest version and I am tracking it down now. It has to do with debuffs. I should hopefully have a solution before i go to bed, otherwise I can toss up a slightly older version.
 
No rush for me. Going to be too busy for the game for a few days. If you don't mind, I will PM you with my issue.

Where are you keeping it updated?
 
Last edited:
Posted Build 6/17/2014 11:00:02 PM. Ok, i tracked down the CTD issues and swapped pal rez to 96% out of combat rather than 90% in combat. And I believe i tracked down a reuser timer issue that affected debuffs/dots.

I keep it updated on mmobugs site because people provided feedback there regularly. I will keep it updated here if people use it. There were 2 posts with actual feedback after using it in 2 months here so I just let it go. I dont think people realize it is a bot that will fully play your toon for you without requiring any real setup unless you want to use some of the more advanced options. You just load it and type /bot on and it does pretty much everything on its own. Certainly it will work better with some tweaking, but the goal was to have it work out of the box for all classes with 0 setup.
 
Posted Build 6/17/2014 11:00:02 PM. Ok, i tracked down the CTD issues and swapped pal rez to 96% out of combat rather than 90% in combat. And I believe i tracked down a reuser timer issue that affected debuffs/dots.

I keep it updated on mmobugs site because people provided feedback there regularly. I will keep it updated here if people use it. There were 2 posts with actual feedback after using it in 2 months here so I just let it go. I dont think people realize it is a bot that will fully play your toon for you without requiring any real setup unless you want to use some of the more advanced options. You just load it and type /bot on and it does pretty much everything on its own. Certainly it will work better with some tweaking, but the goal was to have it work out of the box for all classes with 0 setup.

One of the best things about how this works is that if I'm trying to PL a toon, I can actually let bot play that toon without wasting time setting up KA for each one. At every DING it just keeps right on going. Sort of like the bard KA ini... just mem the gem and off it goes.

I just haven't figured out how to get certain clickies to work. For example, my bard uses the fluffy ball of cotton to lev instead of Selos songs. I'd like to have him click that when it isn't in the buff window.
 
It handles Prismatic Ward, Form of Endurance, Knowledge of the Past/Soothing Breath , Ancestral Memories/Taelosian Guard/Ancient Flames overhaste, Myrmidon's Skill, Expanding Mind, and Might of Stone for auto clickies. I chose FoE+PW instead of FoD because 1. everyone has both clickies at higher levels, and 2. 1500+ HP is > ~60 AC in my books regardless of class.

So outside of those clickies, you would need to set up down/holy in mq2melee.

Of note for level dings: Any time you add new AA or spells/songs, you should /bot on or /loadspells so that it snags whatever you have. I made it via command rather than constantly checking to reduce resource usage.

- - - Updated - - -

Updated for today's patch. Normally it doesnt require updates, but eqmule added a function in that had an identical name to mine and it was causing a compile error. I dont know if that translates into an error on the user side, but I figure I might as well post the latest.

Added:
Bot.Outside <-- will let you know last know status of if the zone you are in is considered outdoors. This will go away eventually once the flag is found for zonetype.

[MQ2Bot]
InterruptToHealAt=0 <-- % HP of lowest group member, that if below, you will interrupt any non-heal spell and try to cast a heal spell instead.

I will be updating for new spells/AAs Soon(tm).
I will also be adding some specific feedback that I am looking for, and if the first person to provide said specific feedback on this thread will be given enough redcents by me to pay for a monthly sub. Off the top of my head, I will need all the if statements verified as working or not working for each section referenced in: http://www.redguides.com/community/showthread.php/27869-MQ2Bot?p=217529&viewfull=1#post217529

- - - Updated - - -

Build 6/18/2014 7:57:43 PM.

Reduced spam messages. It should no longer announce if you use the same spell/aa more than once in a row. I will still need to add it to items as well. Realize that if you legitimately use a spell twice in a row, that the second one just wont be announced. If that was a heal or a mez message, it could be disconcerting. The heal/mez is still on its way.

Also forgot to mention that I added in auras for paladin (requires you to have it memmed for it to detect it).
 
I have 15 various 85 Heroic toons I wanted to get epic 1.0 on them all so this bot will fit the bill as almost every epic requires some form of mindless slaughter at some point and I have stumbled on a way to make over 100k a day and I think this bot may help me up that to 200k a day.....
 
One of the best things about how this works is that if I'm trying to PL a toon, I can actually let bot play that toon without wasting time setting up KA for each one. At every DING it just keeps right on going. Sort of like the bard KA ini... just mem the gem and off it goes.

I just haven't figured out how to get certain clickies to work. For example, my bard uses the fluffy ball of cotton to lev instead of Selos songs. I'd like to have him click that when it isn't in the buff window.

You could setup a downshit in your mq2melee stuff to do that.
 
MQ2Bot

Users who are viewing this thread

Back
Top
Cart