Go Back   EQEmulator Home > EQEmulator Forums > Support > Support::Windows Servers

Support::Windows Servers Support forum for Windows EQEMu users.

Reply
 
Thread Tools Display Modes
  #46  
Old 10-27-2016, 02:11 PM
Akkadius's Avatar
Akkadius
Administrator
 
Join Date: Feb 2009
Location: MN
Posts: 2,071
Default

Quote:
Originally Posted by Shiny151 View Post
The disadvantage to dynamic zones is this:

If you have a named mob you want to kill that has a minimum chance to spawn every four hours that also has a placeholder with a zone shutdown delay of one hour, you could essentially check the zone every hour in the hopes that the named is up without having to kill the placeholder. Granted, the zone has very little foot traffic to prevent the zone from staying open/active.

With a static zone, let's say the placeholder is up. It will STAY up indefinitely until someone kills it. Thus not allowing lazy players to cycle-check the zone.

The solution? You'd want the dynamic zone shutdown delay to match or exceed the longest timed mob that has a placeholder in the zone in order to behave more static and live-like. I know it was an example, but an hour shutdown delay won't always do it for the crafty loot-seeker. Which basically means you'll need a custom shutdown delay for every zone you don't want this happening in.
Not really a disadvantage of shutdown delay functionality itself than it is configuration of your own server
Reply With Quote
  #47  
Old 10-27-2016, 04:18 PM
N0ctrnl's Avatar
N0ctrnl
Discordant
 
Join Date: Jan 2007
Posts: 443
Default

I don't understand the militant stance on this one. It's absolutely a limitation of dynamic zones vs. static ones. Sure, it's easily overcome, and not expensive to do so, but to pretend that dynamic zones fit situations like this is just not right.
__________________
Ender - Lead GM/Developer
Vegarlson Asylum Server - http://www.vegarlson-server.org/
Reply With Quote
  #48  
Old 10-27-2016, 04:23 PM
Akkadius's Avatar
Akkadius
Administrator
 
Join Date: Feb 2009
Location: MN
Posts: 2,071
Default

Quote:
Originally Posted by N0ctrnl View Post
I don't understand the militant stance on this one. It's absolutely a limitation of dynamic zones vs. static ones. Sure, it's easily overcome, and not expensive to do so, but to pretend that dynamic zones fit situations like this is just not right.
What is there to pretend?

It's pretty simple.

And I don't understand why there is even an arugment against it.

Why would you allocate say 80 zones a head of time as statics, memory, usage, and idle CPU utilization that are completely unecessary when essentially the same functionality of a static can be fulfilled on demand via dynamic when a zone request is booted, and then nailed up for as long as you wish (a week if you wish).

It serves the exact same purpose.

But what do I know, I don't run any servers or anything
Reply With Quote
  #49  
Old 10-27-2016, 04:26 PM
NostalgiaEQ
Banned
 
Join Date: Sep 2016
Location: us
Posts: 201
Default

Quote:
Originally Posted by Akkadius View Post
Not really a disadvantage of shutdown delay functionality itself than it is configuration of your own server
That's very cryptic but what I think your saying is a server should be designed to not have unused zones. But with a live like or classic like server this could be a problem. Also it isn't very classy when you zone into a place with a boat and the boat is always waiting at the dock. For me I feel a good solution is dynamic zones and an 8 hr blanket zone reset time which should prevent any mob cycling but would still have the boat issue. I'll survive.
Reply With Quote
  #50  
Old 10-27-2016, 04:27 PM
Akkadius's Avatar
Akkadius
Administrator
 
Join Date: Feb 2009
Location: MN
Posts: 2,071
Default

Apparently no one read or understood anything I said in my first post about how dynamics operate with a delayed shutdown.
Reply With Quote
  #51  
Old 10-27-2016, 04:33 PM
N0ctrnl's Avatar
N0ctrnl
Discordant
 
Join Date: Jan 2007
Posts: 443
Default

As long as that delay is a finite number, the purpose is defeated though. At least if you intend to emulate EverQuest behavior of spawns.
__________________
Ender - Lead GM/Developer
Vegarlson Asylum Server - http://www.vegarlson-server.org/
Reply With Quote
  #52  
Old 10-27-2016, 04:37 PM
NostalgiaEQ
Banned
 
Join Date: Sep 2016
Location: us
Posts: 201
Default

Yes you can make shutdown delay 50 years in seconds but I think some of us are OCD and want a more elegant solution . Its not an issue though there are so many more important things to work on and fix.
Reply With Quote
  #53  
Old 10-27-2016, 05:10 PM
Akkadius's Avatar
Akkadius
Administrator
 
Join Date: Feb 2009
Location: MN
Posts: 2,071
Default

I'm just going to accept that my 2 hours of sleep and patience for people who are failing to see the difference are not there.

Run your static zones, run as many as you want. They're completely unnecessary though in today's code.

Or you can fidget with maintaing launch tables, static port nailups, nail up resources on your machine for seriously no difference in end functionality.

In the end how you run your server is mere personal preference, but arguing against delayed shut down dynamics because they don't fulfill keeping proper spawn rotations or grids in tact is flat out wrong and to illustrate false information on the forums like that irritates me because I spend plenty of time making sure people have the right resources, right information, right tools available to them - then to argue with me about something that has zero premise is retarded.

If you need me to write it out on the board for you this is how it goes.

In the main zone process loop you have the zone->Process loop, which is active during an active zone:

https://github.com/EQEmu/Server/blob...pp#L1198-L1205

When this returns false - that means a shutdown timer (dynamic delay) will allow the zone to actually flush spawn timers, npc tables, data that is loaded in the zone. Just because a zone is dynamic doesn't mean it flushes its data until the shutdown delay is fulfilled, this triggers Zone::Shutdown

https://github.com/EQEmu/Server/blob...e.cpp#L672L717

Again - the end goal functionality is no different, except for that fact that you've nailed up unnecessary resources right away, using way more memory than necessary, cpu idling and you're fiddling with over complicating managing something.

Code:
		if ( numclients < 1 && zoneupdate_timer.GetDuration() != IDLEZONEUPDATE )
			zoneupdate_timer.SetTimer(IDLEZONEUPDATE);
		else if ( numclients > 0 && zoneupdate_timer.GetDuration() == IDLEZONEUPDATE )
		{
			zoneupdate_timer.SetTimer(ZONEUPDATE);
			zoneupdate_timer.Trigger();
		}
A static zone or dynamic zone are going to go into idle status the same, function the same, serve the same end goal - thus making the argument that dynamics are not live-like bullshit.

Even if you want your fancy boats to not be in the same spot when players zone in. The first player might see that boat at the dock, but that boat is always going to path regardless of idle or non idle after that zone has been booted.

And regardless of cross-zone boating, shits been broke for ages. Boats hardly work in themselves - and it shouldn't rely on both zones being up in order for that to happen otherwise that is poor design.

Code:
update zone set shutdowndelay = 604800000;
Done.

First time a player enters that zone, it's up for a week AFTER the last player exits it, and when they re-enter that timer is replenished - AND that zone never is recycled with another zones scripts/resources.

Also - there's issues with eqlaunch that freak out over extended use and require a server restart to fix.

Your other alternative is to run the zones manually 'zone soldungb', but if that zone crashes you need a way to automatically revive it? What's the easy solution? Run the simple launcher I created with dynamics and it will keep those dynamics nailed up instantly.

If that isn't clear enough for you I don't know what is.
Reply With Quote
  #54  
Old 10-27-2016, 05:50 PM
N0ctrnl's Avatar
N0ctrnl
Discordant
 
Join Date: Jan 2007
Posts: 443
Default

I completely understand and agree with what you're saying. Though you can leave the ports to dynamic in the launcher and ignore that part. Also, they restart just fine even if static.

If you do set the timeout delay to a week, or a year, or a decade, it's functionally static after the initial launch though, correct? Until the obscenely long timeout is met and it actually flushes the zone?

The idea for my use case has always been like Live - If an NPC spawns, it's going to be up with exactly the same loot table until a) the server gets rebooted, b) he gets killed, or c) the zone crashes. Certainly there's a cost to running a static zone, but to keep that case working for any situation - even one where a zone might not be used for a week - I would just choose static in that case.

Like I said - I get it. But if you use a launcher for the static zones, a lot more of the benefit columns get ticked.
__________________
Ender - Lead GM/Developer
Vegarlson Asylum Server - http://www.vegarlson-server.org/
Reply With Quote
  #55  
Old 10-27-2016, 05:52 PM
Akkadius's Avatar
Akkadius
Administrator
 
Join Date: Feb 2009
Location: MN
Posts: 2,071
Default

Quote:
Originally Posted by N0ctrnl View Post
I completely understand and agree with what you're saying. Though you can leave the ports to dynamic in the launcher and ignore that part. Also, they restart just fine even if static.

If you do set the timeout delay to a week, or a year, or a decade, it's functionally static after the initial launch though, correct? Until the obscenely long timeout is met and it actually flushes the zone?

The idea for my use case has always been like Live - If an NPC spawns, it's going to be up with exactly the same loot table until a) the server gets rebooted, b) he gets killed, or c) the zone crashes. Certainly there's a cost to running a static zone, but to keep that case working for any situation - even one where a zone might not be used for a week - I would just choose static in that case.

Like I said - I get it. But if you use a launcher for the static zones, a lot more of the benefit columns get ticked.
Dear god



___________
Reply With Quote
  #56  
Old 10-27-2016, 06:21 PM
DanCanDo's Avatar
DanCanDo
Discordant
 
Join Date: May 2016
Location: Above Hell
Posts: 400
Default

Just curious, is it possible to set up individual (player.pl) scripts containing
an enter_zone sub, with a 'randomaction' - 'depop' for specific npcid's?
Just giving it a chance that something might be up (if it isn't already).
I haven't attempted writing one yet, but it's crossed my mind in the past,
as an alternative.
__________________
Project Insect Completed
Reply With Quote
  #57  
Old 10-27-2016, 09:57 PM
Maze_EQ
Demi-God
 
Join Date: Mar 2012
Posts: 1,106
Default

yes it's possible using sub EVENT_ENTER_ZONE
__________________
"No, thanks, man. I don't want you fucking up my life, too."

Skype:
Comerian1
Reply With Quote
  #58  
Old 10-27-2016, 10:06 PM
DanCanDo's Avatar
DanCanDo
Discordant
 
Join Date: May 2016
Location: Above Hell
Posts: 400
Default

Yes, I am aware of the sub, I use it a lot my server, I wasn't really asking a question,
I was throwing a "hint" for people to read as an alternative. I don't mean the posters
in the thread, it's for that overwhelming community that likes to (cough) read
__________________
Project Insect Completed
Reply With Quote
  #59  
Old 10-28-2016, 01:36 AM
creakin
Fire Beetle
 
Join Date: Jan 2014
Location: Minnesota
Posts: 4
Default

Quote:
Originally Posted by Akkadius View Post
Dear god



___________
This makes me chuckle
Reply With Quote
  #60  
Old 10-31-2016, 02:27 PM
dburg30
Sarnak
 
Join Date: Jan 2011
Posts: 32
Default

So if I change the zones="xx" in the bat file, after a certain point in the one server launcher window, the zones will continue to count up.. ie: if I put 100 in the zones=. It will count up to 100 in the windows server launcher, but will then start counting again, but not from 0/100, somewhere higher, but when it gets to 100/100 it will restart again.. Is there a limit to how many zones it will load? my memory is not running out. Does there need to be a delay somewhere that it loads them?
Reply With Quote
Reply

Thread Tools
Display Modes

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