Data/Actors/Actor

#### Description

When an actor is the **Host** or **Host For Properties** field of *another actor*, this field determines what properties are able to be inherited from the hosting actor

#### Flags

* **Model Scale:** Allows the transfer of *Model Scale* defined in the Models Tab to child actors(also called *Absolute Scale*)
* **Cast Shadows:** Allows the transfer of *Cast Shadows* state to child actors
* **Cloak Effect:** Allows the transfer of *Cloak Effect* to child actors
* **Creep Engulfment:** Allows the transfer of *Creep Engulfment* to child actors
* **Decal:** Allows the transfer *Decal Textures* to the child actor (provided they have materials that can accept)
* **Local Tint Color:** Allows the transfer of *Local Tint Color* to child actors
* **Model Materials:** Allows the transfer of *Model Materials* to child actors (Glazes)
* **Opacity:** Allows the transfer of *Opacity* to child actors
* **Scale:** Allows the transfer of *Actor Scale* to child actors
* **Team Color:** Allows the transfer of *Team Color* to child actors
* **Tint Color:** Allows the transfer of *Tint Color* to child actors
* **Visibility:** Allows the transfer of *Visibility* to child actors
* **Warp Group:** Allows the transfer of *Warp Groups* to child actors

#### Description

Determines which additional properties of a source actor will be transferred to a new actor. Copy Source can be set to directly copy from another actor in the same scope(**Unsure** if can be out of actor scope).

#### Flags

* **Animator:** Allows transfer of the *Animator* from the source
* **Anim Props:** Allows transfer of the *Anim Props* from the source
* **FOW Color:** Allows transfer of the *FOW Color* from the source
* **FOW Shader:** Allows transfer of the *FOW Shader* from the source
* **Model:** Allows transfer of the *Model* from the source
* **Model Materials:** Allows transfer of the *Model Materials* from the source (Glazes)
* **Position:** Allows transfer of the *Position* from the source
* **Rotation:** Allows transfer of the *Rotation* from the source
* **Textures:** Allows transfer of the *Textures* from the source
* **Status:** Allows transfer of the *Statuses* from the source

#### Description

* An alias is an alternative (often generic) name that can be used to refer to an actor in Events or under hosting Actor Requests as a Subject. For example, most unit actors use the \_Unit alias, allowing other actors that send messages targeting \_Unit to get those messages to the unit actor in that scope.
* Common Aliases for actor types
	+ '\_Selectable': - for doodads/units that can be selected
	+ '\_Missile': - for Missile actors
	+ '\_Unit': - for Unit actors
	+ '\_Doodad': - for Doodad actors
	+ '\_Snapshot': for snapshot system to create copies of model additions when host actor gets snapshotted in the fog of war

#### ActorKey

* Array of 'aliases' commonly starts with \_ character

#### Description

Allows you to specify a separate actor in the same scope that will be used to transfer properties to a new actor.

#### Description

* Editor Categories are used for filtering and organization within the StarCraft II Editor.
* Editor Categories are defined in the 'EditorCategoryStrings.txt' file.

#### Description

* Filter determines whether this actor is hidden for Enemy, Neutral, Self, or Ally players.
* Check who CANNOT see the actor (if you only want the actor visible to the owning player, check ally, neutral and enemy but not self)
* Example usage: Nuke Indicator splat visual for self/allied vs enemy.
* Can be controlled by Set Filter actor message

#### Filter

* **Self:** When on, prevents the actor from being seen by its owning player.
* **Ally:** When on, prevents the actor from being seen by allied players.
* **Neutral:** When on, prevents the actor from being seen by neutral players.
* **Enemy:** When on, prevents the actor from being seen by enemy players.
* **All:** When on, prevents the actor from being seen by anyone.

#### Notes

* Cursor Splats cannot be seen by enemies even if this field would allow it, as they have no access to the cursor scope (the mouse of the casting player)

#### Description

* Filter that determines whether this actor is hidden for Caster, Source, Target when responding to 'Effect' events.
* Check who CANNOT see the actor

#### VisibilityAtCreation

* **Caster:** The effect caster.
* **Source:** The effect source.
* **Target:** The effect target.
* **Caster Ally:** Allies of the effect caster.
* **Source Ally:** Allies of the effect source.
* **Target Ally:** Allies of the effect target.
* **Caster Neutral:** Players that are neutral to the effect caster.
* **Source Neutral:** Players that are neutral to the effect source.
* **Target Neutral:** Players that are neutral to the effect target.
* **Caster Enemy:** Enemies of the effect caster.
* **Source Enemy:** Enemies of the effect source.
* **Target Enemy:** Enemies of the effect target.

#### Description

* Filter that determines whether this actor is hidden to specific players
* Check who CANNOT see the actor
* Can be controlled with Set Filter Players actor message

#### ActorFlags

* **Add To External Finder:**
> Add this actor to the external finder when it is created. The external finder enables any actor within a scene to find any other actor within that scene, regardless of which scope it is in. This is useful for enabling any actor to get references to well known global actors without having to maintain separate global references. When added to the external finder, the actor can be referenced by its link name or any of its aliases, as long as they are prefaced with '::external.' (e.g. '::external.SMRaynor').
>
>
* **Suppress Creation Errors:**
> Prevents this actor from generating an error message when it cannot be created. Error messages are typically helpful during development, but some kinds of code and/or data can benefit from being able to have objects silently fail to create
>
>
* **Not Saved:**
> When enabled prevents this actor from being restored during the load of a save game. Can improve save/load speed and shrink save file size when used on actors the player won't notice are missing after a load.
>
>
* **Responds To Unit Player Change:**
> Enables an actor to update its player id dynamically in response to 'UnitPlayerChange' messages sent from the game. Can be used to keep colors in sync when a unit changes sides.
>
>
* **Vision Test Center Only:**
> Tests only the center part of the actor for vision tests, without taking the radius into account.
>
>
* **Skip Preload:** Skips preload.

#### Description

* How the actor appears when under the fog of war.
* This gets overridden for Units by Fog Visibilty

#### Flags

* **Hidden:** Means the actor cannot be seen
* **Snapshot:** Creates a paused 'Snapshot' actor copy in the fog of war
* **Dimmed:** The actor remains visible and animated but gets tinted/shaded by the maps Fog Of War values. Used for large doodads and death models most commonly
* **Visible:** The actor remains fully visible

#### Description

Properties this actor inherits from its host actor

#### HostedProps

* **Model Scale:** Inherits *Model Scale*
* **Cast Shadows:** Inherits *Cast Shadows* state
* **Cloak Effect:** Inherits *Cloak Effect*
* **Creep Engulfment:** Inherits *Creep Engulfment*
* **Decal:** Inherits *Decal Textures*
* **Local Tint Color:** Inherits *Local Tint Color*
* **Model Materials:** Inherits *Model Materials* (Glazes)
* **Opacity:** Inherits *Opacity*
* **Scale:** Inherits *Actor Scale*
* **Team Color:** Inherits *Team Color*
* **Tint Color:** Inherits *Tint Color*
* **Visibility:** Inherits *Visibility*
* **Warp Group:** Inherits *Warp Groups*

#### Description

Determines how this actor gets properties from its host.

#### HostedPropInherit

* **Continuous:** Inherit hosted props on an ongoing basis, whenever the actor has a host.
* **None:** Do not inherit any hosted props ever.
* **OneShot:** Inherit hosted props once during initialization, but never again after that.

#### Description

Macros are actor events that are defined externally and combined with this actor's events.

#### ActorKey

* Array of direct references to CActorEventMacro actors

#### PlayerIdSource

* **Auto:**
> The actor gets its player id from its creator. This player id can come from the creating actor, or from game synchronous code, via Abil, Behavior, Effect and Item messages (and their various subclass messages, like AbilTransport and BehaviorLevel).
>
>
* **ContainingScope:**
> Legacy behavior. The actor gets its player id from its owning scope at creation time. If a scope belongs to a unit, it has the player id of that unit. The player ids of other kinds of scopes vary by situation.
>
>

#### Description

Good to use for persistent visual effects that refuse to display on the first time they are created.

#### Description

Sharing allows you to use an existing actor for an actor request rather than always creating a new actor. Per Effect Tree will only share actors when they are created while executing the same effect.

#### RequestCreateSharing

* **None:** Created if it doesn't exist, otherwise always shared.
* **Always:** Always created by requests.
* **Per Effect Tree:** Functions like the Always setting, but only shared by effects in the same effect tree.

#### Description

* When the Supporter of this actor dies, this actor will receive a SupporterDestruction message that is commonly used to destroy the actor.
* Actor, alias or reference referred to by the **::Supporter** system reference for Events or Actor requests

#### ActorRequest

* Actor
* Fail If No Host
* Scope
* Effect
* Reach Across Effect Trees

#### Description

Actor terms (similar to trigger conditions) that must validate successfully in order for this actor to be created.

#### Notes

* Generic term that limits the creation of the actor. It is not a permanent blockade, but can help avoid spams in some cases. Ex: A CActor Unit is created when a behavior is on, but that behavior may sometime disable and turn back on; This will generate an overflow of actors on the same unit scopes. One can use "Cap" = 1 to limit it. In other situations, an unit creates an model on a unit when attacking, and generates a few of them in repetition. However, many of this type of unit are attacking and it generates a monstruous lag: you can limit the amount.

#### Description

* (Unsure) Uses Shape data to determine if actors should be visible to players
* Used a lot by Heroes of the Storm data for abilities

#### Description

* Filter determines whether this actor is visible for Enemy, Neutral, Self, or Ally players.
* Check who CAN see the actor
* The ones that the actor should not be visible to need to be filtered out first using Filter, Filter Players or Filter At Creation

#### Filter

* **Self:** When on, allows the actor to be seen by its owning player.
* **Ally:** When on, allows the actor to be seen by allied players.
* **Neutral:** When on, allows the actor to be seen by neutral players.
* **Enemy:** When on, allows the actor to be seen by enemy players.
* **All:** When on, allows the actor to be seen by anyone.

#### Description

* Filter that determines whether this actor is visible for Caster, Source, Target when responding to 'Effect' events.
* Check who CAN see the actor
* The ones that the actor should not be visible to need to be filtered out first using Filter, Filter Players or Filter At Creation

#### VisibilityAtCreation

* **Caster:** The effect caster.
* **Source:** The effect source.
* **Target:** The effect target.
* **Caster Ally:** Allies of the effect caster.
* **Source Ally:** Allies of the effect source.
* **Target Ally:** Allies of the effect target.
* **Caster Neutral:** Players that are neutral to the effect caster.
* **Source Neutral:** Players that are neutral to the effect source.
* **Target Neutral:** Players that are neutral to the effect target.
* **Caster Enemy:** Enemies of the effect caster.
* **Source Enemy:** Enemies of the effect source.
* **Target Enemy:** Enemies of the effect target.

#### Description

* Filter that determines whether this actor is visible to specific players
* Check who CAN see the actor
* The ones that the actor should not be visible to need to be filtered out first using Filter, Filter Players or Filter At Creation