Update documents

Signed-off-by: Sean Du <do4suki@gmail.com>
This commit is contained in:
2025-03-10 15:29:29 +08:00
parent 94a822e5d1
commit 39d0803f4a
6 changed files with 34 additions and 93 deletions
+15 -31
View File
@@ -1,45 +1,29 @@
## 其三:AS 客户端修改
## 其三:服务端部署
AS 客户端修改同样分为 Android 和 iOS 两个平台。
### 主程序部署
### AS 客户端修改(Android
首先确认已经安装了 Go 环境以及 Git 工具,然后 `git clone https://github.com/YumeMichi/honoka-chan` 到你需要托管的服务器或者本地。
Android 客户端修改,分为两个部分:
1. 盛趣相关接口地址的替换
2. 客户端公钥和请求地址的替换
进入 `honoka-chan` 文件夹,执行 `go build` 编译,会自动下载依赖。
#### 盛趣相关接口地址的替换
编译完成运行 `honoka-chan.exe` 即可,Linux 上可执行文件为 `honoka-chan`
参考 [其二:SIF 客户端修改](./2.md) 中的相关部分,完全一样。
### 下载服务部署
#### 客户端公钥和请求地址的替换
#### SIF 数据下载服务
由于 AS 使用的是 Unity 引擎,所以相关的信息都存放在 `assets\bin\Data\Managed\Metadata\global-metadata.dat` 中,在上述步骤 Apktool 解包后的目录下找到该文件,使用 [MetaDataStringEditor](https://github.com/JeremieCHN/MetaDataStringEditor) 打开该文件。
下载 [一:文件准备](./1.md) 篇中的 SIF 全量数据,解压出 `list_CN_iOS``list_CN_Android` 两个文件
搜索栏里输入 `/ep` 定位到 `https://prod-llas.jijiagames.com/ep3071`,将该地址修改为你的服务器 IP 或者域名例如 `http://192.168.1.123/ep3071`。注意如果你的服务器不支持 https,请改成 http
本程序目录下的 `static` 目录下新建 `Android``iOS` 两个文件夹,然后将上面解压的两个文件夹按照对应系统移动到新建的这两个文件夹里,并将 `list_CN_iOS``list_CN_Android` 都改名为 `archives`。最后目录结构为 `static\iOS\archives``static\Android\archives`
![](./images/20230624200603.jpg)
如果只需要其中一个系统的数据包比如你不用苹果设备,可以删掉不用的。
继续搜索 `RSAKeyValue` 定位到 `<RSAKeyValue><Modulus>...</Modulus><Exponent>AQAB</Exponent></RSAKeyValue>`。此处为客户端通信所使用的公钥,格式为 XML,我们本地生成的 base64 需要经过转换后方可使用
由于数据包中也包含了盛趣服务器地址,所以为了不再次修改游戏配置文件,可以通过添加一个数据包,其中包含了修改过的服务器地址,并使其最后一个下载,这样会覆盖盛趣的服务器地址
![](./images/20230624202154.jpg)
这里以 iOS 为例,进入 `static\iOS\archives`,可以发现 `99` 的数据包最后一个为 `99_0_114.zip`。复制 `99_0_113.zip``99_0_115.zip`,打开压缩包,删除没用 `client_info.json`,然后将 `server_info.json` 解压出来。
打开 [RSAKeyConverter](https://raskeyconverter.azurewebsites.net/PemToXml) 网站,将 base64 格式的公钥复制粘贴进去,转换成 XML 格式后,替换上面搜索出来的值
按照 [二:客户端修改](./2.md) 中同样的方法解密文件、修改地址、重新加密后替换压缩包内的文件即可
![](./images/20230624201042.jpg)
Android 也是同样的操作。
最后点击另存为,保存为新的文件。替换 `assets\bin\Data\Managed\Metadata\global-metadata.dat` 后重新打包并签名即可。详细打包签名过程参考 [其二:SIF 客户端修改](./2.md) 中的相关部分
### AS 客户端修改(iOS
iOS 客户端修改,分为两个部分:
1. 盛趣相关接口地址的替换
2. 客户端公钥和请求地址的替换
#### 盛趣相关接口地址的替换
参考 [其二:SIF 客户端修改](./2.md) 中的相关部分,完全一样。
#### 客户端公钥和请求地址的替换
参考上文 Android 修改方式,完全一样。`global-metadata.dat``Payload\llas.app\Data\Managed\Metadata` 目录下,修改替换完,重新打包签名即可。详细打包签名过程参考 [其二:SIF 客户端修改](./2.md) 中的相关部分。
如果要将数据下载服务托管到云服务器,将 `static\Android``static\iOS` 这两个目录都上传到云服务器,然后自行建个 http 服务器即可,这里就不赘述了