clintbellanger/flare — pull request #574 by mothmaster (2012-07-12 13:36:31+00:00)
Title: Difficulty Setting Feature

After raising this in the 0.16 dev discussion, I've reimplemented Difficulty settings for Flare, this time as an option during character creation that is immutable, as opposed to a Config menu setting.

This means a difficulty setting is added to each avatar's save file.
In mods/fantasycore/engine I've added a difficulty.txt file, which means you can easily configure the number of difficulty levels and their modifiers, as well as the default difficulty selection.

Currently, 'difficulty' acts as a global float variable (DIFFICULTY) which is used as a multiplier to influence enemy Hit Points as well as reduce the amount of HP damage the player takes (after damage calculations have been applied, and never reduced a successful hit to less than 1HP of damage). How difficulty affects gameplay is up for debate, but I thought this was a good start.

If there are any major objections I'm happy to cancel or modify this PR, but I thought I'd get it into a branch first so people can test it and see what they think.

Difficulty is not a high priority feature, but I think it will increase replayability - e.g. setting it to 'Easy' when switching permadeath on, or turning it to 'Hard' to give an experience player more of a challenge.

As the player creation screen got too busy, I had to shift the difficulty setting to a new screen, and I moved the Permadeath option there as well as it made sense to keep them together.