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 01-09-2018, 06:46 PM
Lane
Sarnak
 
Join Date: Dec 2010
Posts: 63
Default Change Class + Zone ?

Hi guys, I'm trying to get this quest to change the client to a warrior while also zoning them to the Greater Faydark. Is this possible because the permaclass command causes you to disconnect?

Thank you

Code:
sub EVENT_SAY {
if($text =~/Hail/i) { 
quest::say ("Innoruuk deserved to die, as did you. It's a pity that [$Rallos] brought you here!");
}
if ($text =~/Rallos/i) {
quest::say ("Yes, my foolish father, Rallos Zek. He saved you! Now he demands you return to the world of the [$living].");
}
if ($text =~/living/i) {
quest::say ("Norrath you fool! Now do you [$pledge] allegiance to the Warlord?");
}
if ($text =~/pledge/i) {
quest::say ("Welcome young warrior. Now get out of my sight!");
quest::permaclass(1);
quest::movepc(138,0,0,0);
}
}
Reply With Quote
  #2  
Old 01-09-2018, 08:12 PM
Coenxai's Avatar
Coenxai
Hill Giant
 
Join Date: Dec 2013
Posts: 151
Default

...Why not try it and find out?
__________________
"The true sign of intelligence is not knowledge but imagination."
Reply With Quote
  #3  
Old 01-09-2018, 08:52 PM
phantomghost
Hill Giant
 
Join Date: May 2015
Posts: 126
Default

I made an attempt to figure it out using if and elsif statements, but could not get it to work, maybe you could look into those variable/operators and see if something works.

It looks like Gfaydark should be zone id 54.

Not sure why the last guy felt his post of ... Why not try it and find out? was necessary since it was obvious you already made an attempt. But then again as you start to search most of the forums you have to read through 95% of posts like his, to find the 5% that try to help or at least lead you in the correct direction.
Reply With Quote
  #4  
Old 01-09-2018, 08:56 PM
Coenxai's Avatar
Coenxai
Hill Giant
 
Join Date: Dec 2013
Posts: 151
Default

Quote:
Originally Posted by phantomghost View Post
I made an attempt to figure it out using if and elsif statements, but could not get it to work, maybe you could look into those variable/operators and see if something works.

It looks like Gfaydark should be zone id 54.

Not sure why the last guy felt his post of ... Why not try it and find out? was necessary since it was obvious you already made an attempt. But then again as you start to search most of the forums you have to read through 95% of posts like his, to find the 5% that try to help or at least lead you in the correct direction.
..........
__________________
"The true sign of intelligence is not knowledge but imagination."
Reply With Quote
  #5  
Old 01-09-2018, 08:59 PM
phantomghost
Hill Giant
 
Join Date: May 2015
Posts: 126
Default

Quote:
Originally Posted by Coenxai View Post
..........
That is exactly what I was thinking when you responded with Why not try it and find out, when it was pretty obvious he did try it, and it did not work.

You could of simply ignored the post or made an actual attempt to help, but instead you went with the lets be a dick route.
Reply With Quote
  #6  
Old 01-09-2018, 09:04 PM
Kingly_Krab
Administrator
 
Join Date: May 2013
Location: United States
Posts: 1,594
Default

All you have to do is go in the source and remove the kick from permaclass method. Really it doesn't need to kick you, all you need is to zone and it will update.

Change this:
Code:
void QuestManager::permaclass(int class_id) {
    QuestManagerCurrentQuestVars();
    //Makes the client the class specified
    initiator->SetBaseClass(class_id);
    initiator->Save(2);
    initiator->Kick();
}
To this:
Code:
void QuestManager::permaclass(int class_id) {
    QuestManagerCurrentQuestVars();
    //Makes the client the class specified
    initiator->SetBaseClass(class_id);
    initiator->Save(2);
}
Reply With Quote
  #7  
Old 01-09-2018, 09:16 PM
The_Beast's Avatar
The_Beast
Discordant
 
Join Date: May 2016
Location: Under a rock
Posts: 290
Default

Quote:
Originally Posted by Kingly_Krab View Post
All you have to do is go in the source and remove the kick from permaclass method.
Thanks Kingly, I was annoyed by that "disconnect" myself, just doing a simple GM permaclass on a toon.

EDIT: By the way, for others, that snippet is in questmgr.cpp source file.
Reply With Quote
  #8  
Old 01-09-2018, 09:30 PM
Lane
Sarnak
 
Join Date: Dec 2010
Posts: 63
Default

Thank you all, I appreciate it. For zoneID I was looking at my DB. My apologies.
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 08:14 PM.


 

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