闯荡西游之路,续写经典传奇,大话西游图文架设教程

前言

这次给大家带来的是我精心准备了很久的,也是大家呼声很高的大话西游,云集西游版本,安卓苹果双端,非变态版本,包含天梯、星阵、八卦等玩法,游戏内置GM后台,快来体验一下吧~

本文讲解大话西游架设教程,闯荡西游路,天地任我行!不知道这款IP游戏,是不是有你的青春呢~

我架设的大话西游请关注我的公众号 echeverra, 发送“大话西游”获取游戏链接和源码,后台 GM 发送“大话西游GM”免费获取,游戏长期维护,快来体验一下吧。

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

大话西游游戏截图:

架设

1. 架设条件

大话西游架设需要准备:

  1. linux服务器,建议 CentOs 7.6 版本,推荐腾讯云轻量应用服务器,性价比高。
  2. 游戏源码,关注我的公众号 echeverra,发送 “大话西游” 获取。

游戏会占大概 1600M 的运行内存,客户端热更也可以忽略不计,占用宽带也很小,所以对服务器要求并不高。

吐槽两句- -,苍天啊!我终于把我的 1核-2G-1M 配置的阿里云服务器利用上了,2021 年买的,贪便宜一冲动续费到了 2027 年,由于宽带太小,一直用不上,这次终于找到合适的游戏了。不过大家放心,我会升级宽带,保证大家玩的流畅一些哈。

2. 安装宝塔及环境

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

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

安装完后,按照提示信息登录宝塔,并在宝塔软件商店中搜索以下软件安装:

  1. web服务器:Nginx1.18
  2. 数据库:Mysql 5.7
  3. 编程语言:PHP 7.3
  4. 数据库:Redis 7.2
  5. 数据库管理工具:phpMyAdmin 4.9

3. 开放端口

我们直接开放所有端口1-65535,阿里云服务器在安全组中配置规则。

腾讯云服务器在防火墙中配置规则。

然后在宝塔菜单安全中开放所有端口。

4. 关闭防火墙

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

systemctl stop firewalld.service
systemctl disable firewalld.service

5. 上传源码

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

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

cd /
unzip dhxy.zip

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

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

6. 配置环境

执行命令:

cd /opt
tar zxvf environment.tar.gz

ln -s /opt/environment/pm2/bin/pm2 /usr/local/bin/pm2

打开etc/profile文件,在最后面复制下面的内容:

export PATH=$PATH:/opt/environment/node/bin

再执行安装 pm2:

npm install pm2

最后安装 java:

yum install java-1.8.0-openjdk.x86_64

打开etc/profile文件,在最后面复制下面的内容:

#set java environment
JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-2.el8_5.x86_64
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME CLASSPATH PATH

最终etc/profile文件添加的效果:

使etc/profile生效,执行命令:

source /etc/profile

7. 修改源码IP

源码中的 IP(39.105.134.68),需要替换成你自己的服务器 IP。

  1. \assets\res\import\0d\0d30c115-6a25-49e7-be89-2b19b49d4551.json
  2. \assets\res\raw-assets\46\46b3519d-4628-485e-a43c-831795575083.manifest
  3. \assets\res\raw-assets\fc\fcbfede2-3ed1-499d-8d37-8466cbfddaaa.manifest
  4. \home\xy-server\conf\GameConf.ts
  5. \www\wwwroot\dhxy\project.manifest
  6. \www\wwwroot\dhxy\version.manifest

在宝塔中找到对应文件,Ctrl+F批量替换 IP 即可。

8. 导入数据库

首先需要修改Redis的密码,宝塔打开软件商店,在已安装中找到Redis,在性能调整中设置requirepass123456

修改保存后,重载配置,重启Redis

设置完Redis再来处理MySql,在宝塔数据库菜单中修改root密码为123456

打开软件商店,已安装中找到MySql并设置,在配置修改中第26行添加如下代码:

lower_case_table_names=1

保存后,重载配置,重启Mysql

通过命令导入数据库:

cd /home
./sk

同步数据库会看到创建个两个数据库,说明导入成功~

咳咳,这里科普下数据库的一点小知识,看过我之前架设教程的应该知道,我一般会修改数据库的密码,防止他人攻击,后来才知道,当数据库的主机名设置为localhost时,外部是无法连接你的数据库的,知道密码也没用,所以不修改密码也是安全的- -。

9. 创建网站

大话西游需要创建一个站点,域名为 IP:8088,根目录为 /www/wwwroot/dhxy,PHP 选择 7.3 版本。

嗯,这个创建站点无需额外设置伪静态防跨站什么的,这样就可以了。

10. 启动游戏

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

cd /home/xy-server/
pm2 start dbserv.ts --time --interpreter /opt/environment/node/bin/ts-node
pm2 start gate.ts --time --interpreter /opt/environment/node/bin/ts-node
pm2 start game.ts --time --interpreter /opt/environment/node/bin/ts-node

都是pm2命令,后面会讲解如何自启动游戏。

查看下服务端口:

netstat -lntp

11. 客户端修改

11.1 安卓客户端

首先修改安卓端,需要修改三个文件:

  1. \assets\res\import\0d\0d30c115-6a25-49e7-be89-2b19b49d4551.json
  2. \assets\res\raw-assets\46\46b3519d-4628-485e-a43c-831795575083.manifest
  3. \assets\res\raw-assets\fc\fcbfede2-3ed1-499d-8d37-8466cbfddaaa.manifest

三个文件我放到了安卓修改目录下,用notepad++编辑器打开,将IP(39.105.134.68)替换成你的 IP 即可。找到大话西游.apk文件,用好压压缩软件打开,将修改好的三个文件分别拖回对应的目录下替换。

替换后使用签名工具ApkTool选择修改好的APK文件进行签名。

游戏账号注册邀请码:88888,后面我会讲解怎么修改邀请码。

如果签名后手机出现无法安装的问题,尝试用模拟器 MT 管理器签名。

11.2 苹果客户端

苹果端同样需要修改三个文件:

  1. \Payload\wxxy-mobile.app\res\import\0d\0d30c115-6a25-49e7-be89-2b19b49d4551.json
  2. \Payload\wxxy-mobile.app\res\raw-assets\46\46b3519d-4628-485e-a43c-831795575083.manifest
  3. \Payload\wxxy-mobile.app\res\raw-assets\fc\fcbfede2-3ed1-499d-8d37-8466cbfddaaa.manifest

三个文件我放到了苹果修改目录下,用notepad++编辑器打开,将IP(39.105.134.68)替换成你的 IP 即可。找到大话西游.ipa文件,用好压压缩软件打开,将修改好的三个文件分别拖回对应的目录下替换。

修改好后我们需要借助爱思助手签名,签名后就可以成功安装到自己的苹果手机中,需要在手机设置-通用-设备管理中信任该软件才可启动。

游戏账号注册邀请码同样是:88888。快快进入游戏吧~

12. 游戏后台

游戏有两个后台,第一个是内置 GM 授权的后台:http://IP:8088/gm1,填写角色名和权限值就可以授权 GM,权限值从0-99999是最高的权限,具体的权限级别设定大家可以参考文件\home\xy-server\game\network\Agent.ts

游戏内置 GM 工具,在游戏界面左上方,点击凤凰图案,效果图如下。

第二个是充值额度设置后台:http://IP:8088/gm2,上一步授权 GM 后,还需要设定充值的额度,在游戏 GM 工具中你最多只能充值这个额度,不知道是谁设计的- -。

两个后台都不要填写 GM 码,如果想做限制可以自己开发下 GM 码功能。

13. 关闭游戏

关闭游戏服务很简单,命令:

pm2 stop all

后续

免责声明

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

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

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

注册邀请码

注册邀请码需要修改数据库xy_ga中表qy_agentcode字段值,最长不能超过5位,需要重启游戏才能生效。

游戏公告

游戏公告需要修改数据库xy_ga中表dhxy_commenttext字段值,需要说明的是无法在phpMyadmin中直接修改,需要修改/home/sql/xy_ga.sql文件后,重新导入数据库才行。

开机自启动

游戏执行启动命令后,设置开机启动,执行命令:

pm2 startup
   

在执行保存现有列表数据命令,开机后会自动加载已保存的应用列表启动:

pm2 save
   

我们可以重启服务器测试一下,重启后输入命令查看进程:

pm2 list

游戏进程全部自启动成功,Nice~

关于大话西游

大话西游这个版本我找了许久,最近流行的大话缥缈西游我试了苹果端会有闪退的问题,后来又试了一款大话天空西游系列,发现我的苹果13竟然提示设备版本过低,我emo了…

后来找雪糕给我推荐的这个版本,暂时没发现什么问题,而且对服务器要求很低,正好把我沉寂多年的渣渣服务器利用上了…

说来惭愧,像梦幻西游一样,大话西游我也没玩过,不过有好多好朋友想玩,我能理解就像我想玩阿拉德一样,情怀无价,都是青春的记忆,所以我必须出…

最后感谢大家一路的支持与陪伴,还有对我只能月更的包容,祝大家游戏愉快,一切顺利~

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

你学“废”了么?

(完)


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

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


在地图里面添加NPC,先在npc.csv里面做一个NPC。然后再把这个NPC的id加到你所要想给它出现的地图里面,然后上传,重启 下面我们来做一个NPC,NPC的id不能重复,它的坐标就在游戏里面你想让它出现的坐标,比如现在我想让这个新NPC出现在这们位置,写下它的X 和Y,然后用工具算,把换算好的这个坐标粘贴到npc.csv里面,坐标后面是名字,这个你可以随便写,我这里要放个船,所以就不写了,而它的类型是0,就是没有作用的NPC,只能拿来看的,这个NPC类型大家往上看就能知道它们所代表的意思了,像这个名叫冯铁匠的它的类型是12,你可以到游戏里面看看这个类型是12的有哪些功能就知道它代表的意思了,这个大家想加什么样功能的NPC就往上面来看来找,找到直接复制粘贴到最下面,改开头的id ,我这里加个船样子的NPC,我已经做好了素材,现在我把这个素材的编号写到它的皮肤那栏里,它的方向就是后面那个数字了,搞错的话它是不显示出来的,写好NPC然后把它的id写到map.csv里面,我要放到长安城,那么就找到长安的地图,1207,这些都是出现在长安的NPC的id了,你不在这里写它id的话它是不会显示出来的,这个素材我没有调好位置, 所以它就这样了,不过基本的添加NPC就是这样做了,好了这个暂时讲到这里,如果想知道它们的关系请看“map npc door之间的关系”那篇教程吧!
### 如何在 Android 应用中实现图片与文本之间的转换 #### 图片到文本的转换 (OCR) 为了实现在 Android 中将图片中的文字提取出来,可以采用光学字符识别(Optical Character Recognition, OCR)技术。Google 提供了 ML Kit 这样的工具包来简化这一过程。 安装依赖项: ```gradle dependencies { implementation 'com.google.mlkit:vision-common:17.0.2' implementation 'com.google.mlkit:text-recognition:16.0.0' } ``` 创建一个方法来进图像处理并获取其中的文字内容: ```java public void recognizeTextFromImage(Bitmap bitmap) { InputImage image = InputImage.fromBitmap(bitmap, 0); TextRecognizer recognizer = TextRecognition.getClient(); Task<Text> result = recognizer.process(image) .addOnSuccessListener(text -> { StringBuilder strBuilder = new StringBuilder(); for (Text.TextBlock block : text.getTextBlocks()) { strBuilder.append(block.getText()); strBuilder.append("\n"); } // 更新UI线程上的TextView或其他组件以展示结果 runOnUiThread(() -> textView.setText(strBuilder.toString())); }) .addOnFailureListener(e -> Log.e("MLKit", "Error processing image", e)); } ``` 此代码片段展示了如何通过 Google 的 ML Kit 来解析位图对象 `bitmap` 并从中抽取文本[^1]。 #### 文本到图片的转换 对于从文本生成图片的需求,则可以通过绘制自定义 View 或者使用第三方库如 Glide 加载网络图片资源等方式完成。如果目标是在 EditText 内嵌入富媒体元素比如图片、音频进度条等特殊 Span 类型,则可以根据特定需求定制相应的 Span 子类。 当希望直接把纯文本转化为带有样式的静态图片时,可考虑先构建 Canvas 和 Paint 对象,在内存中画出想要的效果后再保存成 Bitmap 文件形式返回给调用方。 下面是一个简单的例子说明怎样基于字符串数据渲染一张带有所需样式的新图片: ```java private Bitmap createImageFromText(String inputText){ int padding = 5; float scale = getResources().getDisplayMetrics().density; Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG | Paint.LINEAR_TEXT_FLAG); paint.setColor(Color.BLACK); paint.setTextSize(48 * scale); Rect bounds = new Rect(); paint.getTextBounds(inputText, 0, inputText.length(), bounds); Bitmap outputBitmap = Bitmap.createBitmap( bounds.width() + padding * 2, bounds.height() + padding * 2, Bitmap.Config.ARGB_8888 ); Canvas canvas = new Canvas(outputBitmap); canvas.drawColor(Color.WHITE); canvas.drawText(inputText, -bounds.left + padding, -bounds.top + padding, paint); return outputBitmap; } ``` 这段 Java 方法接受一段文本作为参数,并按照指定字体大小和颜色将其绘制成一幅新的位图图像[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值