用户工具

站点工具


数据库:world数据库:smart_scripts

这是本文档旧的修订版!


smart_scripts 表


<-返回:World 数据库

The smart_scripts table has 31 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.

表结构

FieldTypeAttributesKeyNullDefaultExtraComment
entryorguidINTSIGNEDPRINO
source_typeTINYINTUNSIGNEDPRINO0
idSMALLINTUNSIGNEDPRINO0
linkSMALLINTUNSIGNEDPRINO0
event_typeTINYINTUNSIGNED NO0
event_phase_maskSMALLINTUNSIGNED NO0
event_chanceTINYINTUNSIGNED NO100
event_flagsSMALLINTUNSIGNED NO0
event_param1INTUNSIGNED NO0
event_param2INTUNSIGNED NO0
event_param3INTUNSIGNED NO0
event_param4INTUNSIGNED NO0
event_param5INTUNSIGNED NO0
event_param6INTUNSIGNED NO0
action_typeTINYINTUNSIGNED NO0
action_param1INTUNSIGNED NO0
action_param2INTUNSIGNED NO0
action_param3INTUNSIGNED NO0
action_param4INTUNSIGNED NO0
action_param5INTUNSIGNED NO0
action_param6INTUNSIGNED NO0
target_typeTINYINTUNSIGNED NO0
target_param1INTUNSIGNED NO0
target_param2INTUNSIGNED NO0
target_param3INTUNSIGNED NO0
target_param4INTUNSIGNED NO0
target_xFLOATSIGNED NO0
target_yFLOATSIGNED NO0
target_zFLOATSIGNED NO0
target_oFLOATSIGNED NO0
commenttext NO Event Comment

字段说明


entryorguid

  • EntryOrGuid > 0: entry of the creature / game object / etc.
  • EntryOrGuid < 0: guid of the creature / game object / etc.
  • Depends on source_type.

When using GUID-specific SAI, the extra_flag DONT_OVERRIDE_SAI_ENTRY allows us to not require duplicating rows shared between all creatures of the same entry.

For example, you can keep all movement-related scripting in the GUID script, while combat scripting is handled by the ENTRY script.

For creatures that use this flag, SAI row IDs cannot overlap, thus we use row IDs starting with 1000 and incrementing it (e.g. 1000, 1001, 1002, …).

source_type

Object type: creature, game object, spell. see table below for values

NameValue
SMART_SCRIPT_TYPE_CREATURE0
SMART_SCRIPT_TYPE_GAMEOBJECT1
SMART_SCRIPT_TYPE_AREATRIGGER2
SMART_SCRIPT_TYPE_TIMED_ACTIONLIST9

id

Incremental id bound to each entryorguid & source_type (0, 1, 2, …).

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.

Thanks to the use of links, you can execute several actions, keeping the same event.

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_BIT00x000Means all phases (1 … 12)
SMART_EVENT_PHASE_110x001Phase 1 only.
SMART_EVENT_PHASE_220x002Phase 2 only.
SMART_EVENT_PHASE_340x004Phase 3 only.
SMART_EVENT_PHASE_480x008Phase 4 only.
SMART_EVENT_PHASE_5160x010Phase 5 only.
SMART_EVENT_PHASE_6320x020Phase 6 only.
SMART_EVENT_PHASE_7640x040Phase 7 only.
SMART_EVENT_PHASE_81280x080Phase 8 only.
SMART_EVENT_PHASE_92560x100Phase 9 only.
SMART_EVENT_PHASE_105120x200Phase 10 only.
SMART_EVENT_PHASE_1110240x400Phase 11 only.
SMART_EVENT_PHASE_1220480x800Phase 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

NameFlagHexComment
SMART_EVENT_FLAG_NOT_REPEATABLE10x01Event can not repeat
SMART_EVENT_FLAG_DIFFICULTY_020x02Event only occurs in normal dungeon
SMART_EVENT_FLAG_DIFFICULTY_140x04Event only occurs in heroic dungeon
SMART_EVENT_FLAG_DIFFICULTY_280x08Event only occurs in normal raid
SMART_EVENT_FLAG_DIFFICULTY_3160x10Event only occurs in heroic raid
SMART_EVENT_FLAG_RESERVED_5320x20
SMART_EVENT_FLAG_RESERVED_6640x40
SMART_EVENT_FLAG_DEBUG_ONLY1280x80Event only occurs in debug build
SMART_EVENT_FLAG_DONT_RESET2560x100Event will not reset in SmartScript::OnReset()
SMART_EVENT_FLAG_WHILE_CHARMED5120x200Event occurs even if AI owner is charmed

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

NameValueValueParam2Param3Param4Param5Param6Comment
SMART_EVENT_UPDATE_IC0InitialMinInitialMaxRepeatMinRepeatMax In combat.
SMART_EVENT_UPDATE_OOC1InitialMinInitialMaxRepeatMinRepeatMax Out of combat.
SMART_EVENT_HEALTH_PCT2HPMin%HPMax%RepeatMinRepeatMax Health Percentage
SMART_EVENT_MANA_PCT3ManaMin%ManaMax%RepeatMinRepeatMax Mana Percentage
SMART_EVENT_AGGRO4 On Creature Aggro
SMART_EVENT_KILL5CooldownMinCooldownMaxPlayer only (0/1)Creature entry (if param3 is 0) On Creature Kill
SMART_EVENT_DEATH6 On Creature Death
SMART_EVENT_EVADE7 On Creature Evade Attack
SMART_EVENT_SPELLHIT8SpellIDSchoolCooldownMinCooldownMax On Creature/Gameobject Spell Hit
SMART_EVENT_RANGE9InitialMinInitialMaxRepeatMinRepeatMaxMinDistMaxDistOn Victim In Range
SMART_EVENT_OOC_LOS10NoHostileMaxRangeCooldownMinCooldownMax0/1 Player Only On Target In Distance Out of Combat
SMART_EVENT_RESPAWN11type (None = 0, Map = 1, Area = 2)MapIdZoneId On Creature/Gameobject Respawn
SMART_EVENT_TARGET_HEALTH_PCT12HPMin%HPMax%RepeatMinRepeatMax On Target Health Percentage
SMART_EVENT_VICTIM_CASTING13RepeatMinRepeatMaxSpell id (0 any) On Target Casting Spell
SMART_EVENT_FRIENDLY_HEALTH14HPDeficitRadiusRepeatMinRepeatMax On Friendly Health Deficit
SMART_EVENT_FRIENDLY_IS_CC15RadiusRepeatMinRepeatMax
SMART_EVENT_FRIENDLY_MISSING_BUFF16SpellIdRadiusRepeatMinRepeatMaxonlyInCombat On Friendly Lost Buff
SMART_EVENT_SUMMONED_UNIT17CretureId (0 all)CooldownMinCooldownMax On Creature/Gameobject Summoned Unit
SMART_EVENT_TARGET_MANA_PCT18ManaMin%ManaMax%RepeatMinRepeatMax On Target Mana Percentage
SMART_EVENT_ACCEPTED_QUEST19QuestID (0 any)CooldownMinCooldownMax On Target Accepted Quest
SMART_EVENT_REWARD_QUEST20QuestID (0 any)CooldownMinCooldownMax On Target Rewarded Quest
SMART_EVENT_REACHED_HOME21 On Creature Reached Home
SMART_EVENT_RECEIVE_EMOTE22EmoteIdCooldownMinCooldownMax On Receive Emote.
SMART_EVENT_HAS_AURA23SpellIDStacksRepeatMinRepeatMax On Creature Has Aura
SMART_EVENT_TARGET_BUFFED24SpellIDStacksRepeatMinRepeatMax On Target Buffed With Spell
SMART_EVENT_RESET25 After Combat, On Respawn or Spawn
SMART_EVENT_IC_LOS26NoHostileMaxRangeCooldownMinCooldownMax0/1 Player Only On Target In Distance In Combat
SMART_EVENT_PASSENGER_BOARDED27CooldownMinCooldownMax
SMART_EVENT_PASSENGER_REMOVED28CooldownMinCooldownMax
SMART_EVENT_CHARMED29onRemove (0 - on apply, 1 - on remove) On Creature Charmed
SMART_EVENT_CHARMED_TARGET30 On Target Charmed
SMART_EVENT_SPELLHIT_TARGET31SpellIdSchoolRepeatMinRepeatMax On Target Spell Hit
SMART_EVENT_DAMAGED32MinDmgMaxDmgRepeatMinRepeatMax On Creature Damaged
SMART_EVENT_DAMAGED_TARGET33MinDmgMaxDmgRepeatMinRepeatMax On Target Damaged
SMART_EVENT_MOVEMENTINFORM34MovementType (0=any)PointID ESCORT_MOTION_TYPE = 17, POINT_MOTION_TYPE = 8
SMART_EVENT_SUMMON_DESPAWNED35EntryCooldownMinCooldownMax On Summoned Unit Despawned
SMART_EVENT_CORPSE_REMOVED36 On Creature Corpse Removed
SMART_EVENT_AI_INIT37
SMART_EVENT_DATA_SET38FieldValueCooldownMinCooldownMax On Creature/Gameobject Data Set, Can be used with SMART_ACTION_SET_DATA
SMART_EVENT_WAYPOINT_START39PointId (0 any)pathId (0 any) On Creature Waypoint ID Started
SMART_EVENT_WAYPOINT_REACHED40PointId (0 any)pathId (0 any) On Creature Waypoint ID Reached
SMART_EVENT_AREATRIGGER_ONTRIGGER46TriggerId (0 any)
SMART_EVENT_TEXT_OVER52creature_text.GroupIDcreature.id (0 any) On TEXT_OVER Event Triggered After SMART_ACTION_TALK
SMART_EVENT_RECEIVE_HEAL53MinHealMaxHealCooldownMinCooldownMax On Creature Received Healing
SMART_EVENT_JUST_SUMMONED54 On Creature Just spawned
SMART_EVENT_WAYPOINT_PAUSED55PointId (0 any)pathID (0 any) On Creature Paused at Waypoint ID
SMART_EVENT_WAYPOINT_RESUMED56PointId (0 any)pathID (0 any) On Creature Resumed after Waypoint ID
SMART_EVENT_WAYPOINT_STOPPED57PointId (0 any)pathID (0 any) On Creature Stopped On Waypoint ID
SMART_EVENT_WAYPOINT_ENDED58PointId (0 any)pathID (0 any) On Creature Waypoint Path Ended
SMART_EVENT_TIMED_EVENT_TRIGGERED59Id
SMART_EVENT_UPDATE60InitialMinInitialMaxRepeatMinRepeatMax
SMART_EVENT_LINK61 Used to link together multiple events as a chain of events.
SMART_EVENT_GOSSIP_SELECT62gossip_menu_option.MenuIDgossip_menu_option.OptionID On gossip clicked (gossip_menu_option).
SMART_EVENT_JUST_CREATED63
SMART_EVENT_GOSSIP_HELLO64 On Right-Click Creature/Gameobject that have gossip enabled.
SMART_EVENT_FOLLOW_COMPLETED65
SMART_EVENT_EVENT_PHASE_CHANGE66event phase mask On event phase mask set
SMART_EVENT_IS_BEHIND_TARGET67InitialMinInitialMaxRepeatMinRepeatMaxRangeMinRangeMaxOn Creature is behind target.
SMART_EVENT_GAME_EVENT_START68game_event.eventEntry On game_event started.
SMART_EVENT_GAME_EVENT_END69game_event.eventEntry On game_event ended.
SMART_EVENT_GO_STATE_CHANGED70State (0 - Active, 1 - Ready, 2 - Active alternative)
SMART_EVENT_GO_EVENT_INFORM71EventId
SMART_EVENT_ACTION_DONE72EventId
SMART_EVENT_ON_SPELLCLICK73
SMART_EVENT_FRIENDLY_HEALTH_PCT74InitialMinInitialMaxRepeatMinRepeatMaxHp PercentageRangeWhen a friendly creature within range falls below the HP Percentage
SMART_EVENT_DISTANCE_CREATURE75database guiddatabase entrydistancerepeat interval (ms) On creature guid OR any instance of creature entry is within distance.
SMART_EVENT_DISTANCE_GAMEOBJECT76database guiddatabase entrydistancerepeat interval (ms) On gameobject guid OR any instance of gameobject entry is within distance.
SMART_EVENT_COUNTER_SET77counterIDvaluecooldownMincooldownMax If the value of specified counterID is equal to a specified value
SMART_EVENT_SUMMONED_UNIT_DIES82CreatureId(0 all)CooldownMinCooldownMax
SMART_EVENT_NEAR_PLAYERS101minPlayersRange (yards)FirstCheck (ms)RepeatMin (ms)RepeatMax (ms) Event will trigger if there are more or equal than minPlayers in range.
SMART_EVENT_NEAR_PLAYERS_NEGATION102maxPlayersRange (yards)FirstCheck (ms)RepeatMin (ms)RepeatMax (ms) Event will trigger if there are less than maxPlayers in range.
SMART_EVENT_NEAR_UNIT103Unit type to check (0: creature 1: gob)Entry (template)CountRangeTimer (ms) Will check for >= count of specified entry within range
SMART_EVENT_NEAR_UNIT_NEGATION104Unit type to check (0: creature 1: gob)Entry (template)CountRangeTimer (ms) Will check for < count of specified entry within range
SMART_EVENT_AREA_CASTING105InitialMinInitialMaxRepeatMinRepeatMaxRangeMinRangeMaxCheck threat list for hostiles casting. If none are found, repeat in 1200ms
SMART_EVENT_AREA_RANGE106InitialMinInitialMaxRepeatMinRepeatMaxRangeMinRangeMaxCheck threat list for hostiles in range. If none are found, repeat in 1200ms

action_type

NameValueValueParam2Param3Param4Param5Param6Comment
SMART_ACTION_NONE0 Do nothing
SMART_ACTION_TALK1creature_text.GroupIDDuration to wait before SMART_EVENT_TEXT_OVER is triggered.0 It will try to trigger talk of the target Param2 in Milliseconds.
1 Set target as talk target (used for $vars in texts and whisper target)
SMART_ACTION_SET_FACTION2FactionID (or 0 for default) Sets faction to creature.
SMART_ACTION_MORPH_TO_ENTRY_OR_MODEL3creature_template.entry(param1)creature_template.modelidx(param2) Take DisplayID of creature (param1) OR Turn to DisplayID (param2) OR Both = 0 for Demorph
SMART_ACTION_SOUND4SoundIdonlySelf (0/1)distance Play Sound; onlySelf = 1 only sends sound to self, onlySelf = 0 sends sound to everyone in visibility range
SMART_ACTION_PLAY_EMOTE5EmoteId Makes the target perform an Emote
SMART_ACTION_FAIL_QUEST6QuestID Fail Quest of Target
SMART_ACTION_OFFER_QUEST7quest_template.iddirectAdd (0/1) Add Quest to Target
SMART_ACTION_SET_REACT_STATE8ReactState React State. Can be Passive (0), Defensive (1), Aggressive (2).
SMART_ACTION_ACTIVATE_GOBJECT9 Activate Object
SMART_ACTION_RANDOM_EMOTE10EmoteId1EmoteId2EmoteId3EmoteId4EmoteId5EmoteId6Play Random Emote
SMART_ACTION_CAST11SpellIdcastFlagstriggeredFlagslimitTargets (0 = all) Cast Spell ID at Target(s)
SMART_ACTION_SUMMON_CREATURE12creature_template.entrySummon typeduration in msattackInvoker (0/1/2)attackScriptOwner (0/1) Summon Unit; attackInvoker 1: attack target; attackInvoker 2: attack actual invoker
SMART_ACTION_THREAT_SINGLE_PCT13Threat% incThreat% dec Change Threat Percentage for Single Target
SMART_ACTION_THREAT_ALL_PCT14Threat% incThreat% dec Change Threat Percentage for All Enemies
SMART_ACTION_CALL_AREAEXPLOREDOREVENTHAPPENS15quest_template.id
SMART_ACTION_SET_EMOTE_STATE17EmoteId Play Emote Continuously
SMART_ACTION_SET_UNIT_FLAG18(may be more than one field OR'd together)type Can set Multi-able flags at once
If false set creature_template.unit_flags
If true set creature_template.unit_flags2
SMART_ACTION_REMOVE_UNIT_FLAG19(may be more than one field OR'd together)type Can Remove Multi-able flags at once
If false set creature_template.unit_flags
If true set creature_template.unit_flags2
SMART_ACTION_AUTO_ATTACK20AllowAttackState (0 = Stop attack, anything else means continue attacking) Stop or Continue Automatic Attack.
SMART_ACTION_ALLOW_COMBAT_MOVEMENT21AllowCombatMovement (0 = Stop combat based movement, anything else continue attacking) Allow or Disable Combat Movement
SMART_ACTION_SET_EVENT_PHASE22event_phase_mask Set event phase 0-12 (the actual values, no bit mask!)
SMART_ACTION_INC_EVENT_PHASE23IncrementDecrement Set param1 OR param2 (not both). Value 0 has no effect.
SMART_ACTION_EVADE24 Evade Incoming Attack
SMART_ACTION_FLEE_FOR_ASSIST250/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_GROUPEVENTHAPPENS26quest_template.id
SMART_ACTION_COMBAT_STOP27
SMART_ACTION_REMOVEAURASFROMSPELL28Spellid (0 removes all auras)charges (0 removes aura)
SMART_ACTION_FOLLOW29Distance (0 = Default value)Angle (0 = Default value)End creature_template.entrycreditcreditType (0 monsterkill, 1 event) Follow Target. If target type is NONE or SELF, Stop Follow
SMART_ACTION_RANDOM_PHASE30event_phase_mask 1event_phase_mask 2event_phase_mask 3event_phase_mask 4event_phase_mask 5event_phase_mask 6
SMART_ACTION_RANDOM_PHASE_RANGE31event_phase_mask minimumevent_phase_mask maximum
SMART_ACTION_RESET_GOBJECT32 Reset Gameobject
SMART_ACTION_CALL_KILLEDMONSTER33creature_template.entry This is the ID from quest_template.RequiredNpcOrGo
SMART_ACTION_SET_INST_DATA34FieldData Type (0 = SetData, 1 = SetBossState) Set Instance Data
SMART_ACTION_SET_INST_DATA6435Field Set Instance Data uint64
SMART_ACTION_UPDATE_TEMPLATE36creature_template.entryUpdate Level Updates creature_template to given entry
SMART_ACTION_DIE37Milliseconds Kill Target, if param1 is set, it will die after param1 milliseconds. 0: no delay, the target will die instantly
SMART_ACTION_SET_IN_COMBAT_WITH_ZONE38Range in yards for all players to be forced into combat with the creature. Only used in the open world. Leave as 0 if used in an instance. Sets the creature in combat with its zone, can be used in instances and open world. Useful for creatures inside instances so all players will be set in combat until the fight ends.
SMART_ACTION_CALL_FOR_HELP39Radius 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_SHEATH40Sheath (0-unarmed, 1-melee, 2-ranged)
SMART_ACTION_FORCE_DESPAWN41Despawn timer “ms”Respawn Timer “s” Despawn Target after param1 in Milliseconds. Respawn after param2 in seconds.
SMART_ACTION_SET_INVINCIBILITY_HP_LEVEL42flat hp valuepercent hp value If you use both params, only percent will be used.
SMART_ACTION_MOUNT_TO_ENTRY_OR_MODEL43creature_template.entrycreature_template.modelidx Mount to Creature Entry (param1) OR Mount to Creature Display (param2) Or both = 0 for Unmount
SMART_ACTION_SET_INGAME_PHASE_MASK44creature.phaseMask
SMART_ACTION_SET_DATA45FieldData Set Data For Target, can be used with SMART_EVENT_DATA_SET
SMART_ACTION_MOVE_FORWARD46distance move self forward for the specified distance (point movement)
SMART_ACTION_SET_VISIBILITY470/1 Makes creature Visible = 1 or Invisible = 0
SMART_ACTION_SET_ACTIVE480/1 If a creature or GO is set active it will stay active even if no player is near. Take care, though, as it needs additional ressources (CPU/RAM) to keep them active (other objects/creatures nearby stay active).
SMART_ACTION_ATTACK_START49 Allows basic melee swings to creature.
SMART_ACTION_SUMMON_GO50gameobject_template.entryDe-spawn time in seconds.targetSummon (0/1)summonType (0 - after a specified time OR when the summoner dies, 1 - after a specified time) Spawns Gameobject, use target_type to set spawn position; if an entity is specified as target and also coordinates are set (target x,y,z) those coordinates are handled as offset from the target's position; if targetSummon is 1 then the target will summon the GO on the position of the actor
SMART_ACTION_KILL_UNIT51 Kills Creature.
SMART_ACTION_ACTIVATE_TAXI52TaxiID Sends player to flight path. You have to be close to Flight Master, which gives Taxi ID you need.
SMART_ACTION_WP_START530 = walk / 1 = runwaypoints.entrycanRepeatquest_template.iddespawntimereactStateCreature starts Waypoint Movement. Use waypoints table to create movement.
SMART_ACTION_WP_PAUSE54time (in ms) Creature pauses its Waypoint Movement for given time.
SMART_ACTION_WP_STOP55despawnTimequest_template.idfail (0/1) Creature stops its Waypoint Movement.
SMART_ACTION_ADD_ITEM56item_template.entrycount Adds item(s) to player.
SMART_ACTION_REMOVE_ITEM57item_template.entrycount Removes item(s) from player.
SMART_ACTION_INSTALL_AI_TEMPLATE58TemplateID (see Predefined SAI templates below)
SMART_ACTION_SET_RUN590 = Off / 1 = On
SMART_ACTION_SET_FLY60fly (0/1)speeddisable gravity (0/1) Only works for creatures with inhabit air.
SMART_ACTION_SET_SWIM610 = Off / 1 = On
SMART_ACTION_TELEPORT62MapID 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_COUNTER63counterIDvaluereset (0/1) If reset is 0 the counter with the specified ID is increased by the given value; if reset is 1 the counter is set to the value.
SMART_ACTION_STORE_TARGET_LIST64varID
SMART_ACTION_WP_RESUME65 Creature continues in its Waypoint Movement.
SMART_ACTION_SET_ORIENTATION66Quick ChangeRandom orientation? (0/1)Turning Angle (degrees) - The value will turn the creature counterclockwise. target_type must be NONE Used to alter the source's orientation. Depends on the script target. If SMART_TARGET_SELF, facing will be the same as in HomePosition, For SMART_TARGET_POSITION you need to set target_o : 0 = North, West = 1.5, South = 3, East = 4.5
SMART_ACTION_CREATE_TIMED_EVENT67idInitialMinInitialMaxRepeatMin(only if it repeats)RepeatMax(only if it repeats)chance
SMART_ACTION_PLAYMOVIE68entry
SMART_ACTION_MOVE_TO_POS69PointIdisTransport (0 or 1)controlled (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 as the coordinates; if an entity is specified as target and also coordinates are set (target x,y,z) those coordinates are handled as offset from the target's position
SMART_ACTION_RESPAWN_TARGET70Respawntime in seconds
SMART_ACTION_EQUIP71creature_equip_template.IDSlotmaskSlot1 (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_GOSSIP72 Closes gossip window.
SMART_ACTION_TRIGGER_TIMED_EVENT73id(>1)
SMART_ACTION_REMOVE_TIMED_EVENT74id(>1)
SMART_ACTION_ADD_AURA75SpellId Adds aura to player(s). Use target_type 17 to make AoE aura.
SMART_ACTION_OVERRIDE_SCRIPT_BASE_OBJECT76 WARNING: CAN CRASH CORE, do not use if you dont know what you are doing
SMART_ACTION_RESET_SCRIPT_BASE_OBJECT77
SMART_ACTION_CALL_SCRIPT_RESET78
SMART_ACTION_SET_RANGED_MOVEMENT79attackDistanceattackAngle Sets movement to follow at a specific range to the target.
SMART_ACTION_CALL_TIMED_ACTIONLIST80EntryOrGuid * 100 (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)allowOverride (0 - Must finish current actionlist, 1 - Allow starting new actionlist during previous actionlist)
SMART_ACTION_SET_NPC_FLAG81creature_template.npcflag
SMART_ACTION_ADD_NPC_FLAG82creature_template.npcflag
SMART_ACTION_REMOVE_NPC_FLAG83creature_template.npcflag
SMART_ACTION_SIMPLE_TALK84creature_text.GroupID Makes a player say text. SMART_EVENT_TEXT_OVER is not triggered and whispers can not be used.
SMART_ACTION_SELF_CAST85SpellIdcastFlagstriggeredFlagslimitTargets (0 = all) Makes the target cast spell on self.
SMART_ACTION_CROSS_CAST86SpellIDcastFlagsCasterTargetType (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_ACTIONLIST87EntryOrGuid 1 (entryorguid * 100 + n)EntryOrGuid 2 (entryorguid * 100 + n)EntryOrGuid 3 (entryorguid * 100 + n)EntryOrGuid 4 (entryorguid * 100 + n)EntryOrGuid 5 (entryorguid * 100 + n)EntryOrGuid 6 (entryorguid * 100 + n)Will select one entry from the ones provided. 0 is ignored.
SMART_ACTION_CALL_RANDOM_RANGE_TIMED_ACTIONLIST88EntryOrGuid 1 (entryorguid * 100 + n)EntryOrGuid 2 (entryorguid * 100 + n) 0 is ignored.
SMART_ACTION_RANDOM_MOVE89Radius Creature moves to random position in given radius. If radius is 0, then stop movement
SMART_ACTION_SET_UNIT_FIELD_BYTES_190ValueType
SMART_ACTION_REMOVE_UNIT_FIELD_BYTES_191ValueType
SMART_ACTION_INTERRUPT_SPELL92With delay (0/1)SpellIdInstant (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_ANIM93animprogress (0-255)
SMART_ACTION_SET_DYNAMIC_FLAG94creature_template.dynamicflags
SMART_ACTION_ADD_DYNAMIC_FLAG95creature_template.dynamicflags
SMART_ACTION_REMOVE_DYNAMIC_FLAG96creature_template.dynamicflags
SMART_ACTION_JUMP_TO_POS97Speed XYSpeed ZselfJump (0/1) If selfJump is 1 the actor will jump to the target (you can add an offset from the target's position by also specifying target coordinates); if selfJump is 0 the targeted creature will jump to the target position
SMART_ACTION_SEND_GOSSIP_MENU98gossip_menu.entrygossip_menu.text_id Can be used together with 'SMART_EVENT_GOSSIP_HELLO' to set custom gossip.
(same value as npc_text.ID)
SMART_ACTION_GO_SET_LOOT_STATE99LootState (0 - Not ready, 1 - Ready, 2 - Activated, 3 - Just deactivated)
SMART_ACTION_SEND_TARGET_TO_TARGET100Id 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_POS1010: if the target is a creature, set it's current position as it's new home position; if the target is SMART_TARGET_POSITION, use this position as new home position for the actor
1: if the target is a creature, reset it's home position to the one from the DB; if the target is SMART_TARGET_POSITION, reset the actor's home position to the one from the DB (the actual values of the target position are ignored)
SMART_ACTION_SET_HEALTH_REGEN1020/1 Sets the current creatures health regen on or off.
SMART_ACTION_SET_ROOT1030/1 Enables or disables creature movement
SMART_ACTION_SET_GO_FLAG104gameobject_template_addon.flags oldFlag = newFlag
SMART_ACTION_ADD_GO_FLAG105gameobject_template_addon.flags oldFlag = newFlag
SMART_ACTION_REMOVE_GO_FLAG106gameobject_template_addon.flags oldFlag &= ~newFlag
SMART_ACTION_SUMMON_CREATURE_GROUP107creature_summon_groups.groupIdattackInvoker (0/1)attackScriptOwner (0/1) Use creature_summon_groups table. SAI target has no effect, use 0
SMART_ACTION_SET_POWER108Power typeNew power
SMART_ACTION_ADD_POWER109Power typePower to add
SMART_ACTION_REMOVE_POWER110Power typePower to remove
SMART_ACTION_GAME_EVENT_STOP111game_event.eventEntry
SMART_ACTION_GAME_EVENT_START112game_event.eventEntry
SMART_ACTION_START_CLOSEST_WAYPOINT113wp1wp2wp3wp4wp5wp6Make target follow closest waypoint to its location
SMART_ACTION_RISE_UP114distance move up for the specified distance (warning: TC 3.3.5 uses another action here: SMART_ACTION_MOVE_OFFSET)
SMART_ACTION_RANDOM_SOUND115soundId1soundId2soundId3soundId4onlySelf (0/1)distance
SMART_ACTION_SET_CORPSE_DELAY116timer (secs)
SMART_ACTION_DISABLE_EVADE1170/1 (1 = disabled, 0 = enabled)
SMART_ACTION_GO_SET_GO_STATE118state
SMART_ACTION_SET_SIGHT_DIST121SightDistance
SMART_ACTION_FLEE122FleeTime
SMART_ACTION_ADD_THREAT123+threat-threat
SMART_ACTION_LOAD_EQUIPMENT124Idforce
SMART_ACTION_TRIGGER_RANDOM_TIMED_EVENT125id min rangeid max range
SMART_ACTION_REMOVE_ALL_GAMEOBJECTS126
SMART_ACTION_INVOKER_CAST134SpellIdCastFlagsTriggerFlagsLimitTargets - 0: all targets Make our action invoker type cast a spell to our target type
SMART_ACTION_PLAY_CINEMATIC135entry
SMART_ACTION_SET_MOVEMENT_SPEED136movementTypespeedIntegerspeedFraction MOVE_WALK = 0, MOVE_RUN = 1, MOVE_RUN_BACK = 2, MOVE_SWIM = 3, MOVE_SWIM_BACK= 4, MOVE_TURN_RATE= 5, MOVE_FLIGHT = 6, MOVE_FLIGHT_BACK = 7, MOVE_PITCH_RATE = 8
SMART_ACTION_SET_HEALTH_PCT142percent
SMART_ACTION_MOVE_TO_POS_TARGET201pointId
SMART_ACTION_EXIT_VEHICLE203
SMART_ACTION_SET_UNIT_MOVEMENT_FLAGS204flags
SMART_ACTION_SET_COMBAT_DISTANCE205combatDistance
SMART_ACTION_SET_CASTER_COMBAT_DIST206followDistanceresetToMax
SMART_ACTION_SET_HOVER2070/1
SMART_ACTION_ADD_IMMUNITY208typeidvalue
SMART_ACTION_REMOVE_IMMUNITY209typeidvalue
SMART_ACTION_FALL210
SMART_ACTION_SET_EVENT_FLAG_RESET2110/1
SMART_ACTION_STOP_MOTION212stopMovingmovementExpired
SMART_ACTION_NO_ENVIRONMENT_UPDATE213
SMART_ACTION_ZONE_UNDER_ATTACK214
SMART_ACTION_LOAD_GRID215
SMART_ACTION_MUSIC216SoundIdonlySelftype Plays the specified sound file as music. Type can be one of these values:
0: Play music for the specified target(s)
1: Play music for all players in the entire zone
2: Play music for all players in the area.
SMART_ACTION_RANDOM_MUSIC217SoundId1SoundId2SoundId3SoundId4onlySelftypePlays randomly one of the specified sound files as music. Type can be one of these values:
0: Play music for the specified target(s)
1: Play music for all players in the entire zone
2: Play music for all players in the area.
SMART_ACTION_CUSTOM_CAST218spellIdcastFlagbp0bp1bp2
SMART_ACTION_CONE_SUMMON219entryDuration (ms)Distance between rings (yards)Distance between each summons in a row (yards)Length of the cone (yards)Width of the cone (angle 1掳-360掳)Allows you to spawn creatures in a cone (As seen in later expansions). Useful for custom cone aoes
0 = permanent
SMART_ACTION_PLAYER_TALK220acore_string.idyell? (0/1) Make the player say something
SMART_ACTION_VORTEX_SUMMON221entryDuration (ms)Spiral scalingSpiral appearancerange maxphi_deltaAllows you to summon creature in a customizable spiral(/vortex). Parameters can be confusing, exmaple parameters for testing: 5000 - summon duration, 5 - Spiral Scaling, 25 - spiral appearance, 60 - range max, 40 - phi delta
0 = permanent
SMART_ACTION_CU_ENCOUNTER_START222 Resets all cooldowns and removes exhausted debuffs when action is called
SMART_ACTION_DO_ACTION223ActionId Allows to call for a DoAction in code
SMART_ACTION_ATTACK_STOP224 Stop melee, spell casting during combat, chasing the target and facing
SMART_ACTION_SET_GUID2250/1 (0 = Self Guid, 1 = Invoker Guid)Index Allows the target to perform an action similar to DO_ACTION, but allows a guid to be sent
SMART_ACTION_DISABLE2260/1 (0 = Disable, 1 = Enable) Disable the targeted creatures, setting them Invisible and Immune to All
SMART_ACTION_SET_SCALE227scale - this value is the percentage of the new scale the targets will take. 100 = default Sets the scale for the targeted creatures
SMART_ACTION_SUMMON_RADIAL228summonEntry - CreatureID to be summonedsummonDuration - duration in ms which the summons will despawn after, if 0 then despawn on deathrepetitions - amount of creatures to be summonedstartAngle - offset in degrees, 0: same as sourcestepAngle - how many degrees to turn for each summondist - distance offsetSummons a set of creatures in a radial pattern, with orientation change specified in parameters
SMART_ACTION_PLAY_SPELL_VISUAL229visualId - can be found within SpellVisual.dbc Makes the targets play the VisualKit ID specified
SMART_ACTION_FOLLOW_GROUP230Follow State (0: Stop Follow, 1: Start Follow)Smart Follow TypeDistance from Leader divided by 100 (300 = 3.f yards) Makes the targets follow the source creature in the specified formation. See Smart Follow Types below
SMART_ACTION_ORIENTATION_TARGET231Type (0: Reset to default, 1: Use target.o parameter, 2: Targets face this unit, 3: Use parameters to target a specific creature)target_typetarget_param1target_param2target_param3target_param4Makes the targets face a specific orientation. If type = 3, then use the parameters as if it were a smart target and they'll face the newly-selected unit

Predefined SAI templates

Description NameValue (Param1)Param2Param3Param4Param5Param6Comment
SMARTAI_TEMPLATE_BASIC0
SMARTAI_TEMPLATE_CASTER1spellidrepeatMinrepeatMaxrangemanaPCT+JOIN: target_param1 as castFlag
SMARTAI_TEMPLATE_TURRET2spellidrepeatMinrepeatMaxrangemanaPCT+JOIN: target_param1 as castflag
SMARTAI_TEMPLATE_PASSIVE3
SMARTAI_TEMPLATE_CAGED_GO_PART4creatureIDgive credit at point end (0/1)
SMARTAI_TEMPLATE_CAGED_NPC_PART5gameObjectIDdespawntimerun (0/1)distTextGroupID

target_type

NameValueValuetarget_param2target_param3target_param4target_xtarget_ytarget_ztarget_oComment
SMART_TARGET_NONE0 None.
SMART_TARGET_SELF1 Self cast.
SMART_TARGET_VICTIM2 Our current target. (ie: highest aggro)
SMART_TARGET_HOSTILE_SECOND_AGGRO3Max Range (0: Unlimited)Player Only (0/1)Power Type + 1Missing Aura Second highest aggro.
SMART_TARGET_HOSTILE_LAST_AGGRO4Max Range (0: Unlimited)Player Only (0/1)Power Type + 1Missing Aura Dead last on aggro.
SMART_TARGET_HOSTILE_RANDOM5Max Range (0: Unlimited)Player Only (0/1)Power Type + 1Missing Aura Just any random target on our threat list.
SMART_TARGET_HOSTILE_RANDOM_NOT_TOP6Max Range (0: Unlimited)Player Only (0/1)Power Type + 1Missing Aura Any random target except top threat.
SMART_TARGET_ACTION_INVOKER7 Unit who caused this Event to occur.
SMART_TARGET_POSITION8 xyzoUse xyz from event params.
SMART_TARGET_CREATURE_RANGE9creature_template.entry (0 any)minDistmaxDistalive state (1 alive, 2 dead, 0 both) All creatures with the specified ID within the specified range and the specified alive state.
SMART_TARGET_CREATURE_GUID10creature.guidcreature_template.entrygetFromHashMap (0/1, this does not work in instances!) Creature with specified GUID and/or specified creature template ID.
SMART_TARGET_CREATURE_DISTANCE11creature_template.entry (0 any)maxDistalive state (1 alive, 2 dead, 0 both) All creatures with the specified ID within the specified distance and the specified alive state.
SMART_TARGET_STORED12id Uses pre-stored target(list)
SMART_TARGET_GAMEOBJECT_RANGE13gameobject_template.entry (0 any)minDistmaxDist All game objects with the specified ID within the specified range.
SMART_TARGET_GAMEOBJECT_GUID14gameobject.guidgameobject_template.entrygetFromHashMap (0/1, this does not work in instances!) Object with specified GUID and/or specified game object template ID.
SMART_TARGET_GAMEOBJECT_DISTANCE15gameobject_template.entry (0 any)maxDist All objects with the specified ID within the specified distance.
SMART_TARGET_INVOKER_PARTY16 Invoker's party members
SMART_TARGET_PLAYER_RANGE17minDistmaxDistmaxCount When target.o is set and it didnt find any targets in min-max range, it will try all possible targets in max range instead.All players up to maxCount within the specified range. Excluding GMs and Dead.
SMART_TARGET_PLAYER_DISTANCE18maxDist All players within the specified distance.
SMART_TARGET_CLOSEST_CREATURE19creature_template.entry (0 any)maxDist (Can be from 0-100 yards)dead? (0/1) Closest creature with the specified ID within the specified range.
SMART_TARGET_CLOSEST_GAMEOBJECT20gameobject_template.entry (0 any)maxDist (Can be from 0-100 yards) Closest object with specified ID within specified range.
SMART_TARGET_CLOSEST_PLAYER21maxDist Closest player within specified range.
SMART_TARGET_ACTION_INVOKER_VEHICLE22 Unit's vehicle who caused this Event to occur
SMART_TARGET_OWNER_OR_SUMMONER23use owner of owner (0/1) Unit's owner or summoner
SMART_TARGET_THREAT_LIST24maxDist (0 any) All units on creature's threat list within the specified distance if maxDist > 0
SMART_TARGET_CLOSEST_ENEMY25maxDistplayerOnly (0/1) Any attackable target (creature or player) within maxDist
SMART_TARGET_CLOSEST_FRIENDLY26maxDistplayerOnly (0/1) Any friendly unit (creature, player or pet) within maxDist
SMART_TARGET_LOOT_RECIPIENTS27 All players that have tagged this creature (for kill credit)
SMART_TARGET_FARTHEST28maxDistplayerOnly (0/1)isInLos (0/1) Farthest unit on the threat list
SMART_TARGET_VEHICLE_PASSENGER29seat number (vehicle can target it's own accessory)
SMART_TARGET_PLAYER_WITH_AURA201spellIDNegative (0/1)MaxDistMinDist Number to resize the target listTarget players with or without aura
SMART_TARGET_RANDOM_POINT202range (yards)amount (for summoning creature)self as middle (0/1) This only works with SMART_ACTION_SUMMON_CREATURE, SMART_ACTION_MOVE_TO_POS and SMART_ACTION_JUMP_TO_POS
else use xyz
SMART_TARGET_ROLE_SELECTION203rangeMax (yards)TargetMask (Tanks (1), Healer (2) Damage (4))Resize list Target a Tank/Healer/DPS role. Based on the players spec.
SMART_TARGET_SUMMONED_CREATURES204creature_template.Entry
SMART_TARGET_INSTANCE_STORAGE205data indexType (creature (1), gameobject (2))

comment

Commenting on SAI uses a template which is the following: (with an example)

“Creature name - Event - Action”

“Minion of Gurok - On spawn - Set Random Movement”

Quick notes:

  • Always update creature_template,gameobject_template or areatrigger_scripts with:
UPDATE `creature_template` SET `AIName` = 'SmartAI' WHERE `entry` = y;

UPDATE `gameobject_template` SET `AIName` = 'SmartGameObjectAI' WHERE `entry` = y;

INSERT INTO `areatrigger_scripts` (`entry`, `ScriptName`) VALUES (y, 'SmartTrigger');

  • If the creature or GO is inside a dungeon, set event_flags accordingly to the instance difficulty (heroic, 25 man, etc.).

In case of doubt about an Event, Action_or _Target,_check source code (_src/server/game/AI/SmartScripts files; mainly *SmartScript.cpp)

Cast Flags

NameFlagHexComment
SMARTCAST_INTERRUPT_PREVIOUS10x001Interrupt any spell casting
SMARTCAST_TRIGGERED20x002Triggered (this makes spell cost zero mana and have no cast time)
SMARTCAST_AURA_NOT_PRESENT320x020Only casts the spell if the target does not have an aura from the spell
SMARTCAST_COMBAT_MOVE640x040Prevent combat movement on cast, allow on fail range, mana, LOS
SMARTCAST_THREATLIST_NOT_SINGLE1280x080Only cast if the source's threatlist is higher than one. This includes pets
SMARTCAST_TARGET_POWER_MANA2560x100Only cast if the target has power type mana

Triggered Flags

NameFlagHexComment
TRIGGERED_NONE00x00000000Not triggered
TRIGGERED_IGNORE_GCD10x00000001Will ignore GCD
TRIGGERED_IGNORE_SPELL_AND_CATEGORY_CD20x00000002Will ignore Spell and Category cooldowns
TRIGGERED_IGNORE_POWER_AND_REAGENT_COST40x00000004Will ignore power and reagent cost
TRIGGERED_IGNORE_CAST_ITEM80x00000008Will not take away cast item or update related achievement criteria
RIGGERED_IGNORE_AURA_SCALING160x00000010Will ignore aura scaling
TRIGGERED_IGNORE_CAST_IN_PROGRESS320x00000020Will not check if a current cast is in progress
TRIGGERED_IGNORE_COMBO_POINTS640x00000040Will ignore combo point requirement
TRIGGERED_CAST_DIRECTLY1280x00000080In Spell::prepare, will be cast directly without setting containers for executed spell
TRIGGERED_IGNORE_AURA_INTERRUPT_FLAGS2560x00000100Will ignore interruptible aura's at cast
TRIGGERED_IGNORE_SET_FACING5120x00000200Will not adjust facing to target (if any)
TRIGGERED_IGNORE_SHAPESHIFT10240x00000400Will ignore shapeshift checks
TRIGGERED_IGNORE_CASTER_AURASTATE20480x00000800Will ignore caster aura states including combat requirements and death state
TRIGGERED_IGNORE_CASTER_MOUNTED_OR_ON_VEHICLE81920x00002000Will ignore mounted/on vehicle restrictions
TRIGGERED_IGNORE_CASTER_AURAS655360x00010000Will ignore caster aura restrictions or requirements
TRIGGERED_DISALLOW_PROC_EVENTS1310720x00020000Disallows proc events from triggered spell (default)
TRIGGERED_DONT_REPORT_CAST_ERROR2621440x00040000Will return SPELL_FAILED_DONT_REPORT in CheckCast functions
TRIGGERED_FULL_MASK5242870x0007FFFFAll triggered flags
TRIGGERED_IGNORE_EQUIPPED_ITEM_REQUIREMENT5242880x00080000Will ignore equipped item requirements
TRIGGERED_NO_PERIODIC_RESET10485760x00100000Periodic aura tick wont be reset on override
TRIGGERED_FULL_DEBUG_MASK42949672950xFFFFFFFF

NOTICE: If triggeredFlags = 0, cast will trigger with TRIGGERED_FULL_MASK = 524287.

React States

Name Value Comment REACT_PASSIVE 0 Does not defend or attack at all. Does nothing. REACT_DEFENSIVE 1 Only attacks back when attacked. REACT_AGGRESSIVE 2 Will attack if on threat list and in threat radius. (default)

Summon Types

Name Value Comment TEMPSUMMON_TIMED_OR_DEAD_DESPAWN 1 Despawns after a specified time OR when the creature disappears. TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN 2 Despawns after a specified time OR when the creature dies. TEMPSUMMON_TIMED_DESPAWN 3 Despawns after a specified time. TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT 4 Despawns after a specified time after the creature is out of combat. TEMPSUMMON_CORPSE_DESPAWN 5 Despawns instantly after death. TEMPSUMMON_CORPSE_TIMED_DESPAWN 6 Despawns after a specified time after death. TEMPSUMMON_DEAD_DESPAWN 7 Despawns when the creature disappears. TEMPSUMMON_MANUAL_DESPAWN 8 Despawns when UnSummon() (or Force Despawn action) is called.

Smart Follow Types

Name Value Comment FOLLOW_TYPE_CIRCLE 1 360º Degrees around leader. 90º Degrees is the maximum angle. FOLLOW_TYPE_SEMI_CIRCLE_BEHIND 2 180º Degrees behind leader. FOLLOW_TYPE_SEMI_CIRCLE_FRONT 3 180º Degrees in front of leader. FOLLOW_TYPE_LINE 4 Front → Back → Front → Back. FOLLOW_TYPE_COLUMN 5 Left → Right → Left → Right. FOLLOW_TYPE_ANGULAR 6 Geese-like formation 135º and 225º degrees behind leader.

Power Types

Name Value POWER_MANA 0 POWER_RAGE 1 POWER_FOCUS 2 POWER_ENERGY 3

Invoker:

white list of events that actually have an invoker passed to them
Actions like SMART_ACTION_INVOKER_CAST and targets like SMART_TARGET_ACTION_INVOKER will work only if the event is in this list:
  • SMART_EVENT_AGGRO
  • SMART_EVENT_DEATH
  • SMART_EVENT_KILL
  • SMART_EVENT_SUMMONED_UNIT
  • SMART_EVENT_SPELLHIT
  • SMART_EVENT_SPELLHIT_TARGET
  • SMART_EVENT_DAMAGED
  • SMART_EVENT_RECEIVE_HEAL
  • SMART_EVENT_RECEIVE_EMOTE
  • SMART_EVENT_JUST_SUMMONED
  • SMART_EVENT_DAMAGED_TARGET
  • SMART_EVENT_SUMMON_DESPAWNED
  • SMART_EVENT_PASSENGER_BOARDED
  • SMART_EVENT_PASSENGER_REMOVED
  • SMART_EVENT_GOSSIP_HELLO
  • SMART_EVENT_GOSSIP_SELECT
  • SMART_EVENT_ACCEPTED_QUEST
  • SMART_EVENT_REWARD_QUEST
  • SMART_EVENT_FOLLOW_COMPLETED
  • SMART_EVENT_ON_SPELLCLICK
  • SMART_EVENT_GO_LOOT_STATE_CHANGED
  • SMART_EVENT_AREATRIGGER_ONTRIGGER
  • SMART_EVENT_IC_LOS
  • SMART_EVENT_OOC_LOS
  • SMART_EVENT_DISTANCE_CREATURE
  • SMART_EVENT_FRIENDLY_HEALTH
  • SMART_EVENT_FRIENDLY_HEALTH_PCT
  • SMART_EVENT_FRIENDLY_IS_CC
  • SMART_EVENT_FRIENDLY_MISSING_BUFF
  • SMART_EVENT_ACTION_DONE
  • SMART_EVENT_TARGET_HEALTH_PCT
  • SMART_EVENT_TARGET_MANA_PCT
  • SMART_EVENT_RANGE
  • SMART_EVENT_VICTIM_CASTING
  • SMART_EVENT_TARGET_BUFFED
  • SMART_EVENT_IS_BEHIND_TARGET
  • SMART_EVENT_INSTANCE_PLAYER_ENTER
  • SMART_EVENT_TRANSPORT_ADDCREATURE
  • SMART_EVENT_DATA_SET
  • SMART_EVENT_AREA_CASTING
  • SMART_EVENT_AREA_RANGE
数据库/world数据库/smart_scripts.1696327495.txt.gz · 最后更改: 2023/10/03 18:04 由 admin

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki