Go Back   EQEmulator Home > EQEmulator Forums > Quests > Quests::Custom

Quests::Custom Custom Quests here

Reply
 
Thread Tools Display Modes
  #1  
Old 03-02-2009, 10:55 PM
Bristlebane[nj]
Sarnak
 
Join Date: Mar 2009
Location: XXX
Posts: 78
Default Title Giver!

Well, thanks to Trevius I have successfully made a NPC that will give the player a Title infront of their name , this is only the start of the script. I will be adding more to it to allow players to get Titles for killing bosses or doing quests! Thanks Trevius for the command!
Code:
sub EVENT_SAY
{
if ($text =~/hail/i)
{
quest::say("Hail, I am the Title Giver, if you wish to have a title that is in my list, please let me know. Special Titles will be rewarded for killing bosses.");
$client->Message(13,"[Newbie] - [Reaver] - [Healer] - [Warlord] - [Summoner] - [Buffer] - [Spirit] - [Auger] - [Hunter]");
$client->Message(14,"You may have to relog or rezone for the Title to take affect!");
}
if ($text =~/newbie/i)
{
quest::say("You're title has been changed please zone for it to take effect");
$client->SetAATitle("Newbie");
}
if ($text =~/reaver/i)
{
quest::say("You're title has been changed please zone for it to take effect");
$client->SetAATitle("Reaver");
}
if ($text =~/healer/i)
{
quest::say("You're title has been changed please zone for it to take effect");
$client->SetAATitle("Healer");
}
if ($text =~/warlord/i)
{
quest::say("You're title has been changed please zone for it to take effect");
$client->SetAATitle("Warlord");
}
if ($text =~/summoner/i)
{
quest::say("You're title has been changed please zone for it to take effect");
$client->SetAATitle("Summoner");
}
if ($text =~/buffer/i)
{
quest::say("You're title has been changed please zone for it to take effect");
$client->SetAATitle("Buffer");
}
if ($text =~/spirit/i)
{
quest::say("You're title has been changed please zone for it to take effect");
$client->SetAATitle("Spirit");
}
if ($text =~/auger/i)
{
quest::say("You're title has been changed please zone for it to take effect");
$client->SetAATitle("Auger");
}
if ($text =~/hunter/i)
{
quest::say("You're title has been changed please zone for it to take effect");
$client->SetAATitle("Hunter");
	}
}
Reply With Quote
  #2  
Old 03-02-2009, 11:03 PM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

Good to know the prefix title command works Now, we just need to see if the suffix stuff works. Glad I could be of some help to you.

Ultimately, it would be best for eqemu to implement the Title window at some point that would let players earn Titles and select them at any point from the window. Until then, quests like this should help fill that need some.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote
  #3  
Old 03-02-2009, 11:36 PM
Bristlebane[nj]
Sarnak
 
Join Date: Mar 2009
Location: XXX
Posts: 78
Default

Yep, it requires the player to zone for it to work, but it can be good for turn in titles, or even kill titles. EX: Kill mob, when mob dies spawn a npc that rewards title to players who hail before a period of time, as in about 15seconds to hail before he disappears.. or have an NPC that checks for a global quest from a boss kill to let you have a specific title... guess there could be a lot of ideas done with this, hope some people find this useful though
Reply With Quote
  #4  
Old 03-03-2009, 03:55 PM
Bristlebane[nj]
Sarnak
 
Join Date: Mar 2009
Location: XXX
Posts: 78
Default

Well Trevius, #titlesuffix works well, but so far I don't have any idea how to set it into a command.
Reply With Quote
  #5  
Old 03-16-2009, 11:44 PM
Rezbee
Sarnak
 
Join Date: Jan 2009
Location: USA
Posts: 38
Default

Isn't there a way to ....

Code:
if (count($client->AAtotal) >= 60 && $class == "Wizard")
    {
    $client->SetAATitle("Sorcerer");
    }
or something? That would be pretty awesome and would let us actually hail a npc and get your aa titles.
Reply With Quote
  #6  
Old 03-20-2009, 12:21 AM
Bristlebane[nj]
Sarnak
 
Join Date: Mar 2009
Location: XXX
Posts: 78
Default

Hmm, sounds like it may work. Tested it?
Reply With Quote
  #7  
Old 04-03-2010, 11:37 AM
dreamseer
Fire Beetle
 
Join Date: Feb 2010
Location: York
Posts: 22
Default

I'm struggling here a little due to my lack of knowledge:

I've created aan npc give him a quest to set the players title which works great
using the line
Code:
$client->SetAATitle("Newbie");
what I would like to do is set the suffix and the surname in the same quest.

I can set suffix in game with #titlesuffix "whatever" but I can't guess the command in the quest code - I've tried
Code:
$client->SetAATitleSuffix ("something"); 
$client->SetAASuffix ("something");
$client->SetSurname ("something");
Neither worked

I guess what I really don't know is how SetAATitle works or where it is stored.
Reply With Quote
  #8  
Old 04-03-2010, 12:35 PM
Derision
Developer
 
Join Date: Feb 2004
Location: UK
Posts: 1,540
Default

It should be $client->SetTitleSuffix("something");

The list here should be up to date:

http://www.eqemulator.net/wiki/wikka...a=QuestObjects
Reply With Quote
  #9  
Old 04-03-2010, 01:05 PM
cavedude's Avatar
cavedude
The PEQ Dude
 
Join Date: Apr 2003
Location: -
Posts: 1,988
Default

You can also insert the title into the database, give it a titleset higher than 0, and enable it in Perl using quest::enabletitle(titleset). quest::checktitle(titleset) and quest::removetitle(titleset) are also valid. You can give a player a suffix or prefix using this method.
Reply With Quote
  #10  
Old 04-03-2010, 01:10 PM
dreamseer
Fire Beetle
 
Join Date: Feb 2010
Location: York
Posts: 22
Default

OMG that must have been the only combination I didn't try..
and that link is a goldmine for me thanks Derision..

is there any way to put a line break in like it does when you give an npc a second name it appears on a second line under their their name in brackets like
Soulbinder Grunson
(Soulbinder)

Code:
        	$client->SetAATitle("Countess");
        	$client->SetTitleSuffix("the Cruel");
        	$client->ChangeLastName("Butcher of Qeynos")
hoping to make names like
Countess playername the Cruel
Butcher of Qeynos

but it came out as
"Countess playername Butcher of Qeynos the Cruel"

all on one line.

your help has been invaluable so far and if it always stays on one line I can work around it.
Reply With Quote
  #11  
Old 04-03-2010, 01:45 PM
dreamseer
Fire Beetle
 
Join Date: Feb 2010
Location: York
Posts: 22
Default

I got it I got it never mind the old backslash n works a treat
Code:
        	$client->SetAATitle("Countess");
        	$client->SetTitleSuffix("\n (The Butcher of Blackburrow)");
come sout as
Countess playername
(The Butcher of Blackburrow)

I'm sorted thanks again.

I'm going to create a massive list of Titles Suffix and Last names that work together
then give them to players when they do stuff

off the top of my head:
on the death of certain mobs or npc's
paying an npc for random title

I might seed the random number on base stats.. playername the weak or wreched or ugly if their CHR is low..

I love playing with this stuff
Reply With Quote
  #12  
Old 04-04-2010, 11:23 PM
Capheus
Hill Giant
 
Join Date: Apr 2008
Location: Milwaukee
Posts: 141
Default

Back in June when I actually had time run a server, I made two scripts for players to make thier own tiltles and suffixes. I believe these still work.

Code:
###NPC Name: Curre

my $thetitle = 0;

sub EVENT_SAY {
	if ($text=~/Hail, Curre/){
  	$client->Message(14, "Hello $name. If you wish to have a title, target me and say your title aloud. If you wish to delete your current title then tell me to [clearitout] in all lowercase letters.");
}
	if ($text=~/clearitout/i){
	quest::popup("Title", "Do you wish to delete your current title?", 2, 1);
}
	if (($text ne "Hail, Curre") && ($text ne "clearitout"))  {
	$thetitle = $text;
	quest::popup("Title", "Do you wish to have the title:  $thetitle  ?", 1, 1);

}
}

sub EVENT_POPUPRESPONSE {

	if ($popupid == 1) {
	$client->SetAATitle("$thetitle");
	$client->Message(13, "You must zone for your new title to take effect");
}
	if ($popupid == 2) {
	$client->SetAATitle("");
	$client->Message(13, "You must zone for your title to clear");
}
}
Code:
###NPC Name: Kurre

my $thesuffix = 0;

sub EVENT_SAY {
	if ($text=~/Hail, Kurre/){
  	$client->Message(14, "Hello $name. If you wish to have a suffix, target me and say your suffix aloud. If you wish to delete your current suffix then tell me to [clearitout] in all lowercase letters.");
}
	if ($text=~/clearitout/i){
	quest::popup("Suffix", "Do you wish to delete your current suffix?", 2, 1);
}
	if (($text ne "Hail, Kurre") && ($text ne "clearitout"))  {
	$thesuffix = $text;
	quest::popup("Suffix", "Do you wish to have the suffix:  $thesuffix  ?", 1, 1);

}
}

sub EVENT_POPUPRESPONSE {

	if ($popupid == 1) {
	$client->SetTitleSuffix("$thesuffix");
	$client->Message(13, "You must zone for your new suffix to take effect");
}
	if ($popupid == 2) {
	$client->SetTitleSuffix("");
	$client->Message(13, "You must zone for your suffix to clear");
}
}
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 04:37 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