Log in

View Full Version : Working Lan Server Working Smoothly


Huppy
10-15-2010, 06:11 AM
MY Working Lan Server (as of october 13th,2010)

This is how I got my LAN server working when I installed it the second time.
I use a windows vista (32 bit) computer, athlon 64 dual core. 2.4Ghz and 3 Gigs
of ram.(and lots of coffee).

I am posting this little guide as a copy of my steps to do this. If it hadn't
been for this forum and especially kavren's guide, I would of taken longer to
get this figured out. Step Number 3 that I wrote here, took me a couple hours
of searching the net for answers. So its there to fix a problem before it is
a problem fo you.
kavrens guide linked here: (shows good download links for everything you need)
http://www.eqemulator.org/forums/showthread.php?t=31783

I know it can be a PITA trying to search through a big forum for answers and not
finding what your looking for, so I know how you feel. That is why I wrote a more
"detailed" guide, hopefully so some people will understand more about this kind
of tedious installation, and have more patience. (smirk)
Even though my server is running smoothly, I have much to learn about getting it
all tweaked out with settings and I'll be asking more questions on here.


Setting up Server:

Step 1- Open up DOS command prompt and type ipconfig. You will see a line that
looks similiar to this: 192.168.1.100 (the 100 is whats on my server).
Yours might be different.(192.168.1.xxx) WRITE THIS NUMBER DOWN !!!
YOU WILL NEED TO ENTER THIS NUMBER IN YOUR CONFIG FILES SEVERAL TIMES
Close your DOS command window.

Step 2- In your windows browser go to C:\Windows\System32\drivers\etc\
There is a file in there named Hosts
Click on that to open it and when it asks for which program to open it
with, you can use Notepad.
At the bottom of all the lines in there,
Enter that IP number you wrote down : 192.168.1.xxx:5999 (on its own line).
Add the :5999 to the end of it. CLICK SAVE and exit.

Step 3- Now, click on the start menu and click on RUN. and in the box type regedit
The window will show entries with a + sign by each entry. This is to expand
the menu to see submenus.
First expand HKEY_LOCAL_MACHINE. Then expand SYSTEM. Then CurrentControlSet.
(NOT THE NUMBERED ONES) Then expand Control.
On that menu, LEFT CLICK on Enviroment. To the right of that is where to
look.
On that menu, you will see a line named Path. (NOT PATHEXT).
On that line, you should also see REG_EXPAND_SZ (not just REG_EXPAND)
and to the right of that, you will see what should be some path variables.
MAKE SURE somewhere on that line it shows \system32 if you don't see it,
then right click on the word Path and choose "modify". Then enter the
following: C:\Windows\System32
Then exit.

Step 4- Now install Zlib to C:\zlib
Then copy the ZLIB1.DLL file (from C:\zlib) to C:\Windows\System32 folder.
NOW REBOOT !

Step 5- DID YOU REBOOT ?
Now install the Perl 5.10 (1007). Answer yes to everything. There will be
one question that has C:\Perl in it. That question requires you to enter
that path as the answer. So just type C:\perl
BUT WARNING: DO NOT PUT THE Perl510.dll file anywhere else on your computer.
I made that mistake by reading some posts. It caused me a lot of grief.
NOW REBOOT

Step 6- DID YOU REBOOT ?
Now open up the DOS command window again and type the following:
(use the lower and UPPER CASE as shown)

ppm install DBI
ppm install IO-stringy

Step 7- Now install MySQL 5.0.82 (this will be installed to C:\mysql)
When you first start up the install, make sure you choose CUSTOM install.
IMPORTANT: after clicking "next" this is where you change the install
path to "C:\mysql
On that same menu, make sure ALL options are installed.
After clicking "next", on that menu, choose Detailed Configuration.
After clicking "next" again, choose Server Machine.
After clicking "next" again, choose Multifunctional Database
On the next menu, there is nothing to change, click "next" again.
On that menu, choose Online Transaction Processing (OLTP)
Then click "next". UNCHECK the strict mode option, and make sure that the
TCP/IP Networking is checked ENABLE and at port 3306.
After clicking "next" again, Choose Best Support for Multilingualism.
After clicking "next" again, make sure BOTH of the following are checked:
Install As Windows Service and Include Bin Directory in Windows Path
After clicking "next" again, you will be prompted for a password.
(This password is what goes with your SQL database username)
Your SQL username is automatically set as "root"
After you click "next" again, you will get a menu with "Execute" on it.
Just click that and wait. IMPORTANT: As its installing, that meny is showing
a check mark with each successful step.If you see an "x" in one, before it
ends, most likely the install will stop.You will have to re-install again.
BUT if you have to, first go to control panel and uninstall it, and remove
folder from C:\
Then REBOOT and re-install. But if everything went well, Click on "Finish"
REBOOT

Step 8- Did you REBOOT ?
Now we install Microsoft Visual C++ 2008 Express Edition
You can just install this with all the default installation. Nothing to
do until after installation is complete. But once it is done;
Open up the program and on the menu at top, click on "Tools"
From that menu choose "Options" and then you will see a menu list with
"Projects and Solutions" with a little "+" sign to expand that menu.
You will see "VC++ Directories" to click on and change the menu to the right.
On the top right of the menu you will see "Show directories for" and under
that, by default, it will show "Executable files".
First you need to change that to "Include files".
Right underneath that drop-down menu, is an icon of a folder pic. If you
you hold your mouse over it, the info says "New Line".
Click on that little folder and new blank line will show in the menu under
Include files with the cursor all ready in there. DON'T TYPE ANYTHING.
Just to the right of that blank line is kind of a rectangle grey icon with
3 dots (periods) on it, (like this) ... Just click on that and it will bring
up a folder browser. (There is 3 folder you will have to do this step for,
for the "include files" menu.
First navigate to C:\mysql\include and select that folder. Then click on
"Select" at the bottom and that's it for that entry.
Now do the same steps for the next 2 folders:
C:\perl\lib\CORE (folder name is in capital letters)
also C:\zlib\include
After those are done, you need to go back up to that top drop down menu,
and change that from "include files to "Library files"
Once you do that, follow those same steps again to add these 3 folders:
C:\mysql\lib\opt
C:\perl\lib\CORE
C:\zlib\lib
OK, Your done with installing the C++ program.
If your not already ahead of me, by now - REBOOT !!

Step 9- Did you REBOOT ?
Ok, now install both the programs of Navicat Lite and TortoiseSVN (I love these two)
You can just install with default installations.
REBOOT

Step 10 OK, Now that all the programs needed are installed, you can start downloading and
compiling your eqemu server. (Its easier than you think).

FIRST, (this is the way I did it). Make a folder on your C: drive called eqemu
SECOND, Make a folder on your C: drive called peqdb
THIRD, Make a folder on your C: drive called eqemusource (or whatever you want)
The eqemusource folder is where you'll put the source files to compile and build.
Now highlight this text and right click to "copy"
http://projecteqemu.googlecode.com/svn/
Now, right click on the eqemusource folder and on menu click "SVN CHECKOUT"
In that field that pops up, replace whatever is in there by pasting that text.
Then hit "OK" and sit back and wait for it to download the source files to that
folder. When its done it will say "Completed At Revision xx" (xx = whatever number)
Don't pay attention to that Revision xx number, it has nothing to do with your
install. The SVN is updated on a regualr basis, so that number will change in the
future. The SVN system is the best update system I have ever run in to. It makes life
a lot easier for updating files.
Now copy this text too:
http://projecteqdb.googlecode.com/svn/trunk/peqdatabase
Right click on the peqdb folder that you made and click "SVN Checkout"
Paste that text in to there, hit "OK" and wait for it to download.
It will have "Completed At Revision xx" when it is done.

Step 11 For now, leave those two folders alone and go inside the eqemu folder. This is where
your final server files will go after your done compiling and building. This is the
folder where you will run your server from.
Create a folder inside the eqemu folder called maps
Create another folder inside the eqemu called quests
Now copy this text:
http://projecteqquests.googlecode.com/svn/trunk/quests
Right click on the quests folder and click SVN CHECKOUT and paste. Click "OK"
Let it download the quest files. ("Completed At Revision xx" when it is done)
Now copy this text:
http://eqemumaps.googlecode.com/svn/trunk/Maps
Yes, you guessed it, right click on maps folder and click SVN CHECKOUT and paste.
This is the easiest part of the whole day. After you click "OK", you get to sit back
and relax for awhile, this download is a long one.(chuckle)("Completed at Revision xx")

Step 12 Ok, its time to build the world of Norrath on your computer.
Open up your Microsoft Visual C++ 2008 program.
Click on "File" and scroll down to "Open" and from that menu choose "Project/Solution"
The browser will pop up and you will navigate to C: drive then eqemusource folder.
Inside the eqemusource folder is trunk folder. Inside that one is EQEmuServer folder.
Click on that folder and inside, one of the files called "Server.sln (NOT Server71).
Click on Server.sln and click open.
On the top menu, click on "Build" and choose "Clean Solution" (This is the first step)
At the end of that it should say Build: 5 succeeded 0 failed 0 up-to-date 0 skipped
Now, at the top menu click on Build and scroll down to "Configuration Manager".
You will see a drop-down menu called "Active solution manager" (make sure it is)
Change that drop menu entry to "Release" and click "close".
IMPORTANT: There is also another option in there for "RealeaseBots". You would want
that one if your implementing the bot system. I never chose that one, so I don't know
how that works.
This is the time to get ready and cross your fingers. If your perl, mysql, zlib, are
all installed right and working properly, your about to create a server with no problems.
So now, its time to click on the top menu called Build and choose "Build" from that one.
It will start building the server for you. Don't pay any attention to the warnings and
crap that goes up the window, A lot of it doesn't mean anything, and if it did, its too
late now anyways (chuckle)
All you have to hope for, is when its done, it will give that same line again:
Build: 5 succeeded 0 failed 0 up-to-date 0 skipped
If you get that line, Your server has been successfully built, but there is more work
to do. Have a coffee :)

Step 13 Back from coffee ?
Now its time to start copying files over from where the server was compiled to your
eqemu folder where your server files will be kept.
Browse to C: drive to the eqemusource folder. Inside there is the "trunk" folder.
Inside the trunk folder is EQEmuServer folder. Inside there is a folder called Build.
There is 4 files you need inside there - Chatserver.exe, EMuShareMem.dll, World.exe and
Zone.exe (copy all 4 of them to the eqemu folder)
Now go back one folder (get out of BUILD), and copy changelog.txt to eqemu folder
IN that same folder is another folder called eqlaunch. Inside there is a folder called
Realease. In that folder is a file to copy eqlaunch.exe to your eqemu folder.
Now go back one folder (/trunk/EQEmuServer) and you will see utils folder.
Inside there, is 8 files you need. - mail_opcodes.conf, opcodes.conf, patch_6.2.conf,
patch_Anniversary.conf, patch_Live.conf, patch_SoD.conf, and patch_Titanium.conf
Ok, in that same utils folder, there a folder called defaults.
Copy ALL of the files in that folder to the eqemu folder.(don't copy the utils folder
itself), just everything inside of it.
Now go to the eqemusource/trunk/EQEmuServer folder and get inside EQEmuLoginServer
folder. Then go inside login_util folder. Copy these 2 files: eqemulogin.ini and
login_opcodes.conf to your eqemu folder.
IMPORTANT: if you don't see eqemulogin.ini then here's a tip:(I did this)
I downloaded the binary rev1664 of the eqemu server and extracted the eqemulogin.ini
from there. I didn't install that binary, I just took the ini file.
Link to file is: http://code.google.com/p/projecteqemu/downloads/list
This is also the same link where you downloaded the EQEmuLoginServer.zip file in which
That file has to be extracted in to your eqemufolder as well. EQEmuLoginServer.exe
You also want to go to your everquest folder, where ever you installed it, (default is
c:\program files\sony\everquest and grab two files from there. spells_en.txt and also
spells_us.txt copy those two to your eqemu folder.
Also, in your "quests" folder that inside the eqemu folder, there will be a folder
named "plugins". Copy that WHOLE folder in to your main eqemu folder. You should have
a plugins folder in your main eqemu folder.

Step 14 Need more coffee ?
Ok, its time to setup your database. (thats the files you downloaded to peqdb folder)
That folder will serve as your database folder.The files will all stay there.
First you need to browse in to that folder and double click on the compressed file.
The file name is peqdb_Rev1667.sql.gz You will be extracting a file from there with
the same name, except it doesn't have the .gz on the end. So you end up extracting or
unzipping a file called peqdb_Rev1667.sql
IMPORTANT: Its best to extract it in the same folder (peqdb)
Now open up your Navicat Lite program. On the left window you should see the name
localhost_3306 (or just localhost, whatever).
IF YOU DONT SEE ANYTHING, but a blank white window on the left, then you need to create
a new conncection to MySQL. This is simply done by clicking on Connection and choosing
MySQL on the menu.It will bring up a window, but just enter that SAME PASSWORD as you
entered when installing MySQL (Step 7 of this guide).
IMPORTANT: Its in your best interest, to have it "save password", or you will go through
probs whenever trying to use Navicat to access the database.
So now, you have that localhost name in that window. Double click on it first. Then on
that same name, right click on it and from the menu, choose "new database".
Name the new database peq and exit out of Navicat.

Now open up a command prompt and you need to navgigate to c:\peqdb if you don't know how
to do this, just type cd c:\peqdb
Now type the following: mysql -uroot -p(password) -b (the -b disables error beeps)
The passowrd you use in that line is whatever you entered when installing MySQL.
DO NOT USE THE (.....), with your password. And NO space between the -p and your password.
After you hit Enter, you will see a command prompt like this C:\mysql>

First type this: use peq (then hit enter and you will see "database changed")
Then type this: source peqdb_rev1667.sql (hit enter again and wait for it to finish)
Also type this: source load_player.sql (press enter)

IMPORTANT: While your still at that command prompt, if you implemented Bots in your
compile, you will have to also type the following:
source load_bots.sql
For now, close the command window and open Navicat. Double click the local name and then
right click on the same name. Choose "New Database" Name this new database PEQLoginDB.
After the name is created, double click on that same name PEQLoginDB and then right click
on it.Choose "Execute SQL File". A browser will come up and you will browse to the
eqemusource folder where your compile was done.Inside there, go inside the "trunk" folder.
Then go inside the EQEmuServer folder and then inside login_util.
There is a file in there called EQEmuLoginServerDBInstall.sql click on that and hit open.
There will be an option to "execute" and you click on that.
After that, exit out of Navicat for the moment and open up notepad.
We're going to make two seperate .sql files here.
First, copy and paste this text into notepad:

INSERT INTO tblLoginServerAccounts (AccountName, AccountPassword, AccountEmail, LastLoginDate, LastIPAddress) VALUES('huppyname', sha('huppypassword'), 'fakename@hotmail.com', now(), '192.168.1.103');

This is going to create a login account for you to login with your client (or anyone else)
You need to edit a few things. AFTER THE WORD VALUES (nothing before that)
huppyname to whatever you want. huppy password to whatever.
fakename@hotmail to whatever ( I left mine like that). and finally the IP address of your lan
computer that this user will log in from. 192.168.1.xxx
You can save this file as accounts.sql (make sure it has a .sql extention.

The second file, copy and paste the following in to notepad as well:

INSERT INTO `tblworldserverregistration` (`ServerID`, `ServerLongName`, `ServerTagDescription`, `ServerShortName`, `ServerListTypeID`, `ServerLastLoginDate`, `ServerLastIPAddr`, `ServerAdminID`, `Note`) VALUES ('1', 'Huppys Little Norrath', 'ServerTagDescription', 'Huppys', '2', NULL, NULL, '1', NULL);

DO NOT GIVE YOUR SERVER A NAME with the word SERVER in it. That will get added on automatically.
You just need to change the 2 things here Huppys Little Norrath to what you want and the short name of huppys.

STEP 15 OK, Your database should be setup, now you adjust a few config files for server and login,
then your done - coffee break :)

There is a file in your main eqemu folder called eqemu_config.xml BUT there is also another one,
called eqemu_config.xml.full
Forget aboout the other one, stick with this (full) one. You can delete that other one after and
rename this one by removing the (full) off the end. This is your server config file. If its not
done properly, your server wont work.
The following is EXACTLY how I have my lan server set up at home. The only entries I altered
was the passwords. Otherwise, the server is running on this configuration, AS I TYPE THIS.
These are only parts of the conf file, as shown in kavren's posted guide. These are the only
parts you have to adjust and don't bother with the rest.

<world>
<shortname>Huppys Little Norrath</shortname>
<longname>Huppys</longname>
<localaddress>192.168.1.103</localaddress>

<!-- Loginserver information. Defaults shown -->
<loginserver>
<host>192.168.1.103</host>
<port>5999</port>
<account></account>
<password></password>
</loginserver>


<!-- Database configuration, replaces db.ini. Defaults shown -->
<database>
<host>localhost</host>
<port>3306</port>
<username>root</username>
<password>password</password>
<db>peq</db>
</database>

Now open up your eqemulogin.ini file and adjust those settings
I have mine exactly like this. You will need to change the
password. ALSO: IMPORTANT !!! I have an SoD client to login,
so I had to change the OPCodePathAndFileName value to SoD conf.
If your using Titanium or SoF, leave it the way it is.

Port=5999
DumpPacketsIn=false
DumpPacketsOut=false
Trace=false
DatabaseServerName=localhost
DatabaseCatalogName=PEQLoginDB
DatabaseUserName=root
DatabaseUserPassword=password
OPCodePathAndFileName=login_opcodes.conf

jackal1950
10-15-2010, 09:28 AM
Very nice job on this walk-thru, thanks..
....going for more coffee

Huppy
10-15-2010, 08:31 PM
[QUOTE][<world>
<shortname>Huppys Little Norrath</shortname>
<longname>Huppys</longname>
<localaddress>192.168.1.103</localaddress>/QUOTE]

Sorry, I was a little tired when I wrote the guide, I just noticed the "shortname" and "long name" entries are backwards.
The "short name" is where the single word entry goes.
You see, that little mistake would of been a disaster for someone.
Not enough coffee....(smirk)

Gregk
10-16-2010, 11:55 AM
HELP! I've been looking at the forums for a clue. No luck yet. This guide has helped a ton. had no trouble with minilogin, but now I'm having trouble with eqemulogin. Local server for now. Compiled great, installed great, not seeing any errors. however, when I try to login I'm stuck at "Logging in to the server. Please Wait..." If I had to guess, its somewhere in my account settings. Do I need anything entered in to the peq account table? or just the peqlogindb table?

I've gone through and made a working server using minilogin several times, with no trouble. Since eqemuloginserver seems to be preferred, I thought I'd switch.
Using Eqemu 1664
peqdb rev 1667
client - SoD steam, unpatched no underfoot stuff

I'm familiar with the setup, but I've got to be missing something with the new login.

eqemu_config.xml
<?xml version="1.0">
<server>
<world>
<shortname>Wanderlust</shortname>
<longname>The Wanderlust</longname>

<!-- Only specify these two if you really think you need to. (read: You don't) -->
<address>eqs.gregsemu.net</address>
<localaddress>192.168.1.99</localaddress>

<!-- Loginserver information. Defaults shown -->
<loginserver>
<host>192.168.1.99</host>
<port>5999</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="192.168.1.99" port="9000" telnet="disable"/>

<!-- Sets the shared key used by zone/launcher to connect to world -->
<key>86753098675309</key>

<!-- Enable and set the port for the HTTP service. Defaults are shown -->
<http port="9080" enabled="false" mimefile="mime.types" />
</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 low="7000" high="7100"/>
</zones>

<!-- Database configuration, replaces db.ini. Defaults shown -->
<database>
<host>192.168.1.99</host>
<port>3306</port>
<username>root</username>
<password>*******</password>
<db>peq</db>
</database>

<!-- Launcher Configuration -->
<launcher>
<!-- <logprefix>logs/zone-</logprefix> -->
<!-- <logsuffix>.log</logsuffix> -->
<!-- <exe>zone.exe or ./zone</exe> -->
<!-- <timers restart="10000" reterminate="10000"> -->
</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>

eqemulogin.ini

Port=5999
DumpPacketsIn=false
DumpPacketsOut=false
Trace=false
DatabaseServerName=localhost
DatabaseCatalogName=PEQLoginDB
DatabaseUserName=root
DatabaseUserPassword=*******
OPCodePathAndFileName=login_opcodes.conf

Huppy
10-16-2010, 07:19 PM
Since your using an SoD client, in your eqemulogin.ini
CHANGE this line
OPCodePathAndFileName=login_opcodes.conf
to:
OPCodePathAndFileName=login_opcodes_sod.conf

Gregk
10-16-2010, 09:02 PM
Thank you for the guide, and thank you for the assistance. Both made the difference.

revloc02c
10-20-2010, 12:59 AM
Hey, thanks for the guide.

I got stuck on step 3 (yeah I know, not very far). There is not an Environment folder there in the Control folder. Running XP Pro. Checked other computer running Vista...same thing no Environment directory.

So I did some Googling and found that there is a Session Manager folder in the Control folder, and in there is an Environment folder. But I don't know that much about the registry except that if you mess with it you can wreck things so I thought I'd check first.

Perhaps you, or someone can verify if that is the correct place.

Another options might be to gimme some examples of what is in the Environment folder so I can compare and see if they are the same as what I found in the other place (kinda hesitant to trust this idea as I really don't know what I am doing).

Perhaps there is a different way of accessing the info/variables that I need to check there--often there are different ways of doing the same thing--anyone know?

Thanks in advance. I am going to keep searching, but I thought I'd post here.

Huppy
10-20-2010, 01:14 AM
The enviroment is a line you will see in the registry, not your folders

revloc02c
10-20-2010, 09:46 AM
Thanks for the quick response.
Then expand Control.
On that menu, LEFT CLICK on Enviroment.
There is no Enviroment line.

I am in the Registry Editor (not clicking through folders in Windows Explorer).

There is not an Environment folder there in the Control folder.

I used the term folder here for lack of a better word--the little icon next to the word Control (in the Registry Editor, in the left pane) looks like a folder (in XP it does), as do all of the icons "inside" of Control when it is expanded.

Sorry for the misunderstanding.



Potentially there is another way of accessing the info:

Go to System Properties > Advanced tab
(XP: Click Start > right-click My Computer > Properties > Advanced tab)
(Vista: Start > right-click Computer > Properties > Advanced System Settings in left pane)
and there is a button at the bottom that says Environment Variables, which opens a window Environment Variables where system variables can be edited (there is a path line here).

I don't know enough (yet) to confirm that these are the very ones you are referring to (likely they are). Perhaps you can have a look-see and verify that they are. See if the path variables are the same exact ones.

Thanks.

lerxst2112
10-20-2010, 07:05 PM
They are the same, and editing them through the provided interface (advanced settings) is much much safer than editing them in the registry editor.

revloc02c
10-20-2010, 09:29 PM
Nice. Thanks for the confirmation.

Oaric
11-23-2010, 07:42 PM
So everytime I go to build the server with C++ I get 1 Succeeded 4 failed....Any idea what to do about that? Everything else is working perfectly up to that step,not sure what to do.

joligario
11-23-2010, 08:22 PM
If you read the error messages, it will tell you what was wrong. It will have some ERROR type message.

Noport
01-29-2011, 06:15 AM
[Debug] [01.29.11] Logging System Init.
[Debug] [01.29.11] Config System Init.
[Debug] [01.29.11] MySQL Database Init.
[Debug] [01.29.11] Encryption Initialize.
[Debug] [01.29.11] Encryption Loaded Successfully.
[Debug] [01.29.11] Server Manager Initialize.
[Network] [01.29.11] ServerManager listening on port 15900
[Debug] [01.29.11] Client Manager Initialize.
[Network] [01.29.11] ClientManager listening on Titanium stream.
[Network] [01.29.11] ClientManager listening on SoD stream.
[Debug] [01.29.11] Server Started.
[Network] [01.29.11] New world server connection from xxx.xxx.xxx.xxx:49742
[World] [01.29.11] Server xxxxxxxx(xxxxxxxx) successfully logged in.

Wow! after 1 mo it finally sank in
Running with
Windows 7 32 Bit
Windows xp 32 Bit
Next step is with linux system
Thank you Huppy! and to all the peeople in the community

Banderas
02-10-2011, 04:50 PM
I followed to the T your guide ... everything seems fine, I can login to the server .. but then the server list is empty, no matter what I do.

I have SoD client.

Do I need to post anything here? I searched in the forums for solutions and I found such a huge amount of entries under "server list empty" I got overwhelemed.

Please help. Trying to create a LAN server ... or a public one, I dont really care, I just want to test it out :)

Umlaut
05-21-2011, 11:09 PM
Now go back one folder (get out of BUILD), and copy changelog.txt to eqemu folder
IN that same folder is another folder called eqlaunch. Inside there is a folder called
Realease. In that folder is a file to copy eqlaunch.exe to your eqemu folder.
Now go back one folder (/trunk/EQEmuServer) and you will see utils folder.
Inside there, is 8 files you need. - mail_opcodes.conf, opcodes.conf, patch_6.2.conf,
patch_Anniversary.conf, patch_Live.conf, patch_SoD.conf, and patch_Titanium.conf


Stuck on step 13.
Found the changelog.txt and moved it.
Then it says to go into the eqlaunch folder.
Ok, found that.
The it says that in that folder is another folder called Release.
I don't see a release folder in C:\EQEmuSource\trunk\EQEmuServer\eqlaunch
I do see one in C:\EQEmuSource\trunk\EQEmuServer\Build\eqlaunch, but you told us to get out of the Build folder.
Plus, in that Release folder I don't see a file that is going to copy the eqlaunch.exe file to my eqemu folder.

The build has probably changed since the instructions were written, so any help here would be nice.

Thanks for the great guide so far!

joligario
05-22-2011, 12:01 AM
I consolidated the build locations together a while ago for common sense so you don't have to look all over for your builds.

Umlaut
05-22-2011, 09:43 PM
Ok, got through the guide.
Got past the 10061 error I was getting.
I can log in, but like Banderas on the bottom of the first page, I have no servers listed.

I guess I'll start digging through the forums.

Thanks!

Umlaut
05-23-2011, 09:19 PM
Ok, got the server to be listed.
Now getting the infamous 1017 error.
I am just trying to set this up as a private LAN server.
It is a virtual 2003 server running on a Windows 2008R2 server.
Nothing connecting from outside, and the only thing between my client computer and the server is a netgear prosafe gs116 switch.

With the same client, if I adjust the eqhosts file, I can successfully connect to the Project 1999 server.

I even just did a complete uninstall and re-install of EQ with my Titanium Discs.

I've been digging through the forums, but so far all I am seeing is people with routers having problems.

I'll keep digging, but if anyone has any ideas, I would appreciate it.
Thanks!

eviakhan
09-28-2011, 09:20 PM
Thanks for putting this guide together Huppy, I really appreciate you taking the time to document all these steps, extremely helpful.

I finally got my lan server up and running successfully thanks to this guide and a few other helpful folks on these forums. I wanted to share my findings in setting this up in hope that someone can use my experience. Since my server setup was a while after this guide was written some things have changed slightly or were not exactly clear to me, so here are some my notes that may help others:

Setup date: 9/22/2011
EqEmu revision: 2018
Database revision: 1900 -- but this is no longer clear, the latest database updates are not labeled clearly like "peqdb_Rev1667.sql" but instead simply, "db_dump.sql" this is the file you need to setup the database.

1) After you get your database setup You need to run all the sql files in the following directory (if you setup as Huppy suggested):
C:\eqemusource\EQEmuServer\utils\sql\svn
any file that is after your database revision, 1900, so starting with file 1908_required_npc_types_definitions.sql up through
2004_charges_alt_currency.sql, you do not need to run the "optional" files.

2) There are a couple of sql update files that break the above rule, you need to run these two file even though they are less than 1900:
1711_account_restricted_aa.sql -- this fixed my login problems
1723_required_sql_corruption.sql -- you need this if you want BOTS
-- note we do not need the last line of 1723, it must have been added previously

3) eqemulogin.ini does not exist anymore, use login.ini instead populate like this:
[database]
host = localhost
port = 3306
db = PEQLoginDB
user = root
password = <yourpassword>
subsystem = MySQL

[options]
unregistered_allowed = TRUE
reject_duplicate_servers = FALSE
trace = FALSE
world_trace = FALSE
dump_packets_in = FALSE
dump_packets_out = FALSE
listen_port = 5998
local_network = 192.168.0.100


4) eqemu_config.xml
Mine needed to be set up slightly differently than in the guide:
note replace 192.168.9.999 with your ip:

<?xml version="1.0">
<server>
<world>
<shortname>Huppys</shortname>
<longname>Huppys Little Norrath</longname>
<localaddress>192.168.9.999</localaddress>

<!-- Loginserver information. Defaults shown -->
<loginserver>
<host>192.168.9.999</host>
<port>5998</port>
<account>Admin</account>
<password>Password</password>
</loginserver>

... the rest of the eqemu_config.xml file is as Huppy set up.

Thats all for now, have fun seting up =)

joligario
09-28-2011, 09:29 PM
FYI, there was a new database update a few hours ago with the former naming convention.

lerxst2112
09-28-2011, 10:16 PM
FYI, there was a new database update a few hours ago with the former naming convention.

lol, once again proving that as soon as a guide is written it's out of date. :)

sorvani
09-29-2011, 10:12 AM
guides need to be on the wiki so they can be updated, and the wiki needs redone so that you can actually easily find said guides.

but then again as a programmer i find documentation ummm annoying to do :P need to hire a secretary!

Lazzeraith
10-09-2011, 06:14 PM
We're going to make two seperate .sql files here.
First, copy and paste this text into notepad:

INSERT INTO tblLoginServerAccounts (AccountName, AccountPassword, AccountEmail, LastLoginDate, LastIPAddress) VALUES('huppyname', sha('huppypassword'), 'fakename@hotmail.com', now(), '192.168.1.103');

This is going to create a login account for you to login with your client (or anyone else)
You need to edit a few things. AFTER THE WORD VALUES (nothing before that)
huppyname to whatever you want. huppy password to whatever.
fakename@hotmail to whatever ( I left mine like that). and finally the IP address of your lan
computer that this user will log in from. 192.168.1.xxx
You can save this file as accounts.sql (make sure it has a .sql extention.

The second file, copy and paste the following in to notepad as well:

INSERT INTO `tblworldserverregistration` (`ServerID`, `ServerLongName`, `ServerTagDescription`, `ServerShortName`, `ServerListTypeID`, `ServerLastLoginDate`, `ServerLastIPAddr`, `ServerAdminID`, `Note`) VALUES ('1', 'Huppys Little Norrath', 'ServerTagDescription', 'Huppys', '2', NULL, NULL, '1', NULL);

DO NOT GIVE YOUR SERVER A NAME with the word SERVER in it. That will get added on automatically.
You just need to change the 2 things here Huppys Little Norrath to what you want and the short name of huppys.

What name do you use to save the second .sql file?

And I am guessing these files are saved in the EQEMU folder.

lerxst2112
10-10-2011, 01:13 AM
Those are commands you need to execute on your database. You can do it by pasting them into the query window in whatever sql tool you use and executing them, or you can save the files and source them like you did the other sql files. The names aren't important as long as you source whatever you save them to.

Lazzeraith
10-10-2011, 12:18 PM
Those are commands you need to execute on your database. You can do it by pasting them into the query window in whatever sql tool you use and executing them, or you can save the files and source them like you did the other sql files. The names aren't important as long as you source whatever you save them to.

Oh, that went over my head completely. What query window? How do you execute these? Yes I am an idiot when it comes to this stuff.

Lazzeraith
10-11-2011, 02:52 PM
Now open up a command prompt and you need to navgigate to c:\peqdb if you don't know how
to do this, just type cd c:\peqdb
Now type the following: mysql -uroot -p(password) -b (the -b disables error beeps)
The passowrd you use in that line is whatever you entered when installing MySQL.
DO NOT USE THE (.....), with your password. And NO space between the -p and your password.
After you hit Enter, you will see a command prompt like this C:\mysql>

First type this: use peq (then hit enter and you will see "database changed")
Then type this: source peqdb_rev1667.sql (hit enter again and wait for it to finish)
Also type this: source load_player.sql (press enter)

So I would take the 2 files I created and do the steps above.
It would be: source accounts.sql ?????

Lazzeraith
10-12-2011, 03:00 PM
Can anyone helpout with this?

Lazzeraith
10-13-2011, 04:42 AM
INSERT INTO tblLoginServerAccounts (AccountName, AccountPassword, AccountEmail, LastLoginDate, LastIPAddress) VALUES('Admin', sha('password'), 'admin@somewhere.com', now(), '127.0.0.1');

after editing the values I get this error:

C:\eqemusource\trunk\EQEmuServer\EQEmuLoginServer\ login_util>INSERT INTO tblLogi
nServerAccounts (AccountName, AccountPassword, AccountEmail, LastLoginDate, Last
IPAddress) VALUES('******', sha('******'), 'fakename@hotmail.com', now(),
'192.168.0.12');
'INSERT' is not recognized as an internal or external command,
operable program or batch file.

Derision
10-13-2011, 03:01 PM
You need to paste the command into a MySQL command prompt:


C:\> mysql -u root -p peq
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 159
Server version: 5.1.49-3 (Debian)

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL v2 license

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> INSERT INTO tblLoginServerAccounts (AccountName, AccountPassword, AccountEmail, LastLoginDate, Last
IPAddress) VALUES('******', sha('******'), 'fakename@hotmail.com', now(),
'192.168.0.12');


I am assuming you called your database 'peq'. If not, change peq to whatever your database is called on the mysql command line.

Lazzeraith
10-13-2011, 04:43 PM
Thanks.

The database is named peq.

Looks like I will be wiping the machine and starting over, got the error:

mysql> INSERT INTO tblLoginServerAccounts (AccountName, AccountPassword, Account
Email, LastLoginDate, LastIPAddress) VALUES('*******', sha('*******'), 'fake
name@hotmail.com', now(), '192.168.0.12');
ERROR 1146 (42S02): Table 'peq.tblloginserveraccounts' doesn't exist

lerxst2112
10-13-2011, 04:51 PM
The database name you want to use for that step is PEQLoginDB assuming you followed the guide.

Lazzeraith
10-13-2011, 05:40 PM
So this ,,mysql -u root -p peq,, should be mysql -u root -p peqlogindb ?

Lazzeraith
10-13-2011, 06:13 PM
Thanks that was it. Ok I have finished the rest of the quide. Here is the question, how do you start this and how do you create accounts?

Sorry for all the dumb questions.

lerxst2112
10-13-2011, 09:48 PM
You start it with the start.bat file in the server directory.

You create account by using this query again with different values:

INSERT INTO tblLoginServerAccounts (AccountName, AccountPassword, AccountEmail, LastLoginDate, LastIPAddress) VALUES('huppyname', sha('huppypassword'), 'fakename@hotmail.com', now(), '192.168.1.103');

Lazzeraith
10-14-2011, 05:42 AM
OK, I cannot find start.bat anywhere ;/ I did find a serverstart.bat..

cd C:\eqemu
start eqemuloginserver.exe
echo
echo

cd C:\eqemu
start world.exe
echo waiting a bit for world to finish loading...
echo.
echo.
ping -n 10 127.0.0.1 > nul

echo starting zone
start eqlaunch.exe zone
exit

This the same?

Lazzeraith
10-14-2011, 05:58 AM
That worked kinda, I am getting the Error: 10061. It could not connect to the loginserver 192.168.0.12:5999. What file do I need to go to so I can check these settings?

Lazzeraith
10-14-2011, 06:44 AM
Changed from :5999 to 5998 in settings, but getting this error now ;/

http://s1194.photobucket.com/albums/aa370/kenlconne/?action=view&current=Launcherror.jpg

bishop91
10-14-2011, 11:17 AM
Is there a way to put a range of IP Addresses into this? I use DHCP on my lan and I would rather not have to static IP all of my pcs if I can. Or does this line not really block an account from logging in based on IP?

You start it with the start.bat file in the server directory.

You create account by using this query again with different values:

INSERT INTO tblLoginServerAccounts (AccountName, AccountPassword, AccountEmail, LastLoginDate, LastIPAddress) VALUES('huppyname', sha('huppypassword'), 'fakename@hotmail.com', now(), '192.168.1.103');

Caryatis
10-14-2011, 12:07 PM
I think if we removed all references to minilogin and the eqemuloginserver, it would be 10x easier for people to get servers running.

Seems like everybody who can't run a server feels the need to run minilogin or run their own login server(which is completely pointless for 99% of people).

If you don't even know that SQL commands don't go into a command prompt, you should not be trying to set up your own login server as well. Get a server running on the public login... then if you can think of a reason to run your own login, then try.

joligario
10-14-2011, 03:39 PM
Reading my mind... :)

sorvani
10-14-2011, 09:54 PM
Caryatis nailed this one. But aside from that, Reserved DHCP is your friend. If your router can't do that, then get a new one.

Lazzeraith
10-14-2011, 11:25 PM
So your point is to not try and help then?

trevius
10-14-2011, 11:57 PM
Their point is that you are trying to do something that is probably more advanced than you can handle. Many have done this before, so it does work when done properly and you already have a 3 page support thread on it so far.

Unless you will not have internet connectivity when you are playing, there is almost no reason to do a private server setup. Minilogin is terrible, and the EQEmuLoginServer can be a little tough to get setup properly. Making a public server that uses the public Login Server is far easier than either of the private solutions and you can still run it like a private server, just not offline.

This thread is getting long enough that anyone that hasn't already been following it from the start isn't going to want to get caught up on the whole story (myself included). If you really have to run a private server and want to get better support, you might want to try solving 1 issue per thread. Maybe make a new thread explaining your current issue and stuff without going over all of the stuff that may have already been resolved.

Most people just use a public server setup, at least initially. Since less people use private servers, it means there are less people with the right experience to help support you.

Lazzeraith
10-15-2011, 12:02 AM
mysql> INSERT INTO `tblworldserverregistration` (`ServerID`, `ServerLongName`, `
ServerTagDescription`, `ServerShortName`, `ServerListTypeID`, `ServerLastLoginDa
te`, `ServerLastIPAddr`, `ServerAdminID`, `Note`) VALUES ('1', ' longname', 'Se
rverTagDescription', 'shortname', '2', NULL, NULL, '1', NULL);
Query OK, 1 row affected, 1 warning (0.03 sec)

What does the 1 warning mean?

Lazzeraith
10-15-2011, 12:06 AM
Their point is that you are trying to do something that is probably more advanced than you can handle. Many have done this before, so it does work when done properly and you already have a 3 page support thread on it so far.

Unless you will not have internet connectivity when you are playing, there is almost no reason to do a private server setup. Minilogin is terrible, and the EQEmuLoginServer can be a little tough to get setup properly. Making a public server that uses the public Login Server is far easier than either of the private solutions and you can still run it like a private server, just not offline.

This thread is getting long enough that anyone that hasn't already been following it from the start isn't going to want to get caught up on the whole story (myself included). If you really have to run a private server and want to get better support, you might want to try solving 1 issue per thread. Maybe make a new thread explaining your current issue and stuff without going over all of the stuff that may have already been resolved.

Most people just use a public server setup, at least initially. Since less people use private servers, it means there are less people with the right experience to help support you.

I just want to play EQ with my kids on our own server, I already tried the public one, with no luck, thought to try a private lan server, figured it would be easier. I guess I'll try the public one again if it is suppose to be easier. Sorry to be a bother.

Caryatis
10-15-2011, 12:17 AM
1.) Configure your eqemu_config.xml as detailed in many places.

2.) Run world.exe

3.) Run zone.exe after the world window stops outputting stuff

4.) See server on select screen and login

Steps 2 and 3 will eventually be combined into a bat file(as well as using eqlaunch to load your zones), but this is the most basic way and easiest way to get onto your server.

If you get to that point and can log in, then start making changes(like bat file).

Lazzeraith
10-15-2011, 02:48 AM
Thank you, tried the the way you said, just can't get past the error could not connect error 10061.

Thanks everyone for the help.

solid11
10-15-2011, 10:16 AM
It's true the public setup is the easiest IF, you plan to always use eqemulator.net as your proxy and you always plan to have internet access in your home. I came back after a few years break and there is no current walkthrough that uses up-to-data server code and new eqemuloginserver files. Most are a year or more old and there have been several changes since.

Even then I still had to sort through about 4 different walkthroughs to get it going but

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

seemed to be the best as long as you follow it exactly and use those versions of perl and mysql listed, else you get a fail on compiling new server source.

It's a good link to follow also if you don't plan on installing C++ 2008 or compiling your own build and just skip those steps and download newest build on the compiled binaries link on the left side of home page.

In summary, if you don't plan on learning to use navicat lite to manage your accounts and give gm access to any of your toons and you plan on playing strictly legit, then no reason to use eqemuloginserver at all.

Caryatis
10-15-2011, 11:22 AM
In summary, if you don't plan on learning to use navicat lite to manage your accounts and give gm access to any of your toons and you plan on playing strictly legit, then no reason to use eqemuloginserver at all.

Neither of those are reasons to use the eqemuloginserver. There are 2 valid reasons for using it, if you only want to play offline on your LAN or you wish to set up a secondary login for when the public login is down. Both of those apply to a very small segment of the population.

Valorborn
05-13-2012, 01:57 PM
Neither of those are reasons to use the eqemuloginserver. There are 2 valid reasons for using it, if you only want to play offline on your LAN or you wish to set up a secondary login for when the public login is down. Both of those apply to a very small segment of the population.

Unfortunately this applies to me. I'm military and not all deployments have public internet access.

Despite that though. Before today I had only ever heard of Perl and Sql but following the guides with them was easy enough.

The problem with the guides is that every damn one of them references a version of Perl that is no longer available. I can understand the older guides doing this as they where written when 5.10 was new (2010) and available on the ActiveState site.

The only other place for confusion that I've encountered today was some of the EQ files that we download, the database, quest, and sever builds are different versions than when the guide was created. Resulting in portions of the guide to be inaccurate based on the current files.

Honestly I'm happy these guides even exist and the possibility is there. Had I found this all out sooner I'd like to think I would have contributed.

All that leads up to the burning question. With all the help and support you guys have been providing why isn't/aren't:

-Perl 5.10.0.1:1007 available to download with the database or server files?
-Why is this guide not in the Wiki where users can update the links and steps as the referenced files change?

There is like no end to people fumbling around with different versions of perl trying to get it to work and asking for help on the forums. Most of their Perl journeys probably went like mine has when I began my endeavor. I know this all seems like kid stuff to you now but consider if you've never heard of Perl and all you have is a link saying you need it to get what you want to work to work.

-Click link provided (thank you guide writer).
-Version listed on page isn't the same...no problem find search bar
-Search site for 5.10.0.1......$750!!!
-Search Google...Why has Google Failed me!
-Find Strawberry Perl....Oh I like Strawberries.
-Observer that every possible version but the one in the guide is available...On forums asking for help.

That's my Perl adventure. I tried using 5.12 with changing the .dll files to 5.10. I stopped receiving an error but it didn't actually work. That was the only work around I've found so far.

If I can find that elusive version of Perl I'll put it up on an FTP site for everyone or put up a standing offer to email it out on request.

lerxst2112
05-13-2012, 06:48 PM
If ActiveState decides to remove old versions of Perl there's really nothing anyone can do about it. It wouldn't be legal to distribute with the server/database files.

Perl 5.12 works fine. If you had trouble with it then there must be something else wrong, and your logs would probably help to narrow it down.

The guide is not on the wiki because nobody has put it there. If you would like it on the wiki you could put it there yourself.

Uleat
05-13-2012, 07:19 PM
I've found a simple 4-step process that makes finding a solution almost fool-proof.

Step 1: Don't piss off the Dev's

Step 2: Don't piss off the Dev's

Step 3: Do a thorough search on your problem (usually 4-6 months is current enough to find an answer. I've seen every new 'common installation problem' post answered repeatedly over the course of the entire previous year.)

Step 4: Don't piss off the Dev's



There has been some discussion about someone taking up a wiki. The basic steps of server installation are the same regardless of what type of server you run and of what SVN revision your source code, peq database, maps and quests use. Only the configuration files change based on your particular setup.

I've read that Unix users can use any compiler they want. I'm not sure if your issues are related to your using 'Bloodshed' (what you posted on the other thread) or not.

I believe the VS2008 .iso can be downloaded without a registration requirement now. You might try that before giving up on the perl 5.12 solution.

As far as finding 'it' and hosting 'it' ftp, I can't tell you what to do..but don't post that your hosting an illegal download on this website, whether public or private, or you'll find yourself banned for life.

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


U

Valorborn
05-13-2012, 08:44 PM
If ActiveState decides to remove old versions of Perl there's really nothing anyone can do about it. It wouldn't be legal to distribute with the server/database files.

Perl 5.12 works fine. If you had trouble with it then there must be something else wrong, and your logs would probably help to narrow it down.

The guide is not on the wiki because nobody has put it there. If you would like it on the wiki you could put it there yourself.

Are you sure that distributing software that was once free is illegal? If that's the case though then it explains why it is't available and I won't be looking for it to download then.

I'll make it a point to not piss the dev's off. Its a new day to re-engage and I have 13 hours and 15 minutes until my midnight party for D3 so here goes!

I am sure I did something wrong. I'm going to re-engage again. I didn't realize a fire beetle could upload docs to the wiki so I'll do that when I have something wiki-worthy.

Thank you for the suggestions,


Valorborn

Uleat
05-13-2012, 09:33 PM
That's one of the main differences between 'free' copyrighted material and open-source material. They can decide at any time how their code may be distributed, as you found out by the $750 cost for the 'professional' version.

As far as writing a guide, I can only say there is an immense amount information that you will need to research and understand to make a complete guide. I've considered it myself, but there is a lot that I can't test with my limited setup and I'm nowhere near being qualified to answer questions outside my domain.

I'm not trying to discourage you from this effort, rather the opposite. And since it's a wiki, the open-edit should allow people the ability to make changes or add to something if you're unsure about a certain situation.

I, too, was trying to stir up the hornet's nest abit with the perl issue. There's some contraindictions regarding which versions of perl and visual studio will compile, and the person working on that is quite knowledgeable. I just don't want to be the one pushing buttons :)

If you're still having issues with compiling binaries or configuration, don't give up. This is a very helpful community! (The only stories that I've heard of people not getting their server up and running are those where the person gave up...)


U

Myrakkel
08-14-2012, 01:22 PM
I setup my LAN server in late 2003 and it has been up ever since. There have been major changes in tutorials and a few botched trial and error database conversions but all-in-all; nothing has changed much. I, honestly, love minilogin and have never had a problem with it; granted 6.2 is a hellofalot better than 6.1! Google search for: ActivePerl-5.10.1.1007-MSWin32-x86-291969 if you still need it. This is the version of perl that has worked for me and I found it in Google a few seconds ago and never saw a price tag on it.

Keep trying, you may be bald from pulling your hair out before it is all over but you will get there. I knew crap about SQL nor Perl before I started venturing into server creation. The fun is the journey. Just keep retracing steps, and wiping, and retracing steps and wiping, .... eventually the server works. Stop wiping the hard drive after that.

marvandmartian
08-18-2012, 10:04 PM
I can honesly say I had the same problem building my server. I followed 4 or 5 different guides and ended up using little pieces from all of them. The hardest part by far was realising I did not have the proper version of the software I was using and going out looking for another copy to try. If you look hard enough they are all out there even the mysql. I ended up finding a site that had every version of release. Perl was just as hard. As soon as I got all versions to the exact version the guides were asking for the server came together perfectly and seems to run amazing.