上次大叔写了一个Cmangos的WOW搭建教程,因为好多人反应这个有点问题,不如LH和Vmanogs,大叔抽空把LH(lightshope)和vmangos的写一下,整体的安装过程还是差不多。
VMangos是LightsHope的一个分支。这里大叔两个端整到一起,大叔的教程以lightshope为例,数据库文件是同一个GIT仓库,但文件不同,注意区分。
其实很多内容是相通的,建议大家可以参考着看看
注意
1、系统选Ubuntu 16.04 更高版本的部分软件有问题,编译过程会出问题。
2、数据库选mysql 5.5 更高版本大叔没有试
3、配置尽量高一点,大叔用的2C8G可以带起来,在1C1G带不起来。
4、因为LH和Vmangos几乎是通用的,所以大叔这里两篇写在一起,安装的时候注意自己看清,不要安装错了。
5、LH和VMangos的区别点主要是在数据库、和服务器上,大家安装的时候注意一下。
整体的安装步骤
1、安装mangos服务器:这一步,要么自己编译,要么用别人编译好的,基本上linux都要自己编译,WIN上大部分都是已经编译好的一键包。
2、导入数据库和更新数据库:主要是角色、物品、NPC、世界等信息,支持中文
3、提取地图:自己提取也可以,或者是直接使用别人提取好的。
安装步骤
安装BT,并安装相对应的环境,php5.6 mysql 5.5 apache等
大叔就不写了,具体参考
1、安装各种编译软件环境
切换到root用户,并进入root用户目录
sudo -i
cd ~
apt-get install build-essential gcc g++ automake git-core git autoconf make patch libmysql++-dev libtool libssl-dev grep binutils zlibc libc6 libbz2-dev cmake subversion libboost-all-dev wget vim tumx
2、下载并安装ACE
wget http://download.dre.vanderbilt.edu/previous_versions/ACE-6.5.0.tar.gz
tar -zxvf ACE-6.5.0.tar.gz
解压之后在根目录下会有ACE的文件夹 ACE_wrappers
设置变量,编辑设置文件
export ACE_ROOT=/root/ACE_wrappers
export LD_LIBRARY_PATH=$ACE_ROOT/lib:$LD_LIBRARY_PATH
编辑设置文件
vim $ACE_ROOT/ace/config.h
#include "ace/config-linux.h"
新建文件
vim $ACE_ROOT/include/makeinclude/platform_macros.GNU
include $(ACE_ROOT)/include/makeinclude/platform_linux.GNU
INSTALL_PREFIX = /usr/local
安装
cd /root/ACE_wrappers
make && make install
3、下载mangos和数据库文件
注意,以下文件,vmangos和lightshope 二选一
cd ~
git clone https://github.com/vmangos/core.git //这个是vmangos
git clone https://github.com/lh-server/core.git //这个是lightshope
下载数据库文件,这里需要注意,不同的版本的数据库是不一样的,稍后大叔会给大家说
git clone https://github.com/brotalnia/database.git
4、编译安装
进入目录,建立编译目录并进行编译,注意,大叔没有安装TBB,所以编译的时候,需要改一下配置文件,不使用TBB安装
cd /root/core
vim CMakeLists.txt
将图中所示的配置改为1
编译
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/opt/lh ../ //将mangos服务器安装到/opt/lh文件夹中
cmake后,就可以安装了
make && make install
5、建立数据库
进入数据库并依次执行
mysql -u root -p
CREATE DATABASE IF NOT EXISTS realmd DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
CREATE DATABASE IF NOT EXISTS characters DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
CREATE DATABASE IF NOT EXISTS mangos DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
CREATE DATABASE IF NOT EXISTS logs DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
建立新用户并授权,为了安全,如果不用mangos用户,可以直接使用root
create user mangos identified by 'mangos';
grant all on realmd.* to mangos@'localhost' identified by 'mangos' with grant option;
grant all on characters.* to mangos@'localhost' identified by 'mangos' with grant option;
grant all on mangos.* to mangos@'localhost' identified by 'mangos' with grant option;
grant all on logs.* to mangos@'localhost' identified by 'mangos' with grant option;
6、导入数据
这里要注意数据库的版本,查看数据库补丁的第一个日期,非常重要!!如果数据库版本不对,就会有问题
cd /root/core/sql/migrations
ls
如图,第一个日期,大叔这里是6月8号
这时候我们就要解压我们刚才下的数据库里的对应的数据库文件
cd /root/database
tar -zxvf world_full_08_june_2018.7z
导入数据
cd /root/core/sql
mysql -u mangos -p realmd < logon.sql
mysql -u mangos -p logs < logs.sql
mysql -u mangos -p characters < characters.sql
mysql -u mangos -p mangos < /root/database/world_full_08_june_2018.sql
打数据库的更新补丁
cd /root/core/sql/migrations
chmod +x merge.sh
./merge.sh
mysql -u mangos -p realmd < logon_db_updates.sql
mysql -u mangos -p logs < logs_db_updates.sql
mysql -u mangos -p mangos < world_db_updates.sql
7、配置文件
进入服务器目录,创建存放地图的文件夹和日志文件夹
cd /opt/lh
mkdir data
mkdir log
配置服务器和登录验证文件
vim etc/mangosd.conf
vim etc/realmd.conf
配置认证服务器数据库,首先进入数据库
mysql -u root -p
use classicrealmd;
DELETE FROM realmlist WHERE id=1;
INSERT INTO realmlist (id, name, address, port, icon, realmflags, timezone, allowedSecurityLevel)
VALUES ('1', '闪电之刃', '152.178.2.154', '8085', '1', '0', '1', '0');
exit;
在你的本地WOW客户端文件夹下,找到realmlist.wtf文件,并用记事本编辑,这里的IP要与数据库相同,并且要带上你reamld.conf中的端口
realmlist.wtfset realmlist 152.178.2.154
大叔这里的IP:152.178.2.154 即你的服务器公网IP
8、提取地图
大叔这里就不再提取了,而是直接在网上找的提取好的地图上传的,提取步骤都差不多。将地图文件放到data文件夹下
9、运行服务器
先开一个tmux
tmux
cd /opt/lh/bin
./mangosd -c ../etc/mangosd.conf
将tmux分开,先按下ctrl+b然后按shift+ 5
再按ctrl+b然后按o 切换到另一半
cd /opt/fklserver/bin
./realmd -c ../etc/realmd.conf
10、添加账号
在mangosd的窗口中可以输入以下命令。
account create [username] [password] //创建用户
account set addon [username] [0 to 3] //设置WOW的环境,这里只需要填0
account set gmlevel [username] [0 to 3] //用户等级 0玩家 1 2 GM 3 管理员
server shutdown [delay] //多少秒后关闭服务器xw
给服务器做一个注册页面网站
大叔直接拿的是Vmangos的注册页面改的,大家可以看看,至于怎么搭建,可以参考
下面是页面文件,基本上不用更改即可使用
大叔结语
好了,终于把这个坑给填上了,搭建时间有点长了,大叔自己都有点记不清了,如果大家遇到问题,直接留言,大叔会完善一下~
>> Loaded 449 area triggers.
Loading skill line abilities …
>> Loaded 15031 skill line abilities.
Loading mail text templates …
>> Loaded 96 mail text templates
Loading pet spell data …
>> Loaded 315 pet spell lists
Loading world safe locs facing values …
>> Loaded 94 world safe locs facing values
Initialize data stores…
Incorrect DataDir value in mangosd.conf or ALL required *.dbc files (44) not found by path: ../data/5875/dbc
请问执行mangosd 报这个 为什么呢我配置的datadir 肯定没问题啊 那后面的dbc错误 是怎么回事啊
lh的地图包,用1.12.1或者3,都有问题,只能用vmangos,已经成功。
请问哪里下载vmangos 的地图啊 我遇到问题 感觉和你一样
mangosd.conf reamld.conf 这两个文件我的怎么没生成,去哪里下载啊?
启动时报错。
Map file ‘/opt/lh/data/maps/0004331.map’ is non-compatible version (outdated?). Please, create new using ad.exe program.
不管是我自己提取的地图,还是从网上找的地图,都报了这个错误。查看一下原因大概是版本问题。
具体是core的版本,还是ad提取器的版本,或者是客户端的版本,摸不到头脑。
大叔的地图能不能放出来我试试。
地图文件提取总是报错,是wow客户端下面的DATA 文件夹?还是另外的文件?
请问哪里可以找到汉化过的数据库文件呢?
数据库本身就有汉化,记不起哪个表了,大佬看看,有个字段对应0123,好像3对应的是中文
local开头的都是汉化的,但是我们找到的似乎没有内容,在GitHub上搜cmangos汉化能找到一个,tbc的汉化还不错
cd build
cmake -DCMAKE_INSTALL_PREFIX=/opt/lh ../
make && make install
make: *** No targets specified and no makefile found. Stop.
请问这个是为啥啊?上面的步骤都没问题
能做一个VMANGOS WIN环境的搭建吗
网上好多教程,都是封好的包,直接下载解压运行就可以了,具体的几个配置文件参考这里的配置就可以了
✗汗✗
不错,很适合新手学习
沙发