Sunday, September 6, 2009

Class updates

As part of the groundwork for getting additional classes into the game, Locane and I have been digging through the code and trying to condense common routines and eliminate dependencies. He's been working largely on uncontroversial skill changes, to merge together the skill handling routines and make it easier to add skills in the future. I've been working on player regen and healing. This is a bit more controversial.

Quite a bit more controversial, as it turns out.

The fundamental problem with regen and healing is that the algorithm was put together over a decade ago, and hasn't been fundamentally altered since. In its simplest form, caster levels are pitted against fighter levels, and regen is heavily tilted in favor of the winner; higher casting level means greater mana regen and less hitpoint regen, while higher fighter level is the reverse.

This balancing act was a zero-sum game. Gaining a single level in a class could force you to trade hitpoints for mana; and at higher levels, a caster for example has no choice but to gain levels in fighter classes. The only thing that made this balancing act of a system usable is cast level equipment, which allowed players to push around the balance point.

Unfortunately, adding new classes isn't really compatible with this. We have also received a number of complaints over the years about unusual side effects and problems with the system. I finally made the decision to try something radical, rather than continuing to tweak the existing code.

The last couple of days, while hectic, appear to be quite an improvement. The level/balance dependency is gone, and I've even managed to keep cast level somewhat usable. Most players have increased net regen, which is probably bad in the long term, but in the short term allows work to progress.

Something unusual is that the value of mana regen varies wildly based on the player and their playing style. I have a couple of fighter primaries totally geared out like casters; these players complained loudly about being dented. This type of player would gladly trade hitpoint regen into mana at a 4:1 ratio, double the standard 2:1 typically found with heal spells. Most other players are happy with 2:1, as they burn through mana and hitpoints almost equally as they play.

The plus side is that this work has eliminated yet another choke point for pushing through additional classes. Unfortunately, there remain quite a few equally controversial areas that will need to be updated.

No comments: