Rivage brise : portage de l'Assaut 7.2 (scenario 1280, carte 1666)
La carte 1666 etait declaree mais entierement vide, et instance_template y reclamait un script fantome. Les quetes 45102 « Begin the Assault » et 46734 « Assault on Broken Shore » etaient donc infranchissables : elles relevent de ce scenario, et non de l'introduction 7.0 deja portee sur la carte 1460. PORTAGE, PAS TRANSCRIPTION. La source (dufernst/LegionCore-7.3.5, meme lignee uwow) repose sur quatre extensions que nous n'avons pas : onScenarionNextStep/getScenarionStep, CRITERIA_TYPE_SCRIPT_EVENT_2, FunctionProcessor et une surcharge de GetClosestGraveYard. La progression est donc inversee : au lieu d'etre rappele a chaque etape, le script alimente les criteres officiels et le moteur avance seul -- la meme architecture que sur la carte 1460. Les neuf criteres des huit etapes ont ete releves dans les DB2 du build 7.3.5.26972 (ScenarioStep, CriteriaTree, Criteria) et non recopies de la source ; ils confirment ses identifiants d'asset. Sept sont de type 92 (SEND_EVENT_SCENARIO), un de type 73, un de type 68. Six ecarts d'API traites, tous constates et non supposes : InstanceScript(InstanceMap*), Conversation::CreateConversation (Player n'a pas cette methode -- la source l'appelait sur une creature, cela n'aurait pas compile), UNIT_NPC_FLAGS avec SetFlag64, DamageTaken a 2 arguments, OnSpellClick a 2, MovePath a 2. NON PORTE : player_scripts_for_start_assault, qui sondait chaque joueur a chaque tick pour lui imposer la quete 46730. Un donneur en base fait le meme travail sans ce cout. SQL joint : - rattachement des 5 scripts a leurs 11 entrees, toutes verifiees exclusives a la carte 1666 ; - les 87 points des 5 chemins scriptes. Ils vivaient dans waypoint_data_script, table absente de notre schema, d'ou leur oubli lors de l'extraction du 27/08. Le 11322708 est le vol d'arrivee : l'atteinte de son point 20 declenche l'etape 0, sans lui rien ne demarrait ; - le donneur manquant de 45102, l'archimage Khadgar 116302, deja pose chez nous aux coordonnees de la reference mais jamais declare. Les 593 creatures et 59 objets de la carte etaient generes depuis le 27/08 et n'avaient jamais ete appliques ; ils le sont desormais. RESERVE : rien de tout ceci n'a ete verifie en jeu. Les credits de quete 116253 et 116279 sont en outre cables sur la fermeture des deux premiers portails par deduction -- la quete parle de « First » et « Second Legion Spire destroyed » -- et non sur une donnee. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
-- =====================================================================
|
||||
-- Assaut du Rivage brisé (carte 1666) — rattachement des scripts
|
||||
--
|
||||
-- Le C++ porté (scenario_assault_broken_shore.cpp) ne sert à rien tant
|
||||
-- que ses scripts ne sont liés à aucune entrée : c'est la classe de bug
|
||||
-- la plus fréquente de ce cœur, des IA complètes jamais appelées.
|
||||
--
|
||||
-- PORTÉE VÉRIFIÉE : les onze entrées ci-dessous n'existent QUE sur la
|
||||
-- carte 1666 — contrôlé par un GROUP BY sur (id, map). Un ScriptName
|
||||
-- s'appliquant à toutes les cartes, ce contrôle n'est pas facultatif.
|
||||
--
|
||||
-- NE SONT PAS RATTACHÉES, volontairement : Arganoth (118551),
|
||||
-- Mephistroth (120746), Illidan (119130) et Lord Kalgorath (116291).
|
||||
-- L'instance les pilote depuis OnCreatureCreate et OnCreatureKilled ;
|
||||
-- leur donner un ScriptName ferait double emploi.
|
||||
--
|
||||
-- CONCORDANCE RELEVÉE, pas supposée :
|
||||
-- 120743 Arcane Bomb → 7 exemplaires posés, critère 57574 × 7
|
||||
-- 118558 Legion Portal → 7 exemplaires, dont 3 à fermer (critère 56778)
|
||||
-- =====================================================================
|
||||
|
||||
-- Les huit alliés qui accompagnent l'assaut : rotations de sorts et
|
||||
-- recherche d'adversaire à portée.
|
||||
UPDATE `creature_template` SET `ScriptName` = 'npc_assaut_allie'
|
||||
WHERE `entry` IN (119133, 118412, 121232, 118966, 121146, 118969, 118945, 118444);
|
||||
|
||||
-- Le corbeau arcanique : véhicule d'arrivée, sa fin de trajet vaut
|
||||
-- l'étape 0 du scénario. Aucun spawn en base, il est invoqué par sort.
|
||||
UPDATE `creature_template` SET `ScriptName` = 'npc_assaut_corbeau_arcanique'
|
||||
WHERE `entry` = 118517;
|
||||
|
||||
-- Portails de la Légion et bombes arcaniques : activés au clic de sort.
|
||||
UPDATE `creature_template` SET `ScriptName` = 'npc_assaut_interactif'
|
||||
WHERE `entry` IN (118558, 120743);
|
||||
|
||||
-- La passerelle démoniaque, objet de type 10 (goober) : notre cœur ne
|
||||
-- lui offre que le point d'entrée OnGossipHello.
|
||||
UPDATE `gameobject_template` SET `ScriptName` = 'go_assaut_passerelle_demoniaque'
|
||||
WHERE `entry` = 267955;
|
||||
Reference in New Issue
Block a user