Smart scripts: различия между версиями

Материал из Uwow
Перейти к навигации Перейти к поиску
 
(не показано 70 промежуточных версий 2 участников)
Строка 1: Строка 1:
'''smart_scripts - таблица всевозможных действий существ. (ниже только наши "специфические")'''
'''smart_scripts - таблица всевозможных действий существ/GO/AT'''


=== action_delay ===
== source_type ==
Задержка для запуска экшена(в мс)
    0 - creature - 'SmartAI' (creature_template)
    1 - gameobject - 'SmartGameObjectAI' (gameobject_template)
    2 - AreaTrigger (client)
    3 - AreaTrigger (spell) - 'SmartTrigger' (areatrigger_scripts)
    9 - TimedActionList
    10 - EventObject - 'SmartEventObject' (eventobject_template)


=== event_type ===
== event_flags ==
    SMART_EVENT_FLAG_NOT_REPEATABLE        = 1,
    SMART_EVENT_FLAG_DIFFICULTY_0          = 2,
    SMART_EVENT_FLAG_DIFFICULTY_1          = 4,
    SMART_EVENT_FLAG_DIFFICULTY_2          = 8,
    SMART_EVENT_FLAG_DIFFICULTY_3          = 16,
    SMART_EVENT_FLAG_ALLOW_EVENT_NON_COMBAT = 32,
    SMART_EVENT_FLAG_ONCE_PER_INVOKER      = 64,
    SMART_EVENT_FLAG_DEBUG_ONLY            = 128,
    SMART_EVENT_FLAG_DONT_RESET            = 256,
    SMART_EVENT_FLAG_NOT_IN_COMBAT          = 512,
    SMART_EVENT_FLAG_IN_COMBAT              = 1024,
    SMART_EVENT_FLAG_IGNORE_PHASES          = 2048,
    SMART_EVENT_FLAG_DEBUG_ACTIONS          = 4096,


== cast_flags ==
    SMARTCAST_INTERRUPT_PREVIOUS    = 1,                    //Interrupt any spell casting
    SMARTCAST_TRIGGERED              = 2,                    //Triggered (this makes spell cost zero mana and have no cast time)
    CAST_FORCE_TARGET_SELF          = 16,                    //Forces the target to cast this spell on itself
    SMARTCAST_AURA_NOT_PRESENT      = 32,                    //Only casts the spell if the target does not have an aura from the spell


==== SMART_EVENT_ACCEPTED_QUEST          = 19, ====
== action_delay ==
При принятии задания игроком. Так же добавлена возможность установки кулдауна для срабатывания ивента.
    Задержка для запуска экшена (в мс)
questID - id задания


repeatMin;
== event_type ==


repeatMax;
==== 0 = SMART_EVENT_UPDATE_IC ====
Минимальное и максимальное время до повтора.
    Таймер в бою.
    1. Время начального таймера (мин)
    2. Время начального таймера (макс)
    3. Время повтора таймера (мин)
    4. Время повтора таймера (макс)


==== SMART_EVENT_REWARD_QUEST          = 20, ====
== event_type ==
При завершении задания игроком. Так же добавлена возможность установки кулдауна для срабатывания ивента.
questID - id задания


repeatMin;
==== 1 = SMART_EVENT_UPDATE_OOC ====
    Таймер вне боя.
    1. Время начального таймера (мин)
    2. Время начального таймера (макс)
    3. Время повтора таймера (мин)
    4. Время повтора таймера (макс)
==== 2 = SMART_EVENT_HEALT_PCT ====
    При достижении NPC определенного значения HP.
    1. Значение HP (мин)
    2. Значение HP (макс)
    3. Время повтора проверки (мин)
    4. Время повтора проверки (макс)
==== 3 = SMART_EVENT_MANA_PCT ====
    При достижении NPC определенного значения MP.
    1. Значение MP (мин)
    2. Значение MP (макс)
    3. Время повтора проверки (мин)
    4. Время повтора проверки (макс)
==== 4 = SMART_EVENT_AGGRO ====
    При входе в бой.
==== 5 = SMART_EVENT_KILL ====
    При убийстве.
    1. Время повтора проверки (мин)
    2. Время повтора проверки (макс)
    3. Только игрок (=1), иначе
    4. Идентификатор NPC
==== 6 = SMART_EVENT_DEATH ====
    При смерти.
==== 7 = SMART_EVENT_EVADE ====
    При ивейде.
==== 8 = SMART_EVENT_SPELLHIT ====
    При попадании спеллом по NPC / объекту.
    1. Идентификатор спелла
    2. Школа спелла
    3. Время повтора проверки (мин)
    4. Время повтора проверки (макс)
==== 9 = SMART_EVENT_RANGE ====
    При нахождении игрока в радиусе.
    1. Радиус (мин)
    2. Радиус (макс)
    3. Время повтора проверки (мин)
    4. Время повтора проверки (макс)
==== 10 = SMART_EVENT_OOC_LOS ====
    При нахождении игрока в радиусе вне боя.
    1. Дружелюбный (=1) или нет
    2. Радиус (макс)
    3. Время повтора проверки (мин)
    4. Время повтора проверки (макс)
==== 11 = SMART_EVENT_RESPAWN ====
    При респавне NPC / объекта.
    1. Тип респавна (1 = Map, 2 = Area)
    2. Map
    3. Area
==== 12 = SMART_EVENT_TARGET_HEALTH_PCT ====
    При достижении целью определенного значения HP.
    1. Значение HP (мин)
    2. Значение HP (макс)
    3. Время повтора проверки (мин)
    4. Время повтора проверки (макс)
==== 13 = SMART_EVENT_TARGET_CASTING ====
    Если цель кастует спелл.
    1. Время повтора проверки (мин)
    2. Время повтора проверки (макс)
==== 14 = SMART_EVENT_FRIENDLY_HEALTH ====
    Если у друга не хватает HP.
    1. Сколько должно не хватать
    2. Радиус проверки
    3. Время повтора проверки (мин)
    4. Время повтора проверки (макс)
==== 15 = SMART_EVENT_FRIENDLY_IS_CC ====
    Если друг сражается.
    1. Радиус проверки
    2. Время повтора проверки (мин)
    3. Время повтора проверки (макс)
==== 16 = SMART_EVENT_FRIENDLY_MISSING_BUFF ====
    Если у друга нет баффа.
    1. Идентификатор спелла
    2. Радиус проверки
    3. Время повтора проверки (мин)
    4. Время повтора проверки (макс)
==== 17 = SMART_EVENT_SUMMONED_UNIT ====
    При призыве NPC.
    1. Идентификатор суммона
    2. Время повтора проверки (мин)
    3. Время повтора проверки (макс)
==== 18 = SMART_EVENT_TARGET_MANA_PCT ====
    При достижении целью определенного значения MP.
    1. Значение MP (мин)
    2. Значение MP (макс)
    3. Время повтора проверки (мин)
    4. Время повтора проверки (макс)
==== 19 = SMART_EVENT_ACCEPTED_QUEST ====
    При принятии задания игроком. Так же добавлена возможность установки кулдауна для срабатывания ивента.
    1. Идентификатор задания
    2. Кулдаун проверки (мин)
    3. Кулдаун проверки (макс)
==== 20 = SMART_EVENT_REWARD_QUEST ====
    При завершении задания игроком. Так же добавлена возможность установки кулдауна для срабатывания ивента.
    1. Идентификатор задания
    2. Кулдаун проверки (мин)
    3. Кулдаун проверки (макс)
==== 21 = SMART_EVENT_REACHED_HOME ====
    При возвращении в изначальное положение.
==== 22 = SMART_EVENT_RECEIVE_EMOTE ====
    При получении эмоции.
    1. Идентификатор эмоции
    2. Кулдаун проверки (мин)
    3. Кулдаун проверки (макс)
==== 23 = SMART_EVENT_HAS_AURA ====
    При наличии ауры.
    1. Идентификатор спелла
    2. Количество стаков
    3. Кулдаун проверки (мин)
    4. Кулдаун проверки (макс)
==== 24 = SMART_EVENT_TARGET_BUFFED ====
    При бафе таргета.
    1. Идентификатор спелла
    2. Количество стаков
    3. Кулдаун проверки (мин)
    4. Кулдаун проверки (макс)
==== 25 = SMART_EVENT_RESET ====
    При иведе, при спавне и при респавне.
==== 26 = SMART_EVENT_IC_LOS ====
    При нахождении игрока в радиусе в бою.
    1. Дружелюбный (=1) или нет
    2. Радиус (макс)
    3. Время повтора проверки (мин)
    4. Время повтора проверки (макс)
==== 27 = SMART_EVENT_PASSENGER_BOARDED ====
    При посадке на себя пассажира.
    1. Время повтора проверки (мин)
    2. Время повтора проверки (макс)
    3. Тип пассажира (0 - all, 1 - creature, 2 - player)
==== 28 = SMART_EVENT_PASSENGER_REMOVED ====
    При высадке пассажира.
    1. Время повтора проверки (мин)
    2. Время повтора проверки (макс)
    3. Тип пассажира (0 - all, 1 - creature, 2 - player)
==== 29 = SMART_EVENT_CHARMED ====
    При подчинении себя.
==== 30 = SMART_EVENT_CHARMED_TARGET ====
    При подчинении цели.
==== 31 = SMART_EVENT_SPELLHIT_TARGET ====
    При попадании спеллом по цели.
    1. Идентификатор спелла
    2. Школа спелла
    3. Время повтора проверки (мин)
    4. Время повтора проверки (макс)
==== 32 = SMART_EVENT_DAMAGED ====
    При получении урона.
    1. Урон (мин)
    2. Урон (макс)
    3. Время повтора проверки (мин)
    4. Время повтора проверки (макс)
==== 33 = SMART_EVENT_DAMAGED_TARGET ====
    При нанесении урона.
    1. Урон (мин)
    2. Урон (макс)
    3. Время повтора проверки (мин)
    4. Время повтора проверки (макс)
==== 34 = SMART_EVENT_MOVEMENTINFORM ====
    При достижении точки.
    1. Тип точки
    2. Идентификатор точки
==== 35 = SMART_EVENT_SUMMON_DESPAWNED ====
    При деспавне суммона.
    1. Идентификатор суммона
    2. Время повтора проверки (мин)
    3. Время повтора проверки (макс)
==== 36 = SMART_EVENT_CORPSE_REMOVED ====
    При пропаже тела.
==== 37 = SMART_EVENT_AI_INIT ====
    При инициализации.
==== 38 = SMART_EVENT_DATA_SET ====
    При получении переменной.
    1. Идентификатор переменной
    2. Значение переменной
    3. Время повтора проверки (мин)
    4. Время повтора проверки (макс)
==== 39 = SMART_EVENT_WAYPOINT_START ====
    При начале пути.
    1. Идентификатор пути (waypoints)
==== 40 = SMART_EVENT_WAYPOINT_REACHED ====
    При достижении точки.
    1. Идентификатор точки
    2. Идентификатор пути (waypoints)
==== 41 = SMART_EVENT_TRANSPORT_ADDPLAYER ====
    При посадке игрока на транспорт.
==== 42 = SMART_EVENT_TRANSPORT_ADDCREATURE ====
    При посадке NPC на транспорт.
    1. Идентификатор NPC
==== 43 = SMART_EVENT_TRANSPORT_REMOVE_PLAYER ====
    При высадке игрока.
==== 44 = SMART_EVENT_TRANSPORT_RELOCATE ====
    При достижении транспортом точки.
    1. Идентификатор точки
==== 45 = SMART_EVENT_INSTANCE_PLAYER_ENTER ====
    При попадании игрока в инст.
    1. Фракция игрока
    2. Время повтора проверки (мин)
    3. Время повтора проверки (макс)
==== 46 = SMART_EVENT_AREATRIGGER_ONTRIGGER ====
    При входе в арея триггер.
    1. Идентификатор арея триггера
    2. Время повтора проверки (мин)
    3. Время повтора проверки (макс)
==== 47 = SMART_EVENT_QUEST_ACCEPTED ====
    При взятии квеста (любого).
==== 48 = SMART_EVENT_QUEST_OBJ_COPLETETION ====
    Выключен.
==== 49 = SMART_EVENT_QUEST_COMPLETION ====
    Выключен.
==== 50 = SMART_EVENT_QUEST_REWARDED ====
    При сдаче квеста (любого).
==== 51 = SMART_EVENT_QUEST_FAIL ====
    Выключен.
==== 52 = SMART_EVENT_TEXT_OVER ====
    При триггере после текста (запускается 1 экшином).
    1. Идентификатор группы текстов
    2. Идентификатор NPC кто говорил
==== 53 = SMART_EVENT_RECEIVE_HEAL ====
    При получении исцеления.
    1. Значение (мин)
    2. Значение (макс)
    3. Время повтора проверки (мин)
    4. Время повтора проверки (макс)
==== 54 = SMART_EVENT_JUST_SUMMONED ====
    При суммоне.
==== 55 = SMART_EVENT_WAYPOINT_PAUSED ====
    При паузе пути.
    1. Идентификатор точки
    2. Идентификатор пути (waypoints)
==== 56 = SMART_EVENT_WAYPOINT_RESUMED ====
    При продолжении пути.
    1. Идентификатор точки
    2. Идентификатор пути (waypoints)
==== 57 = SMART_EVENT_WAYPOINT_STOPPED ====
    При остановке пути.
    1. Идентификатор точки
    2. Идентификатор пути (waypoints)


repeatMax;
==== 58 = SMART_EVENT_WAYPOINT_ENDED ====
Минимальное и максимальное время до повтора.
    При окончании пути.
    1. Идентификатор точки
    2. Идентификатор пути (waypoints)
==== 59 = SMART_EVENT_TIMED_EVENT_TRIGGERED ====
    При триггере ивента (создаётся 67 экшином).
    1. Идентификатор ивента
==== 60 = SMART_EVENT_UPDATE ====
    Таймер.
    1. Время начального таймера (мин)
    2. Время начального таймера (макс)
    3. Время повтора таймера (мин)
    4. Время повтора таймера (макс)
==== 61 = SMART_EVENT_LINK ====
    При линке из другого смарта (запускается через колонку link).
==== 62 = SMART_EVENT_GOSSIP_SELECT ====
    При использовнии госсип меню.
    1. menuID
    2. optionID
    3. Время повтора проверки (мин)
    4. Время повтора проверки (макс)
==== 63 = SMART_EVENT_JUST_CREATED ====
    При инициализации скрипта.
==== 64 = SMART_EVENT_GOSSIP_HELLO ====
    При открытии госсип меню.
==== 65 = SMART_EVENT_FOLLOW_COMPLETED ====
    При выключении следования.
==== 66 = SMART_EVENT_DUMMY_EFFECT ====
    При думми эффектах спелла.
==== 67 = SMART_EVENT_IS_BEHIND_TARGET ====
    При нахождении у цели за спиной.
==== 68 = SMART_EVENT_GAME_EVENT_START ====
    При начале гейм ивента.
==== 69 = SMART_EVENT_GAME_EVENT_END ====
    При окончании гейм ивента.
==== 70 = SMART_EVENT_GO_STATE_CHANGED ====
    При изменении состояния объекта. (https://wiki.uwow.biz/Gameobject_template#LootState)


==== SMART_EVENT_GOSSIP_SELECT          = 62, ====
==== 71 = SMART_EVENT_GO_EVENT_INFORM ====
При использовнии госсип меню
    Используется в ядре.
==== 72 = SMART_EVENT_ACTION_DONE ====
menuID - id меню
    Используется в ядре.
==== 73 = SMART_EVENT_ON_SPELLCLICK ====
    При спеллклике.
    1. Время повтора проверки (мин)
    2. Время повтора проверки (макс)
    3. Только игрок (=1)
==== 74 = SMART_EVENT_CHECK_DIST_TO_HOME ====
    Если расстояние до изначальной позиции больше значения.
    1. Значение
    2.
    3. Время повтора проверки (мин)
    4. Время повтора проверки (макс)
==== 75 = SMART_EVENT_EVENTOBJECT_ONTRIGGER ====
    При входе в ивент обжект.
    1. Идентификатор ивент обжекта
    2. Время повтора проверки (мин)
    3. Время повтора проверки (макс)
==== 76 = SMART_EVENT_ON_TAXIPATHTO ====
    При начале такси.
    1. Идентификатор такси
==== 77 = SMART_EVENT_EVENTOBJECT_OFFTRIGGER ====
    При выходе из ивент обжекта.
    1. Идентификатор ивент обжекта
    2. Время повтора проверки (мин)
    3. Время повтора проверки (макс)
==== 78 = SMART_EVENT_ON_APPLY_OR_REMOVE_AURA ====
    При наложении или снятии ауры.
    1. Идентификатор спелла
    2. Режим (https://wiki.uwow.biz/MISC#AuraRemoveMode)
    3. Наложение (=1) или снятие (=0)
    4. Время повтора проверки


optionID - id опции
==== 79 = SMART_EVENT_ON_FIND_OBJECT_IN_RANGE ====
    При нахождении в радиусе объекта.
    1. Расстояние
    2. Тип объекта (1 - player, 2 - NPC, 3 - GO)
    3. Идентификатор NPC / GO
    4. Время повтора проверки
    5. Кулдаун проверки
==== 80 = SMART_EVENT_ON_SPECIAL_DATA ====
    Когда специальная переменная равна значению.
    1. Значение
    2. Время повтора проверки
==== 81 = SMART_EVENT_ON_OWNER_HAS_QUEST ====
    Если у суммонера есть квест.
    1. Идентификатор квеста
    2. Есть квест (=0) или нет квеста (=1)
    3. Время повтора проверки
==== 82 = SMART_EVENT_ON_SPECIAL_DATA_SET ====
    При изменении специальной переменной.
    1. Время повтора проверки (мин)
    2. Время повтора проверки (макс)
==== 83 = SMART_EVENT_ON_OWNER_HAS_COMPLETED_QUEST ====
    Если у суммонера есть завершенный обжектив.
    1. Идентификатор квеста
    2. Идентификатор обжективы
    3. Количество обжектив
    4. Время повтора проверки (мин)
    5. Время повтора проверки (макс)


repeatMin;
==== 84 = SMART_EVENT_ON_ENTER_VEHICLE ====
    При посадке на вехикл.
==== 85 = SMART_EVENT_ON_EXIT_VEHICLE ====
    При высадке с вехикла.
==== 86 = SMART_EVENT_ON_RANDOM_DATA ====
    При получении рандомной переменной (запускается 239 ивентом).
    1. Идентификатор переменной
==== 87 = SMART_EVENT_ON_LAST_HIT ====
    Перед получением смертельного удара.
==== 88 = SMART_EVENT_ON_SPELL_FINISH_CAST ====
    Перед завершении каста.
    1. Идентификатор спелла
==== 89 = SMART_EVENT_FRIENDLY_HP_PCT ====
    Если у друга не хватает HP.
    1. Сколько должно не хватать (в %)
    2. Радиус проверки
    3. Время повтора проверки (мин)
    4. Время повтора проверки (макс)
    5. Тип друга (all units = 0, only creature = 1, only player = 2)
==== 90 = SMART_EVENT_ON_LOOT_RELEASE ====
    При закрытии окна лута.
==== 91 = SMART_EVENT_ON_SUMMON_DIES ====
    При смерти суммона.
    1. Идентификатор NPC
==== 92 = SMART_EVENT_ON_OWNER_RECEIVE_KILLCREDIT ====
    При получении владельцем килкредита.
    1. Идентификатор килкредита
==== 93 = SMART_EVENT_ON_AT_ENTER ====
    При входе в арея триггер.
    1. Время повтора проверки (мин)
    2. Время повтора проверки (макс)
    3. Тип вошедшего объекта (player = 1, creature = 2)
    4. Идентификатор NPC
    5. GUID NPC
==== 94 = SMART_EVENT_ON_AT_LEAVE ====
    При выходе с арея триггера.
    1. Время повтора проверки (мин)
    2. Время повтора проверки (макс)
    3. Тип вышедшего объекта (player = 1, creature = 2)
    4. Идентификатор NPC
    5. GUID NPC
==== 95 = SMART_EVENT_ON_AT_DESTINATION_REACH ====
    При достижении арея триггером пункта назначения.
==== 96 = SMART_EVENT_ON_AT_REMOVE ====
    При деспавне арея триггера.
==== 97 = SMART_EVENT_APPLY_OR_REMOVE_CONTROL_AURA ====
    При деспавне арея триггера.
    1. Наложение (=1) или снятие (=0)
    2. Идентификатор спелла
    3. Время повтора проверки (мин)
    4. Время повтора проверки (макс)
==== 98 = SMART_EVENT_ON_DESPAWN ====
    Перед деспавном.
==== 99 = SMART_EVENT_ON_INTERRUPT ====
    При прерывании каста.
    1. Идентификатор спелла
    2. Тип сбившего каст объекта (all = 0, player = 1, creature = 2)
    3. Время повтора проверки (мин)
    4. Время повтора проверки (макс)
==== 100 = SMART_EVENT_ON_SPELLCLICK_FINISH_CAST ====
    При завершении каста спеллклика.
    1. Идентификатор спелла


repeatMax;
==== 101 = SMART_EVENT_AFTER_HP_PERCENT ====
Минимальное и максимальное время до повтора.
    При достижении здоровья в % (между минимумом и максимумом)
    1. Минимум
    2. Максимум
    3. Повторная проверка минимум
    4. Повторная проверка максимум


==== SMART_EVENT_ON_SPELLCLICK          = 73, ====
== action_type ==
При спеллклике
 
repeatMin;
 
repeatMax;
Минимальное и максимальное время до повтора.
 
==== SMART_EVENT_CHECK_DIST_TO_HOME       = 74, ====
Проверяет расстояние до позиции "спауна" (home). Если находится в пределах расстояния, указанного в maxDist, то делает действие.
'''maxDist - Максимальная дистанция, при которой будет срабатывать смарт'''
 
'''param 2; // пустое значение'''
 
'''repeatMin;'''
 
'''repeatMax;'''
Минимальное и максимальное время до повтора.
 
==== SMART_EVENT_EVENTOBJECT_ONTRIGGER       = 75, ====
При достижении ивент объекта
'''param1; // пустое значение'''
 
'''repeatMin;'''
 
'''repeatMax;'''
Минимальное и максимальное время до повтора.
 
==== SMART_EVENT_EVENTOBJECT_OFFTRIGGER       = 77, ====
При выходе из ивент объекта
'''param1; // пустое значение'''
 
'''repeatMin;'''
 
'''repeatMax;'''
Минимальное и максимальное время до повтора.
 
==== SMART_EVENT_ON_APPLY_OR_REMOVE_AURA       = 78, ====
При наложении или снятии ауры с нпц
'''param1; // SpellId'''
 
'''param2; // режим снятия ауры(AURA_REMOVE_NONE = 0, AURA_REMOVE_BY_DEFAULT = 1, AURA_REMOVE_BY_CANCEL= 2,AURA_REMOVE_BY_ENEMY_SPELL, AURA_REMOVE_BY_EXPIRE, AURA_REMOVE_BY_DEATH,AURA_REMOVE_BY_MECHANIC,AURA_REMOVE_BY_DROP_CHARGERS,    AURA_REMOVE_BY_INTERRUPT'''
 
'''param3; // при наложении = 1, при удалении = 0'''
 
'''param4; // КД на возможность повтора в мс'''
 
==== SMART_EVENT_ON_FIND_OBJECT_IN_RANGE    = 79, ====
При обнаружении объекта в радиусе
'''param1; // Радиус'''
 
'''param2; // Тип(1 - игрок, 2 - НПЦ, 3 - ГО)'''
'''param3; // Энтри(НПЦ ИД, ИД ГО, 0 - если игрок) Если игрок, то тут можно указать ид квеста и ивент будет срабатывать только если у найденного игрока взят этот квест'''
 
'''param4; // Время до повторной проверки'''
 
'''param5; // Время до повторного срабатывания, если объект был найден'''
 
==== SMART_EVENT_ON_SPECIAL_DATA    = 80, ====
При получении кастом даты. Пример использования: если по квесту суммонит волны аддов и необходимо чтобы только после убийства всех мобов первой волны суммонило следующую, то используйте этот ивент вместе с экшеном SMART_ACTION_SET_SPECIAL_DATA. Когда нпц из волны аддов погибает, то кидается кастом дата мобу, далее при накоплении нужного кол-ва дат происходит нужное вам действие.
 
'''param1; // Значение'''
'''param2; // Повторная проверка в мс'''
 
==== SMART_EVENT_ON_OWNER_HAS_QUEST    = 81, ====
При наличии(отсутствии) квеста у призывателя(овнера). Проверяется по указанному таймеру.
 
'''param1; // Id квеста'''
'''param2; // Негатив. То есть если указанный квест отсутствует у игрока'''
'''param3; // Таймер. Интервал с которым будет идти проверка. По дефолту выставлено в ядре 1500 мс(меньше не поставить, чтобы избежать фризов)'''
'''param4; // Время до повторного срабатывания'''
 
==== SMART_EVENT_ON_SPECIAL_DATA_SET = 82, ====
При получении спешл даты
 
==== SMART_EVENT_ON_OWNER_HAS_COMPLETED_QUEST = 83, ====
Если у владельца выполнен квест
 
парам1 = квест ид
парам2 = обжектива
парам3 = кол-во обжектив
парам4 = таймер проверки в мс
парам5 = повторная проверка при срабатывании в мс
 
==== SMART_EVENT_ON_ENTER_VEHICLE  = 84, ====
При входе в вехикл
 
==== SMART_EVENT_ON_EXIT_VEHICLE = 85, ====
При выходе из вехикла
 
==== SMART_EVENT_ON_RANDOM_DATA = 86, ====
При случайной дате
парам1 - значение, полученное при 239 экшине
 
==== SMART_EVENT_ON_LAST_HIT = 87, ====
При получении смертельного удара. Упрощает использование таргетов: все цели в аггро-листе, 1 цель в аггро-листе и тд. - так как запускается перед киллом нпц
 
 
=== event_type ===
    SMART_EVENT_UPDATE_IC                = 0,      // InitialMin, InitialMax, RepeatMin, RepeatMax
    SMART_EVENT_UPDATE_OOC              = 1,      // InitialMin, InitialMax, RepeatMin, RepeatMax
    SMART_EVENT_HEALT_PCT                = 2,      // HPMin%, HPMax%,  RepeatMin, RepeatMax
    SMART_EVENT_MANA_PCT                = 3,      // ManaMin%, ManaMax%, RepeatMin, RepeatMax
    SMART_EVENT_AGGRO                    = 4,      // NONE
    SMART_EVENT_KILL                    = 5,      // CooldownMin0, CooldownMax1, playerOnly2, else creature entry3
    SMART_EVENT_DEATH                    = 6,      // NONE
    SMART_EVENT_EVADE                    = 7,      // NONE
    SMART_EVENT_SPELLHIT                = 8,      // SpellID, School, CooldownMin, CooldownMax
    SMART_EVENT_RANGE                    = 9,      // MinDist, MaxDist, RepeatMin, RepeatMax
    SMART_EVENT_OOC_LOS                  = 10,      // NoHostile, MaxRnage, CooldownMin, CooldownMax
    SMART_EVENT_RESPAWN                  = 11,      // type, MapId, ZoneId
    SMART_EVENT_TARGET_HEALTH_PCT        = 12,      // HPMin%, HPMax%, RepeatMin, RepeatMax
    SMART_EVENT_TARGET_CASTING          = 13,      // RepeatMin, RepeatMax
    SMART_EVENT_FRIENDLY_HEALTH          = 14,      // HPDeficit, Radius, RepeatMin, RepeatMax
    SMART_EVENT_FRIENDLY_IS_CC          = 15,      // Radius, RepeatMin, RepeatMax
    SMART_EVENT_FRIENDLY_MISSING_BUFF    = 16,      // SpellId, Radius, RepeatMin, RepeatMax
    SMART_EVENT_SUMMONED_UNIT            = 17,      // CreatureId(0 all), CooldownMin, CooldownMax
    SMART_EVENT_TARGET_MANA_PCT          = 18,      // ManaMin%, ManaMax%, RepeatMin, RepeatMax
    SMART_EVENT_ACCEPTED_QUEST          = 19,      // QuestID(0any), RepeatMin, RepeatMax
    SMART_EVENT_REWARD_QUEST            = 20,      // QuestID(0any)
    SMART_EVENT_REACHED_HOME            = 21,      // NONE
    SMART_EVENT_RECEIVE_EMOTE            = 22,      // EmoteId, CooldownMin, CooldownMax, condition, val1, val2, val3
    SMART_EVENT_HAS_AURA                = 23,      // Param1 = SpellID, Param2 = Number of Time STacked, Param3/4 RepeatMin, RepeatMax
    SMART_EVENT_TARGET_BUFFED            = 24,      // Param1 = SpellID, Param2 = Number of Time STacked, Param3/4 RepeatMin, RepeatMax
    SMART_EVENT_RESET                    = 25,      // Called after combat, when the creature respawn and spawn.
    SMART_EVENT_IC_LOS                  = 26,      // NoHostile, MaxRnage, CooldownMin, CooldownMax
    SMART_EVENT_PASSENGER_BOARDED        = 27,      // CooldownMin, CooldownMax
    SMART_EVENT_PASSENGER_REMOVED        = 28,      // CooldownMin, CooldownMax
    SMART_EVENT_CHARMED                  = 29,      // NONE
    SMART_EVENT_CHARMED_TARGET          = 30,      // NONE
    SMART_EVENT_SPELLHIT_TARGET          = 31,      // SpellID, School, CooldownMin, CooldownMax
    SMART_EVENT_DAMAGED                  = 32,      // MinDmg, MaxDmg, CooldownMin, CooldownMax
    SMART_EVENT_DAMAGED_TARGET          = 33,      // MinDmg, MaxDmg, CooldownMin, CooldownMax
    SMART_EVENT_MOVEMENTINFORM          = 34,      // MovementType(any), PointID
    SMART_EVENT_SUMMON_DESPAWNED        = 35,      // Entry, CooldownMin, CooldownMax
    SMART_EVENT_CORPSE_REMOVED          = 36,      // NONE
    SMART_EVENT_AI_INIT                  = 37,      // NONE
    SMART_EVENT_DATA_SET                = 38,      // Id, Value, CooldownMin, CooldownMax
    SMART_EVENT_WAYPOINT_START          = 39,      // PointId(0any), pathID(0any)
    SMART_EVENT_WAYPOINT_REACHED        = 40,      // PointId(0any), pathID(0any)
    SMART_EVENT_TRANSPORT_ADDPLAYER      = 41,      // NONE
    SMART_EVENT_TRANSPORT_ADDCREATURE    = 42,      // Entry (0 any)
    SMART_EVENT_TRANSPORT_REMOVE_PLAYER  = 43,      // NONE
    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), CooldownMin, CooldownMax
    SMART_EVENT_QUEST_ACCEPTED          = 47,      // none
    SMART_EVENT_QUEST_OBJ_COPLETETION    = 48,      // none
    SMART_EVENT_QUEST_COMPLETION        = 49,      // none
    SMART_EVENT_QUEST_REWARDED          = 50,      // none
    SMART_EVENT_QUEST_FAIL              = 51,      // none
    SMART_EVENT_TEXT_OVER                = 52,      // GroupId from creature_text,  creature entry who talks (0 any)
    SMART_EVENT_RECEIVE_HEAL            = 53,      // MinHeal, MaxHeal, CooldownMin, CooldownMax
    SMART_EVENT_JUST_SUMMONED            = 54,      // none
    SMART_EVENT_WAYPOINT_PAUSED          = 55,      // PointId(0any), pathID(0any)
    SMART_EVENT_WAYPOINT_RESUMED        = 56,      // PointId(0any), pathID(0any)
    SMART_EVENT_WAYPOINT_STOPPED        = 57,      // PointId(0any), pathID(0any)
    SMART_EVENT_WAYPOINT_ENDED          = 58,      // PointId(0any), pathID(0any)
    SMART_EVENT_TIMED_EVENT_TRIGGERED    = 59,      // id
    SMART_EVENT_UPDATE                  = 60,      // InitialMin, InitialMax, RepeatMin, RepeatMax
    SMART_EVENT_LINK                    = 61,      // INTERNAL USAGE, no params, used to link together multiple events, does not use any extra resources to iterate event lists needlessly
    SMART_EVENT_GOSSIP_SELECT            = 62,      // menuID, actionID, cooldown min, cooldown max
    SMART_EVENT_JUST_CREATED            = 63,      // none
    SMART_EVENT_GOSSIP_HELLO            = 64,      // none
    SMART_EVENT_FOLLOW_COMPLETED        = 65,      // none
    SMART_EVENT_DUMMY_EFFECT            = 66,      // spellId, effectIndex
    SMART_EVENT_IS_BEHIND_TARGET        = 67,      // cooldownMin, CooldownMax
    SMART_EVENT_GAME_EVENT_START        = 68,      // game_event.Entry
    SMART_EVENT_GAME_EVENT_END          = 69,      // game_event.Entry
    SMART_EVENT_GO_STATE_CHANGED        = 70,      // go state
    SMART_EVENT_GO_EVENT_INFORM          = 71,      // eventId
    SMART_EVENT_ACTION_DONE              = 72,      // eventId (SharedDefines.EventId)
    SMART_EVENT_ON_SPELLCLICK            = 73,      // cooldown min, cooldown max, IsPlayer( 0 / 1) if clicker is player
    SMART_EVENT_CHECK_DIST_TO_HOME      = 74,      // clicker (unit)
    SMART_EVENT_EVENTOBJECT_ONTRIGGER    = 75,      // EventObject(0 any), CooldownMin, CooldownMax
    SMART_EVENT_ON_TAXIPATHTO            = 76,      // clicker (unit)
    SMART_EVENT_EVENTOBJECT_OFFTRIGGER  = 77,      // EventObject(0 any), CooldownMin, CooldownMax
    SMART_EVENT_ON_APPLY_OR_REMOVE_AURA  = 78,      // SpellId, Mode, ApplyOrRemove(1/0), Cooldown
    SMART_EVENT_ON_FIND_OBJECT_IN_RANGE  = 79,      // On find nearest object in range. Distance, Type(1 - player, 2 - NPC, 3 - GO), Entry(npcId, goId), RepeatTimer
    SMART_EVENT_ON_SPECIAL_DATA          = 80,      // On received special data and repeat it on timer
    SMART_EVENT_ON_OWNER_HAS_QUEST      = 81,      // Misc1 = QuestId, Misc2 = Negative(if owner doesn't have quest), Misc3 = CheckTimer
    SMART_EVENT_ON_SPECIAL_DATA_SET      = 82,      // On just set special data
    SMART_EVENT_ON_OWNER_HAS_COMPLETED_QUEST = 83,  // If owner has completed quest. QuestId, Check timer, Next check timer
    SMART_EVENT_ON_ENTER_VEHICLE        = 84,      // On enter vehicle
    SMART_EVENT_ON_EXIT_VEHICLE          = 85,      // On exit vehicle
    SMART_EVENT_ON_RANDOM_DATA          = 86,      // On random data value. Misc1 - value
    SMART_EVENT_ON_LAST_HIT              = 87,      // Handle after npc take >= dmg of his health
    SMART_EVENT_ON_SPELL_FINISH_CAST    = 88,      // Call after finish cast
 
 
=== action_type ===


==== SMART_ACTION_TALK                              = 1,      // misc1 - groupID из creature_text, misc2 - задержка до срабатывания TEXT_OVER ивента, misc3 - 1 - персональный текст, текст будет виден только таргету(игроку) ====
==== SMART_ACTION_TALK                              = 1,      // misc1 - groupID из creature_text, misc2 - задержка до срабатывания TEXT_OVER ивента, misc3 - 1 - персональный текст, текст будет виден только таргету(игроку) ====
Строка 236: Строка 462:
==== SMART_ACTION_SET_FACTION                        = 2,      // FactionId (or 0 for default) ====
==== SMART_ACTION_SET_FACTION                        = 2,      // FactionId (or 0 for default) ====
==== SMART_ACTION_MORPH_TO_ENTRY_OR_MODEL            = 3,      // Creature_template entry(param1) OR ModelId (param2) (or 0 for both to demorph) ====
==== SMART_ACTION_MORPH_TO_ENTRY_OR_MODEL            = 3,      // Creature_template entry(param1) OR ModelId (param2) (or 0 for both to demorph) ====
==== SMART_ACTION_SOUND                              = 4,      // SoundId, TextRange ====
==== SMART_ACTION_SOUND                              = 4,      // SoundId, OnlySelf, isDistance ====
 
==== SMART_ACTION_PLAY_EMOTE                        = 5,      // EmoteId ====
==== SMART_ACTION_PLAY_EMOTE                        = 5,      // EmoteId ====
==== SMART_ACTION_FAIL_QUEST                        = 6,      // QuestID ====
==== SMART_ACTION_FAIL_QUEST                        = 6,      // QuestID ====
==== SMART_ACTION_ADD_QUEST                          = 7,      // QuestID ====
==== SMART_ACTION_ADD_QUEST                          = 7,      // QuestID ====
==== SMART_ACTION_SET_REACT_STATE                    = 8,      // state ====
==== SMART_ACTION_SET_REACT_STATE                    = 8,      // state ====
    REACT_DELAY      = -1,
    REACT_PASSIVE    = 0,
    REACT_DEFENSIVE  = 1,
    REACT_AGGRESSIVE = 2,
    REACT_HELPER    = 3,
    REACT_ATTACK_OFF = 4
==== SMART_ACTION_ACTIVATE_GOBJECT                  = 9,      // ====
==== SMART_ACTION_ACTIVATE_GOBJECT                  = 9,      // ====
==== SMART_ACTION_RANDOM_EMOTE                      = 10,    // EmoteId1, EmoteId2, EmoteId3... ====
==== SMART_ACTION_RANDOM_EMOTE                      = 10,    // EmoteId1, EmoteId2, EmoteId3... ====
Строка 249: Строка 483:
  '''misc2 = тип суммона '''
  '''misc2 = тип суммона '''
  '''misc3 = длительность(мс) '''
  '''misc3 = длительность(мс) '''
  '''misc4 = добавить в лист суммонов '''
  '''misc4 = атаковать призывателя  '''
  '''misc5 = атаковать призывателя '''
  '''misc5 = взять фазы цели '''
  '''misc6 = взять фазы цели '''
  '''misc6 = добавить в лист суммонов (storageID - 12 target_type) '''


==== SMART_ACTION_THREAT_SINGLE_PCT                  = 13,    // Threat% ====
==== SMART_ACTION_THREAT_SINGLE_PCT                  = 13,    // Threat% ====
Строка 267: Строка 501:
==== SMART_ACTION_FLEE_FOR_ASSIST                    = 25,    // With Emote ====
==== SMART_ACTION_FLEE_FOR_ASSIST                    = 25,    // With Emote ====
==== SMART_ACTION_CALL_GROUPEVENTHAPPENS            = 26,    // QuestID ====
==== SMART_ACTION_CALL_GROUPEVENTHAPPENS            = 26,    // QuestID ====
==== SMART_ACTION_PLAY_SPELL_VISUAL_KIT              = 27,    // KitType ====
==== SMART_ACTION_PLAY_SPELL_VISUAL_KIT              = 27,    // id, duration, KitRecID ====
 
==== SMART_ACTION_REMOVEAURASFROMSPELL              = 28,    // Spellid, 0 removes all auras ====
==== SMART_ACTION_REMOVEAURASFROMSPELL              = 28,    // Spellid, 0 removes all auras ====
==== SMART_ACTION_FOLLOW                            = 29,    // Distance (0 = default), Angle (0 = default), EndCreatureEntry, credit, creditType (0monsterkill, 1event) ====
==== SMART_ACTION_FOLLOW                            = 29,    // Distance (0 = default), Angle (0 = default), EndCreatureEntry, credit, creditType (0monsterkill, 1event) ====
==== SMART_ACTION_RANDOM_PHASE                      = 30,    // PhaseId1, PhaseId2, PhaseId3... ====
==== SMART_ACTION_RANDOM_PHASE                      = 30,    // PhaseId1, PhaseId2, PhaseId3... ====
==== SMART_ACTION_RANDOM_PHASE_RANGE                = 31,    // PhaseMin, PhaseMax ====
==== SMART_ACTION_RANDOM_PHASE_RANGE                = 31,    // PhaseMin, PhaseMax ====
==== SMART_ACTION_RESET_GOBJECT                      = 32,    //
==== SMART_ACTION_RESET_GOBJECT                      = 32,    // ====
 
==== SMART_ACTION_CALL_KILLEDMONSTER                = 33,    // CreatureId, ====
==== SMART_ACTION_CALL_KILLEDMONSTER                = 33,    // CreatureId, ====
==== SMART_ACTION_SET_INST_DATA                      = 34,    // Field, Data ====
==== SMART_ACTION_SET_INST_DATA                      = 34,    // Field, Data ====
Строка 281: Строка 517:
==== SMART_ACTION_CALL_FOR_HELP                      = 39,    // Radius ====
==== SMART_ACTION_CALL_FOR_HELP                      = 39,    // Radius ====
==== SMART_ACTION_SET_SHEATH                        = 40,    // Sheath (0-unarmed, 1-melee, 2-ranged) ====
==== SMART_ACTION_SET_SHEATH                        = 40,    // Sheath (0-unarmed, 1-melee, 2-ranged) ====
==== SMART_ACTION_FORCE_DESPAWN                     = 41,     // timer ====
==== SMART_ACTION_FORCE_DESPAWN = 41, ====
Деспавн
'''misc1 = задержка до деспавна '''
'''misc2 = время респавна '''
'''misc3 = (для ГОшек) выставить лут стейт GO_JUST_DEACTIVATED '''
 
==== SMART_ACTION_SET_INVINCIBILITY_HP_LEVEL        = 42,    // MinHpValue(+pct, -flat) ====
==== SMART_ACTION_SET_INVINCIBILITY_HP_LEVEL        = 42,    // MinHpValue(+pct, -flat) ====
==== SMART_ACTION_MOUNT_TO_ENTRY_OR_MODEL            = 43,    // Creature_template entry(param1) OR ModelId (param2) (or 0 for both to dismount) ====
==== SMART_ACTION_MOUNT_TO_ENTRY_OR_MODEL            = 43,    // Creature_template entry(param1) OR ModelId (param2) (or 0 for both to dismount) ====
Строка 316: Строка 557:
==== SMART_ACTION_WP_RESUME                          = 65,    // none ====
==== SMART_ACTION_WP_RESUME                          = 65,    // none ====
==== SMART_ACTION_SET_ORIENTATION                    = 66,    // ====
==== SMART_ACTION_SET_ORIENTATION                    = 66,    // ====
    Повернуться к таргету (в таргетах указываешь к кому повернуться. SMART_TARGET_SELF = повернуться как в хоум позиции)
    1. Таргет, кто повернётся (0 = текущий моб)
    2. targetParam1
    3. targetParam2
    4. targetParam3
==== SMART_ACTION_CREATE_TIMED_EVENT                = 67,    // id, InitialMin, InitialMax, RepeatMin(only if it repeats), RepeatMax(only if it repeats), chance ====
==== 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_PLAYMOVIE                          = 68,    // entry ====
==== SMART_ACTION_PLAYMOVIE                          = 68,    // entry ====


Строка 339: Строка 585:
==== SMART_ACTION_ADD_NPC_FLAG                      = 82,    // Flags ====
==== SMART_ACTION_ADD_NPC_FLAG                      = 82,    // Flags ====
==== SMART_ACTION_REMOVE_NPC_FLAG                    = 83,    // Flags ====
==== SMART_ACTION_REMOVE_NPC_FLAG                    = 83,    // Flags ====
==== SMART_ACTION_SIMPLE_TALK                        = 84,    // groupID, can be used to make players say groupID, Text_over event is not triggered, whisper can not be used (Target units will say the text) ====
==== SMART_ACTION_SIMPLE_TALK                        = 84,    // Talk text by target. param1 - TextId. param3 - personal text target type(like cross cast). param4 - targetParam1. param5 - targetParam2. param6 - targetParam3. ====
 
==== SMART_ACTION_INVOKER_CAST                      = 85,    // spellID, castFlags,  if avaliable, last used invoker will cast spellId with castFlags on targets ====
==== SMART_ACTION_INVOKER_CAST                      = 85,    // spellID, castFlags,  if avaliable, last used invoker will cast spellId with castFlags on targets ====
==== SMART_ACTION_CROSS_CAST                        = 86,    // spellID, castFlags, CasterTargetType, CasterTarget param1, CasterTarget param2, CasterTarget param3, ( + the origonal target fields as Destination target),  CasterTargets will cast spellID on all Targets (use with caution if targeting multiple * multiple units) ====
==== SMART_ACTION_CROSS_CAST                        = 86,    // spellID, castFlags, CasterTargetType, CasterTarget param1, CasterTarget param2, CasterTarget param3, ( + the origonal target fields as Destination target),  CasterTargets will cast spellID on all Targets (use with caution if targeting multiple * multiple units) ====
Строка 351: Строка 598:
  '''misc3 = Random Move Type - RANDOM_MOVE_DEFAULT = 0, RANDOM_MOVE_WALK_AND_RUN = 1, RANDOM_MOVE_WALK_ONLY = 2, RANDOM_MOVE_RUN_ONLY = 3'''
  '''misc3 = Random Move Type - RANDOM_MOVE_DEFAULT = 0, RANDOM_MOVE_WALK_AND_RUN = 1, RANDOM_MOVE_WALK_ONLY = 2, RANDOM_MOVE_RUN_ONLY = 3'''


==== SMART_ACTION_SET_UNIT_FIELD_BYTES_1            = 90,    // bytes, type (UNIT_BYTES_1_OFFSET_STAND_STATE = 1, UNIT_BYTES_1_OFFSET_PET_TALENTS, UNIT_BYTES_1_OFFSET_VIS_FLAG, UNIT_BYTES_1_OFFSET_ANIM_TIER) ====
==== SMART_ACTION_SET_UNIT_FIELD_BYTES_1            = 90,    // bytes, type (UNIT_BYTES_1_OFFSET_STAND_STATE = 0, UNIT_BYTES_1_OFFSET_PET_TALENTS = 1, UNIT_BYTES_1_OFFSET_VIS_FLAG = 2, UNIT_BYTES_1_OFFSET_ANIM_TIER = 3) ====
 
==== SMART_ACTION_REMOVE_UNIT_FIELD_BYTES_1          = 91,    // bytes, type (UNIT_BYTES_1_OFFSET_STAND_STATE = 0, UNIT_BYTES_1_OFFSET_PET_TALENTS = 1, UNIT_BYTES_1_OFFSET_VIS_FLAG = 2, UNIT_BYTES_1_OFFSET_ANIM_TIER = 3) ====


==== SMART_ACTION_REMOVE_UNIT_FIELD_BYTES_1          = 91,    // bytes, type (UNIT_BYTES_1_OFFSET_STAND_STATE = 1, UNIT_BYTES_1_OFFSET_PET_TALENTS, UNIT_BYTES_1_OFFSET_VIS_FLAG, UNIT_BYTES_1_OFFSET_ANIM_TIER) ====
==== SMART_ACTION_INTERRUPT_SPELL                    = 92, ====
==== SMART_ACTION_INTERRUPT_SPELL                    = 92, ====


Строка 376: Строка 624:
==== SMART_ACTION_GAME_EVENT_STOP                    = 111,    // GameEventId ====
==== SMART_ACTION_GAME_EVENT_STOP                    = 111,    // GameEventId ====
==== SMART_ACTION_GAME_EVENT_START                  = 112,    // GameEventId ====
==== SMART_ACTION_GAME_EVENT_START                  = 112,    // GameEventId ====
==== SMART_ACTION_START_CLOSEST_WAYPOINT            = 113,    // wp1, wp2, wp3, wp4, wp5, wp6, wp7 ====
==== SMART_ACTION_START_CLOSEST_WAYPOINT            = 113,    // run?, wp1, wp2, wp3, wp4, wp5 ====
 
==== SMART_ACTION_RISE_UP                            = 114,    // distance ====
==== SMART_ACTION_RISE_UP                            = 114,    // distance ====
==== SMART_ACTION_MOVE_TO_HOME_POSITION              = 115,    // Target move to home pos. PointID, 0/1 - Run mode ====
==== SMART_ACTION_START_WAYPOINT_BETWEEN            = 116,    // Wp1, Wp2, Is Closest(1 = yes, 0 = no), run ====
==== SMART_ACTION_DISABLE_EVADE                      = 117,    // 0/1 (1 = disabled, 0 = enabled) ====
==== SMART_ACTION_DISABLE_EVADE                      = 117,    // 0/1 (1 = disabled, 0 = enabled) ====
==== SMART_ACTION_SET_GO_STATE                      = 118,    // state ====
==== SMART_ACTION_SET_CAN_FLY                        = 119,    // 0/1 (0 = disabled, 1 = enabled) ====
==== SMART_ACTION_SET_CAN_FLY                        = 119,    // 0/1 (0 = disabled, 1 = enabled) ====
==== SMART_ACTION_SET_IN_COMBAT_WITH_PLAYERS        = 120,    // Range ====
==== SMART_ACTION_SET_PVP                            = 121,    // 0/1 (0 = disabled, 1 = enabled) ====
==== SMART_ACTION_SET_CAN_ATTACK_IGNORE_CHECK        = 122,    // Can Attack Every Targets ====
==== SMART_ACTION_PLAY_ANIMKIT                      = 128,    // id, type (0 = oneShot, 1 = aiAnim, 2 = meleeAnim, 3 = movementAnim) ====
==== SMART_ACTION_PLAY_ANIMKIT                      = 128,    // id, type (0 = oneShot, 1 = aiAnim, 2 = meleeAnim, 3 = movementAnim) ====


====    SMART_ACTION_DESPAWN_SUMMONS                    = 129,    // timerMs, byEntry ====
====    SMART_ACTION_DESPAWN_SUMMONS                    = 129,    // timerMs, byEntry ====
====    SMART_ACTION_SET_CONTROLLED                    = 130,    // state, apply|remove ====
====    SMART_ACTION_SET_CONTROLLED                    = 130,    // state, apply|remove ====
====    SMART_ACTION_MOVE_TO_POS_TARGET                = 131,    // pointId ====
====    SMART_ACTION_MOVE_TO_POS_TARGET                = 131,    // pointId. Smart target move to position ====
====    SMART_ACTION_EXIT_VEHICLE                      = 132,    // none ====
====    SMART_ACTION_EXIT_VEHICLE                      = 132,    // none ====
====    SMART_ACTION_SET_UNIT_MOVEMENT_FLAGS            = 133,    // flags ====
====    SMART_ACTION_SET_UNIT_MOVEMENT_FLAGS            = 133,    // flags ====
Строка 475: Строка 736:
==== SMART_ACTION_JOIN_LFG  = 209 ====
==== SMART_ACTION_JOIN_LFG  = 209 ====
Присоеденить игрока к лфг
Присоеденить игрока к лфг
==== SMART_ACTION_CAST_CUSTOM = 210 ====
SpellId, CastFlags, damageMin, damageMax, bp1, bp2
==== SMART_ACTION_CLEAR_QUEST = 211 ====
Clear rewarded quest from player (quest ID)
====SMART_ACTION_SUMMON_SCENE = 212 ====
Summon Scene
====SMART_ACTION_UNLEARN_SPELL = 213 ====
Unlearn spells from player
==== SMART_ACTION_LEARN_SPELL = 214 ====
Learn spells to player
==== SMART_ACTION_MOD_CURRENCY = 215 ====
Modify currency to player by ID and count
==== SMART_ACTION_CIRCLE_PATH = 216 ====
Radius, Clockwise, StepCount
==== SMART_ACTION_SET_OVERRIDE_ZONE_LIGHT = 217 ====
zone Id, light Id, timer in milliseconds.
==== SMART_ACTION_SET_SPEED = 218 ====
speedType, speed


==== SMART_ACTION_IGNORE_PATHFINDING    = 219, ====  
==== SMART_ACTION_IGNORE_PATHFINDING    = 219, ====  
Строка 490: Строка 778:
  '''uint32 misc3'''; таймер(в мс).
  '''uint32 misc3'''; таймер(в мс).


  '''uint32 misc4'''; добавить в лист суммонов
  '''uint32 misc4'''; добавить в лист суммонов(StorageID - 12 target_type)


  '''uint32 misc5'''; взять фазы призывателя при суммоне. вряд ли пригодится, так как суммон находится в персональной фазе с игроком.
  '''uint32 misc5'''; взять фазы призывателя при суммоне. вряд ли пригодится, так как суммон находится в персональной фазе с игроком.
Строка 581: Строка 869:
  '''misc1; // значение 1'''
  '''misc1; // значение 1'''
  '''misc2; // значение 2'''
  '''misc2; // значение 2'''
==== SMART_ACTION_SET_QUEST_COMPLETITION_PHASE = 240, ====
Вкл\выкл опцию для применения CONDITION_QUEST_COMPLETITION для фазировок квестов. При отмене квеста автоматически сбрасывает эту опцию.
'''misc1; // квест ид'''
'''misc2; // 1 - вкл, 0 - выкл'''


==== SMART_ACTION_RESET_DELAYED_ACTIONS = 241, ====
==== SMART_ACTION_RESET_DELAYED_ACTIONS = 241, ====
Строка 608: Строка 891:
''' // Go to point near object. Range, Walk(0 walk, 1 run) '''
''' // Go to point near object. Range, Walk(0 walk, 1 run) '''


=== target_type ===
==== SMART_ACTION_SET_TRACK_OWNER_QUEST_FOR_DESPAWN  = 247,    // QuestId(there may be a several ids), AddOrRemove(1 - add, 0 - remove). ====
==== SMART_ACTION_SET_SCALE                          = 248,    // Set object scale. Value in action_param_float column ====
==== SMART_ACTION_MOD_SCALE                          = 249,    // Mod object scale. Value in action_param_float column ====
==== SMART_ACTION_SET_CAN_DESPAWN_WHEN_LEAVE_VEHICLE = 250,    // Creature can despawn when owner leave vehicle. 1 - can / 0 - can't despawn ====
==== SMART_ACTION_SET_PLAYER_CAN_ENTER_VEHICLE_ON_SUM= 251,    // When player summons that vehicle he can instantly enter it. Can be used by event JUST_SUMMONED. 1 - can / 0 - can't insta enter ====
==== SMART_ACTION_SET_PAUSE_ON_WAYPOINT_DATA        = 252,    // Make pause on waypoints_data. 1 - can / 0 - can't move. param 2 pause time ms ====
==== SMART_ACTION_SET_PLAYER_CAN_UPDATE_PHASE        = 253,    // ZoneId. PhaseId. 0 - can't update, 1 - can update ====
==== SMART_ACTION_PLAY_EMOTE_PERSONAL                = 254,    // EmoteId, EmoteId, EmoteId, EmoteId, EmoteId, EmoteId. Play personal emote for targets. If more than emote id = play random emote ====
==== SMART_ACTION_SET_EVENT_PHASE_MASK              = 255,    // Value. Set event phase mask (1, 2, 4, 8...). Also can be multi, like 9, 12... ====
==== SMART_ACTION_ADD_OR_REMOVE_EVENT_PHASE_MASK    = 256,    // param1 - Add event phase mask, param2 - Remove event phase mask ====
==== SMART_ACTION_SET_PLAY_HOVER_ANIM                = 257,    // Play hover anim. 0 - off / 1 - on ====
==== SMART_ACTION_CAN_ENTER_SPECIAL_EVADE            = 258,    // Makes creature can enter special evade(boss like). Param1 - 1 - Enable / 0 - Disable special evade. Param2 - invisibility timer ms ====
==== SMART_ACTION_SET_VEHICLE_EXIT_POSITION          = 259,    // Set custom vehicle exit position. Param1 - UnitType(0 - all, 1 - creature, 2 - player). Param2 - Entry(0 for player). XYZO coordinates ====
==== SMART_ACTION_SET_CAN_FOLLOW_ON_SUMMON          = 260,    // 0 - off / 1 - on follow when creature summons ====
==== SMART_ACTION_SET_FIELD_STATE_ANIM_ID            = 261,    // Set UNIT_FIELD_STATE_ANIM_ID to units. Param1 - state anim ID ====
==== SMART_ACTION_MOVE_BACKWARD                      = 262,    // Move backwards. param1 - pointId. x, y, z - point. action_param_float - move speed. (EFFECT_MOTION_TYPE) ====
==== SMART_ACTION_MOVE_CHARGE                        = 263,    // Move charge. param1 - pointId. param2 - move target type. param3-5 - move target param. x, y, z - point. action_param_float - move speed. (EFFECT_MOTION_TYPE) ====
==== SMART_ACTION_GO_SEND_CUSTOM_ANIM                = 264,    // animId, playAsDespawn ====
==== SMART_ACTION_SET_CUSTOM_ATTACK_DISTANCE        = 265,    // Distance ====
==== SMART_ACTION_MOVE_CIRCLE                        = 266,    // Radius, Walk, StepCount, Clockwise, Cyclic, PointId. action_param_float - Speed. X, Y, Z circle center ====
==== SMART_ACTION_SET_CAN_STOP_COMBAT_WHEN_EMPTY_THREAT = 267, // (0 - off, 1 - on) NPC combat stop when threatlist is empty ====
==== SMART_ACTION_COMBAT_STOP                        = 268,    // No param ====
==== SMART_ACTION_ADD_QUEST_OBJECTIVE                = 269,    // QuestId, ObjectiveID(ID), AddCount, NeedSendPacket ====
==== SMART_ACTION_REMOVE_QUEST_OBJECTIVE            = 270,    // QuestId, ObjectiveID(ID), RemoveCount, NeedSendPacket ====
==== SMART_ACTION_DESTROY_FOR_PLAYER                = 271,    // Destroy for player SMSG_UPDATE_OBJECT ====
==== SMART_ACTION_PLAYER_ADD_TO_QUEST_HIDE_LIST      = 272,    // Hide for player target until he have quest. Quest ID. ====


    SMART_TARGET_NONE                          = 0,    // NONE, defaulting to invoket
==== SMART_ACTION_GO_PLAY_VISUAL_KIT                 = 273,    // WorldEffectID, SpellVisualID, SpellStateVisualID, SpellStateAnimID, SpellStateAnimKitID, StateWorldEffectID ====
    SMART_TARGET_SELF                          = 1,    // Self cast
    SMART_TARGET_VICTIM                        = 2,    // Our current target (ie: highest aggro)
    SMART_TARGET_HOSTILE_SECOND_AGGRO          = 3,    // 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,    // use xyz from event params
    SMART_TARGET_CREATURE_RANGE                 = 9,    // CreatureEntry(0any), minDist, maxDist
    SMART_TARGET_CREATURE_GUID                  = 10,  // guid, entry
    SMART_TARGET_CREATURE_DISTANCE              = 11,  // CreatureEntry(0any), maxDist
    SMART_TARGET_STORED                        = 12,  // id, uses pre-stored target(list)
    SMART_TARGET_GAMEOBJECT_RANGE              = 13,  // entry(0any), min, max
    SMART_TARGET_GAMEOBJECT_GUID                = 14,  // guid, entry
    SMART_TARGET_GAMEOBJECT_DISTANCE            = 15,  // entry(0any), maxDist
    SMART_TARGET_INVOKER_PARTY                  = 16,  // invoker's party members
    SMART_TARGET_PLAYER_RANGE                  = 17,  // min, max
    SMART_TARGET_PLAYER_DISTANCE                = 18,  // maxDist
    SMART_TARGET_CLOSEST_CREATURE              = 19,  // CreatureEntry(0any), maxDist, dead?
    SMART_TARGET_CLOSEST_GAMEOBJECT            = 20,  // entry(0any), maxDist
    SMART_TARGET_CLOSEST_PLAYER                = 21,  // maxDist
    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
    SMART_TARGET_CLOSEST_FRIENDLY              = 26,   // maxDist
    SMART_TARGET_HOSTILE_RANDOM_PLAYER          = 125,   // Just any random target on our threat list player
    SMART_TARGET_HOSTILE_RANDOM_NOT_TOP_PLAYER  = 126,  // Any random target except top threat player
    SMART_TARGET_HOSTILE_RANDOM_AURA            = 127,  // Any random target with aura (entry, dist, topornot)
    SMART_TARGET_RANDOM_POSITION                = 128,  // Any random position (range, angle, distance)
    SMART_TARGET_TARGETUNIT                    = 129,  // Target unit by GetTargetUnit()
    SMART_TARGET_INVOKERS_OWNER                = 130,  // Owner of unit who caused this event to occur
    SMART_TARGET_INVOKERS_SUMMON_WITH_ENTRY    = 131,  // NPC Id. Invokers summon with entry
    SMART_TARGET_INVOKERS_PASSENGER            = 132,  // SeatId.
    SMART_TARGET_SUMMONERS_SUMMON_WITH_ENTRY    = 133,  // NPC Id. Summoners summon with entry
    SMART_TARGET_SUMMON_WITH_ENTRY              = 134,  // NPC Id. Target summon with entry
    SMART_TARGET_VEHICLE_ACCESSORY              = 135,  // Seat id
    SMART_TARGET_ALL_PLAYERS_IN_MAP            = 136,  // All players in map
    SMART_TARGET_RANDOM_CREATURE_BY_ENTRY      = 137,  // Select random creature by entry in range. entry, distance, searchType( SEARCH_ALL = 0, SEARCH_ALIVE = 1,  SEARCH_DEAD = 2)


==== SMART_TARGET_INVOKER_OWNER  = 130, ====
== target_type ==


'''Пример использования: если призванный игроком нпц(Х) суммонит нпц(У) и необходимо, чтобы нпц(У) взаимодействовало напрямую с игроком-призывателем нпц(Х), то юзается этот таргет.'''
==== 0 = SMART_TARGET_NONE ====
То же самое, что и SMART_TARGET_ACTION_INVOKER
==== 1 = SMART_TARGET_SELF ====
Сам объект
==== 2 = SMART_TARGET_VICTIM ====
Таргет объекта
==== 3 = SMART_TARGET_HOSTILE_SECOND_AGGRO ====
Второй в списке угроз
==== 4 = SMART_TARGET_HOSTILE_LAST_AGGRO ====
Последний в списке угроз
==== 5 = SMART_TARGET_HOSTILE_RANDOM ====
Случайный из списка угроз
==== 6 = SMART_TARGET_HOSTILE_RANDOM_NOT_TOP ====
Случайный из списка угроз, кроме цели
==== 7 = SMART_TARGET_ACTION_INVOKER ====
Инвокер (тот, кто вызвал ивент смарта)
==== 8 = SMART_TARGET_POSITION ====
Точка на карте
==== 9 = SMART_TARGET_CREATURE_RANGE ====
NPC в кольце
    1. ID NPC
    2. Минимальное расстояние
    3. Максимальное расстояние
    4. Количество целей
==== 10 = SMART_TARGET_CREATURE_GUID ====
NPC по гуиду
    1. GUID NPC
==== 11 = SMART_TARGET_CREATURE_DISTANCE ====
NPC в радиусе
    1. ID NPC
    2. Радиус
==== 12 = SMART_TARGET_STORED ====
Сохранённый объект до этого (Через SMART_ACTION_STORE_VARIABLE_DECIMAL и SMART_ACTION_STORE_TARGET_LIST, а также 6-й параметр в SMART_ACTION_SUMMON_CREATURE и SMART_ACTION_SUMMON_CREATURE_IN_PERS_VISIBILITY)
    1. ID из действий выше
==== 13 = SMART_TARGET_GAMEOBJECT_RANGE ====
GO в кольце
    1. ID GO
    2. Минимальное расстояние
    3. Максимальное расстояние
    4. Количество целей
==== 14 = SMART_TARGET_GAMEOBJECT_GUID ====
GO по гуиду
    1. GUID GO
==== 15 = SMART_TARGET_GAMEOBJECT_DISTANCE ====
GO в радиусе
    1. ID GO
    2. Радиус
==== 16 = SMART_TARGET_INVOKER_PARTY ====
Группа инвокера
==== 17 = SMART_TARGET_PLAYER_RANGE ====
Игроки в кольце
    1. Минимальное расстояние
    2. Максимальное расстояние
==== 18 = SMART_TARGET_PLAYER_DISTANCE ====
Игроки в радиусе
    1. Радиус
    2. Аура на игроках
==== 19 = SMART_TARGET_CLOSEST_CREATURE ====
Ближайший NPC
    1. ID NPC
    2. Расстояние
    3. Живой (=0) или мёртвый (=1)
==== 20 = SMART_TARGET_CLOSEST_GAMEOBJECT ====
Ближайший GO
    1. ID GO
    2. Расстояние
    3. Живой (=0) или мёртвый (=1)
==== 21 = SMART_TARGET_CLOSEST_PLAYER ====
Ближайший игрок
    1. Расстояние
==== 22 = SMART_TARGET_ACTION_INVOKER_VEHICLE ====
Транспорт инвокера
==== 23 = SMART_TARGET_OWNER_OR_SUMMONER ====
Создатель или суммонер объекта
==== 24 = SMART_TARGET_THREAT_LIST ====
Весь список угрозы
==== 25 = SMART_TARGET_CLOSEST_ENEMY ====
Ближайший враг
    1. Расстояние
==== 26 = SMART_TARGET_CLOSEST_FRIENDLY ====
Ближайший друг
    1. Расстояние
==== 27 = SMART_TARGET_SAVED_THREAT_LIST ====
Список угрозы в течении всей жизни
    1. Удалить игроков из списка


==== SMART_TARGET_INVOKERS_SUMMON_WITH_ENTRY  = 131, ====
==== 28 = SMART_TARGET_PLAYER_INVOKER_SUMMON ====
Таргет суммон инвокера по энтри(ид нпц)
Суммон игрока по ID. Используется, инвокер = моб, владелец которого является игрок
'''target_param1 = id NPC'''
    1. NPC ID


==== SMART_TARGET_INVOKERS_PASSENGER   = 132, ====
==== 125 = SMART_TARGET_HOSTILE_RANDOM_PLAYER ====
Таргет пассажир инвокера
Случайный игрок в списке угрозы
'''target_param1 = id сиденья'''
==== 126 = SMART_TARGET_HOSTILE_RANDOM_NOT_TOP_PLAYER ====
Случайный игрок в списке угрозы, кроме цели
==== 127 = SMART_TARGET_HOSTILE_RANDOM_AURA ====
Случайный игрок в списке угрозы с аурой
    1. ID ауры
    2. Расстояние до цели
    3. Верхний в списке угрозы (=1) или нет (=0)
==== 128 = SMART_TARGET_RANDOM_POSITION ====
Случайная позиция по параметрам (Работает для SMART_ACTION_SUMMON_CREATURE, SMART_ACTION_SUMMON_GO, SMART_ACTION_MOVE_TO_POS, SMART_ACTION_SUMMON_CREATURE_IN_PERS_VISIBILITY)
    https://egammi.com/image/qLZv
    1. Расстояние от выбранной точки
    2. Угол расстояния
    3. Расстояние до точки
==== 129 = SMART_TARGET_TARGETUNIT ====
Цель цели
==== 130 = SMART_TARGET_INVOKERS_OWNER ====
Создатель инвокера
==== 131 = SMART_TARGET_INVOKERS_SUMMON_WITH_ENTRY ====
Суммон инвокера
    1. ID NPC
==== 132 = SMART_TARGET_INVOKERS_PASSENGER ====
Пассажиры инвокера
    1. Место в транспорте
==== 133 = SMART_TARGET_SUMMONERS_SUMMON_WITH_ENTRY ====
Суммон суммонера
    1. ID NPC
==== 134 = SMART_TARGET_SUMMON_WITH_ENTRY ====
Суммон
    1. ID NPC
==== 135 = SMART_TARGET_VEHICLE_ACCESSORY ====
Место в транспорте
    1. Место в транспорте
==== 136 = SMART_TARGET_ALL_PLAYERS_IN_MAP ====
Все игроки на карте
==== 137 = SMART_TARGET_RANDOM_CREATURE_BY_ENTRY ====
Случайный NPC
    1. ID NPC
    2. Расстояние
    3. Тип поиска (0 = все, 1 = живые, 2 = мёртвые)
==== 138 = SMART_TARGET_RANDOM_PLAYER_IN_RANGE ====
Случайный игрок в радиусе
    1. Минимальное расстояние
    2. Максимальное расстояние
==== 139 = SMART_TARGET_RANDOM_POS_TO_PLAYER_IN_RANGE ====
Случайная позиция по отношению к игроку
==== 140 = SMART_TARGET_RANDOM_CREATURE_BETWEEN_ENTRIES ====
Случайный NPC
    1. ID NPC
    2. ID NPC
    3. ID NPC
    4. ID NPC
==== 141 = SMART_TARGET_VEHICLE ====
Транспорт
==== 142 = SMART_TARGET_INVOKERS_GO_SUMMON_WITH_ENTRY ====
Суммон инвокера
    1. ID GO


==== SMART_TARGET_SUMMONERS_SUMMON_WITH_ENTRY  = 133, ====
Таргет нпц-суммон призывателя по энтри
'''target_param1 = id нпц'''


==== SMART_TARGET_SUMMON_WITH_ENTRY  = 134, ====
{| class="wikitable"
Таргет нпц-суммон по энтри
! name
'''target_param1 = id нпц'''
! id
! 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() is called
|-
| TEMPSUMMON_TIMED_OR_OWNER_DESPAWNS
| 9
| despawns after a specified time or when owner despawns
|-
| TEMPSUMMON_TIMED_KILL_AND_DESPAWN
| 10
| kills after specified time, then despawns after death timer
|}

Текущая версия от 15:56, 23 апреля 2026

smart_scripts - таблица всевозможных действий существ/GO/AT

source_type

   0 - creature - 'SmartAI' (creature_template)
   1 - gameobject - 'SmartGameObjectAI' (gameobject_template)
   2 - AreaTrigger (client)
   3 - AreaTrigger (spell) - 'SmartTrigger' (areatrigger_scripts)
   9 - TimedActionList
   10 - EventObject - 'SmartEventObject' (eventobject_template)

event_flags

   SMART_EVENT_FLAG_NOT_REPEATABLE         = 1,
   SMART_EVENT_FLAG_DIFFICULTY_0           = 2,
   SMART_EVENT_FLAG_DIFFICULTY_1           = 4,
   SMART_EVENT_FLAG_DIFFICULTY_2           = 8,
   SMART_EVENT_FLAG_DIFFICULTY_3           = 16,
   SMART_EVENT_FLAG_ALLOW_EVENT_NON_COMBAT = 32,
   SMART_EVENT_FLAG_ONCE_PER_INVOKER       = 64,
   SMART_EVENT_FLAG_DEBUG_ONLY             = 128,
   SMART_EVENT_FLAG_DONT_RESET             = 256,
   SMART_EVENT_FLAG_NOT_IN_COMBAT          = 512,
   SMART_EVENT_FLAG_IN_COMBAT              = 1024,
   SMART_EVENT_FLAG_IGNORE_PHASES          = 2048,
   SMART_EVENT_FLAG_DEBUG_ACTIONS          = 4096,

cast_flags

   SMARTCAST_INTERRUPT_PREVIOUS     = 1,                     //Interrupt any spell casting
   SMARTCAST_TRIGGERED              = 2,                     //Triggered (this makes spell cost zero mana and have no cast time)
   CAST_FORCE_TARGET_SELF           = 16,                     //Forces the target to cast this spell on itself
   SMARTCAST_AURA_NOT_PRESENT       = 32,                     //Only casts the spell if the target does not have an aura from the spell

action_delay

   Задержка для запуска экшена (в мс)

event_type

0 = SMART_EVENT_UPDATE_IC

   Таймер в бою.
   1. Время начального таймера (мин)
   2. Время начального таймера (макс)
   3. Время повтора таймера (мин)
   4. Время повтора таймера (макс)

event_type

1 = SMART_EVENT_UPDATE_OOC

   Таймер вне боя.
   1. Время начального таймера (мин)
   2. Время начального таймера (макс)
   3. Время повтора таймера (мин)
   4. Время повтора таймера (макс)

2 = SMART_EVENT_HEALT_PCT

   При достижении NPC определенного значения HP.
   1. Значение HP (мин)
   2. Значение HP (макс)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

3 = SMART_EVENT_MANA_PCT

   При достижении NPC определенного значения MP.
   1. Значение MP (мин)
   2. Значение MP (макс)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

4 = SMART_EVENT_AGGRO

   При входе в бой.

5 = SMART_EVENT_KILL

   При убийстве.
   1. Время повтора проверки (мин)
   2. Время повтора проверки (макс)
   3. Только игрок (=1), иначе
   4. Идентификатор NPC

6 = SMART_EVENT_DEATH

   При смерти.

7 = SMART_EVENT_EVADE

   При ивейде.

8 = SMART_EVENT_SPELLHIT

   При попадании спеллом по NPC / объекту.
   1. Идентификатор спелла
   2. Школа спелла
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

9 = SMART_EVENT_RANGE

   При нахождении игрока в радиусе.
   1. Радиус (мин)
   2. Радиус (макс)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

10 = SMART_EVENT_OOC_LOS

   При нахождении игрока в радиусе вне боя.
   1. Дружелюбный (=1) или нет
   2. Радиус (макс)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

11 = SMART_EVENT_RESPAWN

   При респавне NPC / объекта.
   1. Тип респавна (1 = Map, 2 = Area)
   2. Map
   3. Area

12 = SMART_EVENT_TARGET_HEALTH_PCT

   При достижении целью определенного значения HP.
   1. Значение HP (мин)
   2. Значение HP (макс)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

13 = SMART_EVENT_TARGET_CASTING

   Если цель кастует спелл.
   1. Время повтора проверки (мин)
   2. Время повтора проверки (макс)

14 = SMART_EVENT_FRIENDLY_HEALTH

   Если у друга не хватает HP.
   1. Сколько должно не хватать
   2. Радиус проверки
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

15 = SMART_EVENT_FRIENDLY_IS_CC

   Если друг сражается.
   1. Радиус проверки
   2. Время повтора проверки (мин)
   3. Время повтора проверки (макс)

16 = SMART_EVENT_FRIENDLY_MISSING_BUFF

   Если у друга нет баффа.
   1. Идентификатор спелла
   2. Радиус проверки
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

17 = SMART_EVENT_SUMMONED_UNIT

   При призыве NPC.
   1. Идентификатор суммона
   2. Время повтора проверки (мин)
   3. Время повтора проверки (макс)

18 = SMART_EVENT_TARGET_MANA_PCT

   При достижении целью определенного значения MP.
   1. Значение MP (мин)
   2. Значение MP (макс)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

19 = SMART_EVENT_ACCEPTED_QUEST

   При принятии задания игроком. Так же добавлена возможность установки кулдауна для срабатывания ивента.
   1. Идентификатор задания
   2. Кулдаун проверки (мин)
   3. Кулдаун проверки (макс)

20 = SMART_EVENT_REWARD_QUEST

   При завершении задания игроком. Так же добавлена возможность установки кулдауна для срабатывания ивента.
   1. Идентификатор задания
   2. Кулдаун проверки (мин)
   3. Кулдаун проверки (макс)

21 = SMART_EVENT_REACHED_HOME

   При возвращении в изначальное положение.

22 = SMART_EVENT_RECEIVE_EMOTE

   При получении эмоции.
   1. Идентификатор эмоции
   2. Кулдаун проверки (мин)
   3. Кулдаун проверки (макс)

23 = SMART_EVENT_HAS_AURA

   При наличии ауры.
   1. Идентификатор спелла
   2. Количество стаков
   3. Кулдаун проверки (мин)
   4. Кулдаун проверки (макс)

24 = SMART_EVENT_TARGET_BUFFED

   При бафе таргета.
   1. Идентификатор спелла
   2. Количество стаков
   3. Кулдаун проверки (мин)
   4. Кулдаун проверки (макс)

25 = SMART_EVENT_RESET

   При иведе, при спавне и при респавне.

26 = SMART_EVENT_IC_LOS

   При нахождении игрока в радиусе в бою.
   1. Дружелюбный (=1) или нет
   2. Радиус (макс)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

27 = SMART_EVENT_PASSENGER_BOARDED

   При посадке на себя пассажира.
   1. Время повтора проверки (мин)
   2. Время повтора проверки (макс)
   3. Тип пассажира (0 - all, 1 - creature, 2 - player)

28 = SMART_EVENT_PASSENGER_REMOVED

   При высадке пассажира.
   1. Время повтора проверки (мин)
   2. Время повтора проверки (макс)
   3. Тип пассажира (0 - all, 1 - creature, 2 - player)

29 = SMART_EVENT_CHARMED

   При подчинении себя.

30 = SMART_EVENT_CHARMED_TARGET

   При подчинении цели.

31 = SMART_EVENT_SPELLHIT_TARGET

   При попадании спеллом по цели.
   1. Идентификатор спелла
   2. Школа спелла
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

32 = SMART_EVENT_DAMAGED

   При получении урона.
   1. Урон (мин)
   2. Урон (макс)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

33 = SMART_EVENT_DAMAGED_TARGET

   При нанесении урона.
   1. Урон (мин)
   2. Урон (макс)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

34 = SMART_EVENT_MOVEMENTINFORM

   При достижении точки.
   1. Тип точки
   2. Идентификатор точки

35 = SMART_EVENT_SUMMON_DESPAWNED

   При деспавне суммона.
   1. Идентификатор суммона
   2. Время повтора проверки (мин)
   3. Время повтора проверки (макс)

36 = SMART_EVENT_CORPSE_REMOVED

   При пропаже тела.

37 = SMART_EVENT_AI_INIT

   При инициализации.

38 = SMART_EVENT_DATA_SET

   При получении переменной.
   1. Идентификатор переменной
   2. Значение переменной
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

39 = SMART_EVENT_WAYPOINT_START

   При начале пути.
   1. Идентификатор пути (waypoints)

40 = SMART_EVENT_WAYPOINT_REACHED

   При достижении точки.
   1. Идентификатор точки
   2. Идентификатор пути (waypoints)

41 = SMART_EVENT_TRANSPORT_ADDPLAYER

   При посадке игрока на транспорт.

42 = SMART_EVENT_TRANSPORT_ADDCREATURE

   При посадке NPC на транспорт.
   1. Идентификатор NPC

43 = SMART_EVENT_TRANSPORT_REMOVE_PLAYER

   При высадке игрока.

44 = SMART_EVENT_TRANSPORT_RELOCATE

   При достижении транспортом точки.
   1. Идентификатор точки

45 = SMART_EVENT_INSTANCE_PLAYER_ENTER

   При попадании игрока в инст.
   1. Фракция игрока
   2. Время повтора проверки (мин)
   3. Время повтора проверки (макс)

46 = SMART_EVENT_AREATRIGGER_ONTRIGGER

   При входе в арея триггер.
   1. Идентификатор арея триггера
   2. Время повтора проверки (мин)
   3. Время повтора проверки (макс)

47 = SMART_EVENT_QUEST_ACCEPTED

   При взятии квеста (любого).

48 = SMART_EVENT_QUEST_OBJ_COPLETETION

   Выключен.

49 = SMART_EVENT_QUEST_COMPLETION

   Выключен.

50 = SMART_EVENT_QUEST_REWARDED

   При сдаче квеста (любого).

51 = SMART_EVENT_QUEST_FAIL

   Выключен.

52 = SMART_EVENT_TEXT_OVER

   При триггере после текста (запускается 1 экшином).
   1. Идентификатор группы текстов
   2. Идентификатор NPC кто говорил

53 = SMART_EVENT_RECEIVE_HEAL

   При получении исцеления.
   1. Значение (мин)
   2. Значение (макс)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

54 = SMART_EVENT_JUST_SUMMONED

   При суммоне.

55 = SMART_EVENT_WAYPOINT_PAUSED

   При паузе пути.
   1. Идентификатор точки
   2. Идентификатор пути (waypoints)

56 = SMART_EVENT_WAYPOINT_RESUMED

   При продолжении пути.
   1. Идентификатор точки
   2. Идентификатор пути (waypoints)

57 = SMART_EVENT_WAYPOINT_STOPPED

   При остановке пути.
   1. Идентификатор точки
   2. Идентификатор пути (waypoints)

58 = SMART_EVENT_WAYPOINT_ENDED

   При окончании пути.
   1. Идентификатор точки
   2. Идентификатор пути (waypoints)

59 = SMART_EVENT_TIMED_EVENT_TRIGGERED

   При триггере ивента (создаётся 67 экшином).
   1. Идентификатор ивента

60 = SMART_EVENT_UPDATE

   Таймер.
   1. Время начального таймера (мин)
   2. Время начального таймера (макс)
   3. Время повтора таймера (мин)
   4. Время повтора таймера (макс)

61 = SMART_EVENT_LINK

   При линке из другого смарта (запускается через колонку link).

62 = SMART_EVENT_GOSSIP_SELECT

   При использовнии госсип меню.
   1. menuID
   2. optionID
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

63 = SMART_EVENT_JUST_CREATED

   При инициализации скрипта.

64 = SMART_EVENT_GOSSIP_HELLO

   При открытии госсип меню.

65 = SMART_EVENT_FOLLOW_COMPLETED

   При выключении следования.

66 = SMART_EVENT_DUMMY_EFFECT

   При думми эффектах спелла.

67 = SMART_EVENT_IS_BEHIND_TARGET

   При нахождении у цели за спиной.

68 = SMART_EVENT_GAME_EVENT_START

   При начале гейм ивента.

69 = SMART_EVENT_GAME_EVENT_END

   При окончании гейм ивента.

70 = SMART_EVENT_GO_STATE_CHANGED

   При изменении состояния объекта. (https://wiki.uwow.biz/Gameobject_template#LootState)

71 = SMART_EVENT_GO_EVENT_INFORM

   Используется в ядре.

72 = SMART_EVENT_ACTION_DONE

   Используется в ядре.

73 = SMART_EVENT_ON_SPELLCLICK

   При спеллклике.
   1. Время повтора проверки (мин)
   2. Время повтора проверки (макс)
   3. Только игрок (=1)

74 = SMART_EVENT_CHECK_DIST_TO_HOME

   Если расстояние до изначальной позиции больше значения.
   1. Значение
   2. 
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

75 = SMART_EVENT_EVENTOBJECT_ONTRIGGER

   При входе в ивент обжект.
   1. Идентификатор ивент обжекта
   2. Время повтора проверки (мин)
   3. Время повтора проверки (макс)

76 = SMART_EVENT_ON_TAXIPATHTO

   При начале такси.
   1. Идентификатор такси

77 = SMART_EVENT_EVENTOBJECT_OFFTRIGGER

   При выходе из ивент обжекта.
   1. Идентификатор ивент обжекта
   2. Время повтора проверки (мин)
   3. Время повтора проверки (макс)

78 = SMART_EVENT_ON_APPLY_OR_REMOVE_AURA

   При наложении или снятии ауры.
   1. Идентификатор спелла
   2. Режим (https://wiki.uwow.biz/MISC#AuraRemoveMode)
   3. Наложение (=1) или снятие (=0)
   4. Время повтора проверки

79 = SMART_EVENT_ON_FIND_OBJECT_IN_RANGE

   При нахождении в радиусе объекта.
   1. Расстояние
   2. Тип объекта (1 - player, 2 - NPC, 3 - GO)
   3. Идентификатор NPC / GO
   4. Время повтора проверки
   5. Кулдаун проверки

80 = SMART_EVENT_ON_SPECIAL_DATA

   Когда специальная переменная равна значению.
   1. Значение
   2. Время повтора проверки

81 = SMART_EVENT_ON_OWNER_HAS_QUEST

   Если у суммонера есть квест.
   1. Идентификатор квеста
   2. Есть квест (=0) или нет квеста (=1)
   3. Время повтора проверки

82 = SMART_EVENT_ON_SPECIAL_DATA_SET

   При изменении специальной переменной.
   1. Время повтора проверки (мин)
   2. Время повтора проверки (макс)

83 = SMART_EVENT_ON_OWNER_HAS_COMPLETED_QUEST

   Если у суммонера есть завершенный обжектив.
   1. Идентификатор квеста
   2. Идентификатор обжективы
   3. Количество обжектив
   4. Время повтора проверки (мин)
   5. Время повтора проверки (макс)

84 = SMART_EVENT_ON_ENTER_VEHICLE

   При посадке на вехикл.

85 = SMART_EVENT_ON_EXIT_VEHICLE

   При высадке с вехикла.

86 = SMART_EVENT_ON_RANDOM_DATA

   При получении рандомной переменной (запускается 239 ивентом).
   1. Идентификатор переменной

87 = SMART_EVENT_ON_LAST_HIT

   Перед получением смертельного удара.

88 = SMART_EVENT_ON_SPELL_FINISH_CAST

   Перед завершении каста.
   1. Идентификатор спелла

89 = SMART_EVENT_FRIENDLY_HP_PCT

   Если у друга не хватает HP.
   1. Сколько должно не хватать (в %)
   2. Радиус проверки
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)
   5. Тип друга (all units = 0, only creature = 1, only player = 2)

90 = SMART_EVENT_ON_LOOT_RELEASE

   При закрытии окна лута.

91 = SMART_EVENT_ON_SUMMON_DIES

   При смерти суммона.
   1. Идентификатор NPC

92 = SMART_EVENT_ON_OWNER_RECEIVE_KILLCREDIT

   При получении владельцем килкредита.
   1. Идентификатор килкредита

93 = SMART_EVENT_ON_AT_ENTER

   При входе в арея триггер.
   1. Время повтора проверки (мин)
   2. Время повтора проверки (макс)
   3. Тип вошедшего объекта (player = 1, creature = 2)
   4. Идентификатор NPC
   5. GUID NPC

94 = SMART_EVENT_ON_AT_LEAVE

   При выходе с арея триггера.
   1. Время повтора проверки (мин)
   2. Время повтора проверки (макс)
   3. Тип вышедшего объекта (player = 1, creature = 2)
   4. Идентификатор NPC
   5. GUID NPC

95 = SMART_EVENT_ON_AT_DESTINATION_REACH

   При достижении арея триггером пункта назначения.

96 = SMART_EVENT_ON_AT_REMOVE

   При деспавне арея триггера.

97 = SMART_EVENT_APPLY_OR_REMOVE_CONTROL_AURA

   При деспавне арея триггера.
   1. Наложение (=1) или снятие (=0)
   2. Идентификатор спелла
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

98 = SMART_EVENT_ON_DESPAWN

   Перед деспавном.

99 = SMART_EVENT_ON_INTERRUPT

   При прерывании каста.
   1. Идентификатор спелла
   2. Тип сбившего каст объекта (all = 0, player = 1, creature = 2)
   3. Время повтора проверки (мин)
   4. Время повтора проверки (макс)

100 = SMART_EVENT_ON_SPELLCLICK_FINISH_CAST

   При завершении каста спеллклика.
   1. Идентификатор спелла

101 = SMART_EVENT_AFTER_HP_PERCENT

   При достижении здоровья в % (между минимумом и максимумом)
   1. Минимум
   2. Максимум
   3. Повторная проверка минимум
   4. Повторная проверка максимум

action_type

SMART_ACTION_TALK = 1, // misc1 - groupID из creature_text, misc2 - задержка до срабатывания TEXT_OVER ивента, misc3 - 1 - персональный текст, текст будет виден только таргету(игроку)

SMART_ACTION_SET_FACTION = 2, // FactionId (or 0 for default)

SMART_ACTION_MORPH_TO_ENTRY_OR_MODEL = 3, // Creature_template entry(param1) OR ModelId (param2) (or 0 for both to demorph)

SMART_ACTION_SOUND = 4, // SoundId, OnlySelf, isDistance

SMART_ACTION_PLAY_EMOTE = 5, // EmoteId

SMART_ACTION_FAIL_QUEST = 6, // QuestID

SMART_ACTION_ADD_QUEST = 7, // QuestID

SMART_ACTION_SET_REACT_STATE = 8, // state

   REACT_DELAY      = -1,
   REACT_PASSIVE    = 0,
   REACT_DEFENSIVE  = 1,
   REACT_AGGRESSIVE = 2,
   REACT_HELPER     = 3,
   REACT_ATTACK_OFF = 4

SMART_ACTION_ACTIVATE_GOBJECT = 9, //

SMART_ACTION_RANDOM_EMOTE = 10, // EmoteId1, EmoteId2, EmoteId3...

SMART_ACTION_CAST = 11, // SpellId, CastFlags

SMART_ACTION_SUMMON_CREATURE = 12

misc1 = id npc 
misc2 = тип суммона 
misc3 = длительность(мс) 
misc4 = атаковать призывателя  
misc5 =  взять фазы цели 
misc6 = добавить в лист суммонов (storageID - 12 target_type) 

SMART_ACTION_THREAT_SINGLE_PCT = 13, // Threat%

SMART_ACTION_THREAT_ALL_PCT = 14, // Threat%

SMART_ACTION_CALL_AREAEXPLOREDOREVENTHAPPENS = 15, // QuestID

SMART_ACTION_SEND_CASTCREATUREORGO = 16, // QuestID, SpellId

SMART_ACTION_SET_EMOTE_STATE = 17, // emoteID

SMART_ACTION_SET_UNIT_FLAG = 18, // Flags (may be more than one field OR'd together), Target

SMART_ACTION_REMOVE_UNIT_FLAG = 19, // Flags (may be more than one field OR'd together), Target

SMART_ACTION_AUTO_ATTACK = 20, // AllowAttackState (0 = stop attack, anything else means continue attacking)

SMART_ACTION_ALLOW_COMBAT_MOVEMENT = 21, // AllowCombatMovement (0 = stop combat based movement, anything else continue attacking)

SMART_ACTION_SET_EVENT_PHASE = 22, // Phase

SMART_ACTION_INC_EVENT_PHASE = 23, // Value (may be negative to decrement phase, should not be 0)

SMART_ACTION_EVADE = 24, // No Params

SMART_ACTION_FLEE_FOR_ASSIST = 25, // With Emote

SMART_ACTION_CALL_GROUPEVENTHAPPENS = 26, // QuestID

SMART_ACTION_PLAY_SPELL_VISUAL_KIT = 27, // id, duration, KitRecID

SMART_ACTION_REMOVEAURASFROMSPELL = 28, // Spellid, 0 removes all auras

SMART_ACTION_FOLLOW = 29, // Distance (0 = default), Angle (0 = default), EndCreatureEntry, credit, creditType (0monsterkill, 1event)

SMART_ACTION_RANDOM_PHASE = 30, // PhaseId1, PhaseId2, PhaseId3...

SMART_ACTION_RANDOM_PHASE_RANGE = 31, // PhaseMin, PhaseMax

SMART_ACTION_RESET_GOBJECT = 32, //

SMART_ACTION_CALL_KILLEDMONSTER = 33, // CreatureId,

SMART_ACTION_SET_INST_DATA = 34, // Field, Data

SMART_ACTION_SET_INST_DATA64 = 35, // Field,

SMART_ACTION_UPDATE_TEMPLATE = 36, // Entry, Team

SMART_ACTION_DIE = 37, // No Params

SMART_ACTION_SET_IN_COMBAT_WITH_ZONE = 38, // No Params

SMART_ACTION_CALL_FOR_HELP = 39, // Radius

SMART_ACTION_SET_SHEATH = 40, // Sheath (0-unarmed, 1-melee, 2-ranged)

SMART_ACTION_FORCE_DESPAWN = 41,

Деспавн

misc1 = задержка до деспавна 
misc2 = время респавна 
misc3 = (для ГОшек) выставить лут стейт GO_JUST_DEACTIVATED 

SMART_ACTION_SET_INVINCIBILITY_HP_LEVEL = 42, // MinHpValue(+pct, -flat)

SMART_ACTION_MOUNT_TO_ENTRY_OR_MODEL = 43, // Creature_template entry(param1) OR ModelId (param2) (or 0 for both to dismount)

SMART_ACTION_SET_INGAME_PHASE_MASK = 44, // mask

SMART_ACTION_SET_DATA = 45, // Field, Data (only creature TODO)

misc1 = data misc2 = value misc3 = передать инвокера цели(целью инвокера станет существо или го, которое кидает дату)

SMART_ACTION_MOVE_FORWARD = 46

Движение вперед

misc1 = Расстояние 
misc2 = 1 вкл бег, 0 выкл бег

SMART_ACTION_SET_VISIBILITY = 47, // on/off

SMART_ACTION_SET_ACTIVE = 48, // No Params

SMART_ACTION_ATTACK_START = 49, //

SMART_ACTION_SUMMON_GO = 50, // GameObjectID, DespawnTime in ms,

SMART_ACTION_KILL_UNIT = 51, //

SMART_ACTION_ACTIVATE_TAXI = 52, // TaxiID

SMART_ACTION_WP_START = 53, // run/walk, pathID, canRepeat, quest, despawntime, reactState

SMART_ACTION_WP_PAUSE = 54, // time

SMART_ACTION_WP_STOP = 55, // despawnTime, quest, fail?

SMART_ACTION_ADD_ITEM = 56, // itemID, count

SMART_ACTION_REMOVE_ITEM = 57, // itemID, count

SMART_ACTION_INSTALL_AI_TEMPLATE = 58, // AITemplateID

SMART_ACTION_SET_RUN = 59, // 0/1

SMART_ACTION_SET_FLY = 60, // 0/1

SMART_ACTION_SET_SWIM = 61, // 0/1

SMART_ACTION_TELEPORT = 62, // mapID,

SMART_ACTION_STORE_VARIABLE_DECIMAL = 63, // varID, number

SMART_ACTION_STORE_TARGET_LIST = 64, // varID,

SMART_ACTION_WP_RESUME = 65, // none

SMART_ACTION_SET_ORIENTATION = 66, //

   Повернуться к таргету (в таргетах указываешь к кому повернуться. SMART_TARGET_SELF = повернуться как в хоум позиции)
   1. Таргет, кто повернётся (0 = текущий моб)
   2. targetParam1
   3. targetParam2
   4. targetParam3

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

Движение в точку

misc1 = pointid(не обязательно)
misc2 = 1 вкл бег, 0 выкл бег

SMART_ACTION_RESPAWN_TARGET = 70, //

SMART_ACTION_EQUIP = 71, // entry, slotmask slot1, slot2, slot3 , 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 entry is set

SMART_ACTION_CLOSE_GOSSIP = 72, // none

SMART_ACTION_TRIGGER_TIMED_EVENT = 73, // id(>1)

SMART_ACTION_REMOVE_TIMED_EVENT = 74, // id(>1)

SMART_ACTION_ADD_AURA = 75, // spellid, targets

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, // none

SMART_ACTION_CALL_SCRIPT_RESET = 78, // none

SMART_ACTION_SET_RANGED_MOVEMENT = 79, // Distance, angle

SMART_ACTION_CALL_TIMED_ACTIONLIST = 80, // ID (overwrites already running actionlist), stop after combat?(0/1), timer update type(0-OOC, 1-IC, 2-ALWAYS)

SMART_ACTION_SET_NPC_FLAG = 81, // Flags

SMART_ACTION_ADD_NPC_FLAG = 82, // Flags

SMART_ACTION_REMOVE_NPC_FLAG = 83, // Flags

SMART_ACTION_SIMPLE_TALK = 84, // Talk text by target. param1 - TextId. param3 - personal text target type(like cross cast). param4 - targetParam1. param5 - targetParam2. param6 - targetParam3.

SMART_ACTION_INVOKER_CAST = 85, // spellID, castFlags, if avaliable, last used invoker will cast spellId with castFlags on targets

SMART_ACTION_CROSS_CAST = 86, // spellID, castFlags, CasterTargetType, CasterTarget param1, CasterTarget param2, CasterTarget param3, ( + the origonal target fields as Destination target), CasterTargets will cast spellID on all Targets (use with caution if targeting multiple * multiple units)

SMART_ACTION_CALL_RANDOM_TIMED_ACTIONLIST = 87, // script9 ids 1-9

SMART_ACTION_CALL_RANDOM_RANGE_TIMED_ACTIONLIST = 88, // script9 id min, max

SMART_ACTION_RANDOM_MOVE = 89

Случайное передвижение

misc1 = расстояние
misc2 = 1 вкл бег, 0 выкл бег НЕ РАБОТАЕТ. ЮЗАТЬ МИСК 3
misc3 = Random Move Type - RANDOM_MOVE_DEFAULT = 0, RANDOM_MOVE_WALK_AND_RUN = 1, RANDOM_MOVE_WALK_ONLY = 2, RANDOM_MOVE_RUN_ONLY = 3

SMART_ACTION_SET_UNIT_FIELD_BYTES_1 = 90, // bytes, type (UNIT_BYTES_1_OFFSET_STAND_STATE = 0, UNIT_BYTES_1_OFFSET_PET_TALENTS = 1, UNIT_BYTES_1_OFFSET_VIS_FLAG = 2, UNIT_BYTES_1_OFFSET_ANIM_TIER = 3)

SMART_ACTION_REMOVE_UNIT_FIELD_BYTES_1 = 91, // bytes, type (UNIT_BYTES_1_OFFSET_STAND_STATE = 0, UNIT_BYTES_1_OFFSET_PET_TALENTS = 1, UNIT_BYTES_1_OFFSET_VIS_FLAG = 2, UNIT_BYTES_1_OFFSET_ANIM_TIER = 3)

SMART_ACTION_INTERRUPT_SPELL = 92,

SMART_ACTION_SEND_GO_CUSTOM_ANIM = 93, // anim id

SMART_ACTION_SET_DYNAMIC_FLAG = 94, // Flags

SMART_ACTION_ADD_DYNAMIC_FLAG = 95, // Flags

SMART_ACTION_REMOVE_DYNAMIC_FLAG = 96, // Flags

SMART_ACTION_JUMP_TO_POS = 97, // speedXY, speedZ, targetX, targetY, targetZ

SMART_ACTION_SEND_GOSSIP_MENU = 98, // menuId, optionId

SMART_ACTION_GO_SET_LOOT_STATE = 99, // state

SMART_ACTION_SEND_TARGET_TO_TARGET = 100, // id

SMART_ACTION_SET_HOME_POS = 101, // none

SMART_ACTION_SET_HEALTH_REGEN = 102, // 0/1

SMART_ACTION_SET_ROOT = 103, // off/on

SMART_ACTION_SET_GO_FLAG = 104, // Flags

SMART_ACTION_ADD_GO_FLAG = 105, // Flags

SMART_ACTION_REMOVE_GO_FLAG = 106, // Flags

SMART_ACTION_SUMMON_CREATURE_GROUP = 107, // Group, attackInvoker

SMART_ACTION_SET_POWER = 108, // PowerType, newPower

SMART_ACTION_ADD_POWER = 109, // PowerType, newPower

SMART_ACTION_REMOVE_POWER = 110, // PowerType, newPower

SMART_ACTION_GAME_EVENT_STOP = 111, // GameEventId

SMART_ACTION_GAME_EVENT_START = 112, // GameEventId

SMART_ACTION_START_CLOSEST_WAYPOINT = 113, // run?, wp1, wp2, wp3, wp4, wp5

SMART_ACTION_RISE_UP = 114, // distance

SMART_ACTION_MOVE_TO_HOME_POSITION = 115, // Target move to home pos. PointID, 0/1 - Run mode

SMART_ACTION_START_WAYPOINT_BETWEEN = 116, // Wp1, Wp2, Is Closest(1 = yes, 0 = no), run

SMART_ACTION_DISABLE_EVADE = 117, // 0/1 (1 = disabled, 0 = enabled)

SMART_ACTION_SET_GO_STATE = 118, // state

SMART_ACTION_SET_CAN_FLY = 119, // 0/1 (0 = disabled, 1 = enabled)

SMART_ACTION_SET_IN_COMBAT_WITH_PLAYERS = 120, // Range

SMART_ACTION_SET_PVP = 121, // 0/1 (0 = disabled, 1 = enabled)

SMART_ACTION_SET_CAN_ATTACK_IGNORE_CHECK = 122, // Can Attack Every Targets

SMART_ACTION_PLAY_ANIMKIT = 128, // id, type (0 = oneShot, 1 = aiAnim, 2 = meleeAnim, 3 = movementAnim)

SMART_ACTION_DESPAWN_SUMMONS = 129, // timerMs, byEntry

SMART_ACTION_SET_CONTROLLED = 130, // state, apply|remove

SMART_ACTION_MOVE_TO_POS_TARGET = 131, // pointId. Smart target move to position

SMART_ACTION_EXIT_VEHICLE = 132, // none

SMART_ACTION_SET_UNIT_MOVEMENT_FLAGS = 133, // flags

SMART_ACTION_SET_COMBAT_DISTANCE = 134, // combatDistance

SMART_ACTION_SET_CASTER_COMBAT_DIST = 135, // followDistance, resetToMax

SMART_ACTION_SET_LOOT_MODE = 136, // mode mask

SMART_ACTION_SET_HOVER = 141, // 0/1

SMART_ACTION_ADD_IMMUNITY = 142, // type, id, value

SMART_ACTION_REMOVE_IMMUNITY = 143, // type, id, value

SMART_ACTION_FALL = 144, //

SMART_ACTION_SET_EVENT_FLAG_RESET = 145, // 0/1

SMART_ACTION_ZONE_UNDER_ATTACK = 149,

SMART_ACTION_LOAD_GRID = 150,

SMART_ACTION_STOP_MOVING = 151,

SMART_ACTION_BOSS_EVADE = 200

Заставляет босса эвейднуться. Не имеет параметров.

SMART_ACTION_BOSS_ANOUNCE = 201

Делает анонс от лица босса в указанной локации указанного текста

tesxid - ид текста из trinity_strings, который будет заанонсен
area - арея, в которой будет анонс (по желанию). Если босс не в той арее, то анонса не будет
local - локализация
idsample - то, что будет указано перед самим текстом, так сказать, автор. Напрмер, если 3, то будет [SERVER]: {текст из tesxid}, если 4, то [Event Message]: {текст из tesxid}

SMART_ACTION_MOVE_Z  = 202

Своего рода передвижение "по воздуху", то есть, полёт или движение в указанную точку

target X
target Y
target Z

Координаты, куда переместится моб

flymode если 1 - полетит, если 0 - побежит.

SMART_ACTION_SET_KD = 203

"Вручает" игрокам в инсте, где происходят событие, КД на этот инст. Не имеет параметров

SMART_ACTION_SET_SCENATIO_ID = 204

Если в первом параметре выставить ид нужного сценария и использовать на игрока (таргет), то при попадании игроком в инст, где должен происходить указанный сценарий, сценарий запустится автоматически.

Как найти ИД сценарий?
  1. В снифах в пакете SMSG_SCENARIO_STATE идет его ИД
  2. В дбц LfgDungeons.db2(но тут сложнее так как там их много)

SMART_ACTION_UPDATE_ACHIEVEMENT_CRITERIA = 205

Активирует обновление критерия ачивки. Эту штуку можно использовать посути вообще для всего: как засчет шагов в сценарии, так и комплит каких-либо других критериев.

Параметры:
uint32 type; - тип критерия
  • ACHIEVEMENT_CRITERIA_TYPE_UPGRADE_GARRISON_BUILDING     = 168,
  • ACHIEVEMENT_CRITERIA_TYPE_CONSTRUCT_GARRISON_BUILDING   = 169,
  • ACHIEVEMENT_CRITERIA_TYPE_UPGRADE_GARRISON              = 170,
  • ACHIEVEMENT_CRITERIA_TYPE_START_GARRISON_MISSION        = 171,

Или которые используются иногда для сценариев, если там нету засчета по килу моба или касту спела

  • ACHIEVEMENT_CRITERIA_TYPE_SCRIPT_EVENT                  = 73
  • ACHIEVEMENT_CRITERIA_TYPE_SCRIPT_EVENT_2                = 92
uint32 misc1;
uint32 misc2;
uint32 misc3;

Это всевозможные параметры засчета. В основном misc1 - это количество, например убито мобов 1, 2 или 3

SMART_ACTION_SUMMON_CONVERSATION = 206

Принудительно-кастомный сумон конверсейшина. Как показала практика, не все они сумонятся из спелов.

Параметры:
uint32 id; ид конверсейшина. Берется только из снифов

Координаты, куда суммонить конверсейшин. Если они не указаны, то суммон идет под игрока (таргет).

int32 targetX;
int32 targetY;
int32 targetZ;

Зачем координаты?

В инсте суммон идет строго в одну точку. (вдруг близы забыли про спелл))) Если это всплывающая табличка, то координаты лучше не указывать, тогда будет суммон под игрока.

SMART_ACTION_SUMMON_ADD_PLR_PERSONNAL_VISIBILE  = 207

добавляет игрока в персональную фазу для этого моба. Иначе говоря, если использовать этот смарт на игрока, то ТОЛЬКО этот игрок сможет видеть данного моба.

SMART_ACTION_SUMMON_ARIATRIGGER  = 208

Параметры такие же, что и в 206 (конверсатион)

SMART_ACTION_JOIN_LFG  = 209

Присоеденить игрока к лфг

SMART_ACTION_CAST_CUSTOM = 210

SpellId, CastFlags, damageMin, damageMax, bp1, bp2

SMART_ACTION_CLEAR_QUEST = 211

Clear rewarded quest from player (quest ID)

SMART_ACTION_SUMMON_SCENE = 212

Summon Scene

SMART_ACTION_UNLEARN_SPELL = 213

Unlearn spells from player

SMART_ACTION_LEARN_SPELL = 214

Learn spells to player

SMART_ACTION_MOD_CURRENCY = 215

Modify currency to player by ID and count

SMART_ACTION_CIRCLE_PATH = 216

Radius, Clockwise, StepCount

SMART_ACTION_SET_OVERRIDE_ZONE_LIGHT = 217

zone Id, light Id, timer in milliseconds.

SMART_ACTION_SET_SPEED = 218

speedType, speed

SMART_ACTION_IGNORE_PATHFINDING = 219,

Вкл/откл игнорирование поиска путей

SMART_ACTION_SUMMON_CREATURE_IN_PERS_VISIBILITY  = 220

Суммон моба с инстантным добавлением игрока(суммонера) в персональную видимость. Важно! Таргет у данного смарта всегда 7(т.е. игрок). Моб суммонится строго по координатам из данных - targetX, targetY, targetZ, targetO.

Параметры:
uint32 misc1; id npc
uint32 misc2; тип призыва. пример: TEMPSUMMON_TIMED_DESPAWN
uint32 misc3; таймер(в мс).
uint32 misc4; добавить в лист суммонов(StorageID - 12 target_type)
uint32 misc5; взять фазы призывателя при суммоне. вряд ли пригодится, так как суммон находится в персональной фазе с игроком.
uint32 misc6; 1 - суммонить в точку где стоит нпц. 0 - будут браться координаты из 7 таргета

SMART_ACTION_START_TIMED_ACHIEVEMENT = 221,

Запуск таймера у ачивмента

misc1 = Тип таймед критерии

misc2 - id критерии

SMART_ACTION_SEND_GO_VISUAL_ID = 222,

Отправка GO визуала по ид

misc1 = visual id

misc1 - misc6 = quest ID's

SMART_ACTION_COMPLETE_QUEST = 223,

Выполнить квест(условия). Больше нужно для комплита хайден квестов.

misc1 - misc6 = quest ID's

SMART_ACTION_SET_HEALTH_IN_PERCENT = 224,

Установить значение ХП от максимального в процентах

misc1 = значение

SMART_ACTION_UPDATE_PLAYER_PHASES = 225,

Принудительное обновление фаз у игрока. Например для применение кондишена для какой-то фазы, которая еще не применена у игрока, но условия(например есть аура) для ее применения выполнены.

SMART_ACTION_SET_SPECIAL_DATA = 226,

Описание в 80 ивенте

misc1; // значение
misc2; // добавить +1 к текущему значению кастом даты у таргета


SMART_ACTION_SEND_LAST_INVOKER = 227,

отправить последнего инвокера указанной цели. пример: вы берете квест у нпц Х и вам необходимо, чтобы нпц У мог юзать вас в качестве таргета #7. Соответственно вы юзаете 227 экшн при взятии квеста у нпц Х и указываете в качестве таргета нпц У.

SMART_ACTION_KILLCREDIT_GO = 228,

Засчитать в квест использование ГО. Пример квеста: q38934

misc1; // ИД ГО

SMART_ACTION_MAKE_CASTER_AND_CAST_SPELL = 229,

на данный момент бесполезен

SMART_ACTION_MEET_QUEST_OBJECTIVE_AREATRIGGER = 230,

Использовать вместо устаревшего 15 экшена.

misc1; // Id квеста

SMART_ACTION_SUMMON_GO_IN_PERSONAL_VISIBILITY = 231,

суммон го в персональную видимость

misc1; // Id GO
misc2; // despawn timer

SMART_ACTION_SET_PET_MODE = 232,

Set pet mode. Movement speed like player speed and creature can assist in fight

SMART_ACTION_ADD_PHASE_ID = 233,

Добавить фазу PhaseId.

misc1; // PhaseId

SMART_ACTION_REMOVE_PHASE_ID = 234,

Удалить фазу PhaseId.

misc1; // PhaseId

SMART_ACTION_EJECT_PASSENGER = 235,

Высадить пассажира.

misc1; // Ид пассажирского места

SMART_ACTION_MOVE_FALL = 236,

Начать падение

SMART_ACTION_HIDE_FOR_PLAYER = 237,

Исчезнуть для игрока

misc1; // Время до появления в мс

SMART_ACTION_SET_SCENARIO_STEP = 238,

Перейти на этап сценария

misc1; // ид этапа

SMART_ACTION_RUN_RANDOM_DATA = 239,

Отправить случайную дату от 1 до ...

misc1; // значение 1
misc2; // значение 2

SMART_ACTION_RESET_DELAYED_ACTIONS = 241,

Сброс всех дэлэй операций

SMART_ACTION_RESET_TIMED_ACTIONLIST = 242,

Выполнить сброс time action листов

SMART_ACTION_SET_ESCORT_MODE = 243,

misc1; // радиус

Включить эскорт режим. Нпц будет делать паузу на вэйпоинтах до тех пор, пока игрока нет в установленном радиусе.

SMART_ACTION_SET_UPD_NON_AUTOMATIC_PHASE_TIMER = 244,

misc1; // таймер в мс

Смотреть описание 128 флага в Phase_definitions

SMART_ACTION_SET_IGNORE_PHASE_QUEST_UPDATE_MASK = 245,

misc1; // 1 вкл - 0 выкл

Вкл выкл игнорирование изменения статуса задания при обновлении фаз. Например: включаете этот параметр, у фазы 1234 условием является выполненный квест 9000, выполняете задание и фаза 1000 не наложится пока включен параметр. Если необходимо применить фазы, то отключаем параметр и принудительно обновляем фазы в ядре, смарт экшеном или спеллом.

SMART_ACTION_GO_TO_POINT_NEAR_OBJECT = 246,

// Go to point near object. Range, Walk(0 walk, 1 run)

SMART_ACTION_SET_TRACK_OWNER_QUEST_FOR_DESPAWN = 247, // QuestId(there may be a several ids), AddOrRemove(1 - add, 0 - remove).

SMART_ACTION_SET_SCALE = 248, // Set object scale. Value in action_param_float column

SMART_ACTION_MOD_SCALE = 249, // Mod object scale. Value in action_param_float column

SMART_ACTION_SET_CAN_DESPAWN_WHEN_LEAVE_VEHICLE = 250, // Creature can despawn when owner leave vehicle. 1 - can / 0 - can't despawn

SMART_ACTION_SET_PLAYER_CAN_ENTER_VEHICLE_ON_SUM= 251, // When player summons that vehicle he can instantly enter it. Can be used by event JUST_SUMMONED. 1 - can / 0 - can't insta enter

SMART_ACTION_SET_PAUSE_ON_WAYPOINT_DATA = 252, // Make pause on waypoints_data. 1 - can / 0 - can't move. param 2 pause time ms

SMART_ACTION_SET_PLAYER_CAN_UPDATE_PHASE = 253, // ZoneId. PhaseId. 0 - can't update, 1 - can update

SMART_ACTION_PLAY_EMOTE_PERSONAL = 254, // EmoteId, EmoteId, EmoteId, EmoteId, EmoteId, EmoteId. Play personal emote for targets. If more than emote id = play random emote

SMART_ACTION_SET_EVENT_PHASE_MASK = 255, // Value. Set event phase mask (1, 2, 4, 8...). Also can be multi, like 9, 12...

SMART_ACTION_ADD_OR_REMOVE_EVENT_PHASE_MASK = 256, // param1 - Add event phase mask, param2 - Remove event phase mask

SMART_ACTION_SET_PLAY_HOVER_ANIM = 257, // Play hover anim. 0 - off / 1 - on

SMART_ACTION_CAN_ENTER_SPECIAL_EVADE = 258, // Makes creature can enter special evade(boss like). Param1 - 1 - Enable / 0 - Disable special evade. Param2 - invisibility timer ms

SMART_ACTION_SET_VEHICLE_EXIT_POSITION = 259, // Set custom vehicle exit position. Param1 - UnitType(0 - all, 1 - creature, 2 - player). Param2 - Entry(0 for player). XYZO coordinates

SMART_ACTION_SET_CAN_FOLLOW_ON_SUMMON = 260, // 0 - off / 1 - on follow when creature summons

SMART_ACTION_SET_FIELD_STATE_ANIM_ID = 261, // Set UNIT_FIELD_STATE_ANIM_ID to units. Param1 - state anim ID

SMART_ACTION_MOVE_BACKWARD = 262, // Move backwards. param1 - pointId. x, y, z - point. action_param_float - move speed. (EFFECT_MOTION_TYPE)

SMART_ACTION_MOVE_CHARGE = 263, // Move charge. param1 - pointId. param2 - move target type. param3-5 - move target param. x, y, z - point. action_param_float - move speed. (EFFECT_MOTION_TYPE)

SMART_ACTION_GO_SEND_CUSTOM_ANIM = 264, // animId, playAsDespawn

SMART_ACTION_SET_CUSTOM_ATTACK_DISTANCE = 265, // Distance

SMART_ACTION_MOVE_CIRCLE = 266, // Radius, Walk, StepCount, Clockwise, Cyclic, PointId. action_param_float - Speed. X, Y, Z circle center

SMART_ACTION_SET_CAN_STOP_COMBAT_WHEN_EMPTY_THREAT = 267, // (0 - off, 1 - on) NPC combat stop when threatlist is empty

SMART_ACTION_COMBAT_STOP = 268, // No param

SMART_ACTION_ADD_QUEST_OBJECTIVE = 269, // QuestId, ObjectiveID(ID), AddCount, NeedSendPacket

SMART_ACTION_REMOVE_QUEST_OBJECTIVE = 270, // QuestId, ObjectiveID(ID), RemoveCount, NeedSendPacket

SMART_ACTION_DESTROY_FOR_PLAYER = 271, // Destroy for player SMSG_UPDATE_OBJECT

SMART_ACTION_PLAYER_ADD_TO_QUEST_HIDE_LIST = 272, // Hide for player target until he have quest. Quest ID.

SMART_ACTION_GO_PLAY_VISUAL_KIT = 273, // WorldEffectID, SpellVisualID, SpellStateVisualID, SpellStateAnimID, SpellStateAnimKitID, StateWorldEffectID

target_type

0 = SMART_TARGET_NONE

То же самое, что и SMART_TARGET_ACTION_INVOKER

1 = SMART_TARGET_SELF

Сам объект

2 = SMART_TARGET_VICTIM

Таргет объекта

3 = SMART_TARGET_HOSTILE_SECOND_AGGRO

Второй в списке угроз

4 = SMART_TARGET_HOSTILE_LAST_AGGRO

Последний в списке угроз

5 = SMART_TARGET_HOSTILE_RANDOM

Случайный из списка угроз

6 = SMART_TARGET_HOSTILE_RANDOM_NOT_TOP

Случайный из списка угроз, кроме цели

7 = SMART_TARGET_ACTION_INVOKER

Инвокер (тот, кто вызвал ивент смарта)

8 = SMART_TARGET_POSITION

Точка на карте

9 = SMART_TARGET_CREATURE_RANGE

NPC в кольце

   1. ID NPC
   2. Минимальное расстояние
   3. Максимальное расстояние
   4. Количество целей

10 = SMART_TARGET_CREATURE_GUID

NPC по гуиду

   1. GUID NPC

11 = SMART_TARGET_CREATURE_DISTANCE

NPC в радиусе

   1. ID NPC
   2. Радиус

12 = SMART_TARGET_STORED

Сохранённый объект до этого (Через SMART_ACTION_STORE_VARIABLE_DECIMAL и SMART_ACTION_STORE_TARGET_LIST, а также 6-й параметр в SMART_ACTION_SUMMON_CREATURE и SMART_ACTION_SUMMON_CREATURE_IN_PERS_VISIBILITY)

   1. ID из действий выше

13 = SMART_TARGET_GAMEOBJECT_RANGE

GO в кольце

   1. ID GO
   2. Минимальное расстояние
   3. Максимальное расстояние
   4. Количество целей

14 = SMART_TARGET_GAMEOBJECT_GUID

GO по гуиду

   1. GUID GO

15 = SMART_TARGET_GAMEOBJECT_DISTANCE

GO в радиусе

   1. ID GO
   2. Радиус

16 = SMART_TARGET_INVOKER_PARTY

Группа инвокера

17 = SMART_TARGET_PLAYER_RANGE

Игроки в кольце

   1. Минимальное расстояние
   2. Максимальное расстояние

18 = SMART_TARGET_PLAYER_DISTANCE

Игроки в радиусе

   1. Радиус
   2. Аура на игроках

19 = SMART_TARGET_CLOSEST_CREATURE

Ближайший NPC

   1. ID NPC
   2. Расстояние
   3. Живой (=0) или мёртвый (=1)

20 = SMART_TARGET_CLOSEST_GAMEOBJECT

Ближайший GO

   1. ID GO
   2. Расстояние
   3. Живой (=0) или мёртвый (=1)

21 = SMART_TARGET_CLOSEST_PLAYER

Ближайший игрок

   1. Расстояние

22 = SMART_TARGET_ACTION_INVOKER_VEHICLE

Транспорт инвокера

23 = SMART_TARGET_OWNER_OR_SUMMONER

Создатель или суммонер объекта

24 = SMART_TARGET_THREAT_LIST

Весь список угрозы

25 = SMART_TARGET_CLOSEST_ENEMY

Ближайший враг

   1. Расстояние

26 = SMART_TARGET_CLOSEST_FRIENDLY

Ближайший друг

   1. Расстояние

27 = SMART_TARGET_SAVED_THREAT_LIST

Список угрозы в течении всей жизни

   1. Удалить игроков из списка

28 = SMART_TARGET_PLAYER_INVOKER_SUMMON

Суммон игрока по ID. Используется, инвокер = моб, владелец которого является игрок

   1. NPC ID

125 = SMART_TARGET_HOSTILE_RANDOM_PLAYER

Случайный игрок в списке угрозы

126 = SMART_TARGET_HOSTILE_RANDOM_NOT_TOP_PLAYER

Случайный игрок в списке угрозы, кроме цели

127 = SMART_TARGET_HOSTILE_RANDOM_AURA

Случайный игрок в списке угрозы с аурой

   1. ID ауры
   2. Расстояние до цели
   3. Верхний в списке угрозы (=1) или нет (=0)

128 = SMART_TARGET_RANDOM_POSITION

Случайная позиция по параметрам (Работает для SMART_ACTION_SUMMON_CREATURE, SMART_ACTION_SUMMON_GO, SMART_ACTION_MOVE_TO_POS, SMART_ACTION_SUMMON_CREATURE_IN_PERS_VISIBILITY)

   https://egammi.com/image/qLZv
   1. Расстояние от выбранной точки
   2. Угол расстояния
   3. Расстояние до точки

129 = SMART_TARGET_TARGETUNIT

Цель цели

130 = SMART_TARGET_INVOKERS_OWNER

Создатель инвокера

131 = SMART_TARGET_INVOKERS_SUMMON_WITH_ENTRY

Суммон инвокера

   1. ID NPC

132 = SMART_TARGET_INVOKERS_PASSENGER

Пассажиры инвокера

   1. Место в транспорте

133 = SMART_TARGET_SUMMONERS_SUMMON_WITH_ENTRY

Суммон суммонера

   1. ID NPC

134 = SMART_TARGET_SUMMON_WITH_ENTRY

Суммон

   1. ID NPC

135 = SMART_TARGET_VEHICLE_ACCESSORY

Место в транспорте

   1. Место в транспорте

136 = SMART_TARGET_ALL_PLAYERS_IN_MAP

Все игроки на карте

137 = SMART_TARGET_RANDOM_CREATURE_BY_ENTRY

Случайный NPC

   1. ID NPC
   2. Расстояние
   3. Тип поиска (0 = все, 1 = живые, 2 = мёртвые)

138 = SMART_TARGET_RANDOM_PLAYER_IN_RANGE

Случайный игрок в радиусе

   1. Минимальное расстояние
   2. Максимальное расстояние

139 = SMART_TARGET_RANDOM_POS_TO_PLAYER_IN_RANGE

Случайная позиция по отношению к игроку

140 = SMART_TARGET_RANDOM_CREATURE_BETWEEN_ENTRIES

Случайный NPC

   1. ID NPC
   2. ID NPC
   3. ID NPC
   4. ID NPC

141 = SMART_TARGET_VEHICLE

Транспорт

142 = SMART_TARGET_INVOKERS_GO_SUMMON_WITH_ENTRY

Суммон инвокера

   1. ID GO


name id 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() is called
TEMPSUMMON_TIMED_OR_OWNER_DESPAWNS 9 despawns after a specified time or when owner despawns
TEMPSUMMON_TIMED_KILL_AND_DESPAWN 10 kills after specified time, then despawns after death timer