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
20757kill_sound_idle45488 60085–60114 ———
3813kill_sound_idle0133365 1–843 ———
20758kill_sound_idle0145489 60085–60114 ———
25163kill_sound_idle01_trex55728 60085–60114 ———
3814kill_sound_idle0233366 1–843 ———
20759kill_sound_idle0245490 60085–60114 ———
25164kill_sound_idle02_trex55729 60085–60114 ———
24582kill_sound_idle0354295 60085–60114 ———
20760kill_sound_idle03_walk00145491 60085–60114 ———
20761kill_sound_idle03_walk00245492 60085–60114 ———
6306kill_sound_idle0437894 1–843 ———
20762kill_sound_idle0445493 60085–60114 ———
4115kill_sound_idlebreath33877 1–843 ———
20763kill_sound_idlebreath45494 60085–60114 ———
21824kill_sound_idlebreathe48132 60085–60114 ———
4882kill_sound_idlebubble34757 1–843 ———
20764kill_sound_idlebubble45495 60085–60114 ———
4051kill_sound_idlechew33793 1–843 ———
20765kill_sound_idlechew45496 60085–60114 ———
5153kill_sound_idlecreak35111 1–843 ———
20766kill_sound_idlecreak45497 60085–60114 ———
3815kill_sound_idleflap33367 1–843 ———
20767kill_sound_idleflap45498 60085–60114 ———
4835kill_sound_idleflapup34709 1–843 ———
20768kill_sound_idleflapup45499 60085–60114 ———
4410kill_sound_idleglass34217 1–843 ———
20769kill_sound_idleglass45500 60085–60114 ———
4146kill_sound_idlegrowl33918 1–843 ———
20770kill_sound_idlegrowl45501 60085–60114 ———
3988kill_sound_idlehiss33728 1–843 ———
20771kill_sound_idlehiss45502 60085–60114 ———
21900kill_sound_idlehit48531 60085–60114 ———
4185kill_sound_idlelaugh33968 1–843 ———
20772kill_sound_idlelaugh45503 60085–60114 ———
4107kill_sound_idlemoo33869 1–843 ———
20773kill_sound_idlemoo45504 60085–60114 ———
4147kill_sound_idlepant33919 1–843 ———
20774kill_sound_idlepant45505 60085–60114 ———
3989kill_sound_idleroar0133729 1–843 ———
20775kill_sound_idleroar0145506 60085–60114 ———
3990kill_sound_idleroar0233730 1–843 ———
20776kill_sound_idleroar0245507 60085–60114 ———
5017kill_sound_idlerock34900 1–843 ———
20777kill_sound_idlerock45508 60085–60114 ———
4924kill_sound_idlescuff34802 1–843 ———
20778kill_sound_idlescuff45509 60085–60114 ———
20779kill_sound_idleshort45510 60085–60114 ———
4148kill_sound_idlesniff33920 1–843 ———
20780kill_sound_idlesniff45511 60085–60114 ———
4149kill_sound_idlesnort33921 1–843 ———
20781kill_sound_idlesnort45512 60085–60114 ———
4949kill_sound_idletail34827 1–843 ———
20782kill_sound_idletail45513 60085–60114 ———
4102kill_sound_idlevocal33864 1–843 ———
20783kill_sound_idlevocal45514 60085–60114 ———
4925kill_sound_idlevocal0134803 1–843 ———
20784kill_sound_idlevocal0145515 60085–60114 ———
5051kill_sound_idlevocal0234942 1–843 ———
20785kill_sound_idlevocal0245516 60085–60114 ———
4047kill_sound_idlewater33789 1–843 ———
20786kill_sound_idlewater45517 60085–60114 ———
21825kill_sound_idlewing48133 60085–60114 ———
21901kill_sound_idleyell48532 60085–60114 ———
26772kill_sound_idle_0159402 60085–60114 ———
23289kill_sound_idle_bodynoise51617 60085–60114 ———
23290kill_sound_idle_breath51618 60085–60114 ———
23291kill_sound_idle_breath_0151619 60085–60114 ———
21817kill_sound_idle_legs48076 60085–60114 ———
25165kill_sound_idle_trex55730 60085–60114 ———
20787kill_sound_inahle45518 60085–60114 ———
4447kill_sound_inhale34254 1–843 ———
20788kill_sound_inhale45519 60085–60114 ———
20789kill_sound_inhale00145520 60085–60114 ———
20790kill_sound_inhale00245521 60085–60114 ———
6563kill_sound_jawsnap39230 1–843 ———
20791kill_sound_jawsnap45522 60085–60114 ———
20792kill_sound_jump45523 60085–60114 ———
25166kill_sound_kick_trex55731 60085–60114 ———
20793kill_sound_knockback45524 60085–60114 ———
20794kill_sound_knockdown45525 60085–60114 ———
3816kill_sound_land33368 1–843 ———
20795kill_sound_land45526 60085–60114 ———
4684kill_sound_land0134538 1–843 ———
20796kill_sound_land0145527 60085–60114 ———
4685kill_sound_land0234539 1–843 ———
20797kill_sound_land0245528 60085–60114 ———
5528kill_sound_laughlong35681 1–843 ———
20798kill_sound_laughlong45529 60085–60114 ———
20799kill_sound_lense45530 60085–60114 ———
20800kill_sound_lense3s45531 60085–60114 ———
5304kill_sound_lickpur0135376 1–843 ———
20801kill_sound_lickpur0145532 60085–60114 ———
4950kill_sound_liddown34828 1–843 ———
20802kill_sound_liddown45533 60085–60114 ———
4951kill_sound_lidup34829 1–843 ———
20803kill_sound_lidup45534 60085–60114 ———
5529kill_sound_lipsmack35682 1–843 ———
20804kill_sound_lipsmack45535 60085–60114 ———
23860kill_sound_lynx_armor_152697 60085–60114 ———
23861kill_sound_lynx_armor_short52698 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.