自從《魔獸世界》國(guó)服關(guān)服后,很多魔獸老玩家心里都是空落落的,魔獸陪伴了我們十多年,此次關(guān)服猶如關(guān)上了通往艾澤拉斯大陸的大門(mén)。
上帝關(guān)上了一扇門(mén),我們也可以自己開(kāi)扇窗,隨著國(guó)服關(guān)閉,越來(lái)越多的玩家想要自己開(kāi)服當(dāng)服主,今天飛飛將和你們分享魔獸世界服務(wù)器搭建教程。
想要搭建一個(gè)魔獸商業(yè)服,需要有魔獸世界服務(wù)端、客戶端和服務(wù)器,若是自己不會(huì)技術(shù),可以請(qǐng)個(gè)技術(shù)架設(shè)、調(diào)試,簡(jiǎn)單的調(diào)試可以和技術(shù)請(qǐng)教學(xué)習(xí)。
魔獸世界服務(wù)端
魔獸世界服務(wù)端有多種選擇,如下:
60級(jí)經(jīng)典舊世版本
70級(jí)燃燒的遠(yuǎn)征版本
80級(jí)巫妖王之怒版本
85級(jí)大地的裂變版本
90級(jí)熊貓人之謎版本
100級(jí)德拉諾之王版本
110級(jí)軍團(tuán)再臨版本
120級(jí)爭(zhēng)霸艾澤拉斯版本
可以選擇自己喜歡的,也可以選擇玩家更喜歡的。
魔獸世界服務(wù)器
玩家游戲體驗(yàn)感及游戲流暢度都是由服務(wù)器決定的。魔獸世界對(duì)服務(wù)器的配置要求不是很高,CPU像英特爾E5 、酷睿i9系列16核心都是可以滿足要求的。當(dāng)然,選擇服務(wù)器除了看CPU,還需要看服務(wù)器帶寬和防御,帶寬決定了一個(gè)服能承載多少玩家同時(shí)在線游戲,帶寬有共享帶寬和獨(dú)享帶寬,兩者區(qū)別可以自行了解下。
做游戲開(kāi)發(fā)不能避免會(huì)被同行或是攻擊小組盯上,若是對(duì)方通過(guò)手段發(fā)起攻擊,選擇的服務(wù)器防御低,服務(wù)器連接不上,將會(huì)直接影響到服里的玩家游戲體驗(yàn)感,所以選擇高防服務(wù)器是必要的。機(jī)房不同,防護(hù)措施和售后服務(wù)都是不同的,服務(wù)器性能如何可以通過(guò)測(cè)試進(jìn)行初步判斷。
Debian系統(tǒng)服務(wù)器搭建魔獸世界
準(zhǔn)備工作
依賴安裝
apt-get update
apt-get install git clang cmake make gcc g++
update-alternatives --install /usr/bin/cc cc /usr/bin/clang 100
update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang 100
#boost依賴,如下
apt-get install -y libboost-all-dev \
libboost-system-dev \
libboost-filesystem-dev \
libboost-program-options-dev \
libboost-iostreams-dev
mariadb-server
apt-get install libmariadbclient-dev
zlib在 zlib1g-dev
apt-get install zlib1g-dev
openssl
apt-get install libssl-dev
readline
apt-get install libreadline-dev
mysql
apt-get install -y libmysqlclient-dev
創(chuàng)建用戶
用戶名為wow
adduser wow
su wow
如果用windows子系統(tǒng),可以設(shè)置默認(rèn)進(jìn)入用戶
windows進(jìn)入cmd命令行,執(zhí)行指令進(jìn)入Apps目錄:
cd %HOMEPATH%\AppData\Local\Microsoft\WindowsApps
因?yàn)槲野惭b的debian,所以這個(gè)目錄下有個(gè)debian.exe
的文件(如果是ubuntu那么就是ubuntu.exe)
debian.exe config --default-user wow
設(shè)置完再進(jìn)入子系統(tǒng)就是wow用戶了
約定目錄
以wow權(quán)限執(zhí)行
su wow
cd ~
既然是網(wǎng)絡(luò)游戲,一定需要C端和S端,即客戶端和服務(wù)器端。預(yù)先創(chuàng)建對(duì)應(yīng)目錄方便后面操作。
TrinityCore源碼目錄
mkdir /home/wow/TrinityCore
服務(wù)器目錄,最終包含etc,bin,data三個(gè)子目錄
mkdir /home/wow/server3.5.5
客戶端目錄,后面用于存放客戶端版本,提取客戶端數(shù)據(jù)
mkdir /home/wow/client12340
下載工作
S端下載
Release TDB 335.22061 · TrinityCore/TrinityCore · GitHub
cd /home/wow/TrinityCore
wget https://github.com/TrinityCore/TrinityCore/archive/refs/tags/TDB335.22061.zip
解壓
unzip TDB335.22061.zip
C端下載
客戶端版本:3.3.5(12340)
下載傳送門(mén)(下載解壓后,需要完成后把文件上傳到Linux服務(wù)器上)
編譯服務(wù)端
切回wow
su wow
cd /home/wow/TrinityCore/TrinityCore-TDB335.22061
構(gòu)建項(xiàng)目
mkdir build
cd build
cmake ../ -DCMAKE_INSTALL_PREFIX=/home/wow/server3.5.5
這個(gè)步驟可能時(shí)間比較長(zhǎng),可以用nohup或者screen執(zhí)行
make -j$(nproc) install
編譯完成后home/wow/server3.5.5
目錄會(huì)出現(xiàn)bin
、etc
和bin
目錄
bin下面是生成的可執(zhí)行文件。
data下面后面會(huì)放入客戶端提取的地圖數(shù)據(jù)。
etc 下面是一些配置文件。
注:查看并留意下這三個(gè)目錄里面的文件,后面會(huì)用到。
修改配置文件
把worldserver.conf.dist和authserver.conf.dist各自復(fù)制一份,然后去掉后綴.dist 。
cp /home/wow/server3.5.5/etc/worldserver.conf.dist worldserver.conf
cp /home/wow/server3.5.5/etc/authserver.conf.dist authserver.conf
修改worldserver.conf
中 DataDir = “.” 為 DataDir = “../data
”。
注意:我這里填的是相對(duì)路徑"…/data",你也可以填寫(xiě)絕對(duì)路徑/home/wow/server3.5.5/data
提取客戶端信息
DBC and Maps files
將下載好的客戶端,復(fù)制一份到上面約定的客戶端目錄/home/wow/client12340
中,進(jìn)入目錄。
cd /home/wow/client12340
運(yùn)行下面命令,提取客戶端數(shù)據(jù)
/home/wow/server3.5.5/bin/mapextractor
mkdir /home/wow/server3.5.5/data
cp -r dbc maps /home/wow/server3.5.5/data
Visual Maps (aka vmaps)
cd /home/wow/client12340
/home/wow/server3.5.5/bin/vmap4extractor
mkdir vmaps
/home/wow/server3.5.5/bin/vmap4assembler Buildings vmaps
cp -r vmaps /home/wow/server3.5.5/data
Movement Maps (aka mmaps)
cd /home/wow/client12340
mkdir mmaps
/home/wow/server3.5.5/bin/mmaps_generator
cp -r mmaps /home/wow/server3.5.5/data
將地圖數(shù)據(jù)copy到數(shù)據(jù)目錄
cp -r dbc maps /home/wow/server3.5.5/data
cp -r vmaps /home/wow/server3.5.5/data
cp -r mmaps /home/wow/server3.5.5/data
數(shù)據(jù)庫(kù)
這里用root
環(huán)境搭建中我們已經(jīng)安裝mariadb-server
數(shù)據(jù)庫(kù)(當(dāng)然也可以使用mysql),所以現(xiàn)在我們需要運(yùn)行起來(lái)。
運(yùn)行數(shù)據(jù)庫(kù)
systemctl enable mysql
systemctl restart mysql
初始化數(shù)據(jù)庫(kù)
mysql_secure_installation
# Enter current password for root (enter for none):
會(huì)顯示叫你輸入密碼,因?yàn)榘惭b時(shí)并沒(méi)有設(shè)置密碼,所以直接輸入回車(chē)enter
# Change the root password? [Y/n]
Y
# 輸入兩次密碼
# Remove anonymous users? [Y/n]
Y
# Disallow root login remotely? [Y/n]
# Y表示讓root用戶遠(yuǎn)程登錄,N表示可以遠(yuǎn)程登錄
Remove test database and access to it? [Y/n]
Y
Reload privilege tables now? [Y/n]
Y
登錄數(shù)據(jù)庫(kù)
mysql -u root
登錄成功,類(lèi)似如下
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 10.1.29-MariaDB-6 Ubuntu 18.04
Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
導(dǎo)入數(shù)據(jù)
1、創(chuàng)建數(shù)據(jù)庫(kù)
Source /home/wow/TrinityCore/TrinityCore-TDB335.22061/sql/create/create_mysql.sql
#顯示當(dāng)前數(shù)據(jù)庫(kù)系統(tǒng)中所有數(shù)據(jù)庫(kù)列表
show databases
±-------------------+
| Database |
±-------------------+
| auth |
| characters |
| information_schema |
| mysql |
| performance_schema |
| world |
±-------------------+
2、建表
use auth;
Source /home/wow/TrinityCore/TrinityCore-TDB335.22061/sql/base/auth_database.sql
use characters;
Source /home/wow/TrinityCore/TrinityCore-TDB335.22061/sql/base/characters_database.sql
地圖數(shù)據(jù)載入
創(chuàng)建數(shù)據(jù)目錄,用來(lái)存放地圖數(shù)據(jù)
mkdir /home/wow/server3.5.5/data
配置網(wǎng)絡(luò)
連接數(shù)據(jù)庫(kù),輸入以下sql,打開(kāi)auth
庫(kù),并查看表realmlist
use auth;
select id,name,address,localaddress,gamebuild from realmlist;
address為現(xiàn)網(wǎng)ip及客戶端連接ip。本地跑默認(rèn)127.0.0.1。部署到服務(wù)器,需要更改為服務(wù)器的ip。
port為對(duì)外端口及客戶端連接端口?,F(xiàn)網(wǎng)需要開(kāi)放此端口
localaddress為內(nèi)網(wǎng)ip
gamebuild 為客戶端版本號(hào) ,是12340 還是 13930 取決于你所使用的客戶端版本
啟動(dòng)服務(wù)端
運(yùn)行 authserver
(authserver即認(rèn)證服務(wù),我們登陸賬戶都是到這里認(rèn)證后才會(huì)請(qǐng)求worldserver)
/home/wow/server3.5.5/bin/authserver
# or
/home/wow/server3.5.5/bin/authserver -c /home/wow/server3.5.5/etc/authserver.conf
如下為成功啟動(dòng)
Connected to MySQL database at 127.0.0.1
DatabasePool 'auth' opened successfully. 2 total connections running.
Started auth database connection pool.
Loading IP Location Database...
Added realm "Trinity" at 127.0.0.1:8085.
運(yùn)行 worldserver
/home/wow/server3.5.5/bin/worldserver
如果你按照上述步驟一步一步到了這里,那么運(yùn)行結(jié)果可能提示缺少一個(gè)文件
TDB_full_world_335.22061_2022_06_01.sql?。。?File "TDB_full_world_335.22061_2022_06_01.sql" is missing,
download it from "https://github.com/TrinityCore/TrinityCore/releases"
uncompress it and place the file "TDB_full_world_335.22061_2022_06_01.sql"
in the directory "/home/rendu".
這里根據(jù)你當(dāng)前運(yùn)行的worldserver的提示去下載,下載傳送門(mén),請(qǐng)對(duì)號(hào)下載
World initialized in 11 minutes 39 seconds
Starting up anti-freeze thread (60 seconds max stuck time)...
TrinityCore rev. fc56410b6e0d 2021-02-19 00:42:06 +0200 (3.3.5 branch) (Unix, RelWithDebInfo, Static) (worldserver-daemon) ready...
TC>
看到如上輸出,那么恭喜你,worldserver啟動(dòng)成功。
添加賬號(hào)
創(chuàng)建一個(gè)用戶名為idc02
,密碼也為idc02
的賬號(hào),使用以下命令格式
account create <user> <pass>
TC>TC> account create idc02 idc02
升級(jí)為GM
可以提升idc02的gmlevel為3,升級(jí)為GM賬號(hào),worldserver命令行輸入,如下
TC> account set gmlevel idc02 3 -1
登錄游戲
打開(kāi)客戶端目錄,找到wow.exe,同級(jí)目錄下創(chuàng)建wow.bat,內(nèi)容如下:
在本地搭建ip填寫(xiě)127.0.0.1,外網(wǎng)填寫(xiě)服務(wù)器IP,這個(gè)ip對(duì)應(yīng)上面realmlist
中的address
echo y | rd /s "Cache"
echo SET realmlist "103.219.39.*" > Data\zhTW\realmlist.wtf
echo SET realmlist "103.219.39.*" > Data\enTW\realmlist.wtf
echo SET realmlist "103.219.39.*" > Data\zhCN\realmlist.wtf
echo SET realmlist "103.219.39.*" > Data\enCN\realmlist.wtf
echo SET realmlist "103.219.39.*" > Data\enUS\realmlist.wtf
echo SET realmlist "103.219.39.*" > realmlist.wtf
start Wow.exe
goto end
然后運(yùn)行腳本,此時(shí)初始化客戶端連接配置成功,進(jìn)入游戲。
寶塔面板方便用于對(duì)接管理系統(tǒng)
也和大家分享下安裝寶塔Linux面板
的安裝腳本
Centos:
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh 1ba5f33df
Ubuntu/Debian:
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh 1ba5f33df
只安裝面板,不需要安裝任何web服務(wù)相關(guān)工具。
在面板中設(shè)置接口:面板設(shè)置->API接口,啟用接口,并保存API密鑰,添加服務(wù)器ip到白名單
將以下端口開(kāi)放
1001 : 服務(wù)器連接端口
1002 : 用戶登錄端口
1003:mysql數(shù)據(jù)庫(kù)端口
1004:SOAP端口文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-440920.html
以上便是關(guān)于魔獸世界服務(wù)器搭建的教程,感謝您的閱讀,有開(kāi)服想法歡迎私信~文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-440920.html
到了這里,關(guān)于Wow魔獸世界服務(wù)器搭建詳細(xì)教程,魔獸世界服務(wù)器配置要求的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!