October Hearthstone Game Mechanics Update
In Hearthstone's October Patch we're getting an update to a couple of game mechanics. The goal behind these changes is to make the game work more intuitively. Core gameplay is not being changed, only rare edge-cases.
Ultimately, triggers will now be validated before they activate, so new triggers introduced onto the board during a chain of events will no longer fire. Watch the video below or read the huge informative text by Josh Durica and Daxxarri if you want to get more in-depth into the changes.
Josh Durica on Evolve
A change in the future will ensure Evolve effects aren't going to activate any summon triggers.
Quote from Josh DuricaThis mechanic change actually does not affect the Apothecary/Thrall interaction because that’s due to a different issue involving evolve effects activating certain summon triggers. However, we ARE specifically changing Apothecary in the next patch, so that it will no longer trigger off evolve effects.
Additionally, while it won’t make the next patch, we’re planning to make sure evolve effects won’t activate any summon triggers in the future.
Hearthside Chat with Josh Durica: Game Mechanics Update
Join Hearthstone Gameplay Engineer Josh Durica as he gives you an overview of what to expect from the game mechanics changes coming in Hearthstone’s October 2017 update!
In-Depth Explanation of Changes
Quote from Josh Durica and DaxxarriHearthstone has a lot going on under the hood. The cause-and-effect relationships when cards are played are relatively straightforward and easy to predict, but because of the way certain events are timed, some very surprising things can happen in rare circumstances. We want cards to work the way that you guess they might—in other words, we want the game to work intuitively.
In the upcoming patch, we’re making some changes in pursuit of that goal. We want Hearthstone to continue to be strategically deep: a game of careful choices, calculated risks, and exciting events. So we want to be extra clear that this update isn’t a change in depth; instead it’s one step in an ongoing effort improve Hearthstone’s mechanics.
Hearthstone’s core gameplay won't change, but what will change are some rare edge-cases.
Please be aware: what follows is a detailed look at Hearthstone’s mechanics by Hearthstone Gameplay Engineer Josh Durica. If you want to delve into the nitty-gritty details regarding how this change will work, read on.
First, A Glossary
Event
Events are interactions that occur throughout gameplay that can cause triggers to activate when they happen.
Example Events:
- Whenever a Card is Played
- After a Card is Played
- Deathrattle (When this minion dies)
- Whenever a Minion Takes Damage
- At the End of Your Turn
Trigger
A trigger has two parts: an event (usually starts with “Whenever”, “After”, or “At”), and an effect. Sometimes triggers can also have a condition (usually noted with “if” or “while”, but sometimes noted by qualifiers like “your”).
Example triggers:
- Whenever you cast a spell, gain +1 Attack.
- After you cast a spell, deal 1 damage to ALL minions.
- At the end of your turn, give another random friendly minion +1 Health.
- If you control a Secret at the end of your turn, gain +2/+2.
Zone
In Hearthstone, there are three zones where triggers can happen, and they happen in order: First, any triggers in the Battlefield, then those that occur in a player’s Hand, and finally those that belong to cards in a player’s Deck.
Sequence
Whenever an action is taken, Hearthstone executes a sequence of steps to resolve what happens.
Here’s a simplified example sequence:
- ACTION: A card is played (this begins the sequence)
- EVENT: Whenever A Card is Played
o Whenever A Card is Playedtriggers
resolve
- Card ability activates
- EVENT: After a Card is Played event occurs
o After a Card is Playedtriggers
resolve
Here’s what that sequence would look like using actual cards, if you had a Questing Adventurer and a Flamewaker on the board, and then played Frostbolt:
- ACTION: Frostbolt is played (this begins the sequence)
- EVENT: Whenever a Card is Played triggers resolve
o Questing Adventurer gains +1/+1
- Frostbolt’s text resolves: Deal 3 damage and freeze
- EVENT: After a Card is Played triggers resolve
o Flamewaker shoots two missilesThis is a simple example, but a sequence can incorporate many events and triggers.
Keep in mind that dealing damage, destroying a minion, and other things can interrupt sequences with new sequences, like in this more detailed example:
- ACTION: Frostbolt is played (this begins the sequence)
- EVENT: Whenever a Card is Played triggers resolve
o Questing Adventurer gains +1/+1
- Frostbolt’s text resolves: Deal 3 damage and freeze
o NEW SEQUENCE: Damage dealtEVENT:
Whenever a Minion Takes Damage triggers
resolve
- EVENT: After a Card is Played triggers resolve
o Flamewaker shoots 1 missile
- NEW SEQUENCE: Damage dealt
- EVENT: Whenever a Card Takes Damage triggers resolve
o Flamewaker shoots another missile
- NEW SEQUENCE: Damage dealt
- EVENT: Whenever a Card Takes Damage triggers resolve
In Pursuit of the Goal
If you watched the video in our recent blog post, then you saw two different examples of cards triggering in counter-intuitive ways because they weren’t present when the sequence that activated them took place. That sets the stage for the primary goal we wanted to accomplish with these changes:
If you want to trigger off something, you need to be present and valid when that something first happens.
A more technical way to say this is: In order for a trigger to activate from a sequence, it needs to be present and valid at the time the sequence began.
This means any card featuring a trigger that appears in the middle of a sequencecan’t activate during that sequence. So, when you play a card (or when a card is destroyed, or an attack occurs, etc.) you only need to consider what is currently on the board instead of guessing what the board state might be in the middle of the sequence. The Mindgames + Wild Pyromancer interaction showcased in the video is an example of an interaction improved by this change.
The valid qualifier is more subtle, but equally important. Before any trigger can activate, it needs to be validated. Each trigger has its own specific validation step, which allows the trigger to filter when it should and shouldn’t activate. For example, the Whenever a Card is Played event occurs when any card of any type (Minion, Spell, Weapon, etc.) is played. However, we want a card like Flamewaker to only triggerwhen a friendly spell is cast, so the Flamewaker’s validation step checks the card type and controller of the card played. In other words, Flamewaker’s trigger is only valid if the card played was a spell cast by Flamewaker’s controller.
Before our changes, we would validate triggers whenever their related eventoccurred, even if that was in the middle of the sequence. After the mechanics update, all triggers are validated when the sequence begins, and then they are only allowed to activate if they were valid from the start.
For further insight, let’s look at a bug that will be addressed by the update:
Currently, if you have a Djinni of Zephyrs on the board and cast Entomb on an enemy minion, your Djinni of Zephyrs will trigger, sending itself back to your deck. Not great for you or the Djinni! Djinni of Zephyrs triggers off the After a Card is Played event, and his validation step should only pass if the card played was a spell cast on a different friendly minion. Entomb is a spell, but it was cast on an enemy minion, so why does Djinni trigger?
Remember: the After a Card is Played event occurs after the ability on the played card resolves. In this case, that card is Entomb, and its ability moves the enemy minion into your deck. When the enemy minion enters your deck, it becomes a friendly minion. So, by the time the After a Card is Played event occurs, Djinni’s trigger is valid, because the minion is now friendly.
After the mechanics update, Djinni’s trigger is validated at the beginning of the sequence when the enemy minion is still on the battlefield, and because the triggerisn’t valid at that point (since Entomb counts as being cast on an enemy minion), it’s prevented from triggering when the After a Card is Played event occurs.
There is one final change we should mention, which is a tweak to when we validate triggers across different zones. Currently, the order in which triggers are validatedand activated looks like this:
1) Validate Player 1 Battlefield triggers and then activate those that are valid.
2) Validate Player 1 Hand triggers and then activate those that are valid.
3) Validate Player 1 Deck triggers and then activate those that are valid.
4) Validate Player 2 Battlefield triggers and then activate those that are valid.
5) Validate Player 2 Hand triggers and then activate those that are valid.
6) Validate Player 2 Deck triggers and then activate those that are valid.
That approach meant new triggers could appear in the middle of a sequence and still be activated, and a trigger’s validation could even be affected by previous triggers’activations. The Bolvar Fordragon/Spirit Echo interaction detailed in the video was an example of a weird interaction caused by this.
After the update, the order now looks like this:
1) Validate all Battlefield triggers
2) Validate all Hand triggers
3) Validate all Deck triggers
4) Activate Player 1 valid Battlefield triggers
5) Activate Player 1 valid Hand triggers
6) Activate Player 1 valid Deck triggers
7) Activate Player 2 valid Battlefield triggers
8) Activate Player 2 valid Hand triggers
9) Activate Player 2 valid Deck triggers
This means all triggers are validated before any trigger is allowed to activate. Since all triggers are validated using the same game state, then triggers that appear in the middle aren’t allowed to fire. It’s important to note that the order in which triggersare activated is unchanged.
Here are some more examples of sequences and their results before and after the mechanics update:
Card Played
Example Interaction:
Player 1 has a Mad Scientist on the board, and a Mirror Entity in their deck.
Player 2 plays Stampeding Kodo.
Before Update
1) Stampeding Kodo kills Mad Scientist.
2) Mad Scientist pulls Mirror Entity into play.
3) Mirror Entity triggers, copying Stampeding Kodo.
After Update
1) Stampeding Kodo kills Mad Scientist.
2) Mad Scientist pulls Mirror Entity into play.
3) Mirror Entity does NOT trigger, because it did not exist when Stampeding Kodo was played.
Minion Destroyed
Example Interaction:
Player 1 has a Piloted Sky Golem and a Wisp on the board (played in that order).
Player 1 plays Deathwing.
The Piloted Sky Golem spawn a Cult Master from its Deathrattle.
Before Update:
The Cult Master's power triggers off of the Wisp's death, and Player 1 draws a card.
After Update:
The Cult Master does not trigger off the Wisp's death, because it wasn’t present to see the Wisp destroyed.
Summon Minion
Example Interaction:
Player 1 has Starving Buzzard and Rotface on the board.
Player 1 also has a Flame Leviathan on top of their deck.
Player 1 plays Savannah Highmane.
Starving Buzzard triggers off of Savannah Highmane, causing Player 1 to draw Flame Leviathan.
Flame Leviathan triggers, dealing 2 damage to all characters.
Rotface triggers off the damage and summons Spiritsinger Umbra.
Before Update:
Spirit Singer Umbra triggers off the Savannah Highmane and summons two hyenas.
After Update:
Spiritsinger Umbra does not trigger off the Savannah Highmane, because she was not present when Savannah Highmane was played.
Thanks for Reading!
Of course, our work to make Hearthstone better won’t stop here!
Like the majority of odd interactions, each of these situations represents an edge case. While this update will address every situation we illustrated (among many others), there are still bound to be more. Keep in mind these are substantial changes to the core systems that underlie Hearthstone! We need to make them incrementally, and with the utmost care, but you can rest assured that we’ll continue to make improvements over time.
Bolvar Shaman now out of meta. :(
Yay! The removal of Mad Scientist's stupid interactions are the ones I'm particularly excited for.
I'm fascinated by the video. Not because of the details within, but the fact that it even exists alongside a blog post to begin with. It may not seem like it, but time and money were budgeted to create this seemingly innocuous video about under-the-hood mechanic changes. This tells me that they've been working on a LOT more under-the-hood changes big and small that we aren't aware of yet.
This is setting the stage for something big in the future. There's no way this was done just for the sake of it.
So great to see a blue post explaining HS rules in depth. Also, these changes seem good. More technically complicated, but less mental strain to figure out what is going to happen when you're planning a turn.
I still remember how Toast once lost an exact lethal because of getting the Pyro from the Silvermoon Portal.
Could you share a link for that? Couldn't find it :/
I think that what they did there is really a good job. They're clearing all the "that makes no sense, but it works like this" nonsense. Sure it will take time, but there is no reason to avoid doing it because "it takes time" or "It always worked like this". I also really appreciate the fact that they made this video with a HS programmer talking about it, so all people can understand what is happening. For too long they made "short patch notes" that show nothing on what really changed, people always had to figure out what the real "patch note" was by playing the game, which is not really good. Please continue doing this job and THIS type of videos that explain what changed with a patch and thanks for your work on this game.
Does this stop EVERY stupid interaction with Unlicensed Apothecary? It should, right? So no more Krul the Unshackled or Bloodreaver Gul'dan self otkos... that would be sweet!
EDIT: Checked on Reddit. It will not give this imp any license for viability. Darn...
I was thinking an answer for you but my brain burned.
Lol. Took some bad medicine, under the counter? I was just postulating that if he needs to be on the board for his triggers to go off, then krul or reaver summoning him should not activate his effect, and in that case, demonlock can finally use this otherwise godawful card.
Yes. This fixes it. [card]Unlicensed Apothecary[/card] would need to already be on the board when you play [card]Krul the Unshackled[/card] or [card]Bloodreaver Gul'dan[/card] for your hero to take the 5dmg per summoned minion. If Unlicensed Apothecary spawns from [card]Krul the Unshackled[/card] or [card]Bloodreaver Gul'dan[/card] your Hero will not take the 5dmg per minion.
Thank Sargeras!
Similar to Magic, if multiple things enter the battlefield AT THE SAME TIME, they will all see each other entering so if they have "when a creature enters... blah blah".
I'm pretty sure they are all summoned at once. And if that's how it works (correct me if I'm wrong), I think hearthstone should work where Unlicensed Apothecary will NOT trigger because it was not already on the field to see those summons. It is part of the group being summoned. Once it's on the field, summons trigger timing has already passed.
You watched the video right?
Anyone knows how this will, if at all, affect Defile?
Defile already pauses and does all trigger checks in its own chain. Should not have any effect. The worst that would happen is if say Knife Juggler was pulled from Piloted Shredder while Imp Gang Boss was on the field, you will miss 1 damage.
Added an update from Josh on reddit about Evolve.
Okay