I haven't seen anyone else figuring this out so i'm gonna show you a little trick.
Setting the skill time in the AddSkillProp will make buffs permanent, they only get removed on death or if a Billposter uses the hero-skill.
The reason why this works is this:
buff.cpp
Code:
BOOL CBuffSkill::IsRemovable( CMover* pMover )
{
.
.
.
return pAddSkillProp && pAddSkillProp->dwSkillTime > 0 && pSkillProp
}
If you use this with skills that have additional duration by stats like the assist buffs the countdown timer still will be displayed so it is useful to remove RT_TIME from skills with this feature.
If you guys are interested i also got a Passive and Toggle System (Toggle= Use Skill->Buff added, Use Skill again -> Buff remove, usefull for stuff like Rage on Knights)