Know Thy Enemy, Know Thyself: The Mary-Sue Trap of Game Design

Taking a little break from my usual diet of promoting my latest game and talking about procedural content, I thought I’d touch on a common trap that occurs in the process of designing games. If I had to give this trap a name, I’d call it the Mary-Sue Trap of Game Design. Basically, over-focusing on the abilities of the player character to the detriment of the rest of the game.

It’s surprisingly easy to Mary-Sue yourself during game design. When you start down the path of imagining what sort of abilities you want your protagonist to have, it’s very tempting to start pulling every neat gadget you can think of off the shelf and strapping it on. Where this can really get you into trouble is when you’re looking around for that “certain something” because your game just isn’t quite fun yet. You try adding a beam attack. Air-dashing. A counter system. But nothing quite clicks. You’re thinking about how you want to power-up your avatar as opposed to the whole game. That’s the Mary-Sue Trap of Game Design.

So, how do you avoid the trap?
Continue reading

Postmortem for Legend of the Rune Lords

Note: This a re-post from my old blog, originally posted June 2010
On June 11, 2010, I released my first indie game, Legend of the Rune Lords, on Xbox Live Indie Games. LotRL is a short role-playing game featuring many of the trappings of full RPGs: stat-driven combat, leveling, multiple characters, and a cutscene-driven story. While hardly a great game, I think that it stands as a good example of what a determined (or at least stubborn) individual can accomplish in their spare time even while crunching at their day job.
Continue reading

QCF+Punch: Implementing Street Fighter-style Input


Ah, the QCF+Punch (Quarter-circle Forward and Punch). Also known as the “Hadouken” motion or “Fireball” motion.  It’s a standard in fighting games to have a tier of special moves tied to complicated input commands like QCF+Punch.  The extra difficulty in executing the command lends a greater sense of accomplishment that, when paired with a suitably powerful attack outcome, can make a game feel more visceral than if a powerful attack were launched with a single button press.

In my latest game prototype, I decided to implement a simple Street Fighter-like command input system for executing special attacks.  The big trick here is to take a stream of (imperfect) human input, compare it against a list of canonical actions, and match in such a way that a human player will be satisfied that the system is responding accurately to their input.  This is how I put it together. Continue reading