I'm almost finished my semi-RL project, but I'm missing an important part:
the maths behind the game, is what is producing me headaches.
The game is mostly stat-based. Player stats need to be carefully planned. Each lvl the player receives some stat points to distribute.
There are no "different" classes. This is, the player starts with a specific profession like could be warrior, mage or rogue assassin. Depending on the starting class, he will start with different spells/skill and different predefined stats, but he can access to everything in the game if he met the appropriate prerequisites, such as a warrior can cast fireballs if he learns how to do so.
Specifically, classes only define the starting stats, items and skills, and also the game story and starting map.
Experience will be usually won by slaying monsters. Experience to level up increases each level, at lower levels it increases little, but for later levels increases a lot.
It's not a coffeebreak rl. It's needed relatively much time to beat the game.
Minimun level = 1, max level = 30 or 35, maybe 40.
With all that info we can continue.
Actually I got several problems:
1) The Experience system: how should I calculate the experience given to the player? Using monster's health? monster's level? monster's subjective difficulty? totally random? I'm not sure on how to base experience wins, and which formulas would be the best for scaling experience gains in a realistic and interesting way.
2) Monsters' difficulty. How? I need a good way to scale and calculate the monster's difficulty. I am interested in a semi-random monsters' stats and skills generation, but a dragon will be always a true challenge. They can be beatable, but the player needs serious strategy. Also, a Dragon lvl 10 is weaker than a Dragon lvl 50, and even when the player is level 40, I want him to don't want to meet that lvl 10 dragon. Basically, I want some monsters prototypes with an overall power that gets scaled in harder maps, so monsters that are easy to kill, they are always easy to kill, and fearful monsters are always fearful, although low level fearful monsters are less fearful than their high level counterparts.
3) I got another question but I have just forgot it...
Well, thanks in advance, cya.
[EDIT]
I remember now the other question:
3) This is, i think, the most complex thing. The critical and dodge chances. Actually they are based on agility stat. When the player assigns points to agi, crit and dodge increases. So far, this is ok. But I need a system where crit% and dodge% is affected by player level. I mean, if the player never puts points into agi, the crit and dodge will decrease. So, player that never put points into agi will see their dodge and crit being decreased each level. But players that want a crit ro dedge based character, need to really invest into agility, so they compensate the level loss. Briefly, crit% and dodge decreases each level. Because crit and dodge could be a very powerful thing, I want that players investing into it can get a really nice crit%, maybe 35% or 40%, but they need to focus heavily into such stat.
But in the other hand, there are players that are not interested in crit or dodge, and they will get pretty low on them. BUT I don't want to reach zero on it.
Basically, crit% decreasing each level is cumulative. Each level, the player needs to invest more into AGI to compensate the crit% loss, so getting high crit% requires equipment with AGI. So, +1 AGI gives +1% crit, for example, but at level 2, crit% is reduces by 0.1, at lvl 3 by 0.2 and at level 20 reduced by 1.5%, for example.
But additionally, the crit% never gets lower than a certain value. It's like the crit% has both limits, one superior and one inferior, and reaching any of them is harder when you are closer.
I'm not sure if using logarithms here would give good results, or there is already an easy way to do this with a simple formula.