Upcoming Broken Macros With Next MQ2 Release

I attempted to update the macro of a member here. It seems the macro utilizes the bot plugin (which honestly I didn't know you could do, as I stopped using bot.mac before it became a plugin). I couldn't find any undeclared instances in the mac itself, but it was still very broken and I'm assuming it's because of bot.mac/botplugin.

bot plugin works just fine from my testing. What macro were you trying to update ?
 
I attempted to update the macro of a member here. It seems the macro utilizes the bot plugin (which honestly I didn't know you could do, as I stopped using bot.mac before it became a plugin). I couldn't find any undeclared instances in the mac itself, but it was still very broken and I'm assuming it's because of bot.mac/botplugin.

bot plugin works just fine from my testing. What macro were you trying to update ?

Yeah, what William said lol.
 
I attempted to update the macro of a member here. It seems the macro utilizes the bot plugin (which honestly I didn't know you could do, as I stopped using bot.mac before it became a plugin). I couldn't find any undeclared instances in the mac itself, but it was still very broken and I'm assuming it's because of bot.mac/botplugin.

bot plugin works just fine from my testing. What macro were you trying to update ?

Yeah, what William said lol.

Huh, perhaps there was something else wrong rather than undeclared variables or botplugin It's a plugin the member took from elsewhere, and I don't recognize the source of it...
 
I attempted to update the macro of a member here. It seems the macro utilizes the bot plugin (which honestly I didn't know you could do, as I stopped using bot.mac before it became a plugin). I couldn't find any undeclared instances in the mac itself, but it was still very broken and I'm assuming it's because of bot.mac/botplugin.

bot plugin works just fine from my testing. What macro were you trying to update ?

Yeah, what William said lol.

Huh, perhaps there was something else wrong rather than undeclared variables or botplugin It's a plugin the member took from elsewhere, and I don't recognize the source of it...


What is the name of the plugin, and what is its intended purpose? Perhaps it can be used in conjunction with the MQ2Bot like my Pull.mac but doesn't require it? Also, I don't know of any code from the recent patch that would break a plugin, only macro's were affected, unless I've overlooked that. It may just be an outdated plugin?
 
Last edited:
If you have mq2bot loaded and are running a macro without /bot on it will throw up undeclared variables.
 
If you have mq2bot loaded and are running a macro without /bot on it will throw up undeclared variables.

Suppose I need to go run pull.mac with the updates once it's up again to verify it's not going to have any issues. My simple pull.mac doesn't have anything undeclared that I'm aware of. At best a new install would have some undeclared during the INI check/initialize. But I'm not sure how it would be affected.
 
If you have mq2bot loaded and are running a macro without /bot on it will throw up undeclared variables.

Suppose I need to go run pull.mac with the updates once it's up again to verify it's not going to have any issues. My simple pull.mac doesn't have anything undeclared that I'm aware of. At best a new install would have some undeclared during the INI check/initialize. But I'm not sure how it would be affected.

Its not the mac. If you have mq2bot loaded at all and are not using it and you try and use any macro it will pop up with undeclared variables that exist inside of mq2bot but because you have /bot off them variables do not exist.
 
If you have mq2bot loaded and are running a macro without /bot on it will throw up undeclared variables.

Suppose I need to go run pull.mac with the updates once it's up again to verify it's not going to have any issues. My simple pull.mac doesn't have anything undeclared that I'm aware of. At best a new install would have some undeclared during the INI check/initialize. But I'm not sure how it would be affected.

Its not the mac. If you have mq2bot loaded at all and are not using it and you try and use any macro it will pop up with undeclared variables that exist inside of mq2bot but because you have /bot off them variables do not exist.

I see. Also, that's interesting. I'll have to put a check for the plugin itself in my pull.mac to ensure it's wanted (INI for UseMQ2Bot=True/False) and if it's true and not on then turn it on at the head of the mac. Or is this something that can't be automated due to the errors. IE: Immediate errors and macro crash, or Scattered with no crash etc etc.

I do have code to /bot pause, but not sure what the opposite option for that is, so I've used /bot on to get it going again after pulling events.
 
Its not an option. It will error out on the first line of sub main. I believe /bot pause will unpause if you do /bot pause again
 
Its not an option. It will error out on the first line of sub main. I believe /bot pause will unpause if you do /bot pause again

All the same, The coding for the pull.mac doesn't require MQ2Bot, but it's intended to run along side it. Apparently MQ2Bot has a pulling routine (or so I've heard). So likely I'll just convert it to a stand alone Pulling Routine if I can ever get it right. Most of my issues is pathing, so I'll likely do as one user recommended and work on advpath recordings for the pull paths. MQ2Nav just isn't there yet and using MoveUtils is like asking to run into a wall for an hour trying to get to a creature on the other side of it.
 
Its not an option. It will error out on the first line of sub main. I believe /bot pause will unpause if you do /bot pause again

Well with the latest update downloaded and EQ up I just tested Pull.mac, no issues inherant that I've seen. But only tested for about 20 minutes with MoveUtils and haven't tested with MQ2Nav. I didn't run into any issues with the macro other than known bugs that I haven't tried to fix yet. Homework is keeping too busy to work on it. But last check MQ2Nav worked as well as can be expected in its infantcy (pathing issues where character randomly hangs trying to navigate)
 
I noticed in spell_routines.inc

the line:
Code:
/if (${spellType.NotEqual[item]} && ${spellType.NotEqual[alt]} && ${spellType.NotEqual[ability]} && ${spellType.NotEqual[disc]}) /call SpellCast "${spellType}" "${spellName}" "${mySub}" "${spellID}" "${giveUpValue}"

Triggers even when spellType is "alt", even though
Code:
/echo (${spellType.NotEqual[item]} && ${spellType.NotEqual[alt]} && ${spellType.NotEqual[ability]} && ${spellType.NotEqual[disc]})

gives (TRUE && FALSE && TRUE && TRUE)

Anyone know why?
 
Were things changed again in the recent update dealing with function arguments not being passed in?

I went through after the first patch released and updated everything for those, and string had to be checked .Equal[NULL]. Now however it seems strings have to be checked as ${Variable} == NULL.

Was trying to get a few other things fixed tonight and noticed this new behavior. Quite frustrating to have spent all that time changing it the first time if I now have to go through and change so many occurrences of it again so soon.

I'm trying my best to put what time I can to getting my macros corrected for the changes so that anyone who sitll uses them have some working bots. Bt if they are going to be broken again every couple of weeks, I won't have any hope of keeping up lol.
 
Were things changed again in the recent update dealing with function arguments not being passed in?

I went through after the first patch released and updated everything for those, and string had to be checked .Equal[NULL]. Now however it seems strings have to be checked as ${Variable} == NULL.

Was trying to get a few other things fixed tonight and noticed this new behavior. Quite frustrating to have spent all that time changing it the first time if I now have to go through and change so many occurrences of it again so soon.

I'm trying my best to put what time I can to getting my macros corrected for the changes so that anyone who sitll uses them have some working bots. Bt if they are going to be broken again every couple of weeks, I won't have any hope of keeping up lol.

Here was the latest change to MQ2MacroCommands.cpp. Old to left, new to right. This was only change since the main changes were released.

https://i.imgur.com/4SxzPSJ.jpg
 
Here was the latest change to MQ2MacroCommands.cpp. Old to left, new to right. This was only change since the main changes were released.

https://i.imgur.com/4SxzPSJ.jpg

That change doesn't look related, looks like it's dealing with variables in an #event if I'm readin git right, so not sure when it got included in the compile here but I looked at the macroquest2.com Latest release topic and found this:

eqmule said:
14 Sep 2017 by eqmule
- Updated for TEST
- Fix: Variables that are undeclared but supplied as paramters now default to an actual NULL or 0 not the string "NULL"

So I'm guessing that is what caused it.

*sigh* Guess that will be another couple hours going through and finding all the places I had to change for .Equal[NULL] and changing them again.

I just really hope this is the last major breaking change for a while.