13 Game Design Tips

Here are some of my current opinions on good game design practices:

  1. Find the fun first - make sure the core game mechanic is fun before designing too much on top of it. If it's not something that's been done before then it's important to prototype and playtest early. So many things that sound fun on the drawing board end up being boring.
  2. Embrace constraints - they're a big part of the fun. It's a bit counter-intuitive because often our tendency as gamers going into game design is to want to give players the freedom to go anywhere and do anything and tons of variety and realism. But really we thrive on constrained challenges and puzzles; constraints give us something to work with as both game players and game designers. Constraints often come in the form of technology being used, development time available, number of developers available, target market, etc. and sometimes they come from just making some arbitrary decisions. I've seen a fair number of games ruined (IMO) by adding too much variety and realism and diluting the essence of the game. "Gem Miner 2" (Android) had much more variety than the first game but just wasn't as much fun. "Don't Starve" was hard enough as it was before they added food spoilage and inventory water damage; I just wasn't interested in keeping up with all that so that's when I stopped playing.
  3. Make games winnable and embrace randomization for replayability. Potentially Winnable Randomization is the true essence of "Roguelike" in my opinion (some would disagree I'm sure). Food for thought: IMO Freecell Solitaire is one of the simplest but most perfect Roguelikes there is. There are no trappings of RPG at all, but you've got a randomized scenario, a good challenge, and almost every deal is winnable. I played Freecell every day for a year or two; its randomized potentially winnable nature kept me coming back.
  4. RPG mechanics almost always make a game more interesting - having some kind of overarching story, skill progression, and questing can turn any fun but forgettable game into a compelling experience. As part of this, players enjoy the satisfaction of becoming more powerful and accomplished over time. Also: don't hesitate to give the players trophies and other visual effects reminding them how far they've come and how much of a badass they are - the high-level characters versus low-level noobs in MMO's are a great example, as is the huge boat filled with all kinds of goodies by the time you reach the end game of "You Must Build a Boat" (try out that game on mobile or Steam for a great example of all this).
  5. Keep it elegant and minimalistic, simple and tight, and strip the fat, the tedium, and the grind. Got a really cool hyperspace sequence that the player has to see hundreds of times? Strip it out or make it instantly skippable. Got some good dialog between characters? Make it half the size and then halve it again and it'll be the right length. How many fingers do you need to play the game on mobile? "1" is the correct answer. Q: How soon can you get going again after dying/losing? A: Instantly, as soon as you tap the button that says "Try Again". A common old-school, bad-school game mechanic was to make challenges more and more complex and time consuming, adding more busywork without adding anything new of interest - for example "if you enjoy pushing 4 creates into the correct spots then you'll love pushing 20 crates". Especially in terms of puzzles, once a player figures out the correct technique or solution then it should take very little time for them to actually implement it.
  6. Make the game accessible. A common pitfall of game developers (especially programmers) is that they'll be so good at their own game that what they consider "easy" will still be way too hard for average beginners. One great technique is to have an easy base game and difficult optional content, e.g. it's easy to get one star per level and progress but hard to get all three stars. Another obstacle for many players is having to make a bunch of decisions (e.g. assign stats points to characters) before they actually start playing - it's always good to get them playing first and then gradually present them with additional choices (e.g. "Sky Force" on iOS handles it well).
  7. Statistics-based randomness is fun AKA people enjoy gambling. "Risk" is a great example. Yeah my 7 guys should be able to defeat your 1 guy and almost always do, but there's always the possibility that your 1 guy might hold out (a 33 in 10,000 chance in Risk, I believe) and that adds a healthy tension to the game and means it's never over 'till it's over.
  8. Deterministic game mechanics are fun AKA people enjoy chess. The great thing about deterministic mechanics is that it introduces a dynamic puzzle-solving mechanic with no puzzle designs required. You've got a certain situation (ideally randomized), you know what will happen when you perform each of your possible actions, and you try to figure out a series of steps that will beat or solve the scenario.
  9. Give the player meaningful choices either in terms of pros versus cons, risk versus reward, or play style. If your Warrior path and your Mage path are basically the same thing with different icons then don't bother! If you've got a branching dialog tree but none of it really matters then just make it linear.
  10. Polish, polish, polish! Those little aesthetic touches are what separate the premium games from the wannabes.
  11. Figure out your monetization strategy early and design your game to accommodate it (it's just one of the constraints I was talking about earlier). I'm not saying you have to have annoying ads in your game - quite the contrary, if you design around them then the ads won't be annoying. Or there won't be ads. Or whatever. From working at AdColony I can truthfully say that there are players who get mad that Android often doesn't have as many ads as iOS because they're playing an opt-in game where viewing an ad gives them some in-game currency (diamonds or whatever) and it's a trade they're more than willing to make. Here's how game ads work in a nutshell: when you integrate an ad system, the ad network will have some kind of fluctuating CPM or eCPM - Cost Per Mille or Effective Cost Per Mille - for your game. This means how much money you get paid for getting people to watch 1,000 ads. A $10 CPM means that you'll be paid $10 every time your game shows 1,000 ads to people. Video CPMs are much higher than Display CPMs (AKA banner ads), often $10+ versus $0.50+. Think about it: if you can get 50k people playing your game one each day, a $10 CPM will earn you $500 a day. Now you have to decide what combination of game price, ads, and in-app-purchases to have. If you have a really good game, objectively speaking, you can make it a paid game and rely on marketing (through buying ads, haha) and word of mouth to get it out. If you have a decent game you might be better of making it available for free to ensure maximum downloads and then showing an ad before every level or having ads give you in-game currency or other perks (on the Plasmaworks game "Modern Words" ads give you more hints). If you have ads it's always good to have at least one in-app purchase: the ability to remove ads. There's really no downside to making an ad-supported game with a Remove Ads IAP, and it's a lot easier to start out a game that way than to make it paid at first and then try and transition it to ad-supported+IAP.
  12. Make a strawman. Sometimes getting the ball rolling is the hardest part, and at such times it's helpful to make a strawman requirements document as a starting point - just some preliminary game stats based off your experience with other games, like: fantasy-themed RPG, 3 towns, 6 dungeons, 10 levels each, 6 bosses, 20 creature types, general mechanics of XYZ, whatever. Then start filling it in (these are the names of all the towns, here's where they're located in the world, etc.) and you'll have something to work with and spark further ideas even if you end up completely changing your original thoughts!
  13. Character is King. What do Mario, Angry Birds, World of Warcraft, Downton Abbey, Battlestar Galactica, Star Wars, and Mad Max all have in common? Those worlds all have great character, speaking of the actual people as well as the locations and the vehicles, etc. - "IP" in other words. My conjecture on why Downton Abbey is so popular is not only that it has high production values (there's that polish!) and good stories, but more importantly it takes a bunch of interesting, diverse, and fully realized characters and throws them in a big fishbowl for us to enjoy. And what makes that fishbowl so enjoyable? One golden rule of entertainment is "show, don't tell", and if you're doing it right then the only way for an audience to discover what makes an interesting character tick is to watch their behavior in various situations and interactions - or in the case of games to explore those game worlds. World-building is hugely important and not to be underestimated. The world itself should have character - an interesting look along with some hidden depths that can be explored - as should the people, places, items, and creatures within it. It might be going a little far to write a "Silmarillion" backstory for every game, but there's no doubt in my mind that "The Lord of the Rings" was all the better for JRR Tolkien having developed a rich backstory for his novels.