🚀 azerothcore-wotlk艾泽拉斯巫妖王源码搭建 💻

准备Linux开发编译环境

1
2
3
4
5
6
7
8
9
10
11
12
$ Boost ≥ 1.82
cd boost_1_78_0/
sudo ./bootstrap.sh --with-libraries=all --with-toolset=gcc
sudo ./b2 toolset=gcc
sudo ./b2 install
sudo ldconfig
MySQL ≥ 5.7.0
OpenSSL ≥ 1.0.x
CMake ≥ 3.13.4
Clang ≥ 5 (heavy recommended, especially on master branch) or GCC ≥ 7.1.0
zlib ≥ 1.2.7

更新安装源

1
2
3
4
5
6
 $ sudo apt-get update
sudo apt-get install git clang cmake make gcc g++ libmariadbclient-dev libssl-dev libbz2-dev libreadline-dev libncurses-dev libboost-all-dev mariadb-server p7zip libmariadb-client-lgpl-dev-compat
sudo apt-get install git cmake make gcc g++ clang libmysqlclient-dev libssl-dev libbz2-dev libreadline-dev libncurses-dev mysql-server
sudo apt-get install libace-6.* libace-dev
update-alternatives --install /usr/bin/cc cc /usr/bin/clang 100
update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang 100

git拉取源代码

1
2
3
4
$ mdkir azerothcore
cd azerothcore
git clone https://github.com/azerothcore/azerothcore-wotlk.git azerothcore

添加源码C++模块MOD幻化等

1
2
3
$ cd azerothcore/modules
git clone https://github.com/azerothcore/mod-transmog.git

编译安装

1
2
3
4
5
6
$ cd azerothcore
mkdir build
cd build
cmake ../ -DCMAKE_INSTALL_PREFIX=/data/azeroth-server/ -DTOOLS=0 -DSCRIPTS=static
make -j 2
make install

若有报错执行
target_compile_options(my_program PRIVATE -msse2)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

修改配置

1
2
3
4
5
6
7
8
$ cd /home/youruser/azeroth-server/etc
cp authserver.conf.dist authserver.conf
cp worldserver.conf.dist worldserver.conf
LoginDatabaseInfo = "127.0.0.1;3306;root;123456;auth"
WorldDatabaseInfo = "127.0.0.1;3306;root;123456;world"
CharacterDatabaseInfo = "127.0.0.1;3306;root;123456;characters"
设置【worldserver.conf】中的data文件位置。
DataDir = "./data"

整合核心文件

1
2
3
4
5
6
7
$ cd ..
mkdir data
maps、dbc、vmaps、mmaps
authserver.conf
worldserver.conf
等等conf都放进来,并导入他们自己sql和汉化;

数据库建表

1
2
3
4
5
6
7
8
$ 登陆mysql -u root -p
CREATE DATABASE world;
CREATE DATABASE characters;
CREATE DATABASE auth;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'qwer1234' WITH GRANT OPTION;
FLUSH PRIVILEGES;
quit;

导入数据【base -> updates -> custom】

1
2
3
$ cd azerothcore/bin/db_assembler/
./acore-db-asm 选择5 就行;

给予权限并运行服务器 开启Wow之旅!

1
2
3
4
5
$ chmod 777 worldserver
chmod 777 authserver
./authserver
./worldserver