Referenced By...

Display name for the spell, usually just the name of the spell as seen in-game, or the name of an item/enchant as seen in-game.

A unique name used to reference this spell in formulas, other spell definitions, etc. Cannot be modified after creation.

For an item this must be the item ID. For an enchant this must be the (usually 4-digit) enchant ID. For a spell this should be the spell ID that appears in logs for the cast events of this spell. Note that getting the spell ID 'wrong' will not cause the simulator to fail, just might mess up report display.

For display only. If provided, e.g. damage caused by this spell should display grouped under the damage from the group-under spell. This sets a default for all effects of this spell, each effect can override it individually.

For display only. If provided, the number of uses of this spell is the number of times that the 'use' spell ID was used. The game sometimes counts the spell cast as one spell ID and the damage as another, but they are really the same spell.

Display icon. If the ID corresponds to an actual spell in the game, this will be maintained automatically by Team Robot.

The spell school (Arcane, Fire, Frost, etc.). If the ID corresponds to an actual spell in the game, this will be maintained automatically by Team Robot.

The category is used mainly for UI organization and prevent cluttering the normal ability list with things like racials or consumables.

Make notes here if the spell is complicated or if it required some kind of non-obvious/special implementation in the simulator.

Player race required to use this entity.

Player role required to use this entity.

Player class required to use this entity.

Player specs required to use or activate this entity.

Code name of the talent required to use this entity.

Code name of the artifact trait required to use this entity.

Set bonus required to use or activate this entity. Enter as tier,bonus e.g. 19,2 for the tier 19 2-piece bonus. Class hall sets are tier -1.

IDs of the required items to activate this entity. This is special in that you must meet the other requirements OR this requirement.

Cooldown of this spell (in seconds). Leave blank if there is no cooldown on this spell.

Some spells can have multiple charges that cool down serially. Leave blank if this spell does not use a charge system.

If true, haste changes while the cooldown is running will not change it. This is rare now, but can greatly improve performance with minimal impact in some cases.

Some spells share a cooldown with other spells. Starting the cooldown on this spell will start the cooldown on all shared spells (and vice versa). Only needs to be defined in one direction.

Mainly for on-use trinkets, amount of time to lock out any other spell that has a Use Lockout when this one is used.

If this spell makes the player move, this is how far (in yards).

If this spell makes the player move, this is how long it takes to move (in seconds).

A persistent spell is always on, e.g. a hidden buff or persistent passive bonus that a spec gets. A persistent spell is always executed with the Player as the actor, and needs to be usable without a target. These spells do not need to be added to rotations, they will be 'cast' once before the fight starts as long as all requirements to have the spell are met.

A passive spell is not actively cast and usually provides a persistent bonus. When added to a rotation, the Once option should almost always be used with a passive spell.

An active spell is an action that a player can take in the game.

Cast time (in seconds). Leave blank for better performance if there is no cast time.

Channel time (in seconds). Leave blank for better performance if there is no channel time.

True if this spell is channelled on a target, and should thus stop the channel if the target dies, goes away, or out of range.

True if this spell triggers a global cooldown.

Override the default global cooldown length for special cases such as a warrior's Wild Strike.

Minimum global cooldown, only necessary if GCD is set.

True if this spell can be used while casting another spell, e.g. Inferno Blast. This is rare.

True if this spell can be cast/channeled while moving. This is rare. Not necessary for instant spells.

When instant or casted spells are used back-to-back, the game lets you chain them perfectly via a queueing mechanism. This flag enables similar behavior in instances that it would otherwise not be in effect, e.g. chaining mind flays (a channeled spell).

Amount of power (rage, energy, mana, etc.) required to use this ability.

Amount of alternate power (combo points, chi, demonic power, etc.) required to use this ability.

Amount of pet power (energy, focus, etc.) required for a pet to use this ability.

An extra condition required to use this action (e.g. Warrior Execute can only be used on targets under 20% health). Cooldown and power requirements are already checked and do not need to be included here.

If specified, all Effects on this spell that do not have their own triggers will execute when this event happens. If this is an Active spell, things that proc on Cast Success and Cast Complete of this spell will execute as if this spell had been directly cast.

The type of event that will trigger the associated effect.

Triggers on every event with a 100% chance. Use this instead of setting the chance to 100% for improved clarity and simulation speed.

Chance to trigger on the associated event. Should be a number between 0 and 1, e.g. 50% would be 0.5.

Some effects can only trigger every so often, used in conjunction with Chance.

Some effects can only trigger so often on each unique target.

Necessary if e.g. this is a pet ability where each pet has its own cooldown.

Chance to trigger using the Real PPM system, value should be number of procs per minute.

In WoD and earlier, all RPPM procs had a very high chance to trigger at the start of a fight. Seems that some still do in Legion, so check this to enable that behavior on a case-by-case basis.

Disable unlucky streak prevention for RPPM triggers. This is rare.

Chance to proc using the Deck of Cards system, value should be an integer between 0 and Deck Size.

Deck size for the Deck of Cards system.

How many times to execute the triggered effect(s). Defaults to 1 if left blank, changing this is rare. The proc is tried once for success or failure, and then it executes the effect(s) this many times (as opposed to trying the proc this many times).

The unit or units that should perform the triggered effects. It is rare to change this to something different than the current actor (Self).

The code names of the specific pets that should perform the triggered effects.

If specified, restricts which spell events will trigger this effect. By default all spells can trigger an effect.

If true, will only match active spells.

If true, will only match passive spells.

If true, will not match spells associated to an equipped item or enchant.

If set to something other than None, only spells and effects that match this spell school will pass the filter. It must be an exact match unless the School Inclusive option is used.

Usually the spell school filter must be an exact match (e.g. Astral would only match Astral spells). When Inclusive is checked, any Astral, Nature, or Arcane spell will match.

If true, will only match spells with a power cost defined.

If true, will only match spells with an alternate power cost defined.

If true, will only match spells with at least one periodic effect, and will only match periodic effects if targeted at an effect directly.

If true, will only match spells that have no periodic effects, and will only match periodic effects if targeted at an effect directly.

If true, will only match spells with at least one damage effect that is flagged as an auto attack, and only damage effects flagged as auto attack if targeted at an effect directly.

If true, will only trigger from damage or periodic damage effects that are not flagged as off hand.

If true, will only trigger from damage or periodic damage effects that are flagged as off hand.

If true, will only trigger from damage or periodic damage effects that are flagged as weapon attacks.

Used only for items. If true and the player is a non-caster, only triggers on effects explicitly flagged as triggering caster items.

Used only for items. If true and the player is melee, only triggers on effects explicitly flagged as triggering ranged items.

Only trigger from effects initiated by the specified units. The default value is Player, meaning triggers only fire when the current actor is the player.

List of spell or effect Code Names. ONLY these spells or effects will pass the filter if this is the only filter. Otherwise these spells will pass IN ADDITION to spells that pass all of the other filters.

List of spell or effect Code Names. These spells or effects will NOT pass the filter.

A custom filter condition called for each spell, return true to allow the spell. The name of the spell being checked is accessible via TriggerSpell. This is only evaluated once when the simulation starts, so only use static quantities like HasTalent, etc.

The list of everything that this spell causes to happen.

The kind of effect.

By default an Effect inherits identifying information from its Spell, but you can override it to give a specific Effect a different identity. The game does this sometimes, e.g. the cast will show up with one spell ID, the damage with another, and a buff applied with yet another. Remember that if you give a Code Name to e.g. a Buff Effect, you need to use the Effect's Code Name in functions like HasBuff. Must be CamelCase, no special characters, start with a letter.

Overrides the parent Spell ID with a different Spell ID, usually corresponds to an actual spell ID in-game.

Spell display name. If the ID corresponds to an actual spell in the game, this will be maintained automatically by Team Robot.

Overrides the parent Group Under ID.

For display only, overrides the parent Use Spell ID. It is common that a damage effect will have a different spell ID than actual spell that you cast to do that damage. Use this spell ID to get the right use count for an effect from the spell that is directly used.

Display icon. If the ID corresponds to an actual spell in the game, this will be maintained automatically by Team Robot.

The spell school (Arcane, Fire, Frost, etc.). If the ID corresponds to an actual spell in the game, this will be maintained automatically by Team Robot.

If true, this effect will be hidden on reports. Useful for 'artificial' effects that shouldn't impact counts and stuff in the output report.

Make notes here if the effect is complicated or if it required some kind of non-obvious/special implementation in the simulator.

For display only, this shows an extra label on rows with this buff in combat log reports.

Multiplier for a critical hit's final Damage, defaults to TotalCritDamageMultiplier. Only necessary if a spell has a special, spell-specific critical damage multiplier.

Multiplier for a critical hit's extra Damage, defaults to TotalExtraCritDamageMultiplier. The game has two different kinds of crit damage modifiers that combine differently, these are the more confusing ones because the tooltip generally shows half of the actual value.

Most shields absorb all damage, but some are limited to just physical or just magical.

Healing formula for Heal effects.

Multiplier for a critical hit's final Healing, defaults to TotalCritHealingMultiplier. Only necessary if a spell has a special, spell-specific critical healing multiplier.

Multiplier for a critical hit's extra Healing, defaults to TotalExtraCritHealingMultiplier. The game has two different kinds of crit healing modifiers that combine differently, these are the more confusing ones because the tooltip generally shows half of the actual value.

Crit chance for Damage and Healing effects.

Not as relevant anymore... but for most spells the crit chance is a percentage of actual hits rather than all casts.

Miss chance for Damage effects. Most spells can't miss anymore.

True for an attack that can be blocked if attacking from the front (only really used by tanking simulations).

True for an attack that can trigger item effects that trigger only on spell cast. Used mainly for melee specs that can use certain caster trinkets.

True for an attack that can trigger item effects that trigger only on ranged abilities. Used mainly for melee specs that can use certain ranged-only trinkets.

If this damage or heal effect shoots a missile, the travel time for the missile before it will hit and do its effect and trigger any associated procs. For Periodic effects, each tick will fire a missile with this travel time.

If this damage or heal effect shoots a missile, the missile speed in yards per second. For Periodic effects, each tick will fire a missile with this speed.

For AoE spells, the default behavior is to shoot one missile that splashes off the main target. Set Distinct Missiles to true to fire a distinct missile at each target instead.

Most spells calculate the outcome before the missile is launched. Turn this on for rare cases where it is calculated on impact (Frost Mages).

If true, this damage effect is considered off-hand damage, which can impact things like which procs get associated with this effect.

If true, this is classified as an auto attack, and can be targeted by procs that only happen on auto attack.

If true, this damage effect is considered a weapon attack, which can impact things like which procs get associated with this effect.

If true, the damage formula for this AoE damage effect is total damage, and it is split evenly with all targets hit.

If true, the healing formula for this AoE heal effect is total healing, and it is split evenly with all targets hit.

The time between ticks of a Periodic Damage or Heal effect or Timer effect. If a Timer also has a Duration, as many ticks as can fit within the duration will be executed.

The time until the first tick of this Periodic effect. It is rare that this would be different than the regular interval.

Different Periodic effects refresh themselves with different rules. 'Replace' is how most new DoTs work, if refreshed with 30% or less of the DoT remaining will not clip. 'Legacy' is the next most common, how most DoTs worked pre-WoD, a few still do it like this. 'Roll' is rare, effectively creates overlapping ticks, used by things like Bloodbath in WoD. 'Stack' will only increase stack on refresh, not modify tick or duration. 'Restart' essentially means it can't be refreshed, will completely restart the DoT on refresh. Note that 'Roll' and 'Legacy' will always snapshot damage and tick interval upon apply/refresh.

If true, snapshot tick damage or healing when the DoT is applied or refreshed. Roll and Legacy refresh types always snapshot regardless of the value of this property.

If true, when a periodic effect is refreshed, any remaining damage/healing of the clipped effect is distributed over the ticks of the new effect. This is rare.

True if this is a debuff applied to the current target rather than a buff applied to the player.

True if this is a buff applied to the currently targeted (non-pet) ally rather than a buff applied to the player. Not that common.

If set for a Buff, this buff is always on and never expires once applied.

If true, if this buff is refreshed, the new duration is appended to any current duration.

If true, if this buff is refreshed, use the 30% rule to extend the duration of the buff.

If true, if this buff is refreshed, its duration is not extended, but its stack can go up.

For Save Value effects, the formula for the value to queue when this effect is executed. For Self Damage, the amount of damage to do to yourself.

The maximum number of entries to queue up with a Save value effect. 0 means unlimited (more efficient to put a limit if applicable).

The maximum age of an entry in the queue. Useful to e.g. retain just values from the last 5 seconds.

The maximum number of times that an Extend Buff or DoT effect can extend the associated Buff or Periodic Damage Effect.

Some periodic effects, when extended, will round to the nearest tick. e.g. if it is time 10, extend by 5 to end at 15, and the closest tick would happen at time 15.3, extends by 5.3 instead of 5.

The number of stacks consumed each time a Consume Buff effect occurs. If not specified or zero, the buff is completely removed.

The number of charges to add or remove from a cooldown.

The type of resource (rage, energy, etc.) for a Resource effect. If the loaded player does not use this resource, then this effect is ignored.

The amount of resource gained from a Resource effect. Use a negative value to consume a resource instead.

Code name for the pet summoned or dismissed by this effect, needs to match up with an action list in one of the loaded rotations for a simulation. Must be CamelCase, no special characters, start with a letter.

Display name for the pet summoned by this spell.

Some spells summon multiple copies of a pet at once.

Most pets follow the master's target. 'Exclusive' is a special mode mainly for Storm, Earth, and Fire. The pet will attack the target closest to the master's target, but will exclude targets already being attacked by the specified friendly units. If there aren't enough targets, then the pet will attack the player's target.

Defaults to dismissing all instances of the named pet. Oldest will find the oldest (where 'oldest' means the ones that will expire the soonest) N instances and dismiss them. Random will pick N random pets to dismiss.

If specified (non-zero), only dismiss this many instances of this pet instead of all of them.

If true, this pet will not attack the same target as the player.

A list of pet code names. This pet will not attack the same target that any of these pets are attacking.

If the pet targeting mode could result in multiple valid targets, these priority rules are used to choose between them. If no rules are provided, the valid target closest to the master is chosen.

Each target is checked with this filter, the first match becomes the current target. If none match then the next entry in the target priority list is checked.

If an NPC is present with this name, it is targeted. Not used as commonly as Filter, because each boss script has a fallback kill priority that targets NPCs by name.

Descriptive comment of this custom target priority rule.

Set to true if this pet uses a resource for some of its abilities.

Type of power used by this pet (e.g. rage, mana, etc.).

Minimum amount of power for this pet. This is a fixed quantity, evaluated once before when the pet is summoned.

Maximum amount of power for this pet. Note that the Max Power stat does not work on pets.

Amount of power that the pet has when summoned.

Amount of power regenerated every second by this pet.

Code name for the NPC spawned or despawned by this spell, must be unique from any NPC name in the loaded boss script. Only one instance of an NPC can be spawned at a time.

Display name for the NPC spawned by this spell.

Optional icon to associate to the spawned NPC for display. We suggest the icon of one of the NPC's most recognizable spells.

Optional spell school to associate to the spawned NPC for display, used for coloring.

Number of times that this effect should tick. For Periodic Damage/Heal, either this or Duration should be set (it is an error to use both). For a Timer: if an Interval is set, will tick this number of times at the specified interval spacing. If an Interval is not set, a Duration must be set, and it will divide Tick Count ticks evenly over the entire duration.

If true, do a tick immediately when the timer or periodic effect starts. for DoTs/HoTs, this does not interact with refresh modes or tick counts or anything: it just triggers an extra tick of daamge/healing on application or refresh.

Usually a Timer will only have one instance per source that created it, and per unit or target to which it was attached (by default Timers attach themselves to the current actor). Starting the timer again will reset any existing timer. Check this to allow multiple Timer instances to be created and run simultaneously without reseting any already-running timer.

By default, Save Value effects will create a single global value. Check this to save a unique value with the currently active friendly unit (player or pet).

For Timers: by default, Timers will attach to the player or pets. Check this to attach to hostile targets instead. For Save Value effects: by default, Save Value effects will create a single global value. Check this to save a unique value with the current enemy target.

For Timers: by default, Timers will attach to the player or pets. Check this to attach to other allies instead (healing simulation mostly). For Save Value effects: by default, Save Value effects will create a single global value. Check this to save a unique value with the current ally target.

The code names of the pets that should change their targets to the current target. If empty, all pets will change target.

How much to increase or decrease the tick frequency of the affected periodic damage effects. 1.0 would do nothing, 2.0 would make it tick twice as often, 0.5 would make it tick half as often. Whether this causes more total ticks to happen depends on the kind of DoT.

The spell's cast and/or channel to begin.

'Snapshot' is most common, exactly copies to new target. 'Apply' applies a new DoT/HoT to the new target. 'Execute Spell' executes the entire parent spell on the new target as if it was cast.

A 'virtual' self-damage effect is not 'real' -- it is something that we are using to simplify an implementation without compromising game behavior. Virtual self-damage won't trigger procs, eat up absorbs, etc.

The stats that this Buff effect applies.

The stat type to modify.

Amount of the stat to add. Can also be negative to reduce a stat.

The method to use when combining this with other sources of this stat, e.g. some buffs are multiplicative, others are additive.

If true, the value of this stat buff might be different for each unique stack count. e.g. sometimes 1 stack might give 100, and sometimes 120. This is rare, and can seriously slow down the simulator. Use this only as a last resort.

The minimum number of stacks for a Buff or Periodic Damage/Heal effect. At the moment this is only evaluated once at the start of the simulation. This is not commonly needed, used mainly for ramping buffs, or special cases where stacks can be removed but only down to a non-zero threshold.

The maximum number of stacks for a Buff or Periodic Damage/Heal effect. At the moment this is only evaluated once at the start of the simulation.

The starting number of stacks when a Buff or Periodic Damage/Heal effect is applied. Note that for a ramping buff, the stacks will be set to this when refreshed also, since ramping buffs don't really support refreshing.

The number of stacks of a Buff or Periodic Damage/Heal effect that are added each time it is applied or refreshed.

True if a Buff or Periodic Damage/Heal effect's stats/damage should be multiplied by the current stack count.

A ramping buff gains or loses stacks over time, e.g. 'gain a stack every second for 10 seconds'. The amount gained/lost is specified by Stacks per Application, and the starting stack is specified by Min Stacks or Max Stacks depending on the direction.

How this buff ramps, the default is 'Up', i.e. gains stacks over time. The UpThenDown pattern will create a symmetrical pattern that goes from Min Stacks to Max Stacks and back.

Amount of time to delay before ramping starts. In other words, the amount of time spent at Min Stacks. For UpThenDown pattern, this delay will also be applied at the peak before it starts ramping down.

If true, refresh the buff duration each time it ramps.

How often a ramping buff gains or loses stacks.

If specified, this effect only applies to spells that pass the provided filters.

If true, will only match active spells.

If true, will only match passive spells.

If true, will not match spells associated to an equipped item or enchant.

If set to something other than None, only spells and effects that match this spell school will pass the filter. It must be an exact match unless the School Inclusive option is used.

Usually the spell school filter must be an exact match (e.g. Astral would only match Astral spells). When Inclusive is checked, any Astral, Nature, or Arcane spell will match.

If true, will only match spells with a power cost defined.

If true, will only match spells with an alternate power cost defined.

If true, will only match spells with at least one periodic effect, and will only match periodic effects if targeted at an effect directly.

If true, will only match spells that have no periodic effects, and will only match periodic effects if targeted at an effect directly.

If true, will only match spells with at least one damage effect that is flagged as an auto attack, and only damage effects flagged as auto attack if targeted at an effect directly.

List of spell or effect Code Names. ONLY these spells or effects will pass the filter if this is the only filter. Otherwise these spells will pass IN ADDITION to spells that pass all of the other filters.

List of spell or effect Code Names. These spells or effects will NOT pass the filter.

A custom filter condition called for each spell, return true to allow the spell. The name of the spell being checked is accessible via TriggerSpell. This is only evaluated once when the simulation starts, so only use static quantities like HasTalent, etc.

The friendly unit or units that this effect applies to, e.g. a pet could cast a buff that buffs its master instead of itself.

The code names of the specific pets to which this effect applies.

The target or targets that this effect applies to, e.g. a consume DoT effect could remove DoTs from all targets instead of just the current. For Buff effects, this only applies to debuffs or ally buffs. For Save Value effects, All means that one value is saved for all targets; Current means that a separate value is saved for each target; Specific means that a value is saved only to a specific target.

The code name of the target to which this effect applies.

The maximum number of units to which this effect can be applied.

The radius in yards from the current target to which this effect can be applied.

Custom rules for which and in which order to pick targets for applying this effect in the specified area.

The condition to check on each target to see if this effect should be applied. This must match in addition to whichever AoE mode is chosen.

For Buff Then XXX mode. Will favor targets without these buffs, or with little time remaining.

For Buff Then XXX mode. Will favor targets without these HoTs/DoTs, or with little time remaining.

If true, this will not affect the primary target, only secondary targets.

If true and the application AoE mode relies on distance, will be distance from self rather than current target.

The maximum number of targets that an effect can hit. Set to -1 to indicate unlimited targets. If AoE mode is Chain and this is -1, will chain until it can't find another target to hit.

The radius in yards for an AoE Damage or Heal effect, or for a Spread DoT effect. If AoE mode is Chain, this is how far it can jump between targets.

Most AoE is centered on the current target. Chain is for things like chain lightning, by default it will chain and hit up to Max Targets and never hop further than Radius to find a new target, never hitting a target more than once.

Each target within the AoE range is checked with this condition to determine if the AoE hits that target or not.

If true, damage can chain back to targets that have already been hit.

For Buff Then XXX mode. Will favor targets without these buffs, or with little time remaining.

For Buff Then XXX mode. Will favor targets without these HoTs/DoTs, or with little time remaining.

If true, this Damage or Heal effect will not hit the primary target, only secondary targets.

If true and the AoE mode depends on distance, will be distance from self rather than the current target.

'Best' will spread to the best targets within the specified range, favoring targets without the DoT first, then targets with the smallest DoT, in order by proximity to current target. 'Random' will randomly choose targets within range with no or a smaller DoT of the same kind. 'Clear or Stack' will first try to spread to any target without the DoT. If none found, will add one stack to the current target. 'Clear or Refresh' will first try to spread to any target without the DoT. If none found, will use Apply (refresh) mode on the best target with the DoT.

If true, can spread to the target with the source DoT as well. Really only makes sense if Spread Action is Apply or Execute Spell.

Some effects can only occur so often.

Some cooldowns have more than one charge that cool down serially. Only used if Cooldown is specified.

If true, haste changes while the cooldown is running will not change it. This is rare now, but can greatly improve performance with minimal impact in some cases.

An extra condition that must be met in order to execute this effect, e.g. the DoT effect from Chi Explosion only happens if at least 2 chi was spent. This condition is usually only necessary for unique or complicated cases.

If true, no procs can trigger from this effect unless they specifically whitelist this spell/effect by name.

If specified, this effect triggers from these game events (e.g. this effect triggers when another spell hits). Any effect with its own triggers is ONLY caused by these events, and is not executed when the parent spell is cast or triggered.