Go Back   EQEmulator Home > EQEmulator Forums > Quests > Quests::Q&A

Quests::Q&A This is the quest support section

Reply
 
Thread Tools Display Modes
  #1  
Old 08-27-2007, 02:09 AM
leslamarch
Discordant
 
Join Date: Sep 2006
Location: Green Bay, WI
Posts: 436
Default Quest for teleports?

Hello all,
I have a question, i have been looking for an example quest where you walk by an npc and it ports the player to xyz. I'm sure its here just not sure what to search under, so basically i want to use it to change the zone connections. *example* when a player is headed to blackburrow instead of going to blackburrow they would go Sakrateri new awesome zones. I hope this makes sense as to what i'm asking. any help would be greatly appreciated
Thanks so Much
~LL~
Reply With Quote
  #2  
Old 08-27-2007, 02:16 AM
Sakrateri's Avatar
Sakrateri
Dragon
 
Join Date: Mar 2004
Location: England
Posts: 776
Default

Heres one I was using in Nexus to teleport people to nektropos..

Code:
sub EVENT_SAY{
if($text=~/hail/i){
quest::say("Hello there $name !!! would you like to travel to the enchanting land of [Nektropos] ?.");
}

if($text=~/nektropos/i){
quest::say("And Away You Go");
quest::movepc(28,0,0,0)}
}
that what you mean? if so you can just replace the zone IDs and cords for other zones
__________________
KhepriGames

Game Gallery

My Forums

Reply With Quote
  #3  
Old 08-27-2007, 02:40 AM
leslamarch
Discordant
 
Join Date: Sep 2006
Location: Green Bay, WI
Posts: 436
Default

Quote:
Originally Posted by Sakrateri View Post
Heres one I was using in Nexus to teleport people to nektropos..

Code:
sub EVENT_SAY{
if($text=~/hail/i){
quest::say("Hello there $name !!! would you like to travel to the enchanting land of [Nektropos] ?.");
}

if($text=~/nektropos/i){
quest::say("And Away You Go");
quest::movepc(28,0,0,0)}
}
that what you mean? if so you can just replace the zone IDs and cords for other zones
Ok this works Great!! one other question is there a way to do this with out any pc to npc interaction?
Thanks again Sakrateri for everything
~LL~
Reply With Quote
  #4  
Old 08-27-2007, 03:30 AM
DarkGothic's Avatar
DarkGothic
Fire Beetle
 
Join Date: Sep 2006
Posts: 12
Default

You can also change the zone line in your DB under zone connection, were I set up my zones. you have to get the loc. and zone ID.
Reply With Quote
  #5  
Old 08-27-2007, 05:09 AM
leslamarch
Discordant
 
Join Date: Sep 2006
Location: Green Bay, WI
Posts: 436
Default

ok i found i think what i'm trying to do, Its similar to what Angelox did with ships.
But when i copy and paste his proximity quest and name it after an npc there it does nothing? this is the one I used from his quest

Code:
# Zone to Timorous event
# Zone: Oasis
# AngeloX

sub EVENT_SPAWN
{
	$x = $npc->GetX();
	$y = $npc->GetY();
	quest::set_proximity($x - 50, $x + 50, $y - 50, $y + 50);
}

sub EVENT_ENTER
{
	quest::movepc(96,3335.5,7121.4,-5.5);
}
any way i could make this work for my application?
Thanks so Much
~LL~
Reply With Quote
  #6  
Old 08-27-2007, 09:38 AM
leslamarch
Discordant
 
Join Date: Sep 2006
Location: Green Bay, WI
Posts: 436
Default

Ok got it to work now, was a typo on my part where the zone id and xyz are i used a period instead of a comma. Now i have connected the new zones, works flawless. Thanks for all the info guys, Great group of people in this community.
Thanks
~LL~
Reply With Quote
  #7  
Old 01-30-2008, 05:06 AM
narcberry
Sarnak
 
Join Date: Mar 2005
Location: Idaho, USA
Posts: 94
Default

I have 2 questions.
1) After using the movepc function, will the quest keep executing? IE, can 1 quest port someone to nexus, then later port them to pok?
2) What is the best method to move an npc around. Not make them walk to a point, but have them instantly teleport to a position?
__________________
Thanks for answering my questions.
My Website
Reply With Quote
  #8  
Old 01-30-2008, 05:58 AM
ChaosSlayer
Demi-God
 
Join Date: May 2007
Posts: 1,032
Default

Quote:
Originally Posted by narcberry View Post
I have 2 questions.
1) After using the movepc function, will the quest keep executing? IE, can 1 quest port someone to nexus, then later port them to pok?
2) What is the best method to move an npc around. Not make them walk to a point, but have them instantly teleport to a position?
to 1) - not with a proximity detector - since the npc never asks you what you want to do. It is posible with Hail or item turn in request (unless the proximity detector is also set to recognize your class or race, so all human warriors get ported to Qeynos, while all Wood Elves go to Gfay)
Reply With Quote
  #9  
Old 01-30-2008, 06:58 AM
sfisque
Hill Giant
 
Join Date: Oct 2006
Posts: 248
Default

for 1) i'm not sure the quest framework has a "delay" mechanism. what you could try to do is have an npc at the first destination that triggers (via proximity, hail, flag, etc.) and sends the player to the followup destination. maybe issue an enhancement bug for adding a "quest::delay" method if it such a mechanism doesnt exist. if it does, maybe one of the quest guru's could chime in and give some light on it.

== sfisque
Reply With Quote
  #10  
Old 01-30-2008, 08:49 AM
narcberry
Sarnak
 
Join Date: Mar 2005
Location: Idaho, USA
Posts: 94
Default

Tested several things to no success. I'm making a new topic specifically for the delay mechanism.
__________________
Thanks for answering my questions.
My Website
Reply With Quote
  #11  
Old 02-21-2008, 10:30 PM
Striat
Sarnak
 
Join Date: Aug 2006
Posts: 60
Default

Quote:
Originally Posted by narcberry View Post
I have 2 questions.
1) After using the movepc function, will the quest keep executing? IE, can 1 quest port someone to nexus, then later port them to pok?
2) What is the best method to move an npc around. Not make them walk to a point, but have them instantly teleport to a position?
A little later, but here is somethhing I used for teleporting npcs around. This is an old script that can definitely be written much much better now. Nevertheless, it still gets the job done. You'll want to notice the stuns in there. This was used because npcs would move a little as soon as they were moved. So, it gives time to update. Another alternative to use the stuns is to set npc's run speed very very low if possible. Either will do the trick, but of course you may need to keep run speed up.

Code:
my $location = 0;		#startingpoint

sub EVENT_SPAWN {
	$location = 0;
}

sub EVENT_SAY { 
if($text=~/Hail/i){
	if ($location == 1) {		#I'm at my new destination
	quest::say("You want me to leave this mansion?  bummer!");
	quest::settimer("moveme",1);
	}
	else {				#I'm at my starting point
	quest::say("I am not too happy with my hut");
	quest::settimer("moveme",1);
	}
    }
  }

sub EVENT_TIMER {
if ($timer eq "moveme") {		#This timer is used for moving.  It triggers updateguard
	quest::stoptimer("moveme");
	quest::settimer("updateguard",1);
	if ($location == 1) {	#I call this when I need to go back to starting location
	$npc->Gate();
	$npc->Stun(2000);
	$location = 0;
	}
	else {		#I call for this when I'm leaving my original spot
	$npc->SendTo(260, 353, 0);
	$npc->Stun(2000);
	$location = 1;
	}
   }
if ($timer eq "updateguard") {	#I call this to update guard spot
	quest::stoptimer("updateguard");
	$npc->SaveGuardSpot(0);
   }
}
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 09:49 AM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3