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

Quests::Submissions This is where you submit your quests for review

Reply
 
Thread Tools Display Modes
  #1  
Old 07-26-2006, 02:37 PM
Angelox
AX Classic Developer
 
Join Date: May 2006
Location: filler
Posts: 2,049
Default Quillmane Spawn in South Karana

This should make Quillmane, the Pegasus horse from South Karana, a lot more closer to live than he is - Quillmane is another spawn that should be rare and hard to pinpoint. You still need to set up grids, and probably make some of the NPC's or change the npcid's in all the scripts I'm posting. Also make sure the npcs you choose for triggers, are unique, and do not spawn anywhere else in the zone.
I placed two trigger-spawns in the zone that should path through split-paw (north-south and south-north, as per EQ live). The Quillmane spawns should path all over the zone, from one end to the other.
The scripts are also posted at http://www.nahunta.org/~angelox/

The two triggers have a 15% chance to spawn 1 of three locations for Quilmane (each chance is 5%)- Also when Quilmane is out, a flag is raised , so they can't spawn another Quilmane while the first one is still around.

Code:
#Quillmane spawn
#npc - #a_lioness - randomly spawns 1 of 3 Quilmane locs around the zone)
#zone - SouthKarana
#Angelox

sub EVENT_DEATH{
 my $random_result = int(rand(100));
 my $a=14139; #npc - Quillmane
 if(($random_result<5) && ($quill==2)){
   #quest::say("Spawning Quillmane1");
   quest::spawn2($a,101,0,3210,-6821.6,38.3,193.3);
   quest::delglobal("quill");
   quest::setglobal("quill","3","7","Y1");
   $quill=undef;
  }elsif(($random_result>=5) && ($random_result<10)&& ($quill==2)){
     #quest::say("Spawning Quillmane2");
     quest::spawn2($a,102,0,-2761.8,-6076,0.7,4.0);
     quest::delglobal("quill");
     quest::setglobal("quill","3","7","Y1");
     $quill=undef;
  }elsif(($random_result>=10) && ($random_result<15)&& ($quill==2)){
     #quest::say("Spawning Quillmane3");
     quest::spawn2($a,103,0,-2333.8,1296.5,38.7,247.3);
     quest::delglobal("quill");
     quest::setglobal("quill","3","7","Y1");
     $quill=undef;
  }else{
    #quest::say("No spawn");
  };
};
Code:
#Quillmane spawn
#npc - #an_elephant_calf - randomly spawns 1 of 3 Quilmane locs around the zone)
#zone - SouthKarana
#Angelox

sub EVENT_DEATH{
 my $random_result = int(rand(100));
 my $a=14139; #npc - Quillmane
 if(($random_result<5) && ($quill==2)){
   #quest::say("Spawning Quillmane1");
   quest::spawn2($a,101,0,3210,-6821.6,38.3,193.3);
   quest::delglobal("quill");
   quest::setglobal("quill","3","7","Y1");
   $quill=undef;
  }elsif(($random_result>=5) && ($random_result<10)&& ($quill==2)){
     #quest::say("Spawning Quillmane2");
     quest::spawn2($a,102,0,-2761.8,-6076,0.7,4.0);
     quest::delglobal("quill");
     quest::setglobal("quill","3","7","Y1");
     $quill=undef;
  }elsif(($random_result>=10) && ($random_result<15)&& ($quill==2)){
     #quest::say("Spawning Quillmane3");
     quest::spawn2($a,103,0,-2333.8,1296.5,38.7,247.3);
     quest::delglobal("quill");
     quest::setglobal("quill","3","7","Y1");
     $quill=undef;
  }else{
    #quest::say("No spawn");
  };
};
Code:
#Quillmane spawn
#npc - #Quillmane
#zone - SouthKarana
#Angelox

sub EVENT_DEATH{
 #quest::say("I'm dead");
 quest::delglobal("quill");
 quest::setglobal("quill","2","7","Y1");
 $quill=undef;
  };
Reply With Quote
  #2  
Old 07-27-2006, 01:55 PM
Sarepean
Discordant
 
Join Date: Sep 2004
Posts: 253
Default

I haven't looked at the database about this one yet, but I'm fairly positive that this same result (which I guess would simply be making this guy rarer) could be achieved through a simple database change.

This gives Grizzleknot and Quillmane both a 5% chance of spawning (center foal is the place holder for these in the database). I think that with only these changes, there's still a chance you can double spawn one of these. I thought I could put a spawnlimit on each NPC, but it turns out that it's a spawn group thing and not an NPC specific, but, here's the code with an added measure:

Code:
UPDATE spawnentry SET chance=5 WHERE spawngroupID=14104 AND npcID=14142
UPDATE spawnentry SET chance=5 WHERE spawngroupID=14104 AND npcID=14139
UPDATE spawnentry SET chance=90 WHERE spawngroupID=14104 AND npcID=14049
Extra Measure (Spawn Limit on THIS spawn group, THREE NPCS):
Code:
UPDATE spawngroup set spawnlimit=1 where spawngroupID=14014
There's not really much of a reason to do a quest like this. There are, of course, creative benefits, such as being able to control it's placeholders, etc, but even with your flag set in your quest file, if a Quillmane spawned from the DB, you could possibly have a double spawn.

The quest looks sound, though. Good work. I didn't test it, but the point is that it was a good solution to something you saw as a problem. =)


EDIT:: On second thought, you don't actually need the spawnlimit on that spawn group. If I'm looking at that right, you could never have more then one Quillmane up. You could also not have a Quillmane and a Grizzleknot up. I've only left the code in so that you can see what I did just in case the issue ever comes up again.

EDIT 2:: The spawngroup with Quillmane only has two listed spawn locations in the database. In order to add more for this specific spawn group, use this code and modify the location, heading, and pathgrid---

Code:
insert into spawn2 values (38833, 14104, X, Y, Z, HEADING, 640, 0, PATH GRID, 0, 0, 1)
The values used for the two spawns for the path grid are 88 and 87. I imagine that if you search for a spawn near wherever you decide to place your new spawn points for Quillmane, you should be able to locate the pathgrid fairly easily. Everything else is self explanatory. The first value, btw, is the ID in spawn2. I'm using a fresh PEQ install, 7.0-833 compatible.


-Sarepean

Last edited by Sarepean; 07-27-2006 at 10:03 PM.. Reason: Adding information I think the author might find useful.
Reply With Quote
  #3  
Old 07-27-2006, 02:29 PM
Angelox
AX Classic Developer
 
Join Date: May 2006
Location: filler
Posts: 2,049
Default

My idea was to have the two roamers that path through split paw, spawn Quilmane elsewhere in the zone when they die ( as they do in Live) - I removed Quilmane spawns from the database. What does spawn from the database is the place holders (or triggers) that run through splitpaw.
There's a lot of spawns like this through out the zones.
You can't use these scripts straight-off, you'd have to set up the npcs, spawns and grids to go with them, which is not too hard to do, since it's just a few npcs. The triggers do spawn off the database and have a one in three chance to spawn.

Here's one to think about;
South Karanas' Sentry Alechin is a Wereolf at night , this is the only werewolf that roams SK, and does so during nightime. I guess you'd make a day/night event for this? He drops quest items, which the werewolf also drops, but doesn't give the nasty faction hit the Sentry does.
Reply With Quote
  #4  
Old 07-27-2006, 02:57 PM
Sarepean
Discordant
 
Join Date: Sep 2004
Posts: 253
Default

Actually, just use a spawn condition in the database. You may need to put the sentry and his werewolf form on a separate spawn group, or you might catch more then just the sentry with this, but basically, when it turns night, it will despawn the sentry and pop the werewolf.

What you should probably do is put the Werewolf and the Sentry both on completely separate groups and mess with the spawn conditions.

Tutorial on spawn_conditions here:
http://www.eqemulator.net/forums/sho...awn+conditions


I don't completely understand it, but it seems that the day, month, and year shouldn't make a lot of difference in the database, the big thing seems to be the hour and minute (the example shows 9 PM and 6 AM if I'm reading that right). I haven't messed with it, but let me know if you'd like me to try and set this up for you and I'll add it to my list this weekend.


In all reality, a quest event would probably be the easiest way to do this.



Now, the problem I see with your quests is that, unlike in Live, it forces a spawn right after something is killed rather then the mob actually respawning. The result? Easier farming. I don't know about you, but the one thing I can say about EQ farming was that it was suspenseful (and aggravating) because you never knew whether or not your named thing would spawn. If you do the spawning through those quest files with no timers, then you take away the suspense. Just by looking at it, it would seem more then possible for a group of maybe 4 people to kill Quillmane 10 or more times in a matter of minutes.

Just my thought on it. Maybe you should try messing around with the spawngroups. I wouldn't go this route to achieve what you're doing, though, unless you are going to add timers to the quests to give it a more live-ish feel.

Also, take out the debug statements when you try to release a quest like this if you would. It's distracting to the end user when they kill something and it says "Spawning Quillmane2." =P It's good for testing to ensure that it's working, but not necessary for your end users. =)
Reply With Quote
  #5  
Old 07-27-2006, 11:34 PM
Angelox
AX Classic Developer
 
Join Date: May 2006
Location: filler
Posts: 2,049
Default

Quote:
Originally Posted by Sarepean
I don't completely understand it, but it seems that the day, month, and year shouldn't make a lot of difference in the database, the big thing seems to be the hour and minute (the example shows 9 PM and 6 AM if I'm reading that right). I haven't messed with it, but let me know if you'd like me to try and set this up for you and I'll add it to my list this weekend.


In all reality, a quest event would probably be the easiest way to do this.



Now, the problem I see with your quests is that, unlike in Live, it forces a spawn right after something is killed rather then the mob actually respawning. The result? Easier farming. I don't know about you, but the one thing I can say about EQ farming was that it was suspenseful (and aggravating) because you never knew whether or not your named thing would spawn. If you do the spawning through those quest files with no timers, then you take away the suspense. Just by looking at it, it would seem more then possible for a group of maybe 4 people to kill Quillmane 10 or more times in a matter of minutes.

Just my thought on it. Maybe you should try messing around with the spawngroups. I wouldn't go this route to achieve what you're doing, though, unless you are going to add timers to the quests to give it a more live-ish feel.

Also, take out the debug statements when you try to release a quest like this if you would. It's distracting to the end user when they kill something and it says "Spawning Quillmane2." =P It's good for testing to ensure that it's working, but not necessary for your end users. =)
You haven't camped Quillmane - if you did, you'd know he doesn't spawn in the same place his place holder does, and he spawns right away, with death of his place holder. This might be a little different on live, but very close.
The debug statements are already quoted out, they can be un quoted if needed, for testing.
Reply With Quote
  #6  
Old 07-28-2006, 12:04 AM
Sarepean
Discordant
 
Join Date: Sep 2004
Posts: 253
Default

Don't get me wrong. I camped Quillmane. I just never got the opportunity to kill him. XD
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 02:48 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