I made this because i noticed alot of people dont know how to compile Trinity core or any kind of core.
INTRODUCTION
Before you get scared by this long guide, we assure you the procedure is quite simple. Most of the following steps are to be performed only the first time you install Trinity and only the Trinity updating procedures will need to be run from time to time.
After the first few times everyone gets used to the procedure and never needs to look at this guide ever again.
Software Required
TortoiseHG:[Only registered and activated users can see links. ]
VisualStudio 2008:[Only registered and activated users can see links. ]
MySQL server:[Only registered and activated users can see links. ]
.NET Framework 3.5:[Only registered and activated users can see links. ]
SQLYog:[Only registered and activated users can see links. ] Or MySQL GUI Tools:[Only registered and activated users can see links. ]
PULLING AND COMPILING THE SOURCE
Before you start this phase you need to have installed TortoiseHG and Visual Studio.
Pulling the Source
Create a directory in which Core files will be pulled (for example: C:\Trinity).
Right-click on the directory and click on 'TortoiseHG' -> 'Clone a Repository'.
Fill in the data as follows:
Click on 'clone'. Wait a few minutes (or less) and all the files will be pulled in the directory C:\Trinity.Code:Source Path: https://trinitycore.googlecode.com/hg/trinitycore Destination Path: C:\Trinity
Compiling the Source
Open the solution file C:\Trinity\win\TrinityCore&Script VC90.sln (VS 2008).
Go on the top menu 'Build' and click on Configuration Manager. Make sure you set the build to 'release Win32' or 'release x64' depending on the Operating System Trinity will be running on.
Now go back to the 'Build' menu and click on 'Clean Solution'. Unless you are just testing a compilation, it is always best to clean your build before compiling your new Trinity revision. Compilation length differs from machine to machine, you should expect it to take 15-30 minutes.
You will find the following message once the compilation has finished successfully:
You will find your freshly compiled binaries in the C:\Trinity\bin folder.Code:========== Build: 10 completed, 0 failed, 0 up-to-date, 0 skipped ==========
Keep the following files:
Delete any other file which is not in the above list, you will not need them. Keep the AuctionhouseBot readme files, they will come in handy in future once you are comfortable with Trinity and want to try some of its many advanced features, such as the AHBot (See also the related DB table) [Only registered and activated users can see links. ]Code:ACE.dll libeay32.dll libmySQL.dll README README.AHBOT ssleay32.dll TrinityCore.conf.dist TrinityCore.exe TrinityRealm.conf.dist TrinityRealm.exe
Keeping the code up to date
TrinityCore Developers are always at work fixing and adding new features to the core. You can always check them here
[Only registered and activated users can see links. ] or by using the ToroiseHG View Changelog option.
Simply right-click on your C:\Trinity folder and click on 'TortoiseHG' -> 'Synchronize'. Click on the button 'pull' at top of the window and it will start pulling the new/updated files. Once it is finished click on 'Update to Branch Tip' at the bottom of the window and you are done! Now you can repeat the compiling procedure above.
It is always best to remove the binaries from the C:\Trinity\bin folder every time you compile a new revision (and remember to clean your build).
INSTALLING THE DATABASES
Before you start this phase you need to have installed TortoiseHG, MySQL Server and SQLYog (or MySQL GUI Tools).
Pulling the Source
Create a directory in which DB files will be pulled (for example: C:\TDB).
Right-click on the directory and click on 'TortoiseHG' -> 'Clone a Repository'.
Fill in the data as follows:
Click on 'clone'. Wait a few minutes (or less) and all the files will be pulled in the directory C:\TDB.Code:Source Path: https://trinitydb.googlecode.com/hg Destination Path: C:\TDB
Installing MySQL Server
When configuring MySQL make sure you remember the password you set for the default root account and that you enabled both MyISAM and InnoDB engines.
You can leave all the other settings as default. You might want to enable remote access to your MySQL server if your are also testing a website for your Trinity server or if you have friends testing with you which need access from remote. Remember that this will decrease the security level of your MySQL server!
Installing The Trinity Databases
Trinity needs three databases to run:
The first two are to be taken from the Core directory, the world DB is to be taken from the TDB directory.Code:realmd - holds accounts data. characters - holds characters data. world - holds game-experience content such as spawns, stats, quests, etc.
1) Create the three databases by importing C:\Trinity\sql\create_mysql.sql. You now have three databases called realmd, characters and world.
2) Import realmd database structure by importing C:\Trinity\sql\realmd.sql in the realmd DB.
3) Import characters database structure by importing C:\Trinity\sql\characters.sql in the characters DB.
4) Unzip C:\TDB\full_db\TDB_333.9.29_7924.zip and import world DB structure and contents by importing TDB_333.9.29_7924.sql in the world DB.
5) Import this file to update world DB with procedures C:\TDB\updates\332.8\29_procedures_world.sql.
6) Import all *.sql update files from C\Trinity\sql\updates which start with a number above '7924' so that your DB structure is up to date with the revision you just pulled and compiled.
Note: Now your world DB structure is for TrinityCore revision 7924. You need to import the update files to have the proper world DB structure for the revision you just pulled and compiled.. You will notice they are all named XXXX_world_tablename.sql or XXXX_characters_tablename.sql or XXXX_realmd_tablename.sql, and you need to import the *_world_*.sql files only!
Keeping the DB up to dateCode:XXXX_world_tablename.sql -> World DB XXXX_characters_tablename.sql -> Characters DB XXXX_realmd_tablename.sql -> Realm DB
TDB Developers are always at work fixing and adding new data to the DB. Unlike Core development, DB updatepacks come more on a 1-2 times a month basis with many fixes from the forum and a lot of new data from the Developers and contributors.
Simply right-click on your C:\TDB folder and click on 'TortoiseHG' -> 'Synchronize'. Click on the button 'pull' at top of the window and it will start pulling the new updatepack. Once it is finished click on 'Update to Branch Tip' at the bottom of the window and you are done! Now you can repeat the compiling procedure above.
SETTING UP THE SERVER
Now that you have the Source compiled and the Databases installed, you need to set up the server.
Extracting dbc, maps and vmaps files
In order to run Trinity needs dbc and maps files. In addition, if you want to enable vmaps (mobs not seeing through walls, etc) you will need to extract them as well. Warning: use Trinity's extractors. If you use extractors from other projects it is almost certain that your Trinity Core will not recognize the extracted data!
dbc and maps files
Find the application C:\Trinity\contrib\extractor\ad.exe and place it in your WoW Client directory. Before running this application, run your Client once (the login screen is enough). You need to do this so that the 'ad.exe' knows where your Client is and where to extract the files from.
Now you can run 'ad.exe' and you will find two directories in your WoW Client called 'dbc' and 'maps'. Move them where your Trinity binaries are (C:\Trinity\bin\Win32_release or C:\Trinity\bin\x64_release).
vmaps (optional)
You can also extract vmaps which will take quite a while depending on your machine (1-2 hours).
Copy all files from C:\Trinity\contrib\vmap_extract_assembler_bin\ to where all your binaries, dbc dir and maps dir are. Run makevmaps_SIMPLE.bat. It will take a long time. It will first create a directory called 'buildings'. Then it will start extracting files to the directory 'vmaps'.
You will not see any progress in the application's window or anything else. You will just notice files being created in the 'vmaps' folder as it is proceeding. Do not stop the process. It will ask to "press any key" to terminate the program when it is finished.
Configuring the Server
First of all you need to change the extension of TrinityCore.conf.dist -> TrinityCore.conf and TrinityRealm.conf.dist -> TrinityRealm.conf (make sure you enabled "show known files extensions" in the Windows folder option). Then you can edit them.
TrinityCore.conf
Edit MySQL account username and password (instead of trinity;trinity).
If you extracted vmaps then edit the following:Code:LoginDatabaseInfo = "127.0.0.1;3306;trinity;trinity;realmd" WorldDatabaseInfo = "127.0.0.1;3306;trinity;trinity;world" CharacterDatabaseInfo = "127.0.0.1;3306;trinity;trinity;characters"
TrinityRealm.confCode:vmap.enableLOS = 1 -- set this to 1 vmap.enableHeight = 1 -- set this to 1 vmap.ignoreMapIds = "369" vmap.ignoreSpellIds = "7720" vmap.petLOS = 1 -- set this to 1
Edit MySQL account username and password (instead of trinity;trinity).
Realmlist tableCode:LoginDatabaseInfo = "127.0.0.1;3306;trinity;trinity;realmd"
You need to make sure that TrinityRealm.exe directs incoming connections to your realm. In the realmd DB there is a table called realmlist. You need to edit the field address according to your needs:
Warning: The TrinityCore Development Team and Owners and the TrinityDB Team and Owners DO NOT in any case sponsor nor support illegal public servers. If you use these projects to run an illegal public server and not for testing and learning it is your own personal choice.Code:127.0.0.1 -- Leave default localhost if you are connecting alone from the same machine Trinity runs on. LAN ip -- Use the machine's LAN ip if you want other computers from the same network as Trinity's to connect to your server. Public ip -- Use your public ip if you have friends and testers which need to connect your server from the internet.



LinkBack URL
About LinkBacks




Reply With Quote




Bookmarks