|
|
 |
 |
 |
 |
|
 |
 |
|
 |
 |
|
 |
|
Quests::Completed This is where Completed quests are. |

04-10-2008, 11:09 AM
|
 |
The PEQ Dude
|
|
Join Date: Apr 2003
Location: -
Posts: 1,988
|
|
Ahhh I understand.
Yep, you're almost done, just need those few details worked out.
|

04-10-2008, 10:53 PM
|
Hill Giant
|
|
Join Date: Sep 2005
Posts: 114
|
|
How would I get the corrupted to spawn in a ring around Deyid? I see this, quest::spawn2(npc_type,grid,guildwarset,x,y,z,head ing); So I would have to #zone to various spots around deyid write down the /loc and do it that way?
I also don;t really see how signal is done (the recieving NPC) here is what i have
Deyid:
Code:
quest::signalwith(204047,204047_1, 20);
Seilaen:
Code:
sub_SIGNAL {
$signal,204047_1;
quest::shout("Oh thank you! Thank you! I don't feel the trees watching me anymore! And.. Let me try Mother's Locket again, I think it might work..");
quest::depop();
}
|
 |
|
 |

04-11-2008, 12:57 AM
|
Developer
|
|
Join Date: Mar 2007
Location: Ohio
Posts: 648
|
|
Quote:
Originally Posted by fault
How would I get the corrupted to spawn in a ring around Deyid? I see this, quest::spawn2(npc_type,grid,guildwarset,x,y,z,head ing); So I would have to #zone to various spots around deyid write down the /loc and do it that way?
|
Basically, yes. You can also use #goto x y z which does the exact same thing as #zone zonename x y z.
I was going to try to create this quest myself (the dialogues are easy enough), so I could learn how to make everything interact properly, but there weren't really any resources spelling out how many treants there were, where they are placed, how fast they move, how tough they are, etc.
Quote:
I also don;t really see how signal is done (the recieving NPC) here is what i have
Deyid:
Code:
quest::signalwith(204047,204047_1, 20);
Seilaen:
Code:
sub_SIGNAL {
$signal,204047_1;
quest::shout("Oh thank you! Thank you! I don't feel the trees watching me anymore! And.. Let me try Mother's Locket again, I think it might work..");
quest::depop();
}
|
This is what it should look like for Deyid to signal to Seilaen that's he/she/it's been killed, plus the resulting dialogue:
#Deyid_the_Twisted.pl
Code:
# Name: #Deyid_the_Twisted
# ID: 204051
# Zone: ponightmare
sub EVENT_DEATH {
quest::signalwith(204047, 5, 1); # Send signal # 5 to Seilaen 1 second after death
}
Seilaen.pl
Code:
# Name: Sailaen
# ID: 204047
# Zone: ponightmare
sub EVENT_SIGNAL {
if ($signal == 5) {
quest::shout("Oh thank you! Thank you! I don't feel the trees watching me anymore! And.. Let me try Mother's Locket again, I think it might work..");
quest::depop();
}
}
|
 |
|
 |

04-11-2008, 02:03 AM
|
Hill Giant
|
|
Join Date: Sep 2005
Posts: 114
|
|
Oh, So I can;t use what I wanted? Darn I am a stickler for clean precise code ( npcid+value for example)
Reading up on the quest it appears as if he summons between 6 and 12. 6 for sure, but reports also say 1 dozen(12)
working on geting the final done as I type this (Atleast I hope)
|
 |
|
 |

04-11-2008, 07:24 AM
|
Hill Giant
|
|
Join Date: Sep 2005
Posts: 114
|
|
here is what I have for deyid, I am stil uncertain as to the `grid` field in the spawn2, is that the walk grid? or what?
PHP Code:
sub EVENT_SPAWN {
quest::setnexthpevent(61);
}
#During the fight he summons a ring of Corrupt Treants ID 204068 in PEQ
# By the time you kill deyid they are upon you and attacking you.
#when Deyid Dies you have succeeded, you are not required to kill the spawns.
sub EVENT_HP {
if ($hpevent == 61) {
quest::spawn2(Corrupt_Treant,grid,0,922,1028,280);
quest::spawn2(Corrupt_Treant,grid,0,947,1117,200);
quest::spawn2(Corrupt_Treant,grid,0,1031,1164,276);
quest::spawn2(Corrupt_Treant,grid,0,1121,1154,277);
quest::spawn2(Corrupt_Treant,grid,0,1206,1067,280);
quest::spawn2(Corrupt_Treant,grid,0,1237,887,272);
}
sub EVENT_DEATH {
quest::emote("An eerie silence settles onto the forest as Deyid the Twisted slumps over, defeated");
quest::signalwith(204047, 5, 1); # Send signal # 5 to Seilaen 1 second after death
}
I got myself a test base up (server) was going to be testing it, but first I must search the forums here and figure out why When I hail npcs like th eosulbinders they ignore me 
|
 |
|
 |

04-11-2008, 07:40 AM
|
 |
The PEQ Dude
|
|
Join Date: Apr 2003
Location: -
Posts: 1,988
|
|
Yep, grid is their walking path. In this case none is needed, so the value is 0.
The script is perfect, that's exactly how I would write it. Unless there is more you want to add to it, I'll get it in today.
|
 |
|
 |

04-11-2008, 03:19 PM
|
Developer
|
|
Join Date: Mar 2007
Location: Ohio
Posts: 648
|
|
From Allakhazam, referring to the Corrupt Treants:
Quote:
They appear about 30 sec into the fight, and start moving in around 1 min into the fight. Until they start moving they can't be targeted. I've herd rumors that if you can kill Deyid before they start moving they despawn. I can attest that once they start moving they don't care if Deyid is up or not. They hit hard and fast, and killed every caster quick. My suggestion is have the casters up close to the melee to give the raid a few more seconds to kill deyid.
|
It sounds like they'd need to start as untargetable, then after ~30 seconds, they should respawn as targetable Corrupt Treants & start moving in (very slowly I would assume). I think should do the trick:
#Deyid_the_Twisted.pl:
Code:
sub EVENT_SPAWN {
quest::setnexthpevent(61);
quest::signal(204069); # Tell any targetable treants still alive to depop after Deyid respawns (18 minutes)
}
#During the fight he summons a ring of Corrupt Treants ID 204068 in PEQ
# By the time you kill deyid they are upon you and attacking you.
#when Deyid Dies you have succeeded, you are not required to kill the spawns.
sub EVENT_HP {
if ($hpevent == 61) {
quest::spawn2(204068,0,0,922,1028,280);
quest::spawn2(204068,0,0,947,1117,200);
quest::spawn2(204068,0,0,1031,1164,276);
quest::spawn2(204068,0,0,1121,1154,277);
quest::spawn2(204068,0,0,1206,1067,280);
quest::spawn2(204068,0,0,1237,887,272);
quest::settimer(1,30) # Timer to spawn targetable treants 30 seconds after untargetables are spawned
}
sub EVENT_TIMER {
if ($timer == 1) {
quest::signal(204068); # Despawn untargetable treants
# Spawn the targetable treants
quest::spawn2(204069,0,0,922,1028,280);
quest::spawn2(204069,0,0,947,1117,200);
quest::spawn2(204069,0,0,1031,1164,276);
quest::spawn2(204069,0,0,1121,1154,277);
quest::spawn2(204069,0,0,1206,1067,280);
quest::spawn2(204069,0,0,1237,887,272);
}
}
sub EVENT_DEATH {
quest::emote("An eerie silence settles onto the forest as Deyid the Twisted slumps over, defeated");
quest::signalwith(204047, 5, 1); # Send signal # 5 to Seilaen 1 second after death
quest::stoptimer(1); # Prevent treants from respawning as targetable if killed quickly
quest::signal(204068); # If Deyid is dead before the targetable treants have spawned, tell them to depop
}
Corrupt Treant (untargetable), ID 204068:
Code:
sub EVENT_SIGNAL {
if ($signal == 0) {quest::depop();} # Depop all at once, instead of one at a time with quest::depopall()
}
Corrupt Treant (targetable), ID 204069 (I assume):
Code:
sub EVENT_SPAWN {
quest::moveto(1011,1081,274); # Start walking to Deyid's spawn point, will probably require a very slow walk speed for dramatic effect
}
sub EVENT_SIGNAL {
if ($signal == 0) {quest::depop();} # Depop all at once, instead of one at a time with quest::depopall()
}
|
 |
|
 |

04-11-2008, 09:46 PM
|
Hill Giant
|
|
Join Date: Sep 2005
Posts: 114
|
|
Quote:
Originally Posted by cavedude
Yep, grid is their walking path. In this case none is needed, so the value is 0.
The script is perfect, that's exactly how I would write it. Unless there is more you want to add to it, I'll get it in today.
|
Must've missed the 30 second thing, if andmetal doesn't tmind add what he added to it and then it *should* be straight.
Appreciate all the advice and help.
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -4. The time now is 02:34 AM.
|
|
 |
|
 |
|
|
|
 |
|
 |
|
 |