前言

想体验经典Q版西游霸服快乐吗?想体验满级VIP的尊贵吗?想体验一招秒杀的爽快吗?各种极品装备、翅膀、宠物通通给你,就在梦幻西游!

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

我架设的梦幻西游链接:http://game.echeverra.cn,登录就送满级VIP和终生卡,关注我的微信公众号 echeverra 发送“梦幻西游GM”,告诉我你的游戏角色名,我会第一时间给你授权后台GM,快来体验一下吧。

之前写过大天使之剑H5游戏超详细图文架设教程,游戏链接:http://39.105.134.68:81,感兴趣的也可以看看。

大天使之剑是经典的传奇类游戏,这回架设的梦幻西游则是经典的回合制类游戏

游戏截图:

架设

1.架设条件

梦幻西游架设需要准备:

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

游戏源码中已去除广告,并修复部分功能。

2.安装宝塔及环境

宝塔是一个服务器运维管理软件,安装命令:

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

安装完后,按照提示信息登录宝塔(如果无法访问可能是由于服务器没有开放8888端口,参考第5条开放端口),并在宝塔软件商店中搜索以下软件安装:

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

3.上传源码

拿到源码后解压会得到sql和xyh5两个文件,将xyh5压缩文件通过宝塔上传到根目录(如果宝塔禁止上传到根目录,可上传其他路径后剪切粘贴到根目录)。

上传成功后解压到根目录

解压完成后,通过命令授予777权限

chmod -R 777 /home/server
chmod -R 777 /www/wwwroot/xy

安装lua脚本

cd /home/soft
tar -zxvf lua-5.1.5.tar.gz
cd lua-5.1.5
make linux test && make install

安装lua相关依赖

yum install readline-dev readline-devel unzip

安装模块管理工具luarocks

cd /home/soft
tar -zxvf luarocks-3.0.4.tar.gz
cd luarocks-3.0.4/
./configure --with-lua=/usr/local --with-lua-include=/usr/local/include
make && make install && make bootstrap
luarocks install luasocket

4.导入数据库

通过宝塔修改数据库root密码:echeverra(涉及到安全问题,建议修改成自己的密码,对应源码中的echeverra也需替换成自己的密码,推荐使用webstorm或vscode IDE全局搜索并替换)。

开放数据库远程权限:

mysql -u root -pecheverra
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'echeverra' WITH GRANT OPTION;
FLUSH PRIVILEGES;
quit

创建以下数据库:

  1. account
  2. chargeserver
  3. gameserver(字符集UTF-8,排序规则utf8_unicode_ci)
  4. gmserver
  5. oaglobal
  6. operationanalysisserver
  7. worldserver

上传sql文件夹下的数据库文件并导入,以account为例(用户名密码默认即可,代码中使用root账户)。

5.开放端口

需要开放的端口:

  1. 宝塔:8888
  2. phpmyadmin:888
  3. mysql:3306
  4. 游戏相关端口:80、10001、11001、12001 、8001、8004

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

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

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

6.修改IP

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

需要修改IP的文件:

/www/wwwroot/xy/cdn/preload.js
/www/wwwroot/xy/cdn/index.min.html
/www/wwwroot/xy/cdn/serverlist.php
/www/wwwroot/xy/cdn/serverlist.json

举例修改preload.js文件,其他文件修改方式相同。

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

7.创建游戏网站

添加游戏网站才能访问游戏,网站域名写你的IP,根目录为/www/wwwroot/xy/,PHP选择5.6版本。

8.开启游戏

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

cd /home/server
sh start.sh

启动成功后查看下端口10001、11001、12001 、8001、8004是否监听中,少任何一个都无法成功启动游戏。

netstat -lntp

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

输入用户名密码,点击一键注册或登录,等待资源加载完成,选择分区(只有一个区),进入游戏,Nice~

如果加载到95%一段时间不动,说明10001端口没有在监听中。

9.GM工具

游戏GM工具访问链接:http://IP/gm/gm.php,账号admin,密码123456,可以给游戏玩家授权GM功能,同样也可以给玩家充值发送物品。

刷新游戏后邮件查收。

10.关闭游戏

关闭游戏执行命令:

cd /home/server
sh stop.sh

后续

1.修改GM账号

修改GM用户名密码需要修改文件/www/wwwroot/xy/gm/config.php

修改$admin$gmcode即可修改GM的账号和密码,需要注意的是$key不可随意修改,如果修改需对应调整gmkey的值才能通过验证,而gmkey的值则是通过md5($key)得到。

2.授权源码分析

GM工具可以对游戏玩家进行GM授权,授权有两种,vip1充值只能进行元宝充值,vip2充值邮件可进行元宝充值和物品发送。那么在代码中它是如何实现的呢?我们打开/gm/adminquery.php文件。

首先会通过$uid.$pwd.$key三个字段拼接后用md5加密,然后将用户$uid作用key,$pwd$vip$qu作value以数组形式保存到文件中来储存vip用户的信息。

打开vip1.json可以看到保存的数据:

同样,被授权玩家通过http://IP/gm/打开玩家GM登录同样会读取vip1.json文件进行校验该用户是否为vip用户,所以玩家登录GM的密码和GM账号的密码一致为123456,并非玩家账号的密码。

3.使用域名访问

有好奇的小伙伴会发现我架设的游戏链接是http://game.echeverra.cn,并不是IP,这是因为之前的搭建的大天使之剑使用的就是IP形式,宝塔提示重复,所以使用的域名形式,而且域名看起来更加专业嘛~

改成域名访问也很简单,需要修改以下几处:

修改文件:

/www/wwwroot/xy/cdn/preload.js
/www/wwwroot/xy/cdn/index.min.html

需要注意的是,使用域名路径后的/cdn/也省略掉。

接下来修改游戏网站,填写域名,根目录为/www/wwwroot/xy/cdn/

因为游戏路径到/cdn/无法通过该域名访问上一级目录/gm/,所以我们还需要建一个GM的域名gm.echeverra.cn创建GM网站,目录为/www/wwwroot/xy/gm/,访问链接:http://gm.echeverra.cn

以上就是梦幻西游所有的图文架设教程,希望对你有所帮助,如有问题可通过我的博客https://echeverra.cn或微信公众号echeverra联系我。

你学“废”了么?


文章首发于我的博客 https://echeverra.cn/xyh5,原创文章,转载请注明出处。

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


梦幻西游H5游戏超详细图文架设教程的更多相关文章

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

    引言 想体验传奇游戏霸服的快乐吗?想体验满级VIP的尊贵吗?想体验一刀99999的爽快吗?各种极品装备装备.翅膀.宠物通通给你,就在大天使之剑! 本文讲解大天使之剑H5游戏的架设教程,想研究H5游戏如 ...

  2. SCIP | 数学规划求解器SCIP超详细的使用教程

    前言 小伙伴们大家好呀!继上次lp_solve规划求解器的推文出来以后,大家都期待着更多求解器的具体介绍和用法.小编哪敢偷懒,这不,赶在考试周之际,又在忙里偷闲中给大家送上一篇SCIP规划求解的推文教 ...

  3. GitHub超详细图文攻略

    GitHub超详细图文攻略 - Git客户端下载安装 GitHub提交修改源码工作流程 Git 分类: 转载2014-03-25 21:10 10641人阅读 评论(2) 收藏 举报 GitHubbr ...

  4. Sublime Text 3 全程详细图文原创教程

    Sublime Text 3 全程详细图文原创教程(持续更新中...) 一. 前言 使用Sublime Text 也有几个年头了,版本也从2升级到3了,但犹如寒天饮冰水,冷暖尽自知.最初也是不知道从何 ...

  5. 超强、超详细Redis入门教程【转】

    这篇文章主要介绍了超强.超详细Redis入门教程,本文详细介绍了Redis数据库各个方面的知识,需要的朋友可以参考下 [本教程目录] 1.redis是什么2.redis的作者何许人也3.谁在使用red ...

  6. 超详细Redis入门教程【转】

    这篇文章主要介绍了超强.超详细Redis入门教程,本文详细介绍了Redis数据库各个方面的知识,需要的朋友可以参考下   [本教程目录] 1.redis是什么 2.redis的作者何许人也 3.谁在使 ...

  7. VMware虚拟机下安装CentOS7.0超详细图文教程

    1.本文说明: 官方的第一个文本档案.也就是0_README.txt,大概意思是这样(渣翻译,但是大概意思还是有的). CentOS-7.0-1406-x86_64-DVD.iso:这个镜像(DVD ...

  8. 在Ubuntu下进行XMR Monero(门罗币)挖矿的超详细图文教程

    大家都知道,最近挖矿什么的非常流行,于是我也在网上看了一些大神写的教程,以及跟一些大神请教过如何挖矿,但是网上的教程都感觉写得不够详细,于是今天我这里整理一个教程,希望能够帮到想要挖矿的朋友. 首先, ...

  9. 【python】10分钟教你用Python做个打飞机小游戏超详细教程

    更多精彩尽在微信公众号[程序猿声] 我知道你们一定想先看效果如何 00 目录 整体框架 开始之前-精灵类Sprite 子弹类class Bullet 玩家飞机类class Player 敌机类clas ...

随机推荐

  1. Mac Ideal 常用快捷键

    智能提示 ⌘ -> command ⇧ -> shift ⌥ -> option -> 上箭头 -> 下箭头 ⌃ -> Control mac的option键  = ...

  2. 传统JIT和java9新特性AOT理解

    java慢的原因 1.  除了少量基本类型用栈存储外,所有对象都使用堆存储.堆的性能低于栈. 2.  很多强制类型转换(cast)或加查,耗用内存大.java运行时对类型检测,如果类型不正确会抛出Cl ...

  3. Android开发,缺少权限导致无法修改原文件,获取所有文件访问权限的方法

    在Android 11开发中,app会遇到使用绝对路径无法打开某文件的情况(文件存在根目录下,获取到的路径为:/storage/emulated/0/XXX.txt),而使用相对路径打开文件后(获取到 ...

  4. Vue初体验(一)

    每个 Vue 应用都需要通过实例化 Vue 来实现. 语法格式如下: var vm = new Vue({ // 选项 }) 接下来让我们通过实例来看下 Vue 构造器中需要哪些内容: 可以看到在 V ...

  5. Python3-sqlalchemy-orm 联表查询-无外键关系

    #-*-coding:utf-8-*- #__author__ = "logan.xu" import sqlalchemy from sqlalchemy import crea ...

  6. 痞子衡嵌入式:MCUXpresso Config Tools初体验(Pins, Clocks, Peripherals)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是MCUXpresso Config Tools三大件(Pins, Clocks, Peripherals). 不知道大家有没有这样的感受 ...

  7. Qt5之事件学习总结

    首先要明白一个概念,事件和信号并不一样,比如单击一下鼠标,就会产生鼠标事件(QMouseEvent),是对这个动作的描述,而因为按钮被按下了,按钮会发出clicked()的单击信号(是按钮控件产生的) ...

  8. 【odoo】【知识杂谈】单一实例多库模式下定时任务的问题分析

    欢迎转载,但需标注出处,谢谢! 背景: 有客户反应有个别模块下的定时任务没有正常执行,是否是新装的模块哪些有问题?排查后发现,客户是在一台服务器上跑着一个odoo容器,对应多个数据库.个别库的定时任务 ...

  9. VS Code闪现,巨头纷纷入局的Web IDE缘何崛起?

    我发了,我装的. 就在前几天,微软简短的发布了Visual Studio Code for the Web 的公告,而没过一阵,这则公告就被删除了,现在点经相关内容已经是404状态了.虽然公告的内容已 ...

  10. MeteoInfo-Java解析与绘图教程(四)

    MeteoInfo-Java解析与绘图教程(四) 上文我们说到,将地图叠加在色斑图上,但大部分都是卫星绘图,现在开始讲解micaps数据绘图,同样也是更多自定义配置 首先我们解析micaps数据,将之 ...