summaryrefslogtreecommitdiff
path: root/docs/smart_scripts.html
diff options
context:
space:
mode:
authorYehonal <yehonal.azeroth@gmail.com>2020-05-10 18:41:47 +0200
committerGitHub <noreply@github.com>2020-05-10 18:41:47 +0200
commit128c1c3f03381af8487bc177e96973726da36b58 (patch)
tree894d5c6193509c4880f196eda517c1b44a0b02f3 /docs/smart_scripts.html
parent39270165e7564f104d0c70d6f55d2ca2a6c2fd2e (diff)
downloadwiki-128c1c3f03381af8487bc177e96973726da36b58.tar.gz
wiki-128c1c3f03381af8487bc177e96973726da36b58.tar.bz2
wiki-128c1c3f03381af8487bc177e96973726da36b58.zip
Rename smart_scripts.md to smart_scripts.html
Diffstat (limited to 'docs/smart_scripts.html')
-rw-r--r--docs/smart_scripts.html4640
1 files changed, 4640 insertions, 0 deletions
diff --git a/docs/smart_scripts.html b/docs/smart_scripts.html
new file mode 100644
index 0000000..10b0fb8
--- /dev/null
+++ b/docs/smart_scripts.html
@@ -0,0 +1,4640 @@
+# smart\_scripts
+
+[<-Back-to:World](database-world.md)
+
+**Table Structure**
+
+<table height="400">
+<tbody>
+<tr class="odd">
+<td><p><strong>Field</strong></p></td>
+<td><p><strong>Type</strong></p></td>
+<td><p><strong>Attributes</strong></p></td>
+<td><p><strong>Key</strong></p></td>
+<td><p><strong>Null</strong></p></td>
+<td><p><strong>Default</strong></p></td>
+<td><p><strong>Extra</strong></p></td>
+<td><p><strong>Comment</strong></p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#entryorguid">entryorguid</a></p></td>
+<td><p>int(11)</p></td>
+<td><p>signed</p></td>
+<td><p>PRI</p></td>
+<td><p>NO</p></td>
+<td><p>NULL</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#source_type">source_type</a></p></td>
+<td><p>tinyint(3)</p></td>
+<td><p>unsigned</p></td>
+<td><p>PRI</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#id">id</a></p></td>
+<td><p>smallint(5)</p></td>
+<td><p>unsigned</p></td>
+<td><p>PRI</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#link">link</a></p></td>
+<td><p>smallint(5)</p></td>
+<td><p>unsigned</p></td>
+<td><p>PRI</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#event_type">event_type</a></p></td>
+<td><p>tinyint(3)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#event_phase_mask">event_phase_mask</a></p></td>
+<td><p>smallint(5)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#event_chance">event_chance</a></p></td>
+<td><p>tinyint(3)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>100</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#event_flags">event_flags</a></p></td>
+<td><p>smallint(5)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#event_type">event_param1</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#event_type">event_param2</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#event_type">event_param3</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#event_type">event_param4</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#event_type">event_param5</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#action_type">action_type</a></p></td>
+<td><p>tinyint(3)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#action_type">action_param1</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#action_type">action_param2</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#action_type">action_param3</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#action_type">action_param4</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#action_type">action_param5</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#action_type">action_param6</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#target_type">target_type</a></p></td>
+<td><p>tinyint(3)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#target_type">target_param1</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#target_type">target_param2</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#target_type">target_param3</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#target_type">target_param4</a></p></td>
+<td><p>int(10)</p></td>
+<td><p>unsigned</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#target_type">target_x</a></p></td>
+<td><p>float</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#target_type">target_y</a></p></td>
+<td><p>float</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#target_type">target_z</a></p></td>
+<td><p>float</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p><a href="#target_type">target_o</a></p></td>
+<td><p>float</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>0</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p><a href="#comment">comment</a></p></td>
+<td><p>text</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p>NO</p></td>
+<td><p>NULL</p></td>
+<td><p><br />
+</p></td>
+<td><p>Event Comment</p></td>
+</tr>
+</tbody>
+</table>
+
+**Description of the fields**
+
+### entryorguid
+
+- EntryOrGuid &gt; 0: entry of the creature / game object / etc.
+
+<!-- -->
+
+- EntryOrGuid &lt; 0: guid of the creature / game object / etc.
+
+<!-- -->
+
+- Depends on source\_type.
+
+### source\_type
+
+- Object type: creature, game object, spell. see table below for values
+
+ | Name | Value |
+ |---------------------------------------------------------------------|-------|
+ | SMART\_SCRIPT\_TYPE\_CREATURE | 0 |
+ | SMART\_SCRIPT\_TYPE\_GAMEOBJECT | 1 |
+ | SMART\_SCRIPT\_TYPE\_AREATRIGGER | 2 |
+ | SMART\_SCRIPT\_TYPE\_TIMED\_ACTIONLIST | 9 |
+
+### id
+
+- Incremental id *bound* to each entryorguid & source\_type (0, 1, 2, ...).
+
+### link
+
+- Simple event linking;
+
+<!-- -->
+
+- Example: if id = 0 and link = 1; id 1 will only be able to occur if id = 0 was triggered (id 1 has to use event\_type SMART\_EVENT\_LINK).
+
+<!-- -->
+
+- Smart\_event to be used.
+
+### event\_phase\_mask
+
+When dealing with phases, *phase IDs* have to be used. There are 13 (12+1) different phases: 1, 2, ... 12 and the default 0.
+
+**Example:** The script is in phase 0 by default - If we want it to go to phase 1, we got two choices:
+
+- SMART\_ACTION\_INC\_PHASE by 1 or SMART\_ACTION\_SET\_PHASE 1
+
+If the script is in phase 0 and want to skip to phase 2:
+
+- SMART\_ACTION\_INC\_PHASE by 2 or SMART\_ACTION\_SET\_PHASE 2
+
+If the script is in phase 1 and want to skip to phase 2:
+
+- SMART\_ACTION\_INC\_PHASE by 1 or SMART\_ACTION\_SET\_PHASE 2
+
+| Name | Flag | Hex | Comment |
+|----------------------------------|------|-------|-----------------------------|
+| SMART\_EVENT\_PHASE\_ALWAYS\_BIT | 0 | 0x000 | Means all phases (1 ... 12) |
+| SMART\_EVENT\_PHASE\_1 | 1 | 0x001 | Phase 1 only. |
+| SMART\_EVENT\_PHASE\_2 | 2 | 0x002 | Phase 2 only. |
+| SMART\_EVENT\_PHASE\_3 | 4 | 0x004 | Phase 3 only. |
+| SMART\_EVENT\_PHASE\_4 | 8 | 0x008 | Phase 4 only. |
+| SMART\_EVENT\_PHASE\_5 | 16 | 0x010 | Phase 5 only. |
+| SMART\_EVENT\_PHASE\_6 | 32 | 0x020 | Phase 6 only. |
+| SMART\_EVENT\_PHASE\_7 | 64 | 0x040 | Phase 7 only. |
+| SMART\_EVENT\_PHASE\_8 | 128 | 0x080 | Phase 8 only. |
+| SMART\_EVENT\_PHASE\_9 | 256 | 0x100 | Phase 9 only. |
+| SMART\_EVENT\_PHASE\_10 | 512 | 0x200 | Phase 10 only. |
+| SMART\_EVENT\_PHASE\_11 | 1024 | 0x400 | Phase 11 only. |
+| SMART\_EVENT\_PHASE\_12 | 2048 | 0x800 | Phase 12 only. |
+
+- Event will only be able to occur if creature/GO is in this phase.
+
+<!-- -->
+
+- Example: If we want an event to only be able to occure in phase 1 and 4, **event\_phase\_mask** = 1+8 = 9
+
+### event\_chance
+
+This is the probability of the event to occur as a percentage from 0-100. So, if you want the event to occur roughly half of the time, then set this to 50.
+
+### event\_flags
+
+<table>
+<thead>
+<tr class="header">
+<th><strong>Name</strong></th>
+<th>Flag</th>
+<th>Hex</th>
+<th>Comment</th>
+</tr>
+</thead>
+<tbody>
+<tr class="odd">
+<td><p>SMART_EVENT_FLAG_NOT_REPEATABLE</p></td>
+<td><p>1</p></td>
+<td><p>0x01</p></td>
+<td><p>Event can not repeat</p></td>
+</tr>
+<tr class="even">
+<td><p>SMART_EVENT_FLAG_DIFFICULTY_0</p></td>
+<td><p>2</p></td>
+<td><p>0x02</p></td>
+<td><p>Event only occurs in normal dungeon</p></td>
+</tr>
+<tr class="odd">
+<td><p>SMART_EVENT_FLAG_DIFFICULTY_1</p></td>
+<td><p>4</p></td>
+<td><p>0x04</p></td>
+<td><p>Event only occurs in heroic dungeon</p></td>
+</tr>
+<tr class="even">
+<td><p>SMART_EVENT_FLAG_DIFFICULTY_2</p></td>
+<td><p>8</p></td>
+<td><p>0x08</p></td>
+<td><p>Event only occurs in normal raid</p></td>
+</tr>
+<tr class="odd">
+<td><p>SMART_EVENT_FLAG_DIFFICULTY_3</p></td>
+<td><p>16</p></td>
+<td><p>0x10</p></td>
+<td><p>Event only occurs in heroic raid</p></td>
+</tr>
+<tr class="even">
+<td><p>SMART_EVENT_FLAG_RESERVED_5</p></td>
+<td><p>32</p></td>
+<td><p>0x20</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p>SMART_EVENT_FLAG_RESERVED_6</p></td>
+<td><p>64</p></td>
+<td><p>0x40</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p>SMART_EVENT_FLAG_DEBUG_ONLY</p></td>
+<td><p>128</p></td>
+<td><p>0x80</p></td>
+<td><p>Event only occurs in debug build</p></td>
+</tr>
+<tr class="odd">
+<td><p>SMART_EVENT_FLAG_DONT_RESET</p></td>
+<td><p>256</p></td>
+<td><p>0x100</p></td>
+<td><p>Event will not reset in SmartScript::OnReset()</p></td>
+</tr>
+</tbody>
+</table>
+
+- Sets if the event should not repeat or should only happen in a given instance/dungeon difficulty (if applicable);
+
+<!-- -->
+
+- Values can be added together (bitwise math).
+
+### event\_type
+
+<table height="400">
+<thead>
+<tr class="header">
+<th><p>Name</p></th>
+<th><p>Value</p></th>
+<th><p>Param1</p></th>
+<th><p>Param2</p></th>
+<th><p>Param3</p></th>
+<th><p>Param4</p></th>
+<th><p>Param5</p></th>
+<th>Comment</th>
+</tr>
+</thead>
+<tbody>
+<tr class="odd">
+<td><p>SMART_EVENT_UPDATE_IC</p></td>
+<td><p>0</p></td>
+<td><p>InitialMin</p></td>
+<td><p>InitialMax</p></td>
+<td><p>RepeatMin</p></td>
+<td><p>RepeatMax</p></td>
+<td><p><br />
+</p></td>
+<td><p>In combat.</p></td>
+</tr>
+<tr class="even">
+<td><p>SMART_EVENT_UPDATE_OOC</p></td>
+<td><p>1</p></td>
+<td><p>InitialMin</p></td>
+<td><p>InitialMax</p></td>
+<td><p>RepeatMin</p></td>
+<td><p>RepeatMax</p></td>
+<td><p><br />
+</p></td>
+<td>Out of combat.</td>
+</tr>
+<tr class="odd">
+<td><p>SMART_EVENT_HEALTH_PCT</p></td>
+<td><p>2</p></td>
+<td><p>HPMin%</p></td>
+<td><p>HPMax%</p></td>
+<td><p>RepeatMin</p></td>
+<td><p>RepeatMax</p></td>
+<td><p><br />
+</p></td>
+<td><p>Health Percentage</p></td>
+</tr>
+<tr class="even">
+<td><p>SMART_EVENT_MANA_PCT</p></td>
+<td><p>3</p></td>
+<td><p>ManaMin%</p></td>
+<td><p>ManaMax%</p></td>
+<td><p>RepeatMin</p></td>
+<td><p>RepeatMax</p></td>
+<td><p><br />
+</p></td>
+<td><p>Mana Percentage</p></td>
+</tr>
+<tr class="odd">
+<td><p>SMART_EVENT_AGGRO</p></td>
+<td><p>4</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td>On Creature Aggro</td>
+</tr>
+<tr class="even">
+<td><p>SMART_EVENT_KILL</p></td>
+<td><p>5</p></td>
+<td><p>CooldownMin</p></td>
+<td><p>CooldownMax</p></td>
+<td><p>Player only (0/1)</p></td>
+<td><p>Creature entry (if param3 is 0)</p></td>
+<td><p><br />
+</p></td>
+<td>On Creature Kill</td>
+</tr>
+<tr class="odd">
+<td><p>SMART_EVENT_DEATH</p></td>
+<td><p>6</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td>On Creature Death</td>
+</tr>
+<tr class="even">
+<td><p>SMART_EVENT_EVADE</p></td>
+<td><p>7</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td>On Creature Evade Attack</td>
+</tr>
+<tr class="odd">
+<td><p>SMART_EVENT_SPELLHIT</p></td>
+<td><p>8</p></td>
+<td><p>SpellID</p></td>
+<td><p>School</p></td>
+<td><p>CooldownMin</p></td>
+<td><p>CooldownMax</p></td>
+<td><p><br />
+</p></td>
+<td>On Creature/Gameobject Spell Hit</td>
+</tr>
+<tr class="even">
+<td><p>SMART_EVENT_RANGE</p></td>
+<td><p>9</p></td>
+<td><p>MinDist</p></td>
+<td><p>MaxDist</p></td>
+<td><p>RepeatMin</p></td>
+<td><p>RepeatMax</p></td>
+<td><p><br />
+</p></td>
+<td>On Target In Range</td>
+</tr>
+<tr class="odd">
+<td><p>SMART_EVENT_OOC_LOS</p></td>
+<td><p>10</p></td>
+<td><p>NoHostile</p></td>
+<td><p>MaxRange</p></td>
+<td><p>CooldownMin</p></td>
+<td><p>CooldownMax</p></td>
+<td>0/1 Player Only</td>
+<td>On Target In Distance Out of Combat</td>
+</tr>
+<tr class="even">
+<td><p>SMART_EVENT_RESPAWN</p></td>
+<td><p>11</p></td>
+<td><p>type (None = 0, Map = 1, Area = 2)</p></td>
+<td><p>MapId</p></td>
+<td><p>ZoneId</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td>On Creature/Gameobject Respawn</td>
+</tr>
+<tr class="odd">
+<td><p>SMART_EVENT_TARGET_HEALTH_PCT</p></td>
+<td><p>12</p></td>
+<td><p>HPMin%</p></td>
+<td><p>HPMax%</p></td>
+<td><p>RepeatMin</p></td>
+<td><p>RepeatMax</p></td>
+<td><p><br />
+</p></td>
+<td>On Target Health Percentage</td>
+</tr>
+<tr class="even">
+<td><p>SMART_EVENT_VICTIM_CASTING</p></td>
+<td><p>13</p></td>
+<td><p>RepeatMin</p></td>
+<td><p>RepeatMax</p></td>
+<td><p>Spell id (0 any)</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td>On Target Casting Spell</td>
+</tr>
+<tr class="odd">
+<td><p>SMART_EVENT_FRIENDLY_HEALTH</p></td>
+<td><p>14</p></td>
+<td><p>HPDeficit</p></td>
+<td><p>Radius</p></td>
+<td><p>RepeatMin</p></td>
+<td><p>RepeatMax</p></td>
+<td><p><br />
+</p></td>
+<td>On Friendly Health Deficit</td>
+</tr>
+<tr class="even">
+<td><p>SMART_EVENT_FRIENDLY_IS_CC</p></td>
+<td><p>15</p></td>
+<td><p>Radius</p></td>
+<td><p>RepeatMin</p></td>
+<td><p>RepeatMax</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p>SMART_EVENT_FRIENDLY_MISSING_BUFF</p></td>
+<td><p>16</p></td>
+<td><p>SpellId</p></td>
+<td><p>Radius</p></td>
+<td><p>RepeatMin</p></td>
+<td><p>RepeatMax</p></td>
+<td><p><br />
+</p></td>
+<td>On Friendly Lost Buff</td>
+</tr>
+<tr class="even">
+<td><p>SMART_EVENT_SUMMONED_UNIT</p></td>
+<td><p>17</p></td>
+<td><p>CretureId (0 all)</p></td>
+<td><p>CooldownMin</p></td>
+<td><p>CooldownMax</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td>On Creature/Gameobject Summoned Unit</td>
+</tr>
+<tr class="odd">
+<td><p>SMART_EVENT_TARGET_MANA_PCT</p></td>
+<td><p>18</p></td>
+<td><p>ManaMin%</p></td>
+<td><p>ManaMax%</p></td>
+<td><p>RepeatMin</p></td>
+<td><p>RepeatMax</p></td>
+<td><p><br />
+</p></td>
+<td>On Target Mana Percentage</td>
+</tr>
+<tr class="even">
+<td><p>SMART_EVENT_ACCEPTED_QUEST</p></td>
+<td><p>19</p></td>
+<td><p>QuestID (0 any)</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td>On Target Accepted Quest</td>
+</tr>
+<tr class="odd">
+<td><p>SMART_EVENT_REWARD_QUEST</p></td>
+<td><p>20</p></td>
+<td><p>QuestID (0 any)</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td>On Target Rewarded Quest</td>
+</tr>
+<tr class="even">
+<td><p>SMART_EVENT_REACHED_HOME</p></td>
+<td><p>21</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td>On Creature Reached Home</td>
+</tr>
+<tr class="odd">
+<td><p>SMART_EVENT_RECEIVE_EMOTE</p></td>
+<td><p>22</p></td>
+<td><p><a href="Emotes">EmoteId</a></p></td>
+<td><p>CooldownMin</p></td>
+<td><p>CooldownMax</p></td>
+<td><p></p></td>
+<td><p><br />
+</p></td>
+<td>On Receive Emote.</td>
+</tr>
+<tr class="even">
+<td><p>SMART_EVENT_HAS_AURA</p></td>
+<td><p>23</p></td>
+<td><p>SpellID</p></td>
+<td><p>Stacks</p></td>
+<td><p>RepeatMin</p></td>
+<td><p>RepeatMax</p></td>
+<td><p><br />
+</p></td>
+<td>On Creature Has Aura</td>
+</tr>
+<tr class="odd">
+<td><p>SMART_EVENT_TARGET_BUFFED</p></td>
+<td><p>24</p></td>
+<td><p>SpellID</p></td>
+<td><p>Stacks</p></td>
+<td><p>RepeatMin</p></td>
+<td><p>RepeatMax</p></td>
+<td><p><br />
+</p></td>
+<td>On Target Buffed With Spell</td>
+</tr>
+<tr class="even">
+<td><p>SMART_EVENT_RESET</p></td>
+<td><p>25</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td>After Combat, On Respawn or Spawn</td>
+</tr>
+<tr class="odd">
+<td><p>SMART_EVENT_IC_LOS</p></td>
+<td><p>26</p></td>
+<td><p>NoHostile</p></td>
+<td><p>MaxRange</p></td>
+<td><p>CooldownMin</p></td>
+<td><p>CooldownMax</p></td>
+<td>0/1 Player Only</td>
+<td>On Target In Distance In Combat</td>
+</tr>
+<tr class="even">
+<td><p>SMART_EVENT_PASSENGER_BOARDED</p></td>
+<td><p>27</p></td>
+<td><p>CooldownMin</p></td>
+<td><p>CooldownMax</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="odd">
+<td><p>SMART_EVENT_PASSENGER_REMOVED</p></td>
+<td><p>28</p></td>
+<td><p>CooldownMin</p></td>
+<td><p>CooldownMax</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+</tr>
+<tr class="even">
+<td><p>SMART_EVENT_CHARMED</p></td>
+<td><p>29</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td>On Creature Charmed</td>
+</tr>
+<tr class="odd">
+<td><p>SMART_EVENT_CHARMED_TARGET</p></td>
+<td><p>30</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td><p><br />
+</p></td>
+<td>On Target Charmed</td>
+</tr>
+<tr class="even">
+<td><p>SMART_EVENT_SPELLHIT_TARGET</p></td>
+<td><p>31</p></td>
+<td><p>SpellId</p></td>