[Wip] I Sense A Disturbance

Im working on the chain containing this quest. Theres a lot of stuff missing so be prepared for several additional fixes in a couple of days.

Sources were: http://www.wowwiki.c…e_a_Disturbance and

Waypoints are only guessed from the vid and could use some sniffs if available. But they fit quite well as they are.

Used two different sets of waypoints for the kitten because of the jump action. Without the second set the kitten would hover through the air. Seems jump action isnt working properly.

I didnt find any mistakes so please test to verify that. Otherwise its ready for push.

-- Quest 12665: 'I sense a Disturbance'

SET @QUEST := 12665;
SET @ENTRY_HARKOA := 28401;
SET @ENTRY_HARKOA_KITTEN := 28665;
SET @ENTRY_QUETZLUN := 28671;
SET @SPELL_RIDING_HARKOA_KITTEN := 25673;
SET @SPELL_SPEED := 39870;
SET @SPELL_SUMMON_HARKOA_KITTEN := 52187;
SET @SPELL_STEALTH := 52188;
SET @GOSSIP := 9749;

UPDATE `creature_template` SET `faction_A`=7 , `faction_H`=7, `AIName`='SmartAI' WHERE `entry`=@ENTRY_HARKOA;
UPDATE `creature_template` SET `unit_flags`=`unit_flags`|512|256 WHERE `entry`=@ENTRY_QUETZLUN;
UPDATE `creature_template` SET `speed_run`=2, `unit_flags`=`unit_flags`|512|256, `VehicleId`=126, `AIName`='SmartAI' WHERE `entry`=@ENTRY_HARKOA_KITTEN;

DELETE FROM `smart_scripts` WHERE `entryorguid` IN (@ENTRY_HARKOA,@ENTRY_HARKOA_KITTEN) AND `source_type`=0;
DELETE FROM `smart_scripts` WHERE `entryorguid` IN (@ENTRY_HARKOA_KITTEN*100,@ENTRY_HARKOA_KITTEN*100+1) AND `source_type`=9;
INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES
-- Har'koa script
(@ENTRY_HARKOA,0,0,1,62,0,100,0,@GOSSIP,0,0,0,11,@SPELL_SUMMON_HARKOA_KITTEN,0,0,0,0,0,7,0,0,0,0,0,0,0,'Har''koa - On gossip option select - force player to summon Har''koa''s Kitten'),
(@ENTRY_HARKOA,0,1,0,61,0,100,0,0,0,0,0,72,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'Har''koa - On gossip option select - close gossip'),

-- Har'koa's Kitten script
(@ENTRY_HARKOA_KITTEN,0,0,1,54,0,100,0,0,0,0,0,75,@SPELL_STEALTH,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On spawn - apply stealth'),
(@ENTRY_HARKOA_KITTEN,0,1,2,61,0,100,0,0,0,0,0,80,@ENTRY_HARKOA_KITTEN*100,0,2,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On spawn - start script'),
(@ENTRY_HARKOA_KITTEN,0,2,0,61,0,100,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On spawn - say text 0'),
(@ENTRY_HARKOA_KITTEN,0,3,4,40,0,100,0,10,@ENTRY_HARKOA_KITTEN,0,0,54,1000,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On waypoint 10 reached - pause waypoint movement'),
(@ENTRY_HARKOA_KITTEN,0,4,0,61,0,100,0,0,0,0,0,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On waypoint 10 reached - say text 1'),
(@ENTRY_HARKOA_KITTEN,0,5,6,40,0,100,0,18,@ENTRY_HARKOA_KITTEN,0,0,54,1000,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On waypoint 18 reached - pause waypoint movement'),
(@ENTRY_HARKOA_KITTEN,0,6,7,61,0,100,0,0,0,0,0,59,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On waypoint 18 reached - disable run'),
(@ENTRY_HARKOA_KITTEN,0,7,0,61,0,100,0,0,0,0,0,1,2,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On waypoint 18 reached - say text 2'),
(@ENTRY_HARKOA_KITTEN,0,9,0,40,0,100,0,21,@ENTRY_HARKOA_KITTEN,0,0,84,0,0,0,0,0,0,19,@ENTRY_QUETZLUN,0,0,0,0,0,0,'Har''koa''s Kitten - On waypoint 21 reached - set data 0 1 for Prophet of Quetz''lun'),
(@ENTRY_HARKOA_KITTEN,0,10,11,40,0,100,0,22,@ENTRY_HARKOA_KITTEN,0,0,59,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On waypoint 22 reached - enable run'),
(@ENTRY_HARKOA_KITTEN,0,11,0,61,0,100,0,0,0,0,0,1,3,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On waypoint 22 reached - say text 3'),
(@ENTRY_HARKOA_KITTEN,0,12,0,40,0,100,0,31,@ENTRY_HARKOA_KITTEN,0,0,11,@SPELL_SPEED,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On waypoint 31 reached - increase speed'),
(@ENTRY_HARKOA_KITTEN,0,13,14,40,0,100,0,34,@ENTRY_HARKOA_KITTEN,0,0,80,@ENTRY_HARKOA_KITTEN*100+1,0,2,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On waypoint 34 reached - run script'),
(@ENTRY_HARKOA_KITTEN,0,14,0,61,0,100,0,0,0,0,0,28,@SPELL_SPEED,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On waypoint 34 reached - remove speed increasement'),
(@ENTRY_HARKOA_KITTEN,0,15,16,40,0,100,0,11,@ENTRY_HARKOA_KITTEN*10,0,0,1,5,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On waypoint 11 reached - say text 5'),
(@ENTRY_HARKOA_KITTEN,0,16,0,61,0,100,0,0,0,0,0,28,@SPELL_RIDING_HARKOA_KITTEN,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On waypoint 11 reached - remove player from vehicle'),

(@ENTRY_HARKOA_KITTEN*100,9,0,0,0,0,100,0,0,0,0,0,53,1,@ENTRY_HARKOA_KITTEN,0,0,0,1,1,0,0,0,0,0,0,0,'Har''koa''s Kitten script0 - Start waypoint movement'),

(@ENTRY_HARKOA_KITTEN*100+1,9,0,0,0,0,100,0,0,0,0,0,55,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten script1 - Stop waypoint movement'),
(@ENTRY_HARKOA_KITTEN*100+1,9,1,0,0,0,100,0,0,0,0,0,97,0,0,0,0,0,0,8,0,0,0,5651.193,-3790.460,361.974,0,'Har''koa''s Kitten script1 - Jump'),
(@ENTRY_HARKOA_KITTEN*100+1,9,2,0,0,0,100,0,3000,3000,0,0,1,4,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten script1 - Say text 4'),
(@ENTRY_HARKOA_KITTEN*100+1,9,3,0,0,0,100,0,1000,1000,0,0,53,1,@ENTRY_HARKOA_KITTEN*10,0,0,0,1,1,0,0,0,0,0,0,0,'Har''koa''s Kitten script1 - Start waypoint movement');

DELETE FROM `gossip_menu_option` WHERE `menu_id`=@GOSSIP AND `id`=0;
INSERT INTO `gossip_menu_option` (`menu_id`,`id`,`option_icon`,`option_text`,`option_id`,`npc_option_npcflag`,`action_menu_id`,`action_poi_id`,`box_coded`,`box_money`,`box_text`) VALUES
(@GOSSIP,0,0,'Great and powerful Har''koa, please call for one of your children that it might stealthily carry me into the Altar of Quetz''lun.',1,1,0,0,0,0,NULL);

DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=15  AND `SourceGroup`=@GOSSIP;
INSERT INTO `conditions` (`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`ElseGroup`,`ConditionTypeOrReference`,`ConditionValue1`,`ConditionValue2`,`ConditionValue3`,`ErrorTextId`,`ScriptName`,`Comment`) VALUES
(15,@GOSSIP,0,0,9,@QUEST,0,0,0,'','Show gossip option if player has quest 12655 active');

DELETE FROM `areatrigger_involvedrelation` WHERE `quest`=@QUEST;
INSERT INTO `areatrigger_involvedrelation` (`id`,`quest`) VALUES
(5052,@QUEST);

DELETE FROM `waypoints` WHERE `entry` IN (@ENTRY_HARKOA_KITTEN,@ENTRY_HARKOA_KITTEN*10);
INSERT INTO `waypoints` (`entry`,`pointid`,`position_x`,`position_y`,`position_z`,`point_comment`) VALUES
(@ENTRY_HARKOA_KITTEN,1,5343.219,-3763.973,373.093,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,2,5365.389,-3750.708,360.531,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,3,5386.707,-3755.923,360.458,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,4,5421.301,-3779.266,361.966,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,5,5464.585,-3784.811,362.422,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,6,5472.514,-3787.657,359.862,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,7,5523.643,-3823.486,360.533,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,8,5539.182,-3838.393,372.141,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,9,5714.259,-3895.436,371.987,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,10,5714.515,-3944.740,371.987,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,11,5715.673,-4019.310,372.152,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,12,5716.523,-4054.907,353.671,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,13,5716.630,-4188.195,354.075,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,14,5716.644,-4205.305,362.825,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,15,5724.548,-4238.222,362.746,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,16,5724.905,-4258.611,374.355,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,17,5720.831,-4331.177,374.023,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,18,5722.675,-4351.540,385.496,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,19,5728.693,-4374.917,386.492,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,20,5717.937,-4385.863,386.191,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,21,5705.368,-4379.375,385.803,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,22,5705.883,-4371.388,385.803,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,23,5714.739,-4352.132,385.560,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,24,5720.831,-4331.177,374.023,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,25,5724.905,-4258.611,374.355,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,26,5724.548,-4238.222,362.746,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,27,5716.644,-4205.305,362.825,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,28,5716.630,-4188.195,354.075,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,29,5716.523,-4054.907,353.671,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,30,5715.673,-4019.310,372.152,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,31,5714.515,-3944.740,371.987,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,32,5714.259,-3895.436,371.987,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,33,5709.297,-3844.293,372.012,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,34,5672.465,-3815.550,373.647,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN*10,1,5605.440,-3790.634,362.713,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN*10,2,5579.467,-3789.876,365.829,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN*10,3,5552.734,-3794.191,362.082,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN*10,4,5535.410,-3792.923,362.071,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN*10,5,5472.514,-3787.657,359.862,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN*10,6,5464.585,-3784.811,362.422,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN*10,7,5421.301,-3779.266,361.966,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN*10,8,5386.707,-3755.923,360.458,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN*10,9,5365.389,-3750.708,360.531,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN*10,10,5344.119,-3764.440,373.096,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN*10,11,5331.768,-3774.679,371.341,'Har''koa''s Kitten');

DELETE FROM `creature_text` WHERE `entry` IN (@ENTRY_HARKOA_KITTEN,@ENTRY_QUETZLUN);
INSERT INTO `creature_text` (`entry`,`groupid`,`id`,`text`,`type`,`language`,`probability`,`emote`,`duration`,`sound`,`comment`) VALUES
(@ENTRY_HARKOA_KITTEN,0,0,'Thank you for saving me, $N. This is the least that I could do to return the favor. Hold on tight. Here we go.',15,0,100,0,0,0,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,1,0,'This doesn''t look good. Whatever you do, don''t fall off. There''s a ton of nasty things in there!',15,0,100,0,0,0,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,2,0,'Oh no... Quetz''lun is dead! Stay still. We''ll sneak past the prophet.',15,0,100,0,0,0,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,3,0,'We''re spotted! Hang on. We have to get out of here!',15,0,100,0,0,0,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,4,0,'I think we''re safe now. Let''s get back!',15,0,100,0,0,0,'Har''koa''s Kitten'),
(@ENTRY_HARKOA_KITTEN,5,0,'We made it! Take care, $N, and thanks again!',15,0,100,0,0,0,'Har''koa''s Kitten'),
(@ENTRY_QUETZLUN,0,0,'What was that? I sense an intruder. Find and kill them!',14,0,100,0,0,0,'Quetz''lun');
[/sql]

That’s looking great. I just tested it and I have to admit that I really love it. /emoticons/default_smile.png

The jump looks kinda bad. I believe we need some extra speeds apart from run and walk for this to work as it should.

For some reason the gossip is only closing the gossip, therefore I just did .cast the summon spell.

Instead of using areatrigger_involvedrelation you can also use SMART_ACTION_CALL_GROUPEVENTHAPPENS on waypoint reached (not sure, never worked with areatriggers before).

Har’koa is missing the chains. (http://old01.wowhead.com/spell=51579 - apparently not working? =/)

Quest_template says this quest needs activation of an areatrigger. So I thought it would be best to use it.

I know about the chains but didnt manage to make them work. Dunno if there are bunnies in the GO next to Har’koa. The spells must definetly be cast BY her and are not cast ON her.

You can see this by casting http://old01.wowhead.com/spell=51579, http://old01.wowhead.com/spell=51577 and http://old01.wowhead.com/spell=45808.

Only one spell can be cast at a time but when you cast them with a player char you will see a short piece of the chains coming from your left hand, right hand oder somewhere in your chest depending on which spell you use.

I will look into the summoning spell issue.

Awesome job, kudos to you.

Using areatrigger is correct.

No problems on the summon spell, worked as intended.

After the jump, the speed goes down considerably.

And the stealth seems to be too much (nearly visible) but that might be my computer/monitor settings.

Other than that, really good job /emoticons/default_smile.png

If you can’t fix these possible problems (I am not sure either) I (or someone else) will push it.

Good work /emoticons/default_smile.png

Jump action looks like shit because the jump Z-axis velocity is guessed and works like shit because movementinfo isnt updated properly.

isnt the z velocity in the dbcs ?

What dbc? Spell::CalculateJumpSpeeds is wrong comparing to most sniffed spells ive checked, but then again, that is only for spells.

Thanks for the commendation.

Seems the speed value from creature_template isnt beeing respected after the jump action. Possibly another issue related to jump functionality in the core…?

Good to have the reminder about stealth. Forgot to mention that. If you have the kitten run the waypoints several times you will end up with a lot of different results:

Sometimes it is stealthed as meant to, sometimes stealth has no effect, sometimes the kitten is even invisible, etc.

Really no idea about that…

Apparently noone is able to fix the remaining issues about this quest.

I’d suggest pushing my fix to the repo.

How about pushing?

Soon mah friend, soon.

(And thanks for making this script)

Nice work.

But does anyone have another sniff on the menu_id for this npc?I found another value for this field,but can’t confirm if it’s the correct one(menu_id=9687).

I think this may be due to the fact that the gossip menu should be different when a player is on the quest. You can this on the video I posted above at 0:06 the second line of the gossip menu is something like “You may yet be my…” In the gossip menu 9749 the text is “I am forever in your debt, $N.”

I found id 13139 in npc_text to have the correct text of the video but didnt find the gossip menu for this and it is not in the gossip_menu table. Maybe you found the correct id…