|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Support::Windows Servers Support forum for Windows EQEMu users. |
10-13-2016, 01:35 PM
|
Sarnak
|
|
Join Date: Jun 2007
Posts: 67
|
|
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)
|
10-13-2016, 02:17 PM
|
Banned
|
|
Join Date: Sep 2016
Location: us
Posts: 201
|
|
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?
|
10-13-2016, 06:32 PM
|
Sarnak
|
|
Join Date: Jun 2007
Posts: 67
|
|
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.
|
10-13-2016, 06:53 PM
|
Banned
|
|
Join Date: Sep 2016
Location: us
Posts: 201
|
|
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?
|
10-13-2016, 07:02 PM
|
Sarnak
|
|
Join Date: Jun 2007
Posts: 67
|
|
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
|
10-13-2016, 07:12 PM
|
Banned
|
|
Join Date: Sep 2016
Location: us
Posts: 201
|
|
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.
|
10-13-2016, 07:14 PM
|
Sarnak
|
|
Join Date: Jun 2007
Posts: 67
|
|
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
|
10-13-2016, 07:16 PM
|
Banned
|
|
Join Date: Sep 2016
Location: us
Posts: 201
|
|
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.
|
10-13-2016, 07:18 PM
|
Sarnak
|
|
Join Date: Jun 2007
Posts: 67
|
|
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.
|
10-13-2016, 07:24 PM
|
|
Discordant
|
|
Join Date: May 2016
Location: Above Hell
Posts: 400
|
|
__________________
Project Insect Completed
|
10-13-2016, 07:34 PM
|
Banned
|
|
Join Date: Sep 2016
Location: us
Posts: 201
|
|
Quote:
Originally Posted by DanCanDo
|
nice. What are those "ports" listed on launcher_zone table? Can I just use te same numbers he did?
|
|
|
|
10-13-2016, 07:38 PM
|
|
Administrator
|
|
Join Date: Feb 2009
Location: MN
Posts: 2,071
|
|
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.
|
|
|
|
|
|
|
10-13-2016, 07:40 PM
|
Sarnak
|
|
Join Date: Jun 2007
Posts: 67
|
|
Quote:
Originally Posted by Akkadius
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!
|
|
|
|
10-13-2016, 08:05 PM
|
Banned
|
|
Join Date: Sep 2016
Location: us
Posts: 201
|
|
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
|
10-13-2016, 08:19 PM
|
|
Administrator
|
|
Join Date: Feb 2009
Location: MN
Posts: 2,071
|
|
Yes that would work
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -4. The time now is 01:38 AM.
|
|
|
|
|
|
|
|
|
|
|
|
|