开箱一时爽,一直开箱一直爽!忆游十三道游戏详细图文架设教程

前言

这个月给大家带来的是非常热门的开箱游戏《忆游十三道》代金券内购版,融合了开宝箱、炼器、兽灵培养、钓鱼等特色玩法,支持安卓和 H5 版本,快来一起放置挂机,开出最顶级的装备吧!

本文讲解《忆游十三道》架设教程,我将详细讲解架设步骤和开服修改,全部都是干货!大家也可以直接玩我架设好的公益服,体验游戏中土豪氪金的快乐,希望你也喜欢这款游戏~

我架设的《忆游十三道》公益服请关注我的公众号 echeverra, 发送“忆游十三道”获取游戏链接和源码,后台 GM 发送“忆游十三道GM”免费获取,游戏长期维护,快来体验一下吧。

如果你对 GM 游戏感兴趣,推荐另外几款我架设的 GM 游戏:GM 游戏整理汇总,你也可以访问我的 521GM游戏网,欢迎来玩~

忆游十三道游戏截图:

架设

1. 架设条件

忆游十三道架设需要准备:

  1. linux服务器,安装 CentOs 7.6 版本,推荐腾讯云轻量应用服务器,性价比高。
  2. 游戏源码,关注我的公众号 echeverra,发送 “忆游十三道” 免费获取。

游戏会占大概 1.3G 左右的运行内存,可以网页 H5 玩游戏,所以对服务器宽带有一定的要求,建议 2 核 4G 配置的服务器。

2. 连接服务器

服务器安装完系统后,安装资源工具目录下的finalshell.exe,填写服务器 IP,用户名和密码连接服务器。finalshell 非常强大,可以输入命令,文件传输和查看服务器状态等。

3. 安装宝塔及环境

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

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

安装完后,按照提示信息登录宝塔,在面板设置菜单中将面板 SSL 关闭,然后在软件商店中搜索以下软件安装:

  1. web服务器:Nginx 1.26
  2. 数据库:MySQL 5.7
  3. 编程语言:PHP 7.1
  4. 数据库:Redis 7.2
  5. 数据库:MongoDB 4.4
  6. 数据库管理工具:phpMyAdmin 4.4
  7. 工具:Linux工具箱 2.5

4. 开放端口

我们直接开放服务器所有端口 1-65535,以腾讯云轻量服务器为例,在防火墙中添加规则选择 ALL 全部添加。

然后在宝塔菜单安全中添加端口规则,协议选择 TCP/UDP,端口填写 1-65535,开放所有端口。

如果担心开放全部端口有风险,可以在后文中启动游戏章节,查看具体游戏占用的端口,单独开放这些端口。

5. 关闭防火墙

通过宝塔菜单终端,执行关闭防火墙命令:

systemctl stop firewalld.service
systemctl disable firewalld.service

6. 上传源码

拿到源码后,将yyssd.zip压缩文件通过宝塔上传到根目录,由于最新的宝塔禁止直接上传到根目录,可以先上传到任一目录下,再剪切粘贴到/根目录。或直接通过 finalshell 工具直接上传到根目录也可以。

上传成功后,剪切粘贴到根目录,并通过命令解压到根目录。

cd /
unzip yyssd.zip

并给予 777 全部权限:

chmod -R 777 /data
chmod -R 777 /www/wwwroot/web-mobile

7. 配置环境

先设置虚拟内存,使用 Linux 工具箱添加 Swap,由于游戏占用内存并不大,建议 2G 内存的服务器添加,比如添加 4G 虚拟内存。

然后安装环境,首先下载安装 Node.js:

cd /
wget https://cdn.npmmirror.com/binaries/node/v16.19.1/node-v16.19.1-linux-x64.tar.xz -P /usr/local/src/

cd /usr/local/src
sudo xz -d node-v16.19.1-linux-x64.tar.xz

sudo tar -xvf node-v16.19.1-linux-x64.tar -C /usr/local/src/
sudo mv /usr/local/src/node-v16.19.1-linux-x64 /usr/local/node
sudo ln -s /usr/local/node/bin/node /usr/local/bin/
sudo ln -s /usr/local/node/lib/node_modules/npm/bin/npm-cli.js /usr/local/bin/npm
sudo ln -s /usr/local/node/lib/node_modules/npm/bin/npx-cli.js /usr/local/bin/npx

再下载安装 Typescript:

npm config set registry https://registry.npmmirror.com

npm install -g typescript@3.7.7

sudo ln -s /usr/local/node/bin/tsc /usr/local/bin/

安装项目依赖:

cd /data/www/shanhai_backend_tb
npm install

8. 修改源码 IP

源码中的 IP(43.140.249.71),需要替换成你自己的服务器 IP,替换 IP 文件只有一个:

  1. \www\wwwroot\web-mobile\assets\pzwj\import\8c\8c76ddfa-1253-4d67-8294-3ff77d5a10b0.json

我们也可以通过命令直接修改 IP:

sed -i "s/43.140.249.71/服务器IP/g" `grep 43.140.249.71 -rl /www/wwwroot/web-mobile`

将命令中的服务器IP改成你的服务器 IP,通过命令就可以将全部文件 IP 替换掉。

9. 配置数据库

忆游十三道用到了三种数据库,MySQL、Redis 和 MongoDB,我们来一个一个配置。

首先配置 MySQL,将 MySQL root 密码修改为 123456

导入数据库,执行命令:

mysql -uroot -p123456
create database cdk;
use cdk;
source /data/cdk.sql;
exit

在同步数据中点击从服务器同步到面板,可以获取到一个数据库,说明导入成功。

然后配置 Redis,在性能调整中将密码 requirepass 修改为 123456,同时将数据库数量 databases 修改为 1600。

在设置持久化中RDB持久化 3 个时间分别设置 99、99、100000 条,这些设置是为了解决登录排队的问题。

最后配置 MongoDB,先使用 Navicat 远程连接 MongoDB,在资源工具中找到 Navicat_16.zip 解压后双击打开 navicat.exe,无需授权就可以直接使用。

打开界面后,点击左上角连接,选择 MongoDB。

使用 SSH 连接,勾选使用 SSH 隧道,填写主机服务器 IP,用户名密码是你服务器的用户名密码,点击确定。

MongoDB 连接成功后,鼠标右键新建数据库shanhaitbkfshanhaitbkfflow

然后开始导入数据库脚本,双击创建好的数据库shanhaitbkf,鼠标右键选择运行脚本文件,找到资源中的 2 个数据库shanhaitbkf.jsa_huodong.js,先后分别运行导入,a_huodong.js脚本是我修改的开启全部活动的脚本。

再双击数据库shanhaitbkfflow,找到资源中的数据库shanhaitbkfflow.js导入。全部运行导入后,鼠标右键数据库点击刷新就可以看到导入的所有数据库集合啦。

以上就是三种数据库所有配置和导入了,MySQL 存储授权 CDK 的数据,Redis 会存储一些游戏玩家的简单数据,是永久保存的,而游戏的主要数据都会存储在 MongoDB 数据库中。

10. 创建网站

忆游十三道只需要创建 1 个站点,在宝塔网站菜单中添加站点。

站点域名为 IP:81(你的服务器 IP),根目录为 /www/wwwroot/web-mobile,PHP 选择 7.1 版本。

11. 启动游戏

以上步骤都操作完毕,就到了激动人心的启动游戏啦!

启动游戏:

cd /data/www/shanhai_backend_tb
./t_restart.sh

然后输入 9,一键重启。

启动完毕后查看下游戏端口:

netstat -lntp

游戏启动成功后,浏览器输入游戏链接:http://IP:81,就可以访问游戏啦,输入一个自己的账号,就相当于注册了,因为不是用户名密码注册,所以账号填写的尽量复杂一些,然后就可以进入游戏玩耍啦~

12. 客户端修改

忆游十三道客户端仅支持安卓端,只需要修改一个文件:

  1. /assets/apps/H5EFAD055/www/assets/pzwj/import/8c/8c76ddfa-1253-4d67-8294-3ff77d5a10b0.json

资源客户端目录下找到忆游十三道.apk安卓客户端,用好压软件打开,将文件8c76ddfa-1253-4d67-8294-3ff77d5a10b0.json拖出来。使用资源中的 Notepad++ 打开,将 IP(43.140.249.71)替换成你自己的服务器 IP。

修改后保存,将文件8c76ddfa-1253-4d67-8294-3ff77d5a10b0.json拖回忆游十三道.apk客户端对应的目录下,替换掉原文件。

然后就可以安装到安卓手机或者电脑模拟器上愉快的玩耍啦~ 苹果手机玩家也不要慌,直接浏览器访问 H5 游戏链接:http://IP:81也是一样的哈~

13. 游戏后台

忆游十三道有两个后台,GM 后台和运营后台。

GM 后台需要先生成 CDK,CDK 生成链接:http://IP:81/gm/cdk/log.php,默认GM码:123456。修改 GM 码需要修改文件/www/wwwroot/web-mobile/gm/cdk/genCdk.php$gmpwd字段值即可。

生成 CDK 后,访问授权链接:http://IP:81/gm/cdk/,填写 CDK 和角色编号,角色编号是游戏中左上角头像点开后的 ID。

授权后就可以打开玩家 GM 后台:http://IP:81/gm/ht.html,填写角色编号,选择物品填写数量,点击添加道具,然后就可以发送啦~

运营后台链接:http://IP:4030,默认账号:admin,密码:123456,运营后台功能包括活动配置,邮件发送,查看玩家数据等,功能还是很强大的。

14. 关闭游戏

关闭游戏服务很简单,同样输入命令:

cd /data/www/shanhai_backend_tb
./t_restart.sh

然后输入 k,全杀 node 就可以啦。

后续

免责声明

我架设的所有游戏资源均搜集于互联网,如有侵权,请联系我,我会马上删除。

游戏都是禁止内充的,只限于技术研究使用,禁止商用,请于下载后 24 小时内删除,或购买正版。

根据二○○二年一月一日《计算机软件保护条例》规定:为了学习和
研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软
件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬
鉴于此,也希望大家按此说明研究软件。

游戏修复

游戏我主要修复了一个问题,在测试阶段大概率会出现游戏无法进入,提示活动已结束,我已经在代码中进行了修复,后来没有再出现过该问题。

其他的都是一些小问题,比如游戏中部分市集道具无法内购,提示参数错误问题,并不影响整体游戏,我就没有对此进行修复。

因为可以进行一些取巧,比如星魂获取比较慢,可以将市集第一个兑换轮回石改为高级星魂袋,对应的文件是/data/www/shanhai_backend_tb/common/excel/shopItem.json,将第一行改为:

{"id":"1","need":[1,1,150],"item":[1,905,100]}

其中所需物品"need":[1,1,150]第一个1固定不变,第二个1是灵石的代码,如果是代金券对应的代码是8150是数量。兑换物品"item":[1,905,100]中的905是高级星魂袋的代码,100 是数量。修改后需要重启游戏生效,效果如下:

具体的物品代码可以参考文件/www/wwwroot/web-mobile/gm/itemMoney.json,聪明的你肯定想到可以参考这个逻辑继续添加其他内购物品,但是经测试是不生效的,因为这只是修改的编译后的前端文件,还需要修改对应的后端文件,比较麻烦,所以我就没弄,感兴趣你也可以修改试试。

其他的改动主要是上面说的 MongoDB a_huodong.js脚本,我将所有活动都开启了。

还可以进行一些魔改,比如等级上万可以在资源中魔改教程.zip找到,里面有对应教程替换文件即可,感兴趣也可以试试,我这里保留默认的上限 200 级版本。

区名修改

区名修改很简单,打开 Navicat 连接 MongoDB,打开数据库shanhaitbkf集合a_qufu,修改name即可,重启游戏后生效。

公告修改

公告修改也很简单,同样修改 MongoDB,打开数据库shanhaitbkf集合a_setting,修改id69value值,按照原有格式修改即可,分别代表游戏内公告和登录界面公告,重启游戏后生效。

密码修改

开服的话肯定是需要修改一些默认密码的,否则会被别人登录篡改数据攻击,MySQL 和 Redis 的密码不用修改,因为默认是无法远程连接的,他人是无法连接登录的。

主要修改的是运营后台的密码,需要修改 MongoDB,打开数据库shanhaitbkf集合a_user,修改pwd值即可。

资源外置

因为游戏支持 H5 链接,所以会加载大量的游戏静态资源占用宽带,观察浏览器网络请求,发现大量的静态资源都在/www/wwwroot/web-mobile/assets目录下,所以我们将assets目录上传到资源服务器目录/www/wwwroot/13dao下。

注意我们还需要修改一个文件的 IP,文件/www/wwwroot/13dao/assets/pzwj/import/8c/8c76ddfa-1253-4d67-8294-3ff77d5a10b0.json,将 IP(43.140.249.71)修改为你的游戏服务器 IP。

然后在资源服务器上创建可访问的资源站点,域名填写IP:port,IP 为资源服务器 IP,端口 port 不要使用已占用的端口,根目录选择/www/wwwroot/13dao

创建完后需要修改配置文件,使得游戏服务器可以跨域访问到资源服务器的文件。

#CORS-START
add_header 'Access-Control-Allow-Origin' 'http://游戏服务器IP:port';
add_header 'Access-Control-Allow-Methods' 'GET,POST,OPTIONS,PATCH,DELETE,HEAD';
add_header 'Access-Control-Allow-Headers' 'Content-Type,Authorization,X-Requested-With,Range,Accept,Cache-Control,If-Modified-Since,';
add_header 'Access-Control-Max-Age' '86400';
add_header 'Access-Control-Expose-Headers' 'X-Custom-Header,Content-Length,ETag,Cache-Control,Last-Modified,Expires,Vary,';
if ($request_method = 'OPTIONS') {
    return 204;
}
#CORS-END

我们使用重定向的方式获取资源服务器游戏资源。修改游戏服务器的站点IP:81,配置文件中添加重定向代码:

# 重定向 /assets/ 路径
location ^~ /assets/ {
    return 301 http://资源服务器IP:port$request_uri;
}

这样游戏中加载的资源就会 301 重定向到资源服务器上,不消耗游戏服务器的宽带啦,Nice~

游戏重启

游戏建议每天至少重启一次,保证游戏的稳定性,通过宝塔计划定时执行重启游戏命令:

pkill -9 node

cd /data/www/shanhai_backend_tb
npm run build
nohup node ./dist/app.js >>all.log 2>&1 &
npm run buildAdmin
nohup node --max-old-space-size=8192 ./dist/admin/www.js >>all.log 2>&1 &

游戏清档

游戏的运营后台:http://IP:4030提供了清档功能,口令是qxt2022,然后分别点击4、5、9、10,我简单测试了下,应该是生效的。

不过我更建议按照我的方式清档,分别对三种数据库清档。其中 MySQL 和 MongoDB 按照教程上面的重新导入即可,Redis 在宝塔中可以直接清空数据库,然后重启游戏即可。

数据迁移

首先说下为啥要研究数据迁移,此事说来话长,上月本来是要出白日门恋战传奇的,在测试过程中发现当玩家达到两位数后,游戏就会明显延迟卡顿,一联想要每次发布新游戏,我弱小的服务器根本无法让很多玩家进入,于是我一咬牙就买了一个高配的服务器,想着用高配服务器测试下恋战传奇,结果最终发现不是服务器的问题,应该是端的限制,游戏对并发处理的不好,最终放弃了这款传奇。

虽然传奇没有测试通过,但是这个高配服务器让我有了一个大胆的想法,那就是以后发布新游戏,我先部署在高配服务器上,让大家畅玩个 1-2 个月,游戏能够基本毕业,然后在将游戏数据迁移到我的普通长久的服务器上,还能继续玩。

这样大家就不会因为开服人多,游戏卡顿或者无法进入而苦恼了,不过就是需要我搭建两遍游戏,然后迁移游戏数据- -,不过想想大家终于能够畅快的玩我的游戏了,我还是很激动的,一切都是值得的。

言归正传,忆游十三道数据迁移需要迁移三种数据库的数据。先关闭两个服务器的游戏服务,在原服务器宝塔中 MySQL 和 MongoDB 都可以直接备份数据,然后在新服务器上选择对应的数据库导入备份数据。mongoDB 也可以使用 Navicat 导出 js 脚本,然后运行脚本导入新的服务器。这里重点说下 Redis 数据迁移。

首先一定要先停止新服务器的 Redis,否则导入后很快就会覆盖掉出问题,找到原服务器文件/www/server/redis/dump.rdb,这个是 Redis 持久化保存的文件,下载下来,然后上传到新服务器目录/www/server/redis/,覆盖掉原文件,再启动 Redis,启动会自动读取这个文件的内容,这样 Redis 数据迁移就搞定啦!

游戏源码

这次我将在资源中分享忆游十三道的源代码,不是编译好的端哈,源码使用的技术是 cocos + ts,入门门槛并不高,想研究游戏或者二开的小伙伴可以试试,后面我会尝试开发修改一下,如果研究的还可以可能会出个教程也说不定,哈哈~

关于游戏

首先先跟大家道个歉,上个月我没有出新游,不是我偷懒哈,而是研究的两个游戏都有点问题,没有伞因为一些原因,我没敢出,还在观望,白日门恋战传奇端有问题,玩家一多就卡顿的严重,根本没法玩,所以只能放弃,心碎了一地...大家可以关注下我的 521GM游戏网:https://521gm.cn 的置顶文章,有我的最新动态发布,大家可以及时了解游戏动态。

然后就开始研究忆游十三道了,这是我研究的第一个开箱游戏,之前也有看到,但是因为这些开箱游戏刚出的时候问题都比较多,所以一直是观望状态,等修复的差不多稳定了才开始弄,毕竟我只出精品游戏嘛,嘿嘿,不得不说,开箱游戏真魔性,停不下来,哈哈~

感谢新游测试群的小伙伴对新游戏测试做出的贡献,如果你也有时间,想提前体验新游戏也可以一起加入哈:https://echeverra.cn/group

最后感谢大家一路的支持与陪伴,祝大家游戏愉快,一切顺利~ 我们下个游戏见!

好啦,以上就是忆游十三道架设教程的所有内容,希望对你有所帮助,如有问题可通过我的博客 https://echeverra.cn 或微信公众号 echeverra 联系我。

你学“废”了么?

(完)

(文章今日已有 50 人访问 ::>_<::)
文章首发于我的博客 https://echeverra.cn/yyssd,原创文章,转载请注明出处。
欢迎关注我的微信公众号 echeverra,一起学习进步!不定时会有资源和福利相送哦!
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇