Hi all , this is my contribution to all people who wants a server for play on lan. Of course this is for windows 32x system.
I know my english arent perfect and sorry for that but im from Spain , then my english its a bit poor. Now time to work :
1- You need follow exactly the public guide till the Cmake Build point.
You gonna build the executables of the server , make the next :
Launch your CMake program, typically labeled CMake (cmake-gui). Eg: Start -> CMake 2.8 -> CMake
To the right of the 'Where is the source code' box, click 'Browse Source' and expand the tree, C:\EQ\, click once on Source and then click OK, so the entry in the 'Where is the source code' box should read C:/EQ/Source/
To the right of the 'Where to build the binaries box', click 'Browse Build', expand the tree down to C:\EQ\Source. With 'Source' highlighted, click 'Make New Folder'.
Name the new folder Build and click OK. The 'Where to build the binaries box' should now have C:/EQ/Source/Build in it.
Click on Configure.
Now in the red list you see click with mouse all things you want how bots , etc but the most important click the build login. The hit configure again and when finish hit generate button. If you follow step by step and fine the guide all gonna be ok.
2- Build the executables using Visual Studio
In Windows explorer, navigate to C:\EQ\Source\Build and double-click on EQEmu.sln (if you don't see the .sln suffix, it is the file named EQEmu that has a Type of 'Microsoft Visual Studio Solution'.
Microsoft Visual Studio Express 2012 should open up. On the right hand side of the window you should see the 'solution explorer' with an entry called ALL_BUILD.
Right-click on ALL_BUILD and select Build.
3- Copying the executables to your server directory
First go into the C:\EQ\Source\Build\Bin\Debug folder and copy the following files:
shared_memory.exe, eqlaunch.exe, queryserv.exe, ucs.exe, world.exe and zone.exe
to your C:\EQ\EQEmuServer folder.
You may also copy all the .pdb files from C:\EQ\Source\Build\Bin\Debug to C:\EQ\EQEmuServer although this isn't strictly necessary. If EQEmu crashes and you have the .pdb files present in C:\EQ\EQEmuServer a crash report will be produced saying exactly whereabouts in the code the crash occurred. This can be useful when reporting crashes on the forums.
Next, go to your C:\EQ\Source\utils\patches folder and copy all the files from there to your C:\EQ\EQEmuServer folder.
Next, go to your C:\EQ\Source\utils\defaults folder and copy all the files and sub-folders from there to your C:\EQ\EQEmuServer folder.
Copy of course too your loginserver executable from c:/EQ/source/Build/bin/debug to c:/EQ/EQEmuServer
Download the file EQemuauthcrypto.dll and copy to your c:/eq/eqemuserver
Copy the following files from the \EQ\Source\loginserver\login_util folder to the \EQ\EQEmuServer folder.
Code:
login.ini
login_opcodes.conf
login_opcodes_sod.conf
"Creating a batch file to launch the server"
Add a line to the batch file to start the login server before the world.
Code:
@echo off
shared_memory.exe
start loginserver.exe
start world.exe
echo Waiting for the world to finish loading before starting zones...
ping -n 10 127.0.0.1 > nul
start queryserv.exe
start ucs.exe
start eqlaunch.exe zone
exit
Download and copy the Eqtime.cfg to c:/EQ/Eqemuserver folder
4-Download maps and quests
In your C:\EQ\EQEMuServer server folder, right click on the quests folder and choose "SVN Checkout"
In the "URL of repository" line copy and paste the following:
http://projecteqquests.googlecode.com/svn/trunk/quests∞
Change the Checkout Directory to:
C:\EQ\EQEmuServer\quests
(Then click on OK)
Ignore the warning that pops up saying the quests folder is not empty (click Yes).
Let it download the quests. It will show "At Revision xx when done.
Next, in your server folder, right click on the Maps folder and choose "SVN Checkout"
In the "URL of repository" line copy and paste the following:
http://eqemu-maps.googlecode.com/svn/trunk/
Change the Checkout Directory to Change the Checkout Directory to:
C:\EQ\EQEmuServer\Maps
(then click OK)
Ignore the warning that pops up saying the Maps folder is not empty (click Yes).
5-Copying quest plugins
Go to the C:\EQ\EQEmuServer\quests\plugins folder and copy all the files in there to the C:\EQ\EQEmuServer\plugins folder.
You will get a warning that the file check_handin.pl already exists. Select the option to overwrite the file.
Verifying that you have copied all the files into your server directory
In your eqemu (server folder) there should be 7 folders.
1. logs (this will be empty right now)
2. Maps (full of all the map files you downloaded)
3. plugins (has all the plugin files you copied from /quests/plugins folder)
4. quests (has all the quests you downloaded.)
5. templates
6. updated_templates
7. shared
6-Downloading, installing and updating the PEQ database
First, go to your C:\EQ folder and right click on the folder you made called SQL and choose "SVN Checkout"
In the "URL of repository" line copy and paste the following:
http://projecteqdb.googlecode.com/sv...atabase∞ (then click OK)
It will finish with "At Revision XX"
Next, go to the folder C:\EQ\SQL and unzip the file from peqdb_revNNNN.sql.gz
NNNN will be a four digit number that changes over time.
If double-clicking on peqdb_revNNNN.sql.gz does not launch 7-zip or your preferred unzipper, you may need to launch 7-manually (possibly using 'Run as Administrator' and go into the settings/options and tell it to associate it with .gz files).
Once you have the file opened with 7-zip, select extract and extract it to C:\EQ\SQL.
This file will be named peqdb_revNNNN.sql (without the .gz)
Now it is time to create the database.
Launch a command prompt window and navigate to your C:\EQ\SQL folder by typing:
cd c:\EQ\SQL
Then enter mysql -uroot -ppassword where password is the password you chose when installing MySQL.
You should be presented with a mysql> prompt.
Type: create database peq; and press enter.
Type: use peq; and press enter.
Note: Now that the database is created anytime you need to login to MySQL in the future, you can do it with a single line command.
mysql -uroot -pyourpassword peq
Type source peqdb_revNNNN.sql (replacing NNNN with the four digits depending on the latest version of the database that you downloads).
This may take a while to complete, depending on how powerful your PC is.
When the mysql> prompt returns:
Type: source load_player.sql and press enter.
If you plan on using Bots, also do the following:
Type: source load_bots.sql and press enter.
7- Now it is time to create the logindatabase
Launch a command prompt window and navigate to your C:\EQ\SQL folder by typing:
cd c:\EQ\SQL
Then enter mysql -uroot -ppassword where password is the password you chose when installing MySQL.
You should be presented with a mysql> prompt.
Type: create database login; and press enter.
Type: use login; and press enter.
Type: Source load_login.sql and press enter.
8- World Server registration
With heidi we gonna now the server registration login , then open heidi and hit on login database , be sure you have the arrow green on the login database , then copy this and edit later VALUES the things you need :
INSERT INTO `tblworldserverregistration` (`ServerID`, `ServerLongName`, `ServerTagDescription`, `ServerShortName`, `ServerListTypeID`, `ServerLastLoginDate`, `ServerLastIPAddr`, `ServerAdminID`, `Note`) VALUES ('1', 'NameOfyourServer', 'ServerTagDescription', 'ShortNameOfyourServer', '3', now(), 'yourIPlanAdress', '1', NULL);
9- Accounts for clients
With heidi again we gonna make now your account for play , then copy this :
• INSERT INTO tblLoginServerAccounts (AccountName, AccountPassword, AccountEmail, LastLoginDate, LastIPAddress) VALUES('Admin', sha('password'), 'admin@somewhere.com', now(), '127.0.0.1');
• Edit the above statement as follows:
• After “VALUES”, edit 'Admin' and 'password' to what you would like the login information to be. Edit 127.0.0.1 to the i.p. address of the client machine you will be logging in from.
• 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.
10- Finalize your connection settings files.
Login.ini
[database]
host = 127.0.0.1
port = 3306
db = login
user = root
password = eqemu
subsystem = MySQL
[options]
unregistered_allowed = TRUE
reject_duplicate_servers = FALSE
trace = TRUE
world_trace = FALSE
dump_packets_in = FALSE
dump_packets_out = FALSE
listen_port = 5999
local_network = 127.0.0.1
[security]
plugin = EQEmuAuthCrypto
mode = 5
[Titanium]
port = 5998
opcodes = login_opcodes.conf
[SoD]
port = 5999
opcodes = login_opcodes_sod.conf
[schema]
account_table = tblLoginServerAccounts
world_registration_table = tblWorldServerRegistration
world_admin_registration_table = tblServerAdminRegistration
world_server_type_table = tblServerListType
* I put my login archive exactly how run the server to me , i play with UF client then i put at listen_port entry the 5999 , if you are Titanium client change this to 5998.
* At Password entry i put my password , edit this with your own password.
Eqemu_config.xml
<?xml version="1.0"?>
<server>
<world>
<shortname>PEQ</shortname>
<longname>Valencia Power</longname>
<!-- Only specify these two if you really think you need to. (read: You don't) -->
<!-- <address>192.168.1.7</address> -->
<!-- <localaddress>127.0.0.1</localaddress> -->
<!-- Loginserver information. Defaults shown -->
<loginserver>
<host>127.0.0.1</host>
<port>5999</port>
<account>Admin</account>
<password>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="127.0.0.1" 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 port="9080" enabled="false" mimefile="mime.types" />
</world>
<!-- Chatserver (channels) information. Defaults shown -->
<chatserver>
<host>192.168.1.7</host>
<port>7778</port>
</chatserver>
<!-- Mailserver (in-game mail) information. Defaults shown -->
<mailserver>
<host>192.168.1.7</host>
<port>7778</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>127.0.0.1</host>
<port>3306</port>
<username>root</username>
<password>eqemu</password>
<db>peq</db>
</database>
<qsdatabase>
<host>127.0.0.1</host>
<port>3306</port>
<username>root</username>
<password>eqemu</password>
<db>peq</db>
</qsdatabase>
<!-- 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>
*I put the exactly copy of my file , edit the name of your server , your IP of LAN , and your password at the entries you need and the port of your client at the loginserver information section.
11- Read the guide again step to step for check you don't miss something
12- Check your Eqgame.exe and your eqhost.txt files with the things you need to log and play with your lan server.
EQgame.exe with the patchme thing.
EQhost.txt with the 127.0.0.1:5998 for titanium
EQhost.txt with the 127.0.0.1:5999 for SoD and + clients.
13- And this is all folks !!!!
*** I hope some admin of the forum put my guide how stick and at wiki for anyone loose this information.