This is not made by me or mmotop.org team !!!
Credits: Sounddead
How to Compile: ArcEmu
Compiling servers is becoming a lost art. Repacks are taking over the emulation scene, but you my friend, are going to put a stop to this repack nonsense and learn how to compile your own server. In this guide I've put together the basic steps in how to download source from a SVN, use a compiler, and give you basic knowledge on whats happening behind the scenes. I realize that there are quite a bit of these, but there is always room for improvement in all of them. I am merely giving users a choice at the guides they want to read. So don't reply saying this has already been done. I hope you enjoy the guide. NOTE: I left out the DBC, map, and DB set up. The reason I did this is because of the recent update to 3.0.2. When there is a 'Stable' version released, I will update this.
What you are going to need:
A C++ Compiler - A compiler takes the scripts it is given and compiles them into one big program. There are numerous different compilers that you can choose from with most having the same basic features. NOTE: This list is for information purposes only, we will go over downloading/installing later on in the guide.A Subversion client A subversion client allows the user to download, and stay updated on source code releases. It allows you to download things such as ArcEmu, Ascent, various databases, Lua projects ect.Downloading/Installing the Compiler:
Getting the Source Code:

Installing the ArcEmu libraries:
Open up your ArcEmu source folder, click branches, then extras, then arcemu-windows-libraries. Open up the read-me and follow the directions.
Where it says:
Copy the files in VC\include to VC\include.
Copy the files in VC\lib to VC\lib.
It means that you need to go into the folder VC in your arcemu-windows-libraries folder and copy the two folders inside VC called lib, and include. Now go into your Compiler directory (C:\Program Files\Microsoft Visual Studio 9.0\VC) and paste them there. It will ask if you want to replace files, click yes for all.
Compiling the Ascent Library source:
Once you have copied those files, navigate to your 'Sources' folder inside arcemu-windows-libraries and double click 'VC90-solution.sln'. It should open with Microsoft Visual C++. Now we are going to need to build the source. We need to change the build to release, to do this you need to go to the top of the program and there is a drop-down menu that has 'Debug', 'Release', and 'Configuration Manager'. Set it to release. (See Figure 2)
(Figure 2)

Now either point your mouse to the 'Build' option on the top menu and select 'Build Selection' or, press F7. It should start to compile, and you should not get any errors.

This will create a folder called Output_Release. Go into it and copy the 2 new files. Paste them in your C++ compiler's lib directory. (C:\Program Files\Microsoft Visual Studio 9.0\VC\lib) Now get the 2 DLL files from your arcemu-windows-libraries and copy them too your System32 folder (C:\Windows\System32). You only have to do this once per compiler. You can now compile ArcEmu!
Compiling Collision:
Go into Trunk> Extras> Collision> Collision_DLL. Double click on 'collsion_VC9.sln' set the build to release like the same as the libraries and click build. It should compile with no errors. You will have to use v_maps to enable collision. Collision comes highly recommended, and fixes many of the in-game walking through walls and other bugs.
Compiling ArcEmu:
Go into your ArcEmu source folder, click 'Trunk' and then 'Win'. Now double click on arcemuVC90.sln. Set the build to release like we did with the libraries, and click build. This takes about 10 minutes, so go check your favorite forums and such. You should get a message at the end saying 3 succeeded. If you don't, make sure you installed the libraries correctly, and double check you compiled collision.
Compiling Scripts:
Go into Trunk> SRC> Scripts. Double click on 'scripts2008.sln'. Set the build to release and click build. This takes a bit so check your forums again :P. It should compile with no errors. It should tell you that you successfully built 6 scripts. If it says any where skipped, please refer to my Q&A.
Making your server folder and adding the core to it:
Make a new folder for your server (Or use your old one if you already have a server). Call it whatever you want (I called mine 'Server').
Now, go into Trunk>Bin>Release. Copy 'arcemu-logonserver.exe' and 'arcemu-world.exe' to your new Server folder.
Make a new folder in your new Server folder called 'script_bin'. Now go into your Trunk>Bin>Release>Script_bin. Copy all of the DLL's and paste them into your new script_bin folder.
Now go into Trunk>src and copy the configs folder. Paste it into your new Server folder.
You now have your core files! You have officially compiled your very own ArcEmu Server!
NOTE: This is only a guide for compiling! You will not be able to start up your server without setting up a database. I will make another guide on that if it is requested. I also don't really expect this to be much of a hit, but hopefully it will help some people out.
Bookmarks