Trinitycore: Broken spell auras logic

Created on 12 Apr 2018  路  13Comments  路  Source: TrinityCore/TrinityCore

Description:

Now spell auras totally broken. Part with static applications.

Current behaviour:

Example one:

  • aoe spell with dispelable debuff
  • you cant dispel this spell from target with static applications
  • if you dispel aura from owner - all targets lost aura

Example two:

  • spell with speed and stackeble effect on caster, or target
  • if spell have speed - we always get exist aura and cant stack

Example three:

  • stackable aoe auras stacks on all targets at same time, and lost stacks from all targets

Other strange reports, but cant explain their here

Expected behaviour:

Need rework part with static applications. Lot of spells require single aura for single target, without static applications, in additional, part with speed check looks incorrect

Branch(es): 3.3.5

TC rev. hash/commit: any rew after #21395 or 1e25b21

Operating system: any

Branch-3.3.5a Comp-Core Priority-High Sub-Spells

Most helpful comment

Dispel Fixes:
https://github.com/TrinityCore/TrinityCore/issues/22051

Not sure it will fix all the above issues but its a start lol.

All 13 comments

Isnt better in issue to mention atleast 1 spell example?

@Faq Use filters in spellwork. But for first case: 32722

This a generic problem in logic. Without any spell examples, one aura + many static applications = bad idea (if applied for all spell auras)

I will try to explain this issue:
If 2 npcs casts the same spell and this spell will give the player a DOT/HOT that stacks, if the first npc apply its dots the second npc will remove them when it cast the same spell instead adding an new stack.

To reproduce the issue:
1- .npc add temp 16901
2- aggro and wait until getting 2 stacks of spell=32722
3- .npc add temp 16901 a second one
4- notice when the second npc casts 32722 you will loose all stacks and they will be replaced by the one from the second npc

According to lost-illusion this happen to spells with the same effect and not only the same ID

Fighting Anub'arak in Azjol'nerub I get a crash stating

CreateAuraApplication ASSERTION FAILED:
  !Aura->IsRemoved()

Same problem?

@ariel- we need you 馃槝

Dispel Fixes:
https://github.com/TrinityCore/TrinityCore/issues/22051

Not sure it will fix all the above issues but its a start lol.

Remaining issue: https://github.com/TrinityCore/TrinityCore/issues/21810#issuecomment-381397898
Same aura from different targets cannot stack.

no, that commit is nov 2018, the remaining issue is april 2018

https://github.com/TrinityCore/TrinityCore/blob/3.3.5/src/server/game/Spells/Auras/SpellAuras.cpp#L1942
My guess is this check is a bit too strict. We don't allow ANY aoe spell which is a DOT or a HOT to stack with itself if it is a different caster. That seems right for the usecase in the comment, however I would expect DoTs and HoTs to always allow stacking, or even periodic dummy spells too (I expect a few use case we are breaking with that strict check). Periodic energise probably not.
Anyone has some insight of how DoT and HoT aoe stacking works on retail ?

Remaining issue: #21810 (comment)
Same aura from different targets cannot stack.

@Killyana This still bug? I can't reproduce it.

Yes it gets fixed somehow

Was this page helpful?
0 / 5 - 0 ratings