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
21138kill_trdskl_beaker45869 60085–60114 ———
21929kill_trdskl_beehive48603 60085–60114 ———
24957kill_trdskl_bone55192 60085–60114 ———
22259kill_trdskl_book49306 60085–60114 ———
22448kill_trdskl_boomerang49546 60085–60114 ———
23403kill_trdskl_bow51933 60085–60114 ———
22238kill_trdskl_bread49257 60085–60114 ———
22483kill_trdskl_brick49632 60085–60114 ———
25071kill_trdskl_cane55453 60085–60114 ———
25072kill_trdskl_cane_sit55454 60085–60114 ———
22531kill_trdskl_censer49758 60085–60114 ———
5688kill_trdskl_cloth35848 1–843 ———
21139kill_trdskl_cloth45870 60085–60114 ———
30482kill_trdskl_coal8455770 60085–60114 ———
5689kill_trdskl_feather35849 1–843 ———
21140kill_trdskl_feather45871 60085–60114 ———
23411kill_trdskl_firefly_escape51967 60085–60114 ———
23412kill_trdskl_firefly_jar51968 60085–60114 ———
5690kill_trdskl_fishingpole35850 1–843 ———
21141kill_trdskl_fishingpole45872 60085–60114 ———
23266kill_trdskl_flaming_pumpkin51587 60085–60114 ———
30413kill_trdskl_food_fight8455300 60085–60114 ———
22277kill_trdskl_frisbee49361 60085–60114 ———
21481kill_trdskl_fruitcake46503 60085–60114 ———
5691kill_trdskl_gem35851 1–843 ———
21142kill_trdskl_gem45873 60085–60114 ———
22236kill_trdskl_glob49248 60085–60114 ———
24137kill_trdskl_halas_pick53336 60085–60114 ———
5692kill_trdskl_hammer35852 1–843 ———
21143kill_trdskl_hammer45874 60085–60114 ———
5794kill_trdskl_hatchet36018 1–843 ———
21144kill_trdskl_hatchet45875 60085–60114 ———
6368kill_trdskl_hatchet_l38237 1–843 ———
21145kill_trdskl_hatchet_l45876 60085–60114 ———
21663kill_trdskl_horn47570 60085–60114 ———
24972kill_trdskl_ice_wand55255 60085–60114 ———
5693kill_trdskl_leather35853 1–843 ———
21146kill_trdskl_leather45877 60085–60114 ———
5694kill_trdskl_magnifying35854 1–843 ———
21147kill_trdskl_magnifying45878 60085–60114 ———
24628kill_trdskl_meat54442 60085–60114 ———
21822kill_trdskl_metal_sparks48102 60085–60114 ———
31102kill_trdskl_molotov_cocktail8482239 60085–60114 ———
6166kill_trdskl_mug37352 1–843 ———
21148kill_trdskl_mug45879 60085–60114 ———
25112kill_trdskl_mug_r55625 60085–60114 ———
5695kill_trdskl_needle35855 1–843 ———
21149kill_trdskl_needle45880 60085–60114 ———
22456kill_trdskl_net49591 60085–60114 ———
27889kill_trdskl_othmir_tusk_staff63877 60085–60114 ———
5795kill_trdskl_pick36019 1–843 ———
21150kill_trdskl_pick45881 60085–60114 ———
30675kill_trdskl_pick_axe8462062 60085–60114 ———
22229kill_trdskl_pie49228 60085–60114 ———
22446kill_trdskl_pillow49537 60085–60114 ———
5696kill_trdskl_pot35856 1–843 ———
21151kill_trdskl_pot45882 60085–60114 ———
24614kill_trdskl_pot_large54393 60085–60114 ———
22260kill_trdskl_rose49307 60085–60114 ———
30518kill_trdskl_rum_barrel8456142 60085–60114 ———
31637kill_trdskl_rum_barrel_pc8492319 60085–60114 ———
5697kill_trdskl_saw35857 1–843 ———
21152kill_trdskl_saw45883 60085–60114 ———
28089kill_trdskl_scribing01_snd64525 60085–60114 ———
28090kill_trdskl_scribing02_snd64526 60085–60114 ———
28091kill_trdskl_scribing03_snd64527 60085–60114 ———
28092kill_trdskl_scribing04_snd64528 60085–60114 ———
5698kill_trdskl_scroll35858 1–843 ———
21153kill_trdskl_scroll45884 60085–60114 ———
25454kill_trdskl_skull56558 60085–60114 ———
22766kill_trdskl_spear50418 60085–60114 ———
5699kill_trdskl_spoon35859 1–843 ———
21154kill_trdskl_spoon45885 60085–60114 ———
31667kill_trdskl_stick_drum8494085 60085–60114 ———
5700kill_trdskl_testtube35860 1–843 ———
21155kill_trdskl_testtube45886 60085–60114 ———
24024kill_trdskl_tinker_fail53055 60085–60114 ———
25543kill_trdskl_tinker_hands56814 60085–60114 ———
5701kill_trdskl_tongs35861 1–843 ———
21156kill_trdskl_tongs45887 60085–60114 ———
23730kill_trdskl_transmute_complete52522 60085–60114 ———
23731kill_trdskl_transmute_rings52523 60085–60114 ———
24868kill_trdskl_vel_hammer54935 60085–60114 ———
21157kill_trdskl_vial45888 60085–60114 ———
24409kill_trdskl_vial_left53877 60085–60114 ———
31592kill_trdskl_wine_bottle8490871 60085–60114 ———
5702kill_trdskl_wood35862 1–843 ———
21158kill_trdskl_wood45889 60085–60114 ———
4931kill_trem_boulder_snd34809 1–843 ———
21159kill_trem_boulder_snd45890 60085–60114 ———
5234kill_trem_cast_lp_snd35229 1–843 ———
21160kill_trem_cast_lp_snd45891 60085–60114 ———
4932kill_trem_open_snd34810 1–843 ———
21161kill_trem_open_snd45892 60085–60114 ———
4934kill_trem_ringsh_snd34812 1–843 ———
21163kill_trem_ringsh_snd45894 60085–60114 ———
4933kill_trem_rings_snd34811 1–843 ———
21162kill_trem_rings_snd45893 60085–60114 ———
4935kill_trem_rocks_lp_01_snd34813 1–843 ———
21164kill_trem_rocks_lp_01_snd45895 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.