|  |  | 
 
  |  |  |  |  
  |  |  |  |  
  |  |  |  |  
  |  |  |  |  
  |  | 
	
		
   
   
      | Quests::Custom Custom Quests here |  
	
	
		
	
	
	| 
			
			 
			
				03-24-2008, 02:52 PM
			
			
			
		 |  
	| 
		
			
			| Dragon |  | 
					Join Date: May 2006 Location: Cincinnati, OH 
						Posts: 689
					      |  |  
	| 
 Huge thanks! That's gonna be a large chunk of time saved    Thanks for sharing! |  
	
		
	
	
 
  |  |  |  |  
	| 
			
			 
			
				03-24-2008, 03:31 PM
			
			
			
		 |  
	| 
		
			|  | Developer |  | 
					Join Date: Aug 2006 Location: USA 
						Posts: 5,946
					      |  |  
	| 
				  
 NP lol.  I try to share any complex quests I write in case someone might find them or parts of them useful.
 This one is actually fairly simple, but took a while for me to figure out how to make it work perfectly.  The hardest part was getting the event timer to work without getting reset each time one of the 12 died (since they all use the same quest file).  I kept trying to think of another way to do it but finally went with having the first councilman that is attacked send a signal to the untargetable boss and that boss will send a signal to The Rathe (invisible event timer), and then The Rathe starts the timer and depops the untargetable boss.  This keeps the other 11 councilman from sending the signal to start the timer over again and again (since the pass through NPC is depopped).
 
 And if you are trying to make the event similar to the one from EQLive, the main difference is that their timer starts when the first spawn dies, not when it is attacked.  You can easily change the first signal to be sent in EVENT_DEATH to get that working properly.  Also, you may want to change the passthrough signal NPC (the untargetable boss) to be invisible, as I don't think the Avatar of Earth spawns until after the event is completed.  But, that should be it.  The basics of it is all there.  And it could be used in any other zone just as easily.
 |  
 
  |  |  |  |  
	
		
	
	
 
  |  |  |  |  
	| 
			
			 
			
				03-24-2008, 04:42 PM
			
			
			
		 |  
	| 
		
			
			| Developer |  | 
					Join Date: Mar 2007 Location: Ohio 
						Posts: 648
					      |  |  
	| 
				  
 
	Quote: 
	
		| 
					Originally Posted by trevius  This one is actually fairly simple, but took a while for me to figure out how to make it work perfectly.  The hardest part was getting the event timer to work without getting reset each time one of the 12 died (since they all use the same quest file).  I kept trying to think of another way to do it but finally went with having the first councilman that is attacked send a signal to the untargetable boss and that boss will send a signal to The Rathe (invisible event timer), and then The Rathe starts the timer and depops the untargetable boss.  This keeps the other 11 councilman from sending the signal to start the timer over again and again (since the pass through NPC is depopped). |  Kinda thinking out loud here, but couldn't you define a variable for The_Rathe (ID 2700426), maybe call it started , set it to 1 once the first Councilman (ID 222008 ) has been killed, and then set it back to undefined once the quest has either been completed or failed? Overall, it should make it a little simpler & cleaner. It should look something like this:
 
The_Rathe (ID 2700426):
 
	Code: #############
#Quest Name: Rathe Council Event (The_Rathe Portion)
#Author: Trevius of Storm Haven
#NPC's Involved: The Rathe, A Rathe Councilman, Leader of the Rathe Council, and Untargetable Leader of the Rathe Council
#Items Involved: N/A
#############
###NPC 1
#Name: The_Rathe (Custom Made NPC ID 2700426)
#Race 240 (TeleportMan), Texture 0, Size 5, gender 2, body type 11
#Location: 0, 0, -999 of the Plane of Earth B
#level: 80
#Type: Timer and Signal NPC to start and end the event
#Loot: N/A
#############
sub EVENT_SPAWN {
    quest::spawn2(222008,0,0,1985,408,-207,64);
    quest::spawn2(222008,0,0,2051,340,-207,255);
    quest::spawn2(222008,0,0,2018,352,-207,31);
    quest::spawn2(222008,0,0,1996,377,-207,46);
    quest::spawn2(222008,0,0,1996,437,-207,91);
    quest::spawn2(222008,0,0,2019,464,-207,113);
    quest::spawn2(222008,0,0,2051,475,-207,134);
    quest::spawn2(222008,0,0,2083,463,-207,150);
    quest::spawn2(222008,0,0,2106,439,-207,173);
    quest::spawn2(222008,0,0,2119,408,-207,199);
    quest::spawn2(222008,0,0,2107,376,-207,217);
    quest::spawn2(222008,0,0,2084,353,-207,242);
}
sub EVENT_SIGNAL {
  if ($signal == 2 && $started != 1) {
    $started = 1; // The event has officially started, so don't keep doing this part
    quest::settimer("event_start",310);
    quest::shout("The Test of Rathe has begun.  You have 5 minutes to complete this portion of the event.");
  }
  if ($signal == 3) {
    quest::settimer("rathe_spawn",10);
    quest::signalwith(222008,4,0);
  }
  if ($signal == 5) {quest::stoptimer("rathe_spawn");}
}
sub EVENT_TIMER {
  if ($timer eq "event_start") {
    $started = undef;
    quest::signalwith(222008,6,0);
    quest::stoptimer("rathe_spawn");
    quest::shout("You have failed the test!");
    quest::stoptimer("event_start");
  }
  if ($timer eq "rathe_spawn") {
    $started = undef;
    quest::stoptimer("event_start");
    quest::stoptimer("rathe_spawn");
    quest::spawn2(2700424,0,0,2053,414,-221,15); }
  } A_Rathe_Councilman (ID 222008 ):
 
	Code: #############
#Quest Name: Rathe Council Event (A_Rathe_Councilman Portion)
#Author: Trevius of Storm Haven
#NPC's Involved: The Rathe, A Rathe Councilman, Leader of the Rathe Council, and Untargetable Leader of the Rathe Council
#Items Involved: N/A
#############
###NPC 1
#Name: A_Rathe_Councilman (PEQ NPC ID 222008)
#Race 298 (TheRathe), Texture 0, Size 15, gender 2, body type 1
#Location: Multiple spawned by quest when the Untargetable Leader of the Rathe Council spawns.
#level: 55
#Type: Quest spawned NPCs that must all be killed within the 5 minute timer or event fails
#Loot: N/A
#############
sub EVENT_ATTACK {
    quest::signalwith(2700426,2,0);
}
sub EVENT_DEATH {
    quest::signalwith(2700426,3,0);
}
sub EVENT_SIGNAL {
  if ($signal == 4) {quest::signalwith(2700426,5,0);}
  if ($signal == 6) {quest::depop();}
} Anyways, just a thought. |  
 
  |  |  |  |  
	
		
	
	
	| 
			
			 
			
				03-25-2008, 08:45 AM
			
			
			
		 |  
	| 
		
			|  | Developer |  | 
					Join Date: Aug 2006 Location: USA 
						Posts: 5,946
					      |  |  
	| 
 Looks like that would probably work just fine and shorten up the number of NPCs involved.  I considered messing with some variables for it, but didn't know how to get it to do what you set up.  Since mine is already working perfectly, I am not going to test that one out.  But, I would imagine it should work.  May need a little tweaking to define the variable beforehand, but I am definitely no master quest writer so I could be wrong.
 Either way, it is very flexible.  Thanks AndMetal for the suggestion.
 |  
	
		
	
	
	| 
			
			 
			
				03-25-2008, 08:53 AM
			
			
			
		 |  
	| 
		
			
			| Sarnak |  | 
					Join Date: May 2006 Location: Cincinnati 
						Posts: 73
					      |  |  
	| 
 Thanks for posting this Trevius, I'll have to figure out a sweet way to implement this somewhere on Zebuxoruk. I appreciate you sharing it! |  
	
		
	
	
	
	
	| Thread Tools |  
	|  |  
	| Display Modes |  
	
	| 
		
		 Hybrid Mode |  
	| 
	|  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 01:29 PM.
 
 |  |  
    |  |  |  |  
    |  |  |  |  
     |  |  |  |  
 |  |