If you want an ability like the Cryptlord's passive ability that can reduce the ranged attacks' damage here's a kinda solution:
give tha skill to your hero and make it give a buff.
Here comes the trigger:
Need one that stores the hero's heath in a real variable everey .... 0.2 seconds...
Another:anytime a ranged unit attacks a unit that has the buff(you can make the spell with 3 buffs- one for each level to detect in the trigger its level) set the hero's health to(for example): health now + ((stored health-health now)/2)
and that will heal the half of the damage
the problem is: the hero will take the damage and after that it will be healed, so if it has 60hp, and has 50% damage reduction, and a unit attacks it with 100 damage it will die, cuz it works like that:
1.hero takes damage
2.hero will get some lost hp back
*if you really want i may make the triggers for ya