Disable error sound in macro?

This is the macro I usually use for on-use trinkets but it doesn’t seem to work anymore and my character keeps saying “it’s not ready yet” every time I hit the button. Any way to fix it?

#showtooltip Kill Command
/console Sound_EnableErrorSpeech 0
/cast [harm] Kill Command
/targetenemy [noharm][dead][noexists]
/use 14
/console Sound_EnableErrorSpeech 1
/script UIErrorsFrame:Clear()

2 Likes

System > Sound > Disable Error Sounds

3 Likes

I don’t want to disable all the error sounds forever, I like them in general. I just want to fix my macro.

1 Like

No one?
Really annoying given how many on-use trinkets there are atm.

I’m very confused because the CVar browser is still showing Sound_EnableErrorSpeech as a variable so it should work but it just… doesn’t?

There might be something here:

https://us.forums.blizzard.com/en/wow/t/suppress-audio-warning/240790

Thanks but nothing in there worked :frowning:

There’s been a couple discussions on the subject this xpac and they’ve all ended in just disable error sounds. Hence my earlier recommendation.

I guess I’m gonna have to until we find a solution :confused:

try this:

/console Sound_EnableSFX 0
/use 14
/console Sound_EnableSFX 1

3 Likes

That doesn’t work, it disables the sound effects and not the error speech.

#showtooltip Kill Command
/console Sound_EnableErrorSpeech 0
/cast [harm] Kill Command
/targetenemy [noharm][dead][noexists]
/use 14
/script UIErrorsFrame:Clear()
/run C_Timer.After(0.1, function() SetCVar("Sound_EnableErrorSpeech", 1) end)

Seems to work??
Because there is a delay built into error sounds if you do something where you expect to hear an error too quickly (and too often) after this it can seem like the sound is permanently turned off.

7 Likes

You’re my friggin hero! This works perfectly!
The UIErrorsFrame:Clear() line doesn’t seem to work though because the “Item is not read yet” red text still appears, but at least the error speech is gone. I can live with the text but if you know how to fix it, please do tell :slight_smile:

Change the /run line to:

/run C_Timer.After(0, function() SetCVar("Sound_EnableErrorSpeech", 1) UIErrorsFrame:Clear() end)

and delete:

/script UIErrorsFrame:Clear()
It still flashes on the screen for that fraction of a second but…

6 Likes

That’s perfect! Much obliged :purple_heart:

This is the full macro now, in case it helps anyone:

#showtooltip Kill Command
/console Sound_EnableErrorSpeech 0
/cast [harm] Kill Command
/targetenemy [noharm][dead][noexists]
/use 14
/run C_Timer.After(0, function() SetCVar(“Sound_EnableErrorSpeech”, 1) UIErrorsFrame:Clear() end)

18 Likes

Thank you for this!

2 Likes

Just returning to the game after seven years and I was like OMG what is wrong with my old sound/error macros?!?! Thank you for asking this question and thanks to those that had a remedy. /salute

1 Like

For anyone copying this, be careful with the quotation marks, make sure you replace them because these stylized start and end-quote ones will cause blank LUA errors.

2 Likes

Try this. I just released an addon that will make this easier to do.

The addon is called ErrorToggleCommand on curseforge.

You simply just use in your macro
/error_off
/use 14
/error_on

2 Likes

I know this is late, but you need to change ErrorsFrame:Clear() for ErrorsFrame:Hide() for it to work.

Thank you for this threat <3