魔獸世界單機版巫妖王之怒WLK3.3.5(12340)最新TDB335.22101TrinityCore端編譯安裝文檔
2023-1-14 14:06:32 ? ienlaw
TrinityCore 資料
編譯配置詳細參考資料配合食用更佳
環(huán)境要求
TrinityCore Windows 編譯配置
1.環(huán)境配置
2.客戶端下載
3.編譯TrinityCore
4.提取客戶端數(shù)據(jù)
5.服務(wù)端配置
6.數(shù)據(jù)庫配置和更新
7.啟動服務(wù)器與創(chuàng)建賬號
8.客戶端配置
X.bug記錄
TrinityCore 資料
這里嘗試編譯的是比較成熟的3.3.5分支 WLK 巫妖王之怒 版本
官網(wǎng):https://www.trinitycore.org
源碼:https://github.com/TrinityCore
TrinityCore Windows 編譯配置
編譯配置詳細參考資料配合食用更佳
[TrinityCore 安裝指南(官方)]https://www.trinitycore.info/
[TrinityCore Windows配置文檔(漢化)b站]https://www.bilibili.com/read/cv20264045
環(huán)境要求
處理器支持SSE2
Boost ≥ 1.73 (推薦最新的穩(wěn)定版)
MySQL ≥ 5.7
OpenSSL = 1.1.x
CMake ≥ 3.18.4(推薦最新穩(wěn)定版)
MS Visual Studio (Community) ≥ 17.4 (2022) (Desktop) (Not previews) MS Visual Studio(社區(qū)) ≥ 17.4 (2022) (桌面版) (非預覽版)
我使用的 Visual Studio 2019 編譯成功
1.環(huán)境配置
Boost
選擇對應(yīng)版本下載安裝:https://sourceforge.net/projects/boost/files/boost-binaries/?選擇下載文件名boost_1_80_0-msvc-14.2-64
提示:boost 1.80 需要 CMake 3.24.2
文件名詳解: 1_80_0 對應(yīng)boost版本, msvc-14.2 對應(yīng)支持 Visual Studio 版本, 64 對應(yīng)64位, Visual Studio 版本對應(yīng)編號 2015 = v140,2017 = v141,2019 = v142,2022 = v143添加環(huán)境變量
BOOST_ROOT
到系統(tǒng)變量,值為Boost安裝路徑。手動選擇版本安裝配置
MySQL
下載安裝msi:https://dev.mysql.com/downloads/installer/(推薦安裝最新版本 8.0)
下載安裝zip:https://dev.mysql.com/downloads/mysql/(推薦安裝最新版本 8.0)MySQL -V 只能在安裝 MySQL 的服務(wù)器上執(zhí)行
status (\s)指令最為簡便,但也只能在 MySQL 的命令行客戶端(MySQL Command Line Client)中執(zhí)行
show variables like ‘%version%’ 和 select version() 最為通用,可以在 MySQL 的命令行客戶端和各種圖形客戶端(如 MySQL Query Browser, SQLyog, EMS SQL Manager)中執(zhí)行。
下載 Windows MSI 安裝程序。
向下滾動到底部,然后單擊“不,謝謝,帶我去下載!
運行安裝程序,選擇custom模式,這樣才可以選擇安裝路徑
選擇移動所有項目到待安裝列表。
點擊下方 advanced options 高級選項 設(shè)置安裝路徑,每一項都需要設(shè)置。
安裝快完成時,確保選中“啟動MySQL實例配置向?qū)А?,然后單擊“完成”?/p>
當MySQL實例配置向?qū)訒r,大多數(shù)默認選項都可以,但請記住您使用的用戶名和密碼(root//隨便什么,默認使用:wower)。您將需要它們登錄到您選擇的數(shù)據(jù)庫管理工具(如下),以便稍后導入SQL文件。
要測試MySQL是否正確設(shè)置,進入任務(wù)管理器,然后選擇“服務(wù)”選項卡。在服務(wù)列表中,您應(yīng)該看到狀態(tài)為“正在運行”的“MySQL”。
檢查版本:
OpenSSL
下載安裝:https://slproweb.com/products/Win32OpenSSL.html(查找最新的1.0.x或1.1.x64位版本,不是“輕量級”或3.x版本。NOT the "light" or 3.x version)安裝 OpenSSL 時,如果可以選擇將 OpenSSL DLL 復制到何處,請選擇 OpenSSL 二進制文件 (/bin) 目錄(The OpenSSL binaries (/bin) directory)而不是“Windows 系統(tǒng)目錄”。
這些 DLL 需要易于定位以進行核心安裝。 檢查版本:openssl version -a
CMake
下載安裝:https://github.com/Kitware/CMake/releases(推薦安裝最新版本 windows-x86_64.msi)
檢查版本:cmake -version
MS Visual Studio
下載安裝:https://visualstudio.microsoft.com/zh-hans/
安裝C++編譯器,詳細內(nèi)容見官方文檔https://www.trinitycore.info/install/requirements/windows
2.客戶端下載
客戶端文件較大先行下載
巫妖王之怒:https://www.wowdl.net/client/World-of-Warcraft-3.3.5a.12340-zhCN
其他版本:https://www.wowdl.net/fichiers/clients
百度網(wǎng)盤分卷壓縮:https://pan.baidu.com/s/1B6XrwG3T_HtkZRTHmTliow?pwd=mml2
編譯TrinityCore
下載源碼
先創(chuàng)建一個目錄作為根目錄,我這里創(chuàng)建在
J盤
下J:\Wower\TrinityCore
,注意目錄路徑中不能包含有空格或中文在目錄
J:\Wower\TrinityCore
中運行命令克隆分支源碼:這里選擇3.3.5分支對應(yīng)客戶端版本3.3.5a.12340 wlk?巫妖王之怒
git clone https://github.com/TrinityCore/TrinityCore.git -b 3.3.5
或手動下載https://github.com/TrinityCore/TrinityCore/archive/refs/heads/3.3.5.zip分支源碼壓縮包解壓到目錄
使用 CMake 配置和生成MS Visual Studio 項目文件
先在源碼同級目錄創(chuàng)建Build目錄
運行CMake GUI
單擊瀏覽源... -> 選擇源目錄 (J:\Wower\TrinityCore)
單擊瀏覽構(gòu)建... -> 選擇構(gòu)建目錄 (J:\Wower\TrinityCore\Build)
單擊“配置”
在彈出選項窗口中,確保選中“使用默認本機編譯器”(默認情況下應(yīng)選中)
在下拉菜單中,選擇您在“所需軟件”部分中下載的編譯器版本。如果您處理 64 位編譯,請務(wù)必選擇Win64 版本
單擊“完成”。
等等配置結(jié)束。
確保已選中工具tools。這將編譯稍后設(shè)置中所需的地圖提取器
檢查輸出日志確保沒有error相關(guān)消息,如果有則按錯誤對應(yīng)處理
單擊“生成”創(chuàng)建MS Visual Studio 項目文件。
生成成功后在Build目錄內(nèi)應(yīng)有
TrinityCore.sln
文件雙擊打開Build目錄
TrinityCore.sln
文件,或直接從CMake GUI點擊打開打開項目。在MS Visual Studio中確保選擇了
Release
和x64
。(Release
版擁有更快的運行速度,在稍后的提取客戶端數(shù)據(jù)操作中可以減少提取時間)單擊 生成 -> 生成解決方案 開始編譯TrinityCore,預計需要 5 到 30 分鐘
編譯完成后生成的程序文件在
J:\Wower\TrinityCore\Build\bin\Release
目錄中拷貝三個DLL文件到
J:\Wower\TrinityCore\Build\bin\Release
libmysql.dll
?-> MySQL安裝目錄 MySQL Server x.x\lib\libssl-1_1-x64.dll
和libcrypto-1_1-x64.dll
?-> openssl安裝目錄 OpenSSL-Win64\bin\
如果安裝有vcpkg ,并且vcpkg 安裝了 openssl 包,即使在vs項目設(shè)置中禁用vcpkg,編譯時依舊會使用vcpkg中的dll,錯誤版本的dll將導致
worldserver
程序崩潰!。
3.提取客戶端數(shù)據(jù)
把
J:\Wower\TrinityCore\Build\bin\Release
中以下5個文件拷貝到335客戶端目錄:
mapextractor.exe
mmaps_generator.exe
vmap4extractor.exe
vmap4assembler.exe
extractor.bat
前四個在二進制文件所在目錄,第五個在源碼\contrib
里如果在cmake配置中啟用了動態(tài)腳本SCRIPTS=dynamic,還需要復制
common.dll
文件運行extractor.bat,選擇4,把所有數(shù)據(jù)提取出來。這里可能需要幾個小時具體和電腦配置有關(guān)(我這里用了1個小時)
提取完成后把生成的目錄dbc,maps,vmaps,mmaps,cameras拷貝到
J:\Wower\TrinityCore\Build\bin\Release
目錄,也就是worldserver
所在的目錄
4.服務(wù)端配置
3.3.5 分支配置文件:
在J:\Wower\TrinityCore\Build\bin\Release
目錄,也就是worldserver
所在的目錄中,刪除配置文件authserver.conf.dist和worldserver.conf.dist后綴的.dist修改配置文件:
變量名稱 =“MySQLIP;港口;用戶名;密碼;數(shù)據(jù)庫”
按需修改,單機使用默認設(shè)置即可
詳細聯(lián)網(wǎng)配置見官方文檔https://www.trinitycore.info/en/install/NetworkingLoginDatabaseInfo = “127.0.0.1;3306;trinity;trinity;auth”
LoginDatabaseInfo = “127.0.0.1;3306;trinity;trinity;auth”
WorldDatabaseInfo = “127.0.0.1;3306;trinity;trinity;world”
CharacterDatabaseInfo = “127.0.0.1;3306;trinity;trinity;characters”
worldserver.conf
authserver.conf
主分支
worldserver.conf
bnetserver.conf for master
5.數(shù)據(jù)庫配置和更新
下載數(shù)據(jù)庫:https://github.com/TrinityCore/TrinityCore/releases(選擇最新的335開頭版本)
創(chuàng)建數(shù)據(jù)庫
打開mysql workbench 連接到數(shù)據(jù)庫
先刪除mysql自帶的
world
表打開目錄中?
TrinityCore\sql\create\create_mysql.sql
?腳本點擊黃色箭頭執(zhí)行,腳本將創(chuàng)建默認賬號和3個數(shù)據(jù)表
解壓下載好的數(shù)據(jù)庫 SQL 文件 到
J:\Wower\TrinityCore\Build\bin\Release
目錄,也就是worldserver
所在的目錄運行
worldserver
(worldserver.exe)以自動更新數(shù)據(jù)庫,如果它詢問你是否要創(chuàng)建數(shù)據(jù)庫則按回車鍵。(更新數(shù)據(jù)庫需要一些時間)除非顯示完成,否則不要啟動你的身份驗證服務(wù)器/網(wǎng)絡(luò)服務(wù)器(authserver.exe)。
worldserver
先會執(zhí)行幾個源碼目錄中的sql腳本創(chuàng)建數(shù)據(jù)庫,然后它將查找dbc文件,映射,mmaps和vmaps,如果沒有找到,它將退出。
6.啟動服務(wù)器與創(chuàng)建賬號
運行 Authserver\Bnetserver(authserver.exe) 身份驗證服務(wù)器\網(wǎng)絡(luò)服務(wù)器?

運行 worldserver(worldserver.exe) 世界服務(wù)器?

創(chuàng)建登錄帳戶,在worldserver窗口中鍵入(master在bnetaccount)來創(chuàng)建您的登錄帳戶。
創(chuàng)建帳戶:
TC> account create test test
命令詳解?
account create $name $password
?其中name是帳戶名,name是帳戶名,password是帳戶密碼設(shè)置帳戶級別:
TC> account set gmlevel test 3 -1
命令詳解?
account set gmlevel $account #level #realmid
?其中$account是要更改的帳戶名,#level可以是 0-3,#realmid是領(lǐng)域 ID。 將#level設(shè)置為“3”是 GM 帳戶級別(數(shù)字越高 = 訪問權(quán)限越多), “-1”是代表“所有領(lǐng)域”的領(lǐng)域 ID。3.3.5
非常重要:要創(chuàng)建您的帳戶,不要在帳戶名稱上使用?
@
,這將會導致客戶端更新。在數(shù)據(jù)庫管理工具中打開世界
world
數(shù)據(jù)庫并找到命令表command
。此表顯示了 GM 命令的完整列表、其描述以及使用它們所需的安全性(GM 級別)。您將無法在其他任何地方找到更準確的當前 GM 命令列表(假設(shè)您保持數(shù)據(jù)庫最新)。給定命令的安全級別標識該 GM 級別可以使用該命令以及該命令之上的所有 GM 級別。例如,如果命令的安全性為 2,則 GM 級別為 2、3 和 4 的所有帳戶都可以使用它。更多詳細信息可以在GM命令頁面找到。
7.客戶端配置
3.3.5
打開
335客戶端\Data\zhCN\realmlist.wtf
文件修改其中內(nèi)容:set realmlist 127.0.0.1
(可選)如果您希望使用WoW啟動器.exe運行客戶端,則必須將設(shè)置的補丁列表更改為與領(lǐng)域列表相同的IP / DNS名稱。 (啟動器在哪?)
登錄帳戶
非常重要,不要在帳戶名稱上輸入帶有
@
的郵箱,這將會導致客戶端更新。運行wow.exe啟動游戲,輸入賬號密碼登錄

?E-mail\Username: test
Password: test
X.bug記錄
更多bug歡迎留言反饋
任務(wù)自動接受bug,測試發(fā)現(xiàn)角色出生地區(qū)域的任務(wù)npc會在點擊對話框中任務(wù)項后就自動接受點選的任務(wù),這時任務(wù)文本剛剛顯示,玩家還未點擊接受按鈕。
ps:b站這個編輯器真難用,什么時候才能支持md或者word