FYI, "spell systems" are already there and are industry standard to a certain degree. They're called scripting languages and they are used to script weapons or spells.
Let not fool ourselves, spells are programs and what we're really doing here is to research a visual scripting language which
- Is intuitive to user, both in term of use and products
- Plugs well with the game
- Allows extensive inspection of internal structures to understand and balance effects.
From an implementation standpoint, Heal and Drain health are the same thing, except they add a different amount of data. Design top-down is good but to make this work, we have to think it at all levels way down.
Unclear results. What is the product of necromancy, wall, multiple? I have difficulty understanding what configurations are valid. There are no such things as "examples". There must be clear rules.