summaryrefslogtreecommitdiff
path: root/docs/smart_scripts.md
diff options
context:
space:
mode:
authorWalter Pagani <paganiwalter@gmail.com>2021-01-16 16:12:09 -0300
committerGitHub <noreply@github.com>2021-01-16 16:12:09 -0300
commitd3cbe4ab3ae456b7a1ed05914ea046fc64352ca0 (patch)
tree845a94916559c535b460601a68dee70d253eb2e8 /docs/smart_scripts.md
parent73facca44db00b6cfff9599341dbc8c2e375f405 (diff)
downloadwiki-d3cbe4ab3ae456b7a1ed05914ea046fc64352ca0.tar.gz
wiki-d3cbe4ab3ae456b7a1ed05914ea046fc64352ca0.tar.bz2
wiki-d3cbe4ab3ae456b7a1ed05914ea046fc64352ca0.zip
update smart_scripts (#360)
* update smart_scripts * Brief description of the table contents. * Adding recommendations. * Adding list in source_type
Diffstat (limited to 'docs/smart_scripts.md')
-rw-r--r--docs/smart_scripts.md4471
1 files changed, 351 insertions, 4120 deletions
diff --git a/docs/smart_scripts.md b/docs/smart_scripts.md
index dde668c..00cebd5 100644
--- a/docs/smart_scripts.md
+++ b/docs/smart_scripts.md
@@ -2,11 +2,13 @@
[<-Back-to:World](database-world.md)
+The `smart_scripts` table has 30 attributes. It serves to make scripts in SQL language. The important thing is always to analyze, who is the event that motivates the execution of an action and of course, who is the objective. As a recommendation, you can review the scripts that are already inside the table, to understand how it works. The advantage, for which several use this method, is that it is not required to compile, when adding records, with restarting the server, if it is well programmed, you can appreciate the changes. Another reason is the portability, but it depends on the point of view of the developer, the response you can get.
+
**Table Structure**
| Field | Type | Attributes | Key | Null | Default | Extra | Comment |
|-----------------------|-------------|------------|-----|------|---------|-------|---------------|
-| [entryorguid][1] | int(11) | signed | PRI | NO | NULL | | |
+| [entryorguid][1] | int(11) | signed | PRI | NO | | | |
| [source_type][2] | tinyint(3) | unsigned | PRI | NO | 0 | | |
| [id][3] | smallint(5) | unsigned | PRI | NO | 0 | | |
| [link][4] | smallint(5) | unsigned | PRI | NO | 0 | | |
@@ -14,11 +16,11 @@
| [event_phase_mask][6] | smallint(5) | unsigned | | NO | 0 | | |
| [event_chance][7] | tinyint(3) | unsigned | | NO | 100 | | |
| [event_flags][8] | smallint(5) | unsigned | | NO | 0 | | |
-| [event_param1][8] | int(10) | unsigned | | NO | 0 | | |
-| [event_param2][8] | int(10) | unsigned | | NO | 0 | | |
-| [event_param3][8] | int(10) | unsigned | | NO | 0 | | |
-| [event_param4][8] | int(10) | unsigned | | NO | 0 | | |
-| [event_param5][8] | int(10) | unsigned | | NO | 0 | | |
+| [event_param1][5] | int(10) | unsigned | | NO | 0 | | |
+| [event_param2][5] | int(10) | unsigned | | NO | 0 | | |
+| [event_param3][5] | int(10) | unsigned | | NO | 0 | | |
+| [event_param4][5] | int(10) | unsigned | | NO | 0 | | |
+| [event_param5][5] | int(10) | unsigned | | NO | 0 | | |
| [action_type][9] | tinyint(3) | unsigned | | NO | 0 | | |
| [action_param1][9] | int(10) | unsigned | | NO | 0 | | |
| [action_param2][9] | int(10) | unsigned | | NO | 0 | | |
@@ -31,11 +33,11 @@
| [target_param2][10] | int(10) | unsigned | | NO | 0 | | |
| [target_param3][10] | int(10) | unsigned | | NO | 0 | | |
| [target_param4][10] | int(10) | unsigned | | NO | 0 | | |
-| [target_x][10] | float | | | NO | 0 | | |
-| [target_y][10] | float | | | NO | 0 | | |
-| [target_z][10] | float | | | NO | 0 | | |
-| [target_o][10] | float | | | NO | 0 | | |
-| [comment][11] | text | | | NO | NULL | | Event Comment |
+| [target_x][10] | float | signed | | NO | 0 | | |
+| [target_y][10] | float | signed | | NO | 0 | | |
+| [target_z][10] | float | signed | | NO | 0 | | |
+| [target_o][10] | float | signed | | NO | 0 | | |
+| [comment][11] | text | | | NO | | | Event Comment |
[1]: #entryorguid
[2]: #source_type
@@ -53,42 +55,33 @@
### 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.
+- EntryOrGuid > 0: `entry` of the creature / game object / etc.
+- EntryOrGuid < 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
+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 |
+| 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, ...).
+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).
+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.
-- Smart\_event to be used.
+**Thanks to the use of links, you can execute several actions, keeping the same event.**
### event\_phase\_mask
@@ -96,15 +89,15 @@ When dealing with phases, *phase IDs* have to be used. There are 13 (12+1) diffe
**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
+- 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
+- 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
+- SMART\_ACTION\_INC\_PHASE by 1 or SMART\_ACTION\_SET\_PHASE 2
| Name | Flag | Hex | Comment |
|----------------------------------|------|-------|-----------------------------|
@@ -122,11 +115,8 @@ If the script is in phase 1 and want to skip to phase 2:
| 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 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
@@ -134,4005 +124,291 @@ This is the probability of the event to occur as a percentage from 0-100. So, if
### 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).
+| Name | Flag | Hex | Comment |
+|---------------------------------|------|-------|------------------------------------------------|
+| SMART_EVENT_FLAG_NOT_REPEATABLE | 1 | 0x01 | Event can not repeat |
+| SMART_EVENT_FLAG_DIFFICULTY_0 | 2 | 0x02 | Event only occurs in normal dungeon |
+| SMART_EVENT_FLAG_DIFFICULTY_1 | 4 | 0x04 | Event only occurs in heroic dungeon |
+| SMART_EVENT_FLAG_DIFFICULTY_2 | 8 | 0x08 | Event only occurs in normal raid |
+| SMART_EVENT_FLAG_DIFFICULTY_3 | 16 | 0x10 | Event only occurs in heroic raid |
+| SMART_EVENT_FLAG_RESERVED_5 | 32 | 0x20 | |
+| SMART_EVENT_FLAG_RESERVED_6 | 64 | 0x40 | |
+| SMART_EVENT_FLAG_DEBUG_ONLY | 128 | 0x80 | Event only occurs in debug build |
+| SMART_EVENT_FLAG_DONT_RESET | 256 | 0x100 | Event will not reset in SmartScript::OnReset() |
+
+- 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>
-<td><p>School</p></td>
-<td><p>RepeatMin</p></td>
-<td><p>RepeatMax</p></td>
-<td><p><br />
-</p></td>
-<td>On Target Spell Hit</td>
-</tr>
-<tr class="odd">
-<td><p>SMART_EVENT_DAMAGED</p></td>
-<td><p>32</p></td>
-<td><p>MinDmg</p></td>
-<td><p>MaxDmg</p></td>
-<td><p>RepeatMin</p></td>
-<td><p>RepeatMax</p></td>
-<td><p><br />
-</p></td>
-<td>On Creature Damaged</td>
-</tr>
-<tr class="even">
-<td><p>SMART_EVENT_DAMAGED_TARGET</p></td>
-<td><p>33</p></td>
-<td><p>MinDmg</p></td>
-<td><p>MaxDmg</p></td>
-<td><p>RepeatMin</p></td>
-<td><p>RepeatMax</p></td>
-<td><p><br />
-</p></td>
-<td>On Target Damaged</td>
-</tr>
-<tr class="odd">
-<td><p>SMART_EVENT_MOVEMENTINFORM</p></td>
-<td><p>34</p></td>
-<td><p>MovementType (0=any)</p></td>
-<td><p>PointID</p></td>
-<td><p><br />
-</p></td>
-<td><p><br />
-</p></td>
-<td><p><br />
-</p></td>
-<td>ESCORT_MOTION_TYPE = 17, POINT_MOTION_TYPE = 8</td>
-</tr>
-<tr class="even">
-<td><p>SMART_EVENT_SUMMON_DESPAWNED</p></td>
-<td><p>35</p></td>
-<td><p>Entry</p></td>
-<td><p>CooldownMin</p></td>
-<td><p>CooldownMax</p></td>
-<td><p><br />
-</p></td>
-<td><p><br />
-</p></td>
-<td>On Summoned Unit Despawned</td>
-</tr>
-<tr class="odd">
-<td><p>SMART_EVENT_CORPSE_REMOVED</p></td>
-<td><p>36</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 Corpse Removed</td>
-</tr>
-<tr class="even">
-<td><p>SMART_EVENT_AI_INIT</p></td>
-<td><p>37</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><p><br />
-</p></td>
-</tr>
-<tr class="odd">
-<td><p>SMART_EVENT_DATA_SET</p></td>
-<td><p>38</p></td>
-<td><p>Field</p></td>
-<td><p>Value</p></td>
-<td><p>CooldownMin</p></td>
-<td><p>CooldownMax</p></td>
-<td><p><br />
-</p></td>
-<td>On Creature/Gameobject Data Set, Can be used with SMART_ACTION_SET_DATA</td>
-</tr>
-<tr class="even">
-<td><p>SMART_EVENT_WAYPOINT_START</p></td>
-<td><p>39</p></td>
-<td><p>PointId (0 any)</p></td>
-<td><p>pathId (0 any)</p></td>
-<td><p><br />
-</p></td>
-<td><p><br />
-</p></td>
-<td><p><br />
-</p></td>
-<td>On Creature Waypoint ID Started</td>
-</tr>
-<tr class="odd">
-<td><p>SMART_EVENT_WAYPOINT_REACHED</p></td>
-<td><p>40</p></td>
-<td><p>PointId (0 any)</p></td>
-<td><p>pathId (0 any)</p></td>
-<td><p><br />
-</p></td>
-<td><p><br />
-</p></td>
-<td><p><br />
-</p></td>
-<td>On Creature Waypoint ID Reached</td>
-</tr>
-<tr class="even">
-<td><p>SMART_EVENT_AREATRIGGER_ONTRIGGER</p></td>
-<td><p>46</p></td>
-<td><p>TriggerId (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><p><br />
-</p></td>
-</tr>
-<tr class="odd">
-<td><p>SMART_EVENT_TEXT_OVER</p></td>
-<td><p>52</p></td>
-<td><p><a href="creature_text#groupid">creature_text.GroupID</a></p></td>
-<td><p><a href="creature#id">creature.id</a> (0 any)</p></td>
-<td><p><br />
-</p></td>
-<td><p><br />
-</p></td>
-<td><p><br />
-</p></td>
-<td>On TEXT_OVER Event Triggered After SMART_ACTION_TALK</td>
-</tr>
-<tr class="even">
-<td><p>SMART_EVENT_RECEIVE_HEAL</p></td>
-<td><p>53</p></td>
-<td><p>MinHeal</p></td>
-<td><p>MaxHeal</p></td>
-<td><p>CooldownMin</p></td>
-<td><p>CooldownMax</p></td>
-<td><p><br />
-</p></td>
-<td>On Creature Received Healing</td>
-</tr>
-<tr class="odd">
-<td><p>SMART_EVENT_JUST_SUMMONED</p></td>
-<td><p>54</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 Just spawned</td>
-</tr>
-<tr class="even">
-<td><p>SMART_EVENT_WAYPOINT_PAUSED</p></td>
-<td><p>55</p></td>
-<td><p>PointId (0 any)</p></td>
-<td><p>pathID (0 any)</p></td>
-<td><p><br />
-</p></td>
-<td><p><br />
-</p></td>
-<td><p><br />
-</p></td>
-<td>On Creature Paused at Waypoint ID</td>
-</tr>
-<tr class="odd">
-<td><p>SMART_EVENT_WAYPOINT_RESUMED</p></td>
-<td><p>56</p></td>
-<td><p>PointId (0 any)</p></td>
-<td><p>pathID (0 any)</p></td>
-<td><p><br />
-</p></td>
-<td><p><br />
-</p></td>
-<td><p><br />
-</p></td>
-<td>On Creature Resumed after Waypoint ID</td>
-</tr>
-<tr class="even">
-<td><p>SMART_EVENT_WAYPOINT_STOPPED</p></td>
-<td><p>57</p></td>
-<td><p>PointId (0 any)</p></td>
-<td><p>pathID (0 any)</p></td>
-<td><p><br />
-</p></td>
-<td><p><br />
-</p></td>
-<td><p><br />
-</p></td>
-<td>On Creature Stopped On Waypoint ID</td>
-</tr>
-<tr class="odd">
-<td><p>SMART_EVENT_WAYPOINT_ENDED</p></td>
-<td><p>58</p></td>
-<td><p>PointId (0 any)</p></td>
-<td><p>pathID (0 any)</p></td>
-<td><p><br />
-</p></td>
-<td><p><br />
-</p></td>
-<td><p><br />
-</p></td>
-<td>On Creature Waypoint Path Ended</td>
-</tr>
-<tr class="even">
-<td><p>SMART_EVENT_TIMED_EVENT_TRIGGERED</p></td>
-<td><p>59</p></td>
-<td><p>Id</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>
-</tr>
-<tr class="odd">
-<td><p>SMART_EVENT_UPDATE</p></td>
-<td><p>60</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><br />
-</p></td>
-</tr>
-<tr class="even">
-<td><p>SMART_EVENT_LINK</p></td>
-<td><p>61</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>Used to link together multiple events as a chain of events.</td>
-</tr>
-<tr class="odd">
-<td><p>SMART_EVENT_GOSSIP_SELECT</p></td>
-<td><p>62</p></td>
-<td><p><a href="gossip_menu_option#menuid">gossip_me