Go Back   EQEmulator Home > EQEmulator Forums > Development > Development::Feature Requests

Development::Feature Requests Post suggestions/feature requests here.

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #16  
Old 08-28-2008, 12:07 AM
AndMetal
Developer
 
Join Date: Mar 2007
Location: Ohio
Posts: 648
Default

Spawn conditions would take care of what LDoN dungeons do, which is to spawn a certain set of mobs (levels) based on certain conditions. The only real hard part is creating copies of all the mobs needed, including different levels, stats, etc, then interconnecting all of it. I think that's the main reason there isn't much happening with them. However, once you have the spawn conditions configured, you can trigger them using quest::spawn_condition(). Example:

Code:
sub EVENT_SAY {
	if ($text~=/Hail/i) {
		quest::say("Do you want to start a [task]?");
	}
	elsif ($text~=/task/i) {
		quest::spawn_condition("raja", 1, $Group->GetHighestLevel()); # spawn condition id of 1 equals whatever the highest member's level is in the group, which is what level range everything should be tuned for
		quest::say("Have fun!");
		quest::zone("raja");
	}
}
One of the nice things about the spawn2 table is that the respawn timers use the spawn conditions. For example, the max level character in the group is level 50 and every mob in the instance (minus some roamers?) have a respawn time of 2 hours (how long the instance stays opened?). If you enter the zone with a max level of 49, all of the mobs spawned for 49 would spawn on their own timers. If you rezoned with max level of 50, they would still be carrying the respawn timers (the remainder of the 2 hours).

I have a feeling that zone instancing can be done using something like spawn conditions. I know for a fact you can run 2 of the same zone by zoning into a dynamic version, then booting up a static version without zoning. The problem then becomes determining what should or shouldn't be done in an instance vs a regular version, how do you create entry to an instanced zone, and what is the best way to make any zone instanced if you want to (for custom servers).

Kinda rambling & thinking out loud, I would think that instances could be based on groups, raids, and guilds. The type could then be defined in the zone table as an additional column, possibly inst_type (0 = normal, 1 = group instance, 2 = raid instance, 3 = guild instance). Then, if someone attempts to zone into one of those zones, and they meet the requirements (are in a group/raid/guild, have X amount of people in the group/raid), they zone successfully. If not, return false.

Anyway, just some thoughts...
__________________
GM-Impossible of 'A work in progress'
A non-legit PEQ DB server
How to create your own non-legit server

My Contributions to the Wiki
Reply With Quote
 


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 03:32 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