准备
- linux系统服务器1台, 推荐Centos 系统 ( 云语数据服务器 )
- 服务器可被外网访问
- 服务的源码:别叫醒我/azerothcore-wotlk-elun (官方原版移除版权信息并整合ELuna)
- 地图文件:https://github.com/wowgaming/client-data/releases/tag/v7
软件安装
检查
以此执行如下命令,检查 docker 和 docker-compose 是否安装:
docker --version
docker-compose --version
git --version
如果已经安装, 可以跳过安装步骤
安装
安装docker
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
# 安装后启动
systemctl restart docker
安装docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 授权
sudo chmod +x /usr/local/bin/docker-compose
安装Git
yum install git
文件准备
下载源码
移动到根目录
cd /
下载代码
git clone https://gitee.com/53957105/azerothcore-wotlk.git
下载完成后,会出现 /azerothcore-wotlk 目录
地图文件
地图文件下载地址 (data.zip): https://github.com/wowgaming/client-data/releases/tag/v7
放置地图数据文件到 docker/worldserver/data/
编译安装
进入 /azerothcore-wotlk 目录
cd /azerothcore-wotlk
复制 .env
cp .env.dist .env
修改 .env
WORLD_EXTERNAL_PORT=1001
AUTH_EXTERNAL_PORT=1002
DB_EXTERNAL_PORT=1003
DB_ROOT_PASSWORD=123456 #随机字符串
SOAP_EXTERNAL_PORT=1004
端口可自定义,后面操作同步修改
分配文件执行权限
chmod +x -R ../azerothcore-wotlk
复制服务器配置文件
./bin/acore-docker-generate-etc
修改配置文件
- docker/worldserver/etc/worldserver.conf
LoginDatabaseInfo = "ac-database;3306;root;123456;acore_auth"
WorldDatabaseInfo = "ac-database;3306;root;123456;acore_world"
CharacterDatabaseInfo = "ac-database;3306;root;123456;acore_characters"
# 开启SOAP
SOAP.Enabled = 1
SOAP.IP = "0.0.0.0"
SOAP.Port = 7878
- docker/authserver/etc/authserver.conf
LoginDatabaseInfo = "ac-database;3306;root;123456;acore_auth"
cmaker 编译项目
./bin/acore-docker-build
启动
docker-compose up
如遇失败,重试一次
显示下面内容,表示服务器启动成功:
ac-worldserver_1 | Max allowed socket connections 1048576
ac-worldserver_1 | AzerothCore rev. 036a8c2450ef+ 2020-10-13 10:23:18 +0200 (master branch) (Unix, Release) (worldserver-daemon) ready...
此时按 Ctrl+C 会关闭服务器, 可以后台启动服务
服务器realmlist配置
- 用工具连接数据库
- 打开 acore_auth数据库, realmlist 数据表
- address 修改为服务器ip或者域名
- port 修改为 1001
- 重启服务器
游戏测试
命令行创建GM账户
进入 /azerothcore-wotlk 目录
- 进入世界服务器:
docker attach azerothcore-wotlk_ac-worldserver_1
- 输入命令:
account create admin 123456
account set gmlevel admin 3 -1
更多GM命令,请查看: Redirecting…
- 按 Ctrl+P , Ctrl+Q 退出世界服务器
客户端登录游戏
- 在魔兽世界客户端,创建 [ 登录.bat ] 文件,并写入如下内容:
@echo y | rd /s "Cache"
echo SET realmlist "[服务器ip或域名]:1002"> realmlist.wtf
echo SET realmList "[服务器ip或域名]:1002"> Data/zhCN/realmlist.wtf
echo SET realmList "[服务器ip或域名]:1002"> Data/zhTW/realmlist.wtf
ren Data\commoo.MPQ common.MPQ
ren Data\expansioo.MPQ expansion.MPQ
start wow.exe
goto end
:end
- 双击 [ 登录.bat ], 进入游戏
- 使用 admin 123456 登录游戏
- 登录后创建角色
- 进入游戏
汉化数据库
待续…
宝塔面板
用于对接管理系统
安装
宝塔Linux面板安装教程 – 2021年8月18日更新 – 7.7.0正式版 – Linux面板 – 宝塔面板论坛
只安装面板,不需要安装任何web服务相关工具
接口配置
- 面板设置->API接口
- 启用接口,并保存API密钥
- 添加0.0.0.0到白名单
开放端口
- 1001 : 服务器连接端口
- 1002 : 用户登录端口
- 1003 : mysql数据库端口
- 1004 : SOAP端口
服务器关键信息
- 服务器ip或域名
- 服务器连接端口
- 用户登录端口
- mysql数据库端口
- 数据库账户/密码
- SOAP端口
- GM账户/密码
- 宝塔地址
- 宝塔API接口密钥
服务器控制
进入 /azerothcore-wotlk 目录
- 前台运行
docker-compose up
- 可以看到服务器启动信息
- Ctrl+C 会关闭服务器
- 关闭命令行窗口, 会关闭服务器
- 后台运行
docker-compose start
- 重启服务器
docker-compose restart
- 停止服务器
docker-compose stop
- 查看运行情况
docker-compose ps
- 删除服务器
docker-compose down
参考资料
对接管理系统
魔兽世界服务端管理系统:魔兽世界服务端管理系统
服务器编译运行成功之后, 如果需要其他玩家在线注册, 可以对接 魔兽世界服务端管理系统,
除了在线注册,还有其他很多功能, 比如:添加在线商城售卖道具,查看服务器在线玩家,管理员还可以通过网页端,对服务器进行控制,在线编辑luna脚本等等…
目前系统已经支持window版本的服务端,并且提供编译好的服务端,无需编译,更加简单快速,详情请查看:目前最完美的魔兽世界服务端AzerothCore,Window系统小白10分钟搭建教程_onlyone的博客-CSDN博客首先下载服务端文件:魔兽世界无限制服务端,巫妖王之怒,window版 – 阿里云盘资源分享 – 单机游戏免费下载 – 幻想游戏,幻想社区http://3a.hxyou.cn/softs/1134.html原版AzerothCore编译,仿官方,集成Lua,无人数限制,无机器限制,可能是目前修复最好的魔兽服务端了!包含地图文件和数据库(已汉化),傻瓜式安装,一键启动服务器推荐:尊云 68/月系统推荐:Window Server 2019详细搭建步骤:将文件上传到服.https://blog.csdn.net/li53957105/article/details/120247630?spm=1001.2014.3001.5502