Thursday, October 05, 2017

Difficulty

There's been a week-long explosion about people tweeting about difficulty. People seem to come down in one of a few camps, none of which is even vaguely similar to my own opinions. So let me make a big essay about it.

Difficulty is a very messy term with a lot of tangled-up components.

For example, some people say that some games can't let you skip difficult parts or make them easier because those difficult parts are teaching you some aspect of the gameplay you will need. The part you're having a hard time with is hard because you haven't actually learned how to use the double-jump or balance your theme park budget or something.

My rebuttal to that is: who cares? Who cares if a player doesn't get some aspect of your game?

The answer is: the problem with "cheating" (or super-easy difficulty modes) is that most players will end up sliding through your game without enough friction. They won't have fun, because there's no traction to engage with. Super Mario is a lot less fun when you can just fly through every level as Shinypants Mario. Subnautica is a lot less engaging if you have all the modules at the start and can just build anything and dive as deep as you like. These games aren't designed to really be played that way, so there's no player engagement if the player tries to engage that way.

If an RPG is too easy, the battles still consume time but don't have any depth or payoff.

This is a valid concern. Your game is designed to be played a certain way. Some players might be better or worse at that kind of play, but how can you pull them up to the difficulty level where they'll enjoy your game? Is it possible? Maybe this player will never learn to double-jump or balance a theme park budget. Maybe they literally can't for some reason. What should you do then? Just sneer and say 'git gud'?

Rather than sneering, some people try to solve this with adaptive difficulty. If the player fails too much, the game becomes easier. If they succeed too much, the game becomes harder. The problem with this approach is that players have different concepts of what 'too much' is, and if the game interrupts their flow at the wrong time, it's considerably worse than simply being too hard or too easy.

The New Super Mario games are a good example of that. I like having a hard time with these games, which is good, because I suck at them. I tend to die a few times before I come even close to beating a level.

Just when I'm getting into the groove, the game goes "BLOIP!" and pops up a bright, shiny thing that follows me around begging me to use it to beat the level as Shinypants Mario. It's "optional", in that I can keep trying without it. But it's there, and it's the game telling me that it has decided it was mistaken in asking me to beat that level, it's clear I can't beat that level, and I should just skip it.

That's incredibly deflating. The game judged me, and it decided I shouldn't be playing the game like everyone else. I should just skip it.

So I did.

After the third time it appeared, I put the game away and never played another New Super Mario game. I couldn't keep interested when it kept derailing my groove just when I was getting into it.

That's a pretty clear example, but I'll constantly adjust difficulty on my own, regardless of what any game thinks. I might decide to take suboptimal characters into battle because I think it'd be fun to win with them, specifically. I might decide to play as a pacifist. I might decide to climb that clearly-unclimbable mountain. I might throw pebbles at an enemy until it falls over instead of shooting it just because it's fun. I might beat Lavos with a mop.

How will the game interpret this? How will it auto-adjust my difficulty?

I can tell you: it gets scrambled and completely drops the ball. I haven't played an "auto-adjusting difficulty" game that didn't actively annoy me by adjusting it wrong, and the first mod I install is one to change how that works.

Phew.

So what's my opinion, in the end?

I think most people's concept of "difficulty" makes a big assumption: it assumes that you, the developer, should dictate how players play your game.

I understand that you, the developer, have built the game with the intention that it should be played in specific ways. And I understand that there are limits to how far that can stretch. Your puzzle game can't be made easier, because the puzzles are the point. Your score attack arcade game can't have a 'tourist' mode, because that makes no sense.

... Except puzzles are not the point, and tourist modes make sense.

What if a YouTuber wants to put together game footage? What if someone wants to play it with their toddler? What if an expert just wants to try one particular thing over and over? What if my controller broke and I'm stuck trying to control it with a keyboard? What if I'm testing a mod? What if I'm teaching a friend?

I think it's fine to let players play however they want.

Recommend specific difficulties, sure. Your intended play style is probably the best one, in that it's balanced and has good pacing. But if I want to short-circuit your game and play it in a dumb way... why not let me?

The games I keep coming back to are the ones with the best options menu. Kerbal, Space Engineers, Skyrim (via mods). Sometimes I completely disable core systems. Some days I play them one way, some days another way... and sometimes the game isn't balanced and the pacing is screwed up. That's OK.

I made it that way on purpose.

Because now it's my game.

6 comments:

Random_Phobosis said...

This is an interesting question indeed.

It may be handy to home in on a definition first.
I think of difficulty levels as subset of rules variants which emphasize some challenges provided by the game and/or de-emphasize another. For example, in FPS games lower difficulty doesn't make ALL parts of the game easier. It usually de-emphasizes aiming, tactical and resource management challenges, while navigational challenge and occasional puzzles remain the same (ironically this is what I've struggled with the most when I was a kid, so lower difficulty didn't help me at all).

I'd note that the set of such "challenge-shifting" variants is broader than just difficulty levels. For example, weapon schemes in Worms may bring forward either aiming or positioning tasks. In some boardgames variants may reveal cards which were supposed to be hidden, dialing back memory challenge, but amping up calculation challenge.

So basically you say, "developers should provide variants for their games which de-emphasize some challenges, because this makes the game appealing to more types of players".

Yes, if difficulty was some kind of internal slider intrinsic for all games, the slider that developers just set secretly and then hide from players, it would be pretty easy. Make this slider visible, allow the player to adjust it - and boom! - you have difficulty levels.

But every game variant actually changes a number of rules, not a single variable. And to know what to change, we have to identify which challenges we want to tone down. And because even simple games usually test multiple player skills, the answer isn't straightforward.
Let's say, in our hypothetical RPG we add easy difficulty, which makes fights easier. But then we have a number of players complaining about complexity character building, or about messing with loot which is too time-consuming, or that they would like to skip fights altogether. Which group should we cater to? All of them? The largest one? Select one randomly?
And then, even for one group, how do you tell where to stop? Does your platformer cater to people who never learn how to double-jump? Yep, why not. But how about people who can't do single jump? Who forget to run in the middle of collapsing bridge? Who confuse left and right? Should your platformer also support those players?

So now we have a new group of potential players, which would play our game, If Only. If only the combats were easier. If only you could skip all the talking. If only there was quest compass. If only there was crafting. And pets. And mounts. And driveable vehicles.
Naturally, if you devote some resources to making the game appealing to them (by creating a rules variant which shifts emphasis from some challenges to the others), you will come in contact with yet another potential player base, which would play the game, If Only.

This matter can't be resolved by "ok, let's add difficulty selection - right, we're done here". It's a constant quest to make your game appealing to more players - but it has a cost in resources, which could be spent on making your game better for your existing player base. So adding new players literally makes the game worse for existing ones, 'cause you have to take man-hours from somewhere, right? Because of that rather than a task which would be stupid to not do, I see adding multiple difficulties as a dilemma without a clear-cut answer.

Random_Phobosis said...

(part 2 of huge wall-of-text comment)

At the first glance this argument doesn't look valid, 'cause unlike crafting, pets and mounts, which add new content, changing existing stuff adds nothing, therefore should require no additional work from developers. But this is not the case.

These variants actually are authored, and developers have to work to guarantee them being fun.
"It's fine to let players play however they want", you say, but there's only one way to do it: expose every single game variable and allow the player change anything in the game. It's called modding though. Everything less, locking just a single variable - and you're restricting the players, taking responsibility for them, making choices for them, authoring their experience in some way.
Difficulty levels aren't just a random jumble of knobs and sliders for players to fiddle with as they please. They are authored variants with some kind of deliberate intention (either that, or developers did a bad job). Variants have to be designed, and designing a variant means in fact designing new game, which has to solve some specific design goals, but also has to reuse much of old game's baggage (even if it hinders rather than helps). So either you have a proper new difficulty level, which is additional game with own rules, dynamics, and goals carefully designed, implemented and tested, or you're doing your player a disservice by shoving half-baked "there are twice more/less enemies" and pretending it's a proper challenge/help, which isn't a good way to do games.

This leads me to believe, that it's absolutely okay not to have difficulty levels, if you decide to spend your development resources elsewhere.
What if somebody wants to play your game with their toddler? Well, then maybe your product just has different audience in mind. Maybe you're building a formula 1 race car, not a tricycle.

Craig Perko said...

Yup, that's one of the main schools of thought I disagree with.

Allowing players to dumb down or turn off systems is not catastrophically hard. Giving players a "skip level" button is generally also not catastrophically hard.

Pretending to be heavily burdened by the content requirements of turning off enemy AI is just an excuse.

Random_Phobosis said...

So let's say you're making the last Doom, last XCOM and, I dunno, Diablo 3.
How would you solve difficulty levels problem for them?

Craig Perko said...

Let people ruin them. Let me turn off enemy AI. Let me make myself invincible. Let me make it so no enemies spawn in the first place.

XCOM 2 is an excellent example of a game that should have much better options. The new "Chosen" are not even vaguely fun, but the expansion does come with a lot of other great content. Why can't I just check a box to turn off the Chosen?

I'm not asking people to make a game that's balanced and fun in all situations. I clearly point out that the biggest issue here is devs thinking they are responsible for every way the players will play the game. That's not the case.

Jacob Clay said...

Thanks ffor a great read