Currently hp, sp and grace have some very strange rules to define max_hp, max_sp and max_grace. So strange in fact that defining how the functions result for a given character is almost impossible.
The calculation for max hp is currently non-linear and can be difficult to understand. It has a rapid increase in early levels (before 11) but then only slowly improves. This results in new players having very low hp whilst trying to learn how to play, but then quickly grows to be almost overpowered by level 10, before slowly tapering off and 'arguably' being stable to predict. see hp page for details about existant system.
make max hp based off a few more variables but make the relationship to CON and level more predictable. Something like:
maxhp = racehp + classhp + (conmod * con) + (levelmod * level)
[outline how code currently works]
[outline how code currently works]