写在前面
你是否还记得DNF,一天你不小心救了赛丽亚,从此变成了拯救阿拉德大陆的勇士,从此开始冒险之旅,不管你的职业是亲儿子还是下水道,你一直对你玩的角色情有独钟,在一次次刷图PK中,你变强了,你可以刷深渊,刷异界,刷远古,装备越来越好,技能越来越熟练,强化越来越高,后来强化碎掉了,你一气之下卸载了游戏,可没几天又入坑了,就这样你一直沉迷在阿拉德大陆的象牙塔里,直到你毕业工作了,再无时间,再也听不到赛丽亚的那句:“你来啦!”。
是的,在掉线城与虚弱勇士中,你我都一样,因为在那片大陆上有爆出期待已久装备的开心,也有强碎武器装备的绝望,每一件装备,每一个技能,每一个地图,每一个NPC,每一个怪物,每一首音乐都是我们曾经的青春...
这是我最喜欢的一首DNF背景音乐鲁夫特悬空海港,听着就让人很舒服,很舒服,很舒服,建议开启音乐阅读~
我的英文名echeverra,就取自DNF召唤师技能精灵王的名字伊伽贝拉。
DNF手游迟迟未推出,反倒是让阿拉德之怒火的一塌糊涂,体验一番后发现还原度还是很高的,强烈推荐给你,在这里你可以慢慢刷图体验当年的感觉,也可以使用GM工具直接满级VIP,高强装备,各种时装,应有尽有。
我架设的阿拉德之怒游戏链接和源码请关注 echeverra 发送“阿拉德之怒”获取。后台 GM 发送“阿拉德之怒GM”获取。游戏长期维护,快来体验一下吧。
同样推荐另外几款我架设的H5游戏:H5游戏整理汇总,欢迎来玩耍~
前言
本文讲解阿拉德之怒手游架设教程,这也是我第一次尝试安卓/IOS客户端的架设,原本只是研究H5游戏,奈何情怀让人按捺不住啊!
阿拉德之怒截图:
安卓模拟器:
苹果手机:
GM工具:
架设
1. 架设条件
阿拉德之怒架设需要准备:
- linux服务器,建议CentOs 7.6版本,推荐轻量应用服务器,性价比高。
- 游戏源码,关注我的公众号 echeverra,发送 “阿拉德之怒” 获取。
2. 安装宝塔及环境
宝塔是一个服务器运维管理软件,安装命令:
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
安装完后,按照提示信息登录宝塔(如果无法访问可能是由于服务器没有开放8888端口,参考步骤开放端口),并在宝塔软件商店中搜索以下软件安装:
- web服务器:Nginx1.20
- 数据库:Mysql 10.2
- 数据库:Redis 6.2.6
- 编程语言:PHP 7.1
- 数据库管理工具:phpMyAdmin 4.4
- 进程管理器:PM2管理器 5.2
安装完后,还需安装PHP 7.1的扩展redis和sg11。
需注意的是,此游戏涉及到的软件和环境多且版本特殊,建议不要和其他游戏共用一个服务器,出错失败的概率会很大,额,说的就是刚踩坑的我,服务器配置最低4G内存,2G内存很容易断开服务。
然后通过宝塔菜单终端,执行关闭防火墙命令:
systemctl stop firewalld.service
systemctl disable firewalld.service
3. 开放端口
我们直接开放所有端口1-65535,阿里云服务器在安全组中配置规则。
腾讯云轻量应用服务器在防火墙中配置规则。
然后在宝塔菜单安全中开放所有端口。
如果对安全性有要求,可以单独开放需要开放的端口,方法同上。
4. 上传源码
拿到源码后,将服务端alade.zip
压缩文件通过宝塔上传到根目录(如果宝塔禁止上传到根目录,可上传其他路径后剪切粘贴到根目录)。
上传成功后解压到根目录。
解压完成后,通过宝塔菜单终端,命令授予777权限:
chmod -R 777 /www/wwwroot/alade
chmod -R 777 /home/root
chmod -R 777 /home/sql
chmod 777 /home/sk
配置环境:
cd /usr/lib64/
rm -rf libstdc++.so.6
ln -s libstdc++.so.6.0.21 libstdc++.so.6
ldconfig
修改etc/profile
文件,在最后添加环境变量信息:
export PATH="$PATH:/home/root/pre-publish-new/server_res/bin"
5. 修改IP
源码中的IP是我自己虚拟机的(43.138.22.71),需要替换成你自己的服务器IP。
- \home\sql\demoald.sql
- \home\root\pre-publish-new\server_res\UdpConnServer\UdpConnServer.cfg
- \home\root\pre-publish-new\server_res\AdminServer\NetAddress.xml
- \home\root\pre-publish-new\server_res\Config\UdpServer.xml
- \home\root\pre-publish-new\server_res\RelayServer\RelayServer.cfg
- \home\root\pre-publish-new\server_res\RelayServer\ServersAddress.xml
以UdpConnServer.cfg
为例,在宝塔中找到文件,双击修改,Ctrl+F批量替换IP。
6. 导入数据库
宝塔设置数据库root密码为pwd123456
。为什么不是123456
,因为考虑到如果你想修改源码中的密码,可以全局搜索替换,不会冲突。
在软件商店中设置Mysql,配置修改为资源中数据库配置.txt
中的内容,全部替换掉后,在重载配置和重启Mysql。如果重启后失败请重启服务器即可恢复启动,
如果还是失败,可以考虑Mysql5.7或重装系统。亲测,华为云mysql无法启动成功。
重启Mysql成功后,命令导入数据库。
cd /home
./sk
7. 创建网站
添加站点,域名写你的IP,根目录/www/wwwroot/alade
,PHP选择7.1版本。
再次设置该网站,网站目录中关闭防跨站,运行目录设置为public。
伪静态使用thinkphp,没错,竟然是TP5 - -,我用过最多的php框架,别说,还有点亲切~
8. 修改热更包
热更包其实就是你首次打开游戏后,游戏自动会下载的文件。
8.1 安卓热更包
在资源中的热更包-安卓热更包
目录下。建议安装360压缩软件进行操作。
双击package-1.39.1.237578-1.39.1.239178.zip
压缩文件,直接打开AssetBundles/environment_serverlist_xml.pck
文件(本地Notepad++编辑器编辑)。
修改红框内的三行换成你的IP,需要注意的是要对位修改,保证值为17位(43.138.22.71/////
共17位)。举例你的IP为1.1.1.1
,要算上小数点一共是7位,那在后面就需要补10个/
,即1.1.1.1//////////
,如果你的IP为123.123.123.123
共15位,那么在后面就需要补2位,即123.123.123.123//
。
保存后关闭文件后,会提示是否修改在压缩包中,点击确定。
打开资源中的MD5.exe
,将改好后的压缩文件拖进来,获取文件md5值。
修改文件package-1.39.1.237578-1.39.1.239178.txt
,将上一步获取的md5值替换。
处理安卓热更包后需要将源码中的热更包文件替换,目录/www/wwwroot/alade/public/assetnt/android/zip/1.39.1.239178
,在宝塔界面该目录下,直接将俩文件拖进去覆盖即可。
8.2 苹果热更包
如果你使用的安卓手机或安卓模拟器可以跳过这步,毕竟IOS涉及到签名,搞起来比较麻烦。
在资源中的热更包-苹果热更包
目录下,查看/assetios/ios/zip/1.39.1.239178
下文件,双击package-1.39.1.237578-1.39.1.239178.zip
用直接打开AssetBundles/environment_serverlist_xml.pck
,修改红框内的三行换成你的IP,同样需要对位修改,保证值为17位。
修改完后,剩下的步骤和安卓一样,需要修改另一个文件的md5值,然后将两个文件替换到目录/www/wwwroot/alade/public/assetnt/ios/zip/1.39.1.239178
即可。
9. 配置PM2管理器
通过软件商店找到pm2管理器并设置,添加项目启动文件为/home/root/pre-publish-new/server_res/gmald/src/app.js
,后面的表单内容会根据启动文件自动生成。
10. 启动游戏后台
经过一番三下五除二的操作,终于到了启动游戏后台的时候,命令:
cd /home/root/pre-publish-new/server_res
./run.sh
有一个报错,可无视,查看端口占用情况,命令:
netstat -lntp
当然启动游戏后还无法立马进入游戏,我们还需要修改客户端。
11. 创建游戏账号
创建游戏账号链接:http://IP/index/Reg?agent=alade123
,IP替换为你的IP,安全码同密码填写一致即可。
12. 安卓客户端
12.1 反编译
反编译本地需要JAVA环境,可以通过https://www.java.com/zh-CN/download/下载安装。
安装好JAVA环境后,打开资源工具中的APKTool工具,将客户端目录下阿拉德之怒.APK
拖进工具路径,点击反编译apk,该客户端已修复卡顿问题,并优化登录界面只保留账号登录。
12.2 修改IP
反编译完成后会生成一个目录,需要修改其中文件的IP:
- \assets\updateserver.json
- \smali\com\mgbase\net\Constant.smali
- \smali\com\mgpay\c\b.smali
- \smali\com\mgpay\net\b.smali
- \smali\com\mgpay\ui\f.smali
- \smali\com\mgpay\utils\o.smali
推荐 VS Code 全局搜索,一键替换,当然,单独找文件修改也可以。
12.3 回编译
修改完后,将目录拖回工具路径,点击回编译,这个耗时会很长,耐心等待即可。
最后会生签名的apk客户端。
12.4 模拟器测试
我使用的是夜神模拟器,感觉体验好些,下载链接:https://www.yeshen.com/。
启动模拟器后,直接将apk拖进模拟器中就可以安装。安装好后,启动游戏。
出现下载文件界面,说明热更包配置是成功的。
选择自定义账号登录,输入上文中创建的游戏账号,即可进入游戏,Nice~
13. 苹果客户端
13.1 修改IP
使用360压缩打开资源客户端中的阿拉德之怒.ipa
,找到文件\Payload\test.app\Data\Raw\updateserver.json
,将红框中的IP修改为你的IP。
保存关闭文件后,弹窗是否将修改更新到压缩包,选择确定。
用资源工具中的WinHex.exe打开客户端目录下的test
文件,点击上面搜索,替换文本,搜索43.138.22.71///
,替换成你的IP,同样需要注意的是需要对位修改,保证15位,不够在后面补/
,如你的IP是10.1.2.3
共8位,需要补7个/
,也就是10.1.2.3///////
,如果你的IP是123.123.123.123
正好15位,就不需要后面补位了。
修改完test
文件后,将它拖进目录\Payload\test.app\
,点击替换即可。
13.2 苹果签名
我使用的苹果签名是爱思助手:https://www.i4.cn/
在爱思助手工具中搜索IPA,找到IPA签名,选择阿拉德之怒.ipa
文件,填写自己的苹果账号,即可进行签名。
签名后就可以成功安装到自己的苹果手机中,需要在手机设置-通用-设备管理中信任该软件才可启动,苹果手机上运行要比安卓流畅的多,地图切换不再卡顿,唯一遗憾的是签名有效期只有7天,每周都得进行一次签名,如果麻烦可以找长期签名,当然也不便宜。
14. 游戏后台
游戏总后台链接:http://IP/admin/Index.html
,替换为你的IP,下同。账号和密码都是alade123
,可以查看和设置很多信息,大家可以慢慢研究。
除了总后台还有代理登录:http://IP/agent/login
,账号密码也都是alade123
,通过代理的推广链接可以注册账号。
用户后台链接:http://IP/index/Login
,可以购买领取物品。
这几个链接实际上我并没有怎么用到,使用cdk授权后的GM工具会更加直接好用,参考后续中的CDK/GM功能。
15. 停止游戏后台
如果想停止游戏后台服务,执行后台命令即可:
cd /home/root/pre-publish-new/server_res
./stop.sh
后续
1. 修改总后台账号密码
修改总后台用户名需要修改两个文件:
- www/wwwroot/alade/application/admin/controller/Login.php
- www/wwwroot/alade/application/common/controller/Admin.php
将所有alade123
改成你的账号名,总后台的登录没有验证数据库的账号名,而是在后台文件中进行了验证。以Login.php
为例:
登录总后台后,点击右上角admin,选择修改密码就可以更改密码了。
2. CDK/GM功能
2.1 功能配置
首先在资源中找到补丁-cdkgm功能
目录,然后在宝塔中进行以下操作:
创建数据库cdks
,并导入数据库文件cdks.sql
。
将gmcdk.zip
上传到目录/www/wwwroot/alade/public
,并解压到该目录,赋予777权限。
修改Login.php
文件上传到目录www/wwwroot/alade/application/admin/controller
,如果修改过后台账号,请将文件中alade123
替换为你的账号。
修改/www/wwwroot/alade/public/gmcdk/config/config.php
配置文件。
如图示,修改位置1为你设置的数据库密码,位置2改成你的IP,位置3和4是总后台的账号和密码,默认为alade123
,如果修改过按照你修改后的填写,位置5设置GM码,用于生成 CDK。
2.2 功能使用
配置好后,我们来使用,首先打开CDK生成链接:http://IP/gmcdk/cdk
。IP替换为你的IP,下同。填写上面设置的GM码,填写生成数量。
然后对角色进行授权,链接:http://IP/gmcdk/pay
。填写生成的一个CDK,你的角色名,并设置你的后台密码。
最后登录GM工具:http://IP/gmcdk/gm
,填写你的角色名和上一步设置好的后台密码,选好要发送的物品。
发送成功,Nice~,无需重新登录游戏,邮件即可收到。
需要注意的是,设置完CDK/GM功能,总后台登录的验证码填写错误才能登录成功哦~
3. 后台自动重连
如果后台服务断开,我们需要重新启动游戏命令,这样比较麻烦,可以使用脚本的方式。
找到资源补丁中自动重连补丁GameStatusProtect.js
文件,上传到目录/home/root/pre-publish-new/server_res/gmald/src
,并赋予777权限。
然后同之前配置PM2管理一样进行配置,找到PM2管理器添加项目,启动文件为/home/root/pre-publish-new/server_res/gmald/src/GameStatusProtect.js
,其他自动生成,随便填写个项目名称即可。
脚本原理就是监听服务端的端口,当端口没有开启时则会进行重启操作。
4. 团本PK组队设置
开通团本PK组队功能,首先需要开放服务器所有的UDP,以腾讯云轻量服务器为例,在防火墙中设置。
这样组队和PK功能应该就可以正常使用了。
团本启动命令:
cd /home/root/pre-publish-new/server_res/TCSRecordServer
./TCSRecordServer
cd /home/root/pre-publish-new/server_res/TeamCopyServer
./TeamCopyServer
团本设置可单人进入,修改/home/root/pre-publish-new/server_res/Config/DataTables/TeamCopyValueTable.txt
文件,将1、2、3、48、49、50行值全部改为1,重启服务器,团本即可一人开启。
5. 升级大马猴版本
升级现在最新的大马猴90级版本,有更多好玩的地图和装备,玩法更加多样,比如超难但是奖励很给力的大马猴副本,大马猴?难道是在说旭旭宝宝?
升级大马猴分以下几步,按照原架设基础,替换文件即可,无需清库重置,先关闭游戏后台服务。
5.1 替换热更包
最新的热更包文件分享在资源中的大马猴补丁-热更包
,安卓和苹果的都需要替换,替换方法同上文中的修改热更包操作。
5.2 替换Config目录
找到资源中的大马猴补丁-Config.zip
压缩文件,上传到宝塔目录/home/root/pre-publish-new/server_res
,并解压到该目录赋予777权限,原Config目录可改下名称避免冲突。
替换后记得修改文件Config/UdpServer.xml
中的IP。
需要注意的是,热更包的版本号没有改变,再次打开客户端是无法更新到最新的热更包的,需要卸载重新安装客户端,才能下载最新的热更包,体验大马猴版本。
6. 安卓改内注册
找到资源中补丁-安卓改内注册
,将Reg.php
文件替换到宝塔目录/www/wwwroot/alade/application/account/controller
,赋予777权限即可。苹果客户端暂时不支持,只能链接页面进行注册。
7. 优化GM工具
优化GM首先要操作上文中的CDK/GM功能,因为要用到数据库cdks
。
找到资源中的大马猴补丁-优化GM工具
,将gm.zip
压缩文件上传到目录/www/wwwroot/alade/public
。解压到该目录下并赋予777权限。修改/www/wwwroot/alade/public/gm/config/config.php
配置文件,修改方法同上文中CDK/GM功能的config.php
文件。
修改后,就可以操作CDK授权使用GM工具:
- CDK生成链接:
http://IP/gm/cdk
- 角色授权链接:
http://IP/gm/pay
- GM工具链接:
http://IP/gm/gm
优化的GM工具界面更加炫酷,而且支持最新大马猴版本的所有物品。
8. 优化启动程序
设置环境变量,打开宝塔/etc/profile
文件,末尾添加内容:
export PATH="$PATH:/home/root/pre-publish-new/server_res/bin"
执行命令:
source /etc/profile
将资源中补丁-优化启动程序
中的文件qd
上传到/root
目录下,并赋予777权限。
执行命令:
cd /root
./qd
回复对应数字,即可执行命令,是不是很方便。
9. 游戏检测脚本
优化启动程序后,在宝塔计划任务中可以创建游戏检测脚本,当有服务断开后游戏会自动重启,注意启动该功能,脚本内容:
cd /root
./qd check 9027 7377 5030 5050 5060
可以将上文中的后台自动重连脚本
GameStatusProtect.js
在pm2管理器中停止,避免冲突。
10. 关于游戏架设
游戏中还是有很多BUG的,修复的BUG我会在我的博客中实时更新分享,这个架设教程我花了很长时间打磨(吐血...),因为自己也是新手。
架设难度还是有的,但只要按照教程步骤一步步来肯定是没有问题的,要有耐心,架设的快乐有时候正是架设的这个过程,过程越艰辛,等游戏运行成功的那一刻,你会成茅塞顿开信心满满,一个字,爽~
写在最后
曾经我也是奋战在阿拉德大陆挥洒青春汗水的一名勇士,虽然我玩的都是下水道职业,但从没有放弃,依旧乐此不疲的日复一日刷着图做着装备,整整大学四年DNF陪伴着我,还记得那时的DNF是75-85版本,在我心里是DNF最好玩的版本,我的角色和装备也还保留在那一刻,再也没上过游戏。
第一个职业是小召唤师月之女皇(时装是我精心搭配的),组队总是被人嫌弃,直到后来装备成型了,玩的暗爆流召唤师,输出恐怖,可以单带异界远古了才不被他人嫌弃,深渊爆了很多的史诗,即使自己不能带也不舍得分解,就一直留着,还收藏了好多珍惜的装备,虽然不值钱。
第二个职业玩的是男气功狂虎帝,同样是末流下水道职业,可能自己觉得比较帅吧,刷了好久的幻爆流武器和异界装备。
第三个职业是女大枪重炮掌握者,搬砖好手。
后来毕业工作了就没有时间玩了,游戏就被尘封了,只留下了一段美好的青春回忆。每个人的青春可能都属于一个游戏,可能是英雄联盟,可能是穿越火线,而我的叫地下城与勇士!
好啦,以上就是阿拉德之怒的所有架设教程了,希望对你有所帮助,如有问题可通过我的博客https://echeverra.cn或微信公众号echeverra联系我。
你学“废”了么?
(完)
(文章今日已有 13 人访问 ::>_<::)