diff --git a/assets/database/db.bin b/assets/database/db.bin index e63ed43b7e..6fa4579ae9 100644 Binary files a/assets/database/db.bin and b/assets/database/db.bin differ diff --git a/assets/database/db.json b/assets/database/db.json index 0b7c31d64b..d705fe8bbd 100644 --- a/assets/database/db.json +++ b/assets/database/db.json @@ -9763,24 +9763,43 @@ {"id":49634,"name":"Drums of the Wild","icon":"inv_misc_drum_07"} ], "spellIcons":[ +{"id":71,"name":"Defensive Stance","icon":"ability_warrior_defensivestance"}, +{"id":379,"name":"Earth Shield","icon":"spell_nature_skinofearth"}, +{"id":498,"name":"Divine Protection","icon":"spell_holy_restoration"}, {"id":724,"name":"Lightwell","icon":"spell_holy_summonlightwell"}, +{"id":768,"name":"Cat Form","icon":"ability_druid_catform"}, {"id":770,"name":"Faerie Fire","icon":"spell_nature_faeriefire"}, {"id":974,"name":"Earth Shield","icon":"spell_nature_skinofearth"}, +{"id":1122,"name":"Inferno","icon":"spell_shadow_summoninfernal"}, {"id":1329,"name":"Mutilate","icon":"ability_rogue_shadowstrikes"}, +{"id":1680,"name":"Whirlwind","icon":"ability_whirlwind"}, +{"id":2457,"name":"Battle Stance","icon":"ability_warrior_offensivestance"}, +{"id":2458,"name":"Berserker Stance","icon":"ability_racial_avatar"}, +{"id":2565,"name":"Shield Block","icon":"ability_defend"}, +{"id":2687,"name":"Bloodrage","icon":"ability_racial_bloodrage"}, {"id":2825,"name":"Bloodlust","icon":"spell_nature_bloodlust"}, {"id":3043,"name":"Scorpid Sting","icon":"ability_hunter_criticalshot"}, +{"id":3045,"name":"Rapid Fire","icon":"ability_hunter_runningshot"}, {"id":3674,"name":"Black Arrow","icon":"spell_shadow_painspike"}, {"id":3738,"name":"Wrath of Air Totem","icon":"spell_nature_slowingtotem"}, +{"id":5229,"name":"Enrage","icon":"ability_druid_enrage"}, {"id":5570,"name":"Insect Swarm","icon":"spell_nature_insectswarm"}, {"id":5923,"name":"Holy Power","icon":"spell_holy_power"}, {"id":5924,"name":"Holy Power","icon":"spell_holy_power"}, {"id":5925,"name":"Holy Power","icon":"spell_holy_power"}, {"id":5926,"name":"Holy Power","icon":"spell_holy_power"}, +{"id":5938,"name":"Shiv","icon":"inv_throwingknife_04"}, {"id":5952,"name":"Throwing Specialization","icon":"ability_rogue_throwingspecialization"}, {"id":6562,"name":"Heroic Presence","icon":"inv_helmet_21"}, +{"id":6774,"name":"Slice and Dice","icon":"ability_rogue_slicedice"}, +{"id":6788,"name":"Weakened Soul","icon":"spell_holy_ashestoashes"}, +{"id":7384,"name":"Overpower","icon":"ability_meleedamage"}, +{"id":8143,"name":"Tremor Totem","icon":"spell_nature_tremortotem"}, +{"id":8512,"name":"Windfury Totem","icon":"spell_nature_windfury"}, {"id":8647,"name":"Expose Armor","icon":"ability_warrior_riposte"}, {"id":9452,"name":"Vindication","icon":"spell_holy_vindication"}, {"id":9453,"name":"Unyielding Faith","icon":"spell_holy_unyieldingfaith"}, +{"id":9634,"name":"Dire Bear Form","icon":"ability_racial_bearform"}, {"id":9799,"name":"Eye for an Eye","icon":"spell_holy_eyeforaneye"}, {"id":10060,"name":"Power Infusion","icon":"spell_holy_powerinfusion"}, {"id":10621,"name":"Wolfshead Helm","icon":"inv_helmet_04"}, @@ -9824,9 +9843,11 @@ {"id":11368,"name":"Critical Mass","icon":"spell_nature_wispheal"}, {"id":11374,"name":"Gift of Arthas","icon":"spell_nature_nullifydisease"}, {"id":11426,"name":"Ice Barrier","icon":"spell_ice_lament"}, +{"id":11719,"name":"Curse of Tongues","icon":"spell_shadow_curseoftounges"}, {"id":11958,"name":"Cold Snap","icon":"spell_frost_wizardmark"}, {"id":12042,"name":"Arcane Power","icon":"spell_nature_lightning"}, {"id":12043,"name":"Presence of Mind","icon":"spell_nature_enchantarmor"}, +{"id":12051,"name":"Evocation","icon":"spell_nature_purge"}, {"id":12163,"name":"Two-Handed Weapon Specialization","icon":"inv_axe_09"}, {"id":12281,"name":"Sword Specialization","icon":"inv_sword_27"}, {"id":12282,"name":"Improved Heroic Strike","icon":"ability_rogue_ambush"}, @@ -9891,6 +9912,7 @@ {"id":12503,"name":"Arcane Mind","icon":"spell_shadow_charm"}, {"id":12518,"name":"Frost Channeling","icon":"spell_frost_stun"}, {"id":12519,"name":"Frost Channeling","icon":"spell_frost_stun"}, +{"id":12536,"name":"Clearcasting","icon":"spell_shadow_manaburn"}, {"id":12569,"name":"Permafrost","icon":"spell_frost_wisp"}, {"id":12571,"name":"Permafrost","icon":"spell_frost_wisp"}, {"id":12574,"name":"Arcane Concentration","icon":"spell_shadow_manaburn"}, @@ -10165,7 +10187,9 @@ {"id":15058,"name":"Arcane Instability","icon":"spell_shadow_teleport"}, {"id":15059,"name":"Arcane Instability","icon":"spell_shadow_teleport"}, {"id":15060,"name":"Arcane Instability","icon":"spell_shadow_teleport"}, +{"id":15235,"name":"Crystal Yield","icon":"inv_misc_gem_amethyst_01"}, {"id":15257,"name":"Shadow Weaving","icon":"spell_shadow_blackplague"}, +{"id":15258,"name":"Shadow Weaving","icon":"spell_shadow_blackplague"}, {"id":15259,"name":"Darkness","icon":"spell_shadow_twilight"}, {"id":15260,"name":"Shadow Focus","icon":"spell_shadow_burningspirit"}, {"id":15270,"name":"Spirit Tap","icon":"spell_shadow_requiem"}, @@ -10271,6 +10295,7 @@ {"id":16232,"name":"Healing Focus","icon":"spell_nature_healingwavelesser"}, {"id":16235,"name":"Ancestral Healing","icon":"spell_nature_undyingstrength"}, {"id":16236,"name":"Ancestral Fortitude","icon":"spell_nature_undyingstrength"}, +{"id":16246,"name":"Clearcasting","icon":"spell_shadow_manaburn"}, {"id":16252,"name":"Toughness","icon":"spell_holy_devotion"}, {"id":16254,"name":"Anticipation","icon":"spell_nature_mirrorimage"}, {"id":16255,"name":"Thundering Strikes","icon":"ability_thunderbolt"}, @@ -10283,6 +10308,7 @@ {"id":16268,"name":"Spirit Weapons","icon":"ability_parry"}, {"id":16271,"name":"Anticipation","icon":"spell_nature_mirrorimage"}, {"id":16272,"name":"Anticipation","icon":"spell_nature_mirrorimage"}, +{"id":16280,"name":"Flurry","icon":"ability_ghoulfrenzy"}, {"id":16281,"name":"Flurry","icon":"ability_ghoulfrenzy"}, {"id":16282,"name":"Flurry","icon":"ability_ghoulfrenzy"}, {"id":16283,"name":"Flurry","icon":"ability_ghoulfrenzy"}, @@ -10350,13 +10376,16 @@ {"id":16846,"name":"Moonglow","icon":"spell_nature_sentinal"}, {"id":16847,"name":"Moonglow","icon":"spell_nature_sentinal"}, {"id":16850,"name":"Celestial Focus","icon":"spell_arcane_starfire"}, +{"id":16857,"name":"Faerie Fire (Feral)","icon":"spell_nature_faeriefire"}, {"id":16858,"name":"Feral Aggression","icon":"classic_ability_druid_demoralizingroar"}, {"id":16859,"name":"Feral Aggression","icon":"classic_ability_druid_demoralizingroar"}, {"id":16860,"name":"Feral Aggression","icon":"classic_ability_druid_demoralizingroar"}, {"id":16861,"name":"Feral Aggression","icon":"classic_ability_druid_demoralizingroar"}, {"id":16862,"name":"Feral Aggression","icon":"classic_ability_druid_demoralizingroar"}, {"id":16864,"name":"Omen of Clarity","icon":"spell_nature_crystalball"}, +{"id":16870,"name":"Clearcasting","icon":"spell_shadow_manaburn"}, {"id":16880,"name":"Nature's Grace","icon":"spell_nature_naturesblessing"}, +{"id":16886,"name":"Nature's Grace","icon":"spell_nature_naturesblessing"}, {"id":16896,"name":"Moonfury","icon":"spell_nature_moonglow"}, {"id":16897,"name":"Moonfury","icon":"spell_nature_moonglow"}, {"id":16899,"name":"Moonfury","icon":"spell_nature_moonglow"}, @@ -10471,6 +10500,7 @@ {"id":17927,"name":"Improved Searing Pain","icon":"spell_fire_soulburn"}, {"id":17929,"name":"Improved Searing Pain","icon":"spell_fire_soulburn"}, {"id":17930,"name":"Improved Searing Pain","icon":"spell_fire_soulburn"}, +{"id":17941,"name":"Shadow Trance","icon":"spell_shadow_twilight"}, {"id":17954,"name":"Emberstorm","icon":"spell_fire_selfdestruct"}, {"id":17955,"name":"Emberstorm","icon":"spell_fire_selfdestruct"}, {"id":17956,"name":"Emberstorm","icon":"spell_fire_selfdestruct"}, @@ -10516,6 +10546,7 @@ {"id":18462,"name":"Arcane Meditation","icon":"spell_shadow_siphonmana"}, {"id":18463,"name":"Arcane Meditation","icon":"spell_shadow_siphonmana"}, {"id":18464,"name":"Arcane Meditation","icon":"spell_shadow_siphonmana"}, +{"id":18499,"name":"Berserker Rage","icon":"spell_nature_ancestralguardian"}, {"id":18530,"name":"Divine Fury","icon":"spell_holy_sealofwrath"}, {"id":18531,"name":"Divine Fury","icon":"spell_holy_sealofwrath"}, {"id":18533,"name":"Divine Fury","icon":"spell_holy_sealofwrath"}, @@ -10702,6 +10733,7 @@ {"id":20121,"name":"Conviction","icon":"spell_holy_retributionaura"}, {"id":20127,"name":"Redoubt","icon":"ability_defend"}, {"id":20130,"name":"Redoubt","icon":"ability_defend"}, +{"id":20132,"name":"Redoubt","icon":"ability_defend"}, {"id":20135,"name":"Redoubt","icon":"ability_defend"}, {"id":20138,"name":"Improved Devotion Aura","icon":"spell_holy_devotionaura"}, {"id":20139,"name":"Improved Devotion Aura","icon":"spell_holy_devotionaura"}, @@ -10711,6 +10743,7 @@ {"id":20145,"name":"Toughness","icon":"spell_holy_devotion"}, {"id":20146,"name":"Toughness","icon":"spell_holy_devotion"}, {"id":20147,"name":"Toughness","icon":"spell_holy_devotion"}, +{"id":20154,"name":"Seal of Righteousness","icon":"ability_thunderbolt"}, {"id":20174,"name":"Guardian's Favor","icon":"spell_holy_sealofprotection"}, {"id":20175,"name":"Guardian's Favor","icon":"spell_holy_sealofprotection"}, {"id":20177,"name":"Reckoning","icon":"spell_holy_blessingofstrength"}, @@ -10718,6 +10751,7 @@ {"id":20180,"name":"Reckoning","icon":"spell_holy_blessingofstrength"}, {"id":20181,"name":"Reckoning","icon":"spell_holy_blessingofstrength"}, {"id":20182,"name":"Reckoning","icon":"spell_holy_blessingofstrength"}, +{"id":20187,"name":"Judgement of Righteousness","icon":"ability_thunderbolt"}, {"id":20196,"name":"One-Handed Weapon Specialization","icon":"inv_sword_20"}, {"id":20197,"name":"One-Handed Weapon Specialization","icon":"inv_sword_20"}, {"id":20198,"name":"One-Handed Weapon Specialization","icon":"inv_sword_20"}, @@ -10766,6 +10800,8 @@ {"id":20360,"name":"Sanctified Light","icon":"spell_holy_healingaura"}, {"id":20361,"name":"Sanctified Light","icon":"spell_holy_healingaura"}, {"id":20375,"name":"Seal of Command","icon":"ability_warrior_innerrage"}, +{"id":20424,"name":"Seal of Command","icon":"ability_warrior_innerrage"}, +{"id":20467,"name":"Judgement of Command","icon":"ability_warrior_innerrage"}, {"id":20468,"name":"Improved Righteous Fury","icon":"spell_holy_sealoffury"}, {"id":20469,"name":"Improved Righteous Fury","icon":"spell_holy_sealoffury"}, {"id":20470,"name":"Improved Righteous Fury","icon":"spell_holy_sealoffury"}, @@ -10783,7 +10819,10 @@ {"id":20895,"name":"Spirit Bond","icon":"classic_ability_druid_demoralizingroar"}, {"id":20911,"name":"Blessing of Sanctuary","icon":"spell_nature_lightningshield"}, {"id":20925,"name":"Holy Shield","icon":"classic_spell_holy_blessingofprotection"}, +{"id":21084,"name":"Seal of Righteousness","icon":"ability_thunderbolt"}, {"id":22779,"name":"Biznicks 247x128 Accurascope","icon":"trade_engineering"}, +{"id":22812,"name":"Barkskin","icon":"spell_nature_stoneclawtotem"}, +{"id":22842,"name":"Frenzied Regeneration","icon":"ability_bullrush"}, {"id":23145,"name":"Dive","icon":"spell_shadow_burningspirit"}, {"id":23584,"name":"Dual Wield Specialization","icon":"ability_dualwield"}, {"id":23585,"name":"Dual Wield Specialization","icon":"ability_dualwield"}, @@ -10823,7 +10862,10 @@ {"id":25080,"name":"Enchant Gloves - Superior Agility","icon":"inv_enchant_formulasuperior_01"}, {"id":25084,"name":"Enchant Cloak - Subtlety","icon":"inv_enchant_formulasuperior_01"}, {"id":25086,"name":"Enchant Cloak - Dodge","icon":"inv_enchant_formulasuperior_01"}, +{"id":25203,"name":"Demoralizing Shout","icon":"ability_warrior_warcry"}, {"id":25618,"name":"Jade Pendant of Blasting","icon":"inv_jewelry_necklace_01"}, +{"id":25771,"name":"Forbearance","icon":"spell_holy_removecurse"}, +{"id":25780,"name":"Righteous Fury","icon":"spell_holy_sealoffury"}, {"id":25829,"name":"Holy Power","icon":"spell_holy_power"}, {"id":25836,"name":"Unyielding Faith","icon":"spell_holy_unyieldingfaith"}, {"id":25898,"name":"Greater Blessing of Kings","icon":"spell_magic_greaterblessingofkings"}, @@ -10836,6 +10878,7 @@ {"id":26023,"name":"Pursuit of Justice","icon":"spell_holy_persuitofjustice"}, {"id":26279,"name":"Stormshroud Gloves","icon":"inv_gauntlets_05"}, {"id":26982,"name":"Rejuvenation","icon":"spell_nature_rejuvenation"}, +{"id":27013,"name":"Insect Swarm","icon":"spell_nature_insectswarm"}, {"id":27789,"name":"Holy Reach","icon":"spell_holy_purify"}, {"id":27790,"name":"Holy Reach","icon":"spell_holy_purify"}, {"id":27811,"name":"Blessed Recovery","icon":"spell_holy_blessedrecovery"}, @@ -10988,6 +11031,7 @@ {"id":30678,"name":"Lightning Overload","icon":"spell_nature_lightningoverload"}, {"id":30679,"name":"Lightning Overload","icon":"spell_nature_lightningoverload"}, {"id":30706,"name":"Totem of Wrath","icon":"spell_fire_totemofwrath"}, +{"id":30708,"name":"Totem of Wrath","icon":"spell_fire_totemofwrath"}, {"id":30798,"name":"Dual Wield","icon":"ability_dualwield"}, {"id":30802,"name":"Unleashed Rage","icon":"spell_nature_unleashedrage"}, {"id":30808,"name":"Unleashed Rage","icon":"spell_nature_unleashedrage"}, @@ -11101,6 +11145,9 @@ {"id":31683,"name":"Empowered Frostbolt","icon":"spell_frost_frostbolt02"}, {"id":31687,"name":"Summon Water Elemental","icon":"spell_frost_summonwaterelemental_2"}, {"id":31785,"name":"Spiritual Attunement","icon":"spell_holy_revivechampion"}, +{"id":31801,"name":"Seal of Vengeance","icon":"spell_holy_sealofvengeance"}, +{"id":31803,"name":"Holy Vengeance","icon":"spell_holy_sealofvengeance"}, +{"id":31804,"name":"Judgement of Vengeance","icon":"spell_holy_sealofvengeance"}, {"id":31821,"name":"Aura Mastery","icon":"spell_holy_auramastery"}, {"id":31822,"name":"Pure of Heart","icon":"spell_holy_pureofheart"}, {"id":31823,"name":"Pure of Heart","icon":"spell_holy_pureofheart"}, @@ -11140,6 +11187,7 @@ {"id":31879,"name":"Fanaticism","icon":"spell_holy_fanaticism"}, {"id":31880,"name":"Fanaticism","icon":"spell_holy_fanaticism"}, {"id":31881,"name":"Fanaticism","icon":"spell_holy_fanaticism"}, +{"id":31884,"name":"Avenging Wrath","icon":"spell_holy_avenginewrath"}, {"id":31935,"name":"Avenger's Shield","icon":"spell_holy_avengersshield"}, {"id":32043,"name":"Sanctity of Battle","icon":"spell_holy_holysmite"}, {"id":32381,"name":"Empowered Corruption","icon":"spell_shadow_abominationexplosion"}, @@ -11212,7 +11260,6 @@ {"id":33867,"name":"Predatory Instincts","icon":"ability_druid_predatoryinstincts"}, {"id":33872,"name":"Nurturing Instinct","icon":"ability_druid_healinginstincts"}, {"id":33873,"name":"Nurturing Instinct","icon":"ability_druid_healinginstincts"}, -{"id":33876,"name":"Mangle (Cat)","icon":"ability_druid_mangle2"}, {"id":33879,"name":"Empowered Touch","icon":"ability_druid_empoweredtouch"}, {"id":33880,"name":"Empowered Touch","icon":"ability_druid_empoweredtouch"}, {"id":33881,"name":"Natural Perfection","icon":"ability_druid_naturalperfection"}, @@ -11240,6 +11287,7 @@ {"id":34007,"name":"Enchant Boots - Cat's Swiftness","icon":"inv_enchant_formulasuperior_01"}, {"id":34008,"name":"Enchant Boots - Boar's Speed","icon":"inv_enchant_formulasuperior_01"}, {"id":34009,"name":"Enchant Shield - Major Stamina","icon":"inv_misc_note_01"}, +{"id":34074,"name":"Aspect of the Viper","icon":"ability_hunter_aspectoftheviper"}, {"id":34151,"name":"Living Spirit","icon":"spell_nature_giftofthewaterspirit"}, {"id":34152,"name":"Living Spirit","icon":"spell_nature_giftofthewaterspirit"}, {"id":34153,"name":"Living Spirit","icon":"spell_nature_giftofthewaterspirit"}, @@ -11343,6 +11391,7 @@ {"id":35691,"name":"Demonic Knowledge","icon":"spell_shadow_improvedvampiricembrace"}, {"id":35692,"name":"Demonic Knowledge","icon":"spell_shadow_improvedvampiricembrace"}, {"id":35693,"name":"Demonic Knowledge","icon":"spell_shadow_improvedvampiricembrace"}, +{"id":36032,"name":"Arcane Blast","icon":"spell_arcane_blast"}, {"id":36256,"name":"Embrace of the Twisting Nether","icon":"inv_chest_chain_17"}, {"id":36257,"name":"Bulwark of the Ancient Kings","icon":"inv_chest_plate16"}, {"id":36390,"name":"Red Belt of Battle","icon":"inv_belt_13"}, @@ -11366,7 +11415,19 @@ {"id":41206,"name":"Mantle of Nimble Thought","icon":"inv_shoulder_02"}, {"id":41207,"name":"Swiftheal Wraps","icon":"inv_bracer_13"}, {"id":41208,"name":"Swiftheal Mantle","icon":"inv_shoulder_25"}, +{"id":42463,"name":"Seal of Vengeance","icon":"spell_holy_sealofvengeance"}, {"id":42620,"name":"Enchant Weapon - Greater Agility","icon":"inv_misc_note_01"}, +{"id":42650,"name":"Army of the Dead","icon":"spell_deathknight_armyofthedead"}, +{"id":42833,"name":"Fireball","icon":"spell_fire_flamebolt"}, +{"id":42842,"name":"Frostbolt","icon":"spell_frost_frostbolt02"}, +{"id":42846,"name":"Arcane Missiles","icon":"spell_nature_starfall"}, +{"id":42859,"name":"Scorch","icon":"spell_fire_soulburn"}, +{"id":42873,"name":"Fire Blast","icon":"spell_fire_fireball"}, +{"id":42897,"name":"Arcane Blast","icon":"spell_arcane_blast"}, +{"id":42914,"name":"Ice Lance","icon":"spell_frost_frostblast"}, +{"id":42921,"name":"Arcane Explosion","icon":"spell_nature_wispsplode"}, +{"id":42926,"name":"Flamestrike","icon":"spell_fire_selfdestruct"}, +{"id":42939,"name":"Blizzard","icon":"spell_frost_icestorm"}, {"id":42974,"name":"Enchant Weapon - Executioner","icon":"inv_enchant_formulasuperior_01"}, {"id":43002,"name":"Arcane Brilliance","icon":"spell_holy_arcaneintellect"}, {"id":43338,"name":"Shamanistic Focus","icon":"spell_nature_elementalabsorption"}, @@ -11380,6 +11441,7 @@ {"id":44398,"name":"Student of the Mind","icon":"ability_mage_studentofthemind"}, {"id":44399,"name":"Student of the Mind","icon":"ability_mage_studentofthemind"}, {"id":44400,"name":"Netherwind Presence","icon":"ability_mage_netherwindpresence"}, +{"id":44401,"name":"Missile Barrage","icon":"ability_mage_missilebarrage"}, {"id":44402,"name":"Netherwind Presence","icon":"ability_mage_netherwindpresence"}, {"id":44403,"name":"Netherwind Presence","icon":"ability_mage_netherwindpresence"}, {"id":44404,"name":"Missile Barrage","icon":"ability_mage_missilebarrage"}, @@ -11454,6 +11516,7 @@ {"id":45234,"name":"Focused Will","icon":"spell_arcane_focusedpower"}, {"id":45243,"name":"Focused Will","icon":"spell_arcane_focusedpower"}, {"id":45244,"name":"Focused Will","icon":"spell_arcane_focusedpower"}, +{"id":45529,"name":"Blood Tap","icon":"spell_deathknight_bloodtap"}, {"id":46106,"name":"Wonderheal XT68 Shades","icon":"inv_gizmo_newgoggles"}, {"id":46107,"name":"Justicebringer 3000 Specs","icon":"inv_gizmo_newgoggles"}, {"id":46108,"name":"Powerheal 9000 Lens","icon":"inv_gizmo_newgoggles"}, @@ -11488,6 +11551,7 @@ {"id":46142,"name":"Sunblessed Breastplate","icon":"inv_chest_plate02"}, {"id":46144,"name":"Hard Khorium Battleplate","icon":"inv_chest_plate11"}, {"id":46578,"name":"Enchant Weapon - Deathfrost","icon":"inv_enchant_formulasuperior_01"}, +{"id":46584,"name":"Raise Dead","icon":"spell_shadow_animatedead"}, {"id":46594,"name":"Enchant Chest - Defense","icon":"inv_misc_note_01"}, {"id":46854,"name":"Trauma","icon":"ability_warrior_bloodnova"}, {"id":46855,"name":"Trauma","icon":"ability_warrior_bloodnova"}, @@ -11503,6 +11567,7 @@ {"id":46913,"name":"Bloodsurge","icon":"ability_warrior_bloodsurge"}, {"id":46914,"name":"Bloodsurge","icon":"ability_warrior_bloodsurge"}, {"id":46915,"name":"Bloodsurge","icon":"ability_warrior_bloodsurge"}, +{"id":46916,"name":"Slam!","icon":"ability_warrior_bloodsurge"}, {"id":46917,"name":"Titan's Grip","icon":"ability_warrior_titansgrip"}, {"id":46924,"name":"Bladestorm","icon":"ability_warrior_bladestorm"}, {"id":46945,"name":"Safeguard","icon":"ability_warrior_safeguard"}, @@ -11551,7 +11616,13 @@ {"id":47436,"name":"Battle Shout","icon":"ability_warrior_battleshout"}, {"id":47437,"name":"Demoralizing Shout","icon":"ability_warrior_warcry"}, {"id":47440,"name":"Commanding Shout","icon":"ability_warrior_rallyingcry"}, +{"id":47450,"name":"Heroic Strike","icon":"ability_rogue_ambush"}, +{"id":47465,"name":"Rend","icon":"ability_gouge"}, {"id":47467,"name":"Sunder Armor","icon":"ability_warrior_sunder"}, +{"id":47471,"name":"Execute","icon":"inv_sword_48"}, +{"id":47475,"name":"Slam","icon":"ability_warrior_decisivestrike"}, +{"id":47488,"name":"Shield Slam","icon":"inv_shield_05"}, +{"id":47498,"name":"Devastate","icon":"inv_sword_11"}, {"id":47502,"name":"Thunder Clap","icon":"spell_nature_thunderclap"}, {"id":47507,"name":"Aspiration","icon":"spell_holy_aspiration"}, {"id":47508,"name":"Aspiration","icon":"spell_holy_aspiration"}, @@ -11560,6 +11631,7 @@ {"id":47515,"name":"Divine Aegis","icon":"spell_holy_devineaegis"}, {"id":47516,"name":"Grace","icon":"spell_holy_hopeandgrace"}, {"id":47517,"name":"Grace","icon":"spell_holy_hopeandgrace"}, +{"id":47528,"name":"Mind Freeze","icon":"spell_deathknight_mindfreeze"}, {"id":47535,"name":"Rapture","icon":"spell_holy_rapture"}, {"id":47536,"name":"Rapture","icon":"spell_holy_rapture"}, {"id":47537,"name":"Rapture","icon":"spell_holy_rapture"}, @@ -11572,6 +11644,7 @@ {"id":47565,"name":"Divine Providence","icon":"spell_holy_divineprovidence"}, {"id":47566,"name":"Divine Providence","icon":"spell_holy_divineprovidence"}, {"id":47567,"name":"Divine Providence","icon":"spell_holy_divineprovidence"}, +{"id":47568,"name":"Empower Rune Weapon","icon":"inv_sword_62"}, {"id":47569,"name":"Improved Shadowform","icon":"spell_shadow_summonvoidwalker"}, {"id":47570,"name":"Improved Shadowform","icon":"spell_shadow_summonvoidwalker"}, {"id":47573,"name":"Twisted Faith","icon":"spell_shadow_mindtwisting"}, @@ -11584,20 +11657,47 @@ {"id":47586,"name":"Twin Disciplines","icon":"spell_holy_sealofvengeance"}, {"id":47587,"name":"Twin Disciplines","icon":"spell_holy_sealofvengeance"}, {"id":47588,"name":"Twin Disciplines","icon":"spell_holy_sealofvengeance"}, +{"id":47610,"name":"Frostfire Bolt","icon":"ability_mage_frostfirebolt"}, {"id":47672,"name":"Enchant Cloak - Mighty Armor","icon":"inv_enchant_formulagood_01"}, {"id":47766,"name":"Enchant Chest - Greater Defense","icon":"inv_enchant_formulagood_01"}, {"id":47788,"name":"Guardian Spirit","icon":"spell_holy_guardianspirit"}, +{"id":47809,"name":"Shadow Bolt","icon":"spell_shadow_shadowbolt"}, +{"id":47811,"name":"Immolate","icon":"spell_fire_immolation"}, +{"id":47813,"name":"Corruption","icon":"spell_shadow_abominationexplosion"}, +{"id":47815,"name":"Searing Pain","icon":"spell_fire_soulburn"}, +{"id":47825,"name":"Soul Fire","icon":"spell_fire_fireball02"}, +{"id":47836,"name":"Seed of Corruption","icon":"spell_shadow_seedofdestruction"}, +{"id":47838,"name":"Incinerate","icon":"spell_fire_burnout"}, +{"id":47843,"name":"Unstable Affliction","icon":"spell_shadow_unstableaffliction_3"}, +{"id":47855,"name":"Drain Soul","icon":"spell_shadow_haunting"}, +{"id":47864,"name":"Curse of Agony","icon":"spell_shadow_curseofsargeras"}, {"id":47865,"name":"Curse of the Elements","icon":"spell_shadow_chilltouch"}, +{"id":47867,"name":"Curse of Doom","icon":"spell_shadow_auraofdarkness"}, {"id":47898,"name":"Enchant Cloak - Greater Speed","icon":"inv_enchant_formulagood_01"}, {"id":47899,"name":"Enchant Cloak - Wisdom","icon":"inv_enchant_formulagood_01"}, {"id":47900,"name":"Enchant Chest - Super Health","icon":"trade_engraving"}, {"id":47901,"name":"Enchant Boots - Tuskarr's Vitality","icon":"inv_enchant_formulagood_01"}, {"id":47982,"name":"Blood Pact","icon":"spell_shadow_bloodboil"}, +{"id":48063,"name":"Greater Heal","icon":"spell_holy_greaterheal"}, +{"id":48066,"name":"Power Word: Shield","icon":"spell_holy_powerwordshield"}, +{"id":48068,"name":"Renew","icon":"spell_holy_renew"}, +{"id":48071,"name":"Flash Heal","icon":"spell_holy_flashheal"}, +{"id":48072,"name":"Prayer of Healing","icon":"spell_holy_prayerofhealing02"}, {"id":48073,"name":"Divine Spirit","icon":"spell_holy_divinespirit"}, +{"id":48113,"name":"Prayer of Mending","icon":"spell_holy_prayerofmendingtga"}, +{"id":48120,"name":"Binding Heal","icon":"spell_holy_blindingheal"}, +{"id":48125,"name":"Shadow Word: Pain","icon":"spell_shadow_shadowwordpain"}, +{"id":48127,"name":"Mind Blast","icon":"spell_shadow_unholyfrenzy"}, +{"id":48156,"name":"Mind Flay","icon":"spell_shadow_siphonmana"}, +{"id":48158,"name":"Shadow Word: Death","icon":"spell_shadow_demonicfortitude"}, {"id":48160,"name":"Vampiric Touch","icon":"spell_holy_stoicism"}, {"id":48161,"name":"Power Word: Fortitude","icon":"spell_holy_wordfortitude"}, {"id":48170,"name":"Prayer of Shadow Protection","icon":"spell_holy_prayerofshadowprotection"}, {"id":48181,"name":"Haunt","icon":"ability_warlock_haunt"}, +{"id":48263,"name":"Frost Presence","icon":"spell_deathknight_frostpresence"}, +{"id":48265,"name":"Unholy Presence","icon":"spell_deathknight_unholypresence"}, +{"id":48300,"name":"Devouring Plague","icon":"spell_shadow_devouringplague"}, +{"id":48301,"name":"Mind Trauma","icon":"spell_shadow_unholyfrenzy"}, {"id":48384,"name":"Improved Moonkin Form","icon":"ability_druid_improvedmoonkinform"}, {"id":48389,"name":"Owlkin Frenzy","icon":"ability_druid_owlkinfrenzy"}, {"id":48392,"name":"Owlkin Frenzy","icon":"ability_druid_owlkinfrenzy"}, @@ -11612,7 +11712,14 @@ {"id":48433,"name":"Rend and Tear","icon":"ability_druid_primalagression"}, {"id":48434,"name":"Rend and Tear","icon":"ability_druid_primalagression"}, {"id":48438,"name":"Wild Growth","icon":"ability_druid_flourish"}, +{"id":48461,"name":"Wrath","icon":"spell_nature_abolishmagic"}, +{"id":48463,"name":"Moonfire","icon":"spell_nature_starfall"}, +{"id":48465,"name":"Starfire","icon":"spell_arcane_starfire"}, +{"id":48467,"name":"Hurricane","icon":"spell_nature_cyclone"}, +{"id":48468,"name":"Insect Swarm","icon":"spell_nature_insectswarm"}, {"id":48470,"name":"Gift of the Wild","icon":"spell_nature_giftofthewild"}, +{"id":48477,"name":"Rebirth","icon":"spell_nature_reincarnation"}, +{"id":48480,"name":"Maul","icon":"ability_druid_maul"}, {"id":48483,"name":"Infected Wounds","icon":"ability_druid_infectedwound"}, {"id":48484,"name":"Infected Wounds","icon":"ability_druid_infectedwound"}, {"id":48485,"name":"Infected Wounds","icon":"ability_druid_infectedwound"}, @@ -11631,6 +11738,8 @@ {"id":48511,"name":"Earth and Moon","icon":"ability_druid_earthandsky"}, {"id":48514,"name":"Gale Winds","icon":"ability_druid_galewinds"}, {"id":48516,"name":"Eclipse","icon":"ability_druid_eclipse"}, +{"id":48517,"name":"Eclipse (Solar)","icon":"ability_druid_eclipseorange"}, +{"id":48518,"name":"Eclipse (Lunar)","icon":"ability_druid_eclipse"}, {"id":48521,"name":"Eclipse","icon":"ability_druid_eclipse"}, {"id":48525,"name":"Eclipse","icon":"ability_druid_eclipse"}, {"id":48532,"name":"Improved Mangle","icon":"ability_druid_mangle2"}, @@ -11641,9 +11750,36 @@ {"id":48544,"name":"Revitalize","icon":"ability_druid_replenish"}, {"id":48545,"name":"Revitalize","icon":"ability_druid_replenish"}, {"id":48560,"name":"Demoralizing Roar","icon":"classic_ability_druid_demoralizingroar"}, +{"id":48562,"name":"Swipe (Bear)","icon":"inv_misc_monsterclaw_03"}, +{"id":48564,"name":"Mangle (Bear)","icon":"ability_druid_mangle2"}, +{"id":48566,"name":"Mangle (Cat)","icon":"ability_druid_mangle2"}, +{"id":48568,"name":"Lacerate","icon":"ability_druid_lacerate"}, +{"id":48572,"name":"Shred","icon":"spell_shadow_vampiricaura"}, +{"id":48574,"name":"Rake","icon":"ability_druid_disembowel"}, +{"id":48577,"name":"Ferocious Bite","icon":"ability_druid_ferociousbite"}, +{"id":48638,"name":"Sinister Strike","icon":"spell_shadow_ritualofsacrifice"}, +{"id":48657,"name":"Backstab","icon":"ability_backstab"}, +{"id":48659,"name":"Feint","icon":"ability_rogue_feint"}, +{"id":48660,"name":"Hemorrhage","icon":"spell_shadow_lifedrain"}, +{"id":48664,"name":"Mutilate","icon":"ability_dualwield"}, +{"id":48665,"name":"Mutilate","icon":"ability_dualwield"}, +{"id":48666,"name":"Mutilate","icon":"ability_rogue_shadowstrikes"}, +{"id":48668,"name":"Eviscerate","icon":"ability_rogue_eviscerate"}, +{"id":48672,"name":"Rupture","icon":"ability_rogue_rupture"}, +{"id":48676,"name":"Garrote","icon":"ability_rogue_garrote"}, +{"id":48691,"name":"Ambush","icon":"ability_rogue_ambush"}, +{"id":48707,"name":"Anti-Magic Shell","icon":"spell_shadow_antimagicshell"}, +{"id":48743,"name":"Death Pact","icon":"spell_shadow_deathpact"}, +{"id":48792,"name":"Icebound Fortitude","icon":"spell_deathknight_iceboundfortitude"}, +{"id":48801,"name":"Exorcism","icon":"spell_holy_excorcism_02"}, +{"id":48806,"name":"Hammer of Wrath","icon":"ability_thunderclap"}, +{"id":48817,"name":"Holy Wrath","icon":"spell_holy_excorcism"}, +{"id":48819,"name":"Consecration","icon":"spell_holy_innerfire"}, +{"id":48827,"name":"Avenger's Shield","icon":"spell_holy_avengersshield"}, {"id":48934,"name":"Greater Blessing of Might","icon":"spell_holy_greaterblessingofkings"}, {"id":48938,"name":"Greater Blessing of Wisdom","icon":"spell_holy_greaterblessingofwisdom"}, {"id":48942,"name":"Devotion Aura","icon":"spell_holy_devotionaura"}, +{"id":48952,"name":"Holy Shield","icon":"classic_spell_holy_blessingofprotection"}, {"id":48962,"name":"Virulence","icon":"spell_shadow_burningspirit"}, {"id":48963,"name":"Morbidity","icon":"spell_shadow_deathanddecay"}, {"id":48965,"name":"Ravenous Dead","icon":"spell_deathknight_gnaw_ghoul"}, @@ -11654,7 +11790,9 @@ {"id":48985,"name":"Improved Rune Tap","icon":"spell_deathknight_runetap"}, {"id":48987,"name":"Dark Conviction","icon":"spell_deathknight_darkconviction"}, {"id":48988,"name":"Bloody Vengeance","icon":"ability_backstab"}, +{"id":48996,"name":"Raptor Strike","icon":"ability_meleedamage"}, {"id":48997,"name":"Subversion","icon":"spell_deathknight_subversion"}, +{"id":49001,"name":"Serpent Sting","icon":"ability_hunter_quickshot"}, {"id":49004,"name":"Scent of Blood","icon":"ability_rogue_bloodyeye"}, {"id":49005,"name":"Mark of Blood","icon":"ability_hunter_rapidkilling"}, {"id":49006,"name":"Veteran of the Third War","icon":"spell_misc_warsongfocus"}, @@ -11670,6 +11808,12 @@ {"id":49036,"name":"Epidemic","icon":"spell_shadow_shadowwordpain"}, {"id":49039,"name":"Lichborne","icon":"spell_shadow_raisedead"}, {"id":49042,"name":"Toughness","icon":"spell_holy_devotion"}, +{"id":49045,"name":"Arcane Shot","icon":"ability_impalingbolt"}, +{"id":49048,"name":"Multi-Shot","icon":"ability_upgrademoonglaive"}, +{"id":49050,"name":"Aimed Shot","icon":"inv_spear_07"}, +{"id":49052,"name":"Steady Shot","icon":"ability_hunter_steadyshot"}, +{"id":49067,"name":"Explosive Trap","icon":"spell_fire_selfdestruct"}, +{"id":49071,"name":"Aspect of the Wild","icon":"spell_nature_protectionformnature"}, {"id":49137,"name":"Endless Winter","icon":"spell_shadow_twilight"}, {"id":49140,"name":"Black Ice","icon":"spell_shadow_darkritual"}, {"id":49143,"name":"Frost Strike","icon":"spell_deathknight_empowerruneblade2"}, @@ -11696,6 +11840,14 @@ {"id":49223,"name":"Dirge","icon":"spell_shadow_shadesofdarkness"}, {"id":49224,"name":"Magic Suppression","icon":"spell_shadow_antimagicshell"}, {"id":49226,"name":"Nerves of Cold Steel","icon":"ability_dualwield"}, +{"id":49231,"name":"Earth Shock","icon":"spell_nature_earthshock"}, +{"id":49233,"name":"Flame Shock","icon":"spell_fire_flameshock"}, +{"id":49236,"name":"Frost Shock","icon":"spell_frost_frostshock"}, +{"id":49238,"name":"Lightning Bolt","icon":"spell_nature_lightning"}, +{"id":49271,"name":"Chain Lightning","icon":"spell_nature_chainlightning"}, +{"id":49273,"name":"Healing Wave","icon":"spell_nature_magicimmunity"}, +{"id":49276,"name":"Lesser Healing Wave","icon":"spell_nature_healingwavelesser"}, +{"id":49284,"name":"Earth Shield","icon":"spell_nature_skinofearth"}, {"id":49377,"name":"Feral Charge","icon":"ability_hunter_pet_bear"}, {"id":49390,"name":"Bladed Armor","icon":"inv_shoulder_36"}, {"id":49391,"name":"Bladed Armor","icon":"inv_shoulder_36"}, @@ -11765,6 +11917,13 @@ {"id":49790,"name":"Glacier Rot","icon":"spell_nature_removedisease"}, {"id":49791,"name":"Glacier Rot","icon":"spell_nature_removedisease"}, {"id":49796,"name":"Deathchill","icon":"spell_shadow_soulleech_2"}, +{"id":49800,"name":"Rip","icon":"ability_ghoulfrenzy"}, +{"id":49895,"name":"Death Coil","icon":"spell_shadow_deathcoil"}, +{"id":49921,"name":"Plague Strike","icon":"spell_deathknight_empowerruneblade"}, +{"id":49924,"name":"Death Strike","icon":"spell_deathknight_butcher2"}, +{"id":49930,"name":"Blood Strike","icon":"spell_deathknight_deathstrike"}, +{"id":49938,"name":"Death and Decay","icon":"spell_shadow_deathanddecay"}, +{"id":49941,"name":"Blood Boil","icon":"spell_deathknight_bloodboil"}, {"id":50029,"name":"Veteran of the Third War","icon":"spell_misc_warsongfocus"}, {"id":50031,"name":"Improved Icy Touch","icon":"spell_deathknight_icetouch"}, {"id":50033,"name":"Death Rune Mastery","icon":"inv_sword_62"}, @@ -11793,6 +11952,7 @@ {"id":50187,"name":"Guile of Gorefiend","icon":"inv-sword_53"}, {"id":50190,"name":"Guile of Gorefiend","icon":"inv-sword_53"}, {"id":50191,"name":"Guile of Gorefiend","icon":"inv-sword_53"}, +{"id":50213,"name":"Tiger's Fury","icon":"ability_mount_jungletiger"}, {"id":50334,"name":"Berserk","icon":"ability_druid_berserk"}, {"id":50365,"name":"Improved Blood Presence","icon":"spell_deathknight_bloodpresence"}, {"id":50371,"name":"Improved Blood Presence","icon":"spell_deathknight_bloodpresence"}, @@ -11800,13 +11960,19 @@ {"id":50385,"name":"Improved Frost Presence","icon":"spell_deathknight_frostpresence"}, {"id":50391,"name":"Improved Unholy Presence","icon":"spell_deathknight_unholypresence"}, {"id":50392,"name":"Improved Unholy Presence","icon":"spell_deathknight_unholypresence"}, +{"id":50449,"name":"Bloody Vengeance","icon":"spell_deathknight_butcher"}, +{"id":50463,"name":"Blood-Caked Strike","icon":"ability_creature_poison_01"}, {"id":50511,"name":"Curse of Weakness","icon":"spell_shadow_curseofmannoroth"}, {"id":50516,"name":"Typhoon","icon":"ability_druid_typhoon"}, +{"id":50526,"name":"Wandering Plague","icon":"spell_shadow_callofbone"}, +{"id":50536,"name":"Unholy Blight","icon":"spell_shadow_contagion"}, {"id":50685,"name":"Incite","icon":"ability_warrior_incite"}, {"id":50686,"name":"Incite","icon":"ability_warrior_incite"}, {"id":50687,"name":"Incite","icon":"ability_warrior_incite"}, +{"id":50689,"name":"Blood Presence","icon":"spell_deathknight_bloodpresence"}, {"id":50720,"name":"Vigilance","icon":"ability_warrior_vigilance"}, {"id":50796,"name":"Chaos Bolt","icon":"ability_warlock_chaosbolt"}, +{"id":50842,"name":"Pestilence","icon":"spell_shadow_plaguecloud"}, {"id":50880,"name":"Icy Talons","icon":"spell_deathknight_icytalons"}, {"id":50884,"name":"Icy Talons","icon":"spell_deathknight_icytalons"}, {"id":50885,"name":"Icy Talons","icon":"spell_deathknight_icytalons"}, @@ -11844,8 +12010,10 @@ {"id":51268,"name":"Rend and Tear","icon":"ability_druid_primalagression"}, {"id":51269,"name":"Rend and Tear","icon":"ability_druid_primalagression"}, {"id":51271,"name":"Unbreakable Armor","icon":"inv_armor_helm_plate_naxxramas_raidwarrior_c_01"}, +{"id":51425,"name":"Obliterate","icon":"spell_deathknight_classicon"}, {"id":51456,"name":"Improved Icy Touch","icon":"spell_deathknight_icetouch"}, {"id":51459,"name":"Necrosis","icon":"inv_weapon_shortblade_60"}, +{"id":51460,"name":"Necrosis","icon":"spell_shadow_blackplague"}, {"id":51462,"name":"Necrosis","icon":"inv_weapon_shortblade_60"}, {"id":51463,"name":"Necrosis","icon":"inv_weapon_shortblade_60"}, {"id":51464,"name":"Necrosis","icon":"inv_weapon_shortblade_60"}, @@ -11932,6 +12100,7 @@ {"id":51711,"name":"Slaughter from the Shadows","icon":"ability_rogue_slaughterfromtheshadows"}, {"id":51712,"name":"Slaughter from the Shadows","icon":"ability_rogue_slaughterfromtheshadows"}, {"id":51713,"name":"Shadow Dance","icon":"ability_rogue_shadowdance"}, +{"id":51723,"name":"Fan of Knives","icon":"ability_rogue_fanofknives"}, {"id":51745,"name":"Vicious Strikes","icon":"spell_deathknight_plaguestrike"}, {"id":51746,"name":"Vicious Strikes","icon":"spell_deathknight_plaguestrike"}, {"id":51881,"name":"Improved Shields","icon":"spell_nature_lightningshield"}, @@ -11939,14 +12108,18 @@ {"id":51884,"name":"Mental Dexterity","icon":"spell_nature_bloodlust"}, {"id":51885,"name":"Mental Dexterity","icon":"spell_nature_bloodlust"}, {"id":51886,"name":"Cleanse Spirit","icon":"ability_shaman_cleansespirit"}, +{"id":52042,"name":"Healing Stream Totem","icon":"spell_holy_stoicism"}, {"id":52143,"name":"Master of Ghouls","icon":"spell_shadow_animatedead"}, {"id":52234,"name":"Cornered","icon":"ability_hunter_survivalinstincts"}, {"id":52456,"name":"Enhancing Totems","icon":"spell_nature_earthbindtotem"}, +{"id":52610,"name":"Savage Roar","icon":"ability_druid_skinteeth"}, +{"id":52752,"name":"Ancestral Awakening","icon":"spell_shaman_ancestralawakening"}, {"id":52783,"name":"Improved Tracking","icon":"ability_hunter_improvedtracking"}, {"id":52785,"name":"Improved Tracking","icon":"ability_hunter_improvedtracking"}, {"id":52786,"name":"Improved Tracking","icon":"ability_hunter_improvedtracking"}, {"id":52787,"name":"Improved Tracking","icon":"ability_hunter_improvedtracking"}, {"id":52788,"name":"Improved Tracking","icon":"ability_hunter_improvedtracking"}, +{"id":52789,"name":"Visual Dummy","icon":"spell_deathknight_icetouch"}, {"id":52795,"name":"Borrowed Time","icon":"spell_holy_borrowedtime"}, {"id":52797,"name":"Borrowed Time","icon":"spell_holy_borrowedtime"}, {"id":52798,"name":"Borrowed Time","icon":"spell_holy_borrowedtime"}, @@ -11955,6 +12128,8 @@ {"id":52802,"name":"Twin Disciplines","icon":"spell_holy_sealofvengeance"}, {"id":52803,"name":"Twin Disciplines","icon":"spell_holy_sealofvengeance"}, {"id":52858,"name":"Culling the Herd","icon":"inv_misc_monsterhorn_06"}, +{"id":53007,"name":"Penance","icon":"spell_holy_penance"}, +{"id":53023,"name":"Mind Sear","icon":"spell_shadow_mindshear"}, {"id":53137,"name":"Abomination's Might","icon":"ability_warrior_intensifyrage"}, {"id":53138,"name":"Abomination's Might","icon":"ability_warrior_intensifyrage"}, {"id":53175,"name":"Pet Barding","icon":"inv_helmet_94"}, @@ -11968,6 +12143,8 @@ {"id":53184,"name":"Spiked Collar","icon":"inv_jewelry_necklace_22"}, {"id":53186,"name":"Bloodthirsty","icon":"ability_druid_primaltenacity"}, {"id":53187,"name":"Bloodthirsty","icon":"ability_druid_primaltenacity"}, +{"id":53190,"name":"Starfall","icon":"ability_druid_starfall"}, +{"id":53201,"name":"Starfall","icon":"ability_druid_starfall"}, {"id":53203,"name":"Spider's Bite","icon":"ability_hunter_pet_spider"}, {"id":53204,"name":"Spider's Bite","icon":"ability_hunter_pet_spider"}, {"id":53205,"name":"Spider's Bite","icon":"ability_hunter_pet_spider"}, @@ -12025,6 +12202,7 @@ {"id":53381,"name":"Righteous Vengeance","icon":"ability_paladin_righteousvengeance"}, {"id":53382,"name":"Righteous Vengeance","icon":"ability_paladin_righteousvengeance"}, {"id":53385,"name":"Divine Storm","icon":"ability_paladin_divinestorm"}, +{"id":53390,"name":"Tidal Waves","icon":"spell_shaman_tidalwaves"}, {"id":53401,"name":"Rabid","icon":"ability_druid_berserk"}, {"id":53408,"name":"Judgement of Wisdom","icon":"ability_paladin_judgementblue"}, {"id":53409,"name":"Lionhearted","icon":"inv_bannerpvp_02"}, @@ -12091,6 +12269,7 @@ {"id":53711,"name":"Shield of the Templar","icon":"ability_paladin_shieldofthetemplar"}, {"id":53754,"name":"Improved Fear","icon":"spell_shadow_possession"}, {"id":53759,"name":"Improved Fear","icon":"spell_shadow_possession"}, +{"id":53817,"name":"Maelstrom Weapon","icon":"spell_shaman_maelstromweapon"}, {"id":54037,"name":"Improved Felhunter","icon":"spell_shadow_summonfelhunter"}, {"id":54038,"name":"Improved Felhunter","icon":"spell_shadow_summonfelhunter"}, {"id":54043,"name":"Retribution Aura","icon":"spell_holy_auraoflight"}, @@ -12105,6 +12284,7 @@ {"id":54349,"name":"Improved Demonic Tactics","icon":"ability_warlock_improveddemonictactics"}, {"id":54353,"name":"Mark \"S\" Boomstick","icon":"inv_weapon_rifle_08"}, {"id":54354,"name":"Prismatic Cloak","icon":"spell_arcane_prismaticcloak"}, +{"id":54428,"name":"Divine Plea","icon":"spell_holy_aspiration"}, {"id":54446,"name":"Rune of Swordbreaking","icon":"ability_parry"}, {"id":54447,"name":"Rune of Spellbreaking","icon":"spell_shadow_antimagicshell"}, {"id":54486,"name":"Missile Barrage","icon":"ability_mage_missilebarrage"}, @@ -12159,6 +12339,7 @@ {"id":55061,"name":"Icy Reach","icon":"spell_frost_manarecharge"}, {"id":55062,"name":"Icy Reach","icon":"spell_frost_manarecharge"}, {"id":55076,"name":"Sun Scope","icon":"trade_engineering"}, +{"id":55078,"name":"Blood Plague","icon":"spell_deathknight_bloodplague"}, {"id":55090,"name":"Scourge Strike","icon":"spell_deathknight_scourgestrike"}, {"id":55091,"name":"Cold as Ice","icon":"ability_mage_coldasice"}, {"id":55092,"name":"Cold as Ice","icon":"ability_mage_coldasice"}, @@ -12195,6 +12376,7 @@ {"id":55236,"name":"Outbreak","icon":"spell_shadow_plaguecloud"}, {"id":55237,"name":"Outbreak","icon":"spell_shadow_plaguecloud"}, {"id":55243,"name":"Bracers of Deflection","icon":"inv_bracer_10"}, +{"id":55268,"name":"Frost Strike","icon":"spell_deathknight_empowerruneblade2"}, {"id":55298,"name":"Vengeance Bindings","icon":"inv_bracer_09"}, {"id":55300,"name":"Righteous Gauntlets","icon":"inv_gauntlets_26"}, {"id":55301,"name":"Daunting Handguards","icon":"inv_gauntlets_26"}, @@ -12211,6 +12393,7 @@ {"id":55312,"name":"Savage Saronite Skullshield","icon":"inv_helmet_130"}, {"id":55339,"name":"Torment the Weak","icon":"ability_mage_tormentoftheweak"}, {"id":55340,"name":"Torment the Weak","icon":"ability_mage_tormentoftheweak"}, +{"id":55342,"name":"Mirror Image","icon":"spell_magic_lesserinvisibilty"}, {"id":55369,"name":"Titansteel Destroyer","icon":"inv_mace_84"}, {"id":55370,"name":"Titansteel Bonecrusher","icon":"inv_mace_87"}, {"id":55371,"name":"Titansteel Guardian","icon":"inv_mace_87"}, @@ -12220,6 +12403,7 @@ {"id":55375,"name":"Spiked Titansteel Treads","icon":"inv_boots_plate_08"}, {"id":55376,"name":"Tempered Titansteel Treads","icon":"inv_boots_plate_08"}, {"id":55377,"name":"Brilliant Titansteel Treads","icon":"inv_boots_plate_08"}, +{"id":55459,"name":"Chain Heal","icon":"spell_nature_healingwavegreater"}, {"id":55487,"name":"Demoralizing Screech","icon":"ability_hunter_pet_vulture"}, {"id":55610,"name":"Improved Icy Talons","icon":"spell_deathknight_icytalons"}, {"id":55620,"name":"Night of the Dead","icon":"spell_deathknight_armyofthedead"}, @@ -12325,6 +12509,7 @@ {"id":56636,"name":"Taste for Blood","icon":"ability_rogue_hungerforblood"}, {"id":56637,"name":"Taste for Blood","icon":"ability_rogue_hungerforblood"}, {"id":56638,"name":"Taste for Blood","icon":"ability_rogue_hungerforblood"}, +{"id":56815,"name":"Rune Strike","icon":"spell_deathknight_darkconviction"}, {"id":56822,"name":"Rime","icon":"spell_frost_freezingbreath"}, {"id":56834,"name":"Reaping","icon":"spell_shadow_shadetruesight"}, {"id":56835,"name":"Reaping","icon":"spell_shadow_shadetruesight"}, @@ -12338,8 +12523,10 @@ {"id":57470,"name":"Renewed Hope","icon":"spell_holy_holyprotection"}, {"id":57472,"name":"Renewed Hope","icon":"spell_holy_holyprotection"}, {"id":57499,"name":"Warbringer","icon":"ability_warrior_warbringer"}, +{"id":57516,"name":"Enrage","icon":"spell_shadow_unholyfrenzy"}, {"id":57567,"name":"Fel Intelligence","icon":"spell_shadow_brainwash"}, {"id":57623,"name":"Horn of Winter","icon":"inv_misc_horn_02"}, +{"id":57669,"name":"Replenishment","icon":"spell_magic_managain"}, {"id":57683,"name":"Fur Lining - Attack Power","icon":"trade_leatherworking"}, {"id":57690,"name":"Fur Lining - Stamina","icon":"trade_leatherworking"}, {"id":57691,"name":"Fur Lining - Spell Power","icon":"trade_leatherworking"}, @@ -12354,6 +12541,7 @@ {"id":57812,"name":"Genesis","icon":"spell_arcane_arcane03"}, {"id":57813,"name":"Genesis","icon":"spell_arcane_arcane03"}, {"id":57814,"name":"Genesis","icon":"spell_arcane_arcane03"}, +{"id":57823,"name":"Revenge","icon":"ability_warrior_revenge"}, {"id":57849,"name":"Improved Insect Swarm","icon":"spell_nature_insectswarm"}, {"id":57850,"name":"Improved Insect Swarm","icon":"spell_nature_insectswarm"}, {"id":57851,"name":"Improved Insect Swarm","icon":"spell_nature_insectswarm"}, @@ -12365,6 +12553,12 @@ {"id":57880,"name":"Natural Reaction","icon":"ability_bullrush"}, {"id":57881,"name":"Natural Reaction","icon":"ability_bullrush"}, {"id":57933,"name":"Tricks of the Trade","icon":"ability_rogue_tricksofthetrade"}, +{"id":57934,"name":"Tricks of the Trade","icon":"ability_rogue_tricksofthetrade"}, +{"id":57946,"name":"Life Tap","icon":"spell_shadow_burningspirit"}, +{"id":57965,"name":"Instant Poison IX","icon":"ability_poisons"}, +{"id":57970,"name":"Deadly Poison IX","icon":"ability_rogue_dualweild"}, +{"id":57975,"name":"Wound Poison VII","icon":"inv_misc_herb_16"}, +{"id":57993,"name":"Envenom","icon":"ability_rogue_disembowel"}, {"id":58143,"name":"Earthshadow Ring","icon":"inv_jewelry_ring_35"}, {"id":58144,"name":"Jade Ring of Slaying","icon":"inv_jewelry_ring_34"}, {"id":58145,"name":"Stoneguard Band","icon":"inv_jewelry_ring_02"}, @@ -12382,19 +12576,28 @@ {"id":58424,"name":"Relentless Strikes","icon":"ability_warrior_decisivestrike"}, {"id":58425,"name":"Relentless Strikes","icon":"ability_warrior_decisivestrike"}, {"id":58426,"name":"Overkill","icon":"ability_hunter_rapidkilling"}, +{"id":58434,"name":"Volley","icon":"ability_marksmanship"}, {"id":58435,"name":"Pandemic","icon":"spell_shadow_unstableaffliction_2"}, {"id":58492,"name":"Savage Titanium Ring","icon":"inv_jewelry_ring_38"}, {"id":58507,"name":"Savage Titanium Band","icon":"inv_jewelry_ring_38"}, {"id":58643,"name":"Strength of Earth Totem","icon":"spell_nature_earthbindtotem"}, {"id":58656,"name":"Flametongue Totem","icon":"spell_nature_guardianward"}, +{"id":58704,"name":"Searing Totem","icon":"spell_fire_searingtotem"}, +{"id":58734,"name":"Magma Totem","icon":"spell_fire_selfdestruct"}, +{"id":58749,"name":"Nature Resistance Totem","icon":"spell_nature_natureresistancetotem"}, {"id":58753,"name":"Stoneskin Totem","icon":"spell_nature_stoneskintotem"}, +{"id":58757,"name":"Healing Stream Totem","icon":"inv_spear_04"}, {"id":58774,"name":"Mana Spring Totem","icon":"spell_nature_manaregentotem"}, {"id":58872,"name":"Damage Shield","icon":"inv_shield_31"}, {"id":58874,"name":"Damage Shield","icon":"inv_shield_31"}, {"id":58954,"name":"Titanium Frostguard Ring","icon":"inv_jewelry_ring_57"}, +{"id":59000,"name":"Improved Spirit Tap","icon":"spell_shadow_requiem"}, {"id":59057,"name":"Rime","icon":"spell_frost_freezingbreath"}, {"id":59088,"name":"Improved Spell Reflection","icon":"ability_warrior_shieldreflection"}, {"id":59089,"name":"Improved Spell Reflection","icon":"ability_warrior_shieldreflection"}, +{"id":59131,"name":"Icy Touch","icon":"spell_deathknight_icetouch"}, +{"id":59159,"name":"Thunderstorm","icon":"spell_shaman_thunderstorm"}, +{"id":59164,"name":"Haunt","icon":"ability_warlock_haunt"}, {"id":59436,"name":"Brilliant Saronite Belt","icon":"inv_belt_20"}, {"id":59438,"name":"Brilliant Saronite Bracers","icon":"inv_bracer_17"}, {"id":59440,"name":"Brilliant Saronite Pauldrons","icon":"inv_shoulder_71"}, @@ -12441,6 +12644,9 @@ {"id":59955,"name":"Arcanum of the Stalwart Protector","icon":"ability_warrior_swordandboard"}, {"id":59960,"name":"Arcanum of Blissful Mending","icon":"ability_warrior_shieldmastery"}, {"id":59970,"name":"Arcanum of Burning Mysteries","icon":"spell_fire_masterofelements"}, +{"id":60043,"name":"Lava Burst","icon":"spell_shaman_lavaburst"}, +{"id":60052,"name":"Explosive Shot","icon":"ability_hunter_explosiveshot"}, +{"id":60053,"name":"Explosive Shot","icon":"ability_hunter_explosiveshot"}, {"id":60103,"name":"Lava Lash","icon":"ability_shaman_lavalash"}, {"id":60184,"name":"Elemental Fury","icon":"spell_fire_volcano"}, {"id":60185,"name":"Elemental Fury","icon":"spell_fire_volcano"}, @@ -12546,6 +12752,7 @@ {"id":60999,"name":"Icy Scale Chestguard","icon":"inv_chest_plate09"}, {"id":61000,"name":"Icy Scale Belt","icon":"inv_belt_13"}, {"id":61002,"name":"Icy Scale Boots","icon":"inv_boots_chain_11"}, +{"id":61006,"name":"Kill Shot","icon":"ability_hunter_assassinate2"}, {"id":61008,"name":"Icebane Chestguard","icon":"inv_chest_chain_11"}, {"id":61009,"name":"Icebane Girdle","icon":"inv_belt_33"}, {"id":61010,"name":"Icebane Treads","icon":"inv_boots_plate_08"}, @@ -12563,13 +12770,17 @@ {"id":61222,"name":"Armored to the Teeth","icon":"inv_shoulder_22"}, {"id":61271,"name":"Arcanum of the Savage Gladiator","icon":"trade_engineering"}, {"id":61295,"name":"Riptide","icon":"spell_nature_riptide"}, +{"id":61301,"name":"Riptide","icon":"spell_nature_riptide"}, {"id":61329,"name":"Vitality","icon":"ability_warrior_revenge"}, {"id":61330,"name":"Aggression","icon":"ability_racial_avatar"}, {"id":61331,"name":"Aggression","icon":"ability_racial_avatar"}, {"id":61336,"name":"Survival Instincts","icon":"ability_druid_tigersroar"}, {"id":61345,"name":"Nature's Grace","icon":"spell_nature_naturesblessing"}, {"id":61346,"name":"Nature's Grace","icon":"spell_nature_naturesblessing"}, +{"id":61384,"name":"Typhoon","icon":"ability_druid_typhoon"}, +{"id":61411,"name":"Shield of Righteousness","icon":"ability_paladin_shieldofvengeance"}, {"id":61468,"name":"Diamond-cut Refractor Scope","icon":"trade_engineering"}, +{"id":61657,"name":"Fire Nova","icon":"spell_fire_sealoffire"}, {"id":61680,"name":"Culling the Herd","icon":"inv_misc_monsterhorn_06"}, {"id":61681,"name":"Culling the Herd","icon":"inv_misc_monsterhorn_06"}, {"id":61682,"name":"Cobra Reflexes","icon":"spell_nature_guardianward"}, @@ -12580,6 +12791,10 @@ {"id":61688,"name":"Great Stamina","icon":"spell_nature_unyeildingstamina"}, {"id":61689,"name":"Natural Armor","icon":"spell_nature_spiritarmor"}, {"id":61690,"name":"Natural Armor","icon":"spell_nature_spiritarmor"}, +{"id":61792,"name":"Shadowy Insight","icon":"spell_arcane_blink"}, +{"id":61840,"name":"Righteous Vengeance","icon":"ability_paladin_righteousvengeance"}, +{"id":61847,"name":"Aspect of the Dragonhawk","icon":"ability_hunter_pet_dragonhawk"}, +{"id":62078,"name":"Swipe (Cat)","icon":"inv_misc_monsterclaw_03"}, {"id":62097,"name":"Shamanism","icon":"spell_unused2"}, {"id":62098,"name":"Shamanism","icon":"spell_unused2"}, {"id":62099,"name":"Shamanism","icon":"spell_unused2"}, @@ -12593,6 +12808,7 @@ {"id":62271,"name":"Unbreakable Healing Amplifiers","icon":"inv_gizmo_newgoggles"}, {"id":62384,"name":"Greater Inscription of the Gladiator","icon":"trade_engineering"}, {"id":62447,"name":"Earthen Leg Armor","icon":"trade_leatherworking"}, +{"id":62606,"name":"Savage Defense","icon":"ability_racial_cannibalize"}, {"id":62758,"name":"Wild Hunt","icon":"inv_misc_horn_04"}, {"id":62759,"name":"Shark Attack","icon":"inv_misc_fish_35"}, {"id":62760,"name":"Shark Attack","icon":"inv_misc_fish_35"}, @@ -12657,6 +12873,8 @@ {"id":63648,"name":"Divinity","icon":"spell_holy_blindingheal"}, {"id":63649,"name":"Divinity","icon":"spell_holy_blindingheal"}, {"id":63650,"name":"Divinity","icon":"spell_holy_blindingheal"}, +{"id":63672,"name":"Black Arrow","icon":"spell_shadow_painspike"}, +{"id":63675,"name":"Improved Devouring Plague","icon":"spell_shadow_devouringplague"}, {"id":63730,"name":"Serendipity","icon":"spell_holy_serendipity"}, {"id":63733,"name":"Serendipity","icon":"spell_holy_serendipity"}, {"id":63737,"name":"Serendipity","icon":"spell_holy_serendipity"}, @@ -12671,22 +12889,28 @@ {"id":64205,"name":"Divine Sacrifice","icon":"spell_holy_powerwordbarrier"}, {"id":64353,"name":"Fiery Payback","icon":"ability_mage_fierypayback"}, {"id":64357,"name":"Fiery Payback","icon":"ability_mage_fierypayback"}, +{"id":64371,"name":"Eradication","icon":"ability_warlock_eradication"}, {"id":64382,"name":"Shattering Throw","icon":"ability_warrior_shatteringthrow"}, {"id":64579,"name":"Enchant Weapon - Blood Draining","icon":"inv_misc_note_01"}, +{"id":64701,"name":"Elemental Mastery","icon":"spell_nature_wispheal"}, {"id":64725,"name":"Emerald Choker","icon":"inv_jewelry_necklace_24"}, {"id":64726,"name":"Sky Sapphire Amulet","icon":"inv_jewelry_necklace_16"}, {"id":64727,"name":"Runed Mana Band","icon":"inv_jewelry_ring_34"}, {"id":64728,"name":"Scarlet Signet","icon":"inv_jewelry_ring_72"}, {"id":64729,"name":"Frostguard Drape","icon":"inv_misc_cape_19"}, {"id":64730,"name":"Cloak of Crimson Snow","icon":"inv_misc_cape_19"}, +{"id":64901,"name":"Hymn of Hope","icon":"spell_holy_symbolofhope"}, {"id":64976,"name":"Juggernaut","icon":"ability_warrior_bullrush"}, {"id":65139,"name":"Tree of Life","icon":"ability_druid_treeoflife"}, {"id":65661,"name":"Threat of Thassarian","icon":"ability_dualwieldspecialization"}, {"id":65855,"name":"Insect Swarm","icon":"spell_nature_insectswarm"}, +{"id":65861,"name":"Force of Nature","icon":"ability_druid_forceofnature"}, {"id":65990,"name":"Windfury Totem","icon":"spell_nature_windfury"}, {"id":66191,"name":"Threat of Thassarian","icon":"ability_dualwieldspecialization"}, {"id":66192,"name":"Threat of Thassarian","icon":"ability_dualwieldspecialization"}, +{"id":66233,"name":"Ardent Defender","icon":"spell_holy_ardentdefender"}, {"id":66799,"name":"Desolation","icon":"spell_shadow_unholyfrenzy"}, +{"id":66803,"name":"Desolation","icon":"spell_shadow_shadowworddominate"}, {"id":66814,"name":"Desolation","icon":"spell_shadow_unholyfrenzy"}, {"id":66815,"name":"Desolation","icon":"spell_shadow_unholyfrenzy"}, {"id":66816,"name":"Desolation","icon":"spell_shadow_unholyfrenzy"}, @@ -12728,6 +12952,7 @@ {"id":67146,"name":"Merlin's Robe","icon":"inv_chest_cloth_64"}, {"id":67147,"name":"Royal Moonshroud Bracers","icon":"inv_bracer_24b"}, {"id":67839,"name":"Mind Amplification Dish","icon":"trade_engineering"}, +{"id":68051,"name":"Overpower Ready!","icon":"ability_rogue_hungerforblood"}, {"id":70164,"name":"Rune of the Nerubian Carapace","icon":"inv_sword_61"}, {"id":70550,"name":"Leggings of Woven Death","icon":"inv_pants_cloth_34"}, {"id":70551,"name":"Deathfrost Boots","icon":"inv_boots_cloth_25"}, diff --git a/sim/core/aura.go b/sim/core/aura.go index da704ae456..c6aefab02e 100644 --- a/sim/core/aura.go +++ b/sim/core/aura.go @@ -325,6 +325,9 @@ func (at *auraTracker) GetAura(label string) *Aura { } return nil } +func (at *auraTracker) GetAuras() []*Aura { + return at.auras +} func (at *auraTracker) GetAuraByID(actionID ActionID) *Aura { for _, aura := range at.auras { if aura.ActionID.SameAction(actionID) { diff --git a/sim/core/debuffs.go b/sim/core/debuffs.go index 6d089a6008..0d631f6341 100644 --- a/sim/core/debuffs.go +++ b/sim/core/debuffs.go @@ -429,7 +429,7 @@ func GiftOfArthasAura(target *Unit) *Aura { func MangleAura(target *Unit) *Aura { return bleedDamageAura(target, Aura{ Label: "Mangle", - ActionID: ActionID{SpellID: 33876}, + ActionID: ActionID{SpellID: 48566}, Duration: time.Minute, }, 1.3) } diff --git a/tools/database/gen_db/main.go b/tools/database/gen_db/main.go index 7bbb0ab166..d3c834c53b 100644 --- a/tools/database/gen_db/main.go +++ b/tools/database/gen_db/main.go @@ -9,6 +9,7 @@ import ( "os" "strings" + "github.com/wowsims/wotlk/sim" "github.com/wowsims/wotlk/sim/core" "github.com/wowsims/wotlk/sim/core/proto" _ "github.com/wowsims/wotlk/sim/encounters" // Needed for preset encounters. @@ -133,6 +134,12 @@ func main() { } } + for _, spellIds := range GetAllRotationSpellIds() { + for _, spellId := range spellIds { + db.AddSpellIcon(spellId, spellTooltips) + } + } + atlasDBProto := atlaslootDB.ToUIProto() db.MergeZones(atlasDBProto.Zones) db.MergeNpcs(atlasDBProto.Npcs) @@ -393,3 +400,144 @@ func getGlyphIDsFromJson(infile string) []*proto.GlyphID { } }) } + +func CreateTempAgent(r *proto.Raid) core.Agent { + encounter := core.MakeSingleTargetEncounter(0.0) + env, _, _ := core.NewEnvironment(r, encounter) + return env.Raid.Parties[0].Players[0] +} + +type RotContainer struct { + Name string + Raid *proto.Raid +} + +func GetAllRotationSpellIds() map[string][]int32 { + sim.RegisterAll() + + rotMapping := []RotContainer{ + {Name: "feral", Raid: core.SinglePlayerRaidProto(core.WithSpec(&proto.Player{ + Class: proto.Class_ClassDruid, + Equipment: &proto.EquipmentSpec{}, + TalentsString: "-503202132322010053120230310511-205503012", + }, &proto.Player_FeralDruid{FeralDruid: &proto.FeralDruid{Options: &proto.FeralDruid_Options{}, Rotation: &proto.FeralDruid_Rotation{}}}), nil, nil, nil)}, + {Name: "balance", Raid: core.SinglePlayerRaidProto(core.WithSpec(&proto.Player{ + Class: proto.Class_ClassDruid, + Equipment: &proto.EquipmentSpec{}, + TalentsString: "5102233115331303213305311031--205003002", + }, &proto.Player_BalanceDruid{BalanceDruid: &proto.BalanceDruid{Options: &proto.BalanceDruid_Options{}, Rotation: &proto.BalanceDruid_Rotation{}}}), nil, nil, nil)}, + {Name: "guardian", Raid: core.SinglePlayerRaidProto(core.WithSpec(&proto.Player{ + Class: proto.Class_ClassDruid, + Equipment: &proto.EquipmentSpec{}, + TalentsString: "-503232132322010353120300313511-20350001", + }, &proto.Player_FeralTankDruid{FeralTankDruid: &proto.FeralTankDruid{Options: &proto.FeralTankDruid_Options{}, Rotation: &proto.FeralTankDruid_Rotation{}}}), nil, nil, nil)}, + {Name: "restodruid", Raid: core.SinglePlayerRaidProto(core.WithSpec(&proto.Player{ + Class: proto.Class_ClassDruid, + Equipment: &proto.EquipmentSpec{}, + TalentsString: "05320031103--230023312131502331050313051", + }, &proto.Player_RestorationDruid{RestorationDruid: &proto.RestorationDruid{Options: &proto.RestorationDruid_Options{}, Rotation: &proto.RestorationDruid_Rotation{}}}), nil, nil, nil)}, + {Name: "elemental", Raid: core.SinglePlayerRaidProto(core.WithSpec(&proto.Player{ + Class: proto.Class_ClassShaman, + Equipment: &proto.EquipmentSpec{}, + TalentsString: "0532001523212351322301351-005052031", + }, &proto.Player_ElementalShaman{ElementalShaman: &proto.ElementalShaman{Options: &proto.ElementalShaman_Options{}, Rotation: &proto.ElementalShaman_Rotation{}}}), nil, nil, nil)}, + {Name: "enhance", Raid: core.SinglePlayerRaidProto(core.WithSpec(&proto.Player{ + Class: proto.Class_ClassShaman, + Equipment: &proto.EquipmentSpec{}, + TalentsString: "053030152-30405003105021333031131031051", + }, &proto.Player_EnhancementShaman{EnhancementShaman: &proto.EnhancementShaman{Options: &proto.EnhancementShaman_Options{}, Rotation: &proto.EnhancementShaman_Rotation{}}}), nil, nil, nil)}, + {Name: "restosham", Raid: core.SinglePlayerRaidProto(core.WithSpec(&proto.Player{ + Class: proto.Class_ClassShaman, + Equipment: &proto.EquipmentSpec{}, + TalentsString: "-3020503-50005331335310501122331251", + }, &proto.Player_RestorationShaman{RestorationShaman: &proto.RestorationShaman{Options: &proto.RestorationShaman_Options{}, Rotation: &proto.RestorationShaman_Rotation{}}}), nil, nil, nil)}, + {Name: "hunter", Raid: core.SinglePlayerRaidProto(core.WithSpec(&proto.Player{ + Class: proto.Class_ClassHunter, + Equipment: &proto.EquipmentSpec{}, + TalentsString: "-015305101-5000032500033330532135301311", + }, &proto.Player_Hunter{Hunter: &proto.Hunter{Options: &proto.Hunter_Options{}, Rotation: &proto.Hunter_Rotation{}}}), nil, nil, nil)}, + {Name: "mage", Raid: core.SinglePlayerRaidProto(core.WithSpec(&proto.Player{ + Class: proto.Class_ClassMage, + Equipment: &proto.EquipmentSpec{}, + TalentsString: "23000513310033015032310250532-03-023303001", + }, &proto.Player_Mage{Mage: &proto.Mage{Options: &proto.Mage_Options{}, Rotation: &proto.Mage_Rotation{}}}), nil, nil, nil)}, + {Name: "healingpriest", Raid: core.SinglePlayerRaidProto(core.WithSpec(&proto.Player{ + Class: proto.Class_ClassPriest, + Equipment: &proto.EquipmentSpec{}, + TalentsString: "0503203130300512301313231251-2351010303", + }, &proto.Player_HealingPriest{HealingPriest: &proto.HealingPriest{Options: &proto.HealingPriest_Options{}, Rotation: &proto.HealingPriest_Rotation{}}}), nil, nil, nil)}, + {Name: "shadow", Raid: core.SinglePlayerRaidProto(core.WithSpec(&proto.Player{ + Class: proto.Class_ClassPriest, + Equipment: &proto.EquipmentSpec{}, + TalentsString: "05032031--325023051223010323151301351", + }, &proto.Player_ShadowPriest{ShadowPriest: &proto.ShadowPriest{Options: &proto.ShadowPriest_Options{}, Rotation: &proto.ShadowPriest_Rotation{}}}), nil, nil, nil)}, + {Name: "rogue", Raid: core.SinglePlayerRaidProto(core.WithSpec(&proto.Player{ + Class: proto.Class_ClassRogue, + Equipment: &proto.EquipmentSpec{}, + TalentsString: "00532000523-0252051050035010223100501251", + }, &proto.Player_Rogue{Rogue: &proto.Rogue{Options: &proto.Rogue_Options{}, Rotation: &proto.Rogue_Rotation{}}}), nil, nil, nil)}, + {Name: "warrior", Raid: core.SinglePlayerRaidProto(core.WithSpec(&proto.Player{ + Class: proto.Class_ClassWarrior, + Equipment: &proto.EquipmentSpec{}, + TalentsString: "302023102331-305053000520310053120500351", + }, &proto.Player_Warrior{Warrior: &proto.Warrior{Options: &proto.Warrior_Options{}, Rotation: &proto.Warrior_Rotation{}}}), nil, nil, nil)}, + {Name: "protwarrior", Raid: core.SinglePlayerRaidProto(core.WithSpec(&proto.Player{ + Class: proto.Class_ClassWarrior, + Equipment: &proto.EquipmentSpec{}, + TalentsString: "2500030023-302-053351225000012521030113321", + }, &proto.Player_ProtectionWarrior{ProtectionWarrior: &proto.ProtectionWarrior{Options: &proto.ProtectionWarrior_Options{}, Rotation: &proto.ProtectionWarrior_Rotation{}}}), nil, nil, nil)}, + {Name: "holypally", Raid: core.SinglePlayerRaidProto(core.WithSpec(&proto.Player{ + Class: proto.Class_ClassPaladin, + Equipment: &proto.EquipmentSpec{}, + TalentsString: "50350151020013053100515221-50023131203", + }, &proto.Player_HolyPaladin{HolyPaladin: &proto.HolyPaladin{Options: &proto.HolyPaladin_Options{}, Rotation: &proto.HolyPaladin_Rotation{}}}), nil, nil, nil)}, + {Name: "protpally", Raid: core.SinglePlayerRaidProto(core.WithSpec(&proto.Player{ + Class: proto.Class_ClassPaladin, + Equipment: &proto.EquipmentSpec{}, + TalentsString: "-05005135200132311333312321-511302012003", + }, &proto.Player_ProtectionPaladin{ProtectionPaladin: &proto.ProtectionPaladin{Options: &proto.ProtectionPaladin_Options{}, Rotation: &proto.ProtectionPaladin_Rotation{}}}), nil, nil, nil)}, + {Name: "ret", Raid: core.SinglePlayerRaidProto(core.WithSpec(&proto.Player{ + Class: proto.Class_ClassPaladin, + Equipment: &proto.EquipmentSpec{}, + TalentsString: "050501-05-05232051203331302133231331", + }, &proto.Player_RetributionPaladin{RetributionPaladin: &proto.RetributionPaladin{Options: &proto.RetributionPaladin_Options{}, Rotation: &proto.RetributionPaladin_Rotation{}}}), nil, nil, nil)}, + {Name: "warlock", Raid: core.SinglePlayerRaidProto(core.WithSpec(&proto.Player{ + Class: proto.Class_ClassWarlock, + Equipment: &proto.EquipmentSpec{}, + TalentsString: "2350002030023510253500331151--550000051", + }, &proto.Player_Warlock{Warlock: &proto.Warlock{Options: &proto.Warlock_Options{}, Rotation: &proto.Warlock_Rotation{}}}), nil, nil, nil)}, + {Name: "dk", Raid: core.SinglePlayerRaidProto(core.WithSpec(&proto.Player{ + Class: proto.Class_ClassDeathknight, + Equipment: &proto.EquipmentSpec{}, + TalentsString: "-320043500002-2300303050032152000150013133051", + }, &proto.Player_Deathknight{Deathknight: &proto.Deathknight{Options: &proto.Deathknight_Options{}, Rotation: &proto.Deathknight_Rotation{}}}), nil, nil, nil)}, + {Name: "tankdk", Raid: core.SinglePlayerRaidProto(core.WithSpec(&proto.Player{ + Class: proto.Class_ClassDeathknight, + Equipment: &proto.EquipmentSpec{}, + TalentsString: "005510153330330220102013-3050505100023101-002", + }, &proto.Player_TankDeathknight{TankDeathknight: &proto.TankDeathknight{Options: &proto.TankDeathknight_Options{}, Rotation: &proto.TankDeathknight_Rotation{}}}), nil, nil, nil)}, + } + + ret_db := make(map[string][]int32, 0) + + for _, r := range rotMapping { + f := CreateTempAgent(r.Raid).GetCharacter() + + spells := make([]int32, 0, len(f.Spellbook)) + + for _, s := range f.Spellbook { + if s.SpellID != 0 { + spells = append(spells, s.SpellID) + } + } + + for _, s := range f.GetAuras() { + if s.ActionID.SpellID != 0 { + spells = append(spells, s.ActionID.SpellID) + } + } + + ret_db[r.Name] = spells + } + return ret_db +} diff --git a/tools/database/overrides.go b/tools/database/overrides.go index 0b313f6835..ebca73ca82 100644 --- a/tools/database/overrides.go +++ b/tools/database/overrides.go @@ -545,7 +545,7 @@ var SharedSpellsIcons = []int32{ 16862, 55487, - 33876, + 48566, 46855, 57393, @@ -579,6 +579,14 @@ var SharedSpellsIcons = []int32{ 53408, 11374, + 15235, + + 27013, + + 58749, + 49071, + + 30708, } // If any of these match the item name, don't include it. diff --git a/ui/core/components/icon_inputs.ts b/ui/core/components/icon_inputs.ts index cd4603ede8..c7511a21aa 100644 --- a/ui/core/components/icon_inputs.ts +++ b/ui/core/components/icon_inputs.ts @@ -206,7 +206,7 @@ export const AttackPowerDebuff = InputHelpers.makeMultiIconInput([ ], 'Atk Pwr'); export const BleedDebuff = InputHelpers.makeMultiIconInput([ - makeBooleanDebuffInput(ActionId.fromSpellId(33876), 'mangle'), + makeBooleanDebuffInput(ActionId.fromSpellId(48564), 'mangle'), makeBooleanDebuffInput(ActionId.fromSpellId(46855), 'trauma'), makeBooleanDebuffInput(ActionId.fromSpellId(57393), 'stampede'), ], 'Bleed'); diff --git a/ui/protection_warrior/inputs.ts b/ui/protection_warrior/inputs.ts index d05140ba08..5c51790c84 100644 --- a/ui/protection_warrior/inputs.ts +++ b/ui/protection_warrior/inputs.ts @@ -29,7 +29,7 @@ export const ShoutPicker = InputHelpers.makeSpecOptionsEnumIconInput