Files
Questie-X/Database/Corrections/SeasonOfDiscovery.lua
T

1173 lines
40 KiB
Lua

---@class SeasonOfDiscovery
local SeasonOfDiscovery = QuestieLoader:CreateModule("SeasonOfDiscovery")
-------------------------
--Import modules.
-------------------------
---@type QuestieDB
local QuestieDB = QuestieLoader:ImportModule("QuestieDB")
---@type QuestieQuestBlacklist
local QuestieQuestBlacklist = QuestieLoader:ImportModule("QuestieQuestBlacklist")
SeasonOfDiscovery.currentPhase = 1 -- TODO: Use API function which hopefully will come in the future
local runeQuestsInSoD = {-- List quests here to have them flagged as Rune quests in Season of Discovery
[1470] = 1, -- Warlock Metamorphosis Part 1
[4763] = 1, -- Warlock Shadow Bolt Volley Darkshore
[76156] = 1, -- Shaman Lava Lash Part 1
[76160] = 1, -- Shaman Lava Lash Part 2
[76240] = 1, -- Shaman Lava Lash Part 3
[77568] = 1, -- Hunter Chimera Shot
[77571] = 1, -- Druid Fury of Stormrage Alliance
[77573] = 1, -- Rogue Shadowstrike Nightelf
[77574] = 1, -- Priest Penance
[77575] = 1, -- Warrior Victory Rush
[77582] = 1, -- Warrior Victory Rush
[77583] = 1, -- Rogue Shadowstrike Orc
[77584] = 1, -- Hunter Chimera Shot
[77585] = 1, -- Shaman Overload
[77586] = 1, -- Warlock Haunt
[77587] = 1, -- Shaman Overload
[77588] = 1, -- Warrior Victory Rush
[77590] = 1, -- Hunter Chimera Shot
[77592] = 1, -- Rogue Shadowstrike Troll
[77616] = 1, -- Warrior Victory Rush
[77617] = 1, -- Paladin Crusader Strike Elwynn Forest
[77618] = 1, -- Rogue Shadowstrike Human
[77619] = 1, -- Priest Penance
[77620] = 1, -- Mage Ice Lance Elwynn Forest
[77621] = 1, -- Warlock Haunt
[77642] = 1, -- Priest Penance
[77643] = 1, -- Mage Ice Lance Durotar
[77648] = 1, -- Druid Fury of Stormrage Horde
[77649] = 1, -- Hunter Chimera Shot
[77651] = 1, -- Warrior Victory Rush
[77652] = 1, -- Shaman Overload
[77655] = 1, -- Warrior Victory Rush
[77656] = 1, -- Warrior Victory Rush
[77657] = 1, -- Paladin Crusader Strike Dun Morogh
[77658] = 1, -- Rogue Shadowstrike Dwarf
[77659] = 1, -- Rogue Shadowstrike Gnome
[77660] = 1, -- Hunter Chimera Shot
[77661] = 1, -- Priest Penance
[77666] = 1, -- Warlock Haunt
[77668] = 1, -- Warrior Victory Rush
[77667] = 1, -- Mage Ice Lance Dun Morogh
[77669] = 1, -- Rogue Shadowstrike Undead
[77670] = 1, -- Priest Penance
[77671] = 1, -- Mage Ice Lance Tirisfal Glades
[77672] = 1, -- Warlock Haunt
[78088] = 1, -- Paladin Divine Storm
[78089] = 1, -- Paladin Divine Storm
[78090] = 1, -- Paladin Divine Storm
[78091] = 1, -- Paladin Divine Storm
[78092] = 1, -- Paladin Divine Storm
[78093] = 1, -- Paladin Divine Storm
[78114] = 1, -- Hunter Kill Command Part 1
[78121] = 1, -- Hunter Kill Command Part 2
[78124] = 1, -- Mage Icy Veins
[78127] = 1, -- Mage Icy Veins
[78132] = 1, -- Warrior Raging Blows Part 1
[78133] = 1, -- Warrior Raging Blows Part 1
[78134] = 1, -- Warrior Raging Blows Part 1
[78142] = 1, -- Mage Icy Veins
[78143] = 1, -- Mage Icy Veins
[78144] = 1, -- Warrior Raging Blows Part 2
[78145] = 1, -- Mage Icy Veins
[78146] = 1, -- Mage Icy Veins
[78147] = 1, -- Mage Icy Veins
[78148] = 1, -- Mage Icy Veins
[78149] = 1, -- Mage Icy Veins
[78150] = 1, -- Mage Icy Veins
[78229] = 1, -- Druid Wild Growth
[78261] = 1, -- Rogue Deadly Brew Part 1
[78265] = 1, -- Grizzby prequest for multiple runes
[78266] = 1, -- Grizzby prequest for multiple runes
[78267] = 1, -- Grizzby prequest for multiple runes
[78270] = 1, -- Rogue Deadly Brew Part 3
[78277] = 1, -- Mage Horde Living Bomb
[78287] = 1, -- Let Me Make You An Offer Alliance
[78288] = 1, -- Let Me Make You An Offer Horde
[78297] = 1, -- You've Got Yourself A Deal Alliance
[78304] = 1, -- You've Got Yourself A Deal Horde
[78307] = 1, -- Rogue Deadly Brew Part 3
[78506] = 1, -- Shaman Earth Shield Part 1
[78537] = 1, -- Shaman Earth Shield Part 2
[78561] = 1, -- Shaman Earth Shield Part 3
[78575] = 1, -- Shaman Earth Shield Part 4
[78676] = 2, -- Rogue Shadowstep Part 1
[78680] = 1, -- Warlock Metamorphosis Part 2
[78681] = 1, -- Warlock Metamorphosis Part 3
[78684] = 1, -- Warlock Metamorphosis Part 4
[78699] = 2, -- Rogue Shadowstep Part 2
[78702] = 1, -- Warlock Metamorphosis Part 5
[78823] = 2, -- Hunter Exposed Weakness Part 1
[78830] = 2, -- Hunter Exposed Weakness Part 2
[78914] = 2, -- Warlock Grimoire of Synergy Part 2
[78994] = 2, -- Warlock Grimoire of Synergy Part 1
[79091] = 1, -- Mage Icy Veins
[79092] = 1, -- Mage Icy Veins
[79093] = 1, -- Mage Icy Veins
[79094] = 1, -- Mage Icy Veins
[79095] = 1, -- Mage Icy Veins
[79096] = 1, -- Mage Icy Veins
[79097] = 1, -- Mage Icy Veins
[79298] = 2, -- Warlock Grimoire of Synergy Part 3
[79348] = 2, -- Druid Nourish (The Lost Ancient)
[79377] = 2, -- Druid Nourish (The Lost Saplings)
[79229] = 2, -- Highway Robbery
[79235] = 2, -- On the Lam
[79236] = 2, -- Cherry for Your Thoughts?
[79242] = 2, -- No Honor Among Thieves
[79358] = 2, -- Shaman MailStrom Weapon (Tattered Note)
[79360] = 2, -- Shaman MailStrom Weapon (Elemental Aid)
[79361] = 2, -- Shaman MailStrom Weapon (Power of da Wind)
[79362] = 2, -- Shaman MailStrom Weapon (Power of da Earth)
[79363] = 2, -- Shaman MailStrom Weapon (Power of da Water)
[79364] = 2, -- Shaman MailStrom Weapon (A Simple Container)
[79365] = 2, -- Shaman MailStrom Weapon (With Wind Beneath Your Wings)
[79366] = 2, -- Shaman MailStrom Weapon (Calm Before the Storm)
[79442] = 2, -- Shaman MailStrom Weapon (Catching Up)
[79535] = 2, -- Mage Icy Veins/Spell Power
[79536] = 2, -- Mage Icy Veins/Spell Power
[79624] = 2, -- Anyone Can Cook
[79677] = 2, -- A Quick Grocery Run
[79678] = 2, -- Taste Testing
[79731] = 2, -- Priest Dispersion
[79939] = 2, -- Paladin Sheath of Light Part 1
[79940] = 2, -- Paladin Sheath of Light Part 2
[79945] = 2, -- Paladin Sheath of Light Part 3
[79946] = 2, -- Paladin Sheath of Light Part 4
[79947] = 2, -- Mage Icy Veins/Spell Power
[79948] = 2, -- Mage Icy Veins/Spell Power
[79949] = 2, -- Mage Icy Veins/Spell Power
[79950] = 2, -- Mage Icy Veins/Spell Power
[79951] = 2, -- Mage Icy Veins/Spell Power
[79952] = 2, -- Mage Icy Veins/Spell Power
[79953] = 2, -- Mage Icy Veins/Spell Power
[79963] = 2, -- Paladin Sheath of Light 5
[79970] = 2, -- Paladin Sheath of Light 6
[80098] = 2, -- Curious Dalaran Relic
[80120] = 2, -- A Service to Dalaran
[80147] = 2, -- Curious Dalaran Relic
[80148] = 2, -- Curious Dalaran Relic
[80149] = 2, -- Curious Dalaran Relic
[80150] = 2, -- Curious Dalaran Relic
[80151] = 2, -- Curious Dalaran Relic
[80152] = 2, -- Curious Dalaran Relic
-- fake IDs
--- Mage runes
[90000] = 1, -- Mage Arcane Blast
[90001] = 1, -- Mage Alliance Burnout
[90002] = 1, -- Mage Alliance Burnout
[90003] = 1, -- Mage Burnout
[90004] = 1, -- Mage Alliance Fingers of Frost
[90005] = 1, -- Mage Horde Fingers of Frost
[90006] = 1, -- Mage Alliance Regeneration
[90007] = 1, -- Mage Horde Regeneration
[90008] = 1, -- Mage Alliance Regeneration
[90009] = 1, -- Mage Horde Regeneration
[90010] = 1, -- Mage Alliance Enlightenment
[90011] = 1, -- Mage Horde Enlightenment
[90012] = 1, -- Mage Alliance Arcane Surge
[90013] = 1, -- Mage Horde Arcane Surge
[90014] = 1, -- Mage Mass Regeneration
[90015] = 1, -- Mage Alliance Living Flame
[90016] = 1, -- Mage Alliance Living Flame
[90017] = 1, -- Mage Horde Living Flame
[90018] = 1, -- Mage Horde Living Flame
[90019] = 1, -- Mage Rewind Time
[90020] = 1, -- Mage Alliance Living Bomb
[90021] = 1, -- Mage Horde Living Bomb
--- Mage runes end
[90022] = 1, -- Paladin Divine Storm
[90023] = 1, -- Druid Wild Strikes
[90024] = 1, -- Druid Survival of the Fittest
[90025] = 1, -- Priest Serendipity
[90026] = 1, -- Paladin Divine Sacrifice
[90027] = 1, -- Hunter Lone Wolf
[90028] = 1, -- Warrior Warbringer
[90029] = 1, -- Warlock Demonic Pact
[90030] = 1, -- Rogue Main Gauche
[90031] = 1, -- Shaman Dual Wield Specialization
[90032] = 1, -- Warlock Lake of Fire Start
[90033] = 1, -- Warlock Lake of Fire End
[90034] = 1, -- Warlock Master Channeler Alliance
[90035] = 1, -- Warlock Master Channeler Alliance
[90036] = 1, -- Warlock Master Channeler Westfall
[90037] = 1, -- Warlock Master Channeler Horde
[90038] = 1, -- Warlock Master Channeler Horde
[90039] = 1, -- Warlock Chaos Bolt Dun Morogh
[90040] = 1, -- Paladin Beacon of Light Alliance
[90041] = 1, -- Shaman Healing Rain Horde
[90042] = 1, -- Warlock Everlasting Affliction Alliance
[90043] = 1, -- Warlock Everlasting Affliction Horde
[90044] = 1, -- Hunter Serpent Spread Alliance
[90045] = 1, -- Hunter Serpent Spread Horde
[90046] = 1, -- Warrior Single-Minded Fury Alliance
[90047] = 1, -- Warrior Single-Minded Fury Horde
[90048] = 1, -- Druid Skull Bash Alliance
[90049] = 1, -- Druid Skull Bash Horde
[90050] = 1, -- Rogue Just a Flesh Wound Alliance
[90051] = 1, -- Rogue Just a Flesh Wound Horde
[90052] = 1, -- Priest Mind Sear Alliance
[90053] = 1, -- Priest Mind Sear Horde
[90054] = 1, -- Druid Living Seed Alliance
[90055] = 1, -- Druid Living Seed Horde
[90056] = 1, -- Druid Starsurge
[90057] = 1, -- Druid Sunfire Alliance
[90058] = 1, -- Druid Lifebloom
[90059] = 1, -- Priest Prayer of Mending
[90060] = 1, -- Shaman Ancestral Guidance
[90061] = 1, -- Warlock Chaos Bolt Elwynn Forest
[90062] = 1, -- Warlock Chaos Bolt The Barrens
[90063] = 1, -- Warlock Chaos Bolt Tirisfal Glades
[90064] = 1, -- Warlock Shadow Bolt Volley Loch Modan
[90065] = 1, -- Warlock Shadow Bolt Volley Westfall start
[90066] = 1, -- Warlock Shadow Bolt Volley Westfall end
[90067] = 1, -- Warlock Shadow Bolt Volley The Barrens start
[90068] = 1, -- Warlock Shadow Bolt Volley The Barrens end
[90069] = 1, -- Warlock Shadow Bolt Volley Silverpine Forest
[90070] = 1, -- Warlock Incinerate
[90071] = 1, -- Warlock Demonic Tactics Alliance
[90072] = 1, -- Warlock Demonic Tactics Horde
[90073] = 1, -- Warlock Soul Siphon Dun Morogh
[90074] = 1, -- Warlock Soul Siphon Elwynn Forest
[90075] = 1, -- Warlock Soul Siphon Durotar
[90076] = 1, -- Warlock Soul Siphon Tirisfal Galdes
[90077] = 1, -- Warlock Demonic Grace Dun Morogh
[90078] = 1, -- Warlock Demonic Grace Elwynn Forest
[90079] = 1, -- Warlock Demonic Grace Durotar
[90080] = 1, -- Warlock Demonic Grace Tirisfal Galdes
[90081] = 1, -- Hunter Heart of the Lion
[90082] = 1, -- Hunter Master Marksman
[90083] = 1, -- Hunter Cobra Strikes
[90084] = 1, -- Rogue Blade Dance Darkshore
[90085] = 1, -- Rogue Blade Dance Loch Modan
[90086] = 1, -- Rogue Blade Dance Westfall
[90087] = 1, -- Rogue Blade Dance The Barrens
[90088] = 1, -- Druid Wild Growth Ashenvale
[90089] = 1, -- Druid Wild Growth Duskwood
[90090] = 1, -- Druid Wild Growth Hillsbrad Foothills
[90091] = 1, -- Warrior Flagellation
[90092] = 1, -- Warrior Blood Frenzy
[90093] = 1, -- Warrior Furious Thunder
[90094] = 1, -- Warrior Consumed By Rage
[90095] = 1, -- Hunter Explosive Shot
[90096] = 1, -- Warrior Raging Blows
[90097] = 1, -- Warrior Raging Blows
[90098] = 1, -- Warrior Raging Blows
[90099] = 1, -- Warrior Raging Blows
[90100] = 1, -- Warrior Devastate
[90101] = 1, -- Warrior Devastate
[90102] = 1, -- Warrior Devastate
[90103] = 1, -- Warrior Devastate
[90104] = 1, -- Warrior Devastate
[90105] = 1, -- Warrior Devastate
[90106] = 1, -- Warrior Frenzied Assault
[90107] = 1, -- Warrior Frenzied Assault
[90108] = 1, -- Warrior Frenzied Assault
[90109] = 1, -- Warrior Frenzied Assault
[90110] = 1, -- Warrior Frenzied Assault
[90111] = 1, -- Warrior Frenzied Assault
[90112] = 1, -- Warrior Endless Rage Westfall
[90113] = 1, -- Warrior Endless Rage Darkshore
[90114] = 1, -- Warrior Endless Rage Loch Modan
[90115] = 1, -- Warrior Endless Rage The Barrens
[90116] = 1, -- Warrior Endless Rage Silverpine Forest
[90117] = 1, -- Paladin Seal of Martyrdom
[90118] = 1, -- Paladin Horn of Lordaeron
[90119] = 1, -- Paladin Horn of Lordaeron
[90120] = 1, -- Paladin Aegis
[90121] = 1, -- Paladin Inspiration Exemplar
[90122] = 1, -- Paladin Avenger's Shield
[90123] = 1, -- Paladin Rebuke
[90124] = 1, -- Paladin Rebuke
[90125] = 1, -- Paladin Rebuke
[90126] = 1, -- Paladin Hand of Reckoning
[90127] = 1, -- Druid Mangle Teldrassil
[90128] = 1, -- Druid Lacerate Loch Modan
[90129] = 1, -- Druid Lacerate The Barrens
[90130] = 1, -- Druid Savage Roar Darkshore
[90131] = 1, -- Druid Savage Roar The Barrens
[90132] = 1, -- Druid Savage Roar Loch Modan
[90133] = 1, -- Rogue Quick Draw Dun Morogh
[90134] = 1, -- Rogue Quick Draw Elwynn Forest
[90135] = 1, -- Rogue Quick Draw Teldrassil
[90136] = 1, -- Rogue Quick Draw Durotar
[90137] = 1, -- Rogue Quick Draw Tirisfal Glades
[90138] = 1, -- Rogue Slaughter from the Shadows Elwynn Forest, Dun Morogh, Durotar
[90139] = 1, -- Warrior Quick Strike Loch Modan
[90140] = 1, -- Warrior Quick Strike Westfall
[90141] = 1, -- Warrior Quick Strike Darkshore
[90142] = 1, -- Warrior Quick Strike The Barrens
[90143] = 1, -- Warrior Quick Strike Silverpine Forest
[90144] = 1, -- Druid Savage Roar Westfall
[90145] = 1, -- Druid Lacerate Darkshore
[90146] = 1, -- Druid Mangle Mulgore
[90147] = 1, -- Paladin Hand of Reckoning Westfall
[90148] = 1, -- Paladin Exorcist Duskwood
[90150] = 1, -- Hunter Sniper Training Darkshore
[90151] = 1, -- Hunter Sniper Training Westfall
[90152] = 1, -- Hunter Sniper Training Loch Modan
[90153] = 1, -- Hunter Sniper Training The Barrens
[90154] = 1, -- Druid Lacerate Westfall
[90155] = 1, -- Priest Void Plague Dun Morogh
[90156] = 1, -- Priest Void Plague Elwynn Forest
[90157] = 1, -- Priest Void Plague Teldrassil
[90158] = 1, -- Priest Void Plague Durotar
[90159] = 1, -- Priest Void Plague Tirisfal Glades
[90161] = 1, -- Priest Strength of Soul
[90162] = 1, -- Priest Twisted Faith Loch Modan
[90163] = 1, -- Priest Twisted Faith Westfall
[90164] = 1, -- Priest Twisted Faith Darkshore
[90165] = 1, -- Priest Twisted Faith The Barrens
[90166] = 1, -- Priest Twisted Faith Silverpine Forest
[90167] = 1, -- Hunter Flanking Strike Dun Morogh
[90168] = 1, -- Hunter Flanking Strike Teldrassil
[90169] = 1, -- Priest Power Word: Barrier Redridge Mountains
[90170] = 1, -- Hunter Flanking Strike Durotar
[90171] = 1, -- Hunter Flanking Strike Mulgore
[90172] = 1, -- Hunter Beast Mastery Westfall
[90173] = 1, -- Hunter Beast Mastery Darkshore
[90174] = 1, -- Hunter Beast Mastery Loch Modan
[90175] = 1, -- Hunter Beast Mastery Silverpine Forest
[90176] = 1, -- Hunter Beast Mastery The Barrens
[90177] = 1, -- Priest Shared Pain Dun Morogh
[90178] = 1, -- Priest Shared Pain Elwynn Forest
[90179] = 1, -- Priest Shared Pain Teldrassil
[90180] = 1, -- Priest Shared Pain Durotar
[90181] = 1, -- Priest Shared Pain Tirisfal Glades
[90182] = 1, -- Priest Homunculi Dun Morogh
[90183] = 1, -- Priest Homunculi Elwynn Forest
[90184] = 1, -- Priest Homunculi Teldrassil
[90185] = 1, -- Priest Homunculi Durotar
[90186] = 1, -- Priest Homunculi Tirisfal Glades
[90187] = 1, -- Priest Shadow Word: Death Westfall
[90188] = 1, -- Priest Shadow Word: Death The Barrens
[90189] = 1, -- Priest Shadow Word: Death Loch Modan
[90190] = 1, -- Priest Shadow Word: Death Silverpine Forest
[90191] = 1, -- Priest Shadow Word: Death Darkshore
[90192] = 1, -- Priest Circle of Healing Duskwood
[90193] = 1, -- Rogue Between the Eyes Ironforge
[90194] = 1, -- Rogue Between the Eyes Stormwind
[90195] = 1, -- Rogue Between the Eyes Orgrimmar
[90196] = 1, -- Rogue Between the Eyes Tirisfal Glades
[90197] = 1, -- Rogue Between the Eyes Teldrassil
[90198] = 1, -- Rogue Envenom Hillsbrad Foothills
[90199] = 1, -- Rogue Mutilate Teldrassil
[90200] = 1, -- Rogue Mutilate Dun Morogh
[90201] = 1, -- Rogue Shiv Duskwood
[90202] = 1, -- Shaman Shamanistic Rage Stonetalon Mountains
[90203] = 1, -- Shaman Way of Earth The Barrens
[90204] = 1, -- Shaman Way of Earth Silverpine Forest
[90205] = 1, -- Shaman Lava Burst Hillsbrad Foothills
[90206] = 1, -- Hunter Carve Dun Morogh
[90207] = 1, -- Hunter Carve Teldrassil
[90208] = 1, -- Hunter Carve Durotar
[90209] = 1, -- Hunter Carve Mulgore
[90210] = 1, -- Rogue Saber Slash Loch Modan
[90211] = 1, -- Rogue Saber Slash Westfall
[90212] = 1, -- Rogue Saber Slash The Barrens
[90213] = 1, -- Rogue Saber Slash Silverpine Forest
[90214] = 1, -- Rogue Saber Slash Darkshore
[90215] = 1, -- Shaman Water Shield Silverpine Forest
[90216] = 1, -- Shaman Water Shield The Barrens
[90217] = 1, -- Shaman Shield Mastery Durotar Orc & Troll
[90218] = 1, -- Shaman Shield Mastery Mulgore Tauren
[90219] = 1, -- Shaman Molten Blast Durotar
[90220] = 1, -- Shaman Molten Blast Mulgore
-- P2 SoD Runes
[90221] = 2, -- Druid Berserk Thousand Needles
[90222] = 2, -- Druid Dreamstate Desolace
[90223] = 2, -- Hunter Dual Wield Specialization Stranglethorn Vale
[90224] = 2, -- Warrior Intervene Thousand Needles
[90225] = 2, -- Warrior Rallying Cry Badlands
[90226] = 2, -- Mage Spellfrost Bolt Stranglethorn Vale
[90227] = 2, -- Mage Frostfire Bolt Stranglethorn Vale
[90228] = 2, -- Rogue Rolling with the Punches Thousand Needles
[90229] = 2, -- Paladin Sacred Shield Desolace
[90230] = 2, -- Warrior Focused Rage Arathi Highlands
[90231] = 2, -- Shaman Spirit of the Alpha
[90232] = 2, -- Priest Empowered Renew
[90233] = 2, -- Hunter Steady Shot Arathi Highlands
[90234] = 2, -- Mage Hot Streak Alterac Mountains
[90235] = 2, -- Priest Renewed Hope Desolace
[90236] = 2, -- Mage Chronostatic Preservation
[90237] = 2, -- Mage Chronostatic Preservation
[90238] = 2, -- Mage Chronostatic Preservation
[90239] = 2, -- Shaman Fire Nova Step 1
[90240] = 2, -- Shaman Fire Nova Step 2
[90241] = 2, -- Shaman Fire Nova Step 3
[90242] = 2, -- Shaman Fire Nova Step 4
[90243] = 2, -- Shaman Fire Nova Step 5
[90244] = 2, -- Shaman Fire Nova Step 6
[90245] = 2, -- Shaman Fire Nova Final Step
[90246] = 2, -- Shaman Power Surge
[90247] = 2, -- Shaman Decoy Totem
[90248] = 2, -- Paladin Enlightened Judgements
[90249] = 2, -- Paladin Guarded by the Light
[90250] = 2, -- Paladin Sheath of Light Part 2.5
[90251] = 2, -- Hunter Invigoration
[90252] = 2, -- Hunter Invigoration
[90253] = 2, -- Hunter Invigoration
[90254] = 2, -- Hunter Invigoration
[90255] = 2, -- Warlock Invocation
[90256] = 2, -- Warlock Shadowflame
[90257] = 2, -- Warlock Dance of the Wicked
[90258] = 2, -- Priest Pain Suppression
[90259] = 2, -- Priest Pain Suppression
[90260] = 2, -- Priest Pain Suppression
[90261] = 2, -- Priest Pain Suppression
[90262] = 2, -- Priest Pain Suppression
[90263] = 2, -- Rogue Shuriken Toss
[90264] = 2, -- Rogue Master of Subtlety
[90265] = 2, -- Druid Survival Instincts
[90266] = 2, -- Druid Survival Instincts
[90267] = 2, -- Druid Survival Instincts
[90268] = 2, -- Druid Survival Instincts
-- P3 SoD Runes
[80411] = 3, -- Rogue Honor Among Thieves
[80453] = 3, -- Rogue Honor Among Thieves
[80454] = 3, -- Rogue Honor Among Thieves
[80455] = 3, -- Rogue Honor Among Thieves
[80526] = 3, -- Rogue Honor Among Thieves
[82084] = 3, -- Mage Temporal Anomaly
[82316] = 3, -- Priest Eye of the Void
[90269] = 3, -- Druid Gale Winds
[90271] = 3, -- Hunter Raptor Fury
[90272] = 3, -- Hunter T.N.T
[90273] = 3, -- Mage Molten Armor
[90274] = 3, -- Paladin Improved Hammer of Wrath
[90275] = 3, -- Paladin Wrath
[90276] = 3, -- Priest Void Zone
[90277] = 3, -- Rogue Cut to the Chase
}
--- "automatic" phase detection for the first few phases;
--- gets called slightly later into init because if GetMaxPlayerLevel() is called too
--- early after initial login (not reloads), the game returns 60 even in early phases
function SeasonOfDiscovery.Initialize()
local maxLevel = GetMaxPlayerLevel()
local phaseDetected = true
if maxLevel == 25 then
SeasonOfDiscovery.currentPhase = 1
elseif maxLevel == 40 then
SeasonOfDiscovery.currentPhase = 2
elseif maxLevel == 50 then
SeasonOfDiscovery.currentPhase = 3
elseif maxLevel == 60 and SeasonOfDiscovery.currentPhase < 4 then
SeasonOfDiscovery.currentPhase = 4
else
phaseDetected = false
Questie:Debug(Questie.DEBUG_CRITICAL, "[SeasonOfDiscovery] Automatic phase detection failed, phase remains as " .. tostring(SeasonOfDiscovery.currentPhase))
end
if phaseDetected then
Questie:Debug(Questie.DEBUG_INFO, "[SeasonOfDiscovery] Phase automatically detected as " .. tostring(SeasonOfDiscovery.currentPhase))
end
end
---@param questId number
---@return boolean
function QuestieDB.IsSoDRuneQuest(questId)
return runeQuestsInSoD[questId] ~= nil
end
---@param questId number
---@return boolean Returns true if the quest should be hidden, false otherwise
function QuestieDB.IsRuneAndShouldBeHidden(questId)
if (not QuestieDB.IsSoDRuneQuest(questId)) then
return false
end
if (not Questie.db.profile.showSoDRunes) then
return true
end
local showPhase1Runes = Questie.db.profile.showRunesOfPhase["phase1"]
local showPhase2Runes = Questie.db.profile.showRunesOfPhase["phase2"]
local phaseOfRuneQuest = runeQuestsInSoD[questId]
if (phaseOfRuneQuest == 1) then
return (not showPhase1Runes)
elseif (phaseOfRuneQuest == 2) then
return (not showPhase2Runes)
end
return false
end
-- This function blacklists any quests in phases LATER than the currentPhase value
-- so in Phase 1, quests in phases 2+ are blacklisted, in phase 2, phases 3+ are blacklisted, etc
-- Phase 1 is omitted, because everything not in this list is supposed to be available in Phase 1
local questsToBlacklistBySoDPhase = {
[1] = { -- SoD Phase 1 - level cap 25 (this is required for counting, but should stay empty)
},
[2] = { -- SoD Phase 2 - level cap 40
[1152] = true, -- Test of Lore; minLevel raised to 26 in P1 for some reason, might be retooled as part of P2?
[1488] = true, -- The Corruptor; minLevel raised to 26 in P1
[8370] = true, -- Conquering Arathi Basin
[8374] = true, -- Conquering Arathi Basin
[8171] = true, -- The Battle for Arathi Basin!
[8168] = true, -- The Battle for Arathi Basin!
},
[3] = { -- SoD Phase 3 - level cap 50
[2847] = true, -- Wild Leather Armor
[2854] = true, -- Wild Leather Armor
[3526] = true, -- Goblin Engineering
[3629] = true, -- Goblin Engineering
[3630] = true, -- Gnome Engineering
[3632] = true, -- Gnome Engineering
[3633] = true, -- Goblin Engineering
[3634] = true, -- Gnome Engineering
[3635] = true, -- Gnome Engineering
[3637] = true, -- Gnome Engineering
[4181] = true, -- Goblin Engineering
[5141] = true, -- Dragonscale Leatherworking
[5143] = true, -- Tribal Leatherworking
[5144] = true, -- Elemental Leatherworking
[5145] = true, -- Dragonscale Leatherworking
[5146] = true, -- Elemental Leatherworking
[5148] = true, -- Tribal Leatherworking
[6607] = true, -- Nat Pagle, Angler Extreme Fishing 225+ quest
[6608] = true, -- You Too Good. Fishing 225+ quest
[6609] = true, -- I Got Nothin' Left! Fishing 225+ pre quest
[6610] = true, -- Clamlette Surprise Cooking 225+ quest
[6611] = true, -- To Gadgetzan You Go! Cooking 225+ pre quest
[6612] = true, -- I Know A Guy... Cooking 225+ pre quest
[6622] = true, -- Horde Triage
[6623] = true, -- Horde Trauma
[6624] = true, -- Alliance Triage
[6625] = true, -- Alliance Trauma
},
[4] = { -- SoD Phase 4 - level cap 60
-- These might not be re-added at level 60
[6963] = true, -- Old "Stolen Winter Veil Treats" quest
[6983] = true, -- Old "You're a Mean One..." quest
[6984] = true, -- Old "A Smokywood Pastures Thank You!" quest
[7042] = true, -- Old "Stolen Winter Veil Treats" quest
[7043] = true, -- Old "You're a Mean One..." quest
[7045] = true, -- Old "A Smokywood Pastures Thank You!" quest
[7881] = true, -- Old "Carnival Boots"
[7882] = true, -- Old "Carnival Jerkins"
[7889] = true, -- Old "Coarse Weightstone"
[7890] = true, -- Old "Heavy Grinding Stone"
[7894] = true, -- Old "Copper Modulator"
[7895] = true, -- Old "Whirring Bronze Gizmo"
[7899] = true, -- Old "Small Furry Paws"
[7900] = true, -- Old "Torn Bear Pelts"
[8746] = true, -- Old "Metzen the Reindeer" quest
[8762] = true, -- Old "Metzen the Reindeer" quest
},
[5] = { -- SoD Phase 5
},
[6] = { -- SoD Phase 6
},
[7] = { -- SoD Phase 7
},
[8] = { -- SoD Phase 8
},
[9] = { -- SoD Phase 9
},
[10] = { -- SoD Phase 10
},
[11] = { -- Era Phase 1 - MC, Ony
},
[12] = { -- Era Phase 2 - World Bosses
},
[13] = { -- Era Phase 3 - BWL + Darkmoon Faire
[7761] = true, -- Blackhand's Command BWL pre quest
[7787] = true,
-- Darkmoon Faire quests
[7902] = true,
[7903] = true,
[8222] = true,
[7901] = true,
[7899] = true,
[7940] = true,
[7900] = true,
[7907] = true,
[7927] = true,
[7929] = true,
[7928] = true,
[7946] = true,
[8223] = true,
[7934] = true,
[7981] = true,
[7943] = true,
[7894] = true,
[7933] = true,
[7898] = true,
[7885] = true,
[7942] = true,
[7883] = true,
[7892] = true,
[7937] = true,
[7939] = true,
[7893] = true,
[7891] = true,
[7896] = true,
[7884] = true,
[7882] = true,
[7897] = true,
[7895] = true,
[7941] = true,
[7881] = true,
[7890] = true,
[7889] = true,
[7945] = true,
[7935] = true,
[7938] = true,
[7944] = true,
[7932] = true,
[7930] = true,
[7931] = true,
[7936] = true,
[9249] = true,
[10939] = true,
[10940] = true,
[10941] = true,
-----------------
},
[14] = { -- Era Phase 4 - Zul'Gurub
[8411] = true,
[8056] = true,
[8057] = true,
[8064] = true,
[8065] = true,
[8074] = true,
[8075] = true,
[8110] = true,
[8111] = true,
[8112] = true,
[8113] = true,
[8116] = true,
[8117] = true,
[8118] = true,
[8119] = true,
[8041] = true,
[8042] = true,
[8043] = true,
[8044] = true,
[8045] = true,
[8046] = true,
[8047] = true,
[8048] = true,
[8049] = true,
[8050] = true,
[8051] = true,
[8052] = true,
[8053] = true,
[8054] = true,
[8055] = true,
[8058] = true,
[8059] = true,
[8060] = true,
[8061] = true,
[8062] = true,
[8063] = true,
[8066] = true,
[8067] = true,
[8068] = true,
[8069] = true,
[8070] = true,
[8071] = true,
[8072] = true,
[8073] = true,
[8076] = true,
[8077] = true,
[8078] = true,
[8079] = true,
[8101] = true,
[8102] = true,
[8103] = true,
[8104] = true,
[8106] = true,
[8107] = true,
[8108] = true,
[8109] = true,
[8141] = true,
[8142] = true,
[8143] = true,
[8144] = true,
[8145] = true,
[8146] = true,
[8147] = true,
[8148] = true,
[8184] = true,
[8185] = true,
[8186] = true,
[8187] = true,
[8188] = true,
[8189] = true,
[8190] = true,
[8191] = true,
[8192] = true,
[8195] = true,
[8196] = true,
[8201] = true,
[8227] = true,
[8238] = true,
[8239] = true,
[8240] = true,
[8243] = true,
[8246] = true,
[8446] = true,
[8447] = true,
[9208] = true,
[9209] = true,
[9210] = true,
[8307] = true,
[8313] = true,
[8317] = true,
[8282] = true,
[8278] = true,
[8323] = true,
[8324] = true,
[8275] = true,
[8309] = true,
[8310] = true,
[8315] = true,
[8319] = true,
[8341] = true,
[8342] = true,
[8343] = true,
[8331] = true,
[8332] = true,
[8333] = true,
[8306] = true,
[8321] = true,
[8362] = true,
[8364] = true,
[9248] = true,
[8281] = true,
[8285] = true,
[8279] = true,
[8287] = true,
[8314] = true,
},
[15] = { -- Era Phase 5 - AQ
[8277] = true,
[8280] = true,
[8283] = true,
[8284] = true,
[8304] = true,
[8318] = true,
[8320] = true,
[8361] = true,
[8276] = true,
[8747] = true,
[8748] = true,
[8749] = true,
[8750] = true,
[8752] = true,
[8753] = true,
[8754] = true,
[8755] = true,
[8757] = true,
[8758] = true,
[8759] = true,
[8760] = true,
[8800] = true,
[8751] = true,
[8756] = true,
[8761] = true,
[8801] = true,
[8802] = true,
[8764] = true,
[8765] = true,
[8766] = true,
[8620] = true,
[8621] = true,
[8622] = true,
[8623] = true,
[8624] = true,
[8625] = true,
[8626] = true,
[8627] = true,
[8628] = true,
[8629] = true,
[8630] = true,
[8631] = true,
[8632] = true,
[8633] = true,
[8634] = true,
[8637] = true,
[8638] = true,
[8639] = true,
[8640] = true,
[8641] = true,
[8655] = true,
[8656] = true,
[8657] = true,
[8658] = true,
[8659] = true,
[8660] = true,
[8661] = true,
[8662] = true,
[8663] = true,
[8664] = true,
[8665] = true,
[8666] = true,
[8667] = true,
[8668] = true,
[8669] = true,
[8689] = true,
[8690] = true,
[8691] = true,
[8692] = true,
[8693] = true,
[8694] = true,
[8695] = true,
[8696] = true,
[8697] = true,
[8698] = true,
[8699] = true,
[8700] = true,
[8701] = true,
[8702] = true,
[8703] = true,
[8704] = true,
[8705] = true,
[8706] = true,
[8707] = true,
[8708] = true,
[8709] = true,
[8710] = true,
[8711] = true,
[8712] = true,
[8728] = true,
[8729] = true,
[8730] = true,
[8733] = true,
[8734] = true,
[8735] = true,
[8736] = true,
[8741] = true,
[8742] = true,
[8743] = true,
[8745] = true,
[8783] = true,
[8784] = true,
[8789] = true,
[8790] = true,
[8791] = true,
[8602] = true,
[8603] = true,
[8606] = true,
[8592] = true,
[8593] = true,
[8594] = true,
[8595] = true,
[8596] = true,
[8597] = true,
[8598] = true,
[8599] = true,
[8584] = true,
[8585] = true,
[8586] = true,
[8587] = true,
[8555] = true,
[8556] = true,
[8557] = true,
[8558] = true,
[8559] = true,
[8560] = true,
[8561] = true,
[8562] = true,
[8572] = true,
[8573] = true,
[8574] = true,
[8575] = true,
[8576] = true,
[8577] = true,
[8578] = true,
[8496] = true,
[8579] = true,
[8544] = true,
[8519] = true,
[8856] = true,
[8829] = true,
[8497] = true,
[8804] = true,
[8805] = true,
[8536] = true,
[8857] = true,
[8498] = true,
[8806] = true,
[8308] = true,
[8858] = true,
[8859] = true,
[8807] = true,
[8771] = true,
[8773] = true,
[8775] = true,
[8777] = true,
[8809] = true,
[8787] = true,
[8785] = true,
[8538] = true,
[8534] = true,
[8738] = true,
[8502] = true,
[8537] = true,
[8539] = true,
[8786] = true,
[8737] = true,
[8687] = true,
[8739] = true,
[8501] = true,
[8535] = true,
[8808] = true,
[8810] = true,
[8740] = true,
[8381] = true,
[8779] = true,
[8540] = true,
[8541] = true,
[8778] = true,
[8780] = true,
[8781] = true,
[8782] = true,
[8770] = true,
[8772] = true,
[8774] = true,
[8776] = true,
[8316] = true,
[9023] = true,
[8382] = true,
[8286] = true,
[8288] = true,
[8301] = true,
[8302] = true,
[8303] = true,
[8305] = true,
[8548] = true,
[8818] = true,
[8817] = true,
[8816] = true,
[8815] = true,
[8814] = true,
[8820] = true,
[8826] = true,
[8825] = true,
[8824] = true,
[8823] = true,
[8822] = true,
[8821] = true,
[8819] = true,
},
[16] = { -- Era Phase 6 - Naxxramas
[9085] = true,
[9142] = true,
[9165] = true,
[9141] = true,
[9033] = true,
[9034] = true,
[9036] = true,
[9037] = true,
[9038] = true,
[9039] = true,
[9040] = true,
[9041] = true,
[9042] = true,
[9043] = true,
[9044] = true,
[9045] = true,
[9046] = true,
[9047] = true,
[9048] = true,
[9049] = true,
[9050] = true,
[9054] = true,
[9055] = true,
[9056] = true,
[9057] = true,
[9058] = true,
[9059] = true,
[9060] = true,
[9061] = true,
[9068] = true,
[9069] = true,
[9070] = true,
[9071] = true,
[9072] = true,
[9073] = true,
[9074] = true,
[9075] = true,
[9077] = true,
[9078] = true,
[9079] = true,
[9080] = true,
[9081] = true,
[9082] = true,
[9083] = true,
[9084] = true,
[9086] = true,
[9087] = true,
[9088] = true,
[9089] = true,
[9090] = true,
[9091] = true,
[9092] = true,
[9093] = true,
[9095] = true,
[9096] = true,
[9097] = true,
[9098] = true,
[9099] = true,
[9100] = true,
[9101] = true,
[9102] = true,
[9103] = true,
[9104] = true,
[9105] = true,
[9106] = true,
[9107] = true,
[9108] = true,
[9109] = true,
[9110] = true,
[9111] = true,
[9112] = true,
[9113] = true,
[9114] = true,
[9115] = true,
[9116] = true,
[9117] = true,
[9118] = true,
[9120] = true,
[9121] = true,
[9122] = true,
[9123] = true,
[9124] = true,
[9125] = true,
[9126] = true,
[9127] = true,
[9128] = true,
[9129] = true,
[9131] = true,
[9132] = true,
[9136] = true,
[9137] = true,
[9153] = true,
[9211] = true,
[9213] = true,
[9221] = true,
[9222] = true,
[9223] = true,
[9224] = true,
[9225] = true,
[9226] = true,
[9227] = true,
[9228] = true,
[9229] = true,
[9230] = true,
[9232] = true,
[9233] = true,
[9234] = true,
[9235] = true,
[9236] = true,
[9237] = true,
[9238] = true,
[9239] = true,
[9240] = true,
[9241] = true,
[9242] = true,
[9243] = true,
[9244] = true,
[9245] = true,
[9246] = true,
[9250] = true,
[9251] = true,
-- Silithus/EPL PvP
[9248] = true,
[9422] = true,
[9415] = true,
[9419] = true,
[9416] = true,
},
[17] = { -- Never appearing in Season of Discovery
[1203] = true, -- Jarl Needs a Blade - Replaced by 81570
[1878] = true, -- Water Pouch Bounty - Replaced by 82209
[2758] = true, -- The Origins of Smithing - Replaced by 80241
[2849] = true, -- Wild Leather Vest - Replaced by 82657
[2856] = true, -- Wild Leather Vest - Replaced by 82656
[5284] = true, -- The Way of the Weaponsmith - Replaced by 82662
[8302] = true, -- The Way of the Weaponsmith - Replaced by 82665
-- Original Blackfathom Deeps quests (instance reworked to raid, new quest IDs)
[909] = true,
[971] = true,
[1198] = true,
[1199] = true,
[1200] = true,
[1275] = true,
[6561] = true,
[6565] = true,
[6921] = true,
[6922] = true,
-- Original Gnomeregan quests (instance reworked to raid, new quest IDs)
[2841] = true,
[2842] = true,
[2843] = true,
[2904] = true,
[2922] = true,
[2923] = true,
[2924] = true,
[2925] = true,
[2926] = true,
[2927] = true,
[2928] = true,
[2929] = true,
[2930] = true,
[2931] = true,
[2945] = true,
[2947] = true,
[2949] = true,
[2951] = true,
[2952] = true,
[2953] = true,
[2962] = true,
[4601] = true,
[4602] = true,
[4603] = true,
[4604] = true,
[4605] = true,
[4606] = true,
-- Original Sunken Temple quests (instance reworked to raid, new quest IDs)
[1445] = true,
[1446] = true,
[1475] = true,
[3373] = true,
[3447] = true,
[3528] = true,
[4143] = true,
[8232] = true,
[8236] = true,
[8253] = true,
[8257] = true,
[8413] = true,
[8418] = true,
[8422] = true,
[8425] = true,
[9053] = true,
},
}
---@return table<number, table<number, boolean>> @All quests that should be blacklisted separated by phase
function QuestieQuestBlacklist:GetSoDQuestsToBlacklist()
-- Even if the first phase technically has no quests to blacklist, we use this be able to temporarily blacklist quests in P1
if SeasonOfDiscovery.currentPhase > 1 then
for phase = 1, SeasonOfDiscovery.currentPhase do
questsToBlacklistBySoDPhase[phase] = {} -- empty table instead of nil to keep table size
end
end
return questsToBlacklistBySoDPhase
end