feat.新增支持部分模拟器

This commit is contained in:
MistEO
2021-09-23 22:44:58 +08:00
parent 0d33c09bf0
commit 1d438b6df8
5 changed files with 142 additions and 21 deletions

View File

@@ -46,29 +46,50 @@ A game assistance for Arknights
#### 蓝叠模拟器
完美支持
完美支持。需要在模拟器`设置`-`引擎设置`-打开`允许ADB连接`
#### 蓝叠模拟器国际版
完美支持。需要在模拟器`设定`-`进阶`-打开`Android调试桥`
#### MuMu模拟器
完美支持
#### 夜神模拟器
完美支持
#### 雷电模拟器
支持。但是雷电自带的`ADB`版本太老了,有一些命令有问题,所以需要下载[谷歌官方ADB](https://dl.google.com/android/repository/platform-tools-latest-windows.zip),将`platform-tools`文件夹解压到`MeoAsstGui.exe`的同级目录
#### 逍遥模拟器
支持。但是逍遥自带的`ADB`版本太老了,有一些命令有问题,所以需要下载[谷歌官方ADB](https://dl.google.com/android/repository/platform-tools-latest-windows.zip),将`platform-tools`文件夹解压到`MeoAsstGui.exe`的同级目录
#### 腾讯手游助手
不支持新版本的腾讯好像也是自研引擎了没开放ADB端口。但是测试是能响应Win32 Api的有需求再做
#### MuMu手游助手星云引擎
不支持,MuMu不响应SendMessage鼠标消息而且这个版本不支持adb控制正在想办法……
不支持,星云引擎这个版本不响应Win32的SendMessage鼠标消息而且不支持adb控制无解_(:з」∠)_
#### 其他模拟器
其他模拟器已停止支持,若有需要,欢迎给我提[ISSUE](https://github.com/MistEO/MeoAssistance/issues),会根据情况尽量适配~
若有其他需要,欢迎给我提[ISSUE](https://github.com/MistEO/MeoAssistance/issues),会根据情况尽量适配~
#### 安卓手机/平板
支持刷理智功能支持公招识别但不支持自动设置9小时其他功能暂不支持,正在开发中……
部分功能支持,正在开发中……
需要下载[谷歌官方ADB](https://dl.google.com/android/repository/platform-tools-latest-windows.zip),将`platform-tools`文件夹解压到`MeoAsstGui.exe`的同级目录
## 使用说明
### 基本说明
1. 在支持的模拟器设置中,打开`ADB`选项,蓝叠中该选项名称为`允许ADB连接`MUMU模拟器默认就是打开的
1. 根据上面模拟器支持情况,进行对应的`ADB`相关操作
2. 解压压缩包,到**没有中文或特殊符号**的文件夹路径
3. 第一次运行辅助,**请使用管理员权限**打开`MeoAsstGui.exe`。运行过一次后,后续不再需要管理员权限(之后的版本会尝试完全去掉管理员权限)
4. 运行期间,模拟器窗口可以最小化,全屏玩游戏、看视频等,完全不影响

View File

@@ -1,7 +1,7 @@
{
"version": "0.6",
"options": {
"connectType" : 0,
"connectType": 0,
"connectType_Doc": "连接类型0-连接电脑上的模拟器1-连接USB连接的安卓设备2-连接局域网中的安卓设备。默认0",
"connectRemoteAddress": "",
"connectRemoteAddress_Doc": "连接局域网中的安卓设备的地址仅在connectType为2时生效。格式举例192.168.1.123:5678",
@@ -40,6 +40,21 @@
"screencap": "[Adb] -s 127.0.0.1:5555 exec-out screencap -p"
}
},
"BlueStacksInternational": {
"handle": {
"class": "",
"window": "BlueStacks"
},
"adb": {
"path": "[EmulatorPath]HD-Adb.exe",
"connect": "[Adb] connect 127.0.0.1:5555",
"click": "[Adb] -s 127.0.0.1:5555 shell input tap [x] [y]",
"swipe": "[Adb] -s 127.0.0.1:5555 shell input swipe [x1] [y1] [x2] [y2] [duration]",
"display": "[Adb] -s 127.0.0.1:5555 shell dumpsys window displays | grep init= | awk ' { print $3 } '",
"displayRegex": "cur=%dx%d",
"screencap": "[Adb] -s 127.0.0.1:5555 exec-out screencap -p"
}
},
"MuMuEmulator": {
"handle": {
"class": "Qt5QWindowIcon",
@@ -55,6 +70,51 @@
"screencap": "[Adb] -s 127.0.0.1:7555 exec-out screencap -p"
}
},
"LDPlayer": {
"handle": {
"class": "LDPlayerMainFrame",
"window": "雷电模拟器"
},
"adb": {
"path": "[ExecDir]platform-tools\\adb.exe",
"connect": "[Adb] connect emulator-5554",
"click": "[Adb] -s emulator-5554 shell input tap [x] [y]",
"swipe": "[Adb] -s emulator-5554 shell input swipe [x1] [y1] [x2] [y2] [duration]",
"display": "[Adb] -s emulator-5554 shell dumpsys window displays | grep init= | awk ' { print $3 } '",
"displayRegex": "cur=%dx%d",
"screencap": "[Adb] -s emulator-5554 exec-out screencap -p"
}
},
"Nox": {
"handle": {
"class": "Qt5QWindowIcon",
"window": "夜神模拟器"
},
"adb": {
"path": "[EmulatorPath]nox_adb.exe",
"connect": "[Adb] connect 127.0.0.1:62001",
"click": "[Adb] -s 127.0.0.1:62001 shell input tap [x] [y]",
"swipe": "[Adb] -s 127.0.0.1:62001 shell input swipe [x1] [y1] [x2] [y2] [duration]",
"display": "[Adb] -s 127.0.0.1:62001 shell dumpsys window displays | grep init= | awk ' { print $3 } '",
"displayRegex": "cur=%dx%d",
"screencap": "[Adb] -s 127.0.0.1:62001 exec-out screencap -p"
}
},
"XYAZ": {
"handle": {
"class": "Qt5QWindowIcon",
"window": "逍遥模拟器"
},
"adb": {
"path": "[ExecDir]platform-tools\\adb.exe",
"connect": "[Adb] connect 127.0.0.1:21503",
"click": "[Adb] -s 127.0.0.1:21503 shell input tap [x] [y]",
"swipe": "[Adb] -s 127.0.0.1:21503 shell input swipe [x1] [y1] [x2] [y2] [duration]",
"display": "[Adb] -s 127.0.0.1:21503 shell dumpsys window displays | grep init=",
"displayRegex": " init=%dx%d",
"screencap": "[Adb] -s 127.0.0.1:21503 exec-out screencap -p"
}
},
"Remote": {
"handle": {
"class": "Remote Class",
@@ -91,20 +151,59 @@
},
"ocrReplace_Doc": "下面为常见的文字识别错误纠正,不需要修改",
"recruitOcrReplace": [
[ "沮击", "狙击" ],
[ "泪击", "击" ],
[ "都出", "输出" ],
[ "都任", "输出" ],
[ "新于", "新手" ],
[ "防拍", "防护" ]
[
"击",
"狙击"
],
[
"泪击",
"狙击"
],
[
"都出",
"输出"
],
[
"都任",
"输出"
],
[
"新于",
"新手"
],
[
"防拍",
"防护"
]
],
"infrastOcrReplace": [
[ "蛇居箱", "蛇屠箱" ],
[ "叫米", "古米" ],
[ "节草", "苇草" ],
[ "粹兰", "梓兰" ],
[ "艾丝菜尔", "艾丝黛尔" ],
[ "艾丝莱尔", "艾丝黛尔" ],
[ ",斑点", "斑点" ]
[
"蛇居箱",
"蛇屠箱"
],
[
"叫米",
"古米"
],
[
"节草",
"苇草"
],
[
"粹兰",
"梓兰"
],
[
"艾丝菜尔",
"艾丝黛尔"
],
[
"艾丝莱尔",
"艾丝黛尔"
],
[
",斑点",
"斑点"
]
]
}

View File

@@ -1,5 +1,5 @@
#pragma once
namespace asst {
constexpr static const char* Version = "release.beta.08.02.01";
constexpr static const char* Version = "release.beta.08.03";
}

View File

@@ -190,6 +190,7 @@ bool WinMacro::try_capture(const EmulatorInfo& info, bool without_handle)
adb_dir = emulator_path.substr(0, emulator_path.find_last_of('\\') + 1);
adb_dir = '"' + StringReplaceAll(m_emulator_info.adb.path, "[EmulatorPath]", adb_dir) + '"';
adb_dir = StringReplaceAll(adb_dir, "[ExecDir]", GetCurrentDir());
}
else { // 使用辅助自带的标准adb
m_emulator_info = info;

View File

@@ -29,7 +29,7 @@
<UpdateRequired>false</UpdateRequired>
<MapFileExtensions>true</MapFileExtensions>
<ApplicationRevision>0</ApplicationRevision>
<ApplicationVersion>0.8.1.0</ApplicationVersion>
<ApplicationVersion>0.8.3.0</ApplicationVersion>
<UseApplicationTrust>false</UseApplicationTrust>
<BootstrapperEnabled>true</BootstrapperEnabled>
</PropertyGroup>