Files
felwell-core/sql/sylvania/vault_missing_queststarters.sql
SylvaniaCore deploy 1474d24cc1 Zone DH : six quetes debloquees et butin realigne sur Wowhead
Audit complet des 42 quetes de Mardum (1481) et du Caveau des Gardiennes
(1468) apres une traversee de la campagne ou les blocages avaient ete
franchis a la commande GM. Six quetes restaient impossibles a terminer
normalement.

Quetes sans aucun donneur
  38668 / 38669 « Notre dernier espoir » et 38689 « Infusion gangrenee »
  n'avaient aucune ligne creature_queststarter. Attribuees a leur
  recepteur deja en place (Maiev 92718, Altruis 92986), tous deux deja
  porteurs du drapeau de donneur. L'ordre officiel de la chaine est
  retabli via PrevQuestID (38668 -> 38669 -> 38672 -> 38689 -> 38690 ->
  38723/40253), ce qui corrige au passage le piege signale en jeu :
  accepter « La gangr'evasion » faisait partir Maiev avant que les
  autres quetes aient pu etre prises.

Objectifs obligatoires sans aucune source
  38690 : les huit « Warden Cell » (244588) etaient posees mais inertes
          — aucun AIName, aucun script, tous les Data a zero. SmartAI
          ajoute sur le motif de la « Scourge Cage » 187854.
  38672 : les cellules 103655/103658 avaient tout leur SmartAI sauf
          l'action 33. Le script C++ prevu n'aurait rien regle : non
          rattache, lignes de credit commentees, et entrees erronees.
  38723/40253 : le credit « Face Gul'dan » 99303 dependait d'une scene
          absente de scene_template. Ajoute a la liste d'actions de
          Maiev, qui reproduit deja la scene.
  38689 : les quatre demons du caveau accordent desormais l'energie
          gangrenee, dix par mort, comme le prevoyait npc_fel_infusion.
  38765 : go_mardum_portal_shivarra appelait ForceCompleteQuest sous la
          condition inverse de ses deux jumeaux. Remplace par les credits
          94407 et 97831, sur le schema des portails Cendrelangue et
          Glissentaille.
  38669 : nouveau PlayerScript accordant les credits des glaives via
          OnItemLevelChange. Aucun identifiant d'objet code en dur : on
          verifie la sous-classe WARGLAIVES dans chaque emplacement.

Butin
  Compare aux tables officielles de Wowhead pour les 17 creatures
  tuables de la zone. Le menu fretin de Mardum ne lache officiellement
  rien : lootid = 0 etait correct, rien n'a ete touche. Manquaient en
  revanche 132753 « Rations de la Legion » (absente des 46 000 lignes de
  butin du serveur), 129196 sur quatre creatures, 147430, 132138, et
  sept des huit lignes de l'Inquisiteur Funeste. Les objets
  post-Legion que Wowhead attribue a ces creatures sont ecartes, et les
  taux existants ne sont pas modifies.
2026-08-22 12:23:11 +02:00

73 lines
3.9 KiB
SQL

-- =====================================================================
-- Caveau des Gardiennes — quêtes que PERSONNE ne proposait
--
-- Relevé par l'audit du 22/08/2026 : trois quêtes de la campagne Chasseur
-- de démons n'avaient AUCUNE ligne `creature_queststarter`. Elles étaient
-- donc rigoureusement impossibles à obtenir en jeu ; seule une commande
-- GM permettait de poursuivre la chaîne.
--
-- 38668 « Notre dernier espoir » — parler à Maiev (aucun objectif :
-- la quête se valide à l'acceptation), récepteur Maiev 92718
-- 38669 « Notre dernier espoir » — récupérer les glaives de guerre,
-- récepteur Maiev 92718
-- 38689 « Infusion gangrenée » — 100 points d'énergie gangrenée,
-- récepteur Altruis 92986
--
-- Attribution : au récepteur déjà en place dans chaque cas. Ce n'est pas
-- un choix arbitraire :
-- * Maiev 92718 porte déjà npcflag 3 (papotage + donneur de quête),
-- elle donne déjà « La gangr'évasion » (38672), et le texte officiel
-- de 38668 la place explicitement devant la porte ouverte de votre
-- cellule : « Your jailor, Maiev Shadowsong, stands outside the open
-- door to your cell. »
-- * Altruis 92986 porte npcflag 2 (donneur de quête). Il est le pendant
-- exact de Kayn 92980, qui donne déjà « Le soulèvement des Illidari »
-- (38690) : Altruis donne l'étape qui précède, Kayn celle qui suit.
--
-- Écart assumé : sur les serveurs officiels 38668 est acceptée
-- automatiquement à l'arrivée dans le caveau. Ce core n'a aucun mécanisme
-- rattaché pour cela (le drapeau QUEST_FLAGS_AUTO_ACCEPT 0x00080000 est
-- absent de la quête, et `On100DHArrival` ne fait qu'apprendre des sorts).
-- La faire proposer par Maiev produit exactement le même parcours pour le
-- joueur — il lui parle, c'est l'objectif même de la quête — avec une
-- fenêtre d'acceptation en plus.
--
-- ORDRE DE LA CHAÎNE (`PrevQuestID`)
-- Sans contrainte d'ordre, Maiev proposerait 38668, 38669 et 38672 en même
-- temps. Or accepter 38672 la fait disparaître : le joueur perdait alors
-- l'accès aux deux autres. C'est précisément le blocage signalé en jeu.
-- L'ordre officiel (source : chaîne « Vault of the Wardens » de Wowhead)
-- est rétabli :
-- 38668 → 38669 → 38672 → 38689 → 38690 → 38723 / 40253
-- 38668 ne reçoit VOLONTAIREMENT aucun prérequis : la quête qui la précède
-- (38729 « Retourner au Temple noir ») n'a aucun récepteur sur ce serveur
-- et ne peut donc jamais passer à l'état « récompensée » — l'exiger
-- bloquerait la chaîne pour de bon.
--
-- LIGNE FANTÔME
-- Maiev 92718 était déclarée donneuse de la quête 41226, absente de
-- `quest_template`. Supprimée.
--
-- Rechargeable à chaud : reload quest_template ; reload creature_questender
-- (il n'existe pas de commande de rechargement pour creature_queststarter,
-- un redémarrage est nécessaire pour que les quêtes apparaissent).
-- =====================================================================
-- --- donneurs manquants ------------------------------------------------
DELETE FROM `creature_queststarter` WHERE `quest` IN (38668,38669,38689);
INSERT INTO `creature_queststarter` (`id`,`quest`) VALUES
(92718,38668),
(92718,38669),
(92986,38689);
-- --- ligne pointant vers une quête inexistante --------------------------
DELETE FROM `creature_queststarter` WHERE `id`=92718 AND `quest`=41226;
DELETE FROM `creature_questender` WHERE `quest`=41226;
-- --- ordre de la chaîne -------------------------------------------------
UPDATE `quest_template_addon` SET `PrevQuestID`=38668 WHERE `ID`=38669;
UPDATE `quest_template_addon` SET `PrevQuestID`=38669 WHERE `ID`=38672;
UPDATE `quest_template_addon` SET `PrevQuestID`=38672 WHERE `ID`=38689;
UPDATE `quest_template_addon` SET `PrevQuestID`=38689 WHERE `ID`=38690;
UPDATE `quest_template_addon` SET `PrevQuestID`=38690 WHERE `ID` IN (38723,40253);