一般Xposed模块不会随Magisk模块一起更新,所以请在releases中往前翻,寻找app-debug.apk。
你可以提取最新的zygisk_module.zip/zygisk/{对应架构}.so替换掉app-debug.apk/lib/{对应架构}/libUnityFPSUnlocker.so,然后用mt管理器重新签名。
- 对目标游戏启用
Shamiko(可以避免一些游戏对于Zygisk注入或SafetyNet的检测)
若你的手机没有开启Zygisk,请先开启Zygisk后重启。当上述需求准备完毕后即可刷入UnityFPSUnlocker模块。在重启之前,先下载TargetList.json放入/data/local/tmp/TargetList.json,并修改你的配置。
模块会通过判断游戏数据目录是否存在/sdcard/Android/data/{包名}/files/il2cpp来自动加载。
{
"global": {
"delay": 10,
"mod_opcode": true,
"fps": 90,
"scale": 1.0
},
"custom": {
"com.random.package.name.a": {
"fps": 60
},
"com.random.package.name.b": {
"mod_opcode": false
},
"com.random.package.name.c": {
"delay": 5
}
}
}
其中,global节点中的配置为:
fps需要设置的fps,设置为0以禁用delay游戏载入后等待delay秒执行mod_opcode是否修改opcode,如果你发现游戏会重新锁定fps,可以把这项改为true,但由于修改内存,可能会被反作弊检测到scale设置分辨率的倍数,一般保持1.0即可,必须为小数。当前屏幕宽度 * scale x 当前屏幕高度 * scale
然后,custom节点中的配置会覆盖global中的配置单独生效:
key包名,比如com.random.package.name.afps同上mod_opcode同上delay同上scale同上
TargetList.json修改后可以搜索json 格式校验校验是否完整。修改后立即生效(模块版本>=1.8)。
可以在终端模拟器输入logcat -s UnityFPSUnlocker查看输入日志。
- 对于
Magisk模块,设置对应的fps为0即可,插件将不会生效 - 对于
Xposed模块,在LSPosed中取消勾选对应的应用即可,如果没有显示应用,可以点击右上角选择隐藏->游戏
最近发现BlueArchive最高分辨率只有1080P,在模拟器上有肉眼可见的锯齿,而且在16:10的比例下甚至像素点比16:9更少
2560x1600->1822x1138
对比
2560x1440->1920x1080
所以加上调整分辨率的功能,对比图如下
https://imgsli.com/MjI3NDQ2/0/1
https://imgsli.com/MjI3NDQ2/2/3
但是设置的时机需要尽可能早,也就是delay尽可能短,否则需要更改绘图选项中的任意一项后生效(比如开关一次抗锯齿)
如果你不需要超分辨率,可以修改/sdcard/Android/data/com.nexon.bluearchive/files/DeviceOption,把Resolution修改为大于3即可,这样会走default分支(在函数GraphicsManager.CoSetScreenResolution()中)
0: 1080P1: 720P2: 540P3: 480Pdefaultdefault