276 lines
16 KiB
HTML
276 lines
16 KiB
HTML
<!doctype html>
|
||
<html>
|
||
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<title>智龙急速阵型帮助</title>
|
||
<link rel="shortcut icon" href="images/icon.png" type="image/x-png" />
|
||
<meta name="viewport"
|
||
content="width=device-width,initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no" />
|
||
<style type="text/css">
|
||
code {
|
||
padding: .2em .4em;
|
||
margin: 0;
|
||
font-size: 85%;
|
||
background-color: rgba(175, 184, 193, 0.2);
|
||
border-radius: 6px;
|
||
font-family: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace;
|
||
white-space: pre-wrap;
|
||
}
|
||
.block-code
|
||
{
|
||
display: block;
|
||
background-color: #ddd;
|
||
}
|
||
ul>li {
|
||
margin-bottom: 5px;
|
||
}
|
||
</style>
|
||
</head>
|
||
|
||
<body>
|
||
<h1>如何获取用户游戏数据<br>How to get user game data</h1>
|
||
<h2>目录 | Index</h2>
|
||
<ul class="index">
|
||
<li><a href="#android">安卓用户 | Android User</a>
|
||
<ul class="index">
|
||
<li><a href="#no-root">无 Root 设备用户 | No Root device user</a>
|
||
<ul class="index">
|
||
<li><a href="#use-HttpCanary">使用 HttpCanary | Use HttpCanary</a></li>
|
||
<li><a href="#use-Fidder">使用 Fidder | Use Fidder</a></li>
|
||
<li><a href="#multiple-devices">如何多设备登录 | How to login with multiple devices</a></li>
|
||
</ul>
|
||
</li>
|
||
<li><a href="#have-root">Root 设备用户 | Root device user</a></li>
|
||
</ul>
|
||
</li>
|
||
<li><a href="#ios">苹果用户 | iOS User</a></li>
|
||
</ul>
|
||
|
||
<h2 id="android">安卓用户 | Android User</h2>
|
||
<h3 id="no-root">无 Root 设备用户 | No Root device user</h3>
|
||
<p>你需要在在电脑上安装一个能运行智龙迷城的安卓模拟器,比如 夜神模拟器、逍遥安卓、蓝叠模拟器。后面以<a
|
||
href="https://www.bignox.com/">夜神模拟器国际版</a>进行讲解。(与夜神没有任何赞助关系。国际版自带谷歌套装,也能改中文)<br>
|
||
You'll need to install an Android simulator on your PC that runs P&D, such as NoxPlayer, MEmu Play,
|
||
BlueStacks. I'll use <a href="https://www.bignox.com/">NoxPlayer</a> later to explain. (There is no sponsorship
|
||
relationship with NOX.)
|
||
</p>
|
||
<p>自行安装智龙迷城游戏并登录你的游戏账号。<br>
|
||
Install P&D and log in to your game account.<br>
|
||
<img src="images/player-emu-pad-download-data.webp" alt="下载PAD数据">
|
||
</p>
|
||
<p>如果闪退,打开多开器,添加一个能运行智龙迷城的版本,目前有 安卓7 和 安卓7-64位。<br>
|
||
If P&D can't be opened, run the Multi-Drive and add a version that runs P&D, currently available in
|
||
Android 7 and Android 7-64 bits.<br>
|
||
<img src="images/player-emu-add-new.webp" alt="添加模拟器">
|
||
</p>
|
||
<p>然后你可以选择在安卓内使用 APP 和电脑上用代理软件两种方式抓包。<br>
|
||
You can then choose to sniffer in both use the APP within Android and proxy software on your PC.<br>
|
||
<img src="images/player-emu-add-new.webp" alt="添加模拟器">
|
||
</p>
|
||
<h4 id="use-HttpCanary">使用 HttpCanary APP | Use HttpCanary APP</h4>
|
||
<p>请自行从网上搜索并安装 <a href="https://www.423down.com/9279.html">HttpCanary</a>(已被谷歌商店下架)。<br>
|
||
Please search the web and install <a
|
||
href="https://apkpure.com/httpcanary-%E2%80%94-http-sniffer-capture-analysis/com.guoshi.httpcanary">HttpCanary</a>
|
||
yourself (It's blocked by google store).<br>
|
||
<img src="images/player-emu-install-apk.webp" alt="安装 APK">
|
||
</p>
|
||
<p>打开模拟器的 Root,并重启。<br>
|
||
Open the simulator's root and restart.<br>
|
||
<img src="images/player-emu-open-root.webp" alt="打开 Root">
|
||
</p>
|
||
<p>运行 HttpCanary,按照提示配置本地 VPN 和导入证书(系统可能要求设置密码)。<br>
|
||
Run HttpCanary, follow the prompts to configure the local VPN and import certificates (The system may require a
|
||
password).<br>
|
||
<img src="images/player-emu-httpcanary-vpn.webp" alt="开启 VPN">
|
||
<img src="images/player-emu-httpcanary-cer.webp" alt="安装证书"><br>
|
||
授予 Root 权限,将证书移至系统目录。安卓 7 以上必须这样做才能嗅探到 https 的流量。<br>
|
||
Grant Root permission to move the certificates to the system directory. Android 7 or above must do this to sniff
|
||
out https traffic.<br>
|
||
<img src="images/player-emu-httpcanary-move-cer.webp" alt="移动证书到系统目录">
|
||
</p>
|
||
<p>可以根据需要关闭 Root 了(日服客户端需要关闭 Root 才能运行)。<br>
|
||
Root can be closed as needed. (The Japanese version client needs to close Root operation.)
|
||
</p>
|
||
<p>HttpCanary 菜单内添加智龙迷城为目标应用,可减少其他流量的干扰。<br>
|
||
Add P&D to the target app in HttpCanary menu, to reduce interference with other traffic.<br>
|
||
<img src="images/player-emu-httpcanary-target-app.webp" alt="设置目标应用">
|
||
</p>
|
||
<p>回到首页,点击主按钮开始嗅探流量。<br>
|
||
Back on the home page, click the main button to start sniffing traffic.<br>
|
||
<img src="images/player-emu-httpcanary-start.webp" alt="开始嗅探">
|
||
</p>
|
||
<p>运行智龙迷城游戏,直到登陆成功。<br>
|
||
Run the P&D game until log in successfully.<br>
|
||
<img src="images/player-emu-pad-login.webp" alt="登录游戏">
|
||
</p>
|
||
<p>返回
|
||
HttpCanary,找到<code>padsv.gungho.jp/api.php?action=get_player_data</code>网络请求。(一般紧跟<code>api.php?action=login</code>)<br>
|
||
Go back to HttpCanary to find the network request <code>padsv.gungho.jp/api.php?action=get_player_data</code>.
|
||
(Generally followed by <code>api.php?action=login</code>)<br>
|
||
<img src="images/player-emu-httpcanary-find-item.webp" alt="找到请求">
|
||
</p>
|
||
<p>进入该条目,保存响应体。<br>
|
||
Go to the entry and Save Response Body.<br>
|
||
<img src="images/player-emu-httpcanary-save-response-body.webp" alt="保存响应体">
|
||
</p>
|
||
<p>使用文件管理器找到<code>手机储存/HttpCanary/download/[你保存的名称]/response_body.html</code>,这个就是你的游戏数据。<br>
|
||
Use the file manager to find
|
||
<code>[Phone Storage]/HttpCanary/download/[The name you saved]/response_body.html</code>, and this is your game
|
||
data.<br>
|
||
<img src="images/player-emu-httpcanary-saved-data.webp" alt="保存的文件">
|
||
</p>
|
||
<p>打开模拟器的电脑共享目录。<br>
|
||
Open the simulator's PC shared folder.<br>
|
||
<img src="images/player-emu-open-pc-folder.webp" alt="打开电脑共享路径">
|
||
</p>
|
||
<p>将<code>response_body.html</code>复制到<code>手机储存/Download</code>文件夹,即可在电脑上看到文件。<br>
|
||
Copy <code>response_body.html</code> to <code>[Phone Storage]/Download</code> folder to see files on your
|
||
PC.<br>
|
||
<img src="images/player-emu-httpcanary-copy-to-download.webp" alt="复制到下载文件夹">
|
||
</p>
|
||
<p>到我的箱子功能里打开即可。<br>
|
||
Open my box function and open it.<br>
|
||
<img src="images/player-open-data.webp" alt="打开数据">
|
||
</p>
|
||
<p>每次获取新的数据,重复 启动 HttpCanary > 登录游戏 > 保存响应体 的步骤。<br>
|
||
Each time you get new data, repeat the steps to Start httpCanary > Log in to the game > Save Response Body.
|
||
</p>
|
||
<p>如果希望不要每次都重新使用 SNS 登录游戏,可以查看<a href="#multiple-devices">如何多设备登录</a>。<br>
|
||
If you want to not reuse the SNS login game every time, you can see <a href="#multiple-devices">How to login
|
||
with multiple devices</a>.
|
||
</p>
|
||
<h4 id="use-Fidder">在电脑上使用 Fidder | Use Fidder on PC</h4>
|
||
<p>在电脑上安装<a href="https://telerik-fiddler.s3.amazonaws.com/fiddler/FiddlerSetup.exe">Fiddler Classic</a><br>
|
||
Install <a href="https://telerik-fiddler.s3.amazonaws.com/fiddler/FiddlerSetup.exe">Fiddler Classic</a> on your PC.<br>
|
||
<img src="images/player-fidder-install.webp" alt="装好的 Fidder">
|
||
</p>
|
||
<p>为了使模拟器能连接 Fidder,打开允许远程计算机连接的功能。<br>同时为避免抓到其他无用的流量,推荐你关闭自动设为系统代理的选项并重启 Fidder。<br>
|
||
In order for the simulator to connect to Fidder, turn on the feature that <em>Allow remote computers to connect</em>.<br>And for avoid catching unwanted traffic, it is recommended that turn off the option <em>Act as the system proxy on startup</em> and restart the Fidder.<br>
|
||
<img src="images/player-fidder-close-system-proxy.webp" alt="关闭默认代理">
|
||
</p>
|
||
<p>打开 HTTPS 解密,警告询问你是否添加证书到电脑可以选择否,因为我们不需要解密电脑上的流量。<br>
|
||
Turn on <em>decrypt HTTPS traffic</em>. The warning asks if you want to add the certificate to your PC and you can choose No because we don't need to decrypt traffic from your PC.<br>
|
||
<img src="images/player-fidder-decrypt-https.webp" alt="打开 HTTPS解密">
|
||
</p>
|
||
<p>将根证书导出到桌面,之后你将会在桌面上看到一个<code>FiddlerRoot.cer</code>文件。<br>
|
||
Export the root certificate to the desktop. You will then see a file <code>FiddlerRoot.cer</code> on your desktop.<br>
|
||
<img src="images/player-fidder-export-cer-to-desktop.webp" alt="导出证书到桌面">
|
||
</p>
|
||
<p>在桌面按住 <strong>Shift</strong> 点击鼠标右键,在此打开 PowerShell。<br>
|
||
Press and hold <strong>Shift</strong> on the desktop and right-click to open PowerShell here.<br>
|
||
<img src="images/player-fidder-export-cer-open-powershell.webp" alt="打开PowerShell">
|
||
</p>
|
||
<p>在 PowerShell 中,执行以下代码,之后你将会在桌面上,见到一个<code>269953fb.0</code>文件。<br>
|
||
In PowerShell, execute the following codes, and then you'll see a <code>269953fb.0</code> file on your desktop.<br><br>
|
||
<code class="block-code"># get the cer full path
|
||
$cert_path=Resolve-Path "FiddlerRoot.cer";
|
||
# create a cert object
|
||
$cert=New-Object System.Security.Cryptography.X509Certificates.X509Certificate2($cert_path);
|
||
# create a md5 object
|
||
$md5 = New-Object -TypeName System.Security.Cryptography.MD5CryptoServiceProvider;
|
||
# to openssl hash "-subject_hash_old"
|
||
# get the cert SubjectName md5 hash
|
||
$md5bin = $md5.ComputeHash($cert.SubjectName.RawData);
|
||
# convert to this format bytes
|
||
$hashnum = ([long]$md5bin[0] -bor ([long]$md5bin[1] -shl 8) -bor ([long]$md5bin[2] -shl 16) -bor ([long]$md5bin[3] -shl 24)) -band 0xffffffff;
|
||
# convert bytes to file name
|
||
$pem_name = [Convert]::ToString($hashnum, 16).padleft(8,"0")+".0";
|
||
# create PEM format content
|
||
$str=New-Object System.Text.StringBuilder("");
|
||
$str.AppendLine("-----BEGIN CERTIFICATE-----");
|
||
$str.AppendLine([Convert]::ToBase64String($cert.RawData, [Base64FormattingOptions]::InsertLineBreaks));
|
||
$str.AppendLine("-----END CERTIFICATE-----");
|
||
# save the file
|
||
$str.ToString() | Out-File -Encoding ascii -FilePath $pem_name</code><br><br>
|
||
<img src="images/player-fidder-export-cer-convert.webp" alt="证书格式转换">
|
||
</p>
|
||
<p>打开模拟器的 Root,并重启。<br>
|
||
Open the simulator's root and restart.<br>
|
||
<img src="images/player-emu-open-root.webp" alt="打开 Root">
|
||
</p>
|
||
<p>使用共享文件夹,将<code>269953fb.0</code>转移到模拟器。<br>
|
||
Use the shared folder to transfer <code>269953fb.0</code> to the simulator.<br>
|
||
<img src="images/player-fidder-export-cer-shared-folder.webp" alt="传送到模拟器">
|
||
</p>
|
||
<p>将<code>269953fb.0</code>复制到<code>/system/etc/security/cacerts</code>文件夹内。<br>
|
||
Copy the <code>269953fb.0</code> to the <code>/system/etc/security/cacerts</code> folder.<br>
|
||
<img src="images/player-fidder-export-cer-copy-to-system.webp" alt="复制到系统文件夹">
|
||
</p>
|
||
<p>打开<code>269953fb.0</code>文件属性,设置权限为<code>-rw-r--r--(644)</code>。<br>
|
||
Open <code>269953fb.0</code> file properties and set permissions to <code>-rw-r--r--(644)</code><br>
|
||
<img src="images/player-fidder-export-cer-set-permissions.webp" alt="设置文件属性">
|
||
</p>
|
||
<p><strong>重启模拟器</strong>,以使证书被系统读取。<br>
|
||
<strong>Restart the simulator</strong> so that the certificate is read by the system.
|
||
</p>
|
||
<p>可以根据需要关闭 Root 了(日服客户端需要关闭 Root 才能运行)。<br>
|
||
Root can be closed as needed. (The Japanese version client needs to close Root operation.)
|
||
</p>
|
||
<p>修改模拟器内 WiFi 的代理,改为手动模式,主机名为电脑的网卡 IP,端口号为 8888。<br>
|
||
Modify the proxy of WiFi in the simulator to manual mode, the host name is the computer's network card IP, port number 8888.<br>
|
||
<img src="images/player-fidder-export-cer-set-proxy.webp" alt="设置WiFi代理"><br>
|
||
你可以在电脑网卡属性里找到当前 IP。<br>
|
||
You can find the current IP in the PC network card properties.<br>
|
||
<img src="images/player-fidder-export-cer-get-pc-ip.webp" alt="查找计算机IP">
|
||
</p>
|
||
<p>打开 Fiddler 的自动解码和流式传输。<br>
|
||
Turn on Fiddler's auto Decode and Stream.<br>
|
||
<img src="images/player-fidder-open-auto-decode.webp" alt="自动解码">
|
||
</p>
|
||
<p>运行智龙迷城游戏,直到登陆成功。<br>
|
||
Run the P&D game until log in successfully.<br>
|
||
<img src="images/player-emu-pad-login.webp" alt="登录游戏">
|
||
</p>
|
||
<p>然后在 Fidder 内找到<code>padsv.gungho.jp/api.php?action=get_player_data</code>网络请求。(一般紧跟<code>api.php?action=login</code>)<br>
|
||
Go back to Fidder to find the network request <code>padsv.gungho.jp/api.php?action=get_player_data</code>.
|
||
<img src="images/player-fidder-found-traffic.webp" alt="发现网络请求">
|
||
</p>
|
||
<p>在右键菜单内选择保存响应体。<br>
|
||
Select Save Response Body within the right-click menu.<br>
|
||
<img src="images/player-fidder-save-response-body.webp" alt="保存响应体">
|
||
</p>
|
||
<p>到我的箱子功能里打开即可。<br>
|
||
Open my box function and open it.<br>
|
||
<img src="images/player-open-data.webp" alt="打开数据">
|
||
</p>
|
||
<p>每次获取新的数据,重复 开启 Fidder > 模拟器内登录游戏 > 保存响应体 的步骤。<br>
|
||
Each time you get new data, repeat the steps to Start Fidder > Log in to the game in the simulator > Save Response Body.
|
||
</p>
|
||
<p>如果希望不要每次都重新使用 SNS 登录游戏,可以查看<a href="#multiple-devices">如何多设备登录</a>。<br>
|
||
If you want to not reuse the SNS login game every time, you can see <a href="#multiple-devices">How to login
|
||
with multiple devices</a>.
|
||
</p>
|
||
<h5>自动保存响应体 | Auto Save Response Body</h5>
|
||
<p>Fidder 可以使用脚本自动保存响应体。<br>
|
||
Fidder can use scripts to automatically save Response Body.
|
||
</p>
|
||
<p>在 Fidder 脚本中,快速跳转到<code>OnBeforeResponse</code>。<br>
|
||
In the Fidder Script, quickly jump to the <code>OnBeforeResponse</code><br>
|
||
<img src="images/player-fidder-go-to-script.webp" alt="跳到 OnBeforeResponse">
|
||
</p>
|
||
<p>将以下代码插入<code>OnBeforeResponse</code>代码括号内,并保存。<br>
|
||
Insert the following code into the parenthesis of the <code>OnBeforeResponse</code> code and save it.<br>
|
||
<img src="images/player-fidder-paste-code.webp" alt="保存代码"><br>
|
||
记得将第一行的文件路径修搞到你自己的文件夹,因为是转义符,右斜杠需要写两次。<br>
|
||
Remember to fix the first line of file paths to your own folder, because it's an escape character, and the right slash needs to be written twice.<br><br>
|
||
<code class="block-code">// the file saved path
|
||
var PADDataPath = "D:\\PAD_Data";
|
||
if (oSession.uriContains("action=get_player_data")) {
|
||
oSession.SaveResponseBody(PADDataPath + "\\player-data-" + new Date().getTime() + ".json");
|
||
}</code>
|
||
</p>
|
||
|
||
<h4 id="multiple-devices">如何多设备登录 | How to login with multiple devices</h4>
|
||
<p>导出<code>data048.bin</code></p>
|
||
<p>待写 To be written</p>
|
||
<h3 id="have-root">Root 设备用户 | Root device user</h3>
|
||
<p>请参考<a href="#use-HttpCanary">HttpCanary</a>方法。<br>
|
||
Refer to the <a href="#use-HttpCanary">HttpCanary</a> method.</p>
|
||
<h2 id="ios">苹果用户 | iOS User</h2>
|
||
<p>我没有苹果设备,无法研究iOS。可以临时 SNS 跨平台到<a href="#no-root"></a>安卓模拟器</a>登录,进行数据导出。<br>
|
||
I don't have an Apple device so I can't study iOS. You can temporarily across platforms login to <a
|
||
href="#no-root">Android Simulator</a> for data export.</p>
|
||
</body>
|
||
|
||
</html> |