Personally, I think I would be much happier in an MMO without classes. I’d rather a gear based system or a skill based system, and if you dig around here you can find all the reasons why (mostly it’s because I want to move toward getting away from “level” as a separator and the focus of play), notably this post last week. But, if a game is going to have classes, I think I would prefer a game to simplify it at much as possible.
Rather than try to make a dozen classes, look at your combat design and build classes based off of it. For example, let’s take the most popular design, the trinity. Tank, DPS, heal. Or, in other terms, taking, dealing and recovery. Really, a game designed this way only needs three classes. Four if you really want to split up melee based DPS and range/magic/whatever based DPS, but functionally they are the same. If your game is going to have a small group of players potentially fighting groups of NPC enemies larger than their group, you might want to also have a crowd control class.
Once you establish your primary roles, those are your classes. But to keep a game from being too samey, as your classes level, give them talent trees that allow the player to add flavor to their character. In my opinion, the talent trees should essentially define a secondary role/class for the character.
For example, rather than having a warrior, a priest, and a paladin in your game, have only a warrior and a priest, then give the warrior a talent tree of priest-lite skills and the priest a tree of warrior-lite skills. If your game only has three classes (your game is 100% trinity based), then a warrior would have two trees – a priest tree and a DPS tree. Your priest would have warrior and DPS trees. And your DPS would have warrior and priest trees. The one thing you want to avoid, however, is having a tree that improves directly on the base class. Warriors do not get a warrior tree. The reason for this is to avoid having a clear “optimal path” for development. In WoW, for example, if you search around you can probably find the mathematically proven superior talent tree build for a tanking warrior. Any player who takes a “fun” skill over the optimal path may find themselves unable to get into some raiding guilds. All max level warriors should be as good at being a warrior as every other max level warrior, the difference will be in their gear (theoretically available to everyone through effort or auction) and in their tree which doesn’t affect their ability to take damage, taunt enemies, and whatever else you’ve determined is the primary role of the warrior.
Primarily, I like this idea for it’s simplification of balance. If you have one tanking class, you only need to adjust his ability to tank up or down and needed. If you have a half dozen tanking/semi-tanking classes, now you have to make sure that semi-tank A isn’t better than tank B without making semi-tank A useless and all sorts of complicated gyrations just to keep all the plates spinning.
Anyway… those are just my thoughts. I could be wrong.