Everyone knows what it’s like to play a game that just frustrates you. Quick twitchy platformers like Super Meat Boy, or slow dramatic RPGs like Dark Souls come to mind. In the past, these types of games have been wildly successful, but anyone who has been active in the game development community knows that for every success, there are a thousand failures.
Many indie developers work under the misconception that high difficulty == engaging gameplay. This is not actually the case. Sure, when people talk about games like Dark Souls or Super Meat Boy, they say things like, “finally, a game that’s actually challenging”. From a surface level, it seems like the difficulty is the main factor that makes the game good, but in reality, the difficulty is just a game mechanic that supplements other game mechanics. If you want the difficulty to be a focal point of your game, you need to make sure all of your other mechanics contribute to that, otherwise you end up with a game that nobody wants to play.
A good game is one in which all of the individual mechanics come together to form an engaging experience.
Game Mechanics and Level Design Matter
Let’s do a case study on one of the fathers of modern indie games — Super Meat Boy. This game is excruciatingly difficult, and everyone loves it for it. Anyone decent at platforming games looking for a challenge would find enjoyment out of this title. Super Meat Boy has a few key elements going for it that make the difficulty worthwhile:
- Very fast respawn time
- In Super Meat Boy, you die in a second, and you respawn in a second. There are no loading times.
- Tight, responsive controls
- Everything in Super Meat Boy feels natural after a few attempts. Running, jumping, and stopping all happen in an instant. There is no waiting for an animation to complete.
- Short levels
- Each level in Super Meat Boy is relatively short, even the final level before the last boss. Dying means starting over from the start, so the player is forced to master each part of the level.
The level design and mechanics all work together to form a gameplay experience that is fast, fluid, and frustrating. The level design is built around the mechanics of the game to ensure the player can repeat the short levels over and over until they get it right. It’s very important for ALL of your mechanics to work fluidly, otherwise “frustrating gameplay” becomes “broken gameplay”.
If the player dies, it MUST be their fault — not the game’s.
One Size Does Not Fit All
Let’s take a look at another famous difficult game: Dark Souls. From a surface level, Dark Souls is the polar opposite of Super Meat Boy.
- Dark Souls is slow, and punishes you for moving too quickly.
- The areas in Dark Souls are long and arduous, with few checkpoints in between to save you.
- There is a slight delay between a button being pressed and an action happening on-screen.
This shows that there is not one true formula that leads to a difficult game being “good”. The one thing these games truly share in common is stellar level design that caters to the gameplay mechanics. Dark Souls’ levels have a lot of nooks and crannies, with corners hiding enemies and treasure. A player knows that if they come across a crossroad, it’s likely two of the three paths ahead of them will have enemies. The player may come to a hallway and see a single enemy ahead, but they know that there will likely be 10 more enemies hiding around the next corner.
Dark Souls’ level design gives the player enough information to see some of what lies ahead, but hides enough to keep the player cautious.
This leads to the next important point:
Teach the Player
When a player first plays Dark Souls or Super Meat Boy, they will find themselves dying a lot. The term “get gud” comes up a lot on the community, telling players to get better at the game, or they’ll keep dying. Anyone can get good at any game if they try hard enough — the infamous Superman 64 could be beaten if you have the patience for it. However, Dark Souls’ learning curve is refined and tested on. The player gets beaten down, but they improve each time. Once they improve enough, they overcome the challenge, and get beaten down by the next one. Rinse and repeat.
Getting better at a game, improving yourself, and overcoming challenges is fun. Barely scraping by a major boss fight that you’ve failed at 10 times is fun. Feeling yourself getting more powerful as a player is fun.
If the game is so difficult that the player can’t progress, it’s no longer fun.
One game that I played a lot when I was younger was Gunstar Super Heroes. That game was unforgiving. Each level had a different level mechanic that you had to master immediately, or you would get destroyed. I spent hours and hours of time trying to beat that game, and after I finally beat it (on easy mode) I didn’t feel satisfied. I had just wasted my time trying to get lucky on each level. That game never taught you anything, and I was never given the opportunity to improve my skills. I just loaded the game, got killed, waited FOREVER for the game over screen, the title screen, and the game load screens to go by, and try again.
That’s punishing the player without teaching them. That’s not good game design.
Find Your Pacing
As shown by the differences between Super Meat Boy and Dark Souls, it doesn’t matter what your games’ pacing is. What does matter is that your pacing is consistent. Super Meat boy is fast, and you feel yourself getting better by dying hundreds of times in a matter of minutes. The mechanics and load times make it fast. This lets the players develop muscle memory and improve quickly.
Dark Souls is slow. Animations are slow, movement is slow, dying is slow. This makes the player more cautious. Dark Souls essentially becomes a perfect blend of action and strategy. The player devises plans and tactics to get them to the next bonfire.
As long as your pacing is set, and your mechanics cater to that pacing, and the level design caters to the mechanics, you will have a good game.
What do you think makes for a good difficult game? I’d love to see your comments.
Thank you for reading,