Difficulty curves: Find the right balance and boost retention and revenue | Pocket Gamer.biz
Most gamers have experienced a game that was so easy that it became dull, or, in contrast, a game that was so difficult, the experience was more frustrating than fun. Both extremes are problematic for a title’s overall revenue and retention rates. Finding just the right balance in a game’s difficulty curve therefore is a key factor for engagement, so as a developer, it’s crucial to understand what works and what doesn’t
In this guest post, product design director at Supersonic from Unity, Guy Agiv offers insight into finding the right difficulty balance and how an efficient curve can motivate players to engage more with the game, boosting retention and revenue.
Your difficulty curve has a major role to play in preventing players from churning in your games. They show the balance between skill/resources and challenge: low difficulty is when a player’s skill exceeds the challenge of a game, and high difficulty is when the game’s challenge exceeds the player’s skill. A well-implemented difficulty curve can stop players from getting bored, motivate them to watch rewarded videos or make in-app purchases, and push them to keep progressing. That’s a lot to get right.
Why are difficulty curves important for your games?
If your game isn’t challenging enough, your players won’t be as motivated to earn rewards from rewarded videos or make IAPs.
Guy Agiv
Players engage with your game to have fun, so your job as a game developer is to give your players the best in-app experience possible. But fun is a tricky thing to solve. It’s much easier to start with what’s not fun: boredom and frustration. And nothing is more frustrating than a game that’s too difficult and keeps players from progressing. On the other hand, if a game is too easy, then the lack of challenge will bore players. Both situations will have the same result – players churning.
The level of difficulty can have a big impact on your game’s revenue. If your game isn’t challenging enough, your players won’t be as motivated to earn rewards from rewarded videos or make IAPs. But if your game is too difficult, players might feel like your rewarded videos or IAPs are a waste of their money and time. Again, both situations have the same result – a failure to motivate, retain and monetise players.
So what does a well-implemented difficulty curve look like?
The optimal difficulty curve puts your players into a ‘flow state,’ where the difficulty level starts slightly above the player’s skill but not so tough as to feel insurmountable. Without the initial challenge, the player won’t get the satisfaction of progressing past it, but to avoid frustration, the challenge should still remain within their reach.
We can map out this flow state by using “challenge” as the Y axis and “skills/resources” as the X axis. Where X exceeds Y, we enter the boredom zone. Where Y exceeds X, we enter the frustration zone. The flow state is where the player is neither in the boredom nor frustration zone. To keep players in the flow state, match the game’s difficulty level to the skill level players have as they progress. It’s important to note that while the principles may be the same, there is no one-size-fits-all difficulty curve for every genre.
If you see that your retention rate dips after a specific level in the game, the difficulty level at that point is likely too high
Guy Agiv
How to spot when your difficulty curve isn’t working
Two core metrics will help you identify problematic points in your difficulty curve – the retention and completion rates. With retention, you can identify the levels where your players are churning, while the completion rate will help you see where users are completing levels too quickly.
If you see that your retention rate dips after a specific level in the game, the difficulty level at that point is likely too high. Conversely, if completion rates are consistently very high at a specific level, particularly at a late-stage level, your game is likely too easy.
Keep in mind that several factors can influence players churning or completing levels too quickly besides difficulty level: crashing and invasive ads are two common causes of churn – best practice is to always ensure there are no other influences on retention before looking to difficulty as a culprit.
Balancing your difficulty curve
Getting players into the flow state and adapting your difficulty curve is a balancing act, particularly since a game’s difficulty needs to be examined case by case. But there are a few general tips to help you strike the right balance, regardless of your game’s genre.
Add difficulty to your game: either reduce the availability of resources or add complexity. You can reduce resources by raising the costs of in-game actions, making costs more frequent, or giving players fewer ways to gather resources. To increase complexity, you can add more enemies, give players multiple problems to solve at the same time, or shorten the time they have to take action – all are essentially ways to test more of the player’s skill.
Lessen the difficulty of a game: either reduce its complexity or make more resources available to them. Resources from rewarded videos and IAPs can help the player gain resources. You can add them at the difficulty inflexion point, where a game’s challenge exceeds the player’s skill or resources. Alternatively, you can motivate them to make a purchase to accomplish the same goal.
Example: Difficulty balancing in action in Tall Man Run
Tall Man Run is a gate runner game where the goal is to run through size-multiplier gates while avoiding obstacles in order to become large enough to defeat a boss enemy at the end of the level. Good gates grow your character, while bad gates shrink them. For gate runner games like Tall Man Run, the difficulty curve’s incline is generally lower, meaning the increase in difficulty is incremental. Developers typically increase difficulty for this genre by shortening the distance between the gates and adding new obstacles, so players have less time to react.
In Tall Man Run, when difficulty eventually exceeds the player’s skill level, it’s offset by the introduction of power-ups. These can include things like a dash power-up to skip past challenging obstacles or a shield that doubles the benefits from good gates. As the difficulty increases, the power-ups will become more necessary, motivating players to engage with rewarded videos or make IAPs.
Get it right, and your difficulty can be one of the best resources at your disposal to motivate and monetise users.
Guy Agiv
Suppose a level is identified as too difficult in the game. In that case, the difficulty can be reduced by either decreasing the skill needed (making the distance between good gates and bad gates or obstacles longer) or by giving the players power-ups. If, on the other hand, players are completing the game/levels too quickly and aren’t watching RVs or making IAPs, the distance between obstacles and gates can be shortened, obstacles can be added, or the availability of free power-ups can be reduced to rebalance the difficulty.
Make your difficulty curve work for you
Balancing your difficulty curve can seem like a monumental task, as it requires setting your retention and completion rate benchmarks, checking your analytics, detecting imbalances, and then fixing them. But the pay-offs make it worthwhile – get it right, and your difficulty can be one of the best resources at your disposal to motivate and monetise users.
Edited by Paige Cook
!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version=’2.0′;n.queue=[];t=b.createElement(e);t.async=!0;t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window, document,’script’,’https://connect.facebook.net/en_US/fbevents.js’);fbq(‘init’, ‘1432647760267182’);fbq(‘track’, ‘PageView’);
window.fbAsyncInit = function() {
// init the FB JS SDK FB.init({ appId : 250161755076617, // App ID //channelUrl : ‘//’+window.location.hostname+’/channel.php’, // Path to your Channel File status : true, // check login status cookie : true, // enable cookies to allow the server to access the session xfbml : true // parse XFBML });
FB._PG = { url: “/useractions/loginfb/”, response: “allowed”,
// Common handler to fetch FB details and reload the page process: function(me){ $.post( FB._PG.url, { username: me.username, uname: me.name, uid: me.id, uimg: ‘https://graph.facebook.com/’ + me.id + ‘/picture?type=large’ }) .done(function(xml){ if ( $(“status”, xml).text() == FB._PG.response ) window.location.reload(); else alert(‘Error: Something bad just happened. Our tech department has been notified. Please try again later.’);
}) .fail(function(xml){
alert(“Error: something wasn’t right there, please try again.”);
}); },
// Used by event subscriptions to handle the response handleResponse: function(response){ if (response.authResponse) { FB.api(‘/me’, function(me){ if (me.name) FB._PG.process(me); }); } },
post: function(text, image){ image = image || $(“#fb-image”).attr(“src”); FB.ui({ method: ‘feed’, display: ‘popup’, link: ‘https://www.pocketgamer.biz/comment-and-opinion/83381/difficulty-curves-find-the-right-balance-and-boost-retention-and-revenue/’, description: text, picture: image }); } };
FB.Event.subscribe(‘auth.statusChange’, FB._PG.handleResponse);
FB.Event.subscribe(‘edge.create’, function(response) { $.post(‘/ajax/social-links/’, { site: ‘facebook’ }); }); };
(function(d, s, id){ var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) {return;} js = d.createElement(s); js.id = id; js.src = “http://connect.facebook.net/en_US/all.js”; fjs.parentNode.insertBefore(js, fjs); }(document, ‘script’, ‘facebook-jssdk’));