Due to the recent resurgence of spam, we have temporarily disabled user creation and page editing/creation as we resolve the issue.


From Snapwiki
Revision as of 2016-05-19T14:56:03 by KDearnley (Talk | contribs) (Initial draft. I will create an example map and screenshots shortly.)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Understanding how Activators work is necessary for creating complex logic. Simply stated, the Activator is the player or AI that causes a logic chain to fire. For example, if entering a volume triggers a barrel to explode, then the player or AI that enters that volume is the Activator.

Using the Activator

You can perform actions on the Activator. For example you can modify the Activator’s health or damage. If the Activator is a player, you can give him an item or weapon.
box volume --> on entered --> give droppable --> inventory

In some cases the activator can be chosen in the logic chain. For example, when an AI or player is injured you can specify whether the Activator is the attacker or the victim.
ai proxy --> on damaged [attacker] --> give score --> player proxy

Some logic chains require an Activator. For example, resource and score need an activator because unlike other variables, resource and score are specifically associated with a player or team. Players possess a resource and a score value. However, a number or integer is just an independent variable that is not associated with any particular player. So without an Activator, the logic chain cannot identify what player receives the resource or score value. The following logic chain will not alter any player resource because there is no player activator.
number variable --> on changed --> add --> player resource

Not all logic chains have an Activator. If a logic chain fires on map start or when a variable is changed, there is no valid Activator. This is because the Activator must either be a player or an AI. Even if a variable is in a logic chain that begins with an Activator, the output from a variable does not pass an Activator. The following logic chain will not alter any player resource because there is no activator to identify which player gets the resource.
map --> on match start --> add -- > player resource

The activator can be stored in a Cached Activator variable in order to get it later. Using a Cached Activator, you can inject a specific Activator into a logic chain at any time.
box volume --> on entered --> set --> cached activator
number variable --> on changed --> get --> cached activator --> on get --> add --> player resource