** Linux Instructions At Bottom **
Included Software and Versions
MariaDB(mysql) -- 10.4.12 (https://downloads.mariadb.org/)
Unrar -- 5.90 (https://www.rarlab.com/)
Wget(windows) -- 1.20.3 (https://eternallybored.org/misc/wget/)
HeidiSql -- 11.0.0 (https://www.heidisql.com)
Zeklabs.com EQ2emu -- Git Live (http://cutpon.com:3000/devn00b/EQ2EMu)
The default password for MYSQL root user is blank (Localhost only).
The user/password for Login and Mysql is eq2emu/eq2emu.
** Please note that this version of the EQ2Emulator CAN NOT connect to the main EQ2EMu login server. This is due to our updated
encryption method EQ2EMu currently uses MD5 (Weak) and we use SHA512 (Quite Strong). We are working to bring the main
EQ2EMu project uptodate in this regard.**
I have included HeidiSQL to the installer, you can use this to do any database edits required (such as GM powers and such).
Server Update Options:
In file launch.bat you will find the following options (All Default 1 Except EXEUPDATE):
SQLUPDATE - Update the database (1 on 0 off). *** THIS WILL ERASE ALL CHARACTERS ***
EXEUPDATE - Update the Loginserver/Worldserver to the most recent build (1 on 0 off).
LUAUPDATE - Update the LUA Scripts (1 on 0 off).
MAPUPDATE - Update the 3d Maps/Navmesh (1 on 0 off).
SENDBUGS - Sends bug reports (created in game with /bug) to zeklabs.com.
STRUCTCHK - Check for updated structs. This is forced on with EXE updates enabled. (1 on 0 off)
In LoginServer.ini You can set your server name Worldname=<Your Server Name>. Default Login Server
Username/Password is eq2emu/eq2emu.
Mysql Options (Optional):
In file my-large.ini(mariadb\bin\ directory), Set thread_concurrency = to number of cpu's * 2. So if you have
8cores set it to 16. The default is thread_concurrency = 2 (4 cores).
Inside the server directory (Default C:\EQ2EMu-Zeklabs) there is a file called options running it will give you the
1) Update SQL. (SAME AS SQLUPDATE=1)
2) Update LUA. (SAME AS LUAUPDATE=1
3) Update EXEs. (SAME AS EXEUPDATE=1)
4) Update MAPs. (SAME AS MAPUPDATE=1)
5) Update Structs. (SAME AS STRUCTCHK=1)
6) Update Startup Script. (This will update LAUNCH EQ2EMU.bat)
7) Full Rebuild (update DB/LUA/SQL/MAPS after delete. This will take a long time).
** Linux Installer **
The Linux installer is really simple. Its a bash script that does the following
1) Installs the packages needed to compile the server (Login/World/Recast)
2) Creates a working directory in /home/eq2emu/
3) Downloads the latest source via Git
4) Downloads premake5 from github and builds it
5) Downloads fmtlib from github and builds it
6) Compiles World and copies it to /home/eq2emu/server
7) Compiles Login and copies it to /home/eq2emu/server
8) Creates a startup script to start the server
** Linux Startup Script **
The startup script does the following
1) Checks if its first run (via installconfig.conf)
1a) If its first run it does the following
1b) Asks for MYSQL User/Password/EQ2EMu DB name
1c) Adds the data to a file (installconfig.conf) for use later.
1d) Loads nano to edit the ini files (setup your user/pass for mysql)
1e) Downloads and installs the LoginServer DB
2) Not first run, so we attempt to update the following:
2a) SQL Either 1 for Complete DB update or 2 for Partial (no character table/guilds)
2b) Source updates. We also Update the Structs just in case
2c) LUA Updates
2d) Map Updates from Git
2e) LoginServer Updates
3) Start the server using Screen (launches in background)