creature_template (master)

Back-to:World

The `creature_template` table

This table contains the description of creatures. Each spawned creature is an instance of a template present in this table, this means every creature MUST be defined in this table.


Structure

FieldTypeAttributesKeyNullDefaultExtraComment
entrymediumint(8)unsignedPRINO0

difficulty_entry_1mediumint(8)unsigned
NO0

difficulty_entry_2mediumint(8)unsigned
NO0

difficulty_entry_3mediumint(8)unsigned
NO0

KillCredit1int(10)unsigned
NO0

KillCredit2int(10)unsigned
NO0

modelid1mediumint(8)unsigned
NO0
removed and replaced by creature_template_model
modelid2mediumint(8)unsigned
NO0
removed and replaced by creature_template_model
modelid3mediumint(8)unsigned
NO0
removed and replaced by creature_template_model
modelid4mediumint(8)unsigned
NO0
removed and replaced by creature_template_model
nametext

YES


femaleNametext

YES


subnametext

YES


TitleAlttext

YES


IconNamevarchar(64)

YESNULL

gossip_menu_idmediumint(8)unsigned
NO0

minlevelsmallint(5)signed
NO1

maxlevelsmallint(5)signed
NO1

HealthScalingExpansionmediumint(5)signed
NO0

RequiredExpansionmediumint(5)signed
NO0

VignetteIDmediumint(5)signed
NO0

factionsmallint(5)unsigned
NO0

npcflagbigint(20)unsigned
NO0

speed_walkfloatsigned
NO1
Result of 2.5/2.5, most common value
speed_runfloatsigned
NO1.14286
Result of 8.0/7.0, most common value
scalefloatsigned
NO1

ranktinyint(3)unsigned
NO0

dmgschooltinyint(4)signed
NO0

BaseAttackTimeint(10)unsigned
NO0

RangeAttackTimeint(10)unsigned
NO0

BaseVariancefloatsigned
NO1

RangeVariancefloatsigned
NO1

unit_classtinyint(3)unsigned
NO0

unit_flagsint(10)unsigned
NO0

unit_flags2int(10)unsigned
NO0

unit_flags3int(10)unsigned
NO0

dynamicflagsint(10)unsigned
NO0

familytinyint(4)signed
NO0

trainer_classtinyint(3)unsigned
NO0

typetinyint(3)unsigned
NO0

type_flagsint(10)unsigned
NO0

type_flags2int(10)unsigned
NO0

lootidmediumint(8)unsigned
NO0

pickpocketlootmediumint(8)unsigned
NO0

skinlootmediumint(8)unsigned
NO0

resistance1smallint(5)signed
NO0

resistance2smallint(5)signed
NO0

resistance3smallint(5)signed
NO0

resistance4smallint(5)signed
NO0

resistance5smallint(5)signed
NO0

resistance6smallint(5)signed
NO0

spell1mediumint(8)unsigned
NO0

spell2mediumint(8)unsigned
NO0

spell3mediumint(8)unsigned
NO0

spell4mediumint(8)unsigned
NO0

spell5mediumint(8)unsigned
NO0

spell6mediumint(8)unsigned
NO0

spell7mediumint(8)unsigned
NO0

spell8mediumint(8)unsigned
NO0

VehicleIdmediumint(8)unsigned
NO0

mingoldmediumint(8)unsigned
NO0

maxgoldmediumint(8)unsigned
NO0

AINamevarchar(64)signed
NO"

MovementTypetinyint(3)unsigned
NO0

InhabitTypetinyint(3)unsigned
NO3

HoverHeightfloatunsigned
NO1

HealthModifierfloatsigned
NO1

HealthModifierExtrafloatsigned
NO1

ManaModifierfloatsigned
NO1

ManaModifierExtrafloatsigned
NO1

ArmorModifierfloatsigned
NO1

DamageModifierfloatsigned
NO1

ExperienceModifierfloatsigned
NO1

RacialLeadertinyint(3)unsigned
NO0

movementIDint(11)unsigned
NO0

FadeRegionRadiusfloatsigned
NO0

WidgetSetIDint(11)signed
NO0

WidgetSetUnitConditionIDint(11)signed
NO0

RegenHealthtinyint(3)unsigned
NO1

mechanic_immune_maskint(10)unsigned
NO0

flags_extraint(10)unsigned
NO0

ScriptNamevarchar(64)signed
NO"

VerifiedBuildint(11)signed
YES0


Description of the fields

entry

Creature's unique id.

difficulty_entry_1-3

This field connects the stats from another entry to this template when in 25man normal, 10man heroic or 25man heroic mode instance. 
For Dungeons: 
difficulty_entry_1 = 5 (Heroic)

For Raids:
difficulty_entry_1 = 25 (Normal)
difficulty_entry_2 = 10 (Heroic)
difficulty_entry_3 = 25 (Heroic)

KillCredit1

If this is a kill credit template -- one that is a dummy template that is used when more than one creature can count as a kill in a quest, then this is a link to the first entry of the creature that could be killed to give quest credit.

KillCredit2

If this is a kill credit template -- one that is a dummy template that is used when more than one creature can count as a kill in a quest, then this is a link to the second entry of the creature that could be killed to give quest credit. If more than two creatures can be killed and count toward a single objective, an smart or C++ script will be required.

modelid1-4

A random graphical model that the client applies on this creature. This is a creature_model_info.modelid

name

Base name of the creature.

subname

The subname of the creature that appears in <> below the creature's name.

IconName

Used to tell the player what kind of NPC this creature is.

List of known icon names:

Directions - Used for Guards and Teleporter NPC's.

Gunner - Indicator of a Turret NPC/Player Controlled.

vehichleCursor - Indicator that this is a PCV (Player Controlled Vehicle)

Driver - Shows a Steering Wheel icon when mouse over.

Attack - Shows a Sword icon indicating you can attack this target.

Buy - Shows a Brown Bag icon usually if the NPC only sells things.

Speak - Shows a Chat Bubble icon if this NPC has Quest/Gossip options.

Pickup - Shows a Hand Grasping icon of if this NPC can be picked up for quest/items.

Interact - Shows Cog icon commonly used for quest/transport.

Trainer - Shows a Book icon, identifying this NPC as a "Trainer".

Taxi - Shows a Boot w/Wings icon identifying this NPC as a "Taxi".

Repair - Shows a Anvil icon identifying this npc as a Repair NPC.

LootAll - Shows a Multiple Brown Bag icon (Same as holding Shift before looting a creature).

Quest - Unused or Unknown. (See EntryID 32870 The Real Ronakada).

PVP - Unused or Unknown.(See EntryID 29387 Arena Master: Dalaran Arena).


Note: This is not required to make the creature/npc function unless you are using scripts or gossip options.

Also: Names are case sensitive. If in doubt use an example above.

gossip_menu_id

The gossip ID of this creature. This field is obtained from sniff (update fields). If you can not sniff this value, and need to make one up, it must be > 50000. This field is the link to gossip_menu.entry.

minlevel

The minimum level of the creature if the creature has a level range.

maxlevel

The maximum level of the creature if the creature has a level range. When added to world, a level in chosen in the specified level range.

exp

The expansion table the creatures health value is taken from. Values are from 0 to 2. See creature_classlevelstats.

faction

The faction of the creature. See FactionTemplate. Just because more than one faction has the same name, the inter-faction relationships can be different.

Note: This field also controls the creature family assistance mechanic. Only creatures with the same faction will assist each other.

npcflag

A bitmask that represents what NPC flags the creature has. Each bit controls a different flag and to combine flags, you can add each flag that you want, in effect activating the respective bits.

FlagNameComment
10x0000 0001GossipIf creature has more gossip options, add this flag to bring up a menu.
20x0000 0002Quest GiverAny creature giving or taking quests needs to have this flag.
160x0000 0010TrainerAllows the creature to have a trainer list to teach spells
320x0000 0020Class Trainer
640x0000 0040Profession Trainer
1280x0000 0080VendorAny creature selling items needs to have this flag.
2560x0000 0100Vendor Ammo
5120x0000 0200Vendor Food
10240x0000 0400Vendor Poison
20480x0000 0800Vendor Reagent
40960x0000 1000RepairerCreatures with this flag can repair items.
81920x0000 2000Flight MasterAny creature serving as flight master has this.
163840x0000 4000Spirit HealerMakes the creature invisible to alive characters and has the resurrect function.
327680x0000 8000Spirit Guide
655360x0001 0000InnkeeperCreatures with this flag can set hearthstone locations.
1310720x0002 0000BankerCreatures with this flag can show the bank
2621440x0004 0000Petitioner
5242880x0008 0000Tabard DesignerAllows the designing of guild tabards.
10485760x0010 0000BattlemasterCreatures with this flag port players to battlegrounds.
20971520x0020 0000AuctioneerAllows creature to display auction list.
41943040x0040 0000Stable MasterHas the option to stable pets for hunters.
83886080x0080 0000Guild Banker
167772160x0100 0000SpellclickNeeds data on npc_spellclick_spells table
671088640x0400 0000MailboxNPC will act like a mailbox (opens mailbox with right-click)

So if you want an NPC that is a quest giver, a vendor, and can repair you just add the specific flags together: `npcflag`=`npcflag`|1|2|128|4096 
The same with hexadecimal numbers: 0x1 + 0x2 + 0x80 + 0x1000 = 0x1083

speed_walk

Controls how fast the creature can walk. For vehicles: increases fly speed.

speed_run

Controls how fast the creature can run. For vehicles: increases ground movement speed.

scale

If non-zero, this field defines the size of how the model of the creature appears ingame. If zero, it will use default model size taken from the DBC.

rank

The rank of the creature:

RankNameDefault Respawn Time

Creature.spawntimesecs

Corpse Decay Time

Worldserver.conf (Corpse.Decay)

Total Default Respawn

spawntimesecs + Corpse.Decay

0Normal5 min60 sec6 min
1Elite5 min5 min10 min
2Rare Elite5 min5 min10 min
3Boss5 min1 hour1 hour, 5 min
4Rare5 min5 min10 min

Note 1: An NPC's rank is mostly visual (which also requires your Cache to be cleared to see changes). Changing this value will not change its health, damage, or loot. However, it will change the respawn time of the creature.

Note 2: Respawn times can be modified in two other places: Creature.spawntimesecs (only for that single GUID of the creature) and in the worldserver.conf file under the "Corpse.Decay" settings (for ALL creatures of the same rank). The default `spawntimesecs` for all spawned creatures is 300 seconds (5 minutes). For example, using the ".npc add" command to spawn a "Normal" NPC will give it a default respawn time of 6 minutes (spawntimesecs + Corpse.Decay time). Also, the creature must decay first before it can respawn. For this reason, the Corpse Decay Time of the creature is also it's minimum respawn time, since setting the creature's Creature.spawntimesecs = 0 will remove the Default Respawn Time. In the example above, setting our Normal NPC's spawntimesecs = 0 will mean the creature's respawn time decreases from 6 minutes to 60 seconds.

Note 3: If you want the creature to show a skull or "??" in the portrait (often with Bosses), set the type_flags to 4.

mindmg

Minimum damage the creature deals in melee. This field is no longer combined with the attackpower field to calculate the damage.

maxdmg

Maximum damage the creature deals in melee. This field is no longer combined with the attackpower field to calculate the damage.

dmgschool

Creature's melee damage school.

IDName
0SPELL_SCHOOL_NORMAL
1SPELL_SCHOOL_HOLY
2SPELL_SCHOOL_FIRE
3SPELL_SCHOOL_NATURE
4SPELL_SCHOOL_FROST
5SPELL_SCHOOL_SHADOW
6SPELL_SCHOOL_ARCANE

attackpower

The attack power for the creature's melee attacks. This field along with mindmg and maxdmg dictate how much the creature will hit for. The formula in applying correct damages is as follows:

UPDATE `creature_template` SET 
    `mindmg` = <#1>, 
    `maxdmg` = <#2>, 
    `attackpower` = ROUND((`mindmg` + `maxdmg`) / 4 * 7), 
    `mindmg` = ROUND(`mindmg` - `attackpower` / 7), 
    `maxdmg` = ROUND(`maxdmg` - `attackpower` / 7) 
  WHERE `entry` = ...

In the query above, substitute '<#1>' with the minimum damage you want the creature to deal and '<#2>' with the maximum damage you want the creature to deal.

NOTE: You might also want to double check the values calculated after the query is run because if the difference between mindmg and maxdmg is too high, mindmg will end up being a negative value.

dmg_multiplier

Multiplier for mindmg and maxdmg

Example: mindmg=200 maxdmg = 500 dmg_multiplier = 10

Outcome: mob will hit for 2000-5000

baseattacktime

This is the base time that determines how long a creature must wait between melee attacks. This time is in milliseconds.

rangeattacktime

This is the base time that determines how long a creature must wait between ranged attacks. This time is in milliseconds.

unit_class

This is the creature's class, and it dictates levels of health and mana. Also note that health and mana will change according to exphealth_mod, and mana_mod. Not setting this value will report a minor warning in the DB_Errors.log.

ValueNamePower Shown
1CLASS_WARRIORHealth only (equal to Rogue)
2CLASS_PALADINHealth & Mana (more health than Mage but less mana)
4CLASS_ROGUEHealth only (equal to Warrior)
8CLASS_MAGEHealth & Mana (less health than Paladin but more mana)

unit_flags

Allows the manual application of unit flags to creatures. Again this is a bitmask field and to apply more than one flag, just add the different numbers. Some possible flags are:

FlagNameComments
10x0000 0001UNIT_FLAG_SERVER_CONTROLLED
20x0000 0002UNIT_FLAG_NON_ATTACKABLE
40x0000 0004UNIT_FLAG_REMOVE_CLIENT_CONTROL
80x0000 0008UNIT_FLAG_PLAYER_CONTROLLEDcontrolled by player, use _IMMUNE_TO_PC instead of _IMMUNE_TO_NPC
160x0000 0010UNIT_FLAG_RENAME
320x0000 0020UNIT_FLAG_PREPARATIONDon't take reagents for spells with SPELL_ATTR_EX5_NO_REAGENT_WHILE_PREP
640x0000 0040UNIT_FLAG_UNK_6not sure what it does, but it is needed to cast nontriggered spells in smart_scripts
1280x0000 0080UNIT_FLAG_NOT_ATTACKABLE_1UNIT_FLAG_PVP_ATTACKABLE| UNIT_FLAG_NOT_ATTACKABLE_1 is NON_PVP_ATTACKABLE
2560x0000 0100UNIT_FLAG_IMMUNE_TO_PCdisables combat/assistance with PlayerCharacters (PC)
5120x0000 0200UNIT_FLAG_IMMUNE_TO_NPCdisables combat/assistance with NonPlayerCharacters (NPC)
10240x0000 0400UNIT_FLAG_LOOTINGLoot animation
20480x0000 0800UNIT_FLAG_PET_IN_COMBATIn combat? 2.0.8
40960x0000 1000UNIT_FLAG_PVPChanged in 3.0.3
81920x0000 2000UNIT_FLAG_SILENCEDCan't cast spells
163840x0000 4000UNIT_FLAG_CANNOT_SWIM2.0.8
327680x0000 8000NIT_FLAG_SWIMMINGshows swim animation in water
655360x0001 0000UNIT_FLAG_NON_ATTACKABLE_2removes attackable icon, if on yourself, cannot assist self but can cast TARGET_SELF spells - added by SPELL_AURA_MOD_UNATTACKABLE
1310720x0002 0000UNIT_FLAG_PACIFIEDCreature will not attack
2621440x0004 0000UNIT_FLAG_STUNNED3.0.3 ok
5242880x0008 0000UNIT_FLAG_IN_COMBAT('AffectingCombat' from UnitFlags.cs in WPP)
10485760x0010 0000UNIT_FLAG_TAXI_FLIGHTDisable casting at client side spell not allowed by taxi flight (mounted?), probably used with 0x4 flag
20971520x0020 0000UNIT_FLAG_DISARMED3.0.3, disable melee spells casting..., "Required melee weapon" added to melee spells tooltip.
41943040x0040 0000UNIT_FLAG_CONFUSEDConfused.
83886080x0080 0000UNIT_FLAG_FLEEING('Feared' from UnitFlags.cs in WPP)
167772160x0100 0000UNIT_FLAG_POSSESSEDunder direct client control by a player (possess or vehicle)
335544320x0200 0000UNIT_FLAG_NOT_SELECTABLECan't be selected by mouse or with /target {name} command.
671088640x0400 0000UNIT_FLAG_SKINNABLESkinnable
1342177280x0800 0000UNIT_FLAG_MOUNTThe client seems to handle it perfectly. Also used when making custom mounts.
2684354560x1000 0000UNIT_FLAG_UNK_28(PreventKneelingWhenLooting from UnitFlags.cs in WPP)
5368709120x2000 0000UNIT_FLAG_UNK_29Used in Feign Death spell or NPC will play dead. (PreventEmotes)
10737418240x4000 0000UNIT_FLAG_SHEATHE
21474836480x8000 0000UNIT_FLAG_IMMUNEImmune to damage

unit_flags2

Allows additional application of unit flags to creatures. Again, this is a bitmask field and to apply more than one flag, just add the different numbers. Some possible flags are:

FlagNameComments
10x0000 0001UNIT_FLAG2_FEIGN_DEATH
20x0000 0002UNIT_FLAG2_UNK1Hide unit model (show only player equip)
40x0000 0004UNIT_FLAG2_IGNORE_REPUTATION
80x0000 0008UNIT_FLAG2_COMPREHEND_LANG
160x0000 0010UNIT_FLAG2_MIRROR_IMAGE
320x0000 0020UNIT_FLAG2_INSTANTLY_APPEAR_MODELUnit model instantly appears when summoned (does not fade in)
640x0000 0040UNIT_FLAG2_FORCE_MOVEMENT
1280x0000 0080UNIT_FLAG2_DISARM_OFFHAND
2560x0000 0100UNIT_FLAG2_DISABLE_PRED_STATSPlayer has disabled predicted stats (Used by raid frames)
10240x0000 0400UNIT_FLAG2_DISARM_RANGEDthis does not disable ranged weapon display (maybe additional flag needed?)
20480x0000 0800UNIT_FLAG2_REGENERATE_POWER
40960x0000 1000UNIT_FLAG2_RESTRICT_PARTY_INTERACTIONRestrict interaction to party or raid
81920x0000 2000UNIT_FLAG2_PREVENT_SPELL_CLICKPrevent spellclick
163840x0000 4000UNIT_FLAG2_ALLOW_ENEMY_INTERACT
327680x0000 8000UNIT_FLAG2_DISABLE_TURN
655360x0001 0000UNIT_FLAG2_UNK2
1310720x0002 0000UNIT_FLAG2_PLAY_DEATH_ANIMPlays special death animation upon death
2621440x0004 0000UNIT_FLAG2_ALLOW_CHEAT_SPELLS

allows casting spells with AttributesEx7 & SPELL_ATTR7_IS_CHEAT_SPELL


dynamicflags

Flags that control visual appearance of the creature.

A few known flags and their use are:

FlagNameComments
00x00UNIT_DYNFLAG_NONE
10x01UNIT_DYNFLAG_LOOTABLE
20x02UNIT_DYNFLAG_TRACK_UNITCreature's location will be seen as a small dot in the minimap
40x04UNIT_DYNFLAG_TAPPEDMakes creatures name appear grey (Lua_UnitIsTapped)
80x08UNIT_DYNFLAG_TAPPED_BY_PLAYERLua_UnitIsTappedByPlayer usually used by PCVs (Player Controlled Vehicles)
160x10UNIT_DYNFLAG_SPECIALINFO
320x20UNIT_DYNFLAG_DEADMakes the creature appear dead (this DOES NOT make the creature's name grey or not attack players).
640x40UNIT_DYNFLAG_REFER_A_FRIEND
1280x80UNIT_DYNFLAG_TAPPED_BY_ALL_THREAT_LISTLua_UnitIsTappedByAllThreatList

family

The family this creature belongs to.

IDFamilyIDFamily
1Wolf26Owl
2Cat27Wind Serpent
3Spider28Remote Control
4Bear29Felguard
5Boar30Dragonhawk
6Crocolisk31Ravager
7Carrion Bird32Warp Stalker
8Crab33Sporebat
9Gorilla34Nether Ray
11Raptor35Serpent
12Tallstrider37Moth
15Felhunter38Chimaera
16Voidwalker39Devilsaur
17Succubus40Ghoul
19Doomguard41Silithid
20Scorpid42Worm
21Turtle43Rhino
23Imp44Wasp
24Bat45Core Hound
25Hyena46Spirit Beast

trainer_type

If the NPC is a trainer (has the trainer flag), then this field controls what kind of trainer it is. Both this field and the related field must be filled in for a trainer to work correctly.

IDTypeRelated FieldComments
0TRAINER_TYPE_CLASStrainer_classTrains class spells
1TRAINER_TYPE_MOUNTStrainer_raceTrains riding skill
2TRAINER_TYPE_TRADESKILLStrainer_spellTrains professions
3TRAINER_TYPE_PETStrainer_classTrains pet skills

trainer_spell

If the NPC is a trainer that teaches professions (trainer_type == 2), then the player must already know the spell ID specified here to be able to talk to this NPC.

trainer_class

If the NPC is a class trainer or a pet trainer (trainer_type == 0 or 3), then the player's class must be the same as the value specified here to talk to this trainer. For pet trainers, this value must be 3 (hunter). See characters.class

trainer_race

If the NPC is a mount trainer (trainer_type == 1), then the player's race must be the same as the value specified here to talk to this trainer. See characters.race

minrangedmg

Minimum ranged damage the creature inflicts.

maxrangedmg

Maximum range damage the creature inflicts.

rangedattackpower

This field also refers to the damage multiplier.

Example: If the creature is using a ranged weapon and its rangedattackpower = 500 and the dmg_multiplier is 10 the max that it can hit for with ranged attacks would be 5000

type

The type of the creature.

IDType
0None
1Beast
2Dragonkin
3Demon
4Elemental
5Giant
6Undead
7Humanoid
8Critter
9Mechanical
10Not specified
11Totem
12Non-Combat Pet
13Gas Cloud
14Wild Pet
15Aberration

type_flags

This field can control whether a mob is minable or herbable or lootable by engineer. If it is either of those three, then the loot given when it is skinned/mined will be stored in the skinning_loot_template table. It also controls, whether this mob can be tamed by a hunter. Other fields have no special meaning on the serverside. The entire field will be send to the client in SMSG_CREATURE_QUERY_RESPONSE

FlagNameComments
10x0000 0001CREATURE_TYPEFLAGS_TAMEABLEMakes the mob tameable (must also be a beast and have family set)
20x0000 0002CREATURE_TYPEFLAGS_GHOSTCreature are also visible for not alive player. Allow gossip interaction if npcflag allow?
40x0000 0004CREATURE_TYPEFLAGS_BOSSChanges creature's visible level to "??" in the creature's portrait - Immune to Knockback.
80x0000 0008CREATURE_TYPEFLAGS_DO_NOT_PLAY_WOUND_PARRY_ANIMATIONDoes not play wound animation on parry.
160x0000 0010CREATURE_TYPEFLAGS_HIDE_FACTION_TOOLTIPHides tooltip faction.
320x0000 0020CREATURE_TYPEFLAGS_UNK6
640x0000 0040CREATURE_TYPEFLAGS_SPELL_ATTACKABLESpell attackable.
1280x0000 0080CREATURE_TYPEFLAGS_DEAD_INTERACTPlayer can interact with the creature if its dead (not player dead)
2560x0000 0100CREATURE_TYPEFLAGS_HERBLOOTMakes mob herbable
5120x0000 0200CREATURE_TYPEFLAGS_MININGLOOTMakes mob minable
10240x0000 0400CREATURE_TYPEFLAGS_DONT_LOG_DEATH Does not combatlog death.
20480x0000 0800CREATURE_TYPEFLAGS_MOUNTED_COMBATCreature can remain mounted when entering combat
40960x0000 1000CREATURE_TYPEFLAGS_AID_PLAYERSCan aid any player in combat if in range?
81920x0000 2000CREATURE_TYPEFLAGS_IS_PET_BAR_USEDIs using pet bar.
163840x0000 4000CREATURE_TYPEFLAGS_MASK_UID
327680x0000 8000CREATURE_TYPEFLAGS_ENGINEERLOOTMakes mob lootable by engineer
655360x0001 0000CREATURE_TYPE_FLAG_EXOTIC_PETTamable as an exotic pet. Normal tamable flag must also be set.
1310720x0002 0000CREATURE_TYPEFLAGS_USE_DEFAULT_COLLISION_BOX Collision related. (always using default collision box?)
2621440x0004 0000CREATURE_TYPEFLAGS_IS_SIEGE_WEAPONIs siege weapon.
5242880x0008 0000CREATURE_TYPEFLAGS_PROJECTILE_COLLISION

Projectiles can collide with this creature - interacts with TARGET_DEST_TRAJ

10485760x0010 0000CREATURE_TYPEFLAGS_HIDE_NAMEPLATEHides nameplate.
20971520x0020 0000CREATURE_TYPEFLAGS_DO_NOT_PLAY_MOUNTED_ANIMATIONSDoes not play mounted animations.
41943040x0040 0000CREATURE_TYPEFLAGS_IS_LINK_ALL
83886080x0080 0000CREATURE_TYPEFLAGS_INTERACT_ONLY_WITH_CREATOR

Can only interact with its creator.

1342177280x0800 0000CREATURE_TYPEFLAGS_FORCE_GOSSIPAllows the creature to display a single gossip option.

lootid

The ID of the loot template ID that this creature should use to generate loots. See creature_loot_template.entry

pickpocketloot

The ID of the pickpocketing loot template that this creature should use to generate pickpocketing loots. See pickpocketing_loot_template.entry

skinloot

The ID of the skinning loot template that this creature should use to generate skinning loots. See skinning_loot_template.entry

resistance1

Holy resistance.

resistance2

Fire resistance.

resistance3

Nature resistance.

resistance4

Frost resistance.

resistance5

Shadow resistance.

resistance6

Arcane resistance.

spell1

Spell ID that can be used for Mind Control of this creature. 
For vehicle creatures: 1st spell on action bar

spell2

Spell ID that can be used for Mind Control of this creature. 
For vehicle creatures: 2nd spell on action bar

spell3

Spell ID that can be used for Mind Control of this creature. 
For vehicle creatures: 3rd spell on action bar

spell4

Spell ID that can be used for Mind Control of this creature. 
For vehicle creatures: 4th spell on action bar

spell5

Spell ID that can be used for Mind Control of this creature. 
For vehicle creatures: 5th spell on action bar

spell6

Spell ID that can be used for Mind Control of this creature. 
For vehicle creatures: 6th spell on action bar

spell7

Spell ID that can be used for Mind Control of this creature. 
For vehicle creatures: 7th spell on action bar

spell8

Spell ID that can be used for Mind Control of this creature. 
For vehicle creatures: 8th spell on action bar

PetSpellDataId

ID, found in CreatureSpellData.dbc, that displays what spells the pet has in the client.

VehicleId

Entryid of Vehicle if creature is/has a vehicle entry. This field determines how the player appears on the vehicle, how the vehicle moves, and whether or not the vehicle action bar is shown. For example, a VehicleID of 292 will make the player invisible, prevent the vehicle from strafing left/right (but will allow fowards/backwards), and will show the vehicle action bar spells (which are defined in spell1-8). An npc_spellclick_spells entry must be made for this creature entry in order for this to work.

mingold

Minimum money that the creature drops when killed, in copper.

maxgold

Maximum money that the creature drops when killed, in copper.

AIName

This field is overridden by ScriptName field if both are set.

NameDescription
NullAIEmpty AI, creature does nothing.
AggressorAICreature attacks as soon as something is in aggro range.
ReactorAICreature attacks only if aggroed by attack, spell etc.
GuardAI
PetAICreature is a pet.
TotemAICreature casts spell from field spell1, otherwise like NullAI.
EventAICreature uses event based AI.
SmartAICreature uses new smart AI.

MovementType

The creature's default movement type.

IDType
0Idle; stay in one place
1Random movement inside the spawndist radius
2Waypoint movement

InhabitType

Controls where the creature can move and attack.

BitmaskType
1Ground
2Water
4Flying
8Rooted

(This is a bitmask'ed value. You can add values together: 1+4=5 would make the creature walk on ground and fly.)


Note: If your vehicle is a flying vehicle then your accessory MUST have its InhabitType set to (4 - Flying). This being if you set it for both ground and flying it will spawn on the ground if the vehicle is initially spawned on the ground.


HoverHeight

Distance above the ground that the creature will hover if it has MOVEMENTFLAG_DISABLE_GRAVITY enabled. Value taken from sniffs.

Health_mod

Used to modify the base Level/Class health of a creature. This field comes from WDB.

Mana_mod

Used to modify the base Level/Class mana of a creature. This field comes from WDB.

Armor_mod

Used to modify the base Level/Class armor of a creature.

RacialLeader

A flag indicating wheather the creature is a racial leader. Killing racial leaders grants 100 honor.

QuestItem1-6

Tells the client (mouse-hovering this creature -> tooltip) that this creature will drop the item specified in this field.

movementID

We have no idea what this field does. It is passed directly to the client.

RegenHealth

Boolean 1 or 0 controlling if the creature should regenerate its health or not.

mechanic_immune_mask

This makes the creature immune to specific spell natures. See Spell.dbc at row effect_X_mechanic_id.

Uses references from SpellMechanic.dbc.

FlagTypeComment
10x0000 0001MECHANIC_CHARM
20x0000 0002MECHANIC_DISORIENTED
40x0000 0004MECHANIC_DISARM
80x0000 0008MECHANIC_DISTRACT
160x0000 0010MECHANIC_FEAR
320x0000 0020MECHANIC_GRIPDeath Grip and similar effects
640x0000 0040MECHANIC_ROOT
1280x0000 0080MECHANIC_SLOW_ATTACK
2560x0000 0100MECHANIC_SILENCE
5120x0000 0200MECHANIC_SLEEP
10240x0000 0400MECHANIC_SNARE
20480x0000 0800MECHANIC_STUN
40960x0000 1000MECHANIC_FREEZE
81920x0000 2000MECHANIC_KNOCKOUTIncapacitate effects such as Repetance (Paladin)
163840x0000 4000MECHANIC_BLEED
327680x0000 8000MECHANIC_BANDAGEHealing etc.
655360x0001 0000MECHANIC_POLYMORPH
1310720x0002 0000MECHANIC_BANISH
2621440x0004 0000MECHANIC_SHIELD
5242880x0008 0000MECHANIC_SHACKLEShackle Undead only
10485760x0010 0000MECHANIC_MOUNTAny effect that summons a mount
20971520x0020 0000MECHANIC_INFECTEDFrost Fever, Blood Plague etc.
41943040x0040 0000MECHANIC_TURNe.g. Turn Evil
83886080x0080 0000MECHANIC_HORRORe.g. Death Coil (Warlock)
167772160x0100 0000MECHANIC_INVULNERABILITYForbearance, Nether Protection, Diplomatic Immunity only
335544320x0200 0000MECHANIC_INTERRUPT
671088640x0400 0000MECHANIC_DAZE
1342177280x0800 0000MECHANIC_DISCOVERYAny Create Item effect
2684354560x1000 0000MECHANIC_IMMUNE_SHIELDDivine Shield, Ice Block, Hand of Protection...
5368709120x2000 0000MECHANIC_SAPPED
10737418240x4000 0000MECHANIC_ENRAGED

To combine immunities just add values. Immune to everything corresponds to the value 2147483647 (0x3FFF FFFF).

flags_extra

These flags control certain creature specific attributes. Flags can be added together to apply more than one.

Example: 32+64=96

FlagType
1CREATURE_FLAG_EXTRA_INSTANCE_BIND0x00000001creature kill binds instance to killer and killer's group
2CREATURE_FLAG_EXTRA_CIVILIAN0x00000002creature does not aggro (ignore faction/reputation hostility)
4CREATURE_FLAG_EXTRA_NO_PARRY0x00000004creature does not parry
8CREATURE_FLAG_EXTRA_NO_PARRY_HASTEN0x00000008creature does not counter-attack at parry
16CREATURE_FLAG_EXTRA_NO_BLOCK0x00000010creature does not block
32CREATURE_FLAG_EXTRA_NO_CRUSH0x00000020creature does not do crush-attacks
64CREATURE_FLAG_EXTRA_NO_XP_AT_KILL0x00000040creature kill does not give XP
128CREATURE_FLAG_EXTRA_TRIGGER0x00000080creature is trigger-NPC (invisible to players only)
256CREATURE_FLAG_EXTRA_NO_TAUNT0x00000100creature is immune to taunt-auras and "attack me"-effects
512CREATURE_FLAG_EXTRA_NO_MOVE_FLAGS_UPDATE0x00000200creature won't update movement flags
1024CREATURE_FLAG_EXTRA_GHOST_VISIBILITY 0x00000400creature will be only visible for dead players
2048CREATURE_FLAG_EXTRA_USE_OFFHAND_ATTACK0x00000800creature will use offhand attacks
4096CREATURE_FLAG_EXTRA_NO_SELL_VENDOR 0x00001000players can't sell items to this vendor
16384CREATURE_FLAG_EXTRA_WORLDEVENT0x00004000custom flag for world events (left room for merging)
32768CREATURE_FLAG_EXTRA_GUARD0x00008000creature is a guard (Will ignore feign death and vanish)
131072CREATURE_FLAG_EXTRA_NO_CRIT0x00020000creature does not do critical strikes
262144CREATURE_FLAG_EXTRA_NO_SKILLGAIN0x00040000creature won't increase weapon skills
524288CREATURE_FLAG_EXTRA_TAUNT_DIMINISH0x00080000creature taunt is subject to diminishing returns
1048576CREATURE_FLAG_EXTRA_ALL_DIMINISH0x00100000Creature is subject to all diminishing returns
2097152CREATURE_FLAG_EXTRA_NO_PLAYER_DAMAGE_REQ0x00200000

NPCs can help with killing this creature and player will still be credited if he tags the creature

268435456CREATURE_FLAG_EXTRA_DUNGEON_BOSS0x10000000

Creature is a dungeon boss. This flag is generically set by core during runtime. Setting this in database will give you startup error.

536870912CREATURE_FLAG_EXTRA_IGNORE_PATHFINDING0x20000000Creature will ignore pathfinding. This is like disabling Mmaps, only for one creature.
1073741824CREATURE_FLAG_EXTRA_IMMUNITY_KNOCKBACK0x40000000creature will immune all knockback effects

ScriptName

The name of the script that this creature uses, if any. This ties a script from a scripting engine to this creature.

VerifiedBuild

This field is used by the TrinityDB Team to determine whether a template has been verified from WDB files.

If value is 0 then it has not been parsed yet.

If value is above 0 then it has been parsed with WDB files from that specific client build.

If value is -1 then it is just a place holder until proper data are found on WDBs.

If value is -Client Build then it was parsed with WDB files from that specific client build and manually edited later for some special necessity.