From Starcraft 2
This tutorial explains how to polish unit abilities including: displaying range and aoe circles, adding special effects (animations), and sound. All of these involve creation of Actors, of various types, so you should have at least a basic knowledge of Actor Events before using this tutorial.
Displaying the range of an ability is fairly simple. First create a new actor of type range and choose its Parent, based on property, to be Range Abil.
Now the actor events can be modified so the actor is created when the ability enters its targeting phase. Edit the actor's events and there should already be two events created for you, Abil.TargetOn and Abil.TargetOff. All you need to do is change the Source Name for both events to the ability you created.
Note: When you change the source name the sub name may be changed back to any. Make sure that you change it back to TargetOn or TargetOff.
Displaying Area of Effect Cursor
Abilities with an AOE are ones with a Search or Persistent effect. To make sure that the cursor displays the right size change the Cursor Effect on the Ability to the Search or Persistent effect.
Next you will need a splat actor that inherits from cursor splat. Create a new actor and change its type to Splat. Then change the Based On property to Cursor Splat. Change the model property to a cursor model of your choice (ex: Zerg AOE Cursor Splat or Terran AOE Cursor Splat). Then change the actor events, the event should already be populated for you. Change the Abil.##abil##.Cursor to Abil.YourAbility.Cursor.
Special Effects (Visuals)
Adding special effects can be as simple or as complicated as you want. Adding preexisting model animations to an ability for example is fairly easy and is all I will cover in this topic for now.
To start, create a new actor of type Model and change its based on property to model animation style ones shot. Then you can change its model property to a preexisting model or one that you have imported and created a model object for.
After setting the animations model edit the actor events and create a new event. Change the event to Ability.YourAbility.Start (can be Start, Source Cast Start or Target Cast Start) and the action to create.
You now have a working animation for your ability. There are many other things that are important here as well. Changing the Sub Name on your event can change when the animation occurs (for instance if you are channelling then you can change it to source channel). Another more advanced topic is Site Operations, these can be used to change the position, height and other properties of your animation. Also note that this works for behaviours and effects too and you do not need to use ability as your message type in your event. There are other effects you can achieve through actor events including glow, halo and tint.
I am only going to cover created sounds for abilities here and not sounds for weapons.
To start with your sound you may create a new sound object in the Data Editor or use one already available.
Once you have the sound object you want create a new sound actor, make sure you change its based on property to SoundOneShot. Change the sound property for your actor to the sound object you chose. Now create a new event: Ability.YourAbility.Start (same as the special effects section).
Doing this will give you a sound that is created at the caster.