hello again. i am really new to this. i am having trouble of step 7 of the guide. this one. You must now edit the config file or your server will not work. The following wiki page has a full explanation of the file and what it's contents mean
http://wiki.eqemulator.org/p?eqemu_config.xml&frm=Main , please follow that page as to how to edit your config file and then return to this page to move onto step 7. c)
i go to the website. i see all of the writing such as this.
Before you begin
The recommended way to configure your server is to start with the minimum configuration and add in only the sections of the config that you want to change away from the defaults.
Most of the settings you will not have a need to change. If you think you do, you are probably wrong. If you really think you do, you are probably still wrong. But, just in case, we'll go over them all.
I'll walk through two configuration files. First, a minimal configuration which will probably work for 99.9% of you and then a full configuration to show and describer all the available settings. If you are looking to get your server up fast, use the minimal/recommneded config.
*Minimal/Recommened Configuration
Here is the recommended minimum configuration file that you could use to get your server up and running.
This XML should be in eqemu_config.xml in the same directory that you start world / eqlaunch / zone from.
?
1
2
3
4
5
6
7
8
9
10
<!--?xml version="1.0"-->
<server>
<world>
<shortname>setme</shortname>
<longname>I Forgot To Edit My Config</longname>
<!-- Sets the shared key used by zone/launcher to connect to world -->
<key>some long random string</key>
</world>
</server>
A few notes on the above config:
The element is not, technically, required. But, it is recommaned as it will prevent unauthorized zones and launchers from connecting to your world server.
Since there is no element (see , below) it's assumed that there is a mysql user called "eq" with a password of "eq" and that your database is called "eq".
You'll notice that there is nothing setting the address of your server. This is on purpose. (see, Addresses, below)
*Full Configuration
Here is a full configuration file example. An up to date version of this config file is hopefully always avaliable in the source code in utils/defaults/eqemu_config.xml.full.
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
<!--?xml version="1.0"-->
<server>
<world>
<shortname>setme</shortname>
<longname>I Forgot To Edit My Config</longname>
<!-- Only specify these two if you really think you need to. (read: You don't) -->
<!-- <address>some.server.com</address> -->
<!-- <localaddress>192.168.0.5</localaddress> -->
<!-- Loginserver information. Defaults shown -->
<loginserver>
<host>login.eqemulator.net</host>
<port>5998</port>
<account></account>
<password></password>
</loginserver>
<!-- Server status. Default is unlocked -->
<!--<locked/>-->
<!-- <unlocked/> -->
<!-- Sets the ip/port for the tcp connections. Both zones and console (if enabled). Defaults are shown -->
<tcp ip="localhost" port="9000" telnet="disable">
<!-- Sets the shared key used by zone/launcher to connect to world -->
<key>some long random string</key>
<!-- Enable and set the port for the HTTP service. Defaults are shown -->
<http enabled="false" mimefile="mime.types" port="9080">
</http></tcp></world>
<!-- Chatserver (channels) information. Defaults shown -->
<chatserver>
<host>channels.eqemulator.net</host>
<port>7778</port>
</chatserver>
<!-- Mailserver (in-game mail) information. Defaults shown -->
<mailserver>
<host>channels.eqemulator.net</host>
<port>7779</port>
</mailserver>
<zones>
<defaultstatus>20</defaultstatus>
<!-- Sets port range for world to use to auto configure zones -->
<ports high="7100" low="7000">
</ports></zones>
<!-- Database configuration, replaces db.ini. Defaults shown -->
<database>
<host>localhost</host>
<port>3306</port>
<username>eq</username>
<password>eq</password>
<db>eq</db>
</database>
<!-- Launcher Configuration -->
<launcher>
<!-- <logprefix>logs/zone-</logprefix> -->
<!-- <logsuffix>.log</logsuffix> -->
<!-- <exe>zone.exe or ./zone</exe> -->
<!-- <timers restart="10000" reterminate="10000" initial="20000" interval="2000"> -->
</launcher>
<!-- File locations. Defaults shown -->
<files>
<!-- <spells>spells_us.txt</spells> -->
<!-- <opcodes>opcodes.conf</opcodes> -->
<!-- <logsettings>log.ini</logsettings> -->
<!-- <eqtime>eqtime.cfg</eqtime> -->
</files>
<!-- Directory locations. Defaults shown -->
<directories>
<!-- <maps>Maps</maps> -->
<!-- <quests>quests</quests> -->
<!-- <plugins>plugins</plugins> -->
</directories>
</server>
*Elements
*
These are the xml entries that can be inside the tags. If they are not there, the shown defaults will be used.
?
1
2
3
4
5
<shortname> and <longname>
<world>
<shortname>setme</shortname>
<longname>I Forgot To Edit My Config</longname>
</world></longname></shortname>
These are really the two main items in world that you need to set, the others will default to values that are probably correct. Shortname will be used for things like chat channels, client side log and ini file names.
?
1
and
These two should not need to be set. If you think you need to, you are probably wrong. If you really, really think you need to, you are probably still wrong. But, just in case they are here.
World discovers its local address when it connects to the loginserver and provides to the loginserver so it can tell local clients to use the internal address. When world connects to the loginserver, the loginserver tells world what it sees for it's external address so world can tell remote clients what IP to use for connecting to zones from the outside.
Confusing? Maybe. The important thing is, it works. Let it do it's job.
*
?
1
2
3
4
5
6
7
8
9
<world>
<!-- Loginserver information. Defaults shown -->
<loginserver>
<host>login.eqemulator.net</host>
<port>5998</port>
<account></account>
<password></password>
</loginserver>
</world>
These should not need to be set except in the case if you have an loginserver account for your server, then you should only need to set the account/password values. If you leave the host/port settings out, they will default to what is shown above. When in doubt, leave it out.
* and
?
1
2
3
4
5
<world>
<!-- Server status. Default is unlocked -->
<!--<locked/>-->
<!-- <unlocked/> -->
</world>
You can probably figure these out for yourself. Left for an excercise for the reader (thats you).
*
?
1
2
3
4
<world>
<!-- Sets the ip/port for the tcp connections. Both zones and console (if enabled). Defaults are shown -->
<tcp ip="localhost" port="9000" telnet="disable">
</tcp></world>
This is where you can change the port that world listens on for TCP connections for the zones to connect to and for the telnet console. Telnet is disabled by default and I'd consider leaving it that way and using the embedded HTTP server instead.
*
?
1
2
3
4
<world>
<!-- Sets the shared key used by zone/launcher to connect to world -->
<key>some long random string</key>
</world>
This is the authorization key that zones and the launcer will present to world to prevent unauthorized access. It's recommended that you set this.
*
?
1
2
3
4
<world>
<!-- Enable and set the port for the HTTP service. Defaults are shown -->
<http enabled="false" mimefile="mime.types" port="9080">
</http></world>
This is where you can change what port the embedded HTTP server is listening on for requests. Again, if it's left out the shown defaults will be used. You can do many things with your server by using the embedded HTTP server. Point your favorite browser at it and take a peek.
*
?
1
2
3
4
5
<!-- Chatserver (channels) information. Defaults shown -->
<chatserver>
<host>channels.eqemulator.net</host>
<port>7778</port>
</chatserver>
Defines the host and port where the chat channel server is. You shouldn't need to set/change this.
*
?
1
2
3
4
5
<!-- Mailserver (in-game mail) information. Defaults shown -->
<mailserver>
<host>channels.eqemulator.net</host>
<port>7779</port>
</mailserver>
Defines the host and port where the mail (for in-game mail) server is. This is currently not implemented. You shouldn't need to set/change this.
*
The settings under the zone elements are used to control different aspects of the starting and controlling of zones.
*
?
1
2
3
<zones>
<defaultstatus>20</defaultstatus>
</zones>
You guessed it, the default status that new accounts get on creation.
*
?
1
2
3
<!-- Sets port range for world to use to auto configure zones -->
<ports high="7100" low="7000">
</ports>
This is the port range that world will use to assign ports dynamically to zones as they connect. You probably don't need to
*
?
1
2
3
4
5
6
7
8
<!-- Database configuration, replaces db.ini. Defaults shown -->
<database>
<host>localhost</host>
<port>3306</port>
<username>eq</username>
<password>eq</password>
<db>eq</db>
</database>
This is where you can change where have created your database or what username/password you are using.
*
?
1
2
3
4
5
6
7
<!-- Launcher Configuration -->
<launcher>
<!-- <logprefix>logs/zone-</logprefix> -->
<!-- <logsuffix>.log</logsuffix> -->
<!-- <exe>zone.exe or ./zone</exe> -->
<!-- <timers restart="10000" reterminate="10000" initial="20000" interval="2000"> -->
</launcher>
This is where you can change the behavior of the launcher.
* and
?
1
2
3
4
<launcher>
<logprefix>logs/zone-</logprefix>
<logsuffix>.log</logsuffix>
</launcher>
These options set the path, prefix, and suffix of the log files which the launcher pipes all of zone's output into. Any intermediate directories will not be created, so make sure they exist. The zone launch name will be sandwiched between prefix and suffix, eg: logs/zone-butcher.log would be the log file for a static butcher zone, and logs/zone-dynamic_01.log would be the log for your first dynamic zone.
*
?
1
2
3
4
5
<launcher>
<exe>zone.exe</exe>
<!-- or... -->
<exe>./zone</exe>
</launcher>
This option allows you to specify which zone binary the launcher will run. If you build your zone with perl support into ZonePerl.exe instead of Zone.exe, you can specify that here.
*
?
1
2
3
<launcher>
<timers initial="20000" interval="2000" restart="10000" reterminate="10000">
</timers></launcher>
This element lets you configure various timers that the launcher uses. All values are in milliseconds.
restart - This is the time between when a zone goes down, and when it is started back up again.
reterminate - This is how long we wait after sending a kill signal to a zone before killing it again.
initial - This is the time we wait after booting the first zone on the machine before booting any more zones (to let shared memory load).
interval - This is the time between booting each subsequent zone.
*
?
1
2
3
4
5
6
7
<!-- File locations. Defaults shown -->
<files>
<!-- <spells>spells_us.txt</spells> -->
<!-- <opcodes>opcodes.conf</opcodes> -->
<!-- <logsettings>log.ini</logsettings> -->
<!-- <eqtime>eqtime.cfg</eqtime> -->
</files>
These entries are provided if you need to override the names or locations of the needed files. You probably don't need to change these settings.
*
?
1
2
3
4
5
6
<!-- Directory locations. Defaults shown -->
<directories>
<!-- <maps>Maps</maps> -->
<!-- <quests>quests</quests> -->
<!-- <plugins>plugins</plugins> -->
</directories>
These entries are provided if you need to override the names or locations of the needed directories. You probably don't need to change these settings.
i know im suppose to edit something. but i am really clueless here. i am hoping you can tell me exactly what to do and how to do it. since i am not fully understanding the guide. would muchly appreciate the help. thanks in advance.