[Q14108] Sus au Kraken !
Bug: Le lancement de la lance sur le Kraken ne valide pas la quête
NPC: http://www.wowhead.com/npc=34925
Quest ID: 14108
Web Link: http://www.wowhead.com/quest=14108
Database: CTDB R121 0.0.9 8156 (Je sais, elle n'est pas update)
Trinity core: 8388
Addons: AHBot

Fix essayé mais non fonctionnel :

[code=sql]
-- Le spell Lance enflammée ne se lancera que sur le Kraken :
insert into spell_script_target ('entry', 'type', 'targetEntry') values ('66588', '1', '34925');

-- La quête a besoin du spell Lance enflammée pour se valider :
update quest_template set 'ReqSpellCast1' = '66588' where 'entry' = '14108'; [/code]

Pouvez-vous me corriger ou me dire ce que j'ai oublié ?-
peut etre tu n'as pas le spell car ta db n'est pas udapte ?

on ne sais jamais udapte ton core et ta db Clin
Le core est update mais pas la DB, et j'aimerais fix moi-même cette quête plutôt que d'utiliser une update enfait.
Et les spells sont contenus dans les DBC donc je l'ai forcément :/
[code=sql]-- La quête a besoin du spell Lance enflammée pour se valider :
update quest_template set 'ReqCreatureOrGOId1' = '34925', 'ReqCreatureOrGOCount1' = '6', 'ReqSpellCast1' = '66588' where 'entry' = '14108'; [/code]

Je sais pas si c'est ca mais bon Hihi
Enfait il y a autre chose dans la table 'quest_template' au niveau de cette quête.
En effet, on peut lire :
Navicat a écrit :select ReqCreatureOrGOID1, ReqCreatureOrGOID2 from quest_template where entry ='14108';
+--------------------+--------------------+
| ReqCreatureOrGOID1 | ReqCreatureOrGOID2 |
+--------------------+--------------------+
| 35009 | 35092 |
+--------------------+--------------------+
1 row in set

Le http://fr.wowhead.com/npc=35092 est un Mande-fonds kvaldir, nécessaire en deuxième condition de quête, alors que le http://fr.wowhead.com/npc=35009 semble être un KillCredit nécessaire à la condition pour la lance. Je ne comprends pas comment fonctionne le KillCredit enfait :/
Essaye le fix que je t'ai donné.

Pour le killcredit en fait normalement, c'est utilisé par les scripts. En gros le script doit dire que si le Kraken reçoit la lance sur sa tête, alors il te compte que tu as tué le mob 35009.

[code=cpp]
#include "precompiled.h"

enum
{
QUEST_KRAKEN = 14108,
SPELL_LANCE_KRAKEN = 66588,
KRAKEN_KILLCREDIT = 35009
};

struct MANGOS_DLL_DECL npc_krakenAI : public ScriptedAI
{
npc_tutorielAI(Creature* pCreature) : ScriptedAI(pCreature) {Reset();}

void Reset()
{}

void SpellHit(Unit* pPlayer, const SpellEntry* SpellEntry)
{
if ((SpellEntry = SPELL_LANCE_KRAKEN) && (CAST_PLR(pPlayer)->GetQuestStatus(QUEST_KRAKEN) == QUEST_STATUS_INCOMPLETE))
{
CAST_PLR(pPlayer)->KilledMonsterCredit(KRAKEN_KILLCREDIT, 0);
}
}

void UpdateAI(const uint32 Diff)
{
DoMeleeAttackIfReady();
}
};

CreatureAI* GetAI_npc_kraken(Creature* pCreature)
{
return new npc_krakenAI(pCreature);
}


void AddSC_npc_kraken()
{
Script* newscript;

newscript = new Script;
newscript->Name = "npc_kraken";
newscript->GetAI = &GetAI_npc_kraken;
newscript->RegisterSelf(false);
}
[/code]

Evidemment je suppose que le Kraken fait pas que des bêtes attaques au cac, donc faudra aussi scripter ses sorts.
Oui mais il n'y a aucun moyen de le faire en sql ? Faudrait que je regarde les tables spell_ plus en détail. En tout cas merci pour ton script.
Fait une sauvegarde de ta quête sous fichier sql.

essaye :

[code=sql]-- La quête a besoin du spell Lance enflammée pour se valider :
UPDATE quest_template SET 'ReqCreatureOrGOId1' = '34925', 'ReqCreatureOrGOCount1' = '6', 'ReqSpellCast1' = '66588' WHERE 'entry' = '14108';[/code]

Si ca ne fonctionne toujours pas, remet ta quête de base, et ajoute le script que je t'ai filé dans les sources ScriptDev2.
Doesn't work, donc j'vais essayer ton script plus tard. Merci Morgraine pour ton aide !

Retourner en haut Accueil