Panel |
---|
Table Structure |
...
Field
...
Type
...
Attributes
...
Key
...
Null
...
Default
...
Extra
...
Comment
...
...
bigint(20)
...
signed
...
PRI
...
NO
...
0
...
...
tinyint(3)
...
unsigned
...
PRI
...
NO
...
0
Info |
---|
Manual editing |
Panel |
---|
Table Structure |
Field | Type | Attributes | Key | Null | Default | Extra | Comment |
bigint(20) | signed | PRI | NO | 0 | |||
tinyint(3) | unsigned | PRI | NO | 0 | |||
smallint(5) | unsigned | PRI | NO | 0 | |||
smallint(5) | unsigned | PRI | NO | 0 | |||
tinyint(3) | unsigned | NO | 0 | ||||
tinyint(3) | unsigned | NO | 0 | ||||
tinyint(3) | unsigned | NO | 100 | ||||
tinyint(3) | unsigned | NO | 0 | ||||
int(10) | unsigned | NO | 0 | ||||
int(10) | unsigned | NO | 0 | ||||
int(10) | unsigned | NO | 0 | ||||
int(10) | unsigned | NO | 0 | ||||
event_param5 | int(10) | unsigned | NO | 0 | |||
tinyint(3) | unsigned | NO | 0 | ||||
int(10) | unsigned | NO | 0 | ||||
int(10) | unsigned | NO | 0 | ||||
int(10) | unsigned | NO | 0 | ||||
int(10) | unsigned | NO | 0 | ||||
int(10) | unsigned | NO | 0 | ||||
int(10) | unsigned | NO | 0 | ||||
tinyint(3) | unsigned | NO | 0 | ||||
int(10) | unsigned | NO | 0 | ||||
int(10) | unsigned | NO | 0 | ||||
int(10) | unsigned | NO | NO | ||||
target_param4 | int(10) | unsigned | NO | NO | |||
float | signed | NO | 0 | ||||
float | signed | NO | 0 | ||||
float | signed | NO | 0 | ||||
float | signed | NO | 0 | ||||
text | signed | NO | Event Comment |
...
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_EVENT
3
SMART_SCRIPT_TYPE_GOSSIP
4
SMART_SCRIPT_TYPE_QUEST
5
SMART_SCRIPT_TYPE_SPELL
6
SMART_SCRIPT_TYPE_TRANSPORT
7
SMART_SCRIPT_TYPE_INSTANCE
8
SMART_SCRIPT_TYPE_TIMED_ACTIONLIST
9
SMART_SCRIPT_TYPE_SCENE 10 SMART_SCRIPT_TYPE_AREATRIGGER_ENTITY 11 SMART_SCRIPT_TYPE_AREATRIGGER_ENTITY_SERVERSIDE 12
id
- Incremental id bound to each entryorguid & source_type (0, 1, 2, ...).
...
Name | Value | Param1 | Param2 | Param3 | Param4 | Param5 | Comment |
---|---|---|---|---|---|---|---|
SMART_EVENT_UPDATE_IC | 0 | InitialMin | InitialMax | RepeatMin | RepeatMax | In combat. | |
SMART_EVENT_UPDATE_OOC | 1 | InitialMin | InitialMax | RepeatMin | RepeatMax | Out of combat. | |
SMART_EVENT_HEALTH_PCT | 2 | HPMin% | HPMax% | RepeatMin | RepeatMax | Health Percentage | |
SMART_EVENT_MANA_PCT | 3 | ManaMin% | ManaMax% | RepeatMin | RepeatMax | Mana Percentage | |
SMART_EVENT_AGGRO | 4 | On Creature Aggro | |||||
SMART_EVENT_KILL | 5 | CooldownMin | CooldownMax | Player only (0/1) | Creature entry (if param3 is 0) | On Creature Kill | |
SMART_EVENT_DEATH | 6 | On Creature Death | |||||
SMART_EVENT_EVADE | 7 | On Creature Evade Attack | |||||
SMART_EVENT_SPELLHIT | 8 | SpellID | School | CooldownMin | CooldownMax | On Creature/Gameobject Spell Hit | |
SMART_EVENT_RANGE | 9 | MinDist | MaxDist | RepeatMin | RepeatMax | On Target In Range | |
SMART_EVENT_OOC_LOS | 10 | NoHostile | MaxRange | CooldownMin | CooldownMax | 0/1 Player Only | On Target In Distance Out of Combat |
SMART_EVENT_RESPAWN | 11 | type (None= 0, Map = 1, Area = 2) | MapId | ZoneId | On Creature/Gameobject Respawn | ||
SMART_EVENT_TARGET_HEALTH_PCT (unused on 3.3.5) | 12 | HPMin% | HPMax% | RepeatMin | RepeatMax | On Target Health Percentage | |
SMART_EVENT_VICTIM_CASTING | 13 | RepeatMin | RepeatMax | Spell id (0 any) | On Target Casting Spell | ||
SMART_EVENT_FRIENDLY_HEALTHHEALTH (unused on 3.3.5) | 14 | HPDeficit | Radius | RepeatMin | RepeatMax | On Friendly Health Deficit | |
SMART_EVENT_FRIENDLY_IS_CC | 15 | Radius | RepeatMin | RepeatMax | |||
SMART_EVENT_FRIENDLY_MISSING_BUFF | 16 | SpellId | Radius | RepeatMin | RepeatMax | On Friendly Lost Buff | |
SMART_EVENT_SUMMONED_UNIT | 17 | CretureId (0 all) | CooldownMin | CooldownMax | On Creature/Gameobject Summoned Unit | ||
SMART_EVENT_TARGET_MANA_PCTPCT (unused on 3.3.5) | 18 | ManaMin% | ManaMax% | RepeatMin | RepeatMax | On Target Mana Percentage | |
SMART_EVENT_ACCEPTED_QUEST | 19 | QuestID (0 any) | RepeatMin | RepeatMax | On Target Accepted Quest | ||
SMART_EVENT_REWARD_QUEST | 20 | QuestID (0 any) | RepeatMin | RepeatMax | On Target Rewarded Quest | ||
SMART_EVENT_REACHED_HOME | 21 | On Creature Reached Home | |||||
SMART_EVENT_RECEIVE_EMOTE | 22 | CooldownMin | CooldownMax | On Receive Emote. | |||
SMART_EVENT_HAS_AURA | 23 | SpellID | Stacks | RepeatMin | RepeatMax | On Creature Has Aura | |
SMART_EVENT_TARGET_BUFFED | 24 | SpellID | Stacks | RepeatMin | RepeatMax | On Target Buffed With Spell | |
SMART_EVENT_RESET | 25 | After Combat, On Respawn or Spawn | |||||
SMART_EVENT_IC_LOS | 26 | NoHostile | MaxRange | CooldownMin | CooldownMax | 0/1 Player Only | On Target In Distance In Combat |
SMART_EVENT_PASSENGER_BOARDED | 27 | CooldownMin | CooldownMax | ||||
SMART_EVENT_PASSENGER_REMOVED | 28 | CooldownMin | CooldownMax | ||||
SMART_EVENT_CHARMED | 29 | 0 (on charm apply) / 1 (on charm remove) | On Creature Charmed | ||||
SMART_EVENT_CHARMED_TARGET | 30 | On Target Charmed | |||||
SMART_EVENT_SPELLHIT_TARGET | 31 | SpellId | School | RepeatMin | RepeatMax | On Target Spell Hit | |
SMART_EVENT_DAMAGED | 32 | MinDmg | MaxDmg | RepeatMin | RepeatMax | On Creature Damaged | |
SMART_EVENT_DAMAGED_TARGET | 33 | MinDmg | MaxDmg | RepeatMin | RepeatMax | On Target Damaged | |
SMART_EVENT_MOVEMENTINFORM | 34 | MovementType (0=any) | PointID | MovementType | |||
SMART_EVENT_SUMMON_DESPAWNED | 35 | Entry | CooldownMin | CooldownMax | On Summoned Unit Despawned | ||
SMART_EVENT_CORPSE_REMOVED | 36 | On Creature Corpse Removed | |||||
SMART_EVENT_AI_INIT | 37 | ||||||
SMART_EVENT_DATA_SET | 38 | Field | Value | CooldownMin | CooldownMax | On Creature/Gameobject Data Set, Can be used with SMART_ACTION_SET_DATA | |
SMART_EVENT_WAYPOINT_START | 39 | PointId (0 any) | pathId (0 any) | On Creature Waypoint ID Started | |||
SMART_EVENT_WAYPOINT_REACHED | 40 | PointId (0 any) | pathId (0 any) | On Creature Waypoint ID Reached | |||
SMART_EVENT_TRANSPORT_ADDPLAYER | 41 | ||||||
SMART_EVENT_TRANSPORT_ADDCREATURE | 42 | Entry (0 any) | |||||
SMART_EVENT_TRANSPORT_REMOVE_PLAYER | 43 | ||||||
SMART_EVENT_TRANSPORT_RELOCATE | 44 | PointId | |||||
SMART_EVENT_INSTANCE_PLAYER_ENTER | 45 | Team (0 any) | CooldownMin | CooldownMax | |||
SMART_EVENT_AREATRIGGER_ONTRIGGER | 46 | TriggerId (0 any) | |||||
SMART_EVENT_QUEST_ACCEPTED | 47 | On Target Quest Accepted | |||||
SMART_EVENT_QUEST_OBJ_COMPLETION | 48 | On Target Quest Objective Completed | |||||
SMART_EVENT_QUEST_COMPLETION | 49 | On Target Quest Completed | |||||
SMART_EVENT_QUEST_REWARDED | 50 | On Target Quest Rewarded | |||||
SMART_EVENT_QUEST_FAIL | 51 | On Target Quest Field | |||||
SMART_EVENT_TEXT_OVER | 52 | GroupId (from creature_text) | Creature.Id (0 any) | On TEXT_OVER Event Triggered After SMART_ACTION_TALK | |||
SMART_EVENT_RECEIVE_HEAL | 53 | MinHeal | MaxHeal | CooldownMin | CooldownMax | On Creature Received Healing | |
SMART_EVENT_JUST_SUMMONED | 54 | On Creature Just spawned | |||||
SMART_EVENT_WAYPOINT_PAUSED | 55 | PointId (0 any) | pathID (0 any) | On Creature Paused at Waypoint ID | |||
SMART_EVENT_WAYPOINT_RESUMED | 56 | PointId (0 any) | pathID (0 any) | On Creature Resumed after Waypoint ID | |||
SMART_EVENT_WAYPOINT_STOPPED | 57 | PointId (0 any) | pathID (0 any) | On Creature Stopped On Waypoint ID | |||
SMART_EVENT_WAYPOINT_ENDED | 58 | PointId (0 any) | pathID (0 any) | On Creature Waypoint Path Ended | |||
SMART_EVENT_TIMED_EVENT_TRIGGERED | 59 | Id | |||||
SMART_EVENT_UPDATE | 60 | InitialMin | InitialMax | RepeatMin | RepeatMax | ||
SMART_EVENT_LINK | 61 | Used to link together multiple events as a chain of events. | |||||
SMART_EVENT_GOSSIP_SELECT | 62 | On gossip clicked (gossip_menu_option335). | |||||
SMART_EVENT_JUST_CREATED | 63 | ||||||
SMART_EVENT_GOSSIP_HELLO | 64 | 0/1/2 (For gameobject only) 0 = on gossip hello and on report use This might result in the action being executed twice when clicking the GameObject, 1 = on gossip hello only, 2 = on report use only | On Right-Click Creature/Gameobject that have gossip enabled. | ||||
SMART_EVENT_FOLLOW_COMPLETED | 65 | ||||||
SMART_EVENT_EVENT_PHASE_CHANGE | 66 | event phase mask | On event phase mask set | ||||
SMART_EVENT_IS_BEHIND_TARGET_BEHIND_TARGET (unused on 3.3.5) | 67 | CooldownMin | CooldownMax | On Creature is behind target. | |||
SMART_EVENT_GAME_EVENT_START | 68 | On game_event started. | |||||
SMART_EVENT_GAME_EVENT_END | 69 | On game_event ended. | |||||
SMART_EVENT_GO_LOOT_STATE_CHANGED | 70 | State (0 - Not Ready, 1 - Ready, 2 - Activacted, 3 - Just deactivated) | |||||
SMART_EVENT_GO_EVENT_INFORM | 71 | EventId | |||||
SMART_EVENT_ACTION_DONE | 72 | EventId | |||||
SMART_EVENT_ON_SPELLCLICK | 73 | ||||||
SMART_EVENT_FRIENDLY_HEALTH_PCT | 74 | minHpPct | maxHpPct | repeatMin | repeatMax | ||
SMART_EVENT_DISTANCE_CREATURE | 75 | database guid | database entry | distance | repeat interval (ms) | On creature guid OR any instance of creature entry is within distance. | |
SMART_EVENT_DISTANCE_GAMEOBJECT | 76 | database guid | database entry | distance | repeat interval (ms) | On gameobject guid OR any instance of gameobject entry is within distance. | |
SMART_EVENT_COUNTER_SET | 77 | counterID | value | cooldownMin | cooldownMax | If the value of specified counterID is equal to a specified value | |
SMART_EVENT_SCENE_START | 78 | none | Master only | ||||
SMART_EVENT_SCENE_TRIGGER | 79 | param_string : triggerName | Master only | ||||
SMART_EVENT_SCENE_CANCEL | 80 | none | Master only | ||||
SMART_EVENT_SCENE_COMPLETE | 81 | none | Master only | ||||
SMART_EVENT_SUMMONED_UNIT_DIES | 82 | none |
action_type
Name | Value | Param1 | Param2 | Param3 | Param4 | Param5 | Param6 | Comment | Branch Limitation |
---|---|---|---|---|---|---|---|---|---|
Name | Value | Param1 | Param2 | Param3 | Param4 | Param5 | Param6 | Comment | Branch Limitation |
---|---|---|---|---|---|---|---|---|---|
SMART_ACTION_NONE | 0 | Do nothing | |||||||
SMART_ACTION_TALK | 1 | Duration to wait before SMART_EVENT_TEXT_OVER is triggered. | 0 It will try to trigger talk of the target 1 Set target as talk target (used for $vars in texts and whisper target) | Param2 in Milliseconds. | |||||
SMART_ACTION_SET_FACTION | 2 | FactionID (or 0 for default) | Sets faction to creature. | ||||||
SMART_ACTION_MORPH_TO_ENTRY_OR_MODEL | 3 | Creature_template.entry(param1) | Creature_template.modelID(param2) | Take DisplayID of creature (param1) OR Turn to DisplayID (param2) OR Both = 0 for Demorph | |||||
SMART_ACTION_SOUND | 4 | SoundId | onlySelf (0/1) | Distant Sound (0/1) | Play Sound; TextRange = 0 only sends sound to self, TextRange = 1 sends sound to everyone in visibility range | ||||
SMART_ACTION_PLAY_EMOTE | 5 | Play Emote | |||||||
SMART_ACTION_FAIL_QUEST | 6 | Fail Quest of Target | |||||||
SMART_ACTION_OFFER_QUEST | 7 | directAdd (0/1) | Add Quest to Target | ||||||
SMART_ACTION_SET_REACT_STATE | 8 | React State. Can be Passive (0), Defensive (1), Aggressive (2), Assist (3). | |||||||
SMART_ACTION_ACTIVATE_GOBJECT | 9 | Activate Object | |||||||
SMART_ACTION_RANDOM_EMOTE | 10 | Emote4 | Emote5 | Emote6 | Play Random Emote | ||||
SMART_ACTION_CAST | 11 | SpellId | triggeredFlags | Cast Spell ID at Target | |||||
SMART_ACTION_SUMMON_CREATURE | 12 | duration in ms | attackInvoker | SmartActionSummonCreatureFlags: PreferUnit = 2 | Summon Unit | ||||
SMART_ACTION_THREAT_SINGLE_PCT | 13 | Threat% inc | Threat% dec | Change Threat Percentage for Single Target | |||||
SMART_ACTION_THREAT_ALL_PCT | 14 | Threat% inc | Threat% dec | Change Threat Percentage for All Enemies | |||||
SMART_ACTION_CALL_AREAEXPLOREDOREVENTHAPPENS | 15 | ||||||||
SMART_ACTION_SET_INGAME_PHASE_ID | 16 | phaseId | apply/remove (1/0) | For 4.3.4 + only | |||||
SMART_ACTION_SET_EMOTE_STATE | 17 | Play Emote Continuously | |||||||
SMART_ACTION_SET_UNIT_ |
FLAG (unused on 3.3.5) | 18 | (may be more than one field OR'd together) | type If false set creature_template.unit_flags If true set creature_template.unit_flags2 | Can set Multi-able flags at once | |||||
SMART_ACTION_REMOVE_UNIT_ |
FLAG (unused on 3.3.5) | 19 | (may be more than one field OR'd together) | type If false set creature_template.unit_flags If true set creature_template.unit_flags2 | Can Remove Multi-able flags at once | |||||
SMART_ACTION_AUTO_ATTACK | 20 | AllowAttackState (0 = Stop attack, anything else means continue attacking) | Stop or Continue Automatic Attack. | ||||||
SMART_ACTION_ALLOW_COMBAT_MOVEMENT | 21 | AllowCombatMovement (0 = Stop combat based movement, anything else continue attacking) | Allow or Disable Combat Movement | ||||||
SMART_ACTION_SET_EVENT_PHASE | 22 | ||||||||
SMART_ACTION_INC_EVENT_PHASE | 23 | Increment | Decrement | Set param1 OR param2 (not both). Value 0 has no effect. | |||||
SMART_ACTION_EVADE | 24 | 0/1 Set 0 if you want the NPC to move to the RespawnPosition; use 1 if you want the NPC to move to the last HomePosition. | Evade Incoming Attack | ||||||
SMART_ACTION_FLEE_FOR_ASSIST | 25 | 0/1 (If you want the fleeing NPC to say attempts to flee text on flee, use 1 on param1. For no message use 0.) | If you want the fleeing NPC to say '%s attempts to run away in fear' on flee, use 1 on param1. 0 for no message. | ||||||
SMART_ACTION_CALL_GROUPEVENTHAPPENS | 26 | ||||||||
SMART_ACTION_COMBAT_STOP | 27 | ||||||||
SMART_ACTION_REMOVEAURASFROMSPELL | 28 | Spellid | 0/1 onlyOwnedAuras | 0 removes all auras | |||||
SMART_ACTION_FOLLOW | 29 | Distance (0 = Default value) | Angle (0 = Default value) | credit | creditType (0monsterkill, 1event) | Follow Target | |||
SMART_ACTION_RANDOM_PHASE | 30 | ||||||||
SMART_ACTION_RANDOM_PHASE_RANGE | 31 | smart_scripts.event_phase_mask minimum | smart_scripts.event_phase_mask maximum | ||||||
SMART_ACTION_RESET_GOBJECT | 32 | Reset Gameobject | |||||||
SMART_ACTION_CALL_KILLEDMONSTER | 33 | This is the ID from quest_template.RequiredNpcOrGo | |||||||
SMART_ACTION_SET_INST_DATA | 34 | Field | Data | Type (0 = SetData, 1 = SetBossState) | Set Instance Data | ||||
SMART_ACTION_SET_INST_DATA64 | 35 | Field | Set Instance Data uint64 | ||||||
SMART_ACTION_UPDATE_TEMPLATE | 36 | Update Level | Updates creature_template to given entry | ||||||
SMART_ACTION_DIE | 37 | Kill Target | |||||||
SMART_ACTION_SET_IN_COMBAT_WITH_ZONE | 38 | ||||||||
SMART_ACTION_CALL_FOR_HELP | 39 | Radius in yards that other creatures must be to acknowledge the cry for help. | 0/1 (say calls for help text) | If you want the NPC to say '%s calls for help!'. Use 1 on param1, 0 for no message. | |||||
SMART_ACTION_SET_SHEATH | 40 | Sheath (0-unarmed, 1-melee, 2-ranged) | |||||||
SMART_ACTION_FORCE_DESPAWN | 41 | Despawn timer "ms" | Respawn timer "sec" | Despawn Target after param1 in Milliseconds. If you want to set respawn time set param2 in seconds. | |||||
SMART_ACTION_SET_INVINCIBILITY_HP_LEVEL | 42 | flat hp value | percent hp value | If you use both params, only percent will be used. | |||||
SMART_ACTION_MOUNT_TO_ENTRY_OR_MODEL | 43 | Mount to Creature Entry (param1) OR Mount to Creature Display (param2) Or both = 0 for Unmount | |||||||
SMART_ACTION_SET_INGAME_PHASE_MASK (for 3.3.5) SMART_ACTION_SET_INGAME_PHASE_GROUP (for 4.3.4 +) | 44 | creature.phasemask (3.3.5) creature.phasegroup (4.3.4 +) | 0 = remove / 1 = add (4.3.4+ only) | ||||||
SMART_ACTION_SET_DATA | 45 | Field | Data | Set Data For Target, can be used with SMART_EVENT_DATA_SET | |||||
SMART_ACTION_ATTACK_STOP | 46 | Stop melee, spell casting during combat, chasing the target and facing | |||||||
SMART_ACTION_SET_VISIBILITY | 47 | 0/1 | Makes creature Visible = 1 or Invisible = 0 | ||||||
SMART_ACTION_SET_ACTIVE | 48 | 0/1 | |||||||
SMART_ACTION_ATTACK_START | 49 | Allows basic melee swings to creature. | |||||||
SMART_ACTION_SUMMON_GO | 50 | De-spawn time in seconds. If 0 and Param2=0 the gob will despawns only with the summoner | 0 - For despawn when the summoner despawn or time runs out 1 - For despawn when time runs out | Spawns Gameobject, use target_type to set spawn position. | |||||
SMART_ACTION_KILL_UNIT | 51 | Kills Creature. | |||||||
SMART_ACTION_ACTIVATE_TAXI | 52 | TaxiID | Sends player to flight path. You have to be close to Flight Master, which gives Taxi ID you need. | ||||||
SMART_ACTION_WP_START | 53 | 0 = walk / 1 = run | canRepeat | despawntime | reactState | Creature starts Waypoint Movement. Use waypoints table to create movement. | |||
SMART_ACTION_WP_PAUSE | 54 | time (in ms) | Creature pauses its Waypoint Movement for given time. | ||||||
SMART_ACTION_WP_STOP | 55 | despawnTime | fail (0/1) | Creature stops its Waypoint Movement. | |||||
SMART_ACTION_ADD_ITEM | 56 | count | Adds item(s) to player. | ||||||
SMART_ACTION_REMOVE_ITEM | 57 | count | Removes item(s) from player. | ||||||
SMART_ACTION |
_INSTALL_AI_TEMPLATE (unused on 3.3.5) | 58 | TemplateID (see Predefined SAI templates below) | |||||||
SMART_ACTION_SET_RUN | 59 | 0 = Off / 1 = On | |||||||
SMART_ACTION_SET_DISABLE_GRAVITY | 60 | 0 = gravity On / 1 = gravity Off | Only works for creatures with inhabit air. | ||||||
SMART_ACTION_SET_SWIM | 61 | 0 = Off / 1 = On | |||||||
SMART_ACTION_TELEPORT | 62 | Continue this action with the TARGET_TYPE column. Use any target_type (except 0), and use target_x, target_y, target_z, target_o as the coordinates | |||||||
SMART_ACTION_SET_COUNTER | 63 | counterID | value | reset (0/1) | |||||
SMART_ACTION_STORE_TARGET_LIST | 64 | varID | |||||||
SMART_ACTION_WP_RESUME | 65 | Creature continues in its Waypoint Movement. | |||||||
SMART_ACTION_SET_ORIENTATION | 66 | Depends on the script target. | |||||||
SMART_ACTION_CREATE_TIMED_EVENT | 67 | id | InitialMin | InitialMax | RepeatMin(only if it repeats) | RepeatMax(only if it repeats) | chance | ||
SMART_ACTION_PLAYMOVIE | 68 | entry | |||||||
SMART_ACTION_MOVE_TO_POS | 69 | PointId | isTransport (0 or 1) | disablePathfinding (0 or 1) | ContactDistance | PointId is called by SMART_EVENT_MOVEMENTINFORM. Continue this action with the TARGET_TYPE column. Use any target_type, and use target_x, target_y, target_z, target_o as the coordinates | |||
SMART_ACTION_ENABLE_TEMP_GOBJ | 70 | Respawntime in seconds (The time which the gob remains spawned) | Always action_param1>0 For npcs use action_type=133 | ||||||
SMART_ACTION_EQUIP | 71 | Slotmask | Slot1 (item_template.entry) | Slot2 (item_template.entry) | Slot3 (item_template.entry) | only slots with mask set will be sent to client, bits are 1, 2, 4, leaving mask 0 is defaulted to mask 7 (send all), Slots1-3 are only used if no Param1 is set | |||
SMART_ACTION_CLOSE_GOSSIP | 72 | Closes gossip window. | |||||||
SMART_ACTION_TRIGGER_TIMED_EVENT | 73 | id(>1) | |||||||
SMART_ACTION_REMOVE_TIMED_EVENT | 74 | id(>1) | |||||||
SMART_ACTION_ADD_AURA | 75 | SpellId | Adds aura to player(s). Use target_type 17 to make AoE aura. | ||||||
SMART_ACTION_OVERRIDE_SCRIPT_BASE_OBJECT | 76 | WARNING: CAN CRASH CORE, do not use if you dont know what you are doing | |||||||
SMART_ACTION_RESET_SCRIPT_BASE_OBJECT | 77 | ||||||||
SMART_ACTION_CALL_SCRIPT_RESET | 78 | ||||||||
SMART_ACTION_SET_RANGED_MOVEMENT | 79 | attackDistance | attackAngle | Sets movement to follow at a specific range to the target. | |||||
SMART_ACTION_CALL_TIMED_ACTIONLIST | 80 | EntryOrGuid * 100 (smart_scripts.entryorguid with 00 added after the entry, or 01, 02, 03 etc. for multiple action lists) | timer update type(0 OOC, 1 IC, 2 ALWAYS) | Can override in going action list 0/1 This will to stop an action list and start an other | |||||
SMART_ACTION_SET_NPC_FLAG | 81 | ||||||||
SMART_ACTION_ADD_NPC_FLAG | 82 | ||||||||
SMART_ACTION_REMOVE_NPC_FLAG | 83 | ||||||||
SMART_ACTION_SIMPLE_TALK | 84 | Makes a player say text. SMART_EVENT_TEXT_OVER is not triggered and whispers can not be used. | |||||||
SMART_ACTION_SELF_CAST | 85 | SpellID | triggeredFlags | The target will cast the spell on it self | |||||
SMART_ACTION_CROSS_CAST | 86 | SpellID |
CasterTargetType (caster is selected here, use it as target_type)
CasterTarget (target_param1)
CasterTarget (target_param2)
CasterTarget (target_param3)
CasterTargetType (caster is selected here, use it as target_type) | CasterTarget (target_param1) | CasterTarget (target_param2) | CasterTarget (target_param3) | This action is used to make selected caster (in CasterTargetType) to cast spell. Actual target is entered in target_type as normally. | |||||
SMART_ACTION_CALL_RANDOM_TIMED_ACTIONLIST | 87 | EntryOrGuid 1 (smart_scripts.entryorguid * 100 + n) | EntryOrGuid 2 (smart_scripts.entryorguid * 100 + n) | EntryOrGuid 3 (smart_scripts.entryorguid * 100 + n) | EntryOrGuid 4 (smart_scripts.entryorguid * 100 + n) | EntryOrGuid 5 (smart_scripts.entryorguid * 100 + n) | EntryOrGuid 6 (smart_scripts.entryorguid * 100 + n) | Will select one entry from the ones provided. 0 is ignored. | |
SMART_ACTION_CALL_RANDOM_RANGE_TIMED_ACTIONLIST |
88 | EntryOrGuid 1 (smart_scripts.entryorguid * 100 + n) | EntryOrGuid 2 (smart_scripts.entryorguid * 100 + n) |
EntryOrGuid 3 (smart_scripts.entryorguid * 100 + n)
EntryOrGuid 4 (smart_scripts.entryorguid * 100 + n)
EntryOrGuid 5 (smart_scripts.entryorguid * 100 + n)
EntryOrGuid 6 (smart_scripts.entryorguid * 100 + n)
Will select one entry from the ones provided. 0 is ignored.
SMART_ACTION_CALL_RANDOM_RANGE_TIMED_ACTIONLIST
88
EntryOrGuid 1 (smart_scripts.entryorguid * 100 + n)
EntryOrGuid 2 (smart_scripts.entryorguid * 100 + n)
0 is ignored.
SMART_ACTION_RANDOM_MOVE
89
Radius
Creature moves to random position in given radius.
SMART_ACTION_SET_UNIT_FIELD_BYTES_1
90
Value
Type
SMART_ACTION_REMOVE_UNIT_FIELD_BYTES_1
91
Value
Type
SMART_ACTION_INTERRUPT_SPELL
92
With delay (0/1)
SpellId
Instant (0/1)
This action allows you to interrupt the current spell being cast. If you do not set the spellId, the core will find the current spell depending on the withDelay and the withInstant values.
SMART_ACTION_SEND_GO_CUSTOM_ANIM
93
animprogress (0-255)
SMART_ACTION_SET_DYNAMIC_FLAG
94
SMART_ACTION_ADD_DYNAMIC_FLAG
95
SMART_ACTION_REMOVE_DYNAMIC_FLAG
96
SMART_ACTION_JUMP_TO_POS
97
Speed XY
Speed Z
SMART_ACTION_SEND_GOSSIP_MENU
98
gossip_menu.text_id
(same value as npc_text.ID)
Can be used together with 'SMART_EVENT_GOSSIP_HELLO' to set custom gossip.
SMART_ACTION_GO_SET_LOOT_STATE
99
LootState (0 - Not ready, 1 - Ready, 2 - Activated, 3 - Just deactivated)
SMART_ACTION_SEND_TARGET_TO_TARGET
100
Id
Send targets previously stored with SMART_ACTION_STORE_TARGET, to another npc/go, the other npc/go can then access them as if it was its own stored list
SMART_ACTION_SET_HOME_POS
101
Use with SMART_TARGET_SELF or SMART_TARGET_POSITION
SMART_ACTION_SET_HEALTH_REGEN
102
0/1
Sets the current creatures health regen on or off.
wp5
Use target_x, target_y, target_z
With target_type=1
Forced
(depends on the movement generator. some will stop automatically, other will let the current spline finish first)
default --> waypoint, random etc
active --> point movement
controlled --> mindcontrol etc
type:
1- PlayOneShotAnimKitId
2- SetAIAnimKitId
3- SetMeleeAnimKitId
4- SetMovementAnimKitId
SpellID
0 is ignored. | |||||||||
SMART_ACTION_RANDOM_MOVE | 89 | Radius | Creature moves to random position in given radius. | ||||||
SMART_ACTION_SET_UNIT_FIELD_BYTES_1 | 90 | Value | Type | ||||||
SMART_ACTION_REMOVE_UNIT_FIELD_BYTES_1 | 91 | Value | Type | ||||||
SMART_ACTION_INTERRUPT_SPELL | 92 | With delay (0/1) | SpellId | Instant (0/1) | This action allows you to interrupt the current spell being cast. If you do not set the spellId, the core will find the current spell depending on the withDelay and the withInstant values. | ||||
SMART_ACTION_SEND_GO_CUSTOM_ANIM | 93 | animprogress (0-255) | |||||||
SMART_ACTION_SET_DYNAMIC_FLAG (unused on 3.3.5) | 94 | ||||||||
SMART_ACTION_ADD_DYNAMIC_FLAG (unused on 3.3.5) | 95 | ||||||||
SMART_ACTION_REMOVE_DYNAMIC_FLAG (unused on 3.3.5) | 96 | ||||||||
SMART_ACTION_JUMP_TO_POS | 97 | Speed XY | Speed Z | ||||||
SMART_ACTION_SEND_GOSSIP_MENU | 98 | gossip_menu.text_id | Can be used together with 'SMART_EVENT_GOSSIP_HELLO' to set custom gossip. | ||||||
SMART_ACTION_GO_SET_LOOT_STATE | 99 | LootState (0 - Not ready, 1 - Ready, 2 - Activated, 3 - Just deactivated) | |||||||
SMART_ACTION_SEND_TARGET_TO_TARGET | 100 | Id | Send targets previously stored with SMART_ACTION_STORE_TARGET, to another npc/go, the other npc/go can then access them as if it was its own stored list | ||||||
SMART_ACTION_SET_HOME_POS | 101 | Use with SMART_TARGET_SELF or SMART_TARGET_POSITION | |||||||
SMART_ACTION_SET_HEALTH_REGEN | 102 | 0/1 | Sets the current creatures health regen on or off. | ||||||
SMART_ACTION_SET_ROOT | 103 | 0/1 | Enables or disables creature movement | ||||||
SMART_ACTION_SET_GO_FLAG | 104 | gameobject_template_addon.flags | oldFlag = newFlag | ||||||
SMART_ACTION_ADD_GO_FLAG | 105 | gameobject_template_addon.flags | oldFlag |= newFlag | ||||||
SMART_ACTION_REMOVE_GO_FLAG | 106 | gameobject_template_addon.flags | oldFlag &= ~newFlag | ||||||
SMART_ACTION_SUMMON_CREATURE_GROUP | 107 | creature_summon_groups.groupId | Attack invoker (0/1) | Use creature_summon_groups table. SAI target has no effect, use 0 | |||||
SMART_ACTION_SET_POWER | 108 | Power type | New power | ||||||
SMART_ACTION_ADD_POWER | 109 | Power type | Power to add | ||||||
SMART_ACTION_REMOVE_POWER | 110 | Power type | Power to remove | ||||||
SMART_ACTION_GAME_EVENT_STOP | 111 | GameEventId | |||||||
SMART_ACTION_GAME_EVENT_START | 112 | GameEventId | |||||||
SMART_ACTION_START_CLOSEST_WAYPOINT | 113 | wp1 | wp2 | wp3 | wp4 | wp5 | wp6 | Make target follow closest waypoint to its location | |
SMART_ACTION_MOVE_OFFSET | 114 | Use target_x, target_y, target_z With target_type=1 | |||||||
SMART_ACTION_RANDOM_SOUND | 115 | soundId1 | soundId2 | soundId3 | soundId4 | onlySelf (0/1) | Distant Sound (0/1) | ||
SMART_ACTION_SET_CORPSE_DELAY | 116 | timer | |||||||
SMART_ACTION_DISABLE_EVADE | 117 | disable evade (1) / re-enable (0) | |||||||
SMART_ACTION_GO_SET_GO_STATE | 118 | state | |||||||
SMART_ACTION_SET_CAN_FLY | 119 | 0/1 | |||||||
SMART_ACTION_REMOVE_AURAS_BY_TYPE | 120 | Type | |||||||
SMART_ACTION_SET_SIGHT_DIST | 121 | SightDistance | |||||||
SMART_ACTION_FLEE | 122 | FleeTime | |||||||
SMART_ACTION_ADD_THREAT | 123 | +threat | -threat | ||||||
SMART_ACTION_LOAD_EQUIPMENT | 124 | Id | |||||||
SMART_ACTION_TRIGGER_RANDOM_TIMED_EVENT | 125 | id min range | id max range | ||||||
SMART_ACTION_REMOVE_ALL_GAMEOBJECTS | 126 | ||||||||
SMART_ACTION_PAUSE_MOVEMENT | 127 | MovementSlot (default = 0, active = 1, controlled = 2) | PauseTime (ms) | Forced (depends on the movement generator. some will stop automatically, other will let the current spline finish first) | default --> waypoint, random etc active --> point movement controlled --> mindcontrol etc | ||||
SMART_ACTION_PLAY_ANIMKIT | 128 | AnimKit ID | type: 0- PlayOneShotAnimKitId 1- SetAIAnimKitId 2- SetMeleeAnimKitId 3- SetMovementAnimKitId | // don't use on 3.3.5a | |||||
SMART_ACTION_SCENE_PLAY | 129 | SceneId | // don't use on 3.3.5a | ||||||
SMART_ACTION_SCENE_CANCEL | 130 | SceneId | // don't use on 3.3.5a | ||||||
SMART_ACTION_SPAWN_SPAWNGROUP | 131 | groupId | minDelay | maxDelay | spawnflags | ||||
SMART_ACTION_DESPAWN_SPAWNGROUP | 132 | groupId | minDelay | maxDelay | spawnflags | ||||
SMART_ACTION_RESPAWN_BY_SPAWNID | 133 | spawnType (0 npc/ 1 gob) | spawnId (DB Guid) | Use to respawn npcs and gobs, the target in this case is always=1 and only a single unit could be a target via the spawnId (action_param1, action_param2) | |||||
SMART_ACTION_INVOKER_CAST | 134 | SpellID | castFlags | triggeredFlags | if avaliable, last used invoker will cast spellId with castFlags on targets | ||||
SMART_ACTION_PLAY_CINEMATIC | 135 | entry | cinematic | ||||||
SMART_ACTION_SET_MOVEMENT_SPEED | 136 | movementType | speedInteger | speedFraction | |||||
SMART_ACTION_PLAY_SPELL_VISUAL_KIT | 137 | spellVisualKitId | (RESERVED, PENDING CHERRYPICK) | ||||||
SMART_ACTION_OVERRIDE_LIGHT | 138 | zoneId | areaLightId | lightId (overrideLightId) | fadeInTime (transition Milliseconds) | 3.3.5 | |||
SMART_ACTION_OVERRIDE_WEATHER | 139 | zoneId | weatherId | weatherGrade (intensity) | 3.3.5 | ||||
SMART_ACTION_SET_AI_ANIM_KIT | 140 | 3.3.5 | |||||||
SMART_ACTION_SET_HOVER | 141 | 0 = Off / 1 = On | 3.3.5 | ||||||
SMART_ACTION_SET_HEALTH_PCT | 142 | percent | 3.3.5 | ||||||
SMART_ACTION_CREATE_CONVERSATION | 143 | conversation_template.id | master | ||||||
SMART_ACTION_SET_IMMUNE_PC | 144 | 0 = Off / 1 = On | UNIT_FLAG_IMMUNE_TO_PC | 3.3.5 | |||||
SMART_ACTION_SET_IMMUNE_NPC | 145 | 0 = Off / 1 = On | UNIT_FLAG_IMMUNE_TO_NPC | 3.3.5 | |||||
SMART_ACTION_SET_UNINTERACTIBLE | 146 | 0 = Off / 1 = On | UNIT_FLAG_UNINTERACTIBLE | 3.3.5 |
Predefined SAI templates
Description Name | Value (Param1) | Param2 | Param3 | Param4 | Param5 | Param6 | Comment |
---|---|---|---|---|---|---|---|
SMARTAI_TEMPLATE_BASIC | 0 | ||||||
SMARTAI_TEMPLATE_CASTER | 1 | spellid | repeatMin | repeatMax | range | manaPCT | +JOIN: target_param1 as castFlag |
SMARTAI_TEMPLATE_TURRET | 2 | spellid | repeatMin | repeatMax | range | manaPCT | +JOIN: target_param1 as castflag |
SMARTAI_TEMPLATE_PASSIVE | 3 | ||||||
SMARTAI_TEMPLATE_CAGED_GO_PART | 4 | creatureID | give credit at point end (0/1) | ||||
SMARTAI_TEMPLATE_CAGED_NPC_PART | 5 | gameObjectID | despawntime | run (0/1) | dist | TextGroupID |
...
Name | Value | target_param1 | target_param2 | target_param3 | target_param4 | target_x | target_y | target_z | target_o | Comment |
---|---|---|---|---|---|---|---|---|---|---|
SMART_TARGET_NONE | 0 | NoneNONE, defaulting to invoker. | ||||||||
SMART_TARGET_SELF | 1 | Self cast. | ||||||||
SMART_TARGET_VICTIM | 2 | Our current target. (ie: highest aggro) | ||||||||
SMART_TARGET_HOSTILE_SECOND_AGGRO | 3 | maxdist | playerOnly (0/1) | powerType + 1 | Second highest aggro. | |||||
SMART_TARGET_HOSTILE_LAST_AGGRO | 4 | Dead last on aggro. | ||||||||
SMART_TARGET_HOSTILE_RANDOM | 5 | Just any random target on our threat list. | ||||||||
SMART_TARGET_HOSTILE_RANDOM_NOT_TOP | 6 | Any random target except top threat. | ||||||||
SMART_TARGET_ACTION_INVOKER | 7 | Unit who caused this Event to occur. | ||||||||
SMART_TARGET_POSITION | 8 | x | y | z | o | Use xyz from event params. | ||||
SMART_TARGET_CREATURE_RANGE | 9 | creature Entry (0 any) | minDist | maxDist | Number of target 0 = all targets | (Random?) creature with specified ID within specified range. | ||||
SMART_TARGET_CREATURE_GUID | 10 | guid | entry | Creature with specified GUID. | ||||||
SMART_TARGET_CREATURE_DISTANCE | 11 | creature Entry (0 any) | maxDist | Number of target 0 = all targets | Creature with specified ID within distance. (Different from #9?) | |||||
SMART_TARGET_STORED | 12 | id | Uses pre-stored target(list) | |||||||
SMART_TARGET_GAMEOBJECT_RANGE | 13 | GO Entry (0 any) | minDist | maxDist | Number of target 0 = all targets | (Random?) object with specified ID within specified range. | ||||
SMART_TARGET_GAMEOBJECT_GUID | 14 | guid | entry | Object with specified GUID. | ||||||
SMART_TARGET_GAMEOBJECT_DISTANCE | 15 | GO Entry (0 any) | maxDist | Number of target 0 = all targets | Object with specified ID within distance. (Different from #13?) | |||||
SMART_TARGET_INVOKER_PARTY | 16 | Invoker's party members | ||||||||
SMART_TARGET_PLAYER_RANGE | 17 | minDist | maxDist | (Random?) player within specified range. | ||||||
SMART_TARGET_PLAYER_DISTANCE | 18 | maxDist | (Random?) player within specified distance. (Different from #17?) | |||||||
SMART_TARGET_CLOSEST_CREATURE | 19 | creature Entry (0 any) | maxDist (Can be from 0-100 yards) | dead? (0/1) | Closest creature with specified ID within specified range. | |||||
SMART_TARGET_CLOSEST_GAMEOBJECT | 20 | GO Entry (0 any) | maxDist (Can be from 0-100 yards) | Closest object with specified ID within specified range. | ||||||
SMART_TARGET_CLOSEST_PLAYER | 21 | maxDist | Closest player within specified range. | |||||||
SMART_TARGET_ACTION_INVOKER_VEHICLE | 22 | Unit's vehicle who caused this Event to occur | ||||||||
SMART_TARGET_OWNER_OR_SUMMONER | 23 | Unit's owner or summoner | ||||||||
SMART_TARGET_THREAT_LIST | 24 | All units on creature's threat list | ||||||||
SMART_TARGET_CLOSEST_ENEMY | 25 | maxDist | playerOnly (0/1) | Any attackable target (creature or player) within maxDist | ||||||
SMART_TARGET_CLOSEST_FRIENDLY | 26 | maxDist | playerOnly (0/1) | Any friendly unit (creature, player or pet) within maxDist | ||||||
SMART_TARGET_LOOT_RECIPIENTS | 27 | All tagging players | ||||||||
SMART_TARGET_FARTHEST | 28 | maxDist | playerOnly | isInLos (0/1) | Farthest unit on the threat list | |||||
SMART_TARGET_VEHICLE_ACCESSORY | 29 | seat | Vehicle can target unit in given seat | |||||||
SMART_TARGET_CLOSEST_UNSPAWNED_GAMEOBJECT | 30 | GO Entry (0 any) | maxDist (Can be from 0-100 yards) | Closest unspawned object with specified ID within specified range. (to be used only with action 70 and gameobjects with negative respawn time in the DB) |
...