I dont get what should i put in the coldown of my "add coldown for ability" action( i dont know how it calls in english version hope u will understand what im talking about) it has string type of value, could someone explain first two properties for this type of action. it has 1) value, 2)coldown, 3)ability, 4)unit
The ability cooldown link found in the ability you want to add a cooldown to, e.i.: Transfusion (Value)
The link to the cooldown, e.i.: Queen - Transfusion (Value)
The unit having the ability you want to add the cooldown to
The cooldown link can be changed, for instance if you want to make one single cooldown for several abilities, like Global Cooldown in WoW. You can find it under "Cost: Cost - Cooldown - Location". If you made a custom ability, click the "Add" button and enter a new name (a string) for the cooldown. This string is the one you refer to in the Trigger.
You copied the Transfusion ability, but you didn't set the Cooldown data for the copied ability.
See the image I attached. The "Cost: Cost - Cooldown - Link" is set to "(Transfusion)", which is the string you need to set in your trigger (without the parenthesis).
I hadnt copied anything man, i just removed the cost itself from ability. I tried to make it again and added this cost but it doesnt work again. Could you please make changes in my map so it will work, i think if you know what are you talking about it wont take too much time from you, even less time than you spent to make this screenshot;d. It will be very appreciated
When you change some thing in a default Ability (which is colored light blue) the editor automatically copies the ability, making a new one (now it is colored light green). There are two Transfusion abilities in your map; the deault (blue) and your copy (green). You have to add the "cooldown" data to the copied ability, as illustrated in the picture above. Only then can you set the cooldown via Trigger Actions.
Thank you very much man. I didnt know about that copied stuff before, i thought it just modifies primary ability and color it in green :O.
However, i also thought that i can set this cooldown time just once and then it will always be 3.5 sec for example ( so i thought that i can use event like map initialization or unit enters area and set this value and everytime i will use ability cooldown will be 3.5 secs) so i was wrong.
Basically i am making rpg map now (pretty slowly) and i want to use custom unit value to define cooldown multiplier for all abilities of that unit (cooldown decrease by 55% for example or so). Could you express your suggestions of what triggers i need to use and how to implement this.
So, i'm adding 10 custom values for each unit with trigger (including CD multiplier, they are my custom stats like crit multiplier, chance, etc.).
Then i need to use trigger unit use ability i guess, then actions for this trigger: get catalog value - cd time of used ability, multiply it, and launch new cd time with this value , right? :D
I have a problem with that ^. I need to read a value from cooldown_link field in data but i cant and i dont get why, here is my map. Look please in set variable action of my trigger
I also threw in another trigger in the attached map, which sets the maximum cooldown time of the Transfusion ability to a random number between 1 and 100, and then it reads the value from the cooldown field and displays it as a Debug Message. Just press 'M' ingame.
This is very helpful man thank you. But actually i need to get the value of field with "Transfusion" text. because i want to make map where hero can pick up Skills, so i dont know what exact spells hero will have so i need to read value from that cost link field u talking in your first posts, and then i will add a -x time to cooldown of ability. I hope u understand now what is my problem
This is very helpful man thank you. But actually i need to get the value of field with "Transfusion" text. because i want to make map where hero can pick up Skills, so i dont know what exact spells hero will have so i need to read value from that cost link field u talking in your first posts, and then i will add a -x time to cooldown of ability. I hope u understand now what is my problem
so wait. Reading from your previous posts and also the map u attached, it seems that you want a certain coefficient to modify a unit's cooldowns yes? Since you said u want it to be some sort of attribute for your RPG. like a 55% cooldown increase?
In the map you attached; the method you used was pretty much okay, but you had this in the entry path: Cost
Cooldown Link
That is wrong i believe. I dont think the link returns any number at all. It should be this instead:
Cost[0].Cooldown.TimeUse
case sensitive
So then, what you would do is create a trigger that fires when the unit casts a certain ability. Then use the add cooldown function to add (The Cooldown for the ability) times a percentage. (e.g 0.55 for a 55% increase in cooldown)
allright now it works as i want, i just changed Cost[0].Cooldown.TimeUse to Cost[0].Cooldown.Link, now my trigger works with any ability and unit. I will attach the map so anyone want to solve same problem can see it. So basicaly if u want to DECREASE cooldown ( i dont know why u guys both thought i want to increase it :D) just change custom unit value in -cooldown stat% trigger to 0.3 for -30% 0.8 for -80%, etc. Thx all for replies.
Well after all i still having some problem.... :D for example, now i cant figure out what should i put in ability stage property of my event. I just need same stage that sc2 engine uses to launch ability cooldwons, maybe i need to use some custom script or what. ffs! In this map you can see some problems..
Why do you use a Custom Script for this? It is the equivalent of just referencing the desired Ability. If you - in the Trigger Editor - click "Data > View Script" and locate "NPressed_Init()", you will see it is the same.
Anywho, you have to insert the ID of the Ability between the two quotation marks, for instance:
AbilityCommand("Blink",0)
Again, I don't understand your problem entirely. Can you do a bullet list of what it is you want?
1) I have a hero wich can pick up skills dropped from mobs.
2) My hero has custom attribute wich will decrease cooldown for all skills used by hero.
3) I cant predict what exact skill combination will use player, so i CANT just type "blink" or whatever it is in my commands i need to get this values from data, depending which ability used, or just use something like "unit use ANY ability"event(which i didnt find btw).
i thought rather to add -value to cooldown i could use your approach to change catalog value in Cost[0].Cooldown.TimeUse field, but in that case i will change it for ALL units that using that ability, whic is not the option cuz every unit will have their own -cd% parameter.
The problem in that latest map is: when u use Transfusion ability, trigger starts properly, but if i use spawn larva ability, trigger starting after cooldown is launched. In case of Thor cannons my trigger doesnt work at all. I think the problem is in Ability Stage value of my event. So im trying to launch trigger in the same moment when cooldown starts for any ability.
1) I have a hero wich can pick up skills dropped from mobs.
2) My hero has custom attribute wich will decrease cooldown for all skills used by hero.
3) I cant predict what exact skill combination will use player, so i CANT just type "blink" or whatever it is in my commands i need to get this values from data, depending which ability used, or just use something like "unit use ANY ability"event(which i didnt find btw).
i thought rather to add -value to cooldown i could use your approach to change catalog value in Cost[0].Cooldown.TimeUse field, but in that case i will change it for ALL units that using that ability, whic is not the option cuz every unit will have their own -cd% parameter.
The problem in that latest map is: when u use Transfusion ability, trigger starts properly, but if i use spawn larva ability, trigger starting after cooldown is launched. In case of Thor cannons my trigger doesnt work at all. I think the problem is in Ability Stage value of my event. So im trying to launch trigger in the same moment when cooldown starts for any ability.
that would be the 'Finish' Stage. The cooldown fires just right after casting finishes.
3/ sadly yes, you would have to register each specific ability onto the trigger. Instead of typing "Blink" I think you can get the triggering spell yes? this is possible both in GUI and Custom script.
Thats obviously not the finish stage man, try it in my map. Cooldown starts immediately after click, while if i use finish stage it will launch trigger after that for a few seconds, depending on ability's finish time value in data.
Thats obviously not the finish stage man, try it in my map. Cooldown starts immediately after click, while if i use finish stage it will launch trigger after that for a few seconds, depending on ability's finish time value in data.
alright. I changed it to Channel and i guess it works perfectly now. so Channel it is.
The problem in that latest map is: when u use Transfusion ability, trigger starts properly, but if i use spawn larva ability, trigger starting after cooldown is launched. In case of Thor cannons my trigger doesnt work at all. I think the problem is in Ability Stage value of my event. So im trying to launch trigger in the same moment when cooldown starts for any ability.
You did not set the Thor's Custom value in your latest map lol. Only the queen's, that explains why it doesnt work.
I attached the map with the above fixes. Hopefully this solves your problem =D I also added a debug message so you can see when the trigger fires.
I dont get what should i put in the coldown of my "add coldown for ability" action( i dont know how it calls in english version hope u will understand what im talking about) it has string type of value, could someone explain first two properties for this type of action. it has 1) value, 2)coldown, 3)ability, 4)unit
@abvdzh: Go
The cooldown link can be changed, for instance if you want to make one single cooldown for several abilities, like Global Cooldown in WoW. You can find it under "Cost: Cost - Cooldown - Location". If you made a custom ability, click the "Add" button and enter a new name (a string) for the cooldown. This string is the one you refer to in the Trigger.
Well i tried to make it. Doesnt work.
@abvdzh: Go
You copied the Transfusion ability, but you didn't set the Cooldown data for the copied ability.
See the image I attached. The "Cost: Cost - Cooldown - Link" is set to "(Transfusion)", which is the string you need to set in your trigger (without the parenthesis).
I hadnt copied anything man, i just removed the cost itself from ability. I tried to make it again and added this cost but it doesnt work again. Could you please make changes in my map so it will work, i think if you know what are you talking about it wont take too much time from you, even less time than you spent to make this screenshot;d. It will be very appreciated
@abvdzh: Go
When you change some thing in a default Ability (which is colored light blue) the editor automatically copies the ability, making a new one (now it is colored light green). There are two Transfusion abilities in your map; the deault (blue) and your copy (green). You have to add the "cooldown" data to the copied ability, as illustrated in the picture above. Only then can you set the cooldown via Trigger Actions.
I'll take another look at it when I get home :)
Here you go. The only thing I did was:
Enjoy
Thank you very much man. I didnt know about that copied stuff before, i thought it just modifies primary ability and color it in green :O.
However, i also thought that i can set this cooldown time just once and then it will always be 3.5 sec for example ( so i thought that i can use event like map initialization or unit enters area and set this value and everytime i will use ability cooldown will be 3.5 secs) so i was wrong.
Basically i am making rpg map now (pretty slowly) and i want to use custom unit value to define cooldown multiplier for all abilities of that unit (cooldown decrease by 55% for example or so). Could you express your suggestions of what triggers i need to use and how to implement this.
So, i'm adding 10 custom values for each unit with trigger (including CD multiplier, they are my custom stats like crit multiplier, chance, etc.). Then i need to use trigger unit use ability i guess, then actions for this trigger: get catalog value - cd time of used ability, multiply it, and launch new cd time with this value , right? :D
I have a problem with that ^. I need to read a value from cooldown_link field in data but i cant and i dont get why, here is my map. Look please in set variable action of my trigger
@abvdzh: Go
So, let me get this straight: You want to modify the maximum cooldown time on your abilities through the Catalog function in the Trigger Editor?
You can find help on how to do so here: http:www.sc2mapster.com/forums/development/triggers/18781-solved-catalog-field-get-ability-cooldown/
I also threw in another trigger in the attached map, which sets the maximum cooldown time of the Transfusion ability to a random number between 1 and 100, and then it reads the value from the cooldown field and displays it as a Debug Message. Just press 'M' ingame.
I hope this is the answer you're looking for.
This is very helpful man thank you. But actually i need to get the value of field with "Transfusion" text. because i want to make map where hero can pick up Skills, so i dont know what exact spells hero will have so i need to read value from that cost link field u talking in your first posts, and then i will add a -x time to cooldown of ability. I hope u understand now what is my problem
so wait. Reading from your previous posts and also the map u attached, it seems that you want a certain coefficient to modify a unit's cooldowns yes? Since you said u want it to be some sort of attribute for your RPG. like a 55% cooldown increase?
In the map you attached; the method you used was pretty much okay, but you had this in the entry path: Cost
Cooldown Link
That is wrong i believe. I dont think the link returns any number at all. It should be this instead:
Cost[0].Cooldown.TimeUse
case sensitive
So then, what you would do is create a trigger that fires when the unit casts a certain ability. Then use the add cooldown function to add (The Cooldown for the ability) times a percentage. (e.g 0.55 for a 55% increase in cooldown)
allright now it works as i want, i just changed Cost[0].Cooldown.TimeUse to Cost[0].Cooldown.Link, now my trigger works with any ability and unit. I will attach the map so anyone want to solve same problem can see it. So basicaly if u want to DECREASE cooldown ( i dont know why u guys both thought i want to increase it :D) just change custom unit value in -cooldown stat% trigger to 0.3 for -30% 0.8 for -80%, etc. Thx all for replies.
Well after all i still having some problem.... :D for example, now i cant figure out what should i put in ability stage property of my event. I just need same stage that sc2 engine uses to launch ability cooldwons, maybe i need to use some custom script or what. ffs! In this map you can see some problems..
@abvdzh: Go
Why do you use a Custom Script for this? It is the equivalent of just referencing the desired Ability. If you - in the Trigger Editor - click "Data > View Script" and locate "NPressed_Init()", you will see it is the same.
Anywho, you have to insert the ID of the Ability between the two quotation marks, for instance:
Again, I don't understand your problem entirely. Can you do a bullet list of what it is you want?
1) I have a hero wich can pick up skills dropped from mobs.
2) My hero has custom attribute wich will decrease cooldown for all skills used by hero.
3) I cant predict what exact skill combination will use player, so i CANT just type "blink" or whatever it is in my commands i need to get this values from data, depending which ability used, or just use something like "unit use ANY ability"event(which i didnt find btw).
i thought rather to add -value to cooldown i could use your approach to change catalog value in Cost[0].Cooldown.TimeUse field, but in that case i will change it for ALL units that using that ability, whic is not the option cuz every unit will have their own -cd% parameter.
The problem in that latest map is: when u use Transfusion ability, trigger starts properly, but if i use spawn larva ability, trigger starting after cooldown is launched. In case of Thor cannons my trigger doesnt work at all. I think the problem is in Ability Stage value of my event. So im trying to launch trigger in the same moment when cooldown starts for any ability.
that would be the 'Finish' Stage. The cooldown fires just right after casting finishes.
3/ sadly yes, you would have to register each specific ability onto the trigger. Instead of typing "Blink" I think you can get the triggering spell yes? this is possible both in GUI and Custom script.
Thats obviously not the finish stage man, try it in my map. Cooldown starts immediately after click, while if i use finish stage it will launch trigger after that for a few seconds, depending on ability's finish time value in data.
alright. I changed it to Channel and i guess it works perfectly now. so Channel it is.
You did not set the Thor's Custom value in your latest map lol. Only the queen's, that explains why it doesnt work.
I attached the map with the above fixes. Hopefully this solves your problem =D I also added a debug message so you can see when the trigger fires.
Well thats awesome :D .Seems like work perfect. Thank you soooo much <3.