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
21487kill_lights_gold46518 60085–60114 ———
21488kill_lights_gold_slow46519 60085–60114 ———
22714kill_lights_pumpkin50295 60085–60114 ———
21489kill_lights_red46520 60085–60114 ———
21490kill_lights_red_slow46521 60085–60114 ———
21478kill_lights_spiral46489 60085–60114 ———
21491kill_lights_white46522 60085–60114 ———
21492kill_lights_white_slow46523 60085–60114 ———
19829kill_light_torch44557 60085–60114 ———
26908kill_lion_winged_backup59920 60085–60114 ———
26909kill_lion_winged_fly_backup59921 60085–60114 ———
26910kill_lion_winged_fly_idle59922 60085–60114 ———
26911kill_lion_winged_fly_run59923 60085–60114 ———
26912kill_lion_winged_fly_strafe_left59924 60085–60114 ———
26913kill_lion_winged_fly_strafe_right59925 60085–60114 ———
26914kill_lion_winged_fly_turn_left59926 60085–60114 ———
26915kill_lion_winged_fly_turn_right59927 60085–60114 ———
26916kill_lion_winged_fly_walk59928 60085–60114 ———
26917kill_lion_winged_idle0159929 60085–60114 ———
26918kill_lion_winged_jump59930 60085–60114 ———
26919kill_lion_winged_jump_substitute59931 60085–60114 ———
26920kill_lion_winged_run59932 60085–60114 ———
26921kill_lion_winged_turn_left59933 60085–60114 ———
26922kill_lion_winged_turn_right59934 60085–60114 ———
26923kill_lion_winged_walk59935 60085–60114 ———
30315kill_liquid_whoosh01_snd8454851 60085–60114 ———
30316kill_liquid_whoosh02_snd8454852 60085–60114 ———
30317kill_liquid_whoosh03_snd8454853 60085–60114 ———
30318kill_liquid_whoosh_slow_snd8454854 60085–60114 ———
3672kill_listen33121 1–843 ———
19833kill_listen44561 60085–60114 ———
25232kill_listening55884 60085–60114 ———
27996kill_lizardkin_1h_sword_attack64104 60085–60114 ———
27997kill_lizardkin_1h_sword_attack_0164105 60085–60114 ———
27998kill_lizardkin_1h_sword_attack_0264106 60085–60114 ———
27999kill_lizardkin_1h_sword_attack_0364107 60085–60114 ———
28000kill_lizardkin_1h_sword_enter64108 60085–60114 ———
28001kill_lizardkin_bow_attack64109 60085–60114 ———
28002kill_lizardkin_bow_enter64110 60085–60114 ———
28003kill_lizardkin_bow_exit64111 60085–60114 ———
28004kill_lizardkin_cast64112 60085–60114 ———
28005kill_lizardkin_charge_up64113 60085–60114 ———
28006kill_lizardkin_death_enter64114 60085–60114 ———
28007kill_lizardkin_dodge_backhand64115 60085–60114 ———
28008kill_lizardkin_dodge_down64116 60085–60114 ———
28009kill_lizardkin_dodge_forehand64117 60085–60114 ———
28010kill_lizardkin_dodge_thrust64118 60085–60114 ———
28011kill_lizardkin_footstep64119 60085–60114 ———
28012kill_lizardkin_get_up64120 60085–60114 ———
28013kill_lizardkin_jump64121 60085–60114 ———
28014kill_lizardkin_knockback_get_up64122 60085–60114 ———
28015kill_lizardkin_ouch64123 60085–60114 ———
28016kill_lizardkin_ouch_backhand64124 60085–60114 ———
28017kill_lizardkin_ouch_down64125 60085–60114 ———
28018kill_lizardkin_ouch_forehand64126 60085–60114 ———
28019kill_lizardkin_sit_enter64127 60085–60114 ———
28020kill_lizardkin_sit_exit64128 60085–60114 ———
28021kill_lizardkin_sword_exit64129 60085–60114 ———
28022kill_lizardkin_whirl_attack64130 60085–60114 ———
28023kill_lizardkin_wildswing64131 60085–60114 ———
24180kill_lizard_backup53476 60085–60114 ———
24181kill_lizard_fall53477 60085–60114 ———
24182kill_lizard_fly_backup53478 60085–60114 ———
24203kill_lizard_fly_dive53506 60085–60114 ———
24217kill_lizard_fly_enter53529 60085–60114 ———
24183kill_lizard_fly_fall53479 60085–60114 ———
24204kill_lizard_fly_glide53507 60085–60114 ———
24184kill_lizard_fly_idle53480 60085–60114 ———
24185kill_lizard_fly_idle0153481 60085–60114 ———
24186kill_lizard_fly_jump53482 60085–60114 ———
24205kill_lizard_fly_jumpsubstitute53508 60085–60114 ———
24187kill_lizard_fly_jump_substitute53483 60085–60114 ———
24188kill_lizard_fly_run53484 60085–60114 ———
24189kill_lizard_fly_turn_left53485 60085–60114 ———
24190kill_lizard_fly_turn_right53486 60085–60114 ———
24191kill_lizard_fly_walk53487 60085–60114 ———
24192kill_lizard_glide53488 60085–60114 ———
24193kill_lizard_idle53489 60085–60114 ———
24194kill_lizard_idle0153490 60085–60114 ———
24195kill_lizard_jump53491 60085–60114 ———
24196kill_lizard_jump_substitute53492 60085–60114 ———
24197kill_lizard_land53493 60085–60114 ———
24198kill_lizard_long_fall53494 60085–60114 ———
24199kill_lizard_run53495 60085–60114 ———
24200kill_lizard_turn_left53496 60085–60114 ———
24201kill_lizard_turn_right53497 60085–60114 ———
24202kill_lizard_walk53498 60085–60114 ———
3673kill_long_fall33122 1–843 ———
19834kill_long_fall44562 60085–60114 ———
3674kill_long_fall_moving33123 1–843 ———
19835kill_long_fall_moving44563 60085–60114 ———
25064kill_look55426 60085–60114 ———
3675kill_lookaway33124 1–843 ———
19836kill_lookaway44564 60085–60114 ———
25128kill_lose_spin55655 60085–60114 ———
27039kill_lose_weapon60491 60085–60114 ———
25919kill_lounge_enter57816 60085–60114 ———
25920kill_lounge_exit57817 60085–60114 ———
25921kill_lounge_idle57818 60085–60114 ———
26810kill_lower_lip_left_down59516 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.