MQ2Bot Common Problems and Answers

Fry

Fry Guy
Joined
Jan 31, 2005
Messages
11,855
Reaction score
581
Points
113
Location
Australia
Website
www.mmobugs.com
MQ2Bot FAQ - Help for some of the more common questions or problems with MQ2Bot.

MQ2Bot was to create a plugin that will bot any class without having to worry about having to config spells. MQ2Bot will read what spells you have memorized along with what aa's, disciplines and clickies you have, and use those to buff/fight with. You can further customize each spell or aa with macro TLO's to decide under what conditions to use said spell/aa/disc. These settings are stored in your base MQ2 folder at ServerName_CharacterName.ini.

When you start the bot with the "/bot on" command, it will show you each spell/aa/discipline/clicky it can find and will use.

This FAQ will hopefully give you some insight in how to solve some problems or customize it to your liking. These are the problems that come up most often.

--------------------------

1. My character doesn't move back to camp location after it's finished killing a mob, how do I fix this?

Use the MQ2MoveUtils command /makecamp. This will make your character go back to this location once it's finished combat. When first messing with /makecamp command, do the following. "/stick set verbflags 512". This command will tell you what makecamp is doing to help you mess with settings. Then just use /makecamp on, and /makecamp off commands to get started.

If your not getting anything showing in MQ2 window when you use the makecamp command, type /stick set verbflags 33554431

--------------------------

2. My enchanter isn't mezing correctly, healing correctly or engaging mobs correctly, how do I fix this?

Make sure you've set the roles Puller, Main Tank and Main Assist in your ingame group. If these are not set it can cause all types of weird problems.

Also check your MezImmune list. Sometimes mobs can be added to your MezImmune list by accident, to remove them head to your Macros/Mob_Ignore_List.ini and delete the mob in there.

--------------------------

3. My character is using a clickie or using a spell I don't want it to use, how do I stop it?

MQ2Bot reads what AA's/Auras/Clickies you have and what spells you have memorized to determine what the best spell to use is. The way to disable a certain item is to edit your MQ2Bot character ini file and create an if statement to disable it.

When you start the bot with /bot on, it will spit out a ton of information into your MQ2 window. Find the Spell/AA/Clickie you want to disable.

Example:
Code:
Mez0: Beam of Slumber XIV

Open up the Server_CharacterName.ini in your MQ2 folder. There will be a section called [MQ2Bot], scroll to the end of that section.

Add in
Code:
Mezif0=0
To the bottom of that MQ2Bot section. Save, and restart bot with /bot on.

It should now say "MezIf0: 0" when you start up the bot, and this will disable the spell from being used.

You can repeat this for any AA's, Heals, Buffs, Nukes, Clickies or anything else listed when you start MQ2Bot.

--------------------------

4. My character is casting a debuff over and over, how do I stop this?

You will need to create an if statement if this is happening.

Lets pretend your character is chain casting "Turgur's Insects". When you start the bot, Debuff1 is Turgur's Inspects, you'd open your Server_CharacterName.ini in your macroquest folder. Find MQ2Bot section, and at the bottom put in the following.

Code:
DebuffIf1=(!${Target.Buff[Turgur's Insects].ID})

Let's say it's chain casting the dot, "Mawmun's Venom" too from Dot 3 spot. Add the following.

Code:
DotIf3=(!${Target.Buff[Mawmun's Venom].ID})

You can get a lot more complicated with these if statements, like only cast a dot, if slow is on it first, and so on.

--------------------------


5. My Paladin is casting "Lay On Hands" to heal himself, but I only want to use it when fighting a named mob, how would I do this?

So on my Paladin "Lay on Hands" is listed under "Heal0" when I turn bot on. I will add the following to my MQ2Bot ini section.

Code:
HealIf0=(${Target.Named} && ${Me.CombatState.Equal[COMBAT]})

Now Lay on Hands will only fire if the target is Named, and I'm in combat. Another good fix for this would be to trigger when your under 20% health.

--------------------------

6. My character wont Melee, or only melees when mob is right on top of them

The range that your character will start meleeing is controlled by MQ2Bot setting MeleeRange, and MQ2Melee setting StickRange

MQ2Melee command:
/melee stickrange=150

Will control how soon you start sticking on target. This defaults at 70

MQ2Bot setting MeleeDistance will set the range until it engages. This defaults to 40 range.

MQ2Bot setting MeleeAt settings tells when to start meleeing. For melee character this defaults at 100% health, for casters it defaults at 0. You can edit these settings in your server_charactername.ini.

--------------------------

7. My character is not casting rez on dead group members?

Make sure corpses are not hidden.

--------------------------

8. My character is acting weird, how do I enable debug to figure out what is going on?

To enable debugging use the following commands: (Warning this creates a huge log file if left going for a long time.)

/bot Debugging=1
/bot DoDebug=1

Debug log (MQ2Bot_serverName_characterName.log in MQ2 Logs folder). Make sure you turn these logs off and delete them afterwards, as they will get gigantic in size and start to lag your computer.

--------------------------

8. What are all the inbuilt commands for MQ2Bot?

See the MQ2Bot wiki for all the inbuilt commands.


--------------------------

9. How do I get MQ2Bot to pull?

There is a few steps.

Get MQ2Nav loaded, with a valid mesh. Download the mesh for your zone from MQMesh, unzip it to your MQ2Nav folder, then load MQ2Nav "/plugin mq2nav". It should say "[MQ2Nav] Successfully loaded mesh for YOUR-ZONE-NAME". If this happens, your good.

Next we need to enable a few things in your Character_Server.ini. Open it up in a text editor on the character you are pulling from.

Change
Code:
PullingDistance=0

To the Distance you want to pull within

Example:
Code:
PullingDistance=100

Change
Code:
DoPulls=0

0 is Disabled, you want this changed to 1.

Then you need to change

Code:
PullSkillName=

This can be a spell name, discipline name, AA or ranged.

Save the file, and restart bot with /bot on.

The last thing you'll need to do is change your group role to puller ingame. Right click your name in group, and change it to Puller.

Make sure you are not set as Main Tank, or pulling may not work.

Make sure you also have a Main Assist set up or it wont kill the pulled mob.

-------------

10. With my chanter (Bard too), I've noticed it will say "Possible add: xyz" but not count them as an Add at any point during the fight. Anyone know what causes that by chance? Trying to get mez's to happen more consistently

This is because they are not registered as hating you, likely because of memblur, it keeps ditching aggro.

-------------

11. How do I ignore targeting or pulling a certain mob?

Use the command /imob, to ignore a mob. You can also edit macros/mob_ignore_list.ini to add/remove mobs from ignore list, then use /loadbot command to re-read the ini.
 
Last edited:
  • Like
  • Love
Reactions: tiki and EQDAB
Is there a way to make the /loadbot data to a text file so I can look at it outside of the game?
 
  • Like
Reactions: EQDAB
I am having a problem with rogue doing ligament slice and causing mob to walk away. How do I disable it in Mq2bot?
 
  • Like
Reactions: madmocasin
yep, I actually looked at that the problem is that : {When you start the bot with /bot on, it will spit out a ton of information into your MQ2 window. Find the Spell/AA/Clickie you want to disable. }
It doesnt spit out a bunch of info in my mq2 window..........nor does my ini file have anything in it even mildly resembling "Ligament Slice or a combat skill # listed
 
  • Like
Reactions: EQDAB
I just started experimenting with this plugin and it is fantastic.

One problem I cant seem to figure out is my bard puller. I turn everything on and its perfect, pulls and pulls, and stops to med then goes again. Suddenly it will stop working, the bard runs out then just stands there, no target. Everyone is full mana and just standing there. If I target something and click my pulling aa it starts running again for an hour or two.

I cant seem to figure out what makes the bard just stop.

Also. Is there a way to make the swarm pets guard at the camp instead of following her? I want to keep them because my group is mage heavy.
 
Last edited:
I just started experimenting with this plugin and it is fantastic.

One problem I cant seem to figure out is my bard puller. I turn everything on and its perfect, pulls and pulls, and stops to med then goes again. Suddenly it will stop working, the bard runs out then just stands there, no target. Everyone is full mana and just standing there. If I target something and click my pulling aa it starts running again for an hour or two.

I cant seem to figure out what makes the bard just stop.

Also. Is there a way to make the swarm pets guard at the camp instead of following her? I want to keep them because my group is mage heavy.
I think the best way to solve this is to enable debug on bard and see what it's trying to do when it stops. It should tell you why it isn't pulling.

As for swarm pets, I think you'd need to dig into issuing a command before it goes to pull which should be do'able in ini.
 
  • Like
Reactions: EQDAB
This seems to be where she is getting stuck:

Code:
[2022/09/15 07:46:19] [CheckAura:7953] - Executing subroutine.
[2022/09/15 07:46:19] [CheckBard:8115] - Executing subroutine.
[2022/09/15 07:46:19] [CheckInvis:10136] - Executing subroutine.
[2022/09/15 07:46:19] [CheckEndurance:9245] - Executing subroutine.
[2022/09/15 07:46:19] [CheckMed:11243] - Executing subroutine.
[2022/09/15 07:46:19] [CheckPull:7637] - Executing subroutine.
[2022/09/15 07:46:19] [FindMob:7389] - Executing subroutine.
[2022/09/15 07:46:19] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:19] [UpdatePullingNavigation:7520] - Executing subroutine.
[2022/09/15 07:46:19] [CheckPullAggro:7059] - Executing subroutine.
[2022/09/15 07:46:19] [CheckPullAggro:7064] - Checking pull aggro.
[2022/09/15 07:46:19] [CheckPullAggro:7305] - Failed subcheck:  PullSkillDistance > 0:  250   pFindMob?TRUE   CanSee?FALSE   Distance: 475.70
[2022/09/15 07:46:19] [BotHideDoCommand:767] - /nav id 11877 log=error
[2022/09/15 07:46:19] [OnPulse:19071] - Puller endurance med check, skipping check:  Pull=TRUE Return=FALSE
[2022/09/15 07:46:19] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:19] [OnPulse:19071] - Puller endurance med check, skipping check:  Pull=TRUE Return=FALSE
[2022/09/15 07:46:19] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:19] [OnPulse:19071] - Puller endurance med check, skipping check:  Pull=TRUE Return=FALSE
[2022/09/15 07:46:19] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:19] [OnPulse:19071] - Puller endurance med check, skipping check:  Pull=TRUE Return=FALSE
[2022/09/15 07:46:19] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:19] [OnPulse:19071] - Puller endurance med check, skipping check:  Pull=TRUE Return=FALSE
[2022/09/15 07:46:19] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:19] [OnPulse:19071] - Puller endurance med check, skipping check:  Pull=TRUE Return=FALSE
[2022/09/15 07:46:19] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:19] [OnPulse:19071] - Puller endurance med check, skipping check:  Pull=TRUE Return=FALSE
[2022/09/15 07:46:19] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:19] [OnPulse:19071] - Puller endurance med check, skipping check:  Pull=TRUE Return=FALSE
[2022/09/15 07:46:19] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:19] [OnPulse:19071] - Puller endurance med check, skipping check:  Pull=TRUE Return=FALSE
[2022/09/15 07:46:19] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:19] [OnPulse:19071] - Puller endurance med check, skipping check:  Pull=TRUE Return=FALSE
[2022/09/15 07:46:19] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:19] [UpdatePullingNavigation:7520] - Executing subroutine.
[2022/09/15 07:46:19] [CheckPullAggro:7059] - Executing subroutine.
[2022/09/15 07:46:19] [CheckPullAggro:7064] - Checking pull aggro.
[2022/09/15 07:46:19] [CheckPullAggro:7305] - Failed subcheck:  PullSkillDistance > 0:  250   pFindMob?TRUE   CanSee?FALSE   Distance: 464.84
[2022/09/15 07:46:19] [OnPulse:19071] - Puller endurance med check, skipping check:  Pull=TRUE Return=FALSE
[2022/09/15 07:46:19] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:19] [OnPulse:19071] - Puller endurance med check, skipping check:  Pull=TRUE Return=FALSE
[2022/09/15 07:46:19] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:19] [OnPulse:19071] - Puller endurance med check, skipping check:  Pull=TRUE Return=FALSE
[2022/09/15 07:46:19] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:19] [OnPulse:19071] - Puller endurance med check, skipping check:  Pull=TRUE Return=FALSE
[2022/09/15 07:46:19] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:19] [OnPulse:19071] - Puller endurance med check, skipping check:  Pull=TRUE Return=FALSE
[2022/09/15 07:46:19] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:19] [OnPulse:19071] - Puller endurance med check, skipping check:  Pull=TRUE Return=FALSE
[2022/09/15 07:46:19] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:19] [OnPulse:19071] - Puller endurance med check, skipping check:  Pull=TRUE Return=FALSE
[2022/09/15 07:46:19] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:19] [OnPulse:19071] - Puller endurance med check, skipping check:  Pull=TRUE Return=FALSE
[2022/09/15 07:46:19] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:20] [OnPulse:19071] - Puller endurance med check, skipping check:  Pull=TRUE Return=FALSE
[2022/09/15 07:46:20] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:20] [OnPulse:19071] - Puller endurance med check, skipping check:  Pull=TRUE Return=FALSE
[2022/09/15 07:46:20] [CheckReturn:7617] - Executing subroutine.
[2022/09/15 07:46:20] [UpdatePullingNavigation:7520] - Executing subroutine.
[2022/09/15 07:46:20] [CheckPullAggro:7059] - Executing subroutine.
[2022/09/15 07:46:20] [CheckPullAggro:7064] - Checking pull aggro.
 
So it looks like it was starting to navigate to id 11877 with this line
Code:
[2022/09/15 07:46:19] [BotHideDoCommand:767] - /nav id 11877 log=error

It then starts moving, waiting to check if it's within 250 range
Code:
[2022/09/15 07:46:19] [CheckPullAggro:7305] - Failed subcheck:  PullSkillDistance > 0:  250   pFindMob?TRUE   CanSee?FALSE   Distance: 475.70

Still moving and 11 closer in the same second.
Code:
[2022/09/15 07:46:19] [CheckPullAggro:7305] - Failed subcheck:  PullSkillDistance > 0:  250   pFindMob?TRUE   CanSee?FALSE   Distance: 464.84

Could you post a few more seconds of the log if there is any? as there isn't anything that stands out as the problem to me there.
 
  • Like
Reactions: EQDAB
Ok I can now reproduce what is happening. The bard pulls fine, comes back to camp, the mob comes in, the pets swarm it, the bard goes out and helps. When the fight is done the pets come back, if the bard is close enough she pulls again, but if she is too far from camp she just stands there. I can manually drive her back to camp but its funny, like she is trying not to move, when she is close enough she takes off for another pull.

I am using the make camp, and have the following settings:

Code:
PullingDistance=475
MaxNavPathDistance=0
MaxCampReturnDistance=1
PullSkillRange=250
PullingMaxZ=400
PullingLOS=1
PrePullIf=${Spawn[name of toon].PctMana}>10
PullSkillName=Sonic Disturbance
PullingFilter=1
DoPulls=1

What settings can I change to make her come back to camp after the fight?
 
  • Like
Reactions: EQDAB
I wonder if it's a little too far from camp at that point. Could try increasing this in your ini and /loadbot

MaxCampReturnDistance=15

For whatever it is, try a bit more distance, see how that works.

htw
 
  • Like
Reactions: EQDAB
That seemed to do it HTW! Been pulling like crazy over an hour now! Thank you.
 
  • Like
Reactions: EQDAB
when i load mq2 and im online and type /bot on it is not doing anything what do i need to do to fix this problem?
 
  • Wow
Reactions: EQDAB
Have you tried loading the plugin? type /plugin mq2bot. Then type /bot on
 
  • Like
Reactions: EQDAB
For some reason my bard won’t twist songs and what I activate the melody it shuts it off I went into ini file and added which songs to play in combat and non combat but still not doing it what do I need to do ? Thank you