作者:广树时间:2020-10-18 19:01:32分类:游戏
作为一款日服老游戏《天翼之链》,如果是使用中文系统的话是会乱码的。虽然可以通过更改系统编码来解决这个问题,但是每次更改系统编码要重启不说,还有可能影响其他中文应用的使用,所以经过多次尝试,分享一下相对方便的一种方案。
需要软件:
chrome,或者其他谷歌内核的浏览器
去乱码流程:
0.安装上面的所需软件。
1.进入《天翼之链》日服官网。
2.如果未登录的话,点击左侧蓝色的大按钮【ログインして ゲームスタート】登录游戏。
3.登录成功后按键盘的F12键,打开浏览器的开发者工具。
4.在开发者工具的【console(控制台)】中输入:
document.cookie.split('; ')
会获得一串数组,这里主要是找【NPP=】开头的数据。
5.双击【NPP=】开头的数据可以直接复制获得类似:
"NPP=NP12:sso:0:0000000:xxxxxxxxxxxxxxxxxx"的字符串。
这里只用取等于号后面的【NP12:sso:0:0000000:xxxxxxxxxxxxxxxxxx】的部分。
6.进入游戏安装目录,找到TalesWeaver.exe,右击。
7.在菜单中点击【修改此程序的配置】。
8.在弹出的菜单中按照如图所示进行配置,最上面输入之前复制来的【NP12:sso:0:0000000:xxxxxxxxxxxxxxxxxx】内容。
9.点击保存。
10.更新并进入游戏。
---------------------------------------------------------
原理:
当前日服《天翼之链》的启动流程大致为:
官网点击开始游戏 → 收集cookie里的token → 通过浏览器地址传参并启动NGM.exe → 将浏览器的token信息再传给TalesWeaver.exe
这种通过应用启动应用再启动应用的设定,导致Locale Emulator无能为力。
所以通过
wmic process where caption="TalesWeaver.exe" get caption,commandline /value
命令查看究竟传了什么commandline的时候发现有和cookie一致的信息后就确定,只要将网页上的token带给TalesWeaver.exe即可。
至于为什么需要通过NGM.exe来做中间层传参,想必还是因为游戏太老,以前应该是基于IE,ActiveX来进行直接启动的,但是随着IE被淘汰,新的安全机制,使得Nexon又单独开发了统一通过网页启动游戏的NGM.exe吧。