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
5583kill_converse_female0835743 1–843 ———
19272kill_converse_female0843996 60085–60114 ———
5584kill_converse_female0935744 1–843 ———
19273kill_converse_female0943997 60085–60114 ———
5585kill_converse_female1035745 1–843 ———
19274kill_converse_female1043998 60085–60114 ———
5586kill_converse_female1135746 1–843 ———
19275kill_converse_female1143999 60085–60114 ———
5587kill_converse_female1235747 1–843 ———
19276kill_converse_female1244000 60085–60114 ———
5588kill_converse_male0135748 1–843 ———
19277kill_converse_male0144001 60085–60114 ———
5589kill_converse_male0235749 1–843 ———
19278kill_converse_male0244002 60085–60114 ———
5590kill_converse_male0335750 1–843 ———
19279kill_converse_male0344003 60085–60114 ———
5591kill_converse_male0435751 1–843 ———
18041kill_converse_male0435751 60085–60114 ———
5592kill_converse_male0535752 1–843 ———
19280kill_converse_male0544004 60085–60114 ———
5593kill_converse_male0635753 1–843 ———
19281kill_converse_male0644005 60085–60114 ———
5594kill_converse_male0735754 1–843 ———
19282kill_converse_male0744006 60085–60114 ———
5595kill_converse_male0835755 1–843 ———
19283kill_converse_male0844007 60085–60114 ———
5596kill_converse_male0935756 1–843 ———
19284kill_converse_male0944008 60085–60114 ———
5597kill_converse_male1035757 1–843 ———
19285kill_converse_male1044009 60085–60114 ———
5598kill_converse_male1135758 1–843 ———
19286kill_converse_male1144010 60085–60114 ———
5599kill_converse_male1235759 1–843 ———
18042kill_converse_male1235759 60085–60114 ———
24774kill_converse_sit54680 60085–60114 ———
24823kill_converse_sit0154812 60085–60114 ———
24824kill_converse_sit0254813 60085–60114 ———
23231kill_cooked51501 60085–60114 ———
27506kill_cookie_gumdrop_fx62321 60085–60114 ———
27444kill_cookie_ouch_fx62152 60085–60114 ———
5132kill_cooking_failure35085 1–843 ———
19287kill_cooking_failure44011 60085–60114 ———
5133kill_cooking_idle35086 1–843 ———
19288kill_cooking_idle44012 60085–60114 ———
5134kill_cooking_success35087 1–843 ———
19289kill_cooking_success44013 60085–60114 ———
6351kill_corpse38210 1–843 ———
19290kill_corpse44014 60085–60114 ———
19291kill_cos_call_storm_snd44015 60085–60114 ———
19292kill_cos_storm_space_snd44016 60085–60114 ———
24955kill_count55175 60085–60114 ———
6092kill_cp_charge_snd37073 1–843 ———
19293kill_cp_charge_snd44017 60085–60114 ———
30278kill_crackle_whoosh01_snd8454811 60085–60114 ———
30279kill_crackle_whoosh02_snd8454812 60085–60114 ———
3578kill_cracks32984 1–843 ———
19296kill_cracks44020 60085–60114 ———
31083kill_crafting8481668 60085–60114 ———
28037kill_crash64207 60085–60114 ———
6121kill_crash_enter37268 1–843 ———
19297kill_crash_enter44021 60085–60114 ———
6122kill_crash_exit37269 1–843 ———
19298kill_crash_exit44022 60085–60114 ———
24917kill_crate_break_snd55041 60085–60114 ———
3579kill_crazy32985 1–843 ———
19299kill_crazy44023 60085–60114 ———
3580kill_cringe32986 1–843 ———
19300kill_cringe44024 60085–60114 ———
4123kill_croak_0133894 1–843 ———
19301kill_croak_0144025 60085–60114 ———
4124kill_croak_0233895 1–843 ———
19302kill_croak_0244026 60085–60114 ———
4125kill_croak_0333896 1–843 ———
19303kill_croak_0344027 60085–60114 ———
4126kill_croak_0433897 1–843 ———
19304kill_croak_0444028 60085–60114 ———
4127kill_croak_0533898 1–843 ———
19305kill_croak_0544029 60085–60114 ———
4128kill_croak_0633899 1–843 ———
19306kill_croak_0644030 60085–60114 ———
4129kill_croak_0733900 1–843 ———
19307kill_croak_0744031 60085–60114 ———
4130kill_croak_0833901 1–843 ———
19308kill_croak_0844032 60085–60114 ———
4131kill_croak_0933902 1–843 ———
19309kill_croak_0944033 60085–60114 ———
5076kill_crouch_backup34982 1–843 ———
19310kill_crouch_backup44034 60085–60114 ———
3581kill_crouch_enter32987 1–843 ———
17505kill_crouch_enter32987 60085–60114 ———
3582kill_crouch_exit32988 1–843 ———
17506kill_crouch_exit32988 60085–60114 ———
3583kill_crouch_idle32989 1–843 ———
17507kill_crouch_idle32989 60085–60114 ———
19311kill_crouch_run44035 60085–60114 ———
5070kill_crouch_strafe_left34970 1–843 ———
19312kill_crouch_strafe_left44036 60085–60114 ———
5071kill_crouch_strafe_right34971 1–843 ———
19313kill_crouch_strafe_right44037 60085–60114 ———
5498kill_crouch_tail35643 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.