- spell forms (ranged damage spell, obstacle spell) of specific levels;
- don't tinker with individual spell elements on a per-spell basis;
- swap or add features into forms to create specific spells;
- customize on a spell-list-by-spell-list basis.
I don't like the bulky AD&D-style spell blocks, particularly since my "similar base elements for similar spell types" approach would make the information very repetitious. So, I was working on compressing the spell blocks as much as possible. If, for example, all variable damage spells do damage equal to 1d6 x caster level or HD, I could just note that in the description of the spell list, and use a single-character code to indicate that a particular spell has variable damage ... maybe a "D", so Fireball might be written like this:
Fireball (Attack: DRA) creates a fiery explosion at the indicated location.And Lightning Bolt becomes:
Lightning Bolt (Attack: DR) strikes target in indicated direction, can bounce.Then something occurred to me: Fireball is a 3rd level spell with three level-based variables; Lightning Bolt is a 3rd level spell with two level-based variables plus one feature (bounce.) I could define spell level in terms of # of variables + # of extra features.
Cantrips (0-level spell effects) have no variables and no real features; they duplicate ordinary actions, but suspend one requirement normally associated with those actions. A Spice cantrip duplicates the action of sprinkling spice on something, but suspends the requirement of having that spice physically on-hand; a Gather cantrip duplicates the action of gathering nearby items into a pile, but suspends the requirement of actually touching the items. Adding a feature -- expanding Spice into a generic small quantity of substance creation spell, Create Ingredient -- would make the spell 1st level; its range, quantity created, duration, and other factors would be fixed, but would be better than the equivalent cantrip. Similarly, adding variable range to a Gather cantrip to define a Snatch Item spell would make the spell 1st level; its range would be something like 1" x level.
I haven't fully tested this against the existing spell list, but it looks promising.