This tutorial will cover the creation of a fairly basic custom ability I made for my hero a while back, called Psi Shock. You will be able to make a good amount of abilities with just this info.
What are we waiting for? Lets hit the data editor!
We will be working backwards in this tutorial to help link everything up easily. Soo we will start with the button.
Buttons
Go to the buttons tab of the data editor.
1) Right click, new button. Name it Psi Shock, hit suggest, then ok.
2) set the hotkey to whatever you want, and the icon to whatever you want. I am using the psi storm icon.
3) Tint by race = enabled
4) Make the tool tip to whatever you want. You don't need to talk about the cost, since that is automatically added. The tooltip is what the player sees when he mouses over the button, like "deals 900 damage to target"
Ok! Your buttons is done! And now we move on...
Effects
Effects do lots of things, but they mainly handle abilities. Unlike Wc3, you do not have to base abilties off of pre existing ones. In fact, often times it is better not to copy pre existing abilities, since they can get messed up in the copying process.
1) Right click, new effect, name it "Psi Shock search", hit suggest, set type to search area.
2) Open Exclude +, right click add, and the default value is ok. I'm not sure if this is required, but better safe than sorry.
Now go to search filters. un-check ally and neutral. This way, only enemies of the caster will get hurt. you can add any filters here you want. some good ones to set up would be invulnerable = excluded item = excluded ground = required
3) Make another effect, call it "psi shock damage", suggest, set type to damage.
4) Set the amount to 50, and if you want, set the death type to something cool like "electrocute"
5) Create another effect, of type set, name it psi shock set. (I'm going to stop specifying that you hit suggest, you must do it every time).
6) under effects+, add psi shock (damage)
7) Now go back to Psi Shock (search). Click area+. right click, add value, set the effect to psi shock (set), set radius to 5.
Now onto the actual ability!
1)Go to the abilities data tab, and create a new ability of type "effect-instant" called psi shock.
2) Click cost+. Right click, add value. Check "hide count". Under cooldown, time use, you can set how many seconds you must wait between casts. I chose to make this 10.
3) under "cost display", check "energy".
4) under "vitals" set energy to 40. This is how much energy is used per cast of the ability. Hit ok.
-Everybody say thank you to Lonami. The line above had an err in it and its fixed now thanks to him. :D
5) under 'effect', set the effect to psi shock search. hit ok
6) under ability-commands+, click execute, then set the default button to the psi shock button.
Adding this ability to the unit
Go to the high Templar unit. Under abilities+, add psi shock.
Now go to the command card+
1) click on an empty space, and hit the green +. select the psi shock button.
2) set command type to 'ability', and ability to psi shock.
Your ability should work now. throw in some zerglings and test it out. All the enemies nearby should be hurt, but it looks lame. There was no special effect! Well we can fix that.
Adding a cool effect
Effects are handled via actors in starcraft 2. So go to the actors data tab. right click, new, type = model, based off of "ModelAnimationStyleOneShot"
set the model to " high Templar psi model". go to events+
1) Here is where the actor handles everything, almost like triggers. There are events and actions. So just get rid of everything there by right clicking and deleting. Now right click, add event.
msg type = actor creation
now click on action impact (this is the default action). change the msg type to animation play. set the name to birth. (the first tiem you do this you must click customize, and add the line "birth"). set the animation properties to birth.
2) Right click, new event. msg type = effect source name= psi shock (search) sub name = start
now change action impact to create. Right click this create event, and hit add term. Set the term type to at. This is where the model will appear, so set it to effect
3) Add one last event. msg type = animation done, then change the action impact to "destroy"
4) add a term to the destroy event, type = animName, set the value to "birth"
If you want to make the effect bigger, just click scale to a higher value. I attached a pic of the correct events list, refer to that if you need help in case I messed up my instructions or anything.
Test it out. It looks much cooler now.
Closing Remarks
This shows you how to make an ability that does AOE damage and gives a basic understanding of the new ability creator. Feel free to post comments, ask questions, etc. Let me know how I can improve!
Random fact for this tutorial- The word "lethologica" describes the state of not being able to remember the word you want.
Hey i need a question answered i wanna make an aoe stun and i made a instant ability but i can get it to cast unless im almost touching an enemy is u could post some fields i need to have i'd owe u.
exclude+..Im not TOTALLY sure what you want for this, but Im not sure if its necessary to mess with it anyway. You might be able to leave that field alone as long as you have "self" set to "exclude" in the filters+ field of the search ability.
The cooldown appears in the game but has no effect?? Ummm..I have never heard about that happening. Make sure your ability field looks like mine (I attached a picture)
Hey i need a question answered i wanna make an aoe stun and i made a instant ability but i can get it to cast unless im almost touching an enemy is u could post some fields i need to have i'd owe u.
I assume you meant can NOT get it to cast, right? Do you mean the damage only happens if you are close, or do you mean you can not cast until you are close. If it is the first one, just raise the range in the search effect. If it is the second one, you must have messed up something weird. An effect- instant like this should not have any kind of target requirements. Go to all the effects and check any green fields that have to do with impact location, target points/units or area of effect. (FYI Green means you changed something)
ATTACHMENTS
upload11.jpg
Rollback Post to RevisionRollBack
Feel free to Send me a PM if you have any questions/concerns!
I was doing some testing with this so I wanted to raise the height and size of it. I was able to do this by creating two ActorCreation Events. I put Height in one and did the size is another. I also changed the model to the immortal shield. It worked perfectly when I stood still, but when I move and casted the spell the height was always on 0. Any idea how to fix that?
Moving should not do anything....As for model size, just go to the "scale" field in the actor. You are sure its moving that makes the height 0? That shouldn't matter if the height thing is in actor create...Maybe add the height setting where you play the animation in case its getting set back to 0 by something..
Rollback Post to RevisionRollBack
Feel free to Send me a PM if you have any questions/concerns!
i understand how to add the button to the ability card, but i dont know how to make the button function as desired. such as, wanting my Train Ranger button to create a ranger (custom unit). Basically how do i create the function of the button (create building/unit/use special attack)? good tutorials, keep up the good work
Wow didnt see that repsonse for a long time, sorry....If you ever happen to read this...
You have to go into the ability editor and (for unit training abilities) go to info+, then add your unit and set up a button for it in the window that pops up.
Rollback Post to RevisionRollBack
Feel free to Send me a PM if you have any questions/concerns!
I tried doing the exact ability you have in your tutorial but when I use the ability, nothing happens. The energy is taken away and the cool down starts but no effect. I have the radius set to 8 and I am standing shoulder to shoulder with enemy units. These units do not apply to any of my exclusion filters, I have checked.
Overall a very nice tutorial though. This is probably an error on my end, lol.
Great tutorials (I started trying to understand data editor today, and they're helping a lot, still W3 in mind :P).
One thing, this line: 4) under "vitals" set every to 40. This is how much energy is used per cast of the ability. Hit ok. should be just "energy", or else you'll use shields and life too, if I did understand correctly.
So, before the whole special effect thing, i cant get the ability to WORK. I've done all as you've said, and i get get a Templar ripped to pieces by some zerglings... The -40 energy works (purple "-40" floats up from its head and fades out) and the cooldown works, however, when i press z (as my hotkey) all i get is a purple "-40" above my Templar. I'd know if it worked because i boosted the damage to 900 to make sure i wasn't just not seeing the effect... any ideas?
got it to work, 'cept the Templar kills itself eventually, and the actor lasts forever...
Ok this is part 3 of the moving from wc3 to sc2 tutorial series.
part 1- http://forums.sc2mapster.com/resources/tutorials/5868-data-moving-from-world-editor-to-galaxy-editor-part/
part 2- http://forums.sc2mapster.com/resources/tutorials/6090-data-moving-from-world-editor-to-galaxy-editor-part/#p2
part 3- guess what. your are reading this...RIGHT NOW!!
part 4- http://forums.sc2mapster.com/resources/tutorials/7199-data-moving-from-wc3-editor-to-sc2-editor-part-4-upgrades/
part 5- http://forums.sc2mapster.com/resources/tutorials/8014-data-moving-from-wc3-editor-to-sc2-editor-part-5-custom/
This tutorial will cover the creation of a fairly basic custom ability I made for my hero a while back, called Psi Shock. You will be able to make a good amount of abilities with just this info.
What are we waiting for? Lets hit the data editor!
We will be working backwards in this tutorial to help link everything up easily. Soo we will start with the button.
Buttons
Go to the buttons tab of the data editor. 1) Right click, new button. Name it Psi Shock, hit suggest, then ok.
2) set the hotkey to whatever you want, and the icon to whatever you want. I am using the psi storm icon.
3) Tint by race = enabled
4) Make the tool tip to whatever you want. You don't need to talk about the cost, since that is automatically added. The tooltip is what the player sees when he mouses over the button, like "deals 900 damage to target"
Ok! Your buttons is done! And now we move on...
Effects
Effects do lots of things, but they mainly handle abilities. Unlike Wc3, you do not have to base abilties off of pre existing ones. In fact, often times it is better not to copy pre existing abilities, since they can get messed up in the copying process. 1) Right click, new effect, name it "Psi Shock search", hit suggest, set type to search area.
2) Open Exclude +, right click add, and the default value is ok. I'm not sure if this is required, but better safe than sorry. Now go to search filters. un-check ally and neutral. This way, only enemies of the caster will get hurt. you can add any filters here you want. some good ones to set up would be invulnerable = excluded item = excluded ground = required
3) Make another effect, call it "psi shock damage", suggest, set type to damage.
4) Set the amount to 50, and if you want, set the death type to something cool like "electrocute"
5) Create another effect, of type set, name it psi shock set. (I'm going to stop specifying that you hit suggest, you must do it every time).
6) under effects+, add psi shock (damage)
7) Now go back to Psi Shock (search). Click area+. right click, add value, set the effect to psi shock (set), set radius to 5.
Now onto the actual ability!
1)Go to the abilities data tab, and create a new ability of type "effect-instant" called psi shock.
2) Click cost+. Right click, add value. Check "hide count". Under cooldown, time use, you can set how many seconds you must wait between casts. I chose to make this 10.
3) under "cost display", check "energy".
4) under "vitals" set energy to 40. This is how much energy is used per cast of the ability. Hit ok.
-Everybody say thank you to Lonami. The line above had an err in it and its fixed now thanks to him. :D
5) under 'effect', set the effect to psi shock search. hit ok
6) under ability-commands+, click execute, then set the default button to the psi shock button.
Adding this ability to the unit
Go to the high Templar unit. Under abilities+, add psi shock. Now go to the command card+
1) click on an empty space, and hit the green +. select the psi shock button.
2) set command type to 'ability', and ability to psi shock.
Your ability should work now. throw in some zerglings and test it out. All the enemies nearby should be hurt, but it looks lame. There was no special effect! Well we can fix that.
Adding a cool effect
Effects are handled via actors in starcraft 2. So go to the actors data tab. right click, new, type = model, based off of "ModelAnimationStyleOneShot" set the model to " high Templar psi model". go to events+
1) Here is where the actor handles everything, almost like triggers. There are events and actions. So just get rid of everything there by right clicking and deleting. Now right click, add event. msg type = actor creation now click on action impact (this is the default action). change the msg type to animation play. set the name to birth. (the first tiem you do this you must click customize, and add the line "birth"). set the animation properties to birth.
2) Right click, new event. msg type = effect source name= psi shock (search) sub name = start now change action impact to create. Right click this create event, and hit add term. Set the term type to at. This is where the model will appear, so set it to effect
3) Add one last event. msg type = animation done, then change the action impact to "destroy"
4) add a term to the destroy event, type = animName, set the value to "birth"
If you want to make the effect bigger, just click scale to a higher value. I attached a pic of the correct events list, refer to that if you need help in case I messed up my instructions or anything. Test it out. It looks much cooler now.
Closing Remarks
This shows you how to make an ability that does AOE damage and gives a basic understanding of the new ability creator. Feel free to post comments, ask questions, etc. Let me know how I can improve!
Random fact for this tutorial- The word "lethologica" describes the state of not being able to remember the word you want.
reserved in case I need more space<<<<
Questions? Comments? Suggestions?
part 4 is out
(upgrades)
http://forums.sc2mapster.com/development/tutorials/7199-data-moving-from-wc3-editor-to-sc2-editor-part-4-upgrades/#p2
Nice tutorial! Keep up the good work!
Hrm. This was proving rather useful, however, in step 2 for the effect, I have no idea what exclude + is... help?
not sure about some thing. Exclude + value + etc.
One other thing. When i do the cooldown, it shows up on the spell ingame, but doesnt actually cause a cooldown.
Hey i need a question answered i wanna make an aoe stun and i made a instant ability but i can get it to cast unless im almost touching an enemy is u could post some fields i need to have i'd owe u.
thanks for your time
@Valdmanis: Go
exclude+..Im not TOTALLY sure what you want for this, but Im not sure if its necessary to mess with it anyway. You might be able to leave that field alone as long as you have "self" set to "exclude" in the filters+ field of the search ability.
@JASTME: Go
The cooldown appears in the game but has no effect?? Ummm..I have never heard about that happening. Make sure your ability field looks like mine (I attached a picture)
@Alcapwned88: Go
I assume you meant can NOT get it to cast, right? Do you mean the damage only happens if you are close, or do you mean you can not cast until you are close. If it is the first one, just raise the range in the search effect. If it is the second one, you must have messed up something weird. An effect- instant like this should not have any kind of target requirements. Go to all the effects and check any green fields that have to do with impact location, target points/units or area of effect. (FYI Green means you changed something)
I was doing some testing with this so I wanted to raise the height and size of it. I was able to do this by creating two ActorCreation Events. I put Height in one and did the size is another. I also changed the model to the immortal shield. It worked perfectly when I stood still, but when I move and casted the spell the height was always on 0. Any idea how to fix that?
Moving should not do anything....As for model size, just go to the "scale" field in the actor. You are sure its moving that makes the height 0? That shouldn't matter if the height thing is in actor create...Maybe add the height setting where you play the animation in case its getting set back to 0 by something..
i understand how to add the button to the ability card, but i dont know how to make the button function as desired. such as, wanting my Train Ranger button to create a ranger (custom unit). Basically how do i create the function of the button (create building/unit/use special attack)? good tutorials, keep up the good work
Wow didnt see that repsonse for a long time, sorry....If you ever happen to read this...
You have to go into the ability editor and (for unit training abilities) go to info+, then add your unit and set up a button for it in the window that pops up.
I tried doing the exact ability you have in your tutorial but when I use the ability, nothing happens. The energy is taken away and the cool down starts but no effect. I have the radius set to 8 and I am standing shoulder to shoulder with enemy units. These units do not apply to any of my exclusion filters, I have checked.
Overall a very nice tutorial though. This is probably an error on my end, lol.
sent you a PM so I dont need to clog up the tutorial.
Great tutorials (I started trying to understand data editor today, and they're helping a lot, still W3 in mind :P).
One thing, this line: 4) under "vitals" set every to 40. This is how much energy is used per cast of the ability. Hit ok. should be just "energy", or else you'll use shields and life too, if I did understand correctly.
Again, thanks for the tutorial :).
Glad to help :D
By the way your right, that was a spelling err on my part. Fixed.
So, before the whole special effect thing, i cant get the ability to WORK. I've done all as you've said, and i get get a Templar ripped to pieces by some zerglings... The -40 energy works (purple "-40" floats up from its head and fades out) and the cooldown works, however, when i press z (as my hotkey) all i get is a purple "-40" above my Templar. I'd know if it worked because i boosted the damage to 900 to make sure i wasn't just not seeing the effect... any ideas?
got it to work, 'cept the Templar kills itself eventually, and the actor lasts forever...
You kind of skip steps later on in the tutorial... makes it a pain to follow sometimes..
No damage is dealt for my thing...