Data - Working with Actors (Beginner Difficulty)

by ProzaicMuse (10 June 2010)

First and foremost, this will not begin as a full index of all the actors and every event combination in the editor. A tutorial on that would take weeks or even months to put together and would be unable to properly teach you anything other than how to make your eyes bleed. As amusing as that might be to witness, I’m certain I would /wrist myself long before I completed such a tutorial. Instead, I’ll be covering the most common actors and their fields/events that you will use while tossing in a few less used actors that should probably be more widespread. Treat this as a catalog of actors every competent mapper should be familiar with. Also, as I continue to make more tutorials I may remove details from certain actors and replace them with a link to a tutorial that focuses on that specific actor and objects related to it. This will help reduce clutter as you help me expand the tutorial and hopefully turn this into a stepping stone to other tutorials you might need.


Actor Basics

Actors are essentially the Data Editor’s version of triggers. The simplest way to understand them would be to take a look at anything in the game that has a graphical representation. Whatever it is, there is a 95% (yes, I mathematically deduced this through rigorous calculations and hard facts. My findings are immutable!) chance that an actor was involved. This is not their only function, however, as they also play sounds, control abilities, deform terrain and setup turrets amongst other things. Thus it is safe to say that if you haven’t yet created an actor in your map, you haven’t been properly introduced to the Data Editor.

Typically the most important field for an actor is Events +. This field controls what creates/destroys it and when. Events also trigger certain animations, change the actors color, shape, opacity and other such physical attributes. They can even be used to communicate with other actors. These events can be broken down into the following:

Conditions: Determine what triggers the event, the trigger’s name and when this happens

Terms: List requirements either for when it can be triggers OR how it must react once triggered.
Actions: Determine what the actor will do once Conditions and Terms have been met.


Index:


Action

Any time you have an effect that deals damage, launches a projectile or creates a beam model you will need what I call the Attack Actor This actor controls where a weapon fires from, where it impacts and all of the sounds and graphics associated with these two locations. If a beam is flying off in random directions or missiles are skidding along the ground, this actor is the first place you should check.

Important Fields

OR

Tokens auto-fill portions of the actor they are tied to. Most of these changes will occur in Events + and should be used if you’re making something simple with only a few steps. I typically won’t use tokens if I’m making very complex abilities or weapons that have more than one damage phase.

The majority of fields after the Art section will be referring to these models. Thus it’s important to remember that:

Launch refers to the effect that creates this actor.
Container refers to when this actor is created by a unit inside a transport (Ex: Medivac or Bunker).
Impact refers to the effect that hits the target unit - (Ex: Explosion or Blood Spatter).
Damage refers to units hits by splash around the target - (Ex: Blood Spatter).

The default values are Methods with a specific point as the fallback (Center by default). Attachment Methods (AM) search for points to attach to for you and allow for rotating launch points. Thus if you used AMFilterWeapon00, the actor would look for any attachment point with Weapon00 in its name on whatever model you are launching from. If it can’t find one the fallback is used.

Additionally you can use multiple AMs at a time that narrow down the search parameters. For example, if you used AMClosestToTarget and Filter Weapon the actor would launch from whatever attachment point was closest to the target AND had “Weapon” in its name.

Alternatively, you can use Direct which allows you to pick a specific launch point instead of multiple. This isn’t as dynamic as AMs, but that’s the point. This is typically ideal if you are firing weapons that need to launch from a specific attachment point every time.

Important Events

Normal Attack Actors:

This would tell the actor to create every time the Damage Effect “lands” on the target. Fairly straight forward.

Beam Attack Actors:

Ironically Beam Attack Actors don’t require much more than normal attacks in terms of effects as the important events will be on the Beam Actor.

Missile Attack Actors:

This event ties launch models and assets to the effect. It’s important that the term is included otherwise the missile will shoot from the unit’s feet and drag along the ground.

This event ties the impact models and assets to the effect. As before, both terms are important or the models won’t display properly and the sounds will be unusually quiet.

Channeling Attack Actors:

This event is added to any actor that is created by a channeled ability. This destroys the actor to prevent the models from sticking around even after the unit has ceased firing and moved on.


Beam (Simple)

If you want to create a Beam in any capacity, this is the actor that does it. The only time you wouldn’t use this actor is when you want your Beam to be a physical attachment to another model. In that case you would use a Model Actor. In the case of Beam Actors, I have never found a reason to use (Standard) over (Simple) and, if you look through the editor, neither has Blizzard. That being said, if I ever DO find such a reason I’ll update this tutorial. Until then, this is the actor for you.

Important Fields
Important Events

Attack Beams:

This event probably looks strange at first given all the brackets, but it is actually very simple in nature. This tells the actor to play the model animation whenever this actor is created. Without this event, your model won’t show up.

This even destroys the actor when the animation is done to prevent overlapping beams.

This optional event is for changing the color of your beams. It’s important to note that this is based upon color math. Thus if your beam is blue and you apply a yellow tint thinking it will turn yellow it will actually turn green.

AoE Beams:

If your beam doesn’t have an Attack Actor this event will also be needed to create itself.


Missile

For the purpose of sanity, we’re going to ignore Tentacle Missiles as they are incredibly complicated to create despite the brevity of their attacks. Refer to my Customized Projectiles tutorial if you want to see how this is done in detail.

Important Fields
Important Events

This event creates the actor whenever the Unit Missile is fired.

This event tells the actor to play the model animation whenever the Unit Missile is created. Without this event, your model won’t show up. Even though this is the default editor event for the actor, changing the condition from Unit Birth to Actor Creation will accomplish the same thing. Also, Animation Bracket differs from Animation Play in that it contains multiple animation phases for the model to pass through. In this case, it plays the Birth animation and then stays in the Stand animation until the actor is destroyed.

This event destroys the actor whenever the Unit Missile is killed.


Model

This actor has a wide range of uses and is very simple to use. The Based On menu selection will need to be changed based upon what you want to use the actor for. The most common selections are BuffContinuous (for auras), BuffOneShot (for spell casting animations), Model Addition (for attachments) and ModelAnimationStyleOneShot (for impact animations). These won’t change the fields available to you, but will pre-fill various fields to save you time when configuring your actor.

Important Fields
Important Events

Visual Effects:

This event creates the model whenever an Ability, Behavior or Effect with a given name begins a certain phase.

This event tells the actor what animation to play and is probably the most important part of the actor. This is where you control what the animation will be and how long it will last for. If you want to match model animations to unit casting animations or to weapon attack rates this is where you would do just that.

This even destroys the actor when the animation is done to prevent overlapping visual effects.

Attachment Models:

This event creates the actor whenever the given unit is created. If you set this unit as the host, the actor will then attach itself to the unit with the specified Site Operations.

This event is different from other Animation Play events in that you don’t need to set a duration and or type. This is because you want to pick a given animation and play it forever until the hosting unit dies. Thus this event tells the actor to play the specified animation forever.

This event destroys the attachment whenever the hosting unit dies.


Range

This actor is responsible for creating the range indicators for Abilities, Behaviors, Weapons and the Sensor Tower in particular.

Important Fields
Important Events

Ability Range:

This event creates the actor when the target cursor is active.

This event destroys the actor when the target has been chosen.

Sight Range:

This event creates the actor whenever the given unit is created. This is particularly useful for stealth games where you want the player to visually see the sight range of units they are trying to avoid.

This event destroys the actor when the hosting unit dies.

Behavior Range:

This event creates the actor whenever the behavior is active.

This event destroys the actor whenever the behavior is inactive.

Weapon Range:

These events are identical to those needed for the Sight field, but you are instead indicating the units weapon range. Thus these events are best used with stationary objects like turrets where sight radius won’t matter.


Site

These actors are points of reference for other actors. If you want something to originate from a custom anchor point that isn’t on a model, this actor allows you to do that. The following tutorials cover this in detail:


Site Operations

These actors determine where and how objects attach to each other. The following tutorials cover these in detail:


Sound

This actor is so complex. . . that it actually defines the meaning of life. . . or not. It creates sounds. Fairly straightforward. If you want your visual effects to make noise, you need this actor.

Important Fields
Important Events

One Shot Sound:

This event creates the model whenever an Ability, Behavior or Effect with a given name begins a certain phase.

This optional event allows you to set a specific duration for your sound.

This optional event allows you to destroy the sound when your custom duration has expired. The two Timer events are especially important when you want to associate a very long sound with a short animation. Without these, long sounds can continue to play even after their trigger has finished and moved on. Sound pollution is very bad.

This event destroys your event when the sound completes its default length.

Continuous Sound:

This event creates the sound whenever an Ability, Behavior or Effect with a given name begins a certain phase.

This event destroys the sound whenever an Ability, Behavior or Effect with a given name begins a certain phase.

This event destroys the sound when the object channeling the sound is destroyed. This event prevents sounds from looping forever after its creator dies (Ex: Sentry Beam).

This event destroys your event when the sound completes its default length. If you aren’t using a looping sound, this is important to prevent sound stacking.


Terrain Deformer

This actor allows you to physically change the terrain during a game. While it does little more than change terrain elevation, you can combine this with other actors or triggers to make new ramps, walls and other physical barriers.

Important Fields
Important Events

Permanent Deformation:

This event starts the elevation change whenever an Ability, Behavior or Effect with a given name begins a certain phase.

Temporary Deformation:

This event stops the elevation change whenever an Ability, Behavior or Effect with a given name begins a certain phase. You only need this if the elevation change is going to be channeled over time OR you want the elevation to return to normal.

This event sets a specific duration for the elevation change to last.

This event reverts the elevation change after the specified duration has expired.


Text

This actor creates floating text that you can see in the game. This is useful for making damage counters, visual updates at specific locations (like quests) or even scrolling text for visual queues of DoT ticks or resource collection cycles. The possibilities are endless.

Important Fields
Important Events

Static Text:

This event creates the text whenever a Unit, Ability, Behavior or Effect with a given name begins a certain phase. You only need this if the elevation change is going to be channeled over time OR you want the elevation to return to normal.

This event destroys the text whenever a Unit, Ability, Behavior or Effect with a given name begins a certain phase. You only need this if the elevation change is going to be channeled over time OR you want the elevation to return to normal.

Fading Text:

This event creates the text whenever a Unit, Ability, Behavior or Effect with a given name begins a certain phase. You only need this if the elevation change is going to be channeled over time OR you want the elevation to return to normal.

This event sets a specific duration for the text to fade out over.

This event reduces the text’s opacity to 0 over the specified duration.

This event destroys the text after the specified duration has expired.

Scrolling Text:

This event sets a specific duration before the text changes height.

This event adjusts the text’s height after the specified duration.

This event sets another duration before the next height change.

This event destroys the text after the last Timer has expired. By adding these to the events for fading text, you can set a time for the whole fading process with the opacity change and then multiple stages for height changes that add up to the opacity change. Thus over time the text fades and scrolls whatever direction you want.


Turret

(Reference: Turrets (Beginner))

If you want a structure to fire a weapon or a unit’s weapon to fire independently of its facing, you need a Turret Actor that will create the actual turret from the Turrets Tab. Otherwise your weapon won’t work properly and the weapon that should be rotating will be stuck in place.

Important Fields
Important Events

This event allows the weapon’s turret to function properly.

This event destroys the turret when the Turret Body morphs into another unit (Ex: Spine Crawler uprooting).

This event destroys the actor when the turret has been destroyed or disabled.


Unit

This actor is, in my opinion, the most complex and involved actor to make from scratch. Thus it is typically better to duplicate a unit and simply rename the actor before making the needed adjustments and adding your own events. I’m aware it’s not complete and only covers some of the MANY things you might need. I’ll do my best to update this as people have questions about it.

Important Fields
Important Events

This event creates the actor whenever the unit is brought into existence.

This event creates the actor whenever it is built from a structure or other “training” type object.

This event creates the actor whenever it is revived as in the case of Heroes.

This even destroys the actor when the unit dies.

This event tells the actor to play the model animation whenever the Unit is created. Without this event, your model won’t show up. Even though this is the default editor event for the actor, changing the condition from Unit Birth to Actor Creation will accomplish the same thing. Also, Animation Bracket differs from Animation Play in that it contains multiple animation phases for the model to pass through. In this case, it plays the Birth animation and then stays in the Stand animation until the unit dies. At that point it plays the Death animation.

This event allows you to tie specific animations to your weapon attacks.

This event will clear the animation associated with the given weapon whenever it finishes stops firing. This prevents animation freezing.

This event will clear a given animation whenever the unit moves. This prevents animation freezing.


Building the Catalog

If you have an actor that isn’t on this list that you need help with, just ask. I’ll slowly add actors as people begin to experiment with them. The idea being that you should look at these actors first before moving on to the more advanced ones. The same goes for events. If you want to know how to implement certain events with an actor in this catalog, let me know.

Likewise if you think a tutorial other than one of my own should be linked to one of the actors I cover, PM me a link and I’ll take a look at the tutorial. If I think it can teach more about the actor that the listed details can I’ll swap in the link.

As always please inform me of typos or errors in this post. It’s quite lengthy and I probably didn’t catch all of my mistakes. If you’re just plain confused, that’s ok too. Ask and I or someone else is likely to come along and set yeh straight ;)

tags: data - actors