I never was a fan of invincibility for long periods (2-4 seconds) after being hit. Only for the time of a damage taken animation should the player not be harmed.
Invulnerability will be optional, and can be set to a specific time of the player's choosing.
One of the things I had to account for in Tower of Kanthor was the armor of the player that changed the damage enemies did. If you make a health system I recommend putting in some kind of defense value (maybe an actor value) that can be looked at before calculating how much damage to do.
I'm planning on doing that. It'll be one of the optional "filters" the core behavior can send incoming damage amounts through.
Essentially, the plan is at creation, check for these filter behaviors on the actor, and then remember them so the core manager can react accordingly when processing certain actions. Should the defense filter not be attached to an actor, though, the core behavior still works just fine.