Diferencia entre revisiones de «Quest template»

De TimelessWoW
Ir a la navegación Ir a la búsqueda
Sin resumen de edición
 
(No se muestran 8 ediciones intermedias del mismo usuario)
Línea 81: Línea 81:
| SourceSpell||mediumint(8)||unsigned||||NO||0||||
| SourceSpell||mediumint(8)||unsigned||||NO||0||||
|-
|-
| Flags||int(10)||unsigned||NO||0||||
| Flags||int(10)||unsigned||NO||0||||||
|-
|-
| SpecialFlags||tinyint(3)||unsigned||||NO||0||||
| SpecialFlags||tinyint(3)||unsigned||||NO||0||||
Línea 133: Línea 133:
| RewardChoiceItemCount6||smallint(5)||unsigned||||NO||0||||
| RewardChoiceItemCount6||smallint(5)||unsigned||||NO||0||||
|-
|-
| RewardFactionId1||smallint(5)||unsigned||||NO||0||||faction id from Faction.dbc in this case||
| RewardFactionId1||smallint(5)||unsigned||||NO||0||||faction id from Faction.dbc in this case
|-
|-
| RewardFactionId2||smallint(5)||unsigned||||NO||0||||faction id from Faction.dbc in this case||
| RewardFactionId2||smallint(5)||unsigned||||NO||0||||faction id from Faction.dbc in this case
|-
|-
| RewardFactionId3||smallint(5)||unsigned||||NO||0||||faction id from Faction.dbc in this case||
| RewardFactionId3||smallint(5)||unsigned||||NO||0||||faction id from Faction.dbc in this case
|-
|-
| RewardFactionId4||smallint(5)||unsigned||||NO||0||||faction id from Faction.dbc in this case||
| RewardFactionId4||smallint(5)||unsigned||||NO||0||||faction id from Faction.dbc in this case
|-
|-
| RewardFactionId5||smallint(5)||unsigned||||NO||0||||faction id from Faction.dbc in this case||
| RewardFactionId5||smallint(5)||unsigned||||NO||0||||faction id from Faction.dbc in this case
|-
|-
| RewardRepValueId1||mediumint(6)||signed||||NO||0||||
| RewardRepValueId1||mediumint(6)||signed||||NO||0||||
Línea 290: Línea 290:
|-
|-
|}
|}
==Descripción de los campos==
==Descripción de los campos==


Línea 568: Línea 569:
===Flags===
===Flags===
Flags de la misión para definirla más específicamente, con el objetivo de clasificarla. Para combinar varios flags, sumar los valores.
Flags de la misión para definirla más específicamente, con el objetivo de clasificarla. Para combinar varios flags, sumar los valores.
{| class="wikitable"
|-
! BIT!! Nombre !! Comentario
|-
| 0||QUEST_FLAGS_NONE||Ninguno.
|-
| 1||QUEST_FLAGS_STAY_ALIVE||Si muere el jugador, la misión falla.
|-
| 2||QUEST_FLAGS_PARTY_ACCEPT||Misiones de escolta o cualquiera que tenga un evento. Si el jugador está en grupo, todos los miembros pueden aceptar la misión y les saldrá un mensaje de confirmación.
|-
| 4||QUEST_FLAGS_EXPLORATION||Relacionado con la activación de un areatrigger.
|-
| 8||QUEST_FLAGS_SHARABLE||Permite compartir la misión con otros jugadores.
|-
| 16||QUEST_FLAGS_NONE2||Desconocido.
|-
| 32||QUEST_FLAGS_EPIC||Misiones épicas.
|-
| 64||QUEST_FLAGS_RAID||Se necesita una banda para la misión.
|-
| 128||QUEST_FLAGS_TBC||Añadida con o después de The Burning Crusade.
|-
| 256||QUEST_FLAGS_DELIVER_MORE||La misión necesita items extra que no están en los objetivos de la misión (ej. RequiredSourceItemID).
|-
| 512||QUEST_FLAGS_HIDDEN_REWARDS||Los items y dinero de recompensa están ocultos en los detalles de la misión, pero aparecerán cuando se termine.
|-
| 1024||QUEST_FLAGS_AUTO_REWARDED||Estas misiones se entregan automáticamente al completar sus objetivos y nunca aparecen en el registro de misiones.
|-
| 2048||QUEST_FLAGS_TBC_RACES||Misiones de inicio de Elfos de sangre/Draenei.
|-
| 4096||QUEST_FLAGS_DAILY||Misiones diarias repetibles.
|-
| 8192||QUEST_FLAGS_REPEATABLE||Misiones repetibles.
|-
| 16384||QUEST_FLAGS_UNAVAILABLE||Misiones que de forma genérica no están disponibles para hacerlas.
|-
| 32768||QUEST_FLAGS_WEEKLY||Misiones semanales repetibles.
|-
| 65536||QUEST_FLAGS_AUTOCOMPLETE||Autocompletable.
|-
| 131072||QUEST_SPECIAL_ITEM||Hay algo que hacer con RequiredItemId y RequiredSourceItemID
|-
| 262144||QUEST_FLAGS_OBJ_TEXT||Usa ObjectiveText como CompletedText.
|-
| 524288||QUEST_FLAGS_AUTO_ACCEPT||Misiones en las zonas de inicio.
|-
|}
NOTA: algunos flags no están soportados por el emulador.
===SpecialFlags===
Este campo es una máscara de bits controlando funciones externas al servidor. Como no viene de los servidores oficiales, hay que cambiarlo a mano.
*0: Sin requerimentos extra.
*1: Hace la misión repetible.
*2: Hace la misión completable cuando se cumple cierto evento (una entrada en areatrigger_involvedrelation, efecto de hechizo, efecto de misión completada o una entrada en spell_scripts con command = 7 son algunos ejemplos).
*4: Hace que la misión se auto-acepte.
*8: Flag usado por las misiones del Buscador de mazmorras.
*16: Hace la misión mensual.
===RewardTitleId===
El título que recibirá el jugador como recompensa al completar la misión. Ver CharTitles.dbc.
===RequiredPlayerKills===
Muestra cuantos jugadores debes matar antes de completar la misión.
===RewardTalents===
Talentos ganados como recompensa (misiones del Caballero de la Muerte). Establecer 0 para que no se gane nada.
===RewardArenaPoints===
Puntos de arena ganados como recompensa. Establecer 0 para que no se gane nada.
===RewardItemId===
ID del item recobido como recompensa (sin elección).
===RewardItemCount===
Cantidad de items con la ID definida en el campo anterior que se recibirán.
===RewardChoiceItemId===
ID del item que se podrá elegir como recompensa.
===RewardChoiceItemCount===
Cantidad de items con la ID definida en el campo anterior que se recibirán.
===RewardFactionId===
ID de la facción (de Faction.dbc) con el que se recibirá reputación como recompensa.
Normalmente la reputación ganada o perdida se calcula automáticamente, si se deja a 0.
===RewardFactionValueId===
Este campo se usa para hacer una consulta en QuestFactionReward.dbc. El valor X indica la columna X que se leerá. Si el valor es positivo, se lee la primera fila, si es negativo, la segunda.
===RewardFactionValueIdOverride===
Sirve para dar cantidades de reputaciones que no estén presentes en QuestFactionReward.dbc o para sobreescribir cantidades de reputación incorrectas cuando RewardFactionId es 0.
El valor de reputación que se quiera dar tiene que estar multiplicado por 100 (si queremos dar 400 puntos, indicaremos aquí 40000).
===PointMapId===
ID del mapa de un punto de interés de la misión. Sólo se mostrará con la misión activa.
===PointX===
Coordenada X del punto de interés.
===PointY===
Coordenada Y del punto de interés.
===PointOption===
Desconocido.
===Title===
Título de la misión.
===Objectives===
Objetivos de la misión. Si está vacío, la misión es una autocompletable que estará terminada antes de aceptarla.
===Details===
El texto de la misión.
En este campo puedes usar ciertos marcadores que muestran un texto distinto dependiendo de quien tome la misión:
*$B - Salto de línea
*$N - Nombre
*$R - Raza
*$C - Clase
*$Gmasculino:femenino; - Ejemplo: $Gelfo:elfa;
===EndText===
Cuando el objetivo es realizar alguna acción especial, como por ejemplo explorar una zona o escoltar a alguien, es el texto asociado a ese objetivo, que se completará cuando se cumpla el objetvo.
===OfferRewardText===
El texto que muestra el NPC antes de completar la misión, donde se ofrece elegir entre recompensas, si las hay.
En este campo puedes usar ciertos marcadores que muestran un texto distinto dependiendo de quien tome la misión:
*$B - Salto de línea
*$N - Nombre
*$R - Raza
*$C - Clase
*$Gmasculino:femenino; - Ejemplo: $Gelfo:elfa;
===RequestItemsText===
El texto que muestra el NPC cuando aún no se ha completado la misión.
En este campo puedes usar ciertos marcadores que muestran un texto distinto dependiendo de quien tome la misión:
*$B - Salto de línea
*$N - Nombre
*$R - Raza
*$C - Clase
$Gmasculino:femenino; - Ejemplo: $Gelfo:elfa;
===CompletedText===
Texto que aparece en el seguimiento de misiones al completarlas, del estilo "Vuelve con ... en ..."
===RequiredNpcOrGo===
'''''Valor > 0:''''' ID de la criatura en creature_template que hay que matar para completar el objetivo.
'''''Valor < 0:''''' ID de la entidad en gameobject_template que hay que usar para completar el objetivo.
Si RequiredSpellCast es distinto de 0, el objetivo es lanzar el hechizo indicado en dicho campo sobre la criatura/entidad que se establece en RequiredNpcOrGo.
NOTA: Si RequiredSpellCast es distinto de 0 y el hechizo tiene como efectos Send Event o Quest Complete, este campo se deja vacío.
===RequiredNpcOrGoCount===
Cantidad de los valores del campo anterior.
===RequiredSourceItemId===
ID del item que es necesario indirectamente. Por ejemplo, la misión pide un item X pero el único modo de conseguirlo es activando el item Y; sin embargo, el item Y también es un item de misión. Entonces se colocará la ID del item Y en este campo. Este requerimento no aparecerá en los textos de misión, sólo es para que el emulador sepa cuándo tirar un item que puede servir para la misión.
===RequiredSourceItemCount===
El número máximo de copias del item en RequiredSourceItemId que pueden recogerse (y tirarse por el emulador).
===RequiredItemId===
ID del item necesario para completar la misión.
===RequiredItemCount===
Cantidad necesaria del item indicado en el campo anterior. .
===Unknown0===
Campo desconocido.
===ObjectiveText===
Parecido a EndText, pero usado cuando hay más de un objetivo o hay que realizarlo varias veces.
===DetailsEmote===
Emoción que muestra el NPC cuando lees su misión.
===DetailsEmoteDelay===
Tiempo en ms que tarda en ejecutar la emoción del campo anterior.
===EmoteOnIncomplete===
Emoción que muestra el NPC cuando aún no has completado los objetivos.
===EmoteOnComplete===
Emoción que muestra el NPC cuando completas los objetivos.
===OfferRewardEmote===
Emoción que muestra el NPC cuando te recompensa la misión.
===OfferRewardEmoteDelay===
Tiempo en ms que tarda en ejecutar la emoción del campo anterior.
===WDBVerified===
Este campo es usado por el equipo de TrinityCore para mantener un registro de los datos que han sido comparados con el servidor oficial. No nos interesa.
<strong><big>Ejemplos</big></strong>
'''''Las reglas de encadenado de misiones'''''<br><br>
#Siempre usa PrevQuestId antes de NextQuestId. NextQuestId se considera opcional y sólo obligada cuando PrevQuestId no es suficiente.
Misión básica
''Individual, sin prerrequisitos''
{| class="wikitable"
|+ style="background:DarkSlateBlue; color:white; text-align:center;"|'''Misión A'''
|- style="background:Lavender; color:black"
|PrevQuestId = 0  NextQuestId = 0  ExclusiveGroup = 0  NextQuestInChain = 0  entry = Misión A
|-
|}
Cuando esta misión requiere haber completado otra
{| class="wikitable"
|+ style="background:DarkSlateBlue; color:white; text-align:center;"|'''Misión A'''
|- style="background:Lavender; color:black"
|PrevQuestId = misiónX  NextQuestId = 0        ExclusiveGroup = 0        NextQuestInChain = 0        entry = misiónA
|-
|}
=== Cadena de misiones ===
''Una cadena de misiones con un único orden''
{| class="wikitable"
|+ style="background:DarkSlateBlue; color:white; text-align:center;"|'''Misión A, B, C, D y E'''
|- style="background:Lavender; color:black"
|-
|bgcolor="99ff99"|Misión A||PrevQuestId = 0        NextQuestId = 0        ExclusiveGroup = 0        NextQuestInChain = misiónB    entry = misiónA
|-
|bgcolor="99ff99"|Misión B||PrevQuestId = misiónA  NextQuestId = 0        ExclusiveGroup = 0        NextQuestInChain = misiónC    entry = misiónB
|-
|bgcolor="99ff99"|Misión C||PrevQuestId = misiónB  NextQuestId = 0        ExclusiveGroup = 0        NextQuestInChain = misiónD    entry = misiónC
|-
|bgcolor="99ff99"|Misión D||PrevQuestId = misiónC  NextQuestId = 0        ExclusiveGroup = 0        NextQuestInChain = 0          entry = misiónD
|-
|}
===Cadena de misiones ===
''El jugador solo puede completar una de las tres iniciales que se le ofrecen''
<code>*misiónA*    *misiónB*    *misiónC*
        \          |          /
          ------ *misiónD* -----
                    |
                *misiónE*</code>
{| class="wikitable"
|+ style="background:DarkSlateBlue; color:white; text-align:center;"|'''Misión A, B, C, D y E'''
|- style="background:Lavender; color:black"
|-
|bgcolor="99ff99"|Misión A||PrevQuestId = 0        NextQuestId = misiónD  ExclusiveGroup = misiónA  NextQuestInChain = misiónD    entry = misiónA
|-
|bgcolor="99ff99"|Misión B||PrevQuestId = 0        NextQuestId = misiónD  ExclusiveGroup = misiónA  NextQuestInChain = misiónD    entry = misiónB
|-
|bgcolor="99ff99"|Misión C||PrevQuestId = 0        NextQuestId = misiónD  ExclusiveGroup = misiónA  NextQuestInChain = misiónD    entry = misiónC
|-
|bgcolor="99ff99"|Misión D||PrevQuestId = 0        NextQuestId = 0        ExclusiveGroup = 0        NextQuestInChain = misiónE    entry = misiónD
|-
|bgcolor="99ff99"|Misión E||PrevQuestId = misiónD  NextQuestId = 0        ExclusiveGroup = 0        NextQuestInChain = 0          entry = misiónE
|-
|}
===Cadena de misiones con múltiples misiones de inicio===
''El jugador debe completar las 3 misiones iniciales para desbloquear la D''
<code> *misiónA*    *misiónB*    *misiónC*
        \          |          /
        ------ *misiónD* -----
                  |
                *misiónE*</code>
{| class="wikitable"
|+ style="background:DarkSlateBlue; color:white; text-align:center;"|'''Misión A, B, C, D y E'''
|- style="background:Lavender; color:black"
|-
|bgcolor="99ff99"|Misión A||PrevQuestId = 0        NextQuestId = misiónD  ExclusiveGroup = -misiónA    NextQuestInChain = misiónD    entry = misiónA
|-
|bgcolor="99ff99"|Misión B||PrevQuestId = 0        NextQuestId = misiónD  ExclusiveGroup = -misiónA    NextQuestInChain = misiónD    entry = misiónB
|-
|bgcolor="99ff99"|Misión C||PrevQuestId = 0        NextQuestId = misiónD  ExclusiveGroup = -misiónA    NextQuestInChain = misiónD    entry = misiónC
|-
|bgcolor="99ff99"|Misión D||PrevQuestId = 0        NextQuestId = 0        ExclusiveGroup = 0          NextQuestInChain = misiónE    entry = misiónD
|-
|bgcolor="99ff99"|Misión E||PrevQuestId = misiónD  NextQuestId = 0        ExclusiveGroup = 0          NextQuestInChain = 0          entry = misiónE
|}
===Misiones con divisiones y submisiones===
''Completar A desbloquea B y C, que pueden ser hechas al mismo tiempo. Ambas tienen que ser completadas antes de que se desbloquee D. X se necesita para obtener un item para C y sólo se puede realizar mientras C esté activa''
<code>*misiónA*
                /        \
          *misiónB    *misiónC* - *misiónX*
                \        /
                *misiónD*</code>
{| class="wikitable"
|+ style="background:DarkSlateBlue; color:white; text-align:center;"|'''Misión A, B, C, D y E'''
|- style="background:Lavender; color:black"
|-
|bgcolor="99ff99"|Misión A||PrevQuestId = 0        NextQuestId = 0        ExclusiveGroup = 0          NextQuestInChain = 0        entry = misiónA
|-
|bgcolor="99ff99"|Misión B||PrevQuestId = misiónA  NextQuestId = misiónD  ExclusiveGroup = -misiónB  NextQuestInChain = 0        entry = misiónB
|-
|bgcolor="99ff99"|Misión C||PrevQuestId = misiónA  NextQuestId = misiónD  ExclusiveGroup = -misiónB  NextQuestInChain = 0        entry = misiónC
|-
|bgcolor="99ff99"|Misión X||PrevQuestId = -misiónC  NextQuestId = 0        ExclusiveGroup = 0          NextQuestInChain = 0        entry = misiónX
|-
|bgcolor="99ff99"|Misión D||PrevQuestId = 0        NextQuestId = 0        ExclusiveGroup = 0          NextQuestInChain = 0        entry = misiónD
|}
===Cadenas de misiones múltiples, conduciendo a una misión final===
''El jugador debe completar las tres cadenas para desbloquear la misión final''
<code>*misiónX*
                  |
    *misiónA*    *misiónC*    *misiónE*
      |          |            |
    *misiónB*    *misiónD*    *misiónF*
      \          |          /
        ------ *misiónG* -----</code>
{| class="wikitable"
|+ style="background:DarkSlateBlue; color:white; text-align:center;"|'''Misión A, B, C, D y E'''
|- style="background:Lavender; color:black"
|-
|bgcolor="99ff99"|Misión X||PrevQuestId = 0        NextQuestId = 0          ExclusiveGroup = 0          NextQuestInChain = misiónC    entry = misiónX
|-
|bgcolor="99ff99"|Misión A||PrevQuestId = 0        NextQuestId = 0          ExclusiveGroup = 0          NextQuestInChain = misiónB    entry = misiónA
|-
|bgcolor="99ff99"|Misión B||PrevQuestId = misiónA  NextQuestId = misiónG    ExclusiveGroup = -misiónB    NextQuestInChain = 0          entry = misiónB
|-
|bgcolor="99ff99"|Misión C||PrevQuestId = 0        NextQuestId = 0          ExclusiveGroup = 0          NextQuestInChain = misiónD    entry = misiónC
|-
|bgcolor="99ff99"|Misión D||PrevQuestId = misiónC  NextQuestId = misiónG    ExclusiveGroup = -misiónB    NextQuestInChain = 0          entry = misiónD
|-
|bgcolor="99ff99"|Misión E||PrevQuestId = 0        NextQuestId = 0          ExclusiveGroup = 0          NextQuestInChain = misiónF    entry = misiónE
|-
|bgcolor="99ff99"|Misión F||PrevQuestId = misiónE  NextQuestId = misiónG    ExclusiveGroup = -misiónB    NextQuestInChain = 0          entry = misiónF
|-
|}
===
Complicado===
''El jugador primero debe completar A, después B y desbloqueará la cadena de C a E. También se desbloquearán otras misiones de un grupo, que pueden ser hechas al mismo tiempo. Las tres misiones del grupo deben ser completadas para desbloquear I. Completar E y U desbloquearán la misión final''
<code>*misiónA*
                  |
                *misiónB*
              /          \
          *misiónC*    *misiónF*
            |        *misiónG*
          *misiónD*    *misiónH*
            |            |
          *misiónE*    *misiónI*
            \          /
                *misiónJ*</code>
{| class="wikitable"
|+ style="background:DarkSlateBlue; color:white; text-align:center;"|'''Misión A, B, C, D y E'''
|- style="background:Lavender; color:black"
|-
|bgcolor="99ff99"|Misión A||PrevQuestId = 0        NextQuestId = 0          ExclusiveGroup = 0          NextQuestInChain = misiónB    entry = misiónA
|-
|bgcolor="99ff99"|Misión B||PrevQuestId = misiónA  NextQuestId = 0          ExclusiveGroup = 0          NextQuestInChain = 0          entry = misiónB
|-
|bgcolor="99ff99"|Misión C||PrevQuestId = misiónB  NextQuestId = 0          ExclusiveGroup = 0          NextQuestInChain = misiónD    entry = misiónC
|-
|bgcolor="99ff99"|Misión D||PrevQuestId = misiónC  NextQuestId = 0          ExclusiveGroup = 0          NextQuestInChain = misiónE    entry = misiónD
|-
|bgcolor="99ff99"|Misión E||PrevQuestId = misiónD  NextQuestId = misiónJ    ExclusiveGroup = -misiónE    NextQuestInChain = 0          entry = misiónE
|-
|bgcolor="99ff99"|Misión F||PrevQuestId = misiónB  NextQuestId = misiónI    ExclusiveGroup = -misiónF    NextQuestInChain = 0          entry = misiónF
|-
|bgcolor="99ff99"|Misión G||PrevQuestId = misiónB  NextQuestId = misiónI    ExclusiveGroup = -misiónF    NextQuestInChain = 0          entry = misiónG
|-
|bgcolor="99ff99"|Misión H||PrevQuestId = misiónB  NextQuestId = misiónI    ExclusiveGroup = -misiónF    NextQuestInChain = 0          entry = misiónH
|-
|bgcolor="99ff99"|Misión I||PrevQuestId = 0        NextQuestId = questJ    ExclusiveGroup = -misiónE    NextQuestInChain = 0          entry = misiónI
|-
|bgcolor="99ff99"|Misión J||PrevQuestId = 0        NextQuestId = 0          ExclusiveGroup = 0          NextQuestInChain = 0          entry = misiónJ
|-
|bgcolor="99ff99"|Misión G||PrevQuestId = 0        NextQuestId = 0          ExclusiveGroup = 0          NextQuestInChain = 0          entry = misiónG
|-
|}
===Condiciones===
A pesar de todo lo anterior hay ciertas combinaciones que son imposibles de hacer con este método, gracias a la tabla Conditions podremos definir todos los prerrequistos de cualquier misión.

Revisión actual - 12:00 28 may 2025

La tabla `quest_template`

Contiene los datos básicos de todas las misiones.

Estructura

Field Type Attributes Key NULL Default Extra Comment
Id mediumint(8) unsigned PRI NO 0
Method tinyint(3) unsigned NO 2
Level smallint(3) signed NO 0
MinLevel tinyint(3) signed NO 0
MaxLevel tinyint(3) unsigned NO 0
ZoneOrSort smallint(6) signed NO 1
Type smallint(5) unsigned NO 0
SuggestedPlayers tinyint(3) unsigned NO 0
LimitTime int(10) unsigned NO 0
RequiredClasses smallint(5) unsigned NO 0
RequiredRaces smallint(5) NO 0
RequiredSkillId smallint(5) unsigned NO 0
RequiredSkillPoints smallint(5) unsigned NO 0
RequiredFactionId1 smallint(5) unsigned NO 0
RequiredFactionId2 smallint(5) signed NO 0
RequiredFactionValue1 mediumint(9) signed NO 0
RequiredFactionValue2 mediumint(9) unsigned NO 0
RequiredMinRepFaction smallint(5) signed NO 0
RequiredMaxRepFaction smallint(5) unsigned NO 0
RequiredMinRepValue mediumint(9) signed NO 0
RequiredMaxRepValue mediumint(9) signed NO 0
PrevQuestId mediumint(9) signed NO 0
NextQuestId mediumint(9) signed NO 0
ExclusiveGroup mediumint(9) signed NO 0
NextQuestIdChain mediumint(8) unsigned NO 0
RewXPId tinyint(2) unsigned NO 0
RewardOrRequiredMoney int(11) signed NO 0
RewardMoneyMaxLevel int(10) unsigned NO 0
RewardSpell mediumint(8) unsigned NO 0
RewardSpellCast int(11) signed NO 0
RewardHonor int(10) unsigned NO 0
RewardHonorMultiplier float signed NO 1
RewardMailTemplateId mediumint(8) unsigned NO 0
RewardMailDelay int(11) unsigned NO 0
SourceItemId mediumint(8) unsigned NO 0
SourceItemCount tinyint(3) unsigned NO 0
SourceSpell mediumint(8) unsigned NO 0
Flags int(10) unsigned NO 0
SpecialFlags tinyint(3) unsigned NO 0
RewardTitleId tinyint(3) unsigned NO 0
RequiredPlayerKills tinyint(3) unsigned NO 0
RewardTalents tinyint(3) unsigned NO 0
RewardArenaPoints smallint(5) unsigned NO 0
RewardItemId1 mediumint(8) unsigned NO 0
RewardItemId2 mediumint(8) unsigned NO 0
RewardItemId3 mediumint(8) unsigned NO 0
RewardItemId4 mediumint(8) unsigned NO 0
RewardItemCount1 smallint(5) unsigned NO 0
RewardItemCount2 smallint(5) unsigned NO 0
RewardItemCount3 smallint(5) unsigned NO 0
RewardItemCount4 smallint(5) unsigned NO 0
RewardChoiceItemId1 mediumint(8) unsigned NO 0
RewardChoiceItemId2 mediumint(8) unsigned NO 0
RewardChoiceItemId3 mediumint(8) unsigned NO 0
RewardChoiceItemId4 mediumint(8) unsigned NO 0
RewardChoiceItemId5 mediumint(8) unsigned NO 0
RewardChoiceItemId6 mediumint(8) unsigned NO 0
RewardChoiceItemCount1 smallint(5) unsigned NO 0
RewardChoiceItemCount2 smallint(5) unsigned NO 0
RewardChoiceItemCount3 smallint(5) unsigned NO 0
RewardChoiceItemCount4 smallint(5) unsigned NO 0
RewardChoiceItemCount5 smallint(5) unsigned NO 0
RewardChoiceItemCount6 smallint(5) unsigned NO 0
RewardFactionId1 smallint(5) unsigned NO 0 faction id from Faction.dbc in this case
RewardFactionId2 smallint(5) unsigned NO 0 faction id from Faction.dbc in this case
RewardFactionId3 smallint(5) unsigned NO 0 faction id from Faction.dbc in this case
RewardFactionId4 smallint(5) unsigned NO 0 faction id from Faction.dbc in this case
RewardFactionId5 smallint(5) unsigned NO 0 faction id from Faction.dbc in this case
RewardRepValueId1 mediumint(6) signed NO 0
RewardRepValueId2 mediumint(6) signed NO 0
RewardRepValueId3 mediumint(6) signed NO 0
RewardRepValueId4 mediumint(6) signed NO 0
RewardRepValueId5 mediumint(6) signed NO 0
RewardFactionValueIdOverride1 mediumint(9) signed NO 0
RewardFactionValueIdOverride2 mediumint(9) signed NO 0
RewardFactionValueIdOverride3 mediumint(9) signed NO 0
RewardFactionValueIdOverride4 mediumint(9) signed NO 0
RewardFactionValueIdOverride5 mediumint(9) signed NO 0
PointMapId smallint(5) unsigned NO 0
PointX float signed NO 0
PointY float signed NO 0
PointOption mediumint(8) unsigned NO 0
Title text signed YES NULL
Objectives text signed YES NULL
Details text signed YES NULL
EndText text signed YES NULL
OfferRewardText text signed YES NULL
RequestItemsText text signed YES NULL
CompletedText text signed YES NULL
RequiredNpcOrGo1 mediumint(9) signed NO 0
RequiredNpcOrGo2 mediumint(9) signed NO 0
RequiredNpcOrGo3 mediumint(9) signed NO 0
RequiredNpcOrGo4 mediumint(9) signed NO 0
RequiredNpcOrGoCount1 smallint(5) unsigned NO 0
RequiredNpcOrGoCount2 smallint(5) unsigned NO 0
RequiredNpcOrGoCount3 smallint(5) unsigned NO 0
RequiredNpcOrGoCount4 smallint(5) unsigned NO 0
RequiredSourceItemId1 mediumint(8) unsigned NO 0
RequiredSourceItemId2 mediumint(8) unsigned NO 0
RequiredSourceItemId3 mediumint(8) unsigned NO 0
RequiredSourceItemId4 mediumint(8) unsigned NO 0
RequiredSourceItemCount1 smallint(5) unsigned NO 0
RequiredSourceItemCount2 smallint(5) unsigned NO 0
RequiredSourceItemCount3 smallint(5) unsigned NO 0
RequiredSourceItemCount4 smallint(5) unsigned NO 0
RequiredItemId1 mediumint(8) unsigned NO 0
RequiredItemId2 mediumint(8) unsigned NO 0
RequiredItemId3 mediumint(8) unsigned NO 0
RequiredItemId4 mediumint(8) unsigned NO 0
RequiredItemId5 mediumint(8) unsigned NO 0
RequiredItemId6 mediumint(8) unsigned NO 0
RequiredItemCount1 smallint(5) unsigned NO 0
RequiredItemCount2 smallint(5) unsigned NO 0
RequiredItemCount3 smallint(5) unsigned NO 0
RequiredItemCount4 smallint(5) unsigned NO 0
RequiredItemCount5 smallint(5) unsigned NO 0
RequiredItemCount6 smallint(5) unsigned NO 0
Unknown0 tinyint(2) unsigned NO 0
ObjectiveText1 text signed YES NULL
ObjectiveText2 text signed YES NULL
ObjectiveText3 text signed YES NULL
ObjectiveText4 text signed YES NULL
DetailsEmote1 smallint(5) unsigned NO 0
DetailsEmote2 smallint(5) unsigned NO 0
DetailsEmote3 smallint(5) unsigned NO 0
DetailsEmote4 smallint(5) unsigned NO 0
DetailsEmoteDelay1 int(10) unsigned NO 0
DetailsEmoteDelay2 int(10) unsigned NO 0
DetailsEmoteDelay3 int(10) unsigned NO 0
DetailsEmoteDelay4 int(10) unsigned NO 0
EmoteOnIncomplete smallint(5) unsigned NO 0
EmoteOnComplete smallint(5) unsigned NO 0
OfferRewardEmote1 smallint(5) unsigned NO 0
OfferRewardEmote2 smallint(5) unsigned NO 0
OfferRewardEmote3 smallint(5) unsigned NO 0
OfferRewardEmote4 smallint(5) unsigned NO 0
OfferRewardEmoteDelay1 int(10) unsigned NO 0
OfferRewardEmoteDelay2 int(10) unsigned NO 0
OfferRewardEmoteDelay3 int(10) unsigned NO 0
OfferRewardEmoteDelay4 int(10) unsigned NO 0
WDBVerified smallint(5) signed YES 1

Descripción de los campos

Id

El identificador de la misión. No puede repetirse.

Method

Puede ser 0, 1 ó 2. Si el 'valor = 0', la misión se autocompleta. Si el 'valor = 1', la misión se desactiva. Si el 'valor = 2', la misión está habilitada pero no es autocompletable.

Level

Nivel de la misión. El jugador recibirá toda la experiencia de la misión si su nivel es menor o igual que level + 5. Si se establece -1, el nivel del jugador será usado como nivel de la misión para el cálculo de experiencia recibida.

MinLevel

Nivel mínimo necesario para coger la misión.

MaxLevel

Nivel máximo hasta el que estará disponible.

ZoneOrSort

Define la categoría en la que estará la misión al mostrarla en el registro de misiones.

Si el valor > 0 buscará las IDs en AreaTable.dbc. Usado para misiones zonas.

Si el valor < 0 buscará las IDs en QuestSort.dbc. Usado para misiones de profesiones, clases, etc.

Type

Este campo sirve para especificar el tipo de misión. Los valores vienen de QuestInfo.dbc.

Valor Tipo
1 Élite
21 Vida
41 JcJ
62 Banda
81 Mazmorra
82 Evento del mundo
83 Legendaria
84 Escolta
85 Heroica
88 Banda (10)
89 Banda (25)

SuggestedPlayers

Número recomendado de jugadores para hacer la misión juntos.

LimitTime

Tiempo (en segundos) que el jugador tiene para completar la misión.

RequiredClasses

Las clases necesarias para optar a la misión. 0 significa disponible a todas. Para combinar varias clases, sumar los valores.

Valor ID Clase
1 1 Guerrero
2 2 Paladín
4 3 Cazador
8 4 Pícaro
16 5 Sacerdote
32 6 Caballero de la muerte
64 7 Chamán
128 8 Mago
512 9 Brujo
1024 11 Druida

RequiredRaces

Las razas necesarias para optar a la misión. 0 significa disponible a todas. Para combinar varias razas, sumar los valores.

Valor ID Nombre
1 1 Humano
2 Orco
4 3 Enano
8 4 Elfo de la noche
16 5 No-muerto
32 6 Tauren
64 7 Gnomo
128 8 Trol
256 9 Goblin
512 10 Elfo de sangre
1024 11 Draenei
  • Ejemplos:
    • '1791' = Todas las razas
    • '690' (2 + 16 + 32 + 128 + 512) = Horda
    • '1101' (1 + 4 + 8 + 64 + 1024) = Alianza

RequiredSkillId

Habilidad requerida para aceptar la misión. Si no se quiere indicar ninguna hay que poner 0, en caso contrario ver SkillLine.dbc.

RequiredSkillPoints

Cantidad de habilidad requerida (indicada en el campo anterior) para aceptar la misión.

RequiredFactionId

ID de la facción con la que hay que alcanzar una reputación como objetivo de la misión. Ver Faction.dbc.

RequiredFactionValue

Cantidad de la reputación del campo anterior que hay que alcanzar para que se complete el objetivo de la misión. No se usan nunca valores de reputación inferiores a neutral.

ID Rango Valor
1 Neutral 0
2 Amistoso 3000
3 Honorable 9000
4 Venerado 21000
5 Exaltado 42000

RequiredMinRepFaction

ID de la facción con la que se necesita reputación para poder tomar a la misión. Ver Faction.dbc.

RequiredMinRepValue

Cantidad mínima de reputación necesaria con la facción del campo anterior. No se usan nunca valores de reputación inferiores a neutral.

ID Rango Valor
1 Neutral 0
2 Amistoso 3000
3 Honorable 9000
4 Venerado 21000
5 Exaltado 42000

RequiredMaxRepFaction

ID de la facción con la que, al alcanzar cierta reputación, impedirá volver a realizar la misión. Ver Faction.dbc.

RequiredMaxRepValue

Cantidad de reputación de la facción del campo anterior. No se usan nunca valores de reputación inferiores a neutral.

ID Rango Valor
1 Neutral 0
2 Amistoso 3000
3 Honorable 9000
4 Venerado 21000
5 Exaltado 42000

PrevQuestId

Si el 'valor > 0:' Contiene la ID de la misión anterior, que tiene que completarse para tener acceso a esta.

Si el 'valor < 0:' Contiene la ID de la misión padre, que tiene que estar activa para tener acceso a esta.

Ver la sección de ejemplos.

NextQuestId

Si el valor > 0: Contiene la ID de la siguiente misión, que estará disponible al terminar esta. Si el 'valor < 0:' Contiene la ID de la sub misión. Si la misión tiene varias misiones siguientes, se puede usar el campo PrevQuestId de todas esas misiones para establecer esta dependencia.

Ver la sección de ejemplos.

ExclusiveGroup

Si el valor > 0

Permite definir un grupo de misiones de las cuales SÓLO UNA podrá ser escogida y completada. Por ejemplo, si sólo puede escogerse una entre las misiones 1200, 1201 y 1201, pon 1200 en el campo ExclusiveGroup de las 3.

Si el valor < 0

Permite definir un grupo de misiones que deben ser completadas para continuar con la siguiente. Por ejemplo si la misión 2000 va después de completar las misiones 1200, 1201 y 1202, se usará un valor negativo en el campo ExclusiveGroup de las 3 para indicar que deben ser completadas todas antes de que se active la 2000.

===Nota:=== Si queremos que una misión de un grupo sea seleccionada aleatoriamente para poder hacerla, deberemos introducir, además de valores en este campo, entries en la tabla pool_template y pool_quest.

Ver la sección de ejemplos.

NextQuestInChain

La ID de la misión que termina y empieza en la misma criatura o entidad, si es parte de una misma cadena. Sirve para que la siguiente misión aparezca instantáneamente al completar la anterior.

Ver la sección de ejemplos.

RewXPId

De acuerdo con Level, la experiencia base recibida con ID en QuestXP.dbc.

RewardOrRequiredMoney

Dinero ganado al completar la misión, en cobres. Si el valor es negativo, el dinero necesario para completar la misión.

RewardMoneyMaxLevel

El dinero que ganará un jugador a nivel 80 en lugar de experiencia. También controla la cantidad de experiencia ganada dependiendo del nivel de la misión. Si la misión es repetible, la experiencia solo se dará una vez.

La fórmula para calcular el valor de la experiencia en este campo:
'QuestLevel >= 65:' XP = RewMoneyMaxLevel / 6.0
'QuestLevel == 64:' XP = RewMoneyMaxLevel / 4.8
'QuestLevel == 63:' XP = RewMoneyMaxLevel / 3.6
'QuestLevel == 62:' XP = RewMoneyMaxLevel / 2.4
'QuestLevel == 61:' XP = RewMoneyMaxLevel / 1.2
'QuestLevel <= 60:' XP = RewMoneyMaxLevel / 0.6

RewardSpell

Hechizo que muestra el registro de misiones que te lanzarán al completar. Este hechizo NO se lanzará si RewardSpellCast es distinto de 0. En su lugar se lanzará el hechizo del otro campo. En ese caso esto sólo servirá como visual en el registro de misiones.

'NOTA:' Este valor está sacado del servidor oficial y no debe ser cambiado.

RewardSpellCast

Hechizo que te lanzarán al completar la misión.

'NOTA:' Este valor está sacado del servidor oficial y no debe ser cambiado.

RewardHonor

Número de muertes con honor que se obtiene al completar la misión. Sirve para recompensar con honor al jugador que completa dicha misión.

Si se indica por ejemplo el valor 10, el honor total ganado por un jugador de nivel 80 será de 1240, ya que una muerte con honor a nivel 80 da 124 puntos de honor.

RewardHonorMultiplier

Multiplicador de RewardHonor.

'Nota:' Si aquí se establece 1, pero RewardHonor es 0, entonces el jugador recibirá de honor el valor por defecto de una muerte con honor (124 puntos a nivel 80).

RewardMailTemplateId

Si al completar la misión el jugador recibe un correo con items. Aquí va la ID del loot de quest_mail_loot_template.

RewardMailDelay

El tiempo que tarda en llegar el correo de RewardMailTemplateId, en segundos.

SourceItemId

ID del item que te dan al iniciar la misión. Se borrará cuando la misión se abandone.

SourceItemCount

Cantidad recibida del item de SourceItemId.

SourceSpellId

ID del hechizo que te lanzan al iniciar la misión.

Flags

Flags de la misión para definirla más específicamente, con el objetivo de clasificarla. Para combinar varios flags, sumar los valores.

BIT Nombre Comentario
0 QUEST_FLAGS_NONE Ninguno.
1 QUEST_FLAGS_STAY_ALIVE Si muere el jugador, la misión falla.
2 QUEST_FLAGS_PARTY_ACCEPT Misiones de escolta o cualquiera que tenga un evento. Si el jugador está en grupo, todos los miembros pueden aceptar la misión y les saldrá un mensaje de confirmación.
4 QUEST_FLAGS_EXPLORATION Relacionado con la activación de un areatrigger.
8 QUEST_FLAGS_SHARABLE Permite compartir la misión con otros jugadores.
16 QUEST_FLAGS_NONE2 Desconocido.
32 QUEST_FLAGS_EPIC Misiones épicas.
64 QUEST_FLAGS_RAID Se necesita una banda para la misión.
128 QUEST_FLAGS_TBC Añadida con o después de The Burning Crusade.
256 QUEST_FLAGS_DELIVER_MORE La misión necesita items extra que no están en los objetivos de la misión (ej. RequiredSourceItemID).
512 QUEST_FLAGS_HIDDEN_REWARDS Los items y dinero de recompensa están ocultos en los detalles de la misión, pero aparecerán cuando se termine.
1024 QUEST_FLAGS_AUTO_REWARDED Estas misiones se entregan automáticamente al completar sus objetivos y nunca aparecen en el registro de misiones.
2048 QUEST_FLAGS_TBC_RACES Misiones de inicio de Elfos de sangre/Draenei.
4096 QUEST_FLAGS_DAILY Misiones diarias repetibles.
8192 QUEST_FLAGS_REPEATABLE Misiones repetibles.
16384 QUEST_FLAGS_UNAVAILABLE Misiones que de forma genérica no están disponibles para hacerlas.
32768 QUEST_FLAGS_WEEKLY Misiones semanales repetibles.
65536 QUEST_FLAGS_AUTOCOMPLETE Autocompletable.
131072 QUEST_SPECIAL_ITEM Hay algo que hacer con RequiredItemId y RequiredSourceItemID
262144 QUEST_FLAGS_OBJ_TEXT Usa ObjectiveText como CompletedText.
524288 QUEST_FLAGS_AUTO_ACCEPT Misiones en las zonas de inicio.

NOTA: algunos flags no están soportados por el emulador.

SpecialFlags

Este campo es una máscara de bits controlando funciones externas al servidor. Como no viene de los servidores oficiales, hay que cambiarlo a mano.

  • 0: Sin requerimentos extra.
  • 1: Hace la misión repetible.
  • 2: Hace la misión completable cuando se cumple cierto evento (una entrada en areatrigger_involvedrelation, efecto de hechizo, efecto de misión completada o una entrada en spell_scripts con command = 7 son algunos ejemplos).
  • 4: Hace que la misión se auto-acepte.
  • 8: Flag usado por las misiones del Buscador de mazmorras.
  • 16: Hace la misión mensual.

RewardTitleId

El título que recibirá el jugador como recompensa al completar la misión. Ver CharTitles.dbc.

RequiredPlayerKills

Muestra cuantos jugadores debes matar antes de completar la misión.

RewardTalents

Talentos ganados como recompensa (misiones del Caballero de la Muerte). Establecer 0 para que no se gane nada.

RewardArenaPoints

Puntos de arena ganados como recompensa. Establecer 0 para que no se gane nada.

RewardItemId

ID del item recobido como recompensa (sin elección).

RewardItemCount

Cantidad de items con la ID definida en el campo anterior que se recibirán.

RewardChoiceItemId

ID del item que se podrá elegir como recompensa.

RewardChoiceItemCount

Cantidad de items con la ID definida en el campo anterior que se recibirán.

RewardFactionId

ID de la facción (de Faction.dbc) con el que se recibirá reputación como recompensa.

Normalmente la reputación ganada o perdida se calcula automáticamente, si se deja a 0.

RewardFactionValueId

Este campo se usa para hacer una consulta en QuestFactionReward.dbc. El valor X indica la columna X que se leerá. Si el valor es positivo, se lee la primera fila, si es negativo, la segunda.

RewardFactionValueIdOverride

Sirve para dar cantidades de reputaciones que no estén presentes en QuestFactionReward.dbc o para sobreescribir cantidades de reputación incorrectas cuando RewardFactionId es 0.

El valor de reputación que se quiera dar tiene que estar multiplicado por 100 (si queremos dar 400 puntos, indicaremos aquí 40000).

PointMapId

ID del mapa de un punto de interés de la misión. Sólo se mostrará con la misión activa.

PointX

Coordenada X del punto de interés.

PointY

Coordenada Y del punto de interés.

PointOption

Desconocido.

Title

Título de la misión.

Objectives

Objetivos de la misión. Si está vacío, la misión es una autocompletable que estará terminada antes de aceptarla.

Details

El texto de la misión.

En este campo puedes usar ciertos marcadores que muestran un texto distinto dependiendo de quien tome la misión:

  • $B - Salto de línea
  • $N - Nombre
  • $R - Raza
  • $C - Clase
  • $Gmasculino:femenino; - Ejemplo: $Gelfo:elfa;

EndText

Cuando el objetivo es realizar alguna acción especial, como por ejemplo explorar una zona o escoltar a alguien, es el texto asociado a ese objetivo, que se completará cuando se cumpla el objetvo.

OfferRewardText

El texto que muestra el NPC antes de completar la misión, donde se ofrece elegir entre recompensas, si las hay.

En este campo puedes usar ciertos marcadores que muestran un texto distinto dependiendo de quien tome la misión:

  • $B - Salto de línea
  • $N - Nombre
  • $R - Raza
  • $C - Clase
  • $Gmasculino:femenino; - Ejemplo: $Gelfo:elfa;

RequestItemsText

El texto que muestra el NPC cuando aún no se ha completado la misión.

En este campo puedes usar ciertos marcadores que muestran un texto distinto dependiendo de quien tome la misión:

  • $B - Salto de línea
  • $N - Nombre
  • $R - Raza
  • $C - Clase

$Gmasculino:femenino; - Ejemplo: $Gelfo:elfa;

CompletedText

Texto que aparece en el seguimiento de misiones al completarlas, del estilo "Vuelve con ... en ..."

RequiredNpcOrGo

Valor > 0: ID de la criatura en creature_template que hay que matar para completar el objetivo.

Valor < 0: ID de la entidad en gameobject_template que hay que usar para completar el objetivo.

Si RequiredSpellCast es distinto de 0, el objetivo es lanzar el hechizo indicado en dicho campo sobre la criatura/entidad que se establece en RequiredNpcOrGo.

NOTA: Si RequiredSpellCast es distinto de 0 y el hechizo tiene como efectos Send Event o Quest Complete, este campo se deja vacío.

RequiredNpcOrGoCount

Cantidad de los valores del campo anterior.

RequiredSourceItemId

ID del item que es necesario indirectamente. Por ejemplo, la misión pide un item X pero el único modo de conseguirlo es activando el item Y; sin embargo, el item Y también es un item de misión. Entonces se colocará la ID del item Y en este campo. Este requerimento no aparecerá en los textos de misión, sólo es para que el emulador sepa cuándo tirar un item que puede servir para la misión.

RequiredSourceItemCount

El número máximo de copias del item en RequiredSourceItemId que pueden recogerse (y tirarse por el emulador).

RequiredItemId

ID del item necesario para completar la misión.

RequiredItemCount

Cantidad necesaria del item indicado en el campo anterior. .

Unknown0

Campo desconocido.

ObjectiveText

Parecido a EndText, pero usado cuando hay más de un objetivo o hay que realizarlo varias veces.

DetailsEmote

Emoción que muestra el NPC cuando lees su misión.

DetailsEmoteDelay

Tiempo en ms que tarda en ejecutar la emoción del campo anterior.

EmoteOnIncomplete

Emoción que muestra el NPC cuando aún no has completado los objetivos.

EmoteOnComplete

Emoción que muestra el NPC cuando completas los objetivos.

OfferRewardEmote

Emoción que muestra el NPC cuando te recompensa la misión.

OfferRewardEmoteDelay

Tiempo en ms que tarda en ejecutar la emoción del campo anterior.

WDBVerified

Este campo es usado por el equipo de TrinityCore para mantener un registro de los datos que han sido comparados con el servidor oficial. No nos interesa.

Ejemplos

Las reglas de encadenado de misiones

  1. Siempre usa PrevQuestId antes de NextQuestId. NextQuestId se considera opcional y sólo obligada cuando PrevQuestId no es suficiente.

Misión básica

Individual, sin prerrequisitos

Misión A
PrevQuestId = 0 NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = 0 entry = Misión A

Cuando esta misión requiere haber completado otra

Misión A
PrevQuestId = misiónX NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = 0 entry = misiónA

Cadena de misiones

Una cadena de misiones con un único orden

Misión A, B, C, D y E
Misión A PrevQuestId = 0 NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = misiónB entry = misiónA
Misión B PrevQuestId = misiónA NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = misiónC entry = misiónB
Misión C PrevQuestId = misiónB NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = misiónD entry = misiónC
Misión D PrevQuestId = misiónC NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = 0 entry = misiónD

Cadena de misiones

El jugador solo puede completar una de las tres iniciales que se le ofrecen

*misiónA* *misiónB* *misiónC*

       \           |           /
         ------ *misiónD* -----
                   |
                *misiónE*
Misión A, B, C, D y E
Misión A PrevQuestId = 0 NextQuestId = misiónD ExclusiveGroup = misiónA NextQuestInChain = misiónD entry = misiónA
Misión B PrevQuestId = 0 NextQuestId = misiónD ExclusiveGroup = misiónA NextQuestInChain = misiónD entry = misiónB
Misión C PrevQuestId = 0 NextQuestId = misiónD ExclusiveGroup = misiónA NextQuestInChain = misiónD entry = misiónC
Misión D PrevQuestId = 0 NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = misiónE entry = misiónD
Misión E PrevQuestId = misiónD NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = 0 entry = misiónE

Cadena de misiones con múltiples misiones de inicio

El jugador debe completar las 3 misiones iniciales para desbloquear la D

*misiónA* *misiónB* *misiónC*

       \          |          /
        ------ *misiónD* -----
                  |
               *misiónE*
Misión A, B, C, D y E
Misión A PrevQuestId = 0 NextQuestId = misiónD ExclusiveGroup = -misiónA NextQuestInChain = misiónD entry = misiónA
Misión B PrevQuestId = 0 NextQuestId = misiónD ExclusiveGroup = -misiónA NextQuestInChain = misiónD entry = misiónB
Misión C PrevQuestId = 0 NextQuestId = misiónD ExclusiveGroup = -misiónA NextQuestInChain = misiónD entry = misiónC
Misión D PrevQuestId = 0 NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = misiónE entry = misiónD
Misión E PrevQuestId = misiónD NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = 0 entry = misiónE

Misiones con divisiones y submisiones

Completar A desbloquea B y C, que pueden ser hechas al mismo tiempo. Ambas tienen que ser completadas antes de que se desbloquee D. X se necesita para obtener un item para C y sólo se puede realizar mientras C esté activa

*misiónA*

               /        \
          *misiónB     *misiónC* - *misiónX*
               \        /
               *misiónD*
Misión A, B, C, D y E
Misión A PrevQuestId = 0 NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = 0 entry = misiónA
Misión B PrevQuestId = misiónA NextQuestId = misiónD ExclusiveGroup = -misiónB NextQuestInChain = 0 entry = misiónB
Misión C PrevQuestId = misiónA NextQuestId = misiónD ExclusiveGroup = -misiónB NextQuestInChain = 0 entry = misiónC
Misión X PrevQuestId = -misiónC NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = 0 entry = misiónX
Misión D PrevQuestId = 0 NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = 0 entry = misiónD

Cadenas de misiones múltiples, conduciendo a una misión final

El jugador debe completar las tres cadenas para desbloquear la misión final *misiónX*

                  |
   *misiónA*    *misiónC*    *misiónE*
      |           |            |
   *misiónB*    *misiónD*    *misiónF*
      \           |           /
        ------ *misiónG* -----
Misión A, B, C, D y E
Misión X PrevQuestId = 0 NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = misiónC entry = misiónX
Misión A PrevQuestId = 0 NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = misiónB entry = misiónA
Misión B PrevQuestId = misiónA NextQuestId = misiónG ExclusiveGroup = -misiónB NextQuestInChain = 0 entry = misiónB
Misión C PrevQuestId = 0 NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = misiónD entry = misiónC
Misión D PrevQuestId = misiónC NextQuestId = misiónG ExclusiveGroup = -misiónB NextQuestInChain = 0 entry = misiónD
Misión E PrevQuestId = 0 NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = misiónF entry = misiónE
Misión F PrevQuestId = misiónE NextQuestId = misiónG ExclusiveGroup = -misiónB NextQuestInChain = 0 entry = misiónF

=

Complicado===

El jugador primero debe completar A, después B y desbloqueará la cadena de C a E. También se desbloquearán otras misiones de un grupo, que pueden ser hechas al mismo tiempo. Las tres misiones del grupo deben ser completadas para desbloquear I. Completar E y U desbloquearán la misión final

*misiónA*

                  |
               *misiónB*
             /          \
         *misiónC*     *misiónF*
            |         *misiónG*
         *misiónD*     *misiónH*
            |            |
         *misiónE*     *misiónI*
            \           /
               *misiónJ*
Misión A, B, C, D y E
Misión A PrevQuestId = 0 NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = misiónB entry = misiónA
Misión B PrevQuestId = misiónA NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = 0 entry = misiónB
Misión C PrevQuestId = misiónB NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = misiónD entry = misiónC
Misión D PrevQuestId = misiónC NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = misiónE entry = misiónD
Misión E PrevQuestId = misiónD NextQuestId = misiónJ ExclusiveGroup = -misiónE NextQuestInChain = 0 entry = misiónE
Misión F PrevQuestId = misiónB NextQuestId = misiónI ExclusiveGroup = -misiónF NextQuestInChain = 0 entry = misiónF
Misión G PrevQuestId = misiónB NextQuestId = misiónI ExclusiveGroup = -misiónF NextQuestInChain = 0 entry = misiónG
Misión H PrevQuestId = misiónB NextQuestId = misiónI ExclusiveGroup = -misiónF NextQuestInChain = 0 entry = misiónH
Misión I PrevQuestId = 0 NextQuestId = questJ ExclusiveGroup = -misiónE NextQuestInChain = 0 entry = misiónI
Misión J PrevQuestId = 0 NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = 0 entry = misiónJ
Misión G PrevQuestId = 0 NextQuestId = 0 ExclusiveGroup = 0 NextQuestInChain = 0 entry = misiónG

Condiciones

A pesar de todo lo anterior hay ciertas combinaciones que son imposibles de hacer con este método, gracias a la tabla Conditions podremos definir todos los prerrequistos de cualquier misión.