Intuition vs. Nuance in Wingman’s Class Design
“Easy to Learn, Hard to Master”
Skill in games is a difficult subject to breach: Some games require low skill to play but don’t do a great job keeping us interested for long, while other games take several hundred games of practice just to perform at a useful level (you can probably name several from each category). The compromise many studios lean towards is the famous idiom “easy to learn, hard to master”, a concept made famous by Atari co-founder Nolan Bushnell and furthered as a design pillar for Blizzard Entertainment. This, at its core, means having a game that you can enjoy the first time, and the hundredth time you play.
But what does this really mean for implementation? What are the specific knobs and handles we have in our control to manipulate how “easy to learn” our game is, or how “hard to master”? Some games focus on variable difficulty settings and PVP matchmaking divisions to ensure that players are both capable of overcoming immediate challenges and also aspiring to perform in more demanding scenarios. But what if you don’t have access to the complexities of a professional matchmaking system? What if your game is purely PVP with no difficulty settings? Can you still achieve Bushnell’s dichotomy? The Wingman team didn’t have much of a choice.
Wingman was initially slated as a 6-month project focused on 2 vs. 2 PVP combat. Given that our options for on-boarding were fairly limited (we hadn’t yet brought on our AI dev), we opted to pursue the familiar goal of being “easy to learn, hard to master” (perhaps with a little more emphasis on “easy to learn”). But we didn’t have a clear idea of what this meant for our game; we had never played it competitively and the prototype looked like a poorly polished Mario Party minigame:
Sure it was fun to play and it did give us some insights into what it might take to achieve our goal, but until we dove deeper and began to prototype different class combinations, we’d be writing our design spec blindly. So instead we adopted the adaptive “figure it out as you go” attitude, and began the process of efficient prototyping. Surely enough, we quickly had our list of success criteria.
1. Understand Binary Mechanics
The concept of a binary combat mechanic is simple: you have an action you can perform where success happens fully or not at all. An easy example is a one-hit knockout mechanic that is incredibly effective – but only if you actually land the hit.
Many would argue that this type of gameplay is less skillful, as it rewards certain infrequent decisions rather than overall performance. If done at exactly the right time, a poor player can catch a skilled player by surprise and win the match due to a single lucky move. But if you consider the way most modern athletics work, this is all too normal. In fact, there is often a pattern:
- Points can be scored by performing known, binary actions (kicking a ball into a goal zone, for example).
- Coaches and Captains make high-level strategic decisions that directly correlate to a team’s likelihood of scoring points
- Players make micro-level decisions that amplify or reduce the impact of coaching decisions
Think about it: what would change if we were to judge American football winners based on a sophisticated list of performance statistics rather than in-game points? The games would be more “skill-based” per se, but there would also be less memorable upsets, victories would be incredibly predictable, and the need to watch the game would diminish. Simply comparing historic performance stats for both teams would be a painfully accurate summation of what to expect. So instead, we opt for a bit of unpredictability: If you can make one small decision at just the right time, the tides can turn.
This is exactly the model we wanted to adopt for Wingman‘s class design. We loved the moment of fear when you knew the “Hail Mary” play was coming right at you, but we also knew we couldn’t afford to make this the entire basis for any one class. So for the purposes of our game we decided that any binary mechanics we included needed to be an effective Hail Mary, but typically require some skillful preparation or follow-up. When this dynamic is combined with a multi-round match, the law of averages will tend to reward better players while still offering enjoyable moments for the new user. Easy to learn, hard to master.
2. Understand Hard Counters
Imagine you and I are playing rock/paper/scissors – but with a twist. Unlike the normal game, this time you and I must discuss our choices beforehand and come to an agreement on who will be throwing what choice. There are few favorable outcomes in such a scenario; either we never leave the planning phase (we keep re-selecting each other’s counter), or a timer expires and one player knows that they are automatically at an insurmountable disadvantage.
It’s for this reason that hard counters are a tricky subject. When done well, hard counter design allows players to effectively solve any problem they have time to react to, and can create interesting confrontations if the imbalance is only minor. In some team-based games, hard-counters are accounted for by allowing players to strategically trade positions to keep disadvantages to a minimum. But in games where strength and weaknesses cannot be redistributed during gameplay (like our R/P/S example above), hard counter design becomes incredibly fragile.
Since Wingman is one such game, we decided that any hard-counters should still provide some small weakness that can be identified and exploited with cleverness. For example, our low rate-of-fire “Cannon” class (which also applies a slow to the target) would be hard-countered by the damage-negating “Shield” class, but we ensured that the slowing effect of the Cannon would still apply, leaving the target undamaged but vulnerable for a masterful follow-up shot.
This also helped create interesting moments of opportunity. When you see a weakened opponent, do you go in for the kill? If you don’t, you’ve allowed an enemy to recover and pose a threat to you. But if you do, it may turn out that this enemy was anticipating your actions and has prepared an ambush. In Wingman we achieved this dynamic through an interesting mechanic: pancakes.
3. Understand Moments of Opportunity
On a cold February afternoon in Redmond, Washington, the Wingman team found themselves ahead of schedule (we had an excellent producer). Like any group of professionals, we opted to put together a gag ability called “Pancakes” that allowed you to place a fresh pancake on the ground that the other player would need to eat if they moved near it. Little did we know that this practical joke would soon become the “Snare” class, and serve as a gold standard for abilities that result in opportunistic gameplay.
As Snare began to shine in playtests, we quickly mandated that all classes should afford good pacing through moments of opportunity: Once an ability is used, there is a desire to seek safety while it recharges, but if the ability landed, there is a desire to push the advantage in a moment of opportunity. The playtesting feedback was clear: this is a great pacing dynamic. But some classes that had this dynamic weren’t as popular. Where had the formula failed?
When you are given a single choice of risk/reward, it can elicit some interesting contemplation. However when you are given non-stop complex choices, it becomes incredibly easy to overlook the subtleties of a single decision (games like Heavy Rain thrive on this overexposure of agency). And while it may seem like a basic philosophy for combat design, a simple principle had escaped us: in order for opportunities to feel significant, their frequency of use must be managed. In other words, there must also be times when you shouldn’t use a class ability. We tested this hypothesis by heavily decreasing rate of fire on certain weapons so that their use required more decision-making. But Kevin, that doesn’t sound like progress at all – isn’t that just going to upset players? It might seem that way, but in reality this emphasis on fewer, more meaningful choices follows the same principle as our earlier sports scoring example. And despite the fact that each class was statistically weaker, playtesting and spectating scores skyrocketed.
Coming Full Circle
On any project, it is important to occasionally step back and take a holistic snapshot of what you’ve been working on. As we continued to compile our list of success criteria for good class design, we found ourselves stuck on our “Nitrous” class (a simple button-hold ability that increases move speed). Players loved it, but it was incredibly difficult to use optimally. Every time we tried to make skillful use more accessible, we ended up making the basic functionality more complex and unintuitive. We spent weeks trying new variations of this class, and every single iteration tested poorer than the original. Why was this happening? What was the X-factor we were missing to make this class perfect?
I went back through our success criteria looking for holes:
- It didn’t have binary gameplay that felt unusable or broken
- Each ability it hard-countered had a way to exploit it
- It created opportunistic gameplay
- And there were times when you certainly shouldn’t use it
It fit each criteria perfectly, but players were still not using it optimally. And that’s when I realized that my mistake was in the problem I was trying to solve:
“Players loved it, but it was incredibly difficult to use optimally.”
Do you see my mistake? Nitrous was already, in every sense of the phrase, “easy to learn, hard to master”. Our list of success criteria had created an excellent outline of how to achieve the elusive dichotomy. And while our final classes are far from perfect, modifying each of them to fit our success criteria has gotten them to a level that our players love.