- Joined
- Mar 27, 2012
- Messages
- 3,232
I've been brainstorming about this for ages and now finally reached a graspable solution. Atm I have yet to iron out all the kinks, but the prototype mostly works.
Why custom buffs?
Default blizzard buffs come with many limitations:
1. Must always use an ability to grant them.
2. Similar abilities usually don't stack, meaning that you can't have variations of an ability in use.
3. Stat gains have to be premade in object editor.
4. No decent way to add new stat types, such as flat lifesteal.
By now I have fixed all of them.
At first I made a bonusmod, but that didn't prove to be enough, because a bonusmod is only a core system. It does nothing more than provide stats, but it does not keep track of their sources.
Features:
*Can place an ability on the unit(if the specified integer(buff ID) corresponds to one). This is mostly for visuals, but can be used for else too.
*All stats are added to a buff separately upon creation (defined in the invoking code).
*Stacks - Having multiple buffs of the same type increases the level of their ability (no limit, even if the ability has a limit in object editor)
*Stacks2 - Multiples of the same buff can be on a unit, if you allow them to be.
*Duration defined by triggers only.
*Some extra stats: lifesteal rating(like percentage, but diminishing), flat lifesteal, piercing(ignores armor), efficiency(reduces mana cost of custom spells).
*Most normal stats: armor, damage, attack rate, life, mana.
New stats can be added fairly easily by changing the code, but it is unlikely that I'll make it semi-automatic due to design constraints.
The example map has a custom version of inner fire that is cast on every unit when any spell is cast. This is more a proof of concept and thus, lacks some features that could easily be added, such as: buffs disappearing upon death, percentage damage bonus.
All attached .j files are required (Nestharus mode, anyone?) with the addition of ExtraConstants, that I couldn't upload here due to already having it uploaded in another thread.
What do you think?
Why custom buffs?
Default blizzard buffs come with many limitations:
1. Must always use an ability to grant them.
2. Similar abilities usually don't stack, meaning that you can't have variations of an ability in use.
3. Stat gains have to be premade in object editor.
4. No decent way to add new stat types, such as flat lifesteal.
By now I have fixed all of them.
At first I made a bonusmod, but that didn't prove to be enough, because a bonusmod is only a core system. It does nothing more than provide stats, but it does not keep track of their sources.
Features:
*Can place an ability on the unit(if the specified integer(buff ID) corresponds to one). This is mostly for visuals, but can be used for else too.
*All stats are added to a buff separately upon creation (defined in the invoking code).
*Stacks - Having multiple buffs of the same type increases the level of their ability (no limit, even if the ability has a limit in object editor)
*Stacks2 - Multiples of the same buff can be on a unit, if you allow them to be.
*Duration defined by triggers only.
*Some extra stats: lifesteal rating(like percentage, but diminishing), flat lifesteal, piercing(ignores armor), efficiency(reduces mana cost of custom spells).
*Most normal stats: armor, damage, attack rate, life, mana.
New stats can be added fairly easily by changing the code, but it is unlikely that I'll make it semi-automatic due to design constraints.
The example map has a custom version of inner fire that is cast on every unit when any spell is cast. This is more a proof of concept and thus, lacks some features that could easily be added, such as: buffs disappearing upon death, percentage damage bonus.
All attached .j files are required (Nestharus mode, anyone?) with the addition of ExtraConstants, that I couldn't upload here due to already having it uploaded in another thread.
What do you think?