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
20553kill_sound_combatenter45284 60085–60114 ———
20554kill_sound_combatenter00145285 60085–60114 ———
20555kill_sound_combatenter00245286 60085–60114 ———
20556kill_sound_combatentergrowl45287 60085–60114 ———
4175kill_sound_combatenterrock0133958 1–843 ———
20557kill_sound_combatenterrock0145288 60085–60114 ———
4176kill_sound_combatenterrock0233959 1–843 ———
20558kill_sound_combatenterrock0245289 60085–60114 ———
4177kill_sound_combatenterrock0333960 1–843 ———
20559kill_sound_combatenterrock0345290 60085–60114 ———
4178kill_sound_combatentervocal0133961 1–843 ———
20560kill_sound_combatentervocal0145291 60085–60114 ———
4179kill_sound_combatentervocal0233962 1–843 ———
20561kill_sound_combatentervocal0245292 60085–60114 ———
4180kill_sound_combatenterwing33963 1–843 ———
20562kill_sound_combatenterwing45293 60085–60114 ———
4929kill_sound_combatenterwingfire34807 1–843 ———
20563kill_sound_combatenterwingfire45294 60085–60114 ———
20564kill_sound_combatexit45295 60085–60114 ———
3793kill_sound_combatflap33339 1–843 ———
20565kill_sound_combatflap45296 60085–60114 ———
4834kill_sound_combatflapup34708 1–843 ———
20566kill_sound_combatflapup45297 60085–60114 ———
4113kill_sound_combatgrowl33875 1–843 ———
20567kill_sound_combatgrowl45298 60085–60114 ———
4144kill_sound_combatidle33915 1–843 ———
20568kill_sound_combatidle45299 60085–60114 ———
4227kill_sound_combatpage34033 1–843 ———
20569kill_sound_combatpage45300 60085–60114 ———
4103kill_sound_combatpaw33865 1–843 ———
20570kill_sound_combatpaw45301 60085–60114 ———
4145kill_sound_combatsnort33916 1–843 ———
20571kill_sound_combatsnort45302 60085–60114 ———
4114kill_sound_combatwing33876 1–843 ———
20572kill_sound_combatwing45303 60085–60114 ———
23284kill_sound_combat_art_buff_bodynoise_0151612 60085–60114 ———
23285kill_sound_combat_art_buff_bodynoise_0251613 60085–60114 ———
23286kill_sound_combat_art_buff_roar51614 60085–60114 ———
23462kill_sound_combat_enter_pop52071 60085–60114 ———
23463kill_sound_combat_enter_vox52072 60085–60114 ———
23464kill_sound_combat_enter_woodbreak52073 60085–60114 ———
23204kill_sound_combat_idle51439 60085–60114 ———
3794kill_sound_creak33340 1–843 ———
20573kill_sound_creak45304 60085–60114 ———
20574kill_sound_crunch45305 60085–60114 ———
3795kill_sound_curl33341 1–843 ———
20575kill_sound_curl45306 60085–60114 ———
4898kill_sound_cutthroat34775 1–843 ———
20576kill_sound_cutthroat45307 60085–60114 ———
6205kill_sound_damage37426 1–843 ———
20577kill_sound_damage45308 60085–60114 ———
5890kill_sound_damage0236409 1–843 ———
20578kill_sound_damage0245309 60085–60114 ———
5891kill_sound_damage0336410 1–843 ———
20579kill_sound_damage0345310 60085–60114 ———
20580kill_sound_damageblade45311 60085–60114 ———
20581kill_sound_damagebolts45312 60085–60114 ———
6597kill_sound_damagebone39361 1–843 ———
20582kill_sound_damagebone45313 60085–60114 ———
6543kill_sound_damagecrunch39161 1–843 ———
20583kill_sound_damagecrunch45314 60085–60114 ———
21713kill_sound_damagefeather47885 60085–60114 ———
6340kill_sound_damageflutter38131 1–843 ———
20584kill_sound_damageflutter45315 60085–60114 ———
6286kill_sound_damagehit37756 1–843 ———
20585kill_sound_damagehit45316 60085–60114 ———
22523kill_sound_damagelow49725 60085–60114 ———
20586kill_sound_damagerock45317 60085–60114 ———
20587kill_sound_damageshell45318 60085–60114 ———
21870kill_sound_damagestone48461 60085–60114 ———
20588kill_sound_damagetwang45319 60085–60114 ———
6287kill_sound_damagevocal37757 1–843 ———
20589kill_sound_damagevocal45320 60085–60114 ———
22158kill_sound_damage_medusa49111 60085–60114 ———
22159kill_sound_damage_mouth49112 60085–60114 ———
3796kill_sound_dead33344 1–843 ———
20590kill_sound_dead45321 60085–60114 ———
3797kill_sound_dead0133345 1–843 ———
20591kill_sound_dead0145322 60085–60114 ———
3798kill_sound_dead0233346 1–843 ———
20592kill_sound_dead0245323 60085–60114 ———
3799kill_sound_dead0333347 1–843 ———
20593kill_sound_dead0345324 60085–60114 ———
4944kill_sound_deadball34822 1–843 ———
20595kill_sound_deadball45326 60085–60114 ———
4945kill_sound_deadballfall34823 1–843 ———
20596kill_sound_deadballfall45327 60085–60114 ———
4990kill_sound_deadbell34873 1–843 ———
20597kill_sound_deadbell45328 60085–60114 ———
20598kill_sound_deadblade45329 60085–60114 ———
20599kill_sound_deadboom45330 60085–60114 ———
3958kill_sound_deadbreathe33688 1–843 ———
20600kill_sound_deadbreathe45331 60085–60114 ———
4043kill_sound_deadbubble33785 1–843 ———
20601kill_sound_deadbubble45332 60085–60114 ———
4962kill_sound_deadbuzz0134844 1–843 ———
20602kill_sound_deadbuzz0145333 60085–60114 ———
4963kill_sound_deadbuzz0234845 1–843 ———
20603kill_sound_deadbuzz0245334 60085–60114 ———
4964kill_sound_deadbuzz0334846 1–843 ———
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.