The idea of a difficulty curve is all wrong
The games industry is weird because we are always trying to create systems that keep the game just hard enough to stop people from seeing the rest of the product.


My thought process all started from this Tweet:



What is a Difficulty Curve?

So briefly when I talk about a difficulty curve I’m talking about how games scale the difficulty for each level / puzzle. For example, you don’t want to introduce too many gameplay systems too quickly, but also you don’t want the first 10min of each level very slowly teaching the player something they already understood 5min ago.

This gets hard as a game developer because we are playing the game all the time and inadvertently get really good. It’s hard to put yourself back into the mind-set of someone playing our game for the first time, and simple things like how tricky a jump should be or what each button does becomes meaningless.

I think there is a perception that games need to get harder and harder the further in the player gets. But really this isn’t true, you just want to give players the feeling of getting better and the digital-pat-on-the-back for doing so.

I Present To You, The Difficulty Saw!

Rather than seeing the game as getting more difficult on the whole, we are grouping mechanics together like in the original Tweet.

What do I mean when I say New Mechanic? This might be:

  • A new enemy type
  • A new ability the player has
  • A new type of puzzle
  • A way of using a system in the game (like Mario’s triple jump)
  • A new item
  • Using an existing system in a different way
  • Combining multiple existing mechanics in a new way
  • Adding a new rule (like time limit)

Now I’m not saying a new mechanic should be introduced every level, I’m not saying a level should start at 50% easier than the one before and be 150% harder by the end, I’m not saying a game should only be 4 levels long, I’m not saying that the increase each time should be the same (for example games that are easy to learn hard to master), I’m not saying mechanics should only be introduced at the start of a level, I’m not saying there should be only one new mechanic a level.

Smoothing the Curve

Our objective is still to “Smooth out the curve” and I know it looks like we have made this worse, but to be clear when we try and make it more gradual we are talking about removing outlying variances (either too hard or too easy) and giving each mechanic its own difficulty curve.

Why is This Graph Important?
Players want to feel like they are always progressing (both in their own skill and towards the end of the game) so the more time in your game they are going up this curve generally the better the game (this is a massive simplification I know)

If at any point your graph is too steep / shallow this is when people get frustrated / bored. Now there is a problem with the fact that each person will have their own unique gradient (and each puzzle will have a different learning curve per person as well).

Tricks for Keeping Everyone on the Right Part of the Curve:

DO:

  • Put in optional collectables
  • Provide tricky alternate routes that skips easy parts
  • Have areas that give you a better high score
  • Achievements that reward people playing with a disadvantage
  • Dynamically adjust the difficulty depending on how well the player is doing. <- This is actually magic sauce and could be the topic of a whole talk.
  • Have multiple endings.
  • Allow people to grind for exp or practice if they feel they are not capable of an area.
  • Have multiple paths so if the player gets stuck they can do another task until they have the skills needed to go down the main path.
  • Make it obvious what equipment players need to be using for this puzzle (by giving it to them right away, giving them ammo for the needed weapon, colour coding things, removing previous equipment that is not needed for this puzzle)
  • Give people multiple ways to learn something (text, voice over, button prompt, particles showing where they need to go, environmental graphics, lighting, help popups, visual cues)
  • Give subtle graphical hints (In Mario there will be a little flower or coin where you need to start a jump)
  • Just visually show them (often in games before being given a new weapon you will see an enemy use it on the other side of a window, or you will see the kind of damage it has done to other NPCs in the room)

DON'T:

  • Don’t make the game easier for people who are doing better (for example putting skill points in an area only expert players can get to)
  • Don’t punish someone for doing bad and make future attempts harder
  • Don’t allow someone to skip an area if they haven’t learnt the skill they need
  • Don’t hide things as the main mechanic of a puzzle
  • Don’t put a long cutscene / intro that can’t be skipped in an area with lots of retry attempts.
  • Don’t display things the player doesn’t need to know right now (don’t overwhelm them with descriptions of skills that are not on their path)

Of course none of these are mandatory but I wouldn’t break too many in one go

Something I should have noted long before this is every game has its own curve, you may get feedback from your friends that a task is too easy/hard, but they might not be who you are targeting. You might be making a casual mobile game that has a really long shallow curve, or a brutally hard game where the player spends 100 lives just trying to get past each section.

Again I’m making massive simplifications but I wanted to show the large range of personality types and it multiplies in complexity when you start combining them together and adjusting for personal skill level etc.

This is why it is IMPOSSIBLE to make a game for everyone!

Don’t try and make a game that fits everyone, you need to pick a target market and get feedback from people in that group.

A Really Generic Level Breakdown:

Let’s go through an example level design that illustrates learning wall jumping (however you should insert your own far more interesting mechanic).

Teaching the mechanic:

  • Start in safe area and the only way out is the wall jump
  • There should be minimal distractions
  • The main thing to learn should be easily visible, well lit, and potentially highlighted with particles, pickups, a scuff where they need to jump)
  • (after this point you know the player can wall jump)

Main body:

  • Wall jump with manageable danger (enemy in front / spikes under)
  • Wall jump mixed with a mechanic they learnt in a previous level
  • Wall jump with pressure (enemies / lava chasing behind you)

Finale:

  • Basic technique made harder with a quirk (avoiding obstacles)
  • Optional area where the player can show off what they learnt to get a collectable.
Finding the skill curve of my game?

Of course at some point you will be sending out copies or screenshots of your game to get criticism, but after that you are going to want a more empirical way of collecting data.

  • Many games like Mario Maker record the location when a player dies, now this isn’t going to help tell you if someone is stuck on a puzzle, but if you have a level where all the deaths are in a very small area it’s likely you will find that part is above the difficulty curve. I don’t want you to remove all deaths from your levels, but it is better if they are evenly spread out.
  • Collecting level complete stats can also be very helpful. If 80% of people finish level 4 but only 20% of people finish level 5 you know level 5 is either too hard or too boring. Likewise if level 11 is completed more than level 10 you might find level 11 is more fun than level 10 and you need to retrospectively make your levels more like level 11.
  • You can make asking friends more objective by having direct questions like “what did you think about level 8?” or “How long did you spend on level 9?” however you then want to record this on a spreadsheet and combine it with other testers data, if you have outlying data that is something you need to deal with.
  • With current technology it is really easy to capture footage / stream gameplay. This means you can watch people and understand what they are thinking. It is worth knowing that when people know they are being watched they do tend to act differently, but you might see players trying the wrong solution to a puzzle and this will help you adjust things to point people in the correct direction.
  • Using Streamers and reviewers is great because they are likely to be used to playing / reviewing games and they will voice what the press will say about your game. The downside is if you are already engaging with reviewers it’s going to be too late to make substantial changes.
  • If you ever end up taking your game to an expo you will get a steady flow of people trying your game for the first time. This is a great ideal time to watch people, ask them questions and really perfect your games on-boarding process. Now it’s not ideal circumstances for the player because it’s always loud / busy and they will probably be burnt out and have a short attention span. However by sitting down and playing the game they have shown that they are a potential buyer (even if they are not in your target market)
  • QA testers and review sites, getting Quality Assurance testers is expensive, however there are plenty of websites and forums where you can submit your game for feedback.
Don’t just make the game harder; Show the player they are getting better.

Something that works well is to show people how far they have come, you see games having nods back to previous puzzles, often they add something fresh or obfuscate it but it’s nice for the player to see how much better they are now. Plenty of times I’ve been playing a game and I didn’t get a simple puzzle because I’m expecting something harder, but it turns out the answer is a twist on something I learnt earlier in the game.

On this same vein I get really excited when I find out a game had a really hard puzzle on the first level hidden in plain sight, but it isn’t until later levels that you learn how the puzzle works. It’s like a locked door where the key is knowledge. (I wanted to give some examples of this but then I thought just naming the game is a massive spoiler)

This does allow us to talk about one fantastic trick that really ties into the whole idea of keeping people on the correct part of the graph. Hiding a shortcut with pure knowledge. Portal 2 has a great example of this, one of the levels has the start and end of the level right near each other, and with some clever placement of portals it is possible to skip the whole level, however it uses techniques you don’t learn until later in the game, the developers knew about this but said if someone is able to trick their way straight to the end then the level has nothing to teach them.

Giving People Highs and Lows of Adrenalin

One thing that films have become very good at is switching between periods of high action adrenalin and calm. The reason for this is as humans we get saturated with similar stimuli and start to block it out. Knowing when to switch is a real art form, the feeling is also exaggerated by the contrast between the two.

There is also a trick of trying to outdo what came previously so as you watch something it is always emotionally peeking one way or another.

Bringing this back to game design I think we should be using this kind of technique, not just for emotional things but for difficulty, entertainment, learning skills etc etc.

HERE YOU CAN SEE...

So while this whole article has been talking about level difficulty my original thought stream was about how quickly the player unlocks new rooms that they can add to their spaceship in Undercrewed. But it’s all the same thing! This same concept can be used for difficulty, introducing game mechanics, introducing new skills and abilities, introducing new enemies, introducing new play modes.

I have a subsequent article here with examples of adjusting difficulty and how to monitor it.

Beginner
Game Development
By David Strachan