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
23518kill_tiered_prismatic_summon52163 60085–60114 ———
23525kill_tiered_prism_cling52184 60085–60114 ———
23515kill_tiered_prism_eyes52160 60085–60114 ———
23516kill_tiered_prism_rain52161 60085–60114 ———
23517kill_tiered_prism_rays52162 60085–60114 ———
23534kill_tiered_quicksand52207 60085–60114 ———
22978kill_tiered_quick_heal50883 60085–60114 ———
23994kill_tiered_radiant_glow52962 60085–60114 ———
24340kill_tiered_ranged_buff53704 60085–60114 ———
23078kill_tiered_rays_out51159 60085–60114 ———
24352kill_tiered_redirection53725 60085–60114 ———
24351kill_tiered_redirect_arrow_p2p53724 60085–60114 ———
23985kill_tiered_refreshment_summon52937 60085–60114 ———
24464kill_tiered_result_mysticism54044 60085–60114 ———
24164kill_tiered_resurrect_spirits53435 60085–60114 ———
23995kill_tiered_resurrect_swirls52963 60085–60114 ———
23214kill_tiered_rift51462 60085–60114 ———
24522kill_tiered_rift_crack54210 60085–60114 ———
24040kill_tiered_rings_shrinking53104 60085–60114 ———
23110kill_tiered_ring_blast_p2p51205 60085–60114 ———
24005kill_tiered_ring_shield52982 60085–60114 ———
24447kill_tiered_rock_blast53991 60085–60114 ———
23008kill_tiered_rock_shield50983 60085–60114 ———
24306kill_tiered_rock_skin_grow53661 60085–60114 ———
22987kill_tiered_root50906 60085–60114 ———
28236kill_tiered_root_shield65316 60085–60114 ———
23519kill_tiered_runed_shield52164 60085–60114 ———
22998kill_tiered_rune_base50952 60085–60114 ———
22931kill_tiered_rune_buff50768 60085–60114 ———
23026kill_tiered_rune_buff_brawler51034 60085–60114 ———
23102kill_tiered_rune_chain_swirl51190 60085–60114 ———
24214kill_tiered_rune_debuff_all53519 60085–60114 ———
23079kill_tiered_rune_drop_base51160 60085–60114 ———
23080kill_tiered_rune_forward51161 60085–60114 ———
22979kill_tiered_rune_in_buff50884 60085–60114 ———
22980kill_tiered_rune_out_buff50885 60085–60114 ———
23081kill_tiered_rune_rise_base51162 60085–60114 ———
23082kill_tiered_rune_rise_buff51163 60085–60114 ———
23083kill_tiered_rune_root51164 60085–60114 ———
23119kill_tiered_rune_spikes_swirl51221 60085–60114 ———
23084kill_tiered_rune_swirl51165 60085–60114 ———
24028kill_tiered_run_speed_buff53074 60085–60114 ———
24467kill_tiered_sanction_of_merit54056 60085–60114 ———
24053kill_tiered_sandstorm53135 60085–60114 ———
24006kill_tiered_scimitar_exploding52983 60085–60114 ———
24007kill_tiered_scimitar_smite52984 60085–60114 ———
23030kill_tiered_second_skin51045 60085–60114 ———
23085kill_tiered_self_lifetap51166 60085–60114 ———
24215kill_tiered_shadow_curse53520 60085–60114 ———
24307kill_tiered_shaky_notes53662 60085–60114 ———
24155kill_tiered_shaman_wheel_base53408 60085–60114 ———
22916kill_tiered_shield50734 60085–60114 ———
25680kill_tiered_shield_barrier_buff57103 60085–60114 ———
22918kill_tiered_shield_blast50743 60085–60114 ———
24341kill_tiered_shimmer_arrow_p2p53705 60085–60114 ———
24353kill_tiered_shoot_arrow_rain53726 60085–60114 ———
24365kill_tiered_shoot_daggers53756 60085–60114 ———
22902kill_tiered_shout50708 60085–60114 ———
23535kill_tiered_shrink52208 60085–60114 ———
24216kill_tiered_shroud53521 60085–60114 ———
23052kill_tiered_skull51095 60085–60114 ———
22992kill_tiered_skull_lifetap50925 60085–60114 ———
24456kill_tiered_skull_p2p54018 60085–60114 ———
23215kill_tiered_skull_summon51463 60085–60114 ———
23216kill_tiered_skull_swirls51464 60085–60114 ———
24296kill_tiered_slashing_blade53633 60085–60114 ———
24366kill_tiered_slashing_daggers53757 60085–60114 ———
22917kill_tiered_slash_hit50735 60085–60114 ———
24377kill_tiered_slash_trail53792 60085–60114 ———
24389kill_tiered_slash_trail_dark53813 60085–60114 ———
22919kill_tiered_slow50744 60085–60114 ———
24342kill_tiered_slow_arrow_p2p53706 60085–60114 ———
23996kill_tiered_small_heal52964 60085–60114 ———
24503kill_tiered_smashing_hammers54133 60085–60114 ———
24014kill_tiered_smite_blobs_p2p53009 60085–60114 ———
23997kill_tiered_smite_hit52965 60085–60114 ———
23986kill_tiered_smite_p2p52938 60085–60114 ———
24378kill_tiered_snow_dagger_p2p53793 60085–60114 ———
24086kill_tiered_snow_tempest53185 60085–60114 ———
23031kill_tiered_sonic_punch51046 60085–60114 ———
23998kill_tiered_soothe52966 60085–60114 ———
24297kill_tiered_sound_rings_head53634 60085–60114 ———
22999kill_tiered_sparkle_cling50953 60085–60114 ———
23027kill_tiered_sparkle_scan_up51035 60085–60114 ———
23017kill_tiered_sparkle_swirl51006 60085–60114 ———
22903kill_tiered_sparkle_trail_weapon50709 60085–60114 ———
24343kill_tiered_sparkle_trail_weapon_blend53707 60085–60114 ———
22904kill_tiered_sparks_hit50710 60085–60114 ———
24298kill_tiered_spark_burst53635 60085–60114 ———
22981kill_tiered_speed50886 60085–60114 ———
22982kill_tiered_spikes_hit50887 60085–60114 ———
23120kill_tiered_spikes_root51222 60085–60114 ———
24372kill_tiered_spin_dagger_blast53772 60085–60114 ———
24046kill_tiered_spin_runed_shield53119 60085–60114 ———
24379kill_tiered_spin_shield_buff53794 60085–60114 ———
23520kill_tiered_spin_stat_buff52165 60085–60114 ———
24171kill_tiered_spirits_p2p53451 60085–60114 ———
24047kill_tiered_spirit_bear53120 60085–60114 ———
24088kill_tiered_spirit_cat53196 60085–60114 ———
24094kill_tiered_spirit_cheetah53211 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.