Hello, I am somewhat new to the editor, and I have a question about scaling abilites, I'll try and make this as clear as possible.
I have 3 attributes I use - Strength, Agility, and Intelligence. each give different things, and one of the things intelligence does is increases the spell damage and splash damage of abilities, so late-game when you have a lot of intelligence, you will be able to deal more damage with your spells than originally. Now here is my problem:
I also have healing spells in the game (that heal all units in an area of effect periodically every 2 seconds for 10 seconds) but they heal a set number. Now my question is: Is there a way to make it so the healing provided scales with my attribute of intelligence? Any advice is greatly helpful =D
- Thanks
Edit: - The healing applies an effect of type Modify Unit - and i use Effect:Vitals +20 life, +20 shield for every tick
You could use the Heal Dealt Multiplier field in the attribute, if I'm not mistaken, that will affect all healing done by the unit.
I have tested this, and it does not work. I set it to 2, and then used the spell when i had 14 intelligence, but i still only received the same amount of healing, as I expected after I read this post (i've been searching for hours now and can't find anyone with a solution :(
- 'Healing Multiplier' support
All buff now have a 'Heal Dealt Multiplier' field and a 'Heal Taken Multiplier' field.
It seems the Healing Multiplier only works for Create Healer effects, doesn't work on healings done by the Modify Unit effect.
You need some effect that serves only to activate the trigger. It could be something like a damage effect that does 0 damage, call it an indicator. Then create a trigger with an event responding to damage from that effect. In that trigger, use the damaging unit's stack count of intelligence to calculate your heal amount, and then modify the target unit's health by that amount.
Make sure to either use a damage type you don't use elsewhere for indicators or use the damage effect flags to prevent it from scaling and triggering damage responses.
Thank you very much, I have been experimenting with this but I am running into a problem. What I currently have in the GUI trigger maker:
1 event for each player:
environment: (Player x) uses effect - (the effect)
1 local variable:
intel = 0
2 actions:
Set Variable (intel) = stack count of intel on (triggering unit))
Set Triggering Effect Unit (Target) Life to ...
Now my problem is this: I am attempting to use arithmatic integers to make it equal to the unit property: current life of triggering unit + 20 + intel
but I cannot find a "current life" or "unit property" or anything like that under the integer to do this. I also cannot find a MODIFY unit property so i could juse add 20 + intel which would be much easier. How can I go about doing this?
The issue is that the unit property that you want is not an integer, it's a real/fixed value (with decimals). Change your variable type to real instead of integer. Then use Arithmetic (Real). An expression that evaluates to a real will also accept integers as parameters, so there's no need to convert the stack count of intelligence or the flat value (20).
Oh wow thank you very much! I have it working completely as intended now! My spell will actually heal a good amount once the hero is leveled. Thank you ver much once again! =D
Hello, I am somewhat new to the editor, and I have a question about scaling abilites, I'll try and make this as clear as possible. I have 3 attributes I use - Strength, Agility, and Intelligence. each give different things, and one of the things intelligence does is increases the spell damage and splash damage of abilities, so late-game when you have a lot of intelligence, you will be able to deal more damage with your spells than originally. Now here is my problem: I also have healing spells in the game (that heal all units in an area of effect periodically every 2 seconds for 10 seconds) but they heal a set number. Now my question is: Is there a way to make it so the healing provided scales with my attribute of intelligence? Any advice is greatly helpful =D
- Thanks
Edit: - The healing applies an effect of type Modify Unit - and i use Effect:Vitals +20 life, +20 shield for every tick
You cannot create scaling values using pure data. You will have to use triggers as well.
@BigDates: Go
You could use the Heal Dealt Multiplier field in the attribute, if I'm not mistaken, that will affect all healing done by the unit.
I have tested this, and it does not work. I set it to 2, and then used the spell when i had 14 intelligence, but i still only received the same amount of healing, as I expected after I read this post (i've been searching for hours now and can't find anyone with a solution :(
http:us.battle.net/sc2/en/forum/topic/9572937800
any other ideas?
How would I go about doing this? I haven't found any tutorial or anything documented about this from what i have searched
@BigDates: Go
You need some effect that serves only to activate the trigger. It could be something like a damage effect that does 0 damage, call it an indicator. Then create a trigger with an event responding to damage from that effect. In that trigger, use the damaging unit's stack count of intelligence to calculate your heal amount, and then modify the target unit's health by that amount.
Make sure to either use a damage type you don't use elsewhere for indicators or use the damage effect flags to prevent it from scaling and triggering damage responses.
@MasterWrath: Go
Thank you very much, I have been experimenting with this but I am running into a problem. What I currently have in the GUI trigger maker:
1 event for each player: environment: (Player x) uses effect - (the effect) 1 local variable: intel = 0 2 actions: Set Variable (intel) = stack count of intel on (triggering unit)) Set Triggering Effect Unit (Target) Life to ...
Now my problem is this: I am attempting to use arithmatic integers to make it equal to the unit property: current life of triggering unit + 20 + intel but I cannot find a "current life" or "unit property" or anything like that under the integer to do this. I also cannot find a MODIFY unit property so i could juse add 20 + intel which would be much easier. How can I go about doing this?
@BigDates: Go
It's no trouble.
The issue is that the unit property that you want is not an integer, it's a real/fixed value (with decimals). Change your variable type to real instead of integer. Then use Arithmetic (Real). An expression that evaluates to a real will also accept integers as parameters, so there's no need to convert the stack count of intelligence or the flat value (20).
@MasterWrath: Go
Oh wow thank you very much! I have it working completely as intended now! My spell will actually heal a good amount once the hero is leveled. Thank you ver much once again! =D
@BigDates: Go
Awesome. :)