Reference library

Emotes and animations.

Search the configured world’s emotes table by name, row ID, visual state ID or message. Each row maps a name to an animation for a client version range.

  • 31,574 mappings
  • 25,249 unique names
  • 220 mappings with chat text
  • 31,354 animation-only mappings

Snapshot: October 14, 2026. These are database mappings; a client’s models and assets determine what can actually render. A listed name does not automatically register a player slash command.

Table fields and usage ↓

Build filtering uses the stored inclusive range: minimum ≤ build ≤ maximum. A maximum of 0 means no upper limit. Leave the build blank to compare all mappings for a name.

31,574 matching mappings.

Available mappings from the world database snapshot. Empty message fields are shown as —.
Row IDNameVisual state IDClient build rangeMessageTargeted messageStored self message
22453kill_design_cast_vision_shardofhate49575 60085–60114 ———
22778kill_design_chained50441 60085–60114 ———
22777kill_design_chain_release50440 60085–60114 ———
31046kill_design_chandelier_drop8479986 60085–60114 ———
31047kill_design_chandelier_idle8479987 60085–60114 ———
21992kill_design_charasis_beams_purple48771 60085–60114 ———
21993kill_design_charasis_beams_turquoise48772 60085–60114 ———
22007kill_design_charasis_theater_fx48814 60085–60114 ———
22008kill_design_charasis_vision_fens48815 60085–60114 ———
22009kill_design_charasis_vision_jarsath48816 60085–60114 ———
22010kill_design_charasis_vision_kunzar48817 60085–60114 ———
22011kill_design_charasis_vision_kylong48818 60085–60114 ———
22005kill_design_charasis_windfan_fx48807 60085–60114 ———
24138kill_design_chessboard_collapse_fx53343 60085–60114 ———
24139kill_design_chessboard_static_fx53344 60085–60114 ———
25160kill_design_chronoportal_rift55713 60085–60114 ———
27070kill_design_circle_warning_zone60690 60085–60114 ———
27133kill_design_circle_warning_zone_blue60927 60085–60114 ———
27134kill_design_circle_warning_zone_gold60928 60085–60114 ———
23243kill_design_clouds_parting51531 60085–60114 ———
26940kill_design_cloudy_dream60027 60085–60114 ———
31304kill_design_cocoon_unravel18483743 60085–60114 ———
31305kill_design_cocoon_unravel28483744 60085–60114 ———
31306kill_design_cocoon_unravel38483745 60085–60114 ———
31307kill_design_cocoon_unravel48483746 60085–60114 ———
23253kill_design_coffin_lid51558 60085–60114 ———
23238kill_design_coin_drop51516 60085–60114 ———
24775kill_design_coldain_prayer_shawl54682 60085–60114 ———
24783kill_design_coldain_ring_adamantium54700 60085–60114 ———
24784kill_design_coldain_ring_copper54701 60085–60114 ———
24785kill_design_coldain_ring_frostreaver54702 60085–60114 ———
24786kill_design_coldain_ring_gold54703 60085–60114 ———
24787kill_design_coldain_ring_hero54704 60085–60114 ———
24788kill_design_coldain_ring_mithril54705 60085–60114 ———
24789kill_design_coldain_ring_obsidian54706 60085–60114 ———
24790kill_design_coldain_ring_platinum54707 60085–60114 ———
24791kill_design_coldain_ring_silver54708 60085–60114 ———
24792kill_design_coldain_ring_velium54709 60085–60114 ———
27419kill_design_comm_on62042 60085–60114 ———
30282kill_design_comm_on_drinal8454816 60085–60114 ———
26830kill_design_corrupted59699 60085–60114 ———
24394kill_design_crater_blast53840 60085–60114 ———
23371kill_design_crossed_swords51855 60085–60114 ———
24469kill_design_crow_shoulder54064 60085–60114 ———
25106kill_design_crysal_wall55585 60085–60114 ———
24132kill_design_crystal_drop_impact53328 60085–60114 ———
30799kill_design_crystal_explode8467563 60085–60114 ———
25107kill_design_crystal_wall55586 60085–60114 ———
31442kill_design_cylinder_spawn_warning8485768 60085–60114 ———
26952kill_design_damage_level160134 60085–60114 ———
26953kill_design_damage_level260135 60085–60114 ———
26954kill_design_damage_level360136 60085–60114 ———
26955kill_design_damage_level460137 60085–60114 ———
26956kill_design_damage_level560138 60085–60114 ———
30712kill_design_dark_cloudy_vortex_floor8463920 60085–60114 ———
30998kill_design_dark_froth8476202 60085–60114 ———
25102kill_design_dark_ice_wall55574 60085–60114 ———
30897kill_design_dark_mine_alert8471340 60085–60114 ———
27025kill_design_dark_portal60443 60085–60114 ———
30894kill_design_dark_purple_mist8471170 60085–60114 ———
23048kill_design_dark_rez51089 60085–60114 ———
23246kill_design_death_beam_p2p51539 60085–60114 ———
30735kill_design_debuff_disease_poison8464899 60085–60114 ———
30736kill_design_debuff_fire_ice8464900 60085–60114 ———
30737kill_design_debuff_magic_mental8464901 60085–60114 ———
30707kill_design_dirt_rock_wall8463685 60085–60114 ———
30708kill_design_dirt_rock_wall_collapse8463686 60085–60114 ———
31657kill_design_disease_portal8493792 60085–60114 ———
27195kill_design_distorted61189 60085–60114 ———
24986kill_design_distort_face55289 60085–60114 ———
27228kill_design_divine_barrier61338 60085–60114 ———
24523kill_design_djinn_pod_cloud54217 60085–60114 ———
28107kill_design_dome_of_silence64592 60085–60114 ———
30726kill_design_door_barrier_purple8464557 60085–60114 ———
30727kill_design_door_barrier_red8464558 60085–60114 ———
30728kill_design_door_barrier_yellow8464559 60085–60114 ———
28028kill_design_door_smoke64165 60085–60114 ———
30593kill_design_dragon_teleport8457764 60085–60114 ———
23967kill_design_drain_theer_fx52891 60085–60114 ———
27638kill_design_drake_flame_attack0162946 60085–60114 ———
27639kill_design_drake_flame_attack0262947 60085–60114 ———
25333kill_design_drake_pet56256 60085–60114 ———
27214kill_design_drinals_floor_panel_blue61253 60085–60114 ———
27215kill_design_drinals_floor_panel_challege_blue61254 60085–60114 ———
27216kill_design_drinals_floor_panel_challege_red61255 60085–60114 ———
27217kill_design_drinals_floor_panel_red61256 60085–60114 ———
27181kill_design_drinals_portal61099 60085–60114 ———
27218kill_design_drinals_vessel_arc_blue61257 60085–60114 ———
27219kill_design_drinals_vessel_arc_red61258 60085–60114 ———
24140kill_design_druidring_burst_fx53345 60085–60114 ———
24141kill_design_druidring_fx53346 60085–60114 ———
30616kill_design_druid_ring_static8458978 60085–60114 ———
30608kill_design_dust_spray8458193 60085–60114 ———
31378kill_design_earthquake_area8484312 60085–60114 ———
25208kill_design_eastern_wastes_spire_portal55825 60085–60114 ———
30194kill_design_egg_shake8454566 60085–60114 ———
30195kill_design_egg_splode8454567 60085–60114 ———
25076kill_design_electric_barrier55464 60085–60114 ———
23002kill_design_electric_barrier_round50968 60085–60114 ———
24397kill_design_electro_disease_portal53850 60085–60114 ———
Table fields and server behavior
Schema from the same database snapshot.
ColumnSQL typeMeaning
idint(10) unsigned Auto-increment primary key for the database row. This is not the animation ID.
namevarchar(128)
Nullable
Exact name used by the server’s animation lookup. The same name can have separate rows for different client builds.
visual_state_idint(10) unsigned Numeric animation ID sent in WS_CannedEmote for the selected mapping. IDs can change between version ranges.
messagevarchar(255)
Nullable
Default chat text, used without a different target or when targeted_message is empty. The server prefixes the originator’s name for player emotes.
targeted_messagevarchar(255)
Nullable
Chat text used when a different target exists. The %t placeholder is replaced with the target’s name.
self_messagevarchar(255)
Nullable
Stored database field. The current WorldDatabase loader does not select it and HandleEmote does not use it.
min_version_rangeint(10) unsigned Inclusive lowest client build for this mapping; 0 allows builds from zero upward.
max_version_rangeint(10) unsigned Inclusive highest client build; 0 means no upper limit.

Using a named animation

For example, wave maps to visual state 883 for builds 1–843 and 13287 for builds 60085–60114 in this snapshot. Search a name with the build left blank to see its variants.

In Lua, PlayAnimationString resolves the name through the emote catalog. This example plays the named animation without using the spawn’s current target:

PlayAnimationString(Spawn, "wave", nil, true)

Player canned emotes use /cannedemote wave. The separate /emote command sends custom chat text. For NPCs, HandleEmote sends the animation with an empty emote message.

Message placeholders: %t is the target’s name; %g1 becomes his/her, %g2 becomes him/her, and %g3 becomes he/she, using the originator’s gender. The current handler replaces the first occurrence of each placeholder.

The “With chat text” filter includes rows with a nonempty message or targeted_message. “Animation only” means both fields are empty. Stored self_message does not affect either filter.

Build filtering shows literal database ranges. FindAnimation also has a narrow verified fallback for bow_knockedtoback in builds 562–935 when no direct mapping exists; it does not make all modern mappings available to those builds.

Source: configured local world emotes table, exported read-only on October 14, 2026. Runtime behavior checked against WorldServer/WorldDatabase.cpp, WorldServer/Spawn/VisualStates.h, WorldServer/Zone/zoneserver.cpp, WorldServer/Commands/Commands.cpp and WorldServer/Lua/LuaFunctions.cpp. Other worlds can have different mappings.