I DO know that.
Actually i got an effect- instant ability all set up.
my problem at the moment is that the caster stops moving if you use it
and for the weapons: would it work, upon activating the "fire front cannons" ability, to load the item in item slot 1 (how can you adress that in triggers?) compare it to a certain item (so basically switch it) until you have found the item it is (so lets say a "basic energy blast cannon")
then loading the stacksize of the item (lets say "5" in this case)
and then using an ability that launches that projectile(so "launch energy blast cannon, front" and calls that ability once for each stack resulting in 5 energy blasts beeing fired.
i think i wont do the reduced cannonball spread, seems to be far too complicated/impossible :)
Ah thx :)
I solved the cannonball spread in the following way:
create an efffect (set) called fire init
created 7 persistent creators (one center 3 left 3 right)
added all of those into the set and made it random (center one twice for increased chance)
the persistent creators then call the launch effect
and of course i need to get the inventory reading stuff done
so probably a trigger...
Unit - Any Unit uses "fire front" at cast (ignore shared abilities)
but i dont know where to go from there...
i want the trigger to return the item at inventory slot 1 and compare it to a cannon item(acually all cannon types until one is found)
(repeat for slots 2 and 3)
the other fire ability should check slots 4 5 and 6
but i dont see a proper item trigger to do that
btw: edited my posts, stating what i have done already
Yeah I looked at the trigger editor, doesn't seem to be any function for that..
So your only thing would be to keep track of all items' count with triggers, so that when you purchase an item, you set it's custom value to the default item count of that item.
Then when you use the item, you reduce the custom value of it by 1. Or when you want to merge an item, you take it's custom value and add it to the item being merged with and set the stack count to the custom value..
but when the persistent is created at a position lower than the caster, it starts following the terrain.
i m using the punisher grenades weapons mover. (guidance)
what do i have to change to make the missile just fly straight ahead and never lower its height?
i tried changing the mover to ignore terrain and the missile unit to ignore terrain but neither one of those worked
changing the mover to parabolic didnt do the job either, it seemed to worsen the problen, making the missile drop staight down
Basically, every 6 units the unit moves deals 30 damage to nearby enemies in a radius of 5 and slowing them by 0.1. The unit itself gains 0.1 MS for every 4 units walked.
use a switch effect based on unit compare speed validators to make sure it is approximately right with the every 6 distance moved and make a behavior with a periodic create persistent that searches the area that applies a behavior disabling the behavior youre using for the damage to make sure it only damages units while moving.
the ms increase can be done by making a behavior buff with movespeed +0.1 impact on source
i think theres also a unit_is_moving validator that would do the same as the persistent, but you could just walk in a tiny area and it would still deal damage
I am creating an RPG map, I've got a warrior class, any idea about how to make a melee ability that just does double damage of the attack? I'm new to the editor so a more detailed explanation would be most appreciated.
The ability will need to be "Effect - Target". Give it a very small range - perhaps the same as the warrior's weapon.
From there you can go several ways - you can simply have a set effect that runs the same damage effect that is on the weapon, but twice... Or you could first apply a buff to the warrior that doubles damage of that type, then run the same damage effect as on the weapon once, then remove the buff.
Which you choose of the above depends on more complicated factors. Dealing the damage effect twice could be a bad idea because it will proc any combat responses twice. If a unit has a behavior that reduces all incoming weapon damage by 5, that unit would instead reduce the damage of this ability by 10. Etc. etc.
Another way is to have the ability do 0 damage using a damage effect, than catch that damage effect by trigger. In that trigger, calculate twice the warrior's weapon damage ((Maximize Weapon 1 Damage Against None) * 2), and use environment - Deal Damage To Unit using a damage effect with 0 damage and the same type as your weapon, specifying in the trigger that it has extra amount of damage equal to what you just calculated.
This method avoids the problems of the other methods but is also more complicated. Whichever effect you end up using to actually deal the damage via the trigger must have flags that specify it gets no scaled or unscaled bonuses, otherwise behaviors that already affected your unit's weapon damage will affect the damage you end up dealing again, resulting in twice-increased damage.
--
Sorry for the complicated response! You may take as much or as little as you wish from it.
So I tried this, but when i use the ability the damage is applied but my guy just stands there when the ability is used, how can i make him look like or play his attack animation?
You'll have to find the actor for that unit, and modify its events. Give it an event that when the ability is "source cast start", with an action "animation play" that plays the attack animation.
If none of this is remotely familiar to you, I suggest that you look up some actor tutorials, because it's a lot to describe merely in a response.
ok and i m back with another problem:
i m using a specialize ability becasue i cant fit all the abilities for a unit into the 32 slots blizzard gave us :(
it executes a switch effect which should, based on the level of the ability(yea i wrtoe a workaround for leveling a specialize ability, not important here)
so the problem is: i want the ability to have a reduced cooldown on higher levels, so i thought that the cost+ field of the modify unit effect should be able to do that ( i ve used it successfully for a passive ability [not specialize tho] before)
this is my modify unit effect:
<CEffectModifyUnit id="Invokedabil1CooldownLevel1">
<EditorCategories value=""/>
<Cost Abil="InvokedAbilities,Specialize1" CooldownTimeUse="120">
<Fraction Cooldown="-1"/>
</Cost>
</CEffectModifyUnit>
so last time i used it i set the default time use to 0.0625
, not sure if this is needed but i essentially just copied what i did and modified it to suit my needs, however it does not work.
any help on that would be apreciated.
Rollback Post to RevisionRollBack
To post a comment, please login or register a new account.
I DO know that. Actually i got an effect- instant ability all set up. my problem at the moment is that the caster stops moving if you use it
and for the weapons: would it work, upon activating the "fire front cannons" ability, to load the item in item slot 1 (how can you adress that in triggers?) compare it to a certain item (so basically switch it) until you have found the item it is (so lets say a "basic energy blast cannon") then loading the stacksize of the item (lets say "5" in this case) and then using an ability that launches that projectile(so "launch energy blast cannon, front" and calls that ability once for each stack resulting in 5 energy blasts beeing fired.
i think i wont do the reduced cannonball spread, seems to be far too complicated/impossible :)
Check the "Transient" flag if you don't want an ability to interrupt orders.
Ah thx :) I solved the cannonball spread in the following way: create an efffect (set) called fire init created 7 persistent creators (one center 3 left 3 right) added all of those into the set and made it random (center one twice for increased chance) the persistent creators then call the launch effect
and of course i need to get the inventory reading stuff done
so probably a trigger...
Unit - Any Unit uses "fire front" at cast (ignore shared abilities) but i dont know where to go from there... i want the trigger to return the item at inventory slot 1 and compare it to a cannon item(acually all cannon types until one is found) (repeat for slots 2 and 3) the other fire ability should check slots 4 5 and 6
but i dont see a proper item trigger to do that
btw: edited my posts, stating what i have done already
now i want to load the stack count:
set variable stack count =stack count[this doesnt exist afaik] of (item carried by (triggering unit) in 1
but there is no stack count function.
@sc2aaa: Go
Yeah I looked at the trigger editor, doesn't seem to be any function for that.. So your only thing would be to keep track of all items' count with triggers, so that when you purchase an item, you set it's custom value to the default item count of that item.
Then when you use the item, you reduce the custom value of it by 1. Or when you want to merge an item, you take it's custom value and add it to the item being merged with and set the stack count to the custom value..
A bit overly complicated for a simple thing =/
well i got the stacking managed www.sc2mapster.com/forums/resources/trigger-libraries/5636-library-item-utility-library/ even with that i had to write a huge workaround, but it helped alot.
now on to making the projectile not affected by terrain :X
i m using an ability similar to kuekens http://www.sc2mapster.com/forums/resources/tutorials/17154-data-colliding-projectiles/ fireball
but when the persistent is created at a position lower than the caster, it starts following the terrain.
i m using the punisher grenades weapons mover. (guidance)
what do i have to change to make the missile just fly straight ahead and never lower its height?
i tried changing the mover to ignore terrain and the missile unit to ignore terrain but neither one of those worked changing the mover to parabolic didnt do the job either, it seemed to worsen the problen, making the missile drop staight down
I want to create a active ability.
Basically, every 6 units the unit moves deals 30 damage to nearby enemies in a radius of 5 and slowing them by 0.1. The unit itself gains 0.1 MS for every 4 units walked.
use a switch effect based on unit compare speed validators to make sure it is approximately right with the every 6 distance moved and make a behavior with a periodic create persistent that searches the area that applies a behavior disabling the behavior youre using for the damage to make sure it only damages units while moving. the ms increase can be done by making a behavior buff with movespeed +0.1 impact on source
i think theres also a unit_is_moving validator that would do the same as the persistent, but you could just walk in a tiny area and it would still deal damage
I am creating an RPG map, I've got a warrior class, any idea about how to make a melee ability that just does double damage of the attack? I'm new to the editor so a more detailed explanation would be most appreciated.
@ZionSC2: Go
The ability will need to be "Effect - Target". Give it a very small range - perhaps the same as the warrior's weapon.
From there you can go several ways - you can simply have a set effect that runs the same damage effect that is on the weapon, but twice... Or you could first apply a buff to the warrior that doubles damage of that type, then run the same damage effect as on the weapon once, then remove the buff.
Which you choose of the above depends on more complicated factors. Dealing the damage effect twice could be a bad idea because it will proc any combat responses twice. If a unit has a behavior that reduces all incoming weapon damage by 5, that unit would instead reduce the damage of this ability by 10. Etc. etc.
Another way is to have the ability do 0 damage using a damage effect, than catch that damage effect by trigger. In that trigger, calculate twice the warrior's weapon damage ((Maximize Weapon 1 Damage Against None) * 2), and use environment - Deal Damage To Unit using a damage effect with 0 damage and the same type as your weapon, specifying in the trigger that it has extra amount of damage equal to what you just calculated.
This method avoids the problems of the other methods but is also more complicated. Whichever effect you end up using to actually deal the damage via the trigger must have flags that specify it gets no scaled or unscaled bonuses, otherwise behaviors that already affected your unit's weapon damage will affect the damage you end up dealing again, resulting in twice-increased damage.
--
Sorry for the complicated response! You may take as much or as little as you wish from it.
@MasterWrath: Go
So I tried this, but when i use the ability the damage is applied but my guy just stands there when the ability is used, how can i make him look like or play his attack animation?
@ZionSC2: Go
You'll have to find the actor for that unit, and modify its events. Give it an event that when the ability is "source cast start", with an action "animation play" that plays the attack animation.
If none of this is remotely familiar to you, I suggest that you look up some actor tutorials, because it's a lot to describe merely in a response.
@MasterWrath: Go
Thank you! Now its working perfectly!
ok and i m back with another problem: i m using a specialize ability becasue i cant fit all the abilities for a unit into the 32 slots blizzard gave us :( it executes a switch effect which should, based on the level of the ability(yea i wrtoe a workaround for leveling a specialize ability, not important here)
so the problem is: i want the ability to have a reduced cooldown on higher levels, so i thought that the cost+ field of the modify unit effect should be able to do that ( i ve used it successfully for a passive ability [not specialize tho] before) this is my modify unit effect: <CEffectModifyUnit id="Invokedabil1CooldownLevel1"> <EditorCategories value=""/> <Cost Abil="InvokedAbilities,Specialize1" CooldownTimeUse="120"> <Fraction Cooldown="-1"/> </Cost> </CEffectModifyUnit>
and this is my specialize ability:
<CAbilSpecialize id="InvokedAbilities"> <InfoArray index="Specialize1" Effect="Invokedabil1Initial"> <Charge HideCount="1"/> <Cooldown Link="Abil/Invokedabil1" TimeUse="0.0625"/> <Button DefaultButtonFace="Invokedabil1" Requirements="slot1abil1"/> </InfoArray> <InfoArray index="Specialize2" Effect="Invokedabil1Initial"> <Cooldown Link="Abil/Invokedabil1" TimeUse="0.0625"/> <Button DefaultButtonFace="Invokedabil1" Requirements="slot2abil1"/> </InfoArray> <Flags index="Transient" value="1"/> </CAbilSpecialize>
so last time i used it i set the default time use to 0.0625 , not sure if this is needed but i essentially just copied what i did and modified it to suit my needs, however it does not work.
any help on that would be apreciated.