Skip to main content

Elite Script Events

EliteScripts are event-based. This means that they are launched when a specific event is triggered. The following are the currently valid events:

EventDetailsDirect Target [?]
EliteMobDamagedByEliteMobEventElite damaged by another elite
EliteMobDamagedByPlayerEventElite damaged by a playerDamaging player
EliteMobDamagedEventElite damaged by anything
EliteMobDeathEventElite death
EliteMobEnterCombatEventElite enter combat with playerEngaging player
EliteMobExitCombatEventElite exit combat
EliteMobHealEventElite heal (including full heal)
EliteMobSpawnEventElite spawn
EliteMobTargetPlayerEventElite target playerTargeted player
PlayerDamagedByEliteMobEventElite damage playerDamaged player
ElitePhaseSwitchEventBoss spawn from phase switch
ZoneEnterEvent (ScriptZoneEnterEvent)Entity enters zone. Requires a zone to be set!Entity that entered the zone
ZoneLeaveEvent (ScriptZoneLeaveEvent)Entity leaves zone. Requires a zone to be set!Entity that left the zone

Note: "Elite" refers to any aggressive entity spawned by the plugin, no matter if they're a reinforcement, a boss or anything else. Note: ZoneEnterEvent and ZoneLeaveEvent are computationally expensive to run so please use these sparingly!

Direct Target is used by the Script Targets, more on that here.

Note: EliteMobDamagedEvent triggers when an elite takes damage from ANY source, while EliteMobDamagedByPlayerEvent and EliteMobDamagedByEliteMobEvent are more specific versions that trigger only for player or elite mob damage respectively.

ZoneEnterEvent and ZoneLeaveEvent are special events that allow scripters to trigger actions based on entities entering and leaving zones set in scripts. The DIRECT_TARGET of ZoneEnterEvent and ZoneLeaveEvent is the entity that entered or left (this means you can't use the direct target as the target of the zone), and due to how the internal logic works only absolute points (specific coordinates) and points relative to the boss can be used for scanning entering and leaving (cannot use zones that target players).

There can only be one Event section per script. However, several events can be set as triggers for a script:

Example
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
- EliteMobTargetPlayerEvent
Actions:
- action: PUSH
Target:
targetType: SELF
vValue: 0,.3,0
Cooldowns:
local: 60
global: 20

This script would make the elite jump when hit by a player or when targeting a player.