Note; Since this guide was originally written, it has been added to the EQEmu Wiki and is more current there. So, please see the Wiki page here for the most updated version of these instructions:
Those are SVN addresses. Basically you use something like TortoiseSVN
to download the stuff as the developers update them.
If you follow this guide
, it shows you how to download and compile your own server. I'll see if I can make a guide with pictures so it can be explained better, but for now, I can walk you through the basic stuff. This guide is to use the latest stuff without compiling your own source
I'm assuming you already have MySQL and Perl (version 5.10) installed, so I'll skip those parts. If you haven't follow Steps 2-3 from the link above.
This should allow you to run the latest binaries with Bots, database and the new EQEMuLoginServer. The new EQEMuLoginServer is like a mini-login server, so it should probably used over the old and outdated MiniLogin server.
This will be for a completely new install, so back up your database just in case before you start.
I'll try to make this super-easy.
First, download the compiled server binaires.
Download Revision 774 with Bots here
. Extract it. You should see a folder after you've extracted it called build
- all your files are in there. This will be referred to as the server folder
for this tutorial.
Preface - Checking out the latest sources.
Download and install Tortoise SVN
. After it's installed, navigate to your MySQL installation folder. In that directory, you should see a folder named bin
- this is where you'll download the database to.
Right-click the folder and select SVN Checkout
. In the new window that pops up, where it says URL of Repository
at the top, paste in: http://projecteqdb.googlecode.com/svn/trunk
. The line under that where it says Checkout directory:
is the location of the folder you are downloading it to - keep an eye on that to make sure it's the correct folder.
Click "OK", and let it update. Once this is done, navigate to the folder and you should see a file called: peqdb_Rev781.sql.gz
. Extract it with 7-zip (freeware)
or something similar like WinRAR (30-day trial)
. This is the "bulk" of the database. Now keep an eye on the revision number as it signifies the coalation between the server number. In this case, it's: peqdb_Rev781
.sql. This means that you can run it since it's compatible with the server revision which is Rev774
. If you update to a newer server rev, then you need to update the database if the rev version of the server surpasses the database.
Now to source the database in.
Setup - Importing the Database.
Start MySQL by: Start > MySQL > MySQL Server 5.0 > MySQL Command Line Client. If there's a password for your database, enter it and hit Enter.
You should see: mysql> _
Since this is a new installation, you can type: CREATE DATABASE [name];
, where [name] is the name you want for the database (exclude the [brackets]). I'll use PEQ
as an example. So it would be: CREATE DATABSE PEQ;
Then type: use PEQ
(or whatever siginifies your database.) It should then say: Database changed
Then type: source peqdb_Rev781.sql;
Then type: source load_player.sql;
And lastly: source load_bots.sql;
Once it's done, you're all set! Now all that's left is to double-check the revisions and set up the new EQEMuLoginServer.
Download the EQEMuLoginServer files here
. Once downloaded, extract it. Copy the EQEMuLoginServer.exe to your server folder.
As explained above in Step 2, create a new folder and name it something easy to remember like EQEmu Server Files
Right-click that folder, and paste in the SVN address: http://projecteqemu.googlecode.com/svn
Go to the folder where you downloaded the server sources and navigate to: trunk > EQEmuServer > EQEmuLoginServer > login_util.
Then copy: eqemulogin.ini
to your server folder.
And finally, go to login_util > ms > debug and copy the EQEmuAuthCrypto.dll
file to your server folder.
Download and install HeidiSQL
or something to make it much easier for this part.
Launch HeidiSQL and use your MySQL credentials to login (click Save + Connect to remember your login info - not recommended on public computers for obvious reasons).
In the upper-left panel, you should see the name of your database (PEQ). Right-click somewhere in the panel and choose Create Database
from the menu. Give it a name like: PEQLoginDB
then click OK.
Click your database name (PEQLoginDB) in the upper-left panel so it's yellow to make sure it's selected. Now press CTRL+O (or from the top menu: Import > Load SQL file...). Then navigate to the folder where you downloaded the server files: trunk > EQEmuServer > EQEmuLoginServer > login_util. Then select: EQEmuLoginServerDBInstall.sql
and click Open.
In the Query window at the center of the screen, you should see the SQL entry. Above that, you should see a left-most blue arrow pointing to the right. Press that to execute the query. Or press F9.
Almost there! Now to make accounts and set up the server to log in.
Here's an SQL file to make accounts. Make sure your PEQLoginDB is selected, and import this query. You can save this as an .sql file, or copy/paste it in the Query window in HeidiSQL and import it.
insert into tblLoginServerAccounts (AccountName, AccountPassword, AccountEmail, LastLoginDate, LastIPAddress) values('Admin', sha('password'), 'firstname.lastname@example.org', now(), '127.0.0.1');
text is where you would enter your account info to log in.
For security purposes, you can delete the Admin account that's entered by default in tlbloginserveraccounts by left-clicking on it so it's yellow, and then pressing CTRL+DEL.
Setting up the world server. Here's the sql file to make the world server entry.
INSERT INTO `tblworldserverregistration` (`ServerID`, `ServerLongName`, `ServerTagDescription`, `ServerShortName`, `ServerListTypeID`, `ServerLastLoginDate`, `ServerLastIPAddr`, `ServerAdminID`, `Note`) VALUES ('1', 'NameOfServer', 'ServerTagDescription', 'ShortNameOfServer', '2', NULL, NULL, '1', NULL);
Again, the red
text is what you want to modify with your server name.
is the actual name of the server.
is the shortname for client files in your game directory (i.e. UI_Soandso_ShortNameOfServer.ini).
is what you will see in parenthesis after the server's name - i.e. NameOfServer(Come and have fun!)
The green number 2
signifies what kind of server it is. 1 = Legends, 2 = Preferred, 3 = Standard.
Finalizing - Setting up for launch and connections.
Now the last part is to make sure everything is set up so you can connect. I'll be using an example of setting up the server on the same LAN connection while letting people outside of your LAN to be able to connect to your server.
First of all, lets open up the eqemu_config.xm
l file in your server directory.
Up at the top of the file, you should see:
text should match with what you put in Step 11 above.
<!-- Only specify these two if you really think you need to. (read: You don't) -->
should be your dyndns address, and the 192.168.0.1
should be the LAN IP of the server's PC.
<!-- Loginserver information. Defaults shown -->
should be your dyndns name.
<!-- Database configuration, replaces db.ini. Defaults shown -->
is self explanitory. It's the login information you used for HeidiSQL. peq
is the name of the database.
Save your changes and open up eqemulogin.ini
is the name of the Login Database in Step 9. MySQL Login
is the same as in Step 8.
Maps, Quests and Spells - Keeping them updated.
This is how to keep all of your maps and quests updated.
In your server folder, right-click the Maps
folder and select SVN Checkout
. In the URL of Repository
section, paste: http://eqemumaps.googlecode.com/svn/trunk/Maps
This can take a very long time to download as the map files are pretty large. 3.37 GB as of now.
In your server folder, right-click the quests
folder and select SVN Checkout
. In the URL of Repository
section, paste: http://projecteqquests.googlecode.com/svn/trunk/quests
This keeps your quests updated, and is highly recommended to maintain as it's updated regularly!
In your EverQuest installation directory, find: spells_en.txt
. Copy them to your server folder. This allows the server to read data from these files to ensure that the spells work as they should. You do not need to copy these files everytime you update, but do make sure they're there before reporting any bugs about spells.
Setting up a .batch file.
Make a .bat file to launch the server if you haven't already. Just make a new text file called startup.bat
(you may need to change the extension from .txt to .bat). Then copy this text:
echo waiting for the world to finish before starting zone...
start eqlaunch zone
Now you can launch the startup.bat file and it should launch all of the server executables so you can play.
Connecting - Changing your eqhost.txt file
Since you are on the same LAN, your eqhost.txt file should be as follows:
text should reflect the LAN IP of the server's PC (i.e. 192.168.1.0). It would depend on your router/firewall setup, so I won't go into details here since there's plenty of topics on the forum about this.
If other people outside of your LAN are trying to connect, their eqhost.txt file should read:
should be the name of your dyndns service.
-=-=-=- End tutorial! -=-=-=-
This should cover anyone wanting to set up a server. Hope it's informative as I have blisters on my fingers from typing all of this.
If there's anything missing, let me know as I'll gladly update this topic with relevant information as soon as I give my carpal tunnel a rest.
Now go play!