Hello. My map is having pretty god progress, considering school in session and everything, it's getting pretty close to a beta release. Anyways, I have something that I'd like to ask. So I have a tower system going for the zerg race where I used abilities to apply behaviors, since I wanted upgrades to only effect that one single tower. Well, it went great! However, the towers need one last push, something to make zerg awesome, and zerg is lacking a unique point. So I thought I'd make the queen have a "tower enhancer" where it doubles the effect of the "upgrades" (Doubles behavior) for 25 seconds. I have the ability set up, and I know it can be done in the data editor, but I prefer triggers. Anyways, I don't know how to double all of the behaviors on a unit for 25 seconds. Any help is appreciated. Thanks!
This would only really work well in triggers if there is a way to apply a buff for 25 seconds only using triggers. Or of course you could just make a duplicate buff with a set duration of 25 seconds, I know how to work that.
First you'd have to get the triggering effect: target unit. From there you would grab the number of behaviors on that unit and store it to an int. Then apply that number of the 25 seconds only buff to the same unit. And that is about it.
Ok. So I may have another solution, but I still can't quite get it. I have it so the ability creates a place holder buff on the unit. I'm not too sure on how to get the effects I would like on it now. Is there a way to do it through this new placeholder buff?
Okay, first of all do you have a buff upgrade already made right? All you need to do is make a copy of it in the data editor, and rename it something you will know. Like if the buff is ZergTowerUpgrade, maybe make it ZergTowerUpgradeBuff. After you have made the copy, simply go to the Duration field of the behavior and set that to 25.0.
Not sure if you have your ability made or not yet, but you'll just need to make an Ability setting the Ability Type to targetted effect. The effect really isn't important, just make it a set effect named ZergBuff or something like that. All it really needs to do is show that it is being used on the tower or whatever you are buffing. This is what we would call a dummy effect. It is just used to communicate with triggers. I am pretty sure it will be set to target by default, so you should be pretty much done in data now.
Triggerwise, you'll want to make an event based on effect used, looking for your ZergBuff effect. Next you'll want to make a unit variable called ZTower or something, and set that to Triggering Effect: Target Unit.
Next you want to make a variable of type integer, like buffCount or whatever. We are going to use this to store the number of behaviors on the tower, then apply a buff equal to that number.
Next off you'll make an action, of type set variable. Pick your buffCount as your variable, and then you'll want to count the number of behaviors, of behavior type ZergTowerUpgrade, and store it to this variable.
Lastly you'll make an action, of type apply behavior to unit from player P. Your amount will be buffCount, the behavior you'll be applying is ZergTowerUpgradeBuff, your unit is ZTower, and your player is triggering player.
And that is roughly how you do it, I'd post screenshots, but I'm not at the editor at the moment, that logic will work however.
Rollback Post to RevisionRollBack
To post a comment, please login or register a new account.
Hello. My map is having pretty god progress, considering school in session and everything, it's getting pretty close to a beta release. Anyways, I have something that I'd like to ask. So I have a tower system going for the zerg race where I used abilities to apply behaviors, since I wanted upgrades to only effect that one single tower. Well, it went great! However, the towers need one last push, something to make zerg awesome, and zerg is lacking a unique point. So I thought I'd make the queen have a "tower enhancer" where it doubles the effect of the "upgrades" (Doubles behavior) for 25 seconds. I have the ability set up, and I know it can be done in the data editor, but I prefer triggers. Anyways, I don't know how to double all of the behaviors on a unit for 25 seconds. Any help is appreciated. Thanks!
@littlefury916: Go
This would only really work well in triggers if there is a way to apply a buff for 25 seconds only using triggers. Or of course you could just make a duplicate buff with a set duration of 25 seconds, I know how to work that.
First you'd have to get the triggering effect: target unit. From there you would grab the number of behaviors on that unit and store it to an int. Then apply that number of the 25 seconds only buff to the same unit. And that is about it.
@Deadzergling: Go
Could you take it step by step for me? I'v never done much with the data editor. Thanks
Ok. So I may have another solution, but I still can't quite get it. I have it so the ability creates a place holder buff on the unit. I'm not too sure on how to get the effects I would like on it now. Is there a way to do it through this new placeholder buff?
@littlefury916: Go
Okay, first of all do you have a buff upgrade already made right? All you need to do is make a copy of it in the data editor, and rename it something you will know. Like if the buff is ZergTowerUpgrade, maybe make it ZergTowerUpgradeBuff. After you have made the copy, simply go to the Duration field of the behavior and set that to 25.0.
Not sure if you have your ability made or not yet, but you'll just need to make an Ability setting the Ability Type to targetted effect. The effect really isn't important, just make it a set effect named ZergBuff or something like that. All it really needs to do is show that it is being used on the tower or whatever you are buffing. This is what we would call a dummy effect. It is just used to communicate with triggers. I am pretty sure it will be set to target by default, so you should be pretty much done in data now.
Triggerwise, you'll want to make an event based on effect used, looking for your ZergBuff effect. Next you'll want to make a unit variable called ZTower or something, and set that to Triggering Effect: Target Unit.
Next you want to make a variable of type integer, like buffCount or whatever. We are going to use this to store the number of behaviors on the tower, then apply a buff equal to that number.
Next off you'll make an action, of type set variable. Pick your buffCount as your variable, and then you'll want to count the number of behaviors, of behavior type ZergTowerUpgrade, and store it to this variable.
Lastly you'll make an action, of type apply behavior to unit from player P. Your amount will be buffCount, the behavior you'll be applying is ZergTowerUpgradeBuff, your unit is ZTower, and your player is triggering player.
And that is roughly how you do it, I'd post screenshots, but I'm not at the editor at the moment, that logic will work however.