In case anyone is interested, here\'s a discussion on how to create a formula that results in diminishing returns from a minimum value to a maximum value: http://askville.amazon.com/equation-infinite-100/AnswerViewer.do?requestId=3535760
An example of the above that I plan to use as part of my future modding plans:
Weapon group damage = 500 - (50000 / (s + 100))
where s is the number of blocks in the weapon group.
Since s increases much faster than x, y, or z (the group dimensions) it makes sense to increase the ? multiplier to reduce the rate that the damage value approaches 500. (I\'m also increasing the HP of many non-terrain blocks in my mod, hence why I\'m using 500 instead of a smaller maximum. A filled 5x5x5 group (125 blocks) still only does 278 damage, and a 10x10x10 group (1000 blocks) only does 455 damage. Somewhere in between, you get less than one damage gained per block.)
The OP\'s class system idea could be implemented with soft limits simply by using diminishing returns and making the weapon stats for one weapon class become inferior to another weapon\'s stats at the same group size.
I\'m still hoping that schema implements weapon and subsystem properties into the BlockConfig.xml file soon so I can actually try my weapon ideas out.