One of the common issues of macros is that error sounds and messages are played, even though the player does not wish to hear or see them.  This usually happens when abilities, or items are chained together.  For example:


#showtooltip
/cast Mangle(Bear Form)
/cast [nomod] Maul(Bear Form)
/startattack

or

#showtooltip Arcane Blast
/use 13
/use 14
/cast Arcane Blast

In the first case, if Maul is not ready, then the error messages will be played/displayed whenever the macro is activated.  Likewise, if either trinket is not ready, the messages will be played/displayed when the second macro is used.


The standard way to fix these macros is to temporarily turn off sound and text warnings, like so:

#showtooltip
/cast Mangle(Bear Form)
/console Sound_EnableSFX 0
/cast [nomod] Maul(Bear Form)
/console Sound_EnableSFX 1
/script UIErrorsFrame:Clear()
/startattack

#showtooltip Arcane Blast
/console Sound_EnableSFX 0
/use 13
/use 14
/console Sound_EnableSFX 1
/script UIErrorsFrame:Clear()
/cast Arcane Blast

The extra lines temporarily turn off the error sound, then turn it back on, and clear out the messages frame.  Now, the error messages are hidden with regards to the secondary effects, but are still displayed when something is wrong with the primary effect (e.g. missing target, our of range, etc).

The problem with this solution is that the extra commands take an extra 84 bytes of macro text.  This is almost 1/3 of the allowable characters in a macro!

This mod fixes the situation by converting the long commands to very short ones.  Now the macros can be written thusly:

#showtooltip
/cast Mangle(Bear Form)
/q 0
/cast [nomod] Maul(Bear Form)
/q 1
/startattack

#showtooltip Arcane Blast
/q 0
/use 13
/use 14
/q 1
/cast Arcane Blast

Now the extra character count is a mere 10 characters.  Also, the commands are a lot easier to remember.

Full listing of QuietMacros Commands:
/q 0
    Turns off error sounds.
/q 1
    Turns on error sounds, and clears the errors frame.
/q debugon
    Will make QuietMacros print the current value of Sound_EnableSFX in the chatframe whenever QuietMacros is called.
/q debugoff
    Turns off debugging.
