Saturday 9 January 2016

Common Pitfalls for Hearthstone Designers

Hello everyone,

I'm back again this week with some thoughts about some of the cards I've posted myself, as well as I've seen posted by others that just don't work, or aren't good for the game. My intent here is to create a resource that can be referenced that explains some bad design patterns and why they are bad. The goal here, just like with my style guide, is to raise the quality of cards posted to /r/customhearthstone.

Let's get into it!




The Battlefield State

1. Creating minions for your opponent that can't attack


Aldor Peacekeeper is an interesting card. It reduces an enemy minion's Attack to 1. When I first looked at this I asked "Why not 0?" I see a lot of cards on the subreddit that indefinitely set an enemy minion's Attack to 0, permanently freezes the, or causes them to be unable to attack. When you think the situation through, there is a potential pitfall to allowing this.

As designers we have to consider the extreme consequences of the cards we design. When an opponent's minion cannot attack they begin to clog their battlefield. With other cards in the game like Duplicate, Echo of Medivh, and Chrommagus its possible to use the above card to completely lock down all 7 spots on the enemy's side of the Battlefield. When an enemy cannot play more minions, and cannot attack with the minions they have, they have reached a point of rage-quitting anger at the game. Yes, there are spells that can remove your own minions, but are you as a player going to be patient, in an otherwise unsolvable situation for a topdeck? The amount of aggravation caused is extreme.

The reason that Aldor sets a minion's Attack to one is so that this can never happen. This is why Aldor is a good card, and Snakecharmer is a card that should never be in the game. Aldor shows us one way we can avoid the pitfall, but there's another big one: make the effect temporary.

2. Creating unsolvable situations if a minion gains an ability


** Note: It's been pointed out to me that Immune minions lose Taunt. I definitely missed that interaction, but there are several other good (read "not wrong") examples in the reddit comments.


Lord Fancypants is a really cool, interesting minion! He lets you do all kinds of crazy things with your Immune minions. There's just one problem: If another minion gains Taunt, the only way he can be removed is with spells. So, you can use spells, that's not the worst thing in the world... but what if he also has Stealth? There are only a handful of spells (ie: Bouncing Blade, Twisting Nether, Poison Seeds) that can possibly deal with this threat. It just takes 3 cards for Rogue to set this up, and all but guarantee the win for you. Creating a gamestate where a player is guaranteed to win the game, it's just a matter of them grinding you down is also extremely frustrating to be in. No player should ever feel like they have to surrender a match.

The lesson here is when you're building cards, you need to consider what kind of conditions can be added to the board. 
  • Does it give an unfair advantage if it gains Taunt?
  • Does it give an unfair advantage if it gains Stealth?
  • Does it give an unfair advantage if another minion you control gains Taunt?

3. Creating weapons that have an ongoing effect that doesn't cost Durability



There's no reason to use the last attack from the Awesome Wand. There are very few methods of weapon removal in the game right now, so if you're a deck that wants Spell Damage, this is an all but permanent +1. Since there's no way to play around it, it in every way is better than a minion with the same effect. While there may be a point in the design space where these environmental effects become part of the game, that isn't now, and it most certainly shouldn't be achieved by having a weapon that never goes away. That's not what the Weapons spot is for.

So look at your weapon, especially if there is a persistent effect. Ensure there is a way for the Durability to decrease as that persistent effect is applied.

Permanent tempo destruction

4. Destroying enemy Mana Crystals


For this card, you're basically spending 6 mana to lose 4 turn's worth of stuff. The effect is symmetrical, so it's cool, right? 

Not really. If this is in your deck you're probably not playing any minions that cost more than 5, whereas your opponent most certainly will be. That means that they have to wait an extra 4 turns to play their 7 mana minion or spell that might have helped them win the game. By the time they can use a card in their deck, they're already dead. This is fine in aggro, where there are a number of solutions to mitigate the aggressive enemy deck, but there's no way to mitigate this card. Let's drill into this a little deeper:

When it comes down to it, the problem is not that enemy Mana Crystals are being destroyed, its that the enemy player isn't being given a choice or any ability to play around this card. It happens, and they have to deal with the consequences. With board clears you can choose not to play all your minions. With hard removal you can try to bait it out by playing less key minions. When you destroy Mana Crystals, you simply cannot play the thing you were going to play on curve the next turn and the turn after that and the turn after that.

When you look at a card like Loatheb, it has an extreme tempo disruption, but guess what: after one turn you're back to normal. When you lose Mana Crystals, that's a disruption for as many turns as it takes to get to 10 mana. That's simply a very frustrating place to be, and one that should not be in the game. As an alternative, look at an effect like this: 


I'm not convinced that a card like Big, Dumb Jerk belongs in the game either, but at least he presents a choice to the other player. 

5. Making your opponent's cards permanently cost more



Look, I just ruined every deck that relies on Malygos or any other 9 or 10-Cost cards! No card should exist that makes it possible to permanently increase the cost of an opponent's card without offering player choice. When that's possible, cards can reach 11-Cost, and there's only one card in the game that makes it possible to play that card. Having a card in your hand you can never play, because you can't play it, is very frustrating. It's extra frustrating when your opponent played a card to make your card literally unplayable, instead of it just being a poor fit for the current matchup.

What about Freezing Trap, you might ask? Well, that "without offering player choice" clause is very important. If I'm against a Hunter and there's a trap in play, I make the choice to attack with a 9 or 10 cost minion, knowing that Freezing Trap is a thing. Armed with that I assume the risk, instead of having a situation without interaction. 

What about including a clause that says "Increase the cost, but not above 10."? That's possible, but it's lazy design. It's inelegant, and it has no place in Hearthstone. The lesson here is look at the card, and make sure, if you're going to use a cost increase to ensure that it's temporary (a la Loatheb), or that it's something they opt into.

Deck and Hand Manipulation


6. Removing cards from your opponent's hand or deck.



Many decks rely on certain cards in order to achieve their primary victory conditions. This includes Patron Warrior, Malylock, Secret Paladin, Midrange Druid, etc... When we create cards that discard cards from our opponent's hands and deck we severely damage the meta, as these decks become less reliable. As designers we should be looking for opportunities to diversify the competitive scene, rather than limit it, thus these effects should never make it into Hearthstone.

Further to that, when one of your cards is lost due to no action of your own, with no ability to do anything about it, you feel the game is unfair. I played magic back in the day where hand denial was a very popular archetype (Hypnotic Spectre, etc... back in Fallen Empires). I don't know if it still is today, but I do know, as a enemy, non-blue player, losing the cards in your hand were the worst thing ever. Since Magic allows 4 of each card, the milling part didn't quite feel so bad, but when your fourth copy of something gets milled, and it's essential for your combo deck you just give up and feel really shitty about it. 

Let's talk about the hand-limit milling that happens in Hearthstone now. This is a little unfun, but in many, many circumstances, knowing you're facing the kind of deck that does this you can make choices to mitigate the loss. This is the most important part, the choice. A card could exist that mills your opponent outright, but it should be couched behind a condition that the enemy can choose to avoid. If they have agency in making the choice they can scream about RNGesus, but in the end, they didn't have to make that play. It feels better than having it unavoidably rammed down your throat.

Blizzard is on record as saying that they will not introduce elements like this in Hearthstone, and you shouldn't, either. This video, which you should watch regardless, is one instance where they have stated it (can't remember where, but it's there, I promise!). 

7. Creating cards that make fatigue meaningless for you.


Stabby Thing is a perpetually renewable source for your deck that can be used every turn. Unless your opponent can make you draw more cards you will always win the fatigue war. 

While its okay to have cards that mitigate the effects of fatigue, such as say Gang Up or Malorne, it's a bad idea to introduce cards that make the fatigue threat meaningless. Why? A few reasons, I think:

a. It's possible for games to go on for a long time already. A game where both players have Stabby Thing could go all the way to the 30 or so turns after fatigue when the game just ends and no one wins. That's just not a very fun game to be involved in, so why let it happen?

b. No core threat in a game should ever be completely mitigated by making one decision. Partial mitigation is perfectly find, but when you are functionally immune to something, it trivializes the thing. There should always be a give and take, and in the case of Stabby Thing you include it 100% of the times you'll think you need it and then you can forget the threat. The give is small to eliminate the take.

c. It introduces a Rock, Paper, Scissors element to the game, which is just uninteresting. This card hard-counters fatigue. A card that partially counters fatigue is far more dynamic, and far better designed. Try to make one of those, instead of Stabby Thing.

Other


8. Designing cards with drawbacks that aren't drawbacks most of the time

  

The card on the left belongs in every control, combo and midrange deck that isn't Priest. Why? The drawback is not a drawback. The fact that it can't regain Health is all but meaningless. What card could you have used that would possibly make that drawback a drawback?

The card of the right is another example. It may, on the surface, be similar to another card you've seen, but the drawback is surprisingly different. Any deck you play Revaer Lef in is one where you intend to win quickly. In such a deck, if you ever get to card #19 in your deck you've likely already lost. As such, Revaer Lef's drawback is meaningless. Compared to its cousin, since the effect is predictable, it is significantly better (and broken). Fel Reaver can be neutralized, all the while its drawback persists.

When you're building a card, test to make sure that any drawback it has matters in the kinds of deck it will be played in. This means having a good understanding of what purpose your designed cards have. If the drawback does not adversely affect the kind of deck that it's being used in, it is not a drawback at all, and the card should not gain bonuses from it.

9. Making an existing, strong archetype stronger



So this is probably the most exaggerated example I could possible dream up, but it really does speak to the problem I'm talking about. We don't create cards in a bubble. We create them in a metagame, and if we're not thinking about it, we can accidentally release something into the game that makes already very good decks substantially better.

Our job as designers isn't just to build cards that are neat. We're also responsible for adding to the card pool in such a way that we improve the game playing experience for our players (so that more of them buy packs, but hey, that's a conversation for another time). We should step out of the bubble, and consider how the card we create can impact the overall health of the game.

10. Using Keywords that aren't Keywords


I see this fairly often, where a designer creates a card that uses a term that they think should be in the game, but currently isn't. The other ones I've seen are "Can't be targeted by spells or Hero Powers." text as well as the word "Buff" (this term does not exist in the game). This is probably the most opinion-y part of this article, which is full of opinion-y type things. In both cases these are not Keywords in the game, and unless you've built a set, you should stay away from introducing Keywords altogether.

Instead, we should stick to the patterns that Blizzard has laid out for us. Maybe one day things change, but this is how things are right now.

11. Legendary cards have proper names



Alright, last one, I promise! I see this way too much, and I thought it worth mentioning. Legendary cards are legends in Hearhstone, they are specific people. Sure, some may be more legendary than others, but what's important is that even the least extraordinary of them is one person, and not a unit type. To fix the one above, we could change it to "Steve, the Peasant" and while weird, it would at least not be in violation of the rules.

Anyways, that's it. Surely I've missed something? If some, leave me a comment in /r/customhearthstone!

2 comments: