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

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

Reply
 
Thread Tools Display Modes
  #1  
Old 10-13-2016, 01:35 PM
khalathas
Sarnak
 
Join Date: Jun 2007
Posts: 67
Default akkadius scripts + static zones

Hey all, recently converted my server from the older style batch file to a much newer version, which also includes the new startup perl scripts. I've got 75 static zones defined in launcher_zones that were running fine, but the script just launches 30 dynamics. How do I use my old static definitions with the perl scripts? Or, is there any reason to do so still? (I was doing it to keep raid targets, such as dragons, on proper respawn timers)
Reply With Quote
  #2  
Old 10-13-2016, 02:17 PM
NostalgiaEQ
Banned
 
Join Date: Sep 2016
Location: us
Posts: 201
Default

Great question. What are the pros/cons with static vs dynamic? I can't quite figure out what the difference is. Are static zones up constantly and therefore have less loading time but take more server resources? Does dynamic only keep 30 zones up so if people are in 31 zones there are problems?
Reply With Quote
  #3  
Old 10-13-2016, 06:32 PM
khalathas
Sarnak
 
Join Date: Jun 2007
Posts: 67
Default

From my own experience, a static zone (or in my case, LOTS of them) is going to eat up more RAM than dynamic zones, absolutely. The tradeoff is that static zones maintain their spawn timers where dynamic zones, after a certain duration of being empty, are unloaded, and reloaded as new people zone in. On my server (running on a VM, admittedly), I've got 10gb of ram allocated directly to it (host machine has 32gb), so it isn't really a burden to me, but for lower-resource servers it is a valid concern.
Reply With Quote
  #4  
Old 10-13-2016, 06:53 PM
NostalgiaEQ
Banned
 
Join Date: Sep 2016
Location: us
Posts: 201
Default

Interesting. I would definitly want all static then because I will have a dedicated server and only a total of 60 zones all old graphics so very small. Hopefully we can figure out how to set zones to static in akka installer.

in the "zone" table I am seeing "shutdown delay" set to 5000 so perhaps setting this to -1?
Reply With Quote
  #5  
Old 10-13-2016, 07:02 PM
khalathas
Sarnak
 
Join Date: Jun 2007
Posts: 67
Default

I don't think all zones need to be static really, just ones with interesting targets with longer than 12 hour spawn timers maybe...the rest can be dynamic I think. I just don't know how to do it in akkadius's scripts. In the old way I'd go to launcher_zones, define a launcher (or in my case, several launchers, as I grouped them by continent for vanilla zones, and then expansion for later releases), and then ran a series of zone launches as follows:

echo starting zone
start eqlaunch dynamics
start eqlaunch antonica
start eqlaunch faydwer
start eqlaunch odus
start eqlaunch luclin
start eqlaunch kunark
start eqlaunch velious
start eqlaunch ykesha
start eqlaunch planes
exit
Reply With Quote
  #6  
Old 10-13-2016, 07:12 PM
NostalgiaEQ
Banned
 
Join Date: Sep 2016
Location: us
Posts: 201
Default

Hmm interesting. Well it seems mabye we can stop zones from going idle in the first place by editing server code but not sure about keeping some zones dynamic.

http://www.eqemulator.org/forums/showthread.php?t=39147

for me Id rather have everything static so no matter how many zones people are currently in the experience (lag and whatnot) will always be constant.
Reply With Quote
  #7  
Old 10-13-2016, 07:14 PM
khalathas
Sarnak
 
Join Date: Jun 2007
Posts: 67
Default

I imagine the idea of stopping zones from going idle is a bad general idea, and a few (or a lot in my case) statics are a better way of doing it. Going to be moving the server to a dedicated linux server with 24gb ram available at some point, so I definitely want to figure out how to do statics again with the new startup scripts
Reply With Quote
  #8  
Old 10-13-2016, 07:16 PM
NostalgiaEQ
Banned
 
Join Date: Sep 2016
Location: us
Posts: 201
Default

so in that same post prov said:
"You could do the same by making the zone static, by an entry in the database launcher table. The NPCs still go to sleep when idle, so that does nothing."

so now I just need to figure out how to do this. That table only has 2 colums zone and dynamics so not sure how to do this.
Reply With Quote
  #9  
Old 10-13-2016, 07:18 PM
khalathas
Sarnak
 
Join Date: Jun 2007
Posts: 67
Default

From what I understand, launcher defined the launchers themselves (which were the 3rd parameter in my script above, per line), and then launcher_zones actually defined the static zones and what launcher they belonged to. You could have a launcher that had statics AND dynamics in it, I chose to have a launcher called dynamics that ONLY had 20 dynamic zones, and then several launchers that each held content-specific static zones.
Reply With Quote
  #10  
Old 10-13-2016, 07:24 PM
DanCanDo's Avatar
DanCanDo
Discordant
 
Join Date: May 2016
Location: Above Hell
Posts: 400
Default

You can look at this old thread for an example:
http://www.eqemulator.org/forums/showthread.php?t=30097
__________________
Project Insect Completed
Reply With Quote
  #11  
Old 10-13-2016, 07:34 PM
NostalgiaEQ
Banned
 
Join Date: Sep 2016
Location: us
Posts: 201
Default

Quote:
Originally Posted by DanCanDo View Post
You can look at this old thread for an example:
http://www.eqemulator.org/forums/showthread.php?t=30097
nice. What are those "ports" listed on launcher_zone table? Can I just use te same numbers he did?
Reply With Quote
  #12  
Old 10-13-2016, 07:38 PM
Akkadius's Avatar
Akkadius
Administrator
 
Join Date: Feb 2009
Location: MN
Posts: 2,071
Default

The zones that get launched from my perl based launcher are purely dynamic.

You can achieve most of the 'static' behaviors by keeping zones dynamic and adjusting your 'shutdowndelay' in your zone table to be something that suits your needs.

The shutdowndelay is in milliseconds (1000) = 1 second.

To keep a zone up for, say an hour, you'd set the shutdowndelay to 3600000.

Once a zone has been booted, it will take a full hour to shutdown and go back into the dynamic pool. Only at this time will the zone flush corpses and things of that nature. Spawns and named are in the database so those timers are going to stay in tact regardless - BUT - if you have a low shutdowndelay and pure dynamics, plays can walk back and forth on zone lines to force a spawn cycle for a named that hasn't been killed or has an expired timer.

The perl based launcher is far more resilient and speedy, but does not support statics.

If you want to run statics you can run them in your batch on your own like so

zone.exe soldungb
zone.exe everfrost

Or you can do as mentioned in the thread before and set your launcher_zones table and map all of your statics and run eqlaunch.exe in parallel with the perl launcher.

To give you an idea, EZ Server runs pure dynamcis using the above methodology I explained earlier to be leaner on resources.

Hopefully that clears up some questions.
Reply With Quote
  #13  
Old 10-13-2016, 07:40 PM
khalathas
Sarnak
 
Join Date: Jun 2007
Posts: 67
Default

Quote:
Originally Posted by Akkadius View Post
The zones that get launched from my perl based launcher are purely dynamic.

You can achieve most of the 'static' behaviors by keeping zones dynamic and adjusting your 'shutdowndelay' in your zone table to be something that suits your needs.

The shutdowndelay is in milliseconds (1000) = 1 second.

To keep a zone up for, say an hour, you'd set the shutdowndelay to 3600000.

Once a zone has been booted, it will take a full hour to shutdown and go back into the dynamic pool. Only at this time will the zone flush corpses and things of that nature. Spawns and named are in the database so those timers are going to stay in tact regardless - BUT - if you have a low shutdowndelay and pure dynamics, plays can walk back and forth on zone lines to force a spawn cycle for a named that hasn't been killed or has an expired timer.

The perl based launcher is far more resilient and speedy, but does not support statics.

If you want to run statics you can run them in your batch on your own like so

zone.exe soldungb
zone.exe everfrost

Or you can do as mentioned in the thread before and set your launcher_zones table and map all of your statics and run eqlaunch.exe in parallel with the perl launcher.

To give you an idea, EZ Server runs pure dynamcis using the above methodology I explained earlier to be leaner on resources.

Hopefully that clears up some questions.
Definitely clears up a lot. I'll just trim my batch file down to the start eqlaunch <launchername> segment, and run it in parallel then. Thank you Akkadius!

Edit: removing my own launcher called Dynamics from my segment of the batch file since your perl script has 30 dynamics already. Perfect! Works like a charm!
Reply With Quote
  #14  
Old 10-13-2016, 08:05 PM
NostalgiaEQ
Banned
 
Join Date: Sep 2016
Location: us
Posts: 201
Default

Would modifying your installed launcher to this work without any modifications to the database?

@echo off
cls
echo ***CLEARING OLD LOGS***
del "logs/zone/" /q
shared_memory.exe
start perl win_server_launcher.pl zones="30" zone_background_start loginserver kill_all_on_start
zone.exe soldungb
zone.exe everfrost
exit
Reply With Quote
  #15  
Old 10-13-2016, 08:19 PM
Akkadius's Avatar
Akkadius
Administrator
 
Join Date: Feb 2009
Location: MN
Posts: 2,071
Default

Yes that would work
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 01:38 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