"Dispellable By Me" is does not encapsulate all shaman dispellables in WOTLK #1124


  • Fixed
Closed
  • xgooy created this issue Oct 24, 2022

    What version of Grid2 and game type (classic or retail) are you using ?

      WOTLK Classic, Grid2 version 2.0.54-wrath

     

    What game client version (windows or mac) and language are you using ?

      Windows

     

    What steps will reproduce the problem?

      1. Be a shaman.

      2. Have a debuff status with "Dispellable By Me" filter on.

      3. Have an indicator that shows the debuff status. In my case, I have it showing as a border.

      3. Have someone in the party get a disease.

      Expected: Border shows up when party member has a disease.

      Actual: Border does not show up. I suspect the same happens for curses.

      
    Did you try having Grid2 as the only enabled addon and everything else disabled?

      No

     

    Was it working in a previous version? If yes, which was the last good one?

      Was working in TBC.

      

    Do you have an error log of what happened? If you don't see any errors, make sure that error reporting is enabled (`/console scriptErrors 1`) or install [BugSack](https://mods.curse.com/addons/wow/BugSack).

      N/A

      

    Please provide any additional information below.

      In WOTLK, shamans lose the spell "Cure Disease" (spellId=2870). Instead, it gets wrapped into the old "Cure Poison" (spellId=526), which is now renamed to "Cure Toxins" (spellId=526). Cure Toxins now allows the shaman to remove 1 poison AND 1 disease. In addition, there's a new talent in the resto tree that allows shamans to remove 1 poison, 1 disease, AND 1 curse. This spell is called "Cleanse Spirit" (spellId=51886). While I haven't tested this, theoretically we can make some modifications to the classic dispellable function in GridUtils.lua and it would work for WOTLK. I'm guessing it would be slightly broken in SoM though because spell 526 only removes poison in that world...

     

    elseif class == 'SHAMAN' then
       func = function()
         dispel.Disease = IsPlayerSpell(2870) or IsPlayerSpell(526) or IsPlayerSpell(51886)
         dispel.Poison = IsPlayerSpell(526) or IsPlayerSpell(51886)
         dispel.Curse = IsPlayerSpell(51886)
       end

     

  • michaelsp closed issue Oct 30, 2022
  • michaelsp added a tag Fixed Oct 30, 2022

To post a comment, please login or register a new account.