I like the principle of your idea, but there is one thing.

All of the incapacitates must have multiple classes that can complete them just to take into account future class releases. More or less, we need the current incapacitate system, but implemented in your style instead of the current, one class hits one part til it breaks, system.