Go Back   EQEmulator Home > EQEmulator Forums > Archives > Archive::Development > Archive::Quests

Archive::Quests Archive area for Quests's posts that were moved here after an inactivity period of 90 days.

Reply
 
Thread Tools Display Modes
  #1  
Old 04-12-2004, 12:34 PM
Richardo
Banned
 
Join Date: Oct 2003
Location: Mattmecks Basement
Posts: 546
Default Problem with Quest Implement

Ok, I made my quest file below... Trying to get "Soulbinder Gendal" to work in "the arena".

Here is the .pl for soulbinder... Also, his ID is 78252 (78252.pl)

Located in: C:\EqEmu\quests\arena

Quote:
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("You shall return here when your fate chooses death.");
quest::castspell($userid,2049);
}
}

#your standard default.pl EVENT_SAY behavior
}
Ok, I went in game... Got the npcID, made the PL file titled... 78252.pl and I put it in quests\arena and it still does'nt work. Is there a command im supposed to put in to make it work? I also restarted server a few times but still no luck...
Reply With Quote
  #2  
Old 04-12-2004, 12:41 PM
Monrezz's Avatar
Monrezz
Dragon
 
Join Date: Mar 2003
Location: #loc
Posts: 745
Default

Try:
Code:
sub EVENT_SAY
{ 
  if($mname =~ /^Soulbinder/i)
    { 
      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("You shall return here when your fate chooses death."); 
          quest::castspell($userid,2049); 
        }
    }
}
__________________

kRPG Profile
Reply With Quote
  #3  
Old 04-12-2004, 12:45 PM
Richardo
Banned
 
Join Date: Oct 2003
Location: Mattmecks Basement
Posts: 546
Default

Ok trying it now
Reply With Quote
  #4  
Old 04-12-2004, 12:48 PM
Richardo
Banned
 
Join Date: Oct 2003
Location: Mattmecks Basement
Posts: 546
Default

No Luck, whenever I hail me, he just looks at me...
Reply With Quote
  #5  
Old 04-12-2004, 12:53 PM
Richardo
Banned
 
Join Date: Oct 2003
Location: Mattmecks Basement
Posts: 546
Default

Nevermind! Restarted server and it works, woot thanks a lot Monrezz!!!!
Reply With Quote
  #6  
Old 04-12-2004, 12:55 PM
Monrezz's Avatar
Monrezz
Dragon
 
Join Date: Mar 2003
Location: #loc
Posts: 745
Default

Np.
__________________

kRPG Profile
Reply With Quote
  #7  
Old 04-12-2004, 02:45 PM
RexChaos
Dragon
 
Join Date: Feb 2004
Location: Everywhere you want to be
Posts: 582
Default

I can't get the soulbinders to actually have the spell "stick". None of the npc's casting beneficial spells on players work. :-/
__________________
An obnoxiously large picture should go here with some witty saying about some cartoon character I made in EQ, but then I realized that shit is fucking annoying.
Reply With Quote
  #8  
Old 04-12-2004, 03:24 PM
Richardo
Banned
 
Join Date: Oct 2003
Location: Mattmecks Basement
Posts: 546
Default

Show us your .pl
Reply With Quote
  #9  
Old 04-13-2004, 03:07 AM
cofruben
Old-EQEmu Developer
 
Join Date: Oct 2002
Location: Spain
Posts: 323
Default

try quest::selfcast(id);
Reply With Quote
  #10  
Old 05-11-2004, 07:25 AM
Charmy
Discordant
 
Join Date: May 2004
Location: The DeathStar of David
Posts: 337
Default

Sry for bring up an older topic here, but i am having same issue with getting benificial spells to stick when cast by npc, i tried the selfcast to force the client to cast the spell on himself, but for some very odd reason when i do quest::selfcast($userid,2049); it casts the lvl 4 bard group heal hymn of restoration, yet when i do #castspell 2049 while having myself targeted it casts bind, so i am stumped here any ideas on why this might not be working?
__________________
Mess with the Jews, and we will take all your money
Grunties Rule
And with that... I end
Any Other Questions, please refer to the Following:
http://iliilllli1.netfirms.com
Reply With Quote
  #11  
Old 05-11-2004, 08:05 AM
m0oni9
Hill Giant
 
Join Date: Dec 2003
Posts: 166
Default

From http://www.eqemulator.net/forums/viewtopic.php?t=12020:

quest::castspell(id,spellid); - Casts "spell" on entity with "id".

quest::selfcast(spellid); - Forces client to cast spell on themself (useful for self only and group effect spells).

Instead of quest::selfcast($userid,2049); try quest::castspell($userid,2049);
Reply With Quote
  #12  
Old 05-11-2004, 08:31 AM
animepimp
Dragon
 
Join Date: Jan 2004
Posts: 860
Default

Yeah the reason you are getting that spell is that the userid happens to be the same number as that spells number and that method only takes one parameter. C and Perl allows you to call a method with any number of parameters and won't crash as long as you send the same or more parameters than expected. But it still only reads the number its expecting which is just the first.
Reply With Quote
  #13  
Old 05-11-2004, 12:39 PM
Charmy
Discordant
 
Join Date: May 2004
Location: The DeathStar of David
Posts: 337
Default

ahh ok i understand now, thanks for the info =) didn't realize that it was selfonly/group spells that worked that way, however i still can't seem to get the npc to have a benifical spell stick, buffs, bind whatever, detrimental spells i have been able to however =), any ideas on how to fix this? or maybe an alternate way to work around it?
__________________
Mess with the Jews, and we will take all your money
Grunties Rule
And with that... I end
Any Other Questions, please refer to the Following:
http://iliilllli1.netfirms.com
Reply With Quote
  #14  
Old 05-11-2004, 06:28 PM
gandar
Sarnak
 
Join Date: Apr 2004
Location: West Sacramento, CA
Posts: 84
Default

Hello!

Try this:

On (or about) line 2417 in zone::mob.cpp ->

Change:
Code:
else if(_NPC(mob2))				// client to npc
	{
		return false;
	}
To:
Code:
else if(_NPC(mob2))				// client to npc
	{
		return true;
	}
That's where I changed it on my server - worked perfectly. My Soulbinder now binds your soul or heals on command...

Good Luck!

~Gandar
Reply With Quote
  #15  
Old 05-11-2004, 09:49 PM
Charmy
Discordant
 
Join Date: May 2004
Location: The DeathStar of David
Posts: 337
Default

Aswome! thanks!
__________________
Mess with the Jews, and we will take all your money
Grunties Rule
And with that... I end
Any Other Questions, please refer to the Following:
http://iliilllli1.netfirms.com
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 10:38 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 - 2025, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3