TrinityCore3.3.5環境搭建

說起TrinityCore,可能知道的人不多,但是說起MaNGOS(芒果)知道的人應該就不少了。MaNGOS是一個魔獸私服服務器端,TrinityCore繼承自TrinityCore並且做了優化,一直在更新,實屬難能可貴,尤其是對於遊戲服務器開發人員來說,更是一份不可多得的學習資料。

看看官網上這段話:“TrinityCore is an MMORPG framework that's built using C++, and using a back-end of MySQL for the DB content. Trinity was at one point a merger of MaNGOS with many patches submitted by users, that is no longer the case. Trinity is an individual project with a diverse development team, We love to hear from our users too, whether you want to give words of encouragment or if you have code for us to merge into the repo. Trinity has been cleaned up a lot, and will continue to be cleaned up and optimized over time. "

下面來看看怎麼搭建TrinityCore的運行環境,網上可以搜到TrinityCore的一鍵安裝,但是我們的目的是爲了學習TrinityCore的代碼,所以我們會自己編譯server端。(向偉大的”牆“致敬,dropbox被封掉導致TrinityCore的數據庫文件無法下載,還好我使用雲盤搜索大法,驚奇的搜到了某位兄弟分享的一個數據庫文件)用到的所有文件我都會給出國內雲盤的分享地址。

注:目的是爲了搭建一個可調試的server端,所以選擇比較老的版本TrinityCore3.3.5,並且不會升級。


以下都是在win下進行,搭建32爲TrinityCore運行環境。

Requirements

GitExtensions 提取碼 45da
Boost ≥ 1.49  提取碼 96b7
MySQL ≥ 5.1.0 提取碼 ea11
OpenSSL ≥ 1.0.0 提取碼 367a
CMake ≥ 2.8.12 提取碼 0ccd
ZeroMQ ≥ 3.2.4  提取碼 db3d
MS Visual Studio 2013 express 提取碼 76bd

下面是TrinityCore3.3.5.57自身的東西 提取碼 3161

如果你需要下載魔獸世界客戶端,請確保耐心和網速至少擁有一樣。

環境搭建:

1:安裝GitExtensions(一定要安裝,雖然源碼我也會提供,cmake需要用到),確保Git, MySYSGit, and KDiff三個都要選擇安裝,在git安裝過程中選擇”Run Git from the Windows Command Prompt“

2:安裝vs2013,不多說了,地球人都知道

3:安裝mysql,要記住自己設置的root的密碼,字符集選擇utf8,安裝中選擇加入環境變量。

4:boost,直接使用我上文提供的編譯好的安裝文件即可,安裝完成後,設置環境變量BOOST_ROOT=你安裝的boost的根目錄

5:cmake,一路默認安裝

6:openssl,其中有一步需要留意,就是會讓選擇把openSSL的dll拷貝到哪,要選擇The OpenSSL binaries (/bin) directory

7:zeroMQ,一路默認安裝


上面7個步驟安裝完成之後,開始編譯TrinityCore。

1:解壓TrinityCore-TDB335.57.zip,TDB_full_335.57_2144_10_19.7z,並且在它們的同級目錄下建立build目錄,所以看起來是這樣的。


2:打開cmake-gui,如下配置


然後點擊configure,選擇vs2013編譯器,然後會開始生成vs2013工程文件,完成後如下


如果你看了官方教程,它會讓你選擇TOOLS,然後重新configure一次,選擇TOOLS是爲了生成從客戶端提取配置文件的工具,所有配置文件我都會打包送出,所以我們可以跳過官方這一步,直接Generate即可。

3:進入build目錄,打開TrinityCore.sln,選擇release模式,編譯。

編譯完成後,進入build\bin\release目錄,會看到

worldserver.conf.dist 
worldserver.exe 
authserver.conf.dist 
authserver.exe

這四個文件,把現在的config內的幾個壓縮文件解壓到build\bin\release目錄,然後把

libmySQL.dll - C:\Program Files\MySQL\MySQL Server 5.x\lib
libeay32.dll, ssleay32.dll - C:\OpenSSL-Win32\bin

libzmq-v120-mt-4_0_4.dll - C:\Program Files\ZeroMQ 4.0.4\bin

這4個dll也拷貝到build\bin\release目錄內,現在build\bin\release目錄如下


4:導入數據庫

導入TrinityCore-TDB335.57\sql\create\sql_create.sql

選擇auth數據庫,導入TrinityCore-TDB335.57\sql\base\auth_database.sql

選擇characters數據庫,導入TrinityCore-TDB335.57\sql\base\characters_database.sql

選擇world數據庫,導入TDB_full_335.57_2014_10_19\TDB_full_335.57_2014_10_19.sql

選擇world數據庫,導入TrinityCore-TDB335.57\sql\updates\world\2014_10_19_00_world.sql

NOTE!!!,導入數據庫時候,查看auth數據庫的realmlist表,可以看到gamebuild字段爲12340,一定要改爲13930才行,

UPDATE realmlist SET gamebuild=13930 WHERE id=1;

如果不改的話,客戶端可以看到服務器顯示爲離線狀態,無法登錄(我會給你我的吐血經歷),分析見這裏http://blog.csdn.net/qq575787460/article/details/41446403

5:修改server端配置

進入bin\build\release目錄,authserver.conf.dist到新文件authserver.conf,拷貝worldserver.conf.dist到新文件worldserver.conf

打開authserver.conf,修改第140行LoginDatabaseInfo = "127.0.0.1;3306;root;root;auth",其中root,root是我的數據庫的用戶名root,密碼也是root(自行修改)

打開worldserver.conf,修改93---95三行

LoginDatabaseInfo     = "127.0.0.1;3306;root;root;auth"
WorldDatabaseInfo     = "127.0.0.1;3306;root;root;world"
CharacterDatabaseInfo = "127.0.0.1;3306;root;root;characters"

6:修改客戶端配置文件

確保客戶端已經打補丁到了3.3.5.13930版本,打開Data\zhCN\realmlist.wtf,修改前兩行

set realmlist 127.0.0.1
set patchlist 127.0.0.1

7:ok,現在已經搭建成功了,啓動authserver和worldserver,worldserver啓動成功後,可以輸入命令

account create username password創建一個帳號,打開客戶端,使用該帳號即可登錄


放一張圖片吧



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章