Go Back   EQEmulator Home > EQEmulator Forums > Archives > Archive::Support > Archive::Tutorials/Howto's > Tutorials--Outdated Use the Wiki > Tutorials::Needs work

Tutorials::Needs work This is where tutorials get moved to that are incomplete or outdated

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #1  
Old 05-05-2004, 10:35 AM
maximo
Fire Beetle
 
Join Date: May 2004
Posts: 18
Default OUTDATED: Guide for Compiling EQemu w/ free trial VS.NET

Free compiler no longer available :(


OK, this guide lets you compile EQemu COMPLETLY FREE!! So far it has been tested and worked on Windows ME and XP. Should work on 95/98 too.

Got to http://vs03-us.protier.com/admin/ski.../vssignup.aspx and register.
(Choose 1-4 Developers, Other for job role, check all for boxes, make sure No is chosen). Check your e-mail. Click the link. Wait while it loads. Click ?Click here to access your server?.





Log in with password you are given in your e-mail.





If a window pops up click Yes.





Close the windows welcome:





Cancel the Download:





Go to ?Start -> Control Panel -> Add or Remove Programs?





Click Add/Remove Windows Components. Click Next. Click Finish when it?s done, close the other window.





Use Quick-launch icons to open Internet Explorer.






Download zlib 1.1.4 from http://www.gzip.org/zlib/

Unzip the compliled dll file to the desktop. Extract it with the option to preserve directory structure.

Download the latest EQemu (currently http://www.eqemulator.net/users/shaw...DR2-Source.zip) to the desktop, there are two so look at this picture:

Also download mysql.zip from my webspace, this contains mysql.h required as an include file.
http://www.freewebs.com/guidepics/mysql.zip
!!Right click save as, for some reason clicking it appears to open a window and link to the current page!!


Note to those security conscious people out there, yes I did include a zip I created however these files will never touch your computer as you're using the MS VS .NET trial on MS's server hence you are safe (though I assure you anyway the files are safe of virus/trojans etc.)





Right click on the downloaded file and select Extract all.








Copy the contents of the extracted mysql folder to the include folder in the extracted zlib directory.






Now open Microsoft Visual Studio .NET 2003, Go to the menu Tools/Options. In the folder pane, navigate to Projects/VC++ Directories, in the Show directories for dropdown select "Include Files"




To the bottom of the list add the path to the extracted zlib\include folder.

Now select "Library Files" and again add the path to the extracted zlib\include folder.





Once this is done you should be ready to compile!
Close VS .NET 2003 and open the extracted EQemu folder.
Double click on the Server.sln file.





When a window pops up asking to convert the files click Yes. Then make sure that the version is set to Release.






Go to the Build menu and select Build Solution.






Wait awhile until the Output window says:



and close the program(NOT THE SERVER WINDOW, if you close that window you will need to log back on).




Open the Build folder within the extracted EQemu folder, select from it, World.exe, Zone.exe and EMuShareMem.dll, right click them and choose to send them to a compressed file(the name of which will vary).






Open internet explorer, go to http://www.sendthisfile.com. Register for a new account then login and send the new compressed file to your e-mail.

CLOSE SERVER WINDOW!!(Yay!!) Go to your e-mail and download the file to your desktop. Right click the new file and select Extract all.

Extract the files to your EQemu Directory and hurrah! you've compiled your own EQemu


Log onto EQemu and have Fun!!


!!!NOTE!!!
(I can't remember 100% but think you may need to follow the following instructions below before compiling to get character creation working)



edit ..\common\eq_packet_structs.h

go down to struct CharCreate_Struct

add this on the end /*0140*/ int32 unknown140;

make sure this is at the end of the section have seen people put it in midway through by mistake...

Now edit ..\common\database.cpp. First make sure that all instances of 'result' are initialized to 0. I did this with a find and replace of 'MYSQL_RES *result;' with 'MYSQL_RES *result = NULL;'

Then, also in database.cpp in the function
Database::GetStartZone(), the make the following change. This bit of code...

if((rows = mysql_num_rows(result)) == 1)
row = mysql_fetch_row(result);
if(result) mysql_free_result(result);

...needs to be conditional upon result != NULL, like this:

if(result)
{
if((rows = mysql_num_rows(result)) == 1)
row = mysql_fetch_row(result);
if(result) mysql_free_result(result);
}

Aside from that. There was one instance of the pointer 'query' not being initialized before use. Make sure anything that looks like 'char *query;' becomes 'char *query = 0;'.



P.S. bits here and there are shamelessly stolen, credit goes to Gyrepin and ritojo for the two fixes to get char creation working


Finally IF this does not work for you please go back through and recheck every step of the way, in testing it works fine, if after you've checked and rechecked you have a problem please contact me.
 


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 01:04 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