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

Archive::Windows Servers Archive area for Windows Servers's posts that were moved here after an inactivity period of 90 days.

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #1  
Old 10-10-2002, 04:22 PM
tufkal
Fire Beetle
 
Join Date: Sep 2002
Posts: 12
Default Revised README for Win32 Server Setup

After reverse engineering and talking to the devs, here is a very easy breakdown of how this deal works.

MySQL for those who dont know (I didnt) is just a database server. It runs on your PC and programs can access it with a username/password and retrieve data from the database using queries. MySQL databases are arranged in a table format and are very similar to a Microsoft Access database IMHO.


Folders:
cfg - Holds the zone information and some other runtime configuration info
Documents - The README

Files:
db.ini - The file with the information about your MySQL database, so world.exe and zone.exe can access it
loginserver.ini - The file with the information that world.exe needs to connect to the EQEmu login server and display your server there.
spells_en.txt - From EQ directory, zone.exe uses this for spell info, the MySQL database does not hold the spell info.
world.exe - Is your main connection server. When started it lists your server on the EQEmu login server for people to click on. Then the EQEmu login server sends the players to your world.exe Your world.exe handles the login, character select, and general loading.
zone.exe - This runs a zone. Usually you want 4 or 5 running, depending on how many people you have online and how many different zones they are in. All items, spawns, and other info from the MySQL database are loaded by zone.exe.

MySQL Files:
db.sql - The main database file that comes with the program. COntains the raw info on factions, commands, accounts, etc.
dbupdate.sql - This is a addon database you will want to put in your database. It adds options and features not in the normal file.
resource.sql - This is the 0.3.9 item/book addon file. You will want to merge this into your MySQL database if you want items on your server
EQEmu-books.sql **Used by resource.sql
EQEmu-items.sql **Used by resource.sql
-=-Note some of these you will need to retrieve from the SourceForge download page-=-

MySQL Setup:
1)Install MySQL, standard install procedure.
2)Run winmysqladmin, it will ask you for a username/password (If it doesnt delete the file my.ini from your windows directory) Choose a username/password you can remember and write it down.
3)From winmysqladmin goto the database tab and create a database called 'eq'
4)You can close this now. Depending on your windows version mysql might run as a service in the background or you may need to have winmysqladmin running in the background, to allow programs to access the database.
5)From a dos prompt run mysql.exe
6)Here you need to merge the .sql files into your new blank 'eq' database.
Enter these commands
use eq
source C:\pathtosqlfiles\db.sql
source C:\pathtosqlfiles\dbupdate.sql
source C:\pathtosqlfiles\resource.sql
7)Now your 'eq' database has all the info you need.

EQEmu Setup:
You need to edit your loginserver.ini and db.ini files to match your configuration.
Only things in italics you need to modify

db.ini

[Database]
host=localhost
user=the username to access the mysql database that you chose earlier
password=the password to access the mysql database that you chose earlier
database=eq

loginserver.ini

[LoginServer]
loginserver=eqlogin1.eqemu.net
loginport=5999
loginport2=5999
worldname=the name of your server, the word 'server' is added automatcially to the end
locked=false
account=
password=
worldaddress=your IP address seen by the internet, not an internal network IP (i.e. NOT 192.168.x.x)

[WorldServer]
Defaultstatus=
Unavailzone=

[LoginConfig]
ServerMode=Standalone
ServerPort=5999
UplinkAddress=
UplinkPort=
UplinkAccount=
UplinkPassword=

Running EQEmu:
1)Start up world.exe If you didnt setup db.ini correctly it will give you a bunch of errors that it cant access the 'eq' database. If this happens make sure the database is running (check services running) or open up winmysqladmin.exe if its not. The last message you should see is it trying to post itself to the EQEmu login servers. It mail fail due to internet traffic, if so close it and try again. You should see this at the end signifying your server is being listed at EQEmu.

World server listening on: port 9000
Connected to LoginServer: eqlogin1.eqemu.net:5999

2)Start up some zone.exe servers. 5 or so is normal. These also will give you mysql errors if it cant find the database. The hard part about zone.exe is you have to pass it command line options. A typical command to startup a zone server is

zone.exe . YourIP 7995 YourIP

The . there after the exe NEEDS to be there. It tells zone.exe to be dynamic. You could put a zone name there, but by putting a period there tells this zone server to just dynamically be whatever zone is needed. YourIP is your internet IP address, again NOT an internet network address. 7995 is the port world.exe will shuffle your connecting clients over to when they are ready to login to the zone.

A simple batch file makes this very simple. Copy and paste this in notepad and save it as boot5zones.bat


@echo off
start zone.exe . YourIP 7995 YourIP
start zone.exe . YourIP 7996 YourIP
start zone.exe . YourIP 7997 YourIP
start zone.exe . YourIP 7998 YourIP
start zone.exe . YourIP 7999 YourIP
exit
cls


This starts 5 zone servers on 7995-7999 in seperate windows and then closes its own window after it has started them.

Confused yet?
People change their EQ clients as described on the webpage to login to the EQEmu login servers. Once on there they see your server listed, because world.exe is communicating with the EQEmu login servers. If they choose your server the EQEmu login server has your IP and sends them to you. Your world.exe recieves their incoming connection and processes their account name and loads their characters for the character select screen. Then once a player chooses a character your world.exe sends them to a zone.exe server running the zone they are in, or to a unused one and starts it with the zone they need.

More fun
Available also is the EQEmu-Admin tool. You can download from mysql.com a database editor, and go in and look at your 'eq' database and all the info there. All the items, spawns, factions, etc. But its a MESS!#@ EQEmu-Admin tool is a program that accesses your 'eq' database but it doesnt just show it to you all in the raw tables and info. If manipulates the data and gives you nice forms for editing it.

Main uses for the EQEmu-Admin tool are
1)Changing account status. Go make that cool player who logged in last night a guide or GM (You can also do this in game but only if they are online)
2)Creating items. Whee everyone wants to do this. From my experience the best bet is to edit a currently existing item. The Admin tool is a bit buggy at adding records to a MySQL database, expecially after a certain item ID number. Go find a quest note or something and change it to your new favorite weapon. :)



--------------------------
Any corrections or additions are welcome, I did this file for a friend and thought it might benefit someone else.
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 02:54 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 - 2025, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3