• MY CART    0

    Your cart is currently empty.

Hearthside Chat: Designing Karazhan's Chess Event with Peter Whalen

Posted on 07 October 2016

The party in Karazhan is in full swing! Lots of players have experienced the craziness that is the chess encounter—pieces attacking on their own, knights jumping through carefully drawn up fortifications, and the enemy’s constant cheating. You’ve experienced the end product, but read on to find out how it was developed. When we started working on Karazhan, we listed all the encounters that truly captured the spirit of the original instance, and chess was at the top of that list. In World of Warcraft, it was a completely unique experience—rather than play as your own character, you took control of a chess piece and played a dangerous game against the Spirit of Medivh. Who cheated. A lot. It was memorable, different, and a lot of fun. Our goal was to reproduce that experience in Hearthstone with our own unique twist. A quick summary for players unfamiliar with the encounter: In Karazhan chess you have a deck of chess pieces. Most of them attack automatically at the end of the turn, firing on the minion directly across from them. When chess pieces are aligned between two enemies, they strike both opposing pieces. Your opponent’s deck is similar, but their hero power kills your left-most minion each turn. We wanted the encounter to feel like chess . . . but what does that mean? Unlike World of Warcraft, Hearthstone is already a turn-based, strategic game, so we needed to find some of the core differences with chess that we could use. The first one was pacing: chess is a much slower game than Hearthstone. In each chess turn, you only make one move. Chess also involves completely open information and is deterministic, whereas in Hearthstone you draw random cards. These were our starting points: one move per turn, and drastically lower randomness. In our first implementation, we designed the chess pieces in this way: pawns were cheap and had Taunt, Bishops healed their neighbors, Rooks were stronger, Queens were the strongest, and Knights could ignore Taunt. Your deck contained a normal chess set (8 Pawns, 1 Queen, 2 of each of the others) and there were two special rules. Instead of drawing each turn, you Discovered a card from your deck (so you looked at three and took one). Second, only one piece could attack each turn. We also had a bunch of extra things: each player’s hero power gave one of their minions Attack until the end of the turn; each deck had a number of special spells—like Pawnstorm, a spell that let all your Pawns attack this turn; and every time something bad happened to the enemy (they lost a bunch of life, lost an important piece, or a few other triggers), they would cheat in some dramatic way, like killing one of your minions or resurrecting one of theirs. We learned a lot from this version. It felt somewhat different than Hearthstone since only attacking once per turn slowed the game down a lot. But most of your pieces didn’t matter—you would just play a Rook and attack with it turn after turn into your opponent’s Pawn line. The special cards made it a little less boring, but we wanted to make sure the core gameplay was fun. We also wanted to add some text boxes on the Rooks and the Queens to see if we could make them a little more interesting. A few months earlier, the whole Hearthstone team spent a few weeks working on individual projects—whatever we wanted that would help out the game. A couple of people made a Tavern Brawl with a very cool mechanic: it had minions that automatically attacked each turn. This seemed like a perfect match for us, because it would make the Rook feel more special and also get around the problem that one attack each turn felt a little boring. When we added auto-attack to the Rook and played a few games, it felt great! Only attacking with one minion a turn had slowed the game down, but the auto-attack mechanic made positioning feel very valuable, something much more true in chess than in the average Hearthstone game. We immediately tried having the Pawns, Rooks, and Queens auto-attack, while keeping the Bishops the same. Knights didn’t need to ignore Taunt anymore, so we gave them Charge and let them still attack normally, to stay true to the spirit of jumping over pieces. After playing this version, the core mechanics felt great. The hero power (give a piece Attack) didn’t make sense anymore though, and lots of the special cards felt unnecessary. Simply managing the board was already very involved, so we cut everything else and tested to see if that still felt meaningful. We also changed the hero powers to allow you to move your pieces around to try and play up the positional aspect. There was definitely a ton going on in this version, but it was very interesting. From here, we tuned the encounter, drastically increasing minion health (Pawns used to be 1/2, for example!) to increase the importance of positioning, set hero health to 20, and made the hero power repeatable. At this point, we realized that the encounter was a bit too easy; facing off against Medivh’s enchanted chess set shouldn’t be a fair fight. With that in mind, we changed the enemy hero power to destroy one of your minions at random; however, we quickly realized that making it positional was more fun, so we changed the hero power to destroy the player’s left-most minion. At this point, we were very close to the final version of chess . . . except it was way too hard! You ran out of resources quickly and often you would win either by rushing the opponent down with Knights (which could still attack heroes at the time) or by waiting for fatigue to kill him. But even then, the mission was still far, far too hard for normal. Even if you were familiar with the encounter, you could run out of pieces quickly, fall behind on board, and then lose—it was a pretty frustrating experience. So we tweaked the attack and health of the minions to smooth out the difficulty and allow you to develop a better board, called this version of chess the heroic and then started working on the normal. First, we doubled the decks so fatigue wasn’t as much an issue. We then resurrected the Discover mechanic from earlier in the design process and put it on your hero power so you wouldn’t run out of resources fighting the enemy hero power. From here, there were only a couple of small design tweaks to come. We didn’t like that most games came down to Knights simply attacking the enemy hero—it felt like you were doing a ton of work on your positioning that didn’t really matter. So we changed Knights to only attack minions. Finally, we didn’t like that heroic often came down to passing a bunch of turns in fatigue—you would get a small advantage and then let fatigue kill the opponent. So we turned off fatigue for the encounter and just had you lose when you ran out of pieces. That had a huge problem that came up in playtesting, because no one expected fatigue to be turned off. Players were furious; they had come so close to winning only to hit a rule they weren’t expecting. Instead of turning off fatigue, we just added 15 pawns to the bottom of the enemy deck. Now there weren’t any new rules to learn, but we could still tune the encounter the way we wanted. And that was it on the design side. We added a bunch of messaging so that players would understand what was going on with Moroes talking, but it quickly became clear that we needed to provide more player education. The most important part of making the encounter understandable was in making the animations tell the story. They needed to be very fast since a lot were happening at the same time, and they also needed to sell the idea that a minion was attacking two other minions while showing the positional aspect of the attack. The first thing we tried was the normal Hearthstone attack animation—the minion would simply ram itself at the opposition. When it hit two minions, it would move to the space in between. This was cool, but it generally made you feel like the minion should take damage back, just like in normal Hearthstone. We tried a bunch of different projectile animations before settling on this one—the minion moves a bit to show the positioning, but then sends out a very quick physical projectile to show that it won’t take damage back. It took some iteration, but it worked out very well. As one last Easter egg, we tried something slightly different with the board for the chess encounter. We didn’t end up going with it in the end, but it looked pretty cool. And there you have it! We’re very happy with how the chess encounter turned out— it feels like chess, Hearthstone, and World of Warcraft’s Karazhan. It took a bunch of false starts, but the end result was worth it! What did you think of the One Night in Karazhan chess event? Share your thoughts in the comments below! /* Normal Lightbox */ .imgborder { -moz-border-radius:4px; -webkit-border-radius:4px; border-radius:4px; -moz-box-shadow:0 0 20px #000000; -webkit-box-shadow:0 0 20px #000000; box-shadow:0 0 20px #000000; border: 1px solid #372511; padding: 1px; } .imgborder, .imgborder:hover { border: 1px solid #CD9000; } /* Borderless PNGS */ .imgnoborder { -moz-border-radius: 0px; -webkit-border-radius: 0px; border-radius: 0px; -moz-box-shadow: 0 0 0px tranparent; -webkit-box-shadow: 0 0 0px tranparent; box-shadow: 0 0 0px transparent; border: 0px solid transparent; padding: 0px; } .imgnoborder, .imgnoborder:hover { border: 0px solid transparent; } /* HearthstoneDividerFiligree */ #blog .detail hr.filigree { width:100%; height: 50px; background:url('https://bnetcmsus-a.akamaihd.net/cms/gallery/79C1M3XMY0L31401477381292.png') center center no-repeat; border: none; margin-top: 0px; margin-bottom: 0px; } /* HearthstoneDividerWood */ #blog .detail hr.wood { width:100%; height: 50px; background:url('https://bnetcmsus-a.akamaihd.net/cms/gallery/79VCDJZ6362M1401477381334.png') center center no-repeat; border: none; margin-top: 0px; margin-bottom: 0px; } /* HearthstoneDividerManaCrystals */ #blog .detail hr.mana { width:100%; height: 50px; background:url('https://bnetcmsus-a.akamaihd.net/cms/gallery/AYRLNZFG7ZCY1401477381322.png') center center no-repeat; border: none; margin-top: 0px; margin-bottom: 0px; } /* StandardDivider */ #blog .detail hr.standard { width:100%; height: 100px; background:url('https://bnetcmsus-a.akamaihd.net/cms/gallery/5e/5EATP35KLFOG1454297371918.png') center center no-repeat; border: none; margin-top: 0px; margin-bottom: 0px; }

More Posts

Search our store