Diferencia entre revisiones de «Creature template»

De TimelessWoW
Ir a la navegación Ir a la búsqueda
Sin resumen de edición
Sin resumen de edición
Línea 1158: Línea 1158:
=== unit_flags ===
=== unit_flags ===
Permite la aplicación manual de flags de unidad. Una vez más es una máscara de bits y puede combinarse sumando valores.
Permite la aplicación manual de flags de unidad. Una vez más es una máscara de bits y puede combinarse sumando valores.
{| class="wikitable"
!
! Flag
! Nombre
! Comentario
|-
| 1
| 0x0000 0001
| UNIT_FLAG_UNK_0
|-
| 2
| 0x0000 0002
| UNIT_FLAG_NON_ATTACKABLE
|-
| 4
| 0x0000 0004
| UNIT_FLAG_DISABLE_MOVE
| Evita que la criatura se mueva en absoluto
|-
| 8
| 0x0000 0008
| UNIT_FLAG_PVP_ATTACKABLE
| Permite aplicar las reglas JcJ al estado atacable además de ser dependiente de facción
|-
| 16
| 0x0000 0010
| UNIT_FLAG_RENAME
|-
| 32
| 0x0000 0020
| UNIT_FLAG_PREPARATION
| No usa componentes con los hechizos que tienen SPELL_ATTR_EX5_NO_REAGENT_WHILE_PREP
|-
| 64
| 0x0000 0040
| UNIT_FLAG_UNK_6
|-
| 128
| 0x0000 0080
| UNIT_FLAG_NOT_ATTACKABLE_1
| UNIT_FLAG_NOT_ATTACKABLE_1 es NON_PVP_ATTACKABLE
|-
| 256
| 0x0000 0100
| UNIT_FLAG_IMMUNE_TO_PC
| Desactiva combate/asistencia con jugadores
|-
| 512
| 0x0000 0200
| UNIT_FLAG_IMMUNE_TO_NPC
| Desactiva combate/asistencia con npcs
|-
| 1024
| 0x0000 0400
| UNIT_FLAG_LOOTING
| Animacion del loot
|-
| 2048
| 0x0000 0800
| UNIT_FLAG_PET_IN_COMBAT
| ¿En combate? 208
|-
| 4096
| 0x0000 1000
| UNIT_FLAG_PVP
| Cambiado en 303
|-
| 8192
| 0x0000 2000
| UNIT_FLAG_SILENCED
| No puede lanzar hechizos
|-
| 16384
| 0x0000 4000
| UNIT_FLAG_UNK_14
| 208
|-
| 32768
| 0x0000 8000
| UNIT_FLAG_UNK_15
|-
| 65536
| 0x0001 0000
| UNIT_FLAG_UNK_16
|-
| 131072
| 0x0002 0000
| UNIT_FLAG_PACIFIED
| La criatura no atacará.
|-
| 262144
| 0x0004 0000
| UNIT_FLAG_STUNNED
| 3.0.3 ok.
|-
| 524288
| 0x0008 0000
| UNIT_FLAG_IN_COMBAT
|-
| 1048576
| 0x00010 0000
| UNIT_FLAG_TAXI_FLIGHT
| Desactiva el lanzamiento de hechizos no permitidos en ruta de vuelo (¿montado?). Probablemente usado junto con el flag 0x4.
|-
| 2097152
| 0x0020 0000
| UNIT_FLAG_DISARMED
| 3.0.3, desactiva el lanzamientos de hechizos cuerpo a cuerpo. Se añade "necesita arma cuerpo a cuerpo" a los hechizos.
|-
| 4194304
| 0x0040 0000
| UNIT_FLAG_CONFUSED
|-
| 8388608
| 0x0080 0000
| UNIT_FLAG_FLEEING
|-
| 16777216
| 0x0100 0000
| UNIT_FLAG_PLAYER_CONTROLLED
| Usado en el hechizos Ojos de la bestia para mascota. Permite el ataque de la criatura controlada. También usado en vehículos controlados (PVC).
|-
| 33554432
| 0x0200 0000
| UNIT_FLAG_NOT_SELECTABLE
| No puede ser seleccionado con el ratón o con /target {nombre}.
|-
| 67108864
| 0x0400 0000
| UNIT_FLAG_SKINNABLE
|-
| 134217728
| 0x0800 0000
| UNIT_FLAG_MOUNT
| El cliente parece manejarlo perfectamente. También usado al crear monturas custom.
|-
| 268435456
| 0x1000 0000
| UNIT_FLAG_UNK_28
|-
| 536870912
| 0x2000 0000
| UNIT_FLAG_UNK_29
| Usado en el hechizo Fingir muerte o en un npc que aparente estar muerto.
|-
| 1073741824
| 0x4000 0000
| UNIT_FLAG_SHEATHE
|-
| 2147483648
| 0x8000 0000
| UNIT_FLAG_UNK_31
|-
|}
=== unit_flags2 ===
Permite la aplicación manual de otros flags de unidad. Otra vez más es una máscara de bits y puede combinarse sumando valores.
{| class="wikitable"
!
! Flag
! Nombre
! Comentario
|-
| 1
| 0x0000 0001
| UNIT_FLAG2_FEIGN_DEATH
|-
| 2
| 0x0000 0002
| UNIT_FLAG2_UNK1
| Esconde el modelo de la unidad (muestra solo el equipo del jugador).
|-
| 4
| 0x0000 0004
| UNIT_FLAG2_IGNORE_REPUTATION
|-
| 8
| 0x0000 0008
| UNIT_FLAG2_COMPREHEND_LANG
|-
| 16
| 0x0000 0010
| UNIT_FLAG2_MIRROR_IMAGE
|-
| 32
| 0x0000 0020
| UNIT_FLAG2_INSTANTLY_APPEAR_MODEL
| El modelo de la unidad aparece instantaneamente cuando es summoneada (no deforma gradual).
|-
| 64
| 0x0000 0040
| UNIT_FLAG2_FORCE_MOVEMENT
|-
| 128
| 0x0000 0080
| UNIT_FLAG2_DISARM_OFFHAND
|-
| 256
| 0x0000 0100
| UNIT_FLAG2_DISABLE_PRED_STATS
| El jugador tiene deshabilitado estadísticas previstas (utilizado por los frames de banda).
|-
| 1024
| 0x0000 0400
| UNIT_FLAG2_DISARM_RANGED
| No deshabilita el display del arma de rango (¿posiblemente sea necesario otro flag?).
|-
| 2048
| 0x0000 0800
| UNIT_FLAG2_REGENERATE_POWER
| Tiene la capacidad de regenerar poder (vida, mana..)
|-
| 4096
| 0x0000 1000
| UNIT_FLAG2_RESTRICT_PARTY_INTERACTION
| Restringe interacción para un grupo o banda.
|-
| 8192
| 0x0000 2000
| UNIT_FLAG2_PREVENT_SPELL_CLICK
| Previene spellclick.
|-
| 16384
| 0x0000 4000
| UNIT_FLAG2_ALLOW_ENEMY_INTERACT
|
|-
| 32768
| 0x0000 8000
| UNIT_FLAG2_DISABLE_TURN
|-
| 65536
| 0x0001 0000
| UNIT_FLAG2_UNK2
|-
| 131072
| 0x0002 0000
| UNIT_FLAG2_UNK2
| Reproduce una animación de muerte especial cuando muere.
|-
| 262144
| 0x0004 0000
| UNIT_FLAG2_ALLOW_CHEAT_SPELLS
| Permite lanzar hechizos con AttributesEx7 & SPELL_ATTR7_IS_CHEAT_SPELL.
|-
|}
=== dynamicflags ===
Flags que controlan la apariencia visual de la criatura.
Algunos conocidas:
{| class="wikitable"
!
! Flag
! Nombre
! Comentario
|-
| 0
| 0x00
| UNIT_DYNFLAG_NONE
|-
| 1
| 0x01
| UNIT_DYNFLAG_LOOTABLE
|-
| 2
| 0x02
| UNIT_DYNFLAG_TRACK_UNIT
| La ubicación de la criatura se verá como un pequeño punto en el minimapa.
|-
| 4
| 0x04
| UNIT_DYNFLAG_TAPPED
| Hace que el nombre de la criatura aparezca gris, como si otro jugador hubiera golpeado antes (Lua_UnitIsTapped).
|-
| 8
| 0x08
| UNIT_DYNFLAG_TAPPED_BY_PLAYER
| Generalmente usado en los vehículos controlados por jugadores (Lua_UnitIsTappedByPlayer).
|-
| 16
| 0x10
| UNIT_DYNFLAG_SPECIALINFO
|-
| 32
| 0x20
| UNIT_DYNFLAG_DEAD
| Hace que la criatura parezca muerta (Esto no hace que el nombre aparezca gris o que no ataque a los jugadores).
|-
| 64
| 0x40
| UNIT_DYNFLAG_REFER_A_FRIEND
|-
| 128
| 0x20
| UNIT_DYNFLAG_TAPPED_BY_ALL_THREAT_LIST
| (Lua_UnitIsTappedByAllThreatList).
|-
|}
=== family ===
La familia a la que pertenece la criatura.
{| class="wikitable"
! ID
! FAMILIA
! ID
! FAMILIA
|-
| 1
| Lobo
| 26
| Búo
|-
| 2
| Felino
| 27
| Serpiente alada
|-
| 3
| Araña
| 28
| Control remoto
|-
| 4
| Oso
| 29
| Guardia vil
|-
| 5
| Javalí
| 30
| Dracohalcon
|-
| 6
| Crocolisco
| 31
| Devastador
|-
| 7
| Carroñero
| 32
| Acechador de distorsión
|-
| 8
| Cangrjo
| 33
| Esporiélago
|-
| 9
| Gorila
| 34
| Raya Abisal
|-
| 11
| Raptor
| 35
| Serpiente
|-
| 12
| Zancaalta
| 37
| Polilla
|-
| 15
| Manáfago
| 38
| Quimera
|-
| 16
| Abisario
| 39
| Demosaurio
|-
| 17
| Súcubo
| 40
| Necrófago
|-
| 19
| Guardia apocalíptico
| 41
| Silítido
|-
| 20
| Escórpido
| 42
| Gusano
|-
| 21
| Tortuga
| 43
| Rinoceronte
|-
| 23
| Diablillo
| 44
| Avispa
|-
| 24
| Murciélago
| 45
| Can del Núcleo
|-
| 25
| Hiena
| 46
| Bestia Espíritu
|-
|}
=== trainer_type ===
Si el NPC es un instructor (tiene el flag de instructor), este campo controla de qué tipo es. Tienen que rellenarse tanto este campo como el correspondiente para que funcione.
{| class="wikitable"
! ID
! Tipo
! Campo correspondiente
! Comentarios
|-
| 0
| TRAINER_TYPE_CLASS
| trainer_class
| Enseña hechizos de clase.
|-
| 1
| TRAINER_TYPE_MOUNTS
| trainer_rece
| Enseña equitación.
|-
| 2
| TRAINER_TYPE_TRADESKILLS
| trainer_spell
| Enseña profesiones.
|-
| 3
| TRAINER_TYPE_PETS
| trainer_class
| Enseña hechizos de mascota.
|-
|}
=== trainer_spell ===
SI el NPC enseña hechizos de profesión (trainer_type == 2), entonces el jugador debe conocer la ID del hechizo que se especifique aquí para poder hablar con este NPC.
=== trainer_class ===
Si el NPC es instructor de clase o mascotas (trainer_type == 0 ó 3), entonces la clase del jugador debe ser la misma que la que aquí se especifique para poder hablar con este NPC. Para instructores de mascotas, este valor tiene que ser 3 (cazador). Ver class de la tabla Characters.
=== trainer_race ===
Si el NPC es un instructor de monturas (trainer_type == 1), entonces la raza del jugador tiene que ser la misma que la que aquí se especifique para poder hablar con este NPC. Ver race de la tabla Characters.
=== minrangedmg ===
Daño mínimo a distancia que causa la criatura.
=== maxrangedmg ===
Daño máximo a distancia que causa la criatura.
=== rangedattackpower ===
Igual que el campo attackpower pero referido a los ataques a distancia.
=== type ===
El tipo de la criatura.
{| class="wikitable"
! ID
! Tipo
|-
| 0
| Ninguno
|-
| 1
| Bestia
|-
| 2
| Dragonante
|-
| 3
| Demonio
|-
| 4
| Elemental
|-
| 5
| Gigante
|-
| 6
| No-Muerto
|-
| 7
| Humanoide
|-
| 8
| Alimaña
|-
| 9
| Mecánico
|-
| 10
| Sin especificar
|-
| 11
| Tótem
|-
| 12
| Mascota de vanidad
|-
| 13
| Nube de gas
|-
|}
=== type_flags ===
Este campo controla si un mob es minable, recolectable con herbalismo, o ser despojado por ingenieros. Si es alguno de estos tres, los datos del loot estarán en la tabla skinning_loot_template. También controla si un mob puede ser domesticado por cazadores. Los otros campos no tienen mucha importancia.
Algunos valores:

Revisión del 12:12 15 may 2025

La tabla `creature_template`

Esta tabla contiene la información básica de las criaturas. Si no hay datos aquí, la criatura no existe.

Estructura

Field Type Attributes Key Null Default Extra Comment
Entry mediumint(8) unsigned PRI NO 700000
Difficulty_entry_1 mediumint(8) unsigned NO 0
Difficulty_entry_2 mediumint(8) unsigned NO 0
Difficulty_entry_3 mediumint(8) unsigned NO 0
KillCredit1 int(11) unsigned NO 0
KillCredit2 int(11) unsigned NO 0
modelid1 mediumint(8) unsigned NO 3167
modelid2 mediumint(8) unsigned NO 5446
modelid3 mediumint(8) unsigned PRI NO 0
modelid4 mediumint(8) unsigned PRI NO 0
name char(100) signed NO Timeless
subname char(100) signed YES NULL
Iconname char(100) signed NO Timeless
goship_menu_id mediumint(8) signed YES 0
minlevel tinyint(3) unsigned NO 100
maxlevel tinyint(3) unsigned NO 1
exp smallint(2) signed NO 0
faction_A smallint(5) signed NO 35
faction_H smallint(5) signed NO 0
npcflag int(10) signed NO 1
speed_walk float signed NO 1 Result of 2.5/2.5, most common value
speed_run float signed NO 1.14286 Result of 8.0/7.0, most common value
scale float signed NO 1.5
rank tinyint(3) unsigned NO 1
mindmg float signed NO 0
maxdmg float signed NO 0
dmgschool tinyint(4) signed NO 0
attackpower int(10) unsigned NO 0
dmg_multiplier float signed NO 1
baseattacktime int(10) unsigned NO 2000
rangeattacktime int(10) unsigned NO 1000
unit_class tinyint(3) unsigned NO 1
unit_flag int(10) unsigned NO 0
unit_flag2 int(10) unsigned NO 0
dynamicflags int(10) unsigned NO 0
family tinyint(4) signed NO 0
trainer_type tinyint(4) signed NO 0
trainer_spell mediumint(8) unsigned NO 0
trainer_class tinyint(3) unsigned NO 0
trainer_race tinyint(3) unsigned NO 0
minrangedmg float signed NO 0
maxrangedmg float signed NO 0
rangedattackpower smallint(5) unsigned NO 0
type tinyint(3) unsigned NO 7
type tinyint(3) unsigned NO 7
type_flag int(10) unsigned NO 0
lootid mediumint(8) unsigned NO 0
pickpocketloot mediumint(8) unsigned NO 0
skinloot mediumint(8) unsigned NO 0
resistance1 smallint(5) signed NO 200
resistance2 smallint(5) signed NO 200
resistance3 smallint(5) signed NO 200
resistance4 smallint(5) signed NO 200
resistance5 smallint(5) signed NO 200
resistance6 smallint(5) signed NO 200
spell1 mediumint(8) unsigned NO 0
spell2 mediumint(8) unsigned NO 0
spell3 mediumint(8) unsigned NO 0
spell4 mediumint(8) unsigned NO 0
spell5 mediumint(8) unsigned NO 0
spell6 mediumint(8) unsigned NO 0
spell7 mediumint(8) unsigned NO 0
spell8 mediumint(8) unsigned NO 0
PetSpellDataId mediumint(8) unsigned NO 0
VehicleId mediumint(8) unsigned NO 0
mingold mediumint(8) unsigned NO 100000
maxgold mediumint(8) unsigned NO 100000
AIName char(64) signed NO *
MovementType tinyint(3) unsigned NO 0
InhabitType tinyint(3) unsigned NO 3
HoverHeight float signed NO 0
Health_mod float signed NO 100000
Mana_mod float signed NO 100000
Armor_mod float signed NO 100000
RacialLeader tinyint(3) unsigned NO 0
Questitem1 int(11) unsigned NO 0
Questitem2 int(11) unsigned NO 0
Questitem3 int(11) unsigned NO 0
Questitem4 int(11) unsigned NO 0
Questitem5 int(11) unsigned NO 0
Questitem6 int(11) unsigned NO 0
movementID int(11) unsigned NO 0
RegenHealth tinyint(3) unsigned NO 1
mechanic_immune_mask int(10) unsigned NO 0
flags_extra int(10) unsigned NO 0
ScriptName char(64) signed NO *
WDBVerified smallint(5) signed YES 1

Descripción de los campos

entry

La ID única de la criatura.

difficulty_entry_1-3

Este campo enlaza los datos de esta criatura a otro entry para crear copias en modos de dificultad distintos. Cada uno de estos tres campos se rellena dependiendo de en que tipo de estancia está la criatura y en que modos aparecerá una copia suya (definida mediante el otro entry).

Tipo estancia difficulty entry 1 difficulty entry 2 difficulty entry 3
Estancia normal (5j.) Modo heroico (5j.)
Raid normal (10j.) Modo normal (25j.) Modo heroico (10j.) Modo heroico (25j.)

KillCredit1

Cuando el npc se usa como plantilla para enlazar varias criaturas distintas que se pueden matar para cumplir el objetivo de una misión (el entry de este npc es el que aparece en los requisitos de la misión en quest_template). Aquí se pone el entry de la criatura que se puede matar.

KillCredit2

Campo igual que el de arriba. Aquí se pone el segundo entry de la criatura que se puede matar. Si se pueden matar más de dos criaturas, hay que programarlo por Smart AI o scripts C++.

modelid1-4

Un modelo visual aleatorio que elige el cliente. Es el valor de modelid de creature_model_info.

name

El nombre de la criatura.

subname

El subnombre de la criatura que aparece entre <> bajo su nombre.

IconName

Nombre del icono que usa el npc y que dice a un player que tipo de npc es. Requiere que se escriba con las mayúsculas y las minúsculas (case sensitive). Tipos conocidos:

  • Directions - Usado por guardias y npcs que teletransporten.
  • Gunner - Indicador de un npc torreta controlado por jugadores.
  • vehichleCursor - Indicador de que es un vehículo controlado por jugadores.
  • Driver - Muestra un icono de volante cuando se pasa el ratón por encima del npc.
  • Attack - Muestra un icono de espada que indica que puedes atacarlo.
  • Buy - Muestra un icono de una bolsa marrón por lo general si el npc sólo vende cosas.
  • Speak - Muestra un icono de chat si el npc tiene opciones de quest o gossips.
  • Pickup - Muestra el icono de una mano que indica que el npc puede ser recogido/investigado para quests o items (no confundir con icono de loot).
  • Interact - Muestra el icono de la rueda dentada generalmente usado para transportes y quests.
  • Trainer - Muestra un icono de libro, identificando al npc como instructor.
  • Taxi - Muestra el icono de unas botas con alas que identifican al npc como maestro de vuelo.
  • Repair - Muestra el icono de un yunque identificando al npc como reparador.
  • LootAll - Muestra el icono de múltiples bolsas marrones (el mismo que mantener shift antes de lootear a una criatura).
  • Quest - Desconocido (ver npc 32870).
  • PVP - Desconocido (ver npc 29387).

Nota: Esto no es requerido para que el npc haga su función a menos que use scripts u opciones de gossip.

=== gossip_menu_id La ID del gossip de la criatura. Este campo se obtiene del servidor oficial. Este campo enlaza con entry de gossip_menu.

minlevel

El nivel mínimo que tiene la criatura.

maxlevel

El nivel máximo que tiene la criatura. Cuando se añade al mundo, elegirá un nivel aleatorio dentro del rango.

exp

La expansión a la que pertenece la criatura, usado para calcular su salud. Los valores pueden ser 0, 1 ó 2.

faction_A

La facción que tiene la criatura con la Alianza tomada de FactionTemplate.dbc.

Nota: Este campo también controla el comportamiento de la mecánica de asistencia de grupo de criaturas. Sólo las criaturas con la misma facción se ayudarán mutuamente.

faction_H

La facción que tiene la criatura con la Horda tomada de FactionTemplate.dbc.

Nota: Este campo también controla el comportamiento de la mecánica de asistencia de grupo de criaturas. Sólo las criaturas con la misma facción se ayudarán mutuamente.

npcflag

Una máscara de bits que representa las flags que tiene la criatura. Cada bit controla una flag diferente. Para combinar flags, basta con sumar los valores.

Flag Nombre Comentario
1 0x0000 0001 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
2 0x0000 0002 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
16 0x0000 0010 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
32 0x0000 0020 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
64 0x0000 0040 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
128 0x0000 0080 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
256 0x0000 0100 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
512 0x0000 0200 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
1024 0x0000 0400 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
2048 0x0000 0800 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
4096 0x0000 1000 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
8192 0x0000 2000 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
16384 0x0000 4000 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
32768 0x0000 8000 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
65536 0x0001 0000 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
131072 0x0002 0000 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
262144 0x0004 0000 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
65536 0x0008 0000 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
524288 0x0010 0000 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
1048576 0x0020 0000 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
2097152 0x0040 0000 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
4194304 0x0080 0000 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
4194304 0x0100 0000 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
8388608 0x0000 0001 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
16777216 0x0000 0001 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.
67108864 0x0400 0000 Gossip Si la criatura tiene un menú de gossip (texto al hacerle click), este flag le da menú.

Entonces si quieres que un npc dé misiones, sea vendedor y pueda reparar, tienes que sumar las flags: 1 + 2 + 128 + 4096 = 4227. Lo mismo con los números hexadecimales: 0x1 + 0x2 + 0x80 + 0x1000 = 0x1083

speed_walk

Controla la velocidad a la que camina la criatura. En los vehículos incrementa la velocidad de vuelo.

speed_run

Controla la velocidad a la que corre la criatura. En los vehículos incrementa la velocidad en tierra.

scale

Si es distinto de cero, multiplica el tamaño del modelo que usa la criatura. Si es cero, usa el tamaña por defecto.

rank

El rango de la criatura:

Rango Nombre Tiempo de respawn por defecto

(spawntimesecs de creature)

Tiempo de desaparición de cadáver

(Worldserver.conf - Corpse.Decay)

Tiempo de respawn total
0 Normal 5 min. 60 seg. 6 min.
1 Élite 5 min. 5 min. 10 min.
2 Élite/Raro 5 min. 5 min. 10 min.
3 Boss 5 min. 1 hora. 1 hora, 5 min.
4 Raro 5 min. 5 min. 10 min.

Notas:

  • El rango de una criatura es meramente visual (requiere borrar Caché para ver los cambios). Cambiar este valor no modifica ni la salud, ni el daño ni el loot. Sin embargo si cambiará el tiempo de respawn de la criatura.
  • Los tiempos de respawn se modifican en dos lugares:
    • El spawntimesecs de creature (sólo para un único guid).
    • En el archivo worldserver.conf en los ajustes de "Corpse.Decay" (para todas las criaturas del mismo rango).

Importante recordar que el `spawntimesecs` por defecto para todas las criaturas es de 5 minutos y que para que el npc pueda respawnear antes debe desaparecer su cuerpo. Por ejemplo, usando ".npc add" para spawnear un npc "Normal" estableceremos un tiempo de respawn de 6 minutos (spawntimesecs + tiempo de Corpse.Decay). Si modificamos el spawntimesecs y lo ponemos en 0, el tiempo establecido en Corpse.Decay se convertirá en el mínimo tiempo de respawn (1 minuto).

  • Si quieres que el npc muestre una calavera o "??" en el retrato (generalmente bosses), establecer type_flags en 4.

mindmg

Daño mínimo que hace la criatura cuerpo a cuerpo. Este campo ya no se combina con attackpower para calcular el daño.

maxdmg

Daño máximo que hace la criatura cuerpo a cuerpo. Este campo ya no se combina con attackpower para calcular el daño.

dmgschool

El tipo de daño que hace cuerpo a cuerpo.

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

attackpower

El poder de ataque de los golpes cuerpo a cuerpo de la criatura. Junto con mindmg y maxdmg dicta cuanto llegará la criatura a golpear. La fórmula para aplicar daños correctos es: 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` = ...

Sustituye '<#1> por el daño mínimo que desees y '<#2>' por el máximo. Nota: Una vez ejecutado el query es necesario comprobar los valores calculados ya que si la diferencia entre mindmg y maxdmg es demasiado grande, mindmg terminará siendo un valor negativo.

dmg_multiplier

Multiplicador para mindmg y maxdmg.

Ejemplo: mindmg=200 maxdmg = 500 dmg_multiplier = 10.

Resultado: el npc pegará golpes de 2000-5000.

baseattacktime

El tiempo que tarda en dar golpes cuerpo a cuerpo. En milisegundos.

rangeattacktime

El tiempo que tarda en dar golpes a distancia. En milisegundos.

unit_class

La clase de la criatura, para determinar si tiene ira, maná, nada, etc.

Nombre de clase Valor
CLASS_WARRIOR 1
CLASS_PALADÍN 2
CLASS_ROUGE 4
CLASS_MAGE 8

unit_flags

Permite la aplicación manual de flags de unidad. Una vez más es una máscara de bits y puede combinarse sumando valores.

Flag Nombre Comentario
1 0x0000 0001 UNIT_FLAG_UNK_0
2 0x0000 0002 UNIT_FLAG_NON_ATTACKABLE
4 0x0000 0004 UNIT_FLAG_DISABLE_MOVE Evita que la criatura se mueva en absoluto
8 0x0000 0008 UNIT_FLAG_PVP_ATTACKABLE Permite aplicar las reglas JcJ al estado atacable además de ser dependiente de facción
16 0x0000 0010 UNIT_FLAG_RENAME
32 0x0000 0020 UNIT_FLAG_PREPARATION No usa componentes con los hechizos que tienen SPELL_ATTR_EX5_NO_REAGENT_WHILE_PREP
64 0x0000 0040 UNIT_FLAG_UNK_6
128 0x0000 0080 UNIT_FLAG_NOT_ATTACKABLE_1 UNIT_FLAG_NOT_ATTACKABLE_1 es NON_PVP_ATTACKABLE
256 0x0000 0100 UNIT_FLAG_IMMUNE_TO_PC Desactiva combate/asistencia con jugadores
512 0x0000 0200 UNIT_FLAG_IMMUNE_TO_NPC Desactiva combate/asistencia con npcs
1024 0x0000 0400 UNIT_FLAG_LOOTING Animacion del loot
2048 0x0000 0800 UNIT_FLAG_PET_IN_COMBAT ¿En combate? 208
4096 0x0000 1000 UNIT_FLAG_PVP Cambiado en 303
8192 0x0000 2000 UNIT_FLAG_SILENCED No puede lanzar hechizos
16384 0x0000 4000 UNIT_FLAG_UNK_14 208
32768 0x0000 8000 UNIT_FLAG_UNK_15
65536 0x0001 0000 UNIT_FLAG_UNK_16
131072 0x0002 0000 UNIT_FLAG_PACIFIED La criatura no atacará.
262144 0x0004 0000 UNIT_FLAG_STUNNED 3.0.3 ok.
524288 0x0008 0000 UNIT_FLAG_IN_COMBAT
1048576 0x00010 0000 UNIT_FLAG_TAXI_FLIGHT Desactiva el lanzamiento de hechizos no permitidos en ruta de vuelo (¿montado?). Probablemente usado junto con el flag 0x4.
2097152 0x0020 0000 UNIT_FLAG_DISARMED 3.0.3, desactiva el lanzamientos de hechizos cuerpo a cuerpo. Se añade "necesita arma cuerpo a cuerpo" a los hechizos.
4194304 0x0040 0000 UNIT_FLAG_CONFUSED
8388608 0x0080 0000 UNIT_FLAG_FLEEING
16777216 0x0100 0000 UNIT_FLAG_PLAYER_CONTROLLED Usado en el hechizos Ojos de la bestia para mascota. Permite el ataque de la criatura controlada. También usado en vehículos controlados (PVC).
33554432 0x0200 0000 UNIT_FLAG_NOT_SELECTABLE No puede ser seleccionado con el ratón o con /target {nombre}.
67108864 0x0400 0000 UNIT_FLAG_SKINNABLE
134217728 0x0800 0000 UNIT_FLAG_MOUNT El cliente parece manejarlo perfectamente. También usado al crear monturas custom.
268435456 0x1000 0000 UNIT_FLAG_UNK_28
536870912 0x2000 0000 UNIT_FLAG_UNK_29 Usado en el hechizo Fingir muerte o en un npc que aparente estar muerto.
1073741824 0x4000 0000 UNIT_FLAG_SHEATHE
2147483648 0x8000 0000 UNIT_FLAG_UNK_31

unit_flags2

Permite la aplicación manual de otros flags de unidad. Otra vez más es una máscara de bits y puede combinarse sumando valores.

Flag Nombre Comentario
1 0x0000 0001 UNIT_FLAG2_FEIGN_DEATH
2 0x0000 0002 UNIT_FLAG2_UNK1 Esconde el modelo de la unidad (muestra solo el equipo del jugador).
4 0x0000 0004 UNIT_FLAG2_IGNORE_REPUTATION
8 0x0000 0008 UNIT_FLAG2_COMPREHEND_LANG
16 0x0000 0010 UNIT_FLAG2_MIRROR_IMAGE
32 0x0000 0020 UNIT_FLAG2_INSTANTLY_APPEAR_MODEL El modelo de la unidad aparece instantaneamente cuando es summoneada (no deforma gradual).
64 0x0000 0040 UNIT_FLAG2_FORCE_MOVEMENT
128 0x0000 0080 UNIT_FLAG2_DISARM_OFFHAND
256 0x0000 0100 UNIT_FLAG2_DISABLE_PRED_STATS El jugador tiene deshabilitado estadísticas previstas (utilizado por los frames de banda).
1024 0x0000 0400 UNIT_FLAG2_DISARM_RANGED No deshabilita el display del arma de rango (¿posiblemente sea necesario otro flag?).
2048 0x0000 0800 UNIT_FLAG2_REGENERATE_POWER Tiene la capacidad de regenerar poder (vida, mana..)
4096 0x0000 1000 UNIT_FLAG2_RESTRICT_PARTY_INTERACTION Restringe interacción para un grupo o banda.
8192 0x0000 2000 UNIT_FLAG2_PREVENT_SPELL_CLICK Previene spellclick.
16384 0x0000 4000 UNIT_FLAG2_ALLOW_ENEMY_INTERACT
32768 0x0000 8000 UNIT_FLAG2_DISABLE_TURN
65536 0x0001 0000 UNIT_FLAG2_UNK2
131072 0x0002 0000 UNIT_FLAG2_UNK2 Reproduce una animación de muerte especial cuando muere.
262144 0x0004 0000 UNIT_FLAG2_ALLOW_CHEAT_SPELLS Permite lanzar hechizos con AttributesEx7 & SPELL_ATTR7_IS_CHEAT_SPELL.

dynamicflags

Flags que controlan la apariencia visual de la criatura.

Algunos conocidas:

Flag Nombre Comentario
0 0x00 UNIT_DYNFLAG_NONE
1 0x01 UNIT_DYNFLAG_LOOTABLE
2 0x02 UNIT_DYNFLAG_TRACK_UNIT La ubicación de la criatura se verá como un pequeño punto en el minimapa.
4 0x04 UNIT_DYNFLAG_TAPPED Hace que el nombre de la criatura aparezca gris, como si otro jugador hubiera golpeado antes (Lua_UnitIsTapped).
8 0x08 UNIT_DYNFLAG_TAPPED_BY_PLAYER Generalmente usado en los vehículos controlados por jugadores (Lua_UnitIsTappedByPlayer).
16 0x10 UNIT_DYNFLAG_SPECIALINFO
32 0x20 UNIT_DYNFLAG_DEAD Hace que la criatura parezca muerta (Esto no hace que el nombre aparezca gris o que no ataque a los jugadores).
64 0x40 UNIT_DYNFLAG_REFER_A_FRIEND
128 0x20 UNIT_DYNFLAG_TAPPED_BY_ALL_THREAT_LIST (Lua_UnitIsTappedByAllThreatList).

family

La familia a la que pertenece la criatura.

ID FAMILIA ID FAMILIA
1 Lobo 26 Búo
2 Felino 27 Serpiente alada
3 Araña 28 Control remoto
4 Oso 29 Guardia vil
5 Javalí 30 Dracohalcon
6 Crocolisco 31 Devastador
7 Carroñero 32 Acechador de distorsión
8 Cangrjo 33 Esporiélago
9 Gorila 34 Raya Abisal
11 Raptor 35 Serpiente
12 Zancaalta 37 Polilla
15 Manáfago 38 Quimera
16 Abisario 39 Demosaurio
17 Súcubo 40 Necrófago
19 Guardia apocalíptico 41 Silítido
20 Escórpido 42 Gusano
21 Tortuga 43 Rinoceronte
23 Diablillo 44 Avispa
24 Murciélago 45 Can del Núcleo
25 Hiena 46 Bestia Espíritu

trainer_type

Si el NPC es un instructor (tiene el flag de instructor), este campo controla de qué tipo es. Tienen que rellenarse tanto este campo como el correspondiente para que funcione.

ID Tipo Campo correspondiente Comentarios
0 TRAINER_TYPE_CLASS trainer_class Enseña hechizos de clase.
1 TRAINER_TYPE_MOUNTS trainer_rece Enseña equitación.
2 TRAINER_TYPE_TRADESKILLS trainer_spell Enseña profesiones.
3 TRAINER_TYPE_PETS trainer_class Enseña hechizos de mascota.

trainer_spell

SI el NPC enseña hechizos de profesión (trainer_type == 2), entonces el jugador debe conocer la ID del hechizo que se especifique aquí para poder hablar con este NPC.

trainer_class

Si el NPC es instructor de clase o mascotas (trainer_type == 0 ó 3), entonces la clase del jugador debe ser la misma que la que aquí se especifique para poder hablar con este NPC. Para instructores de mascotas, este valor tiene que ser 3 (cazador). Ver class de la tabla Characters.

trainer_race

Si el NPC es un instructor de monturas (trainer_type == 1), entonces la raza del jugador tiene que ser la misma que la que aquí se especifique para poder hablar con este NPC. Ver race de la tabla Characters.

minrangedmg

Daño mínimo a distancia que causa la criatura.

maxrangedmg

Daño máximo a distancia que causa la criatura.

rangedattackpower

Igual que el campo attackpower pero referido a los ataques a distancia.

type

El tipo de la criatura.

ID Tipo
0 Ninguno
1 Bestia
2 Dragonante
3 Demonio
4 Elemental
5 Gigante
6 No-Muerto
7 Humanoide
8 Alimaña
9 Mecánico
10 Sin especificar
11 Tótem
12 Mascota de vanidad
13 Nube de gas

type_flags

Este campo controla si un mob es minable, recolectable con herbalismo, o ser despojado por ingenieros. Si es alguno de estos tres, los datos del loot estarán en la tabla skinning_loot_template. También controla si un mob puede ser domesticado por cazadores. Los otros campos no tienen mucha importancia.

Algunos valores: