As someone who's been making games for over ten years, initially as a hobby and now as a full-time career, I've picked up a lot of wisdom and experience that I probably take for granted. While much of it has been collected from my own experiences developing games, most if it has come from other developers who I've met at jams and events, or read about online.
I want to share some of these in my blog so others can learn from what I've learned. Hopefully there'll be plenty of ideas here that will be useful and will be helpful for you in your own game development!
I'll start out by looking at meaningful decisions. When I design and work on my games I try to make every decision as meaningful as possible. Let's have a look at what that means.
Introducing Meaningful Decisions
Games are built from decisions, be they moment-to-moment, like deciding where and when to jump in Super Mario; or discrete, such as choosing your next tech tree option in an RPG. Decisions open up possibilities for new decisions - creating access to a new power-up, or the next set of skills in a tech tree, for example - and finding the optimal path through the decisions available to you is a big part of what makes games mentally stimulating.
I like to think of a decision as meaningful when it opens up possibilities with one hand and closes some off with another. The opposite of a meaningful decision would be a redundant one - one where there is obviously only one optimal choice.
Examples of Meaningful Decisions
Levelling up a weapon in Alien Soldier is a meaningful decision because it means choosing not to level up a weapon you may need later. So while beating bosses vulnerable to weapon A may be easier after you've levelled it up, you may find yourself eaten alive by bosses vulnerable to weapon B because of the vary same decision.
In Triple Town, every position you can place a grass tile in will create an opportunity to make a bush, but also cordon off positions where it is no longer possible to grow new tiles. When you learn a new move in Pokémon you are forced to forget another - which set of strategies should you sacrifice in order to access this new one?
David Sirlin's Kongai is a fantastic example of a game where every single decision is meaningful and has a noticable outcome on the rest of play. Kongai is one of the most engrossing games I have ever played because every single action matters, and you never find yourself going through the motions.
Meaningful Decisions in Greedy Bankers
I designed Greedy Bankers so that, at any stage during the game, there would be a choice of whether to cash in your best gem now to free up space for more gems, or to keep it and build it up to make it more valuable. The rubble and the robbers change how much you can expect to grow a gem, so your chances of growing a gem successfully change from second to second.
As a more subtle example, look at the positioning of the magic crystals in the iPad version. Magic crystals appear hidden inside special bits of rubble and, when activated, turn surrounding rubble into like-coloured gems. In Bailout Mode positioned the two crystals so that using one of them in its optimal position (i.e. the position that would generate gems of highest value) would also result in the other crystal being turned into a gem. So there's one simple way to create a lot of new gems, but by destroying your second crystal you could be closing off an opportunity to make even more.
Even cashing in gems in multiplayer is an important decision to make. Cashing in a large gem generates rubble on your opponent's side, which they could easily turn into new gems of their own with a magic crystal. So you need to know that cashing in a gem will bring you close enough to your target, or that your opponent will be in a poor position to bounce back (for example, if they don't have any magic crystals on their board).
In each of these examples the better choice is not obvious, and their best strategy is entirely dependent on state of play at that moment (their current score, their opponent's board, the time on the clock, whether there's any robbers nearby).
Why Meaningful Decisions?
Good meaningful decisions have long-term implications on play, and will affect the strategies you will be able to use later on. It makes them high-stakes and high-adrenaline, and increases your personal investment in your performance. Meaningful decisions make you feel smart when you get them right, and leaving you screaming "I should have known better!" when you get them wrong.
In the long term you may find yourself playing differently depending on the choices you made early on - a decision that affects the way you play makes the experience deep and rich, and full of possibilities to explore.
Redundant Decisions
Redundant decisions can add a lot of clutter, and often frustration to a game design, or at the very least are wasted opportunities. Often redundancy forces you to perform the same trivial set of actions over and over. In Skies of Arcadia there were plenty of stat-changing attacks, but none of them affected bosses (the only threatening battles in the game) so they were utterly pointless. This meant that beating bosses was always the exact same routine of charging up big attacks, performing big attacks, then performing healing spells, over and over. I had a similar issue with Final Fantasy VII, which had a list of hundreds of near-identical spells, but I barely found a use for most of them.
Not that redundant decisions are necessarily an issue. Guitar Hero is a great game even though most of the decisions (press the right keys at the right time) in it are redundant - you either time your presses right and win points, or mis-time them and fail to win points. The game works because it is a test of accuracy and agility before it's a game of strategy.
However, I do remember playing Guitar Hero 3's multiplayer battles on PS2, which did suffer from redundant decisons. In this game mode power-ups were awarded for a given number of points, and allowed you to mess up your opponent. You obviously want to use your power-up as soon as you get it, as it will prevent your opponent from gaining points and winning a power-up of their own. There is no decision to be made, as the optimal strategy is clearly to win points faster by playing more accurately, and win the power first - the exact same strategy that you take in standard play.
If power-ups had a negative effect on the player who used them then choosing to use a power-up would risk damaging your own performance. If they were more powerful during certain passages then there'd be a decision to use them as soon as you get them, when they'd be weaker, or save them up for a section where they'd be more powerful. In order for these elements to add to the strategic palette of the game, there'd need to be valid a reason to use them later, in a different way, or even not use them at all.
Rules of Thumb
In general, I like to think of it this way: any buff in my game should be counteracted with a risk or debuff. Running to get a powerup in a platformer should require you to dodge enemies and traps, risking losing a life, or require a diversion that costs valuable time. Moving to a good striking position in a sports game should leave your goal open, giving your opponent a better chance to score. Choosing to activate a power sooner could prevent you from using it later, when it might be more valuable. Choosing to upgrade your RPG character to a new class could prevent you from learning skills from other classes in the future, or from using skills that you may have valued before. Every time you make a choice there should be a risk that you've made the wrong choice, or it should force you to reconsider the way you're playing.
If the player has no reason not to do use a feature then the game is no more deep or rich than it was before you added it. All you've done is make it one notch more complicated. Another way to think of it is that one new feature needs to create two new strategies. I call this the "two-for-one" rule. This way, the web of strategies can increase exponentially, new features having knock-on effects on other strategies, making for a deep and multi-layered game with relatively little complication.
Meaningful decisions make for high-adrenaline moments and deep gameplay. If you can fit in as many new strategies for as few new game elements as possible then you're onto something good.
I hope this is useful food for thought for anyone interested in game design. If you have any questions please do let me know, either in the comments or on twitter!