scriptdev2 / scriptdev2-cata

ScriptDev2 for Cataclysm

Home Page:http://www.scriptdev2.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

All Is Well That Ends Well(13631) and Heroic: All Is Well That Ends Well(13819)

opened this issue · comments

Good time of day!
I tried partially scripted this interesting quest for sending the reply code Alpha Titans.
http://paste2.org/hc04NCOU
Faced with a problem.

SPELL_ALGALON_EVENT_BEAM         = 64367,                // puspose unk
    // SPELL_ALGALON_EVENT_CLIMAX       = 64580,

I do not know who is and who should be cast. There's an effect of darkening sky.
http://www.wowhead.com/quest=13631/all-is-well-that-ends-well
http://wowpedia.org/Quest:All_Is_Well_That_Ends_Well
http://www.wowwiki.com/Quest:All_Is_Well_That_Ends_Well
It is possible that the quest is better to implement in SD2, but this script can take the data points, text, and so on. Thanks in advance! Please see.
PS: Not implemented nor Mangos or the Trinity!

Hi,

your dbscript looks pretty good. I will look into the spell cast issue soonish, and get back to you.

Dialogue.
REPLACE INTO `db_script_string` (`entry`, `content_default`, `sound`, `type`, `language`, `emote`, `comment`) VALUES
('2000006000','We received Brann\'s message, and we have begun preparations.','15649','0','0','0','Rhonin - Say 1 on complete quest.');
REPLACE INTO `db_script_string` (`entry`, `content_default`, `sound`, `type`, `language`, `emote`, `comment`) VALUES
('2000006001','Just in time. Let\'s see this thing off, then.','15826','0','0','0','Brann - Say 1(need summon and escort Rhonin)');
REPLACE INTO `db_script_string` (`entry`, `content_default`, `sound`, `type`, `language`, `emote`, `comment`) VALUES
('2000006002','Citizens of Dalaran! Raise your eyes to the skies and observe!','15650','1','0','0','Rhonin - Start Event Say 1.');
REPLACE INTO `db_script_string` (`entry`, `content_default`, `sound`, `type`, `language`, `emote`, `comment`) VALUES
('2000006003','Today our world\'s destruction has been averted in defiance of our very makers!','15651','1','0','0','Rhonin - Start Event Say 2.');
REPLACE INTO `db_script_string` (`entry`, `content_default`, `sound`, `type`, `language`, `emote`, `comment`) VALUES
('2000006004','Algalon the Observer, herald of the titans, has been defeated by our brave comrades in the depths of the titan city of Ulduar.','15652','1','0','0','Rhonin - Start Event Say 3');
REPLACE INTO `db_script_string` (`entry`, `content_default`, `sound`, `type`, `language`, `emote`, `comment`) VALUES
('2000006005','Algalon was sent here to judge the fate of our world.','15653','1','0','0','Rhonin - Start Event Say 4.');
REPLACE INTO `db_script_string` (`entry`, `content_default`, `sound`, `type`, `language`, `emote`, `comment`) VALUES
('2000006006','He found a planet whose races had deviated from the titans\' blueprints. A planet where not everything had gone according to plan.','15654','1','0','0','Rhonin - Start Event Say 5.');
REPLACE INTO `db_script_string` (`entry`, `content_default`, `sound`, `type`, `language`, `emote`, `comment`) VALUES
('2000006007','Cold logic deemed our world not worth saving. Cold logic, however, does not account for the power of free will. It\'s up to each of us to prove this is a world worth saving.','15655','1','0','0','Rhonin - Start Event Say 6.');
REPLACE INTO `db_script_string` (`entry`, `content_default`, `sound`, `type`, `language`, `emote`, `comment`) VALUES
('2000006008','That our lives... our lives are worth living.','15656','1','0','0','Rhonin - Start Event Say 7(Complete Say part event)');

quest_end_script.
UPDATE `quest_template` SET `CompleteScript` = 13631 WHERE `entry` = 13631;
UPDATE `quest_template` SET `CompleteScript` = 13631 WHERE `entry` = 13819;

Rhonin waypoint
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','1','5796.99','788.837','661.87','0','0','0','0','0','0','0','0','0','0','4.59685','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','2','5796.32','783.053','662.688','0','0','0','0','0','0','0','0','0','0','4.59685','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','3','5795.43','775.837','661.81','0','0','0','0','0','0','0','0','0','0','4.62429','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','4','5795.37','775.143','661.443','0','0','0','0','0','0','0','0','0','0','4.62429','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','5','5794.69','767.686','661.352','0','0','0','0','0','0','0','0','0','0','4.57189','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','6','5793.87','761.844','657.783','0','0','0','0','0','0','0','0','0','0','4.57189','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','7','5793.08','756.32','653.669','0','0','0','0','0','0','0','0','0','0','4.57189','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','8','5792.29','750.693','649.646','0','0','0','0','0','0','0','0','0','0','4.57189','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES(
'16128','9','5791.27','743.471','644.464','0','0','0','0','0','0','0','0','0','0','4.57189','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','10','5790.18','735.819','640.106','0','0','0','0','0','0','0','0','0','0','4.57189','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','11','5789.33','729.77','640.427','0','0','0','0','0','0','0','0','0','0','4.57189','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','12','5787.32','724.79','640.867','0','0','0','0','0','0','0','0','0','0','4.32889','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','13','5783.68','718.319','640.881','0','0','0','0','0','0','0','0','0','0','4.01164','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','14','5779.25','713.07','641.06','0','0','0','0','0','0','0','0','0','0','4.01164','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','15','5768.18','699.952','641.771','0','0','0','0','0','0','0','0','0','0','4.01164','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','16','5761.34','689.929','642.161','0','0','0','0','0','0','0','0','0','0','4.28164','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','17','5755.24','680.249','642.299','0','0','0','0','0','0','0','0','0','0','4.10276','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','18','5750.94','674.092','642.984','0','0','0','0','0','0','0','0','0','0','4.10276','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','19','5746.39','667.582','643.974','0','0','0','0','0','0','0','0','0','0','4.10276','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','20','5741.78','663.557','644.468','0','0','0','0','0','0','0','0','0','0','3.85976','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','21','5736.45','658.901','645.484','0','0','0','0','0','0','0','0','0','0','3.85976','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','22','5731.63','657.095','645.953','0','0','0','0','0','0','0','0','0','0','3.49976','0','0');
REPLACE INTO `creature_movement_template` (`entry`, `point`, `position_x`, `position_y`, `position_z`, `waittime`, `script_id`, `textid1`, `textid2`, `textid3`, `textid4`, `textid5`, `emote`, `spell`, `wpguid`, `orientation`, `model1`, `model2`) VALUES
('16128','23','5720.18','652.808','646.282','702000','1612801','0','0','0','0','0','0','0','0','3.85976','0','0');

Temp solution - I dont know, have Brann waypoint or no.
REPLACE INTO `creature_linking_template` (`entry`, `map`, `master_entry`, `flag`, `search_range`) VALUES
('34044','571','16128','512','0');

Prepare event and Start Script on quest_end.
-- Script id: 13631
DELETE FROM dbscripts_on_quest_end WHERE id=13631;
INSERT INTO dbscripts_on_quest_end VALUES 
(13631,0,0,0,0,16128,50,7,2000006000,0,0,0,0,0,0,0,'Rhonin - Say and Prepare Event.'),
(13631,5,10,34044,720000,0,0,0,0,0,0,0,5801.03,797.585,661.871,4.6165,'Rhonin - Summon Brann.'),
(13631,6,0,0,0,34044,50,7,2000006001,0,0,0,0,0,0,0,'Rhonin - get closest Brann and force say.'),
(13631,8,20,2,0,0,0,0,0,0,0,0,0,0,0,0,'Rhonin - Start Waypoint Movement.'),
(13631,0,29,4,2,16128,50,4,0,0,0,0,0,0,0,0,'Rhonin - Remove npc_flag questgiver.');

Event Reply Code:Omega. Good Quest!
-- Script id: 1612801
DELETE FROM dbscripts_on_creature_movement WHERE id=1612801;
INSERT INTO dbscripts_on_creature_movement VALUES 
(1612801,0,0,1,0,0,0,0,2000006002,0,0,0,0,0,0,0,'Rhonin - Start Event Say 1.'),
(1612801,5,0,1,0,0,0,0,2000006003,0,0,0,0,0,0,0,'Rhonin - Start Event Say 2.'),
(1612801,11,0,1,0,0,0,0,2000006004,0,0,0,0,0,0,0,'Rhonin - Start Event Say 3.'),
(1612801,20,0,1,0,0,0,0,2000006005,0,0,0,0,0,0,0,'Rhonin - Start Event Say 4.'),
(1612801,24,0,1,0,0,0,0,2000006006,0,0,0,0,0,0,0,'Rhonin - Start Event Say 5.'),
(1612801,33,0,1,0,0,0,0,2000006007,0,0,0,0,0,0,0,'Rhonin - Start Event Say 6.'),
(1612801,47,0,1,0,0,0,0,2000006008,0,0,0,0,0,0,0,'Rhonin - Start Event Say 7.');

So it will be easier to read.

I have fixed your quest. There were a lot of mistakes.

  1. Please don't use quotes on numbers. Quotes are to be used on strings, not on numbers!
  2. Please don't use this character on table names / columns: `
  3. Use Delete and Insert instead of Replace. It makes things more clear.
  4. If you are triggering an action in the script from a creature which is already a source or target, you don't need to use the buddy -> for example on quest_start_scripts on Rhonin.

Regarding the spells, this can't be done by dbscript because it's too complex. It requires SD2, but I don't know exactly how to bind the current script to SD2, since there is no dummy spell or event involved. Anyway, I set the documentation in comments for future development.

-- quests 13631 and 13819
UPDATE quest_template SET CompleteScript=13631 WHERE entry=13631;
UPDATE quest_template SET CompleteScript=13631 WHERE entry=13819;
UPDATE creature_template SET MovementType=2 WHERE entry=34044;
UPDATE creature_template SET SpeedWalk=1.6 WHERE entry=16128;

DELETE FROM dbscripts_on_quest_end WHERE id=13631;
INSERT INTO dbscripts_on_quest_end (id,delay,command,datalong,datalong2,buddy_entry,search_radius,data_flags,dataint,x,y,z,o,comments) VALUES
(13631,0,29,3,2,0,0,0,0,0,0,0,0,'Rhonin - remove npc_flag questgiver'),
(13631,0,10,34044,0,0,0,0,0,5800.697, 820.809, 667.433, 4.51,'Summon Brann'),
(13631,0,0,0,0,0,0,0,2000005645,0,0,0,0,'Rhonin - say_event_start'),
(13631,6,1,397,0,0,0,0,0,0,0,0,0,'Rhonin - emote'),
(13631,8,20,2,0,0,0,0,0,0,0,0,0,'Rhonin - Start Waypoint Movement');

DELETE FROM db_script_string WHERE entry IN (2000005645,2000005646,2000005647,2000005648,2000005649,2000005650,2000005651,2000005652,2000005653);
INSERT INTO db_script_string (entry,content_default,sound,type,language,emote,comment)  VALUES
(2000005645,'We received Brann\'s message, and we have begun preparations.',15649,0,0,0,'Rhonin - say_event_start'),
(2000005646,'Just in time. Let\'s see this thing off, then.',15826,0,0,0,'Brann - say_event_start'),
(2000005647,'Citizens of Dalaran! Raise your eyes to the skies and observe!',15650,1,0,0,'Rhonin - say_event_1'),
(2000005648,'Today our world\'s destruction has been averted in defiance of our very makers!',15651,1,0,0,'Rhonin - say_event_2'),
(2000005649,'Algalon the Observer, herald of the titans, has been defeated by our brave comrades in the depths of the titan city of Ulduar.',15652,1,0,0,'Rhonin - say_event_3'),
(2000005650,'Algalon was sent here to judge the fate of our world.',15653,1,0,0,'Rhonin - say_event_4'),
(2000005651,'He found a planet whose races had deviated from the titans\' blueprints. A planet where not everything had gone according to plan.',15654,1,0,0,'Rhonin - say_event_5'),
(2000005652,'Cold logic deemed our world not worth saving. Cold logic, however, does not account for the power of free will. It\'s up to each of us to prove this is a world worth saving.',15655,1,0,0,'Rhonin - say_event_6'),
(2000005653,'That our lives... our lives are worth living.',15656,1,0,0,'Rhonin - say_event_complete');

DELETE FROM creature_movement_template WHERE entry=34044;
INSERT INTO creature_movement_template (entry, point, position_x, position_y, position_z, script_id, waittime, orientation) VALUES
(34044,1,5799.828, 813.462, 662.002, 0, 0, 0),
(34044,2,5801.312, 802.384, 662.139, 3404402, 3000, 4.53),
(34044,3,5799.99,788.837,661.870,0,0,0),
(34044,4,5798.32,782.053,662.688,0,0,0),
(34044,5,5797.37,775.143,661.443,0,0,0),
(34044,6,5797.69,767.686,661.352,0,0,0),
(34044,7,5797.87,761.844,657.783,0,0,0),
(34044,8,5795.08,755.320,653.669,0,0,0),
(34044,9,5794.29,750.693,649.646,0,0,0),
(34044,10,5793.27,743.471,644.464,0,0,0),
(34044,11,5793.18,735.819,640.106,0,0,0),
(34044,12,5792.33,729.770,640.427,0,0,0),
(34044,13,5789.32,724.790,640.867,0,0,0),
(34044,14,5785.68,716.319,640.881,0,0,0),
(34044,15,5781.25,711.070,641.060,0,0,0),
(34044,16,5771.18,696.952,641.771,0,0,0),
(34044,17,5764.34,686.929,642.161,0,0,0),
(34044,18,5757.24,677.249,642.299,0,0,0),
(34044,19,5752.94,671.092,642.984,0,0,0),
(34044,20,5748.39,664.582,643.974,0,0,0),
(34044,21,5743.78,661.557,644.468,0,0,0),
(34044,22,5737.45,656.901,645.484,0,0,0),
(34044,23,5732.63,654.095,645.953,0,0,0),
(34044,24,5721.18,649.808,646.282,3404424,1000,3.51);

DELETE FROM dbscripts_on_creature_movement WHERE id IN (3404424,3404402);
INSERT INTO dbscripts_on_creature_movement (id,delay,command,datalong,buddy_entry,search_radius,dataint,comments) VALUES 
(3404402,0,0,0,0,0,2000005646,'Brann - say_event_start'),
(3404424,0,32,1,0,0,0,'Brann - pause wp'),
(3404424,60,18,0,0,0,0,'Brann - despawn');

DELETE FROM creature_movement_template WHERE entry=16128;
INSERT INTO creature_movement_template (entry, point, position_x, position_y, position_z, script_id, waittime, orientation) VALUES
(16128,1,5796.99,788.837,661.870,0,0,0),
(16128,2,5796.32,783.053,662.688,0,0,0),
(16128,3,5795.43,775.837,661.810,0,0,0),
(16128,4,5795.37,775.143,661.443,0,0,0),
(16128,5,5794.69,767.686,661.352,0,0,0),
(16128,6,5793.87,761.844,657.783,0,0,0),
(16128,7,5793.08,756.320,653.669,0,0,0),
(16128,8,5792.29,750.693,649.646,0,0,0),
(16128,9,5791.27,743.471,644.464,0,0,0),
(16128,10,5790.18,735.819,640.106,0,0,0),
(16128,11,5789.33,729.770,640.427,0,0,0),
(16128,12,5787.32,724.790,640.867,0,0,0),
(16128,13,5783.68,718.319,640.881,0,0,0),
(16128,14,5779.25,713.070,641.060,0,0,0),
(16128,15,5768.18,699.952,641.771,0,0,0),
(16128,16,5761.34,689.929,642.161,0,0,0),
(16128,17,5755.24,680.249,642.299,0,0,0),
(16128,18,5750.94,674.092,642.984,0,0,0),
(16128,19,5746.39,667.582,643.974,0,0,0),
(16128,20,5741.78,663.557,644.468,0,0,0),
(16128,21,5736.45,658.901,645.484,0,0,0),
(16128,22,5731.63,657.095,645.953,0,0,0),
(16128,23,5720.18,652.808,646.282,1612823,1000,3.85976);

DELETE FROM dbscripts_on_creature_movement WHERE id=1612823;
INSERT INTO dbscripts_on_creature_movement (id,delay,command,datalong,datalong2,buddy_entry,search_radius,data_flags,dataint,comments) VALUES 
(1612823,0,32,1,0,0,0,0,0,'Rhonin - pause wp'),
-- cast 64367 from creatures with id 28332 on the bottom to the same creature on top, and then to the sky
-- same creature id, different Z positions; maybe spell 64581 is also involved
(1612823,0,0,0,0,0,0,0,2000005647,'Rhonin - say_event_1'),
(1612823,6,0,0,0,0,0,0,2000005648,'Rhonin - say_event_2'),
(1612823,12,0,0,0,0,0,0,2000005649,'Rhonin - say_event_3'),
(1612823,21,0,0,0,0,0,0,2000005650,'Rhonin - say_event_4'),
(1612823,25,0,0,0,0,0,0,2000005651,'Rhonin - say_event_5'),
(1612823,34,0,0,0,0,0,0,2000005652,'Rhonin - say_event_6'),
(1612823,49,0,0,0,0,0,0,2000005653,'Rhonin - say_event_complete'),
-- cast 64580; maybe trigger spell 64510
(1612823,60,29,3,1,0,0,0,0,'Rhonin - add npc_flag questgiver'),
(1612823,60,18,0,0,0,0,0,0,'Rhonin - despawn');

Sorry, I do so as best I can. Queries I am not very strong. I am self-taught.

I'm not blaming you.
I'm just trying to teach you how to do it better in the future. 😉

Rhonin when the 23 waypoint ignores the script and runs to zero. There is a solution - to create an unused 24 waypoint. Then it's okay. About cast - you did Send AI Event. Summon trigger and Send AI Event Around with the help db_script. Trigger script on EventAI - On Receive AI_Event cast Algalon Beam.

No, 24 waypoints it's not good. You can use 23, set a wait timer and make the script to pause the wp.
You can't use eventAI, because you can't set the right target. You can't cast a spell from creature with entry 28332 to same creature 28332, but with a different guid, without some guid targeting system or SD2.

You can use 23, set a wait timer and make the script to pause the wp.

Bad idea about wait timer. I'd rather do 24 waypoint. What would a 23 waypoint(ignoring db_script) he stopped and did not run at zero.
You can send on behalf of creatures events and specials that will be on the preparation of the opening event of the sender cast. EventAI able to do this, I checked more than once.
In any case, thanks for the work.

I don't understand what you are trying to say regarding 23 and 24....
EventAI can't cast spells between creatures of same entry and different guids. I think you don't understand what the problem is, or how the event should work.

I just did understand what I mean! By the way, you do not want to make an alpha support Pandaria?

You can make a script through the guid, viz. Create a pair of flip-flops. Ronin when the last point tells them to start moving through the points (coordinates of the waypoint is the same as the point of spawn). Everything - cast implemented and SD2 there really is not necessary.
And I do not care that this is a hack. I will not use SD2 because of such trifles. The database is still easier to fix. In SD2 had made a mistake and the right then over the years. I've already passed.

I don't understand your idea. Can you give more details?

Spawning triggers in the world, through the creature movement Asking each waypoint every Guid and process through the db script creature movement. Especially support Guid in db script implemented. Motion type is initially set to zero, Ronin change script else motion type each Guid with a certain delay.

And those, in turn, upon reaching a waypoint Cast spells:
First trigger guid in the second(buddy_guid flag), the second to the third, the third to the fourth. And do not even use the damn SD2.

Maybe this is a hack, but I'm not going to wait until someone implementing. You yourself refused to enhance the interaction between EventAI and db script, I do not care what your reasons for this were.

I have been able to realize Ragnaros in Firelands, but there's a lot of hacks. This is not the damn Lich King, which not even close to the Will of the Emperor, Lei Shen and Ragnaros.
Unfortunately, except for me, these hacks, no one can use it. They will not be taken anywhere. What, they want to sit browser - let it sit. Has bothered persuasion.

You really please do not take offense at me, to you it does not apply, just pent up.

I will close this one, since it was implemented in UDB 407 - unified-db/Database@3fc6a28.
For Ragna quest, please refer to #4

(1612823,60,18,0,0,0,0,0,0,'Rhonin - despawn');

Rhonin should respawn immediately after despawn. I forgot to say it.

Also see please TrinityCore/TrinityCore@87b973c
More info about quest.

For Ragna quest, please refer to #4

I'll finished. Please see last comment #4

You will sooner closed issue, the issue has not been resolved. No NPC triggers in the database. And not implemented their script, I offered even a hack, but the solution. Also respawtime Rhonin should change the script. But you do not want to read it.
http://cmangos.net/thread-6615-post-42512.html#pid42512