Trinitycore: [3.3.5] Shadowform priest

Created on 31 Oct 2016  路  11Comments  路  Source: TrinityCore/TrinityCore

Description: if spam change form , stop cooldown and can't back form.
must logout for back form .

Current behaviour: (Tell us what happens.) stop cooldown for spam form before 1.5 sec

Expected behaviour: (Tell us what should happen instead.) 1.5 sec time coold down.

Branch(es): 3.3.5 / master (Tell us which branch(es) this issue affects.)

TC rev. hash/commit: 697147a596515c82817a161e7a9a5f07cdf9a8f3

TDB version: 62

Operating system: win 10

Branch-3.3.5a Comp-Core Feedback-FixHack Sub-Spells

All 11 comments

657 fixed by 6d07fbf07c9f1387644d8ec0c1905edc838b1273

teank you ariel- test code ,
no again lock form :( for spam form

Confirm
Steps to reproduce the problem:

  1. Cast [Flash Heal]
  2. Before cast finish spam Shadowform
    Try 2 or 3 time Shadowform will be Lock.
    I use this hacky fix

I test other spell like [Lesser Heal], [Heal], [Greater Heal] no problem found, just when using [Flash Heal].

Ok, tagging @mik1893 since he did the initial fix.

As I told Mik, that commit doesn't fix the problem... only makes it occur less often.
And doesn't fix MD... still stops working if MD target is out of range.

Same thing still happens with the Raise Ghoul Death Knight spell, albeit very rarely. Haven't found a reliable way to reproduce that yet.

Confirm.
While in combat and try 2 or 3 time use Shadowform - will be Lock.

Confirmed in latest 335, looking into it.

This is a hack and I am not sure if it will break anything else, needs proper testing.

diff --git src/server/game/Spells/Spell.cpp src/server/game/Spells/Spell.cpp
index 03d45aa223..6efafeff21 100644
--- src/server/game/Spells/Spell.cpp
+++ src/server/game/Spells/Spell.cpp
@@ -4909,8 +4909,10 @@ SpellCastResult Spell::CheckCast(bool strict, uint32* param1 /*= nullptr*/, uint
         {
             if (m_triggeredByAuraSpell)
                 return SPELL_FAILED_DONT_REPORT;
-            else
+            else if (m_castItemEntry)
                 return SPELL_FAILED_NOT_READY;
+            else
+                return SPELL_FAILED_DONT_REPORT;
         }
     }


here is spell id for future reference:
https://classicdb.ch/?spell=15473

@Langerz82 Pr it.

Confirm
Steps to reproduce the problem:

  1. Cast [Flash Heal]
  2. Before cast finish spam Shadowform
    Try 2 or 3 time Shadowform will be Lock.
    I use this hacky fix

I test other spell like [Lesser Heal], [Heal], [Greater Heal] no problem found, just when using [Flash Heal].

That's the way to go about it really, just use IsCooldownStartedOnEvent() instead of ID checking
edit: or check for attribute - disabled while active

Was this page helpful?
0 / 5 - 0 ratings

Related issues

DDuarte picture DDuarte  路  3Comments

funjoker picture funjoker  路  3Comments

besplash picture besplash  路  3Comments

chilito picture chilito  路  3Comments

cbcs picture cbcs  路  3Comments