A lot of the systems design stuff I do in building and balancing Cardinal Quest 2 is rooted in a certain way of looking at games. It’s based in making the game as a series of interesting decisions; something where you repeatedly get a few options to choose from, each with their merits and downsides, and you have to pick one definite path from the handful of possibilities.
The Civilization series exemplifies this approach. The entire way the game presents itself is to give you a list of options, you pick one, then the game shows you another list. Those countless decisions and the stories players weave around them support hundreds of hours of play. There are no doubt players who’ve made over a million of these choices in Civilization V and are still playing.
If you’re going to sustain a game through this many decisions and keep things interesting, you’ll need to show players entire systems full of different things they want—then tell them they can’t have everything. Reaching for certain things will seal other things away, possibly forever. You need to create these impossible, intractable tensions between all the things players want. When they click, these networks of tensions have the scent of solid design. Efficiently designed systems can ask you to navigate these tensions in countless ways, over and over.
These tensions are also fragile. Give players everything at once, even for a moment, and that part of the system collapses.
One game I’ve played recently that often veers towards doing exactly this is 2008’s Valkyria Chronicles.
Valkyria Chronicles is a tactical RPG where you control a squad of soldiers on a fantasy World War II battlefield. It’s a game I have real trouble with, partly because some of the obvious tensions in its underlying systems fall really flat. I’ll have to explain a few of those systems briefly to get at the issue here.
The first part of the puzzle is Valkyria Chronicles’ unit types. You’re given five basic soldier classes: Scouts, who are fragile but can move further than anyone else; Troopers, who are slow but tough enough to storm enemy defensive positions; Lancers, who are slow anti-tank specialists; Engineers, who can repair tanks; and Snipers, who are fragile and slow but have long-ranged sniper rifles. Each class has a role they’re meant to fill. Scouts are meant to look ahead for enemies, Troopers doing the front-line fighting, etcetera. Whenever you start a mission, you mix and match soldiers from these classes to build your line-up. So far, so good!
The second part is the combat system. Every turn during a battle, the game metes out a certain number of Command Points. Each Command Point allows you to move one of those units and attack once, or issue an Order to buff one or all of your units (with some big units and Orders taking two or even three Command Points). Units can be moved several times a turn, but they get slower each time. Orders can greatly raise a unit’s defence or attack power, even boosting their anti-tank skills. Immediately, you’ve got this tension between moving units or sacrificing CP to make a certain unit more effective. Again, this is a good system!
The final part of the puzzle is how missions are scored. Almost every mission has you on the offensive, charging forwards to capture enemy bases. The primary test of skill here is moving and fighting efficiently, not wasting a single Command Point… so naturally, completing a mission in fewer turns yields additional money and experience.
Each of those in turn is fine and a solid foundation for lots of cool stuff. Put them together, though, and there’s a problem.
You see, between those five classes, there are only two truly unique qualities. Scouts can move twice as fast as anyone else per turn. Engineers can repair tanks. Everyone else’s strengths rapidly become available as buffs with Orders. One Order gives a Trooper’s strength; another gives their durability. A short ranged Scout can run most of a Sniper’s weapon range in one action and shoot the Sniper’s target in the face. There’s even an Order which massively boosts anti-tank damage, allowing Scouts to kill tanks even more efficiently than Lancers by running behind them to shoot their weak point. A handful of Command Points can turn any Scout into a tank-killing super-soldier, sometimes able to obliterate entire enemy squads and capture the enemy home base solo in a single turn.
On the other hand, there’s no way to buff a unit’s speed. Troopers, Lancers and Snipers will always be slow—and moving slow units forward doesn’t just cost you Command Points. Successive moves each turn get shorter and shorter until the unit grinds to a halt. The only way for a slow class to travel as far as a Scout is to take twice as many turns doing it.
Those extra turns, given how missions are scored, cost money and experience. Losing money and experience drags your whole squad down. In essence, choosing to use anyone except a Scout (unless you absolutely have to) is usually an error.
Each constituent system and tension is, by itself, a good one, and much of the game has crystallised around them. Every mission is designed around the various classes’ movement speeds, with challenges staged throughout each battle based on standard movement ranges. Almost anything you’d change would break something else, but leaving everything as it is means Scouts are simply too good at securing big wins—just because they’re fast, and the game weighs everything against speed.
It’s not a broken game, but this lopsidedness in the class balance costs it a lot of potential depth. There’s no easy fix.
Whenever I get really mad at a game for something, it’s usually because I’ve done exactly the same somewhere! As it turns out, Cardinal Quest 2 has a very similar problem. Just like Valkyria Chronicles, CQ2 has a range of classes with different strengths and weaknesses. It has a speed stat which allows you to clear stretches more quickly. Finally, since most challenges can be overcome more easily with extra moves regardless of class or build, the game scores you on how quickly you beat it.
If two characters finish the game in the same number of actions, the character with higher Speed will get a better score. This wrecks the tension between speed and other stats, like Attack or HP. If speed is balanced with them tactically, it’ll be ridiculously overpowered for scoring; and if it’s balanced for scoring, it’ll be near useless in a fight.
This caused a lot of problems back before release! The Thief’s original design was as a fast but weak class, much like Valkyria Chronicles’ Scout, trading combat power for the ability to outrun enemies and avoid fights. That felt pretty balanced to start with—that is, at a tactical level. However, as soon as beta testers started racking up scores, it became apparent that the Thief’s Speed advantage was translating into a huge score advantage. The Thief’s combat weaknesses weren’t enough to counteract that, since a good Thief would rarely stick around for protracted melee combat. Something had to give.
In the end I gutted the Thief. Thieves no longer have the highest base Speed in the game (though they can spend Skill Points to get there). The Thief is now more balanced with the other classes on maximum score potential, but their tactical balance is a mess. Thief is now a much harder class to play than most, and it’s kind of a bummer!
I have a few ideas for how to fix that in the next patch without giving that Speed advantage back. I might improve the Thief by closing the gap on core stats like Defense and HP, but that’s boring. I can give some extra stat boosts on Normal difficulty, where they’re needed most, but that doesn’t help the tactical balance at high difficulty. I could work on boosting the Thief’s perks across the board so the possible builds are tougher in interesting ways besides being fast and stealthy, but creating that variety’s a challenge in itself. I could strengthen the Stealth and Backstab stuff the Thief does so well, which currently leaves you really hitting a wall against tough enemies who can survive a few backstabs, if I can avoid helping the stealthy Ranger out too much in the process.
Maybe I need to do all of those, just a little. It’s just not an easy problem to fix. 🙂