Difficulty in games is a tricky matter to deal with. Make them too hard, and you'll exclude a significant proportion of your audience. But then as soon as you start using the dread word "accessible", hardcore gamers will run for the hills. They'll proclaim you as a patronising nanny developer, and claim that you want videogames to consist of nothing more than one-button credit-rolling simulators playable with the human tongue, containing no graphics, completable by babies aged 0-6 hours, and using only single syllable words in those credits so as to not offend the barely-literate demographic.
Thus there are various solutions to keep everyone happy. Selectable difficulty settings are the most traditional and widely used, but then there are games which dynamically shift the hardness based on how well you're doing. And this new unofficial Mario game does that to an insane level.
Above: If you're crap, the game will look like this
Rather than simply shift perameters such as enemy health and damage dealt out by the player, Inifinite Adaptive Mario by Ben Weber, a PhD candidate at UC Santa Cruz, builds whole new level designs based on the player's successes and failures. Levels are redesigned to various degrees upon each death, based upon factors like how far the player got progresses and how many times they die without finishing a stage. Check out his full explanation for all the details.
It's playable right now via a quick Java download, and having just tried it out I can vouch that it absolutely does work. A few early deaths, and suddenly there were a lot more coins and a lot less enemies. Gaps o' death became smaller and less frequent too. But after acing a few levels, exactly the inverse became true. So, should this sort of technology start cropping up in commercial games in the future? As great as this demo is, I'm not so sure.
Above: If you're good, this will be your reward
Personally, I do think we do need a more sophisticated difficulty system than the basic three-setting format, but I think adaptive difficulty is the way to go. It's surely the best of all worlds, failing to patronise less skilled or beginner players by forcing them to choose the "I am crap" option at the start, and more importantly shifting dynamically as the pace of the game changes. Every player has different strengths and weaknesses, and will find different elements of games easier and harder than others, so the blanket changes of locked-down difficulty settings just seem too much of a blunt object solution to me. Better to let the player tell the game which bits are too hard for them rather than the other way around. And with adaptive difficulty, you don't end up getting bored stuck on easy mode as you inevitably get better at the game.
Procedural level design though, I'm less sure about. While this is certainly some impressive technology, I'm not convinced by the philosophy of removing challenges outright if a player seems to be having trouble with them. Doing so also removes any hope of the player actually improving his or her skills through practice, because simply, there's nothing to practice.Above: Xbox Live Indie Games shooter Leave Home is a fantastic example of adaptable difficulty done right. Check out my feature on it to find why it's such a brilliantly clever piece of work
It's no problem to make enemies die after fewer shots, because the player still has to aim accurately and learn to and fire and defend at the right times. It would be okay to give Mario scalable damage resistance in Super Mario Galaxy 3, because the player would still have to master the core components of the game's physics and move-set in order to navigate the levels. The scaled parameters would just give the weaker or less experienced player a little more breathing room in which to work all that out.
But what do you think? How should games try to cater their difficulty to their audience's abilities? Are adaptive games the way to go? Are selectable settings fine? Or should we all just man up and accept games being as hard as their developers want them to be?