I actually made that ability today for my map XD
When it is being cast, the caster regenerates 40% of his max hp over 16 seconds.
Just make an ability based of Orc - Berserk and change the art of it.
Then go to the trigger editor and make a new trigger.
I have a custom hp regen system and therefor I don't need a large amount of code.
Event - Unit starts the effect of an abiliy
Condition - Ability being cast equal to REGAIN_HEALTH_ABILITY
Actions - Add casting unit to group REGAIN_HEALTH_GROUP
Wait 16 seconds.
remove casting unit from REGAIN_HEALTH_GROUP
Other trigger:
Event - Every ... seconds of game time.
Actions - Pick every unit in unit group REGAIN_HEALTH_GROUP and do actions:
Set life of picked unit to (life of picked unit + (% X maxlife of picked unit))
I also made it in jass so I have no problem with wait + casting unit.
(suggest you to do the same)
For the other abilities, let the real ability be cast by a dummy unit
