EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Archive::Quests (https://www.eqemulator.org/forums/forumdisplay.php?f=624)
-   -   Question about Perl Quest Stuff (https://www.eqemulator.org/forums/showthread.php?t=12686)

xtestx 03-26-2004 10:02 PM

Question about Perl Quest Stuff
 
I do not understand all this Perl Quest stuff... I see a bunch of code that looks and makes sense but then... wtf do I do with it? like this one

Code:

sub EVENT_SAY{
  if($mname =~ /^Soulbinder/{

    if($text=~/Hail/i){quest::say("Greetings $name. When a hero of our world is slain  their soul returns to the place it was last bound and the body is reincarnated. As a member of the Order of Eternity  it is my duty to [bind your soul] to this location if that is your wish.");}
    if($text=~/bind my soul/i) {
      quest::say("Binding your soul.  You will return here when you die.");
      quest::castspell($userid,2049);
    }
  }

  #your standard default.pl EVENT_SAY behavior
}

used in an example by smogo on http://www.eqemulator.net/forums/viewtopic.php?t=13265

Where exactly would I put that code to make Dr.Phil01 say that?

Monrezz 03-26-2004 11:38 PM

Read the quest guide stickied at the top, it tells you. Needs to go in C:\EQEMu\quests\$zonesn where $zonesn is the short name of the zone. Needs to be saved as the NPCID is the NPC you wish to assign the quest to.

xtestx 03-27-2004 12:04 AM

so if i wanted

King_Phil to say "Greetings" after you hail I would use

sub EVENT_SAY{
if($mname =~ /^King_Phil/{

if($text=~/Hail/i){quest::say("Greetings $name.");}
}
}

#your standard default.pl EVENT_SAY behavior
}

and save that in notepad as what type of file again? then put it in the quests folder? and is $zonesn a folder or...?

xtestx 03-27-2004 12:10 AM

the sticky says

This is for EQEMu 0.5.3+ With Perl Enabled
If you do not see the following in zone.exe when you boot it up you do NOT have Perl Enabled ones.
[Status] Loading embedded perl
[Status] Loading perlemb plugins.


how do i enable it ?

smogo 03-28-2004 11:49 AM

It can't be enable as an option. got to use the binaries with perl enabled (compile it or download).

Monrezz 03-29-2004 04:44 AM

Quote:

Originally Posted by xtestx
sub EVENT_SAY{
if($mname =~ /^King_Phil/{

if($text=~/Hail/i){quest::say("Greetings $name.");}
}
}

#your standard default.pl EVENT_SAY behavior
}

Should be:

Code:

sub EVENT_SAY
{
  if(($mname =~ /King_Phil/) && ($text=~/Hail/i))
  {
    quest::say("Greetings $name.");
  }
}

Quote:

Originally Posted by xtestx
and save that in notepad as what type of file again? then put it in the quests folder? and is $zonesn a folder or...?

Read the sticky. Save it as NPCID.pl in the folder relevant to the zone's short name of where the NPC is. So if King_Phil is in East Freeport and had ID of 546 the file would be: C:\EQEMu\quests\freporte\546.pl.

By $zonesn I meant the short name of the zone. To find it out, see the zone names list or use $zonesn in Perl as a variable.

RexChaos 03-29-2004 07:02 AM

So...is there a 5.5 version with perl enabled? If not, will there be soon?

smogo 03-29-2004 08:50 AM

Quote:

So...is there a 5.5 version with perl enabled? If not, will there be soon?
5.5 is perl compliant. Means that you can get a 5.5 perl enabled :
- if you get dr1 snapshot from Shawn's or rc1 snapshot from Khuong's (!yes, i found it) and compile it
- if you get compiled binaries where perl has been enabled

Can't tell for sure, but can bet Nilar's or Jezebell's win binaries were perl enabled. Better check ...

RexChaos 03-29-2004 09:06 AM

Cool, thanks!


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

Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.