Order of Operations Rules

Hey folks, I just had an interaction I don’t understand, and now I have some questions.

My opponen had 8 health and 2 Frost Sculptures (2/4 Deathrattle: Gain 4 armor.) I played Lynessa (doubles spells) and Corrupted Awakening (5 damage to all enemies). My Enemy died, and then got the armor.

I thought, effects trigger in the order in wich the minions were summoned. So my logic would be:

  1. Corrupted Awakening kills the Sculptures. Opponent is at 3 health.
  2. Sculptures Deathrattles triggers. Opponent gets 8 armor.
  3. Lynessa triggers. Corrupted Awakening casts again. Opponent survives with 3 health and 3 armor.

Why did Lynessa trigger before the Sculptures. What is the general order of operations?

1 Like

That’s a counterintuitive interaction, because that’s how the code just works. I believe the true reason is it saves CPU cycles at their servers’ data center because it appears more simplistic to work than way than calculate everything more intuitively.

1 Like

To directly answer your question -
The rule is -

Deathrattles and death-related effects take place after damage has been exchanged and minions/weapons/locations have been destroyed and removed from the board. This prevents Deathrattles from acting upon other minions which were destroyed in the same combat. It also prevents several simultaneous events from acting upon consequences of Deathrattles or other triggered events.

Damage was applied, then deathrattles happened, thus the result you experienced. This is 100% by design.

3 Likes

This is just because you cast a doubled spell
Effects that are multipled unfold all in a chain before their consequences apply
You would have noticed that the frost sculptures didn’t leave the board after the first cast of corrupted awakening, they remained on the board at -1 health
If you did cast a non-aoe, non-targetted spell, it couldn’t have hit those -1 health minion that are now tagged as already dead
but since it was an AOE, the second cast of corrupted awakening dealt 5 additional damage to them, putting them at -6
Only after the second cast does the game resolve the consequences of the spell, and finally removes the minions and triggers their deathrattles
Because since things don’t really happen simultanesouly but in a specific order, the game waits for the end of the event “cast a spell”, which itself contains another cast of a spell, before going on to the next event

1 Like

Also the amount of armor you have doesn’t matter when your health is zero. This is why the azurite snake worked to kill heroes even when they had armor. You can have 1000 armor, but if your health is reduced to zero by some effect, or if your health is zero or less and you gain armor afterward, you still lose the game.

Lifesteal proccing at the same instance as your health would go below zero can bring it into the positive and prevent dying. But armor cannot.

2 Likes

Thank you!

So if I understand correctly, their is a priority system. Similar to MTG, where Instants are faster than Sorceries, or YGO where Traps are faster than Spells. Deathrattles have a reduced priority.

This makes me wonder: Are their other priority rules like this? Is their a system? (Like spellspeed in YGO)

I think what you understood is incorrect, or at least not exactly correct
The priority order in hearthstone is quite simple (on paper).

  • Events always unfold in the order they arrived
  • Events unfold one after the other
  • Events wait for the end of the previous event before unfolding
    • Exception given to effect that can explicitely trigger during another event
    • Another exception given to specific wordings that allow a pause in the current event for other events to trigger

There’s only a single priority order that doesn’t follow the event order (that I can think of) and that’s that reborn always trigger after deathrattles
The remaining are very specific exceptions

In your case, it’s not that deathrattles have a lower priority, it’s that the minions killed by your spell have to wait for the end of your spell to actually die, because they can’t die during your spell

Cards that would have behaved differently :

Rare · Spell · Knights of the Frozen Throne · Deal 1 damage to all minions. If any die, cast this again.

In the case of defile, each subsequent cast of defile is considered a separate event, to allow the death of minions in-between each cast, allowing them to trigger their deathrattles

Rare · Spell · Showdown in the Badlands · Deal 1 damage to all minions, three times. Costs (2) less if you cast a spell last turn.

In the case of aftershock, the three times also pause the event in-between each instance of damage

double casting a spell though, does not allow for that pause
But here’s also a different behavior based on the minion :

Common · Minion · The Boomsday Project · Whenever this minion takes damage, gain 2 Armor.

The whenever mechanic allows the effect of the minion to triger instantly, interrupting the current event
Corrupted Awakening would have dealt 5 damage to the ennemy hero (because it’s the first ennemy that entered the board), then 5 damage to the first Rover, they would have gained 2 armor, then 5 damage to the second rover, they would have gained 2 additional armor
Fun fact : the rovers would have still not died at the end of the first cast, the second cast would have dealt them 5 more damage and trigger their 2 armor even though they already had negative health

Last example : the whenever mechanic is different from the After mechanic.

Legendary · Minion · March of the Lich King · After a friendly minion dies, gain its Deathrattle.

In this case, the devourer of souls would have waited for after the cast of your spells to gain the deathrattles of the frost sculptures
And if it had died from the spell, then it wouldn’t have gained them at all, since it wouldn’t be alive for it

and the events that repeat other events, in what order do they repeat them?
I think of the druid/mage tourist, the demon that replays demons, or the hunter’s beast that repeats the plays of the previous turn.
sometimes it seems like they go backwards: from the last card played to the first, sometimes it seems random.

Such effects are in a random order most of, if not all, the time

1 Like

This is the explanation, mostly.

If multiple effects are happening, minion death is not checked until all of the effects have resolved.

There are exceptions, but that is the general rule. Dead minions are not removed from the board, and thus deathrattles will not trigger, until everything else has resolved.

1 Like

Unfortunately, the happens twice mechanic in hearthstone is more than a little inconsistent when it comes to gaps existing allowing for deathrattles to resolve or not.

For example: your battlecries trigger twice do NOT leave that gap. A double trigger Aessina would not have given room for the armor between the two waves of damage.

A doubled carnivorous cubicle battlecry will record the minion twice (and summon 2x of it every turn).

But casting spells again does leave the gap between spell 1 and 2. Casting death roll doubled fails, because after the first one is finished fully resolving, the minion is dead, death effects triggered, and the minion isn’t there for the second death roll cast.

Since Lynessa is a spell doubler, that gap for deathrattles will exist.

1 Like

Well, it didn’t though.

Oh, I misread, then yeah, lynessa also isn’t giving a deathrattle gap the same way doubled battlecries don’t.

But double cast death roll will still not work.