大天使之剑H5游戏超详细图文架设教程

引言

想体验传奇游戏霸服的快乐吗?想体验满级VIP的尊贵吗?想体验一刀99999的爽快吗?各种极品装备、翅膀、宠物通通给你,就在大天使之剑!

本文讲解大天使之剑H5游戏的架设教程,想研究H5游戏如何实现,体验游戏中秒天秒地秒空气的一定不要错过。

我搭建的大天使之剑游戏链接:http://39.105.134.68:81,电脑和手机上都可完美运行,快来体验一下吧。

游戏截图:

大天使之剑H5游戏超详细图文架设教程

大天使之剑H5游戏超详细图文架设教程

大天使之剑H5游戏超详细图文架设教程

大天使之剑H5游戏超详细图文架设教程

大天使之剑H5游戏超详细图文架设教程

架设

1.架设条件

大天使之剑架设需要准备:

  1. linux服务器,推荐centos7/8版本,可以考虑阿里云腾讯云等。
  2. 游戏源码,关注我的公众号echeverra,发送”大天使之剑”获取。

游戏源码中我已去除掉广告,并修复了GM、关闭游戏等功能。

2.安装宝塔

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

宝塔是一个服务器运维管理软件,我从最开始的LAMP到PHPstudy再到宝塔,发现宝塔真香!图形化界面用起来是真的省心。安装完后,会给出访问的url、用户名和密码,记得保存下来,访问宝塔界面,如果无法访问可能是由于服务器没有开放8888端口,参考第7条开放端口。

大天使之剑H5游戏超详细图文架设教程

3.环境安装

宝塔安装完后,我们需要安装一下游戏的运行环境:

  1. web服务器:nginx 1.20
  2. 数据库:mysql 5.6
  3. 编程语言:PHP 5.6、PHP 7.4
  4. 数据库管理工具:phpMyAdmin 4.9

游戏建站使用的是PHP 5.6,PHP 7.4是安装phpMyAdmin的前置条件。

通过宝塔软件商店进行安装:

大天使之剑H5游戏超详细图文架设教程

除了通过宝塔安装的环境,还有需要通过命令安装的环境。

安装支持浮点运算的语言bc和库文件libnsl:

yum install bc
yum install libnsl

大天使之剑H5游戏超详细图文架设教程

后续步骤中的执行命令均从终端菜单中进入执行,不再截图展示。

4.上传源码并解压

拿到游戏源码后,解压压缩文件大天使之剑,会得到angel和sql两个压缩文件,将angel压缩文件上传到服务器根目录。

大天使之剑H5游戏超详细图文架设教程

上传完后,选择压缩文件angel并解压到根目录。

大天使之剑H5游戏超详细图文架设教程

5.文件权限

解压完成后,需要对解压的目录 /data/www/wwwroot/angel赋予完整777权限。

大天使之剑H5游戏超详细图文架设教程

大天使之剑H5游戏超详细图文架设教程

或者通过命令授权:

chmod -R 777 /data
chmod -R 777 /www/wwwroot/angel

执行命令可能会提示 .user.ini文件权限无法更改,跳过即可,不影响架设。

6.导入数据库

先通过宝塔修改数据库root密码:0987abc123

大天使之剑H5游戏超详细图文架设教程

创建h5和actor两个数据库,h5存储了用户相关数据,actor存储了游戏相关数据。

大天使之剑H5游戏超详细图文架设教程

大天使之剑H5游戏超详细图文架设教程

密码不用修改,因为源码中使用的是root管理员账号。

将游戏源码文件中的压缩文件sql解压,得到两个sql文件,上传并导入对应数据库。

大天使之剑H5游戏超详细图文架设教程

大天使之剑H5游戏超详细图文架设教程

大天使之剑H5游戏超详细图文架设教程

导入后,使root用户可以从任何主机连接到mysql服务器,执行命令:

mysql -uroot -p0987abc123
GRANT ALL PRIVILEGES ON *.* TO 'root'@'127.0.0.1' IDENTIFIED BY '0987abc123' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY '0987abc123' WITH GRANT OPTION;
flush privileges;
exit

7.开放端口

需要开放的端口:

  1. 宝塔:8888
  2. phpmyadmin:888
  3. mysql:3306
  4. 游戏相关端口:81、5007、6007、7007、9007

服务器开放端口,以阿里云开放81端口为例,其他端口按照同样方式添加,其他服务器也在安全里设置。

大天使之剑H5游戏超详细图文架设教程

宝塔开放端口,同样以81端口为例:

大天使之剑H5游戏超详细图文架设教程

如果不开放端口,服务会无法访问,如果对安全没什么要求,可以直接开放1-65535端口。

8.修改IP

源码中的IP是我自己虚拟机的,需要替换成你自己的服务器IP。

需要修改IP的文件:

/www/wwwroot/angel/app1.php
/www/wwwroot/angel/login.php
/www/wwwroot/angel/config.php
/www/wwwroot/angel/game.php
/www/wwwroot/angel/login/cqlb/server.php
/www/wwwroot/angel/resource/main.min.js
/www/wwwroot/angel/login_bt.json

举例修改 angel/app1.php文件,其他文件修改方式相同。

找到 app1.php双击打开编辑模式,按Ctrl+F搜索39.105.134.68,找到后替换成你的服务器IP并保存。

大天使之剑H5游戏超详细图文架设教程

除了需要修改文件的IP,还需修改数据库h5中表server的IP字段。

打开phpmyadmin管理工具:

大天使之剑H5游戏超详细图文架设教程

双击字段修改IP,回车保存:

大天使之剑H5游戏超详细图文架设教程

9.创建游戏网站

添加游戏网站才能访问H5游戏,通过网站菜单添加站点,域名写你的IP:81,根目录为 /www/wwwroot/angel/,PHP选择5.6版本。

大天使之剑H5游戏超详细图文架设教程

10.启动游戏

以上都执行完毕,那么到了激动人心的启动游戏啦,启动命令:

cd /data/
sh start_server.sh

正常启动后会提示success,查看监听端口可看到5007、6007、7007、9007处在监听中,那么恭喜你可以开始游戏啦。

netstat -lntp

大天使之剑H5游戏超详细图文架设教程

11.开始游戏

访问游戏链接:http://IP:81,使用你服务器的IP。

大天使之剑H5游戏超详细图文架设教程

可以打开游戏登录界面,恭喜你已经成功了第一步,然后注册个账号登录游戏,点击开始游戏,此时会停留在一个界面2-3分钟时间,如下图,这是由于一直在加载一个10MB+的文件,耐心等待即可,第二次开始游戏会读取浏览器缓存数据,无需等待。

大天使之剑H5游戏超详细图文架设教程

填写游戏名称,选择职业,目前有三个职业,剑士、魔法师和弓箭手,游戏中最后你将拥有三个职业,所以选择哪个都可以。

大天使之剑H5游戏超详细图文架设教程

最后,进入游戏界面,恭喜你已经成功完成游戏架设!

大天使之剑H5游戏超详细图文架设教程

12.GM工具

游戏自带GM工具,也就是Game Master游戏管理员,可以对游戏进行充值,发送装备,经验材料等功能,游戏内置的充值已屏蔽了支付配置。点击左侧GM悬浮按钮,打开GM界面。账号填写登录的账号,不是游戏人物名称,元宝280代表充值月卡,满级VIP10需充值200000元宝。

大天使之剑H5游戏超详细图文架设教程

邮件收取GM邮件

大天使之剑H5游戏超详细图文架设教程

直接满级VIP,也就是2万RMB的充值!

大天使之剑H5游戏超详细图文架设教程

同样你也可以单独打开GM界面进行操作,链接:http://IP:81/gm

大天使之剑H5游戏超详细图文架设教程

啊!无敌是多么寂寞…

13.关闭游戏

关闭游戏执行命令:

cd /data/
sh stop_server.sh

执行后没有提示,即代表关闭成功。为什么没有提示,因为没有结果就是最好的结果。

后续

1.安全问题

架设中使用的数据库是root账户,密码0987abc123,这就相当于把数据库暴漏了,知道IP就可以直接登录操作数据库了,所以存在着很大的安全问题。

首先我想到的解决办法就是修改root账户的密码,将源码中所有0987abc123替换成自己的密码,但是游戏没有运行成功,研究源码发现后台的核心文件 gameworld_24_5是加密的,会读取 GameWorld.txt文件中的配置:

--数据库连接配置
SQL =   {
  Host = "127.0.0.1",
  Port = 3306,
  DBName = "actor",
  DBUser = "root",
  DBPass = "jdusVRPm8XI+vYJb5gNZiw=="
}, --0987abc123

后台使用的数据库密码DBPass是0987abc123通过加密算法得到的,不知道加密方式和加密key无法设置新的密码,所以修改密码这种方法是行不通的。

所以只能修改用户名,对应三个数据库h5、actor、log(后台会自行创建log数据库)创建对应的账户,密码全部设置为0987abc123,只要不泄露账户名,数据库还是安全的,而且不会影响到root下的其他数据库。

对应修改源码中的数据库配置,将root用户名按照实际使用的数据库修改为对应的账户名。如上面 GameWorld.txt文件中修改的是actor数据库,那么就将root修改为actor数据库的账户。推荐使用webstorm或vscode IDE可全局搜索并替换。

还需要执行架设第6条导入数据库中的命令,使三个账户可以从任何主机连接到mysql服务器。

重新导入文件,运行游戏成功,这样就解决了数据库的安全问题。

2.修改区名

修改区名需要修改两处。

修改 /data/gameworld/GameWorld.txt文件

大天使之剑H5游戏超详细图文架设教程

修改数据库h5中server表name字段

大天使之剑H5游戏超详细图文架设教程

关闭游戏,重新启动游戏,否则有可能会报”不存在这个服务器”错误。

3.关于源码

大天使之剑H5游戏使用的是ajax和websocket通信方式传输游戏中的数据,主要使用shell命令、PHP、Lua、JavaScript等编程语言实现,可惜后台核心文件 dbserver_24_5gameworld_24_5gateway_qiji_24_5loggerserver_24_5都进行了加密处理,没法进一步研究,但是其他的功能,特别是前台对游戏界面渲染的实现还是很有研究价值的。

以上就是大天使之剑所有的图文架设教程,希望对你有所帮助,如有问题可通过我的博客https://echeverra.cn和微信公众号echeverra联系我。

你学”废”了么?

文章首发于我的博客
https://echeverra.cn

,原创文章,转载请注明出处。

大天使之剑H5游戏超详细图文架设教程

欢迎关注我的微信公众号,一起学习进步!不定时会有资源和福利相送哦!

Original: https://www.cnblogs.com/echeverra/p/15215406.html
Author: echeverra
Title: 大天使之剑H5游戏超详细图文架设教程

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/582360/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 青春浙江微信平台如何退出?如何重新登录?微信如何清除浏览器缓存,如何清除浏览器cookies?

    青春浙江不能退出重新登录,有同学可能寻找解决方法,给大家贴出来:bug 解决办法:1. debugmm.qq.com/?forcex5=true 打开调试2. http://deb…

    Linux 2023年5月27日
    085
  • LyScript 从文本中读写ShellCode

    LyScript 插件通过配合内存读写,可实现对特定位置的ShellCode代码的导出,或者将一段存储在文本中的ShellCode代码插入到程序堆中,此功能可用于快速将自己编写的S…

    Linux 2023年5月28日
    090
  • SpringBoot的文件上传&下载

    前言:不多BB直接上代码 文件上传 pom依赖添加commons-io <!– 上传/下载jar https://mvnrepository.com/artifact/co…

    Linux 2023年6月14日
    096
  • windows下使用route添加路由

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    Linux 2023年6月7日
    091
  • 一面数据: Hadoop 迁移云上架构设计与实践

    背景 一面数据创立于 2014 年,是一家领先的数据智能解决方案提供商,通过解读来自电商平台和社交媒体渠道的海量数据,提供实时、全面的数据洞察。长期服务全球快消巨头(宝洁、联合利华…

    Linux 2023年6月14日
    0113
  • 搭建NFS文件共享系统

    1、概述: NFS(Network File System)意为网络文件系统,它最大的功能就是可以通过网络,让不同的机器不同的操作系统可以共享彼此的文件。简单的讲就是可以挂载远程主…

    Linux 2023年6月7日
    084
  • redis

    ./redis-cli -a 111 KEYS "key*" | xargs ./redis-cli -a 111 DEL Original: https://…

    Linux 2023年5月28日
    087
  • 【电台谈心】2022罗翔老师回答毕业生的4个问题

    罗翔老师:谢谢这位同学的问题。我回想起自己找工作的经历,其实也是 一地鸡毛。本科毕业的时候,也没有多少招聘会。我只有一个单位,一个单位地去找。少数几家单位让你进去了,聊了聊又觉得你…

    Linux 2023年6月13日
    0106
  • mysql查询中字符串转换成数字

    在操作mysql时,经常需要将字符转换成数字,这一步虽然简单,但不常用的话也很容易忘记,现将在网上找到的方法记录如下: 1.将字符的数字转成数字,比如’0’…

    Linux 2023年6月13日
    068
  • Vue3

    setup 函数时,它将接受两个参数:(props、context(包含attrs、slots、emit)) setup函数是处于 生命周期函数 beforeCreate 和 Cr…

    Linux 2023年6月13日
    081
  • shell之常用的一些命令

    前言 自我感觉学习shell要常用man,–help这样挺方便去写的,光靠熟练远远不够的 bash;gutter:false;</p> <h1>!/bin…

    Linux 2023年6月8日
    082
  • [云原生]Kubernetes-Pod详解(第5章)

    一、Pod介绍 1.1 Pod结构 1.2 Pod定义 二、Pod配置 2.1 基本配置 2.2 镜像拉取 2.3 启动命令 2.4 环境变量 2.5 端口设置 2.6 资源配额 …

    Linux 2023年6月13日
    0133
  • 每周一个linux命令(ip)

    基础环境 Ip命令介绍 ip命令是一个能够给linux系统设置网络相关信息的命令,通过ip命令可以设置ip地址、子网掩码、网关、路由信息,本节主要讲解ip地址的查看、临时ip地址、…

    Linux 2023年6月8日
    0107
  • Docker 安装 MySQL、Redis

    1 Docker 中安装 Redis 1.1 创建目录 在硬盘上创建 redis 的数据目录: mkdir -p /Users/yygnb/dockerMe/redis/data …

    Linux 2023年6月7日
    097
  • 设计模式——–原型模式

    原型模式定义:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 原型模式的核心是一个clone方法,通过该方法进行对象的拷贝。 代码实例 原型模式的优点:性能更加优…

    Linux 2023年6月7日
    065
  • [20211215]提示precompute_subquery补充.txt

    [20211215]提示precompute_subquery补充.txt –//前几天测试precompute_subquery,我仔细想一下好像以前看书或者别人的b…

    Linux 2023年6月13日
    066
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球