One of the major challenges in video game design is making a game difficult enough to challenge hardcore gamers, yet accessible enough to keep novices interested.
The first step for players of any level is learning the rules of the game. Before you can start any real challenge, you need to grasp the basics of how to play. Learning rules is already a challenge in itself, which is why the first levels of any good game are relatively easy for players of any level.
Once the rules are understood, a game needs to have challenges that players consider worth playing for. If the challenges are way too difficult, new gamers become frustrated and give up on playing the game, while if the challenges are too easy, hardcore gamers quit because the game is not challenging enough to engage them.
A dynamic difficulty system seems to be the solution. In a dynamic difficulty system, each challenge changes to be more difficult for the hardcore gamer and easier for the newbie. This way the game is both challenging for the good player and accessible for the beginner gamer.
The drawback, of course, is that this system rewards bad players. Good players perceive this as “unfair,” since by playing well, they make the game harder. If a hardcore gamer finds the trick to understanding how the dynamic difficulty works, he can be tempted to play badly on purpose, taking away from the engaging fun of the game.
– I’m analyzing the player’s performance and adapting the difficulty progression accordingly.
– Good players will gather more resources and unlock advanced technologies faster. They will finish the game faster with a higher score. Beginner players will need to spend more time by doing side quests to be able to gather enough upgrades to kill the final boss. Reward = time and score.
– Good and bad players alike should be able to fail if they make big mistakes. If failure is impossible, player decisions become
Drawbacks of theis solution:
We can think that if the difficulty is dynamic, we don’t need to spend as many hours adjusting it. But if I want failure to still be possible on big mistakes, I still need to adjust difficulty adaptation latency through play testing. I need to be forgiving on small mistake and lower the difficulty accordingly, but on big mistakes I need to penalize players. It is this threshold between big and small mistakes that needs to be found and balanced.
Don’t hesitate to tell us what is your opinion on dynamic difficulty or if you think of other solutions.