Building a More Perfect Class

An improved method for creating new B/X character classes

In 2001, I wrote Building the Perfect Class to provide a consistent framework for building new D&D classes. The framework broke down each class into discrete abilities, each with a certain XP value; when summed, the total XP value was what you needed to advance. To assign the right XP value to each ability, I reverse engineered each of the Rules Cyclopedia classes, so the resulting framework ensures that new classes are on par with those in the rulebooks.

The original framework did what it was supposed to, but it was possible to “game” the system and create effective classes with very low XP requirements. It’s a munchkin ploy, but it bothered me, so I revisited the material in 2013 with an eye toward fixing this issue. The updated framework is below.

DISCLAIMER: Two items come to mind: First, a lot of people who want to customize classes are referred to Paul Montgomery Crabaugh’s article “Customized Classes” in DRAGON #109 (May, 1986). While Crabaugh’s material is well-suited to tweaking an existing class, his system does not allow you to build new classes that balance against those in the rulebooks. The framework below can be used both to customize existing classes and create new ones. Second, despite my best efforts, the magic-user continues to defy my OCD–I just can’t get his XP values to fit the pattern (though this revision is closer to the mark). All this is to say that while I may have puzzled out a way to assign consistent XP values to each class, this entire exercise is an example of making the facts fit my views, not the other way round; while the framework is solid and works pretty well, it’s not meant to explain or justify how the core classes were created.

Building A Class

Each class is described via 10 categories:

  1. Hit Dice: the die type used to roll hit points
  2. Saving Throw: the class’s saving throw table (X24)
  3. Attack: the class’s “to-hit” progression (X26)
  4. Armour: the class’s armour choices
  5. Weapons: the class’s weapon choices
  6. Spells: the class’s spell-casting ability
  7. Special Abilities: the class’s special abilities, not based on race
  8. Skills: the class’s learned skills, not based on race
  9. Weapon Mastery: the class’s weapon proficiency slots (from the Rules Cyclopedia)
  10. Level Limit: the class’s experience level ceiling

For each category, pick a value and record the corresponding XP cost. The total XP cost is the base XP required to earn 2nd-level.

Hit Dice

The die type used to roll hit points; assumes that hit points are rolled up to Name Level (9th), after which each level grants a static number of hit points and Constitution bonuses no longer apply.

  • d4 = 100XP
  • d6 = 200XP
  • d8 = 300XP
  • d10 = 400XP
  • d12 = 500XP

Saving Throw

The class’s saving throw table; this does not account for saving throw bonuses or penalties in special situations.

  • Cleric = 300XP
  • Dwarf / Halfling = 400XP
  • Elf = 200XP
  • Fighter = 100XP
  • Magic-user / Thief = 150XP


Demi-humans in Cook’s Expert rulebook use the same attack table as Fighters, though I’ve increased the XP value due to their ability to earn attack ranks at higher levels.

  • Cleric / Thief = 200XP
  • Demi-human = 400XP
  • Fighter = 300XP
  • Monster = 500XP
  • Magic-user = 100XP


  • Any armour type = 200XP
  • No armour allowed = 0XP
  • Restricted armour type(s) = 100XP


  • Any weapon type = 200XP
  • No weapons allowed = -100XP
  • Restricted weapon type(s) = 0XP


Fractions apply to the class’s level and indicate equivalent casting ability. For example, “Cleric 1/2” means that at 6th-level, the class casts as a 3rd-level Cleric.

  • Cleric = 400XP
  • Cleric 1/2 = 200XP
  • Cleric 1/3 = 150XP
  • Cleric 1/4 = 100XP
  • Magic-user = 1,600XP
  • Magic-user 1/2 = 800XP
  • Magic-user 1/3 = 600XP
  • Magic-user 1/4 = 400XP
  • No spells = 0XP

Special Abilities

These are “niche” capabilities, learned either as part of class training or inherent to racial type. Special Abilities are useful only in particular circumstances. Each Special Ability is worth 100XP. Examples include:

  • Cast Magic Spells in Armour
  • Detection (per item: secret doors, slanting passages, new construction, et al.)
  • Increased Movement (as mystic)
  • Infravision
  • Inherent Spell-casting
  • Initiative Bonus
  • Racial Language (per language)
  • Read Spell Scrolls
  • Special Attack (per attack: Backstab (as thief), Fighter Combat Options, Gentle Touch (as mystic), Lance Attack, Martial Arts (as mystic), Multiple Attacks, Set Spear vs. Charge, circumstantial “to-hit” bonus)
  • Special Defence (per defence: Hide (as Halfling), Immunity to ghoul paralysis (as elf), Incremental AC bonus (as mystic), Saving Throw bonus, circumstantial AC bonus)
  • Turn Undead


Skills are learned abilities that can be applied in a variety of circumstances. Each Skill is worth 50XP. Examples include:

  • Mystic skills (per skill: Acrobatics, Awareness, Blankout, Heal Self, Mind Block, Resistance)
  • Thief skills (per skill: Climb Walls, Find Traps, Hear Noise, Hide in Shadows, Move Silently, Open Locks, Pick Pockets, Remove Traps)
  • General Skill (per skill; from the Rules Cyclopedia)
  • Read Normal Languages (as thief)
  • Speak with Animals (as mystic)
  • Speak with Anyone (as mystic)

Weapon Mastery

Weapon Mastery is a proficiency system from the Rules Cyclopedia. If you don’t use Weapon Mastery, select the “Non-fighter” option.

  • Fighter (4 initial weapon slots, +1/3 lvls) = 600XP
  • Demi-human (Unlimited initial weapon slots, +1/4 lvls) = 200XP
  • Non-fighter (2 initial weapon slots, +1/3 lvls) = 0XP

Level Limit

  • Advancement to Name Level = -100XP
  • Advancement is Unlimited = 0XP

Level Advancement Table

Once your Base XP (bXP) is determined, you can complete the level advancement table as shown below. Use the Experience Point column most appropriate to the class type created:

                                 XP Requirements
Level         Cleric        Fighter        Magic-user        Thief
-----         ------        -------        ----------        -----
  1           bXP x0         bXP x0           bXP x0        bXP x0
  2           bXP x1         bXP x1           bXP x1        bXP x1
  3           bXP x2         bXP x2           bXP x2        bXP x2
  4           bXP x4         bXP x4           bXP x4        bXP x4
  5           bXP x8         bXP x8           bXP x8        bXP x8
  6           bXP x16 +1K    bXP x16          bXP x16       bXP x16 + 0.8K
  7           bXP x32 +2K    bXP x32          bXP x32       bXP x32 + 1.6K
  8           bXP x64 +4K    bXP x60          bXP x60       bXP x64 + 3.2K
  9           +100,000*      +120,000*      +150,000*       bXP x128 + 6.4K
 10           +100,000*      +120,000*      +150,000*       +120,000*
 11           +100,000*      +120,000*      +150,000*       +120,000*
 12           +100,000*      +120,000*      +150,000*       +120,000*
 13           +100,000*      +120,000*      +150,000*       +120,000*
 14           +100,000*      +120,000*      +150,000*       +120,000*
*  Cumulatively add this figure to the last calculated bXP value. For example, 
   a 12-level cleric-type with a base XP 1,500 is [(bXP x64) + 4K + 400,000] 500,000XP.

Final Words

All the calculations above are in the Building A More Perfect Class spreadsheet. Go to the “New Classes” section on the first tab and start filling in the values for each category using the drop-down menus. When you update all 10 categories, go to the second tab and enter the base XP value to create the Level Advancement Table up to 36th-level.

As always, suggestions and questions are welcome in the comments. If you’re feeling extra social, share your new classes, too–I love to see how others interpret and use this tool.

(Visited 1,918 times, 1 visits today)

Erin Smale

Erin Smale is the author of the Chimera RPG and, a sporadic, rambling blog that provides tips and tools for the time-challenged game master. He lives in secret along the New Jersey coast with his ass-kicking wife Kim and astoundingly cute dog Bella.

15 thoughts on “Building a More Perfect Class

  • August 17, 2015 at 18:23


    A thought for you would be to add another column and have that be for the maximum spell/prayer levels. Then tweak the partial ones a bit to make the spreadsheet work. I love the article and want you to still fight for Classic D&D. I would be willing to try and help you with it if you want. I have a few other tweaks I thought you might like to consider as well.


    • August 18, 2015 at 09:22

      Hi Keith – I’m always interested in improving the material. Can you show me an example of how the max. spell levels column would look, or would this replace the current Spells category?

  • August 18, 2015 at 20:17

    I do have a few ideas which could work. If you could get ahold of me via email we could try to look at it that way. I liked the original article and I am impressed that you came back to it and found a way to make it better. I tinkered with the original a little and I am trying to see a way to make my idea work. Thank you for not taking offense as it was not my intent. Just to help improve it a bit.


  • October 7, 2015 at 10:53

    One suggestion…I’d change name level limit into two items:

    1. Name level with attack ranks: 0xp
    2. Name level without attack ranks: -100

    and then remove the demi-human fighting class. This will leave existing classes priced the same but make 36 level demi-humans more consistent in prices.

  • February 20, 2016 at 03:00

    I don’t get exactly what you mean by “inherent spellcasting”. I’d be happy if you could explain it.

    • February 23, 2016 at 13:48

      Hi Thomas,

      Inherent spellcasting would be use of non-memorized spells, either at-will or to a daily limit, like a harpy’s charm, a cyclops’ curse, or a storm giant’s lightning bolt. None of the canonical classes have inherent spellcasting, but it’s noted here for those who want to include it as a class ability (e.g., a bard might cast the equivalent of charm once per day with his sweet lute).

      • February 13, 2017 at 20:54

        I actually used the older version of this to create a demi-human class with limited thief abilities, limited to 12th level, 1/2 M-U spell progression (using Illusionist spells from 1e/LLAEC), inherent spellcasting without the ability to learn new spells (except by leveling up and rolling randomly) and no scroll use. The Vulpen are a magical race of clever fox folk.

          • February 14, 2017 at 11:29

            Will do, I just have to copy it over from my notebook. I have a few other classes I’ve designed that I will revise to fit the guidelines as well.

      • August 4, 2017 at 09:44

        How would you balance this? It seems that there’s a vast difference between charm 1/day and lightning bolt at-will, but both would be 100xp under this system.

        • August 4, 2017 at 09:59

          This is an area where I’d eye-ball a little to see what felt right. If you are going for absolute balance, you might increment by the total spell levels. Charm (1st level) might be 100xp; lightning bolt (3rd level) might be 300xp.

          Another option is a house rule of mine: inherent spells require a “cooldown” based on level. For non-combat spells, 1 day per level; for combat spells, 1 round per level. For example, Charm might be allowed only once per day; lightning bolt would require a 3-round cooldown between uses.

          • August 4, 2017 at 13:00

            Cool, thank you! I guess it’s more art than science since there’s no actual class that uses such a power that we can compare with.

            While I’ve got you… one of the changes from your original Perfect Class doc is that in that system, if you don’t use Weapon Mastery, every class just adds 400xp. Here, if you’re not using WM there’s no difference between a class that would and wouldn’t have it. Wouldn’t this make a class like the Fighter over-valued, XP-wise, if you’re not using WM? Like, I could build a new class called the Fighting Guy who’s exactly like the Fighter in every way except without WM, for 1400xp, yeah? I’m curious as to your thinking behind this change.


  • August 7, 2017 at 15:14

    Good catch, Nat20. It looks like I included the WM values by default in this version, so you’re right about Fighting Guy. This is me trying to straddle the line between B/X and Rules Cyclopedia, which have identical class XP values, though the RC has more options.

    For games that don’t use WM, my recommendation off the top of my head is to use the value that corresponds to your class, and then apply some “weapon proficiency” advantage to compensate for the XP expenditure. For example:

    * Fighter: proficient with any weapon – just pick it up and use it
    * Demi-human: proficient with 2 weapons per level
    * Non-fighter: proficient with 1 weapon per 2 levels

    Usually, non-proficiency means a “to-hit” penalty, but that’s tedious (especially at low levels), so I suggest instead reducing damage die by 1 step (e.g., a normal sword does 1d8 damage; wielding it non-proficiently reduces it to 1d6 damage).

    Clearly, I need a more permanent solution… lemme noodle on that for a bit and see what I can come up with.

    • August 8, 2017 at 12:46

      I’m definitely coming from a B/X position rather than an RC one, and it seems to me that via weapon mastery, the RC was trying to balance the old fighter/caster divide a bit. I find it a pretty headache-inducing system, though. 🙂

      I want to say that the B/X fighter is probably a little weak in the long run, since it’s hard to justify 2000 xp as a starting point, but then again the M-U is absolutely terrible to start out with. I’m sure it’s not a coincidence that so many B/X-based retroclones (ACKS and Lamentations come to mind) give more to the fighter.

      I look forward to seeing what you come up with! I hope it’s clear that I find the work you’ve done extremely interesting and useful. 🙂


Leave a Reply

Your email address will not be published. Required fields are marked *

%d bloggers like this: