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
21969kill_beam2_red48724 60085–60114 ———
21970kill_beam2_yellow48725 60085–60114 ———
21971kill_beam3_blue48726 60085–60114 ———
21972kill_beam3_red48727 60085–60114 ———
21973kill_beam3_yellow48728 60085–60114 ———
21974kill_beam_door48729 60085–60114 ———
21978kill_beam_miss_orange48741 60085–60114 ———
21979kill_beam_miss_purple48742 60085–60114 ———
22912kill_bearwalk50725 60085–60114 ———
22851kill_bear_attack_sound50640 60085–60114 ———
22503kill_bear_backup49685 60085–60114 ———
22852kill_bear_battlecry_sound50641 60085–60114 ———
22854kill_bear_deadfall_sound50643 60085–60114 ———
22853kill_bear_dead_sound50642 60085–60114 ———
22504kill_bear_fall49686 60085–60114 ———
22855kill_bear_headshake_sound50644 60085–60114 ———
22505kill_bear_idle49687 60085–60114 ———
22856kill_bear_idle_sound50645 60085–60114 ———
22857kill_bear_idle_sound_omit50646 60085–60114 ———
22506kill_bear_jump49688 60085–60114 ———
22507kill_bear_jump_substitute49689 60085–60114 ———
22508kill_bear_land49690 60085–60114 ———
22509kill_bear_long_fall49691 60085–60114 ———
22858kill_bear_ouch_sound50647 60085–60114 ———
22510kill_bear_run49692 60085–60114 ———
22859kill_bear_sniff_sound50648 60085–60114 ———
22850kill_bear_sprint50637 60085–60114 ———
22849kill_bear_tail50634 60085–60114 ———
22511kill_bear_turn_left49693 60085–60114 ———
22512kill_bear_turn_right49694 60085–60114 ———
22513kill_bear_walk49695 60085–60114 ———
3485kill_beckon32849 1–843 ———
18898kill_beckon43611 60085–60114 ———
27074kill_beckon_enter60700 60085–60114 ———
27075kill_beckon_exit60701 60085–60114 ———
30591kill_bedjump_018457757 60085–60114 ———
30592kill_bedjump_028457758 60085–60114 ———
3486kill_beg32850 1–843 ———
18899kill_beg43612 60085–60114 ———
24057kill_belch_fx53141 60085–60114 ———
30271kill_bellow8454801 60085–60114 ———
24146kill_bellyslide53362 60085–60114 ———
5181kill_bene35165 1–843 ———
18900kill_bene43613 60085–60114 ———
22709kill_bf_lightning_gate_rm550280 60085–60114 ———
22710kill_bf_lightning_gate_rm950281 60085–60114 ———
26939kill_bg_achievement_acquired60022 60085–60114 ———
5235kill_big_saw_success35232 1–843 ———
18901kill_big_saw_success43614 60085–60114 ———
5236kill_big_saw_success235233 1–843 ———
18902kill_big_saw_success243615 60085–60114 ———
5237kill_big_smoke35234 1–843 ———
18903kill_big_smoke43616 60085–60114 ———
27414kill_bird_squawk_sound62021 60085–60114 ———
24442kill_bite53977 60085–60114 ———
30430kill_bixie_female_boss_attack8455502 60085–60114 ———
30431kill_bixie_female_boss_attack_018455503 60085–60114 ———
30432kill_bixie_female_boss_attack_028455504 60085–60114 ———
30433kill_bixie_female_boss_attack_038455505 60085–60114 ———
30434kill_bixie_female_boss_cast8455506 60085–60114 ———
30435kill_bixie_female_boss_charge_up8455507 60085–60114 ———
30436kill_bixie_female_boss_dead_enter8455508 60085–60114 ———
30437kill_bixie_female_boss_dodge8455509 60085–60114 ———
30438kill_bixie_female_boss_dodge_backand8455510 60085–60114 ———
30439kill_bixie_female_boss_ouch8455511 60085–60114 ———
30440kill_bixie_female_boss_ouch_forehand8455512 60085–60114 ———
30441kill_bixie_female_boss_shield_shove8455513 60085–60114 ———
30442kill_bixie_female_boss_super_buff8455514 60085–60114 ———
30443kill_bixie_female_boss_whiriling_attack8455515 60085–60114 ———
30444kill_bixie_female_boss_wild_swing8455516 60085–60114 ———
30134kill_blacksmithing8454390 60085–60114 ———
31281kill_blade_drop_fx8483036 60085–60114 ———
31282kill_blade_rise_fx8483037 60085–60114 ———
3487kill_blammo32851 1–843 ———
18906kill_blammo43619 60085–60114 ———
22781kill_blast_bolt50454 60085–60114 ———
28146kill_blast_rune_ring64816 60085–60114 ———
3488kill_blink32852 1–843 ———
18907kill_blink43620 60085–60114 ———
30672kill_blood_bone_spray8461665 60085–60114 ———
27111kill_blue_crystal_dead60834 60085–60114 ———
27112kill_blue_crystal_on60835 60085–60114 ———
5257kill_bl_castswirls_snd35290 1–843 ———
18904kill_bl_castswirls_snd43617 60085–60114 ———
4630kill_bl_start_particles_snd34456 1–843 ———
18905kill_bl_start_particles_snd43618 60085–60114 ———
27424kill_bodyfall62067 60085–60114 ———
4815kill_boe_endspinner_sound34689 1–843 ———
18908kill_boe_endspinner_sound43621 60085–60114 ———
4816kill_boe_open_burst_sound34690 1–843 ———
18909kill_boe_open_burst_sound43622 60085–60114 ———
4817kill_boe_shield_tone_sound34691 1–843 ———
18910kill_boe_shield_tone_sound43623 60085–60114 ———
3489kill_boggle32853 1–843 ———
18911kill_boggle43624 60085–60114 ———
5182kill_boilover0135166 1–843 ———
18912kill_boilover0143625 60085–60114 ———
30533kill_bolgin_bellow8456549 60085–60114 ———
30534kill_bolgin_dead_enter8456550 60085–60114 ———
30535kill_bolgin_drinking8456551 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.