Disable AbandonQuest API
Pixol-WoW opened this issue ยท 1 comments
Is your feature request related to a problem? Please describe.
(Note: This is more for TBC situation)
WeakAuras can be coded to automate abandoning quests. A worst-case scenario is a WeakAura maliciously abandoning an attunement quest right before the quest boss dies during an encounter, possibly making you ineligible to loot the quest item and unable to finish attunement. See "Additional context" below for more details.
Describe the solution you'd like
Add the following functions to the "blockedFunctions" variable in "AuraEnvironment.lua":
SetAbandonQuest
AbandonQuest
Describe alternatives you've considered
N/A
Additional context
Going into more detail for the worst-case scenario...
With the release of Mount Hyjal and Black Temple, many people will be completing the following Black Temple attunement quest:
https://tbc.wowhead.com/quest=10947/an-artifact-from-the-past
which requires you to defeat Rage Winterchill in 25-man raid Mount Hyjal and loot a quest item off that boss. If a WeakAura is coded to abandon your quest mid-encounter right before Rage Winterchill is about to die, you will probably be unable to loot the quest item and therefore cannot raid Black Temple (I doubt fellow raiders sharing the quest after the boss has died would work based on how other quests work). You would have to wait until next week due to raid lockout, if I am understanding this attunement quest line properly.
We discussed that for a bit in our developer chat. And at this time we won't add it to the blacklist.
There's always tension between not unduly restricting what people can do with WeakAuras and preventing the malicious auras. There are legitimate use cases for every api that we block, but on balance those apis turned out to be to often abused by stupid people. Stupid, because it's usually not that hard to figure out who created those a malicious aura, and they usually get banned from the game by Blizzard.
A theoreticaly issue does not warrant us blacklisting an api.