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
24174kill_tiered_spirit_circle_summon53463 60085–60114 ———
24460kill_tiered_spirit_dragon54031 60085–60114 ———
24089kill_tiered_spirit_eel53197 60085–60114 ———
24165kill_tiered_spirit_elephant53436 60085–60114 ———
24175kill_tiered_spirit_growing53464 60085–60114 ———
24162kill_tiered_spirit_heal53424 60085–60114 ———
24048kill_tiered_spirit_lion53121 60085–60114 ———
24095kill_tiered_spirit_lion_summon53212 60085–60114 ———
25694kill_tiered_spirit_pets_summon57153 60085–60114 ———
24156kill_tiered_spirit_summon53409 60085–60114 ———
24157kill_tiered_spirit_swirl_hit53410 60085–60114 ———
24166kill_tiered_spirit_swirl_shield53437 60085–60114 ———
28230kill_tiered_spirit_tiger_lounging65247 60085–60114 ———
24096kill_tiered_spirit_tree53213 60085–60114 ———
24170kill_tiered_spirit_tube53450 60085–60114 ———
24029kill_tiered_spirit_wolf53075 60085–60114 ———
24054kill_tiered_spirit_wolf_summon53136 60085–60114 ———
24299kill_tiered_stabbing_blades53636 60085–60114 ———
23086kill_tiered_stamina_buff51167 60085–60114 ———
23009kill_tiered_stance_base50984 60085–60114 ———
24090kill_tiered_starfire53198 60085–60114 ———
24457kill_tiered_starnova_p2p54019 60085–60114 ———
22983kill_tiered_stifle50888 60085–60114 ———
24380kill_tiered_storm_waves53795 60085–60114 ———
24381kill_tiered_stream_throw_attack_p2p53796 60085–60114 ———
23087kill_tiered_strength_buff51168 60085–60114 ———
23523kill_tiered_stunned52175 60085–60114 ———
23529kill_tiered_sucking_tube_p2p52195 60085–60114 ———
24091kill_tiered_sun_nova53199 60085–60114 ———
24087kill_tiered_swarm_p2p53186 60085–60114 ———
24022kill_tiered_swirly_heal53044 60085–60114 ———
24023kill_tiered_swirly_power_heal53045 60085–60114 ———
24041kill_tiered_swirly_wisps53105 60085–60114 ———
24382kill_tiered_swords_buff53797 60085–60114 ———
22905kill_tiered_taunt50711 60085–60114 ———
24383kill_tiered_teeth_glint53798 60085–60114 ———
24097kill_tiered_thunder_cloud53214 60085–60114 ———
24008kill_tiered_timer52985 60085–60114 ———
23999kill_tiered_toxin_out52967 60085–60114 ———
24055kill_tiered_tranquility53137 60085–60114 ———
24354kill_tiered_triple_arrow_p2p53727 60085–60114 ———
28155kill_tiered_truespirit_arrow_barrage64892 60085–60114 ———
23574kill_tiered_undead_tide52261 60085–60114 ———
23201kill_tiered_unyielding_will51422 60085–60114 ———
23575kill_tiered_vampirism_p2p52262 60085–60114 ———
23521kill_tiered_vanish_reappear52166 60085–60114 ———
25712kill_tiered_vine_net57243 60085–60114 ———
30654kill_tiered_vortex_p2p8460475 60085–60114 ———
24000kill_tiered_water_bubble52968 60085–60114 ———
23043kill_tiered_water_burst51072 60085–60114 ———
23032kill_tiered_wavy_shield_out51047 60085–60114 ———
24448kill_tiered_weakness53992 60085–60114 ———
24344kill_tiered_weapon_blood_lust53708 60085–60114 ———
23088kill_tiered_weapon_buff_charge51169 60085–60114 ———
22906kill_tiered_weapon_trail_fire50712 60085–60114 ———
24465kill_tiered_whip_circling54045 60085–60114 ———
24449kill_tiered_whip_dark53993 60085–60114 ———
23103kill_tiered_windy_tube_p2p51191 60085–60114 ———
23089kill_tiered_wisdom_buff51170 60085–60114 ———
24030kill_tiered_wood_root53076 60085–60114 ———
24056kill_tiered_wood_root_grow53138 60085–60114 ———
24042kill_tiered_wood_spikes53106 60085–60114 ———
25777kill_tiger_attack_snd57407 60085–60114 ———
6521kill_tiger_idle39041 1–843 ———
21103kill_tiger_idle45834 60085–60114 ———
6522kill_tiger_run39042 1–843 ———
21104kill_tiger_run45835 60085–60114 ———
6523kill_tiger_walk39043 1–843 ———
21105kill_tiger_walk45836 60085–60114 ———
26842kill_time_stop_sound59790 60085–60114 ———
27785kill_tinkered_barrel_mount_backup63625 60085–60114 ———
27786kill_tinkered_barrel_mount_fall63626 60085–60114 ———
27787kill_tinkered_barrel_mount_fly_backup63627 60085–60114 ———
27788kill_tinkered_barrel_mount_fly_climb63628 60085–60114 ———
27789kill_tinkered_barrel_mount_fly_dive63629 60085–60114 ———
27790kill_tinkered_barrel_mount_fly_down63630 60085–60114 ———
27791kill_tinkered_barrel_mount_fly_glide63631 60085–60114 ———
27792kill_tinkered_barrel_mount_fly_glide_left63632 60085–60114 ———
27793kill_tinkered_barrel_mount_fly_glide_right63633 60085–60114 ———
27794kill_tinkered_barrel_mount_fly_idle63634 60085–60114 ———
27795kill_tinkered_barrel_mount_fly_run63635 60085–60114 ———
27796kill_tinkered_barrel_mount_fly_strafe_left63636 60085–60114 ———
27797kill_tinkered_barrel_mount_fly_strafe_right63637 60085–60114 ———
27798kill_tinkered_barrel_mount_fly_turn_left63638 60085–60114 ———
27799kill_tinkered_barrel_mount_fly_turn_right63639 60085–60114 ———
27800kill_tinkered_barrel_mount_fly_up63640 60085–60114 ———
27801kill_tinkered_barrel_mount_fly_walk63641 60085–60114 ———
27802kill_tinkered_barrel_mount_glide63642 60085–60114 ———
27803kill_tinkered_barrel_mount_glide_left63643 60085–60114 ———
27804kill_tinkered_barrel_mount_glide_right63644 60085–60114 ———
27805kill_tinkered_barrel_mount_idle63645 60085–60114 ———
27806kill_tinkered_barrel_mount_jump63646 60085–60114 ———
27807kill_tinkered_barrel_mount_land63647 60085–60114 ———
27808kill_tinkered_barrel_mount_long_fall63648 60085–60114 ———
27809kill_tinkered_barrel_mount_run63649 60085–60114 ———
27810kill_tinkered_barrel_mount_turn_left63650 60085–60114 ———
27811kill_tinkered_barrel_mount_turn_right63651 60085–60114 ———
27812kill_tinkered_barrel_mount_walk63652 60085–60114 ———
6261kill_tod_explode_snd37584 1–843 ———
21106kill_tod_explode_snd45837 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.