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
19682kill_gemsparkle44409 60085–60114 ———
5209kill_gemsparkle_fail135204 1–843 ———
19683kill_gemsparkle_fail144410 60085–60114 ———
5210kill_gemsparkle_fail235205 1–843 ———
19684kill_gemsparkle_fail244411 60085–60114 ———
5211kill_gemsparkle_go35206 1–843 ———
19685kill_gemsparkle_go44412 60085–60114 ———
5208kill_gem_glow35203 1–843 ———
19681kill_gem_glow44408 60085–60114 ———
6359kill_ghost_carpet38218 1–843 ———
19686kill_ghost_carpet44413 60085–60114 ———
5517kill_ghost_die35669 1–843 ———
19687kill_ghost_die44414 60085–60114 ———
21987kill_ghost_idle48757 60085–60114 ———
5518kill_ghost_loop35670 1–843 ———
19688kill_ghost_loop44415 60085–60114 ———
3636kill_giggle33077 1–843 ———
19689kill_giggle44416 60085–60114 ———
26961kill_giggling60165 60085–60114 ———
3637kill_glare33078 1–843 ———
19690kill_glare44417 60085–60114 ———
6103kill_glide37141 1–843 ———
19691kill_glide44418 60085–60114 ———
22262kill_glint49314 60085–60114 ———
4486kill_glow34294 1–843 ———
19692kill_glow44419 60085–60114 ———
31196kill_glow_eyes8482750 60085–60114 ———
4727kill_glow_top34599 1–843 ———
19693kill_glow_top44420 60085–60114 ———
27016kill_gnome_clockwork_gears_blast60391 60085–60114 ———
21519kill_gnome_female_2h_sword_wild_swing46589 60085–60114 ———
21538kill_gnome_female_pike_charge_up46628 60085–60114 ———
21539kill_gnome_female_pike_defensive_buff46629 60085–60114 ———
21540kill_gnome_female_pike_offensive_buff46630 60085–60114 ———
21494kill_gnome_forestry_success46554 60085–60114 ———
26989kill_gnome_hands_trail_clockwork_blast60268 60085–60114 ———
19694kill_go44421 60085–60114 ———
30414kill_goblin_burp8455312 60085–60114 ———
30415kill_goblin_drink8455313 60085–60114 ———
30416kill_goblin_duck8455314 60085–60114 ———
30417kill_goblin_foley_hand_pat8455315 60085–60114 ———
30418kill_goblin_footsteps8455316 60085–60114 ———
30419kill_goblin_laugh8455317 60085–60114 ———
30420kill_goblin_ouch8455318 60085–60114 ———
30421kill_goblin_rude8455319 60085–60114 ———
30422kill_goblin_sad8455320 60085–60114 ———
30860kill_gold_trail_fx8469822 60085–60114 ———
22528kill_golem_charm49741 60085–60114 ———
26498kill_golem_fx_tubes58527 60085–60114 ———
25907kill_golem_kick57789 60085–60114 ———
22529kill_golem_shutdown49742 60085–60114 ———
26499kill_golem_summon_fx58528 60085–60114 ———
23786kill_good_theer_energy_buff52598 60085–60114 ———
22023kill_goo_arm_buff48865 60085–60114 ———
23923kill_gorgon_attack_roar_0152816 60085–60114 ———
23924kill_gorgon_attack_roar_0252817 60085–60114 ———
23925kill_gorgon_breath_in52818 60085–60114 ———
23926kill_gorgon_breath_out_long52819 60085–60114 ———
23927kill_gorgon_breath_out_short52820 60085–60114 ———
23928kill_gorgon_cast_roar_0152821 60085–60114 ———
23929kill_gorgon_chewing_close52822 60085–60114 ———
23930kill_gorgon_chewing_open52823 60085–60114 ———
23931kill_gorgon_death52824 60085–60114 ———
23932kill_gorgon_footscrape52826 60085–60114 ———
23933kill_gorgon_footstep_deep52827 60085–60114 ———
23934kill_gorgon_footstep_metal52828 60085–60114 ———
23935kill_gorgon_hooves52829 60085–60114 ———
23936kill_gorgon_kick_swish52830 60085–60114 ———
23937kill_gorgon_metal_movement52831 60085–60114 ———
23938kill_gorgon_metal_movement_deep52832 60085–60114 ———
23939kill_gorgon_metal_movement_long52833 60085–60114 ———
23940kill_gorgon_metal_movement_quiet52834 60085–60114 ———
23941kill_gorgon_metal_scrape52835 60085–60114 ———
23942kill_gorgon_ouch_headshake52836 60085–60114 ———
23943kill_gorgon_ouch_impact52837 60085–60114 ———
23944kill_gorgon_snort52838 60085–60114 ———
23945kill_gorgon_snort_big52839 60085–60114 ———
23946kill_gorgon_swim52840 60085–60114 ———
19695kill_go_down44422 60085–60114 ———
6125kill_green_fire37272 1–843 ———
19696kill_green_fire44423 60085–60114 ———
5212kill_green_smoke35207 1–843 ———
19697kill_green_smoke44424 60085–60114 ———
24222kill_griffin_backup53549 60085–60114 ———
24223kill_griffin_fall53550 60085–60114 ———
24224kill_griffin_fly_backup53551 60085–60114 ———
24225kill_griffin_fly_dive53552 60085–60114 ———
24226kill_griffin_fly_enter53553 60085–60114 ———
24227kill_griffin_fly_fall53554 60085–60114 ———
24228kill_griffin_fly_glide53555 60085–60114 ———
24229kill_griffin_fly_idle53556 60085–60114 ———
24230kill_griffin_fly_idle0153557 60085–60114 ———
24231kill_griffin_fly_jump53558 60085–60114 ———
24232kill_griffin_fly_jumpsubstitute53559 60085–60114 ———
24233kill_griffin_fly_run53560 60085–60114 ———
24234kill_griffin_fly_turn_left53561 60085–60114 ———
24235kill_griffin_fly_turn_right53562 60085–60114 ———
24422kill_griffin_fly_up53910 60085–60114 ———
24236kill_griffin_fly_walk53563 60085–60114 ———
21954kill_griffin_glide48689 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.