Compare commits

...

5 Commits

Author SHA1 Message Date
DLmaster
8fcc69165f 更新自述文件 2024-07-17 16:31:04 +08:00
DLmaster
5b98c58926 添加对自定义基建的支持 2024-07-17 16:19:38 +08:00
DLmaster
ce1534657b 修复禁用剿灭时的任务完成判定 2024-07-10 09:28:11 +08:00
DLmaster
e2f02ea616 修复定时判定;MAA路径运行检查 2024-07-09 11:48:58 +08:00
DLmaster
76134c2e2b 更新GUI相关自述文件 2024-07-07 14:26:47 +08:00
23 changed files with 82 additions and 184 deletions

Binary file not shown.

View File

@@ -102,7 +102,10 @@ class MaaRunner(QtCore.QThread):
for j in range(2):
if not self.ifRun:
break
if (j == 0 and self.data[uid][8] == "n") or runbook[j]:
if j == 0 and self.data[uid][8] == "n":
runbook[0] = True
continue
if runbook[j]:
continue
# 配置MAA
self.SetMaa(j + 1, uid)
@@ -362,6 +365,25 @@ class MaaRunner(QtCore.QThread):
data["Configurations"]["Default"][
"Fight.UseExpiringMedicine"
] = "True" # 无限吃48小时内过期的理智药
if self.data[uid][9] == "-":
data["Configurations"]["Default"][
"Infrast.CustomInfrastEnabled"
] = "False" # 禁用自定义基建配置
else:
data["Configurations"]["Default"][
"Infrast.CustomInfrastEnabled"
] = "True" # 启用自定义基建配置
data["Configurations"]["Default"][
"Infrast.DefaultInfrast"
] = "user_defined" # 内置配置
data["Configurations"]["Default"][
"Infrast.IsCustomInfrastFileReadOnly"
] = "False" # 自定义基建配置文件只读
data["Configurations"]["Default"][
"Infrast.CustomInfrastFile"
] = self.data[uid][
9
] # 自定义基建配置文件地址
with open(self.SetPath, "w", encoding="utf-8") as f:
json.dump(data, f, indent=4)
return True
@@ -391,7 +413,7 @@ class MaaTimer(QtCore.QThread):
TimeSet = [
self.config["Default"]["TimeSet.run" + str(k + 1)]
for k in range(10)
if self.config["Default"]["TimeSet.set" + str(k + 1)]
if self.config["Default"]["TimeSet.set" + str(k + 1)] == "True"
]
curtime = datetime.datetime.now().strftime("%H:%M")
if (curtime in TimeSet) and not self.isMaaRun:
@@ -769,8 +791,7 @@ class Main(QWidget):
item = QTableWidgetItem("今日已代理" + str(data[i][12]) + "")
item.setFlags(QtCore.Qt.ItemIsSelectable | QtCore.Qt.ItemIsEnabled)
elif j == 9:
item = QTableWidgetItem(str(value))
item.setFlags(QtCore.Qt.ItemIsSelectable | QtCore.Qt.ItemIsEnabled)
item = QTableWidgetItem(str(value).replace("\\", "/"))
elif j == 10:
if self.PASSWORD == "":
item = QTableWidgetItem("******")
@@ -837,7 +858,7 @@ class Main(QWidget):
"1-7",
"-",
"-",
"暂不支持",
"-",
self.encryptx("未设置"),
self.userlist.rowCount(),
),
@@ -888,6 +909,8 @@ class Main(QWidget):
games[gamein.strip()] = gameout.strip()
if text in games:
text = games[text]
if item.column() == 9:
text = text.replace("\\", "/")
if item.column() == 10:
text = self.encryptx(text)
if text != "":
@@ -995,6 +1018,9 @@ class Main(QWidget):
# 启动MaaRunner线程
def RunStarter(self):
if self.config["Default"]["MaaSet.path"] == "":
QMessageBox.critical(self.ui, "错误", "MAA路径未设置")
return None
# 运行过程中修改部分组件
self.runnow.clicked.disconnect()
self.runnow.setText("结束运行")

206
README.md
View File

@@ -18,21 +18,25 @@ MAA多账号管理与自动化软件
- **授权:** 如果希望在使用AUTO_MAA的相关成果后仍保持自己的项目闭源请在Issues中说明来意。得到项目组认可后我们可以提供另一份使用不同协议的代码此协议主要内容如下被授权者可以自由使用该代码并维持闭源被授权者必须定期为AUTO_MAA作出贡献
- **贡献:** 不论是直接参与软件的维护编写或是撰写文档、测试、反馈BUG、给出建议、参与讨论都为AUTO_MAA项目的发展完善做出了不可忽视的贡献。项目组提倡各位贡献者遵照GitHub开源社区惯例发布Issues参与项目。避免私信或私发邮件安全性漏洞或敏感问题除外以帮助更多用户
以上细则是本项目对GPL的相关补充与强调。未提及的以GPL为准发生冲突的以GPL为准。如有不清楚的部分请发Issues询问。若发生纠纷相关内容也没有在Issues上提及的项目组拥有最终解释权
以上细则是本项目对GPL的相关补充与强调。未提及的以GPL为准发生冲突的以本细则为准。如有不清楚的部分请发Issues询问。若发生纠纷相关内容也没有在Issues上提及的项目组拥有最终解释权
**注意**
- 由于本软件有修改其它目录JSON文件等行为使用前请将AUTO_MAA添加入Windows Defender信任区以及防病毒软件的信任区或开发者目录避免被误杀
- 如程序无法正常启动,请删除`state`目录下所有文件后重试
---
# 使用方法
## 安装与配置MAA
```
本软件是MAA的外部工具需要安装配置MAA后才能使用。
```
### MAA安装
什么是MAA [官网](https://maa.plus/)/[GitHub](https://github.com/CHNZYX/Auto_Simulated_Universe/archive/refs/heads/main.zip)
- 什么是MAA [官网](https://maa.plus/)/[GitHub](https://github.com/CHNZYX/Auto_Simulated_Universe/archive/refs/heads/main.zip)
MAA下载地址 [GitHub下载](https://github.com/MaaAssistantArknights/MaaAssistantArknights/releases)
- MAA下载地址 [GitHub下载](https://github.com/MaaAssistantArknights/MaaAssistantArknights/releases)
### MAA配置
@@ -50,197 +54,57 @@ MAA下载地址 [GitHub下载](https://github.com/MaaAssistantArknights/MaaAs
![MAA配置3](https://github.com/DLmaster361/AUTO_MAA/blob/main/res/README/MAA配置3.png "MAA配置3")
## 下载AUTO_MAA软件包 [![](https://img.shields.io/github/downloads/DLmaster361/AUTO_MAA/total?color=66ccff)](https://github.com/DLmaster361/AUTO_MAA/releases)
## 下载AUTO_MAA [![](https://img.shields.io/github/downloads/DLmaster361/AUTO_MAA/total?color=66ccff)](https://github.com/DLmaster361/AUTO_MAA/releases)
GitHub下载地址 [GitHub下载](https://github.com/DLmaster361/AUTO_MAA/releases)
- GitHub下载地址 [GitHub下载](https://github.com/DLmaster361/AUTO_MAA/releases)
## 配置用户信息与相关参数
## 配置AUTO_MAA
**注意:** 当前所有的密码输入部分都存在一点“小问题”请在输入密码时避免输入Delete、F12、Tab等功能键。
-------------------------------------------------
### 启动AUTO_MAA
### 第一次启动
双击启动`manage.exe`输入MAA所在文件夹路径并回车注意使用斜杠的种类不要使用反斜杠然后设置管理密钥密钥可以包含字母大小写与特殊字符
![信息配置1](https://github.com/DLmaster361/AUTO_MAA/blob/main/res/README/信息配置1.png "信息配置1")
管理密钥是解密用户密码的唯一凭证,与数据库绑定。密钥丢失或`data/key/`目录下任一文件损坏都将导致解密无法正常进行。
本项目采用自主开发的混合加密模式,项目组也无法找回您的管理密钥或修复`data/key/`目录下的文件。如果不幸的事发生,建议您删除`data/data.db`重新录入信息。
### 添加用户
输入“+”以开始添加用户。依次输入:
**用户名:** 管理用户的惟一凭证
**手机号码:** 允许隐去中间四位以“****”代替
**代理天数:** 这个还要我解释吗?
![信息配置2](https://github.com/DLmaster361/AUTO_MAA/blob/main/res/README/信息配置2.png "信息配置2")
### 删除用户
输入用户名+“-”以删除用户。格式:
- 双击`AUTO_MAA.exe`以启动软件
```
用户名 -
注意:
首次启动时会要求设置管理密钥。
管理密钥是解密用户密码的唯一凭证,与数据库绑定。
密钥丢失或data/key/目录下任一文件损坏都将导致解密无法正常进行。
本项目采用自主开发的混合加密模式项目组也无法找回您的管理密钥或修复data/key/目录下的文件。
如果不幸的事发生建议您删除data/key/目录与data/data.db文件后重新录入信息。
```
![信息配置3](https://github.com/DLmaster361/AUTO_MAA/blob/main/res/README/信息配置3.png "信息配置3")
### 配置信息
### 配置用户状态
**启用代理:** 输入用户名+“y”以启用该用户的代理。格式
- 本项目已初步完成GUI开发您可以在用户管理页与设置页配置信息。
```
用户名 y
特别的:
你可以自定义关卡号替换方案。
程序会读取data/gameid.txt中的数据依据此进行关卡号的替换便于常用关卡的使用。
gameid.txt在初始已经存储了一些常用资源本的替代方案。
```
![信息配置4](https://github.com/DLmaster361/AUTO_MAA/blob/main/res/README/信息配置4.png "信息配置4")
**禁用代理:** 输入用户名+“n”以禁用该用户的代理。格式
```
用户名 n
```
![信息配置5](https://github.com/DLmaster361/AUTO_MAA/blob/main/res/README/信息配置5.png "信息配置5")
### 续期
输入用户名+续期天数+“+”以延长该用户的代理天数。格式:
```
用户名 续期天数 +
```
![信息配置6](https://github.com/DLmaster361/AUTO_MAA/blob/main/res/README/信息配置6.png "信息配置6")
### 修改刷取关卡
输入用户名+关卡号+“~”以更改该用户的代理关卡。格式:
```
用户名 关卡号 ~
```
![信息配置7](https://github.com/DLmaster361/AUTO_MAA/blob/main/res/README/信息配置7.png "信息配置7")
**特别的:**
你可以自定义关卡号替换方案。程序会读取`gameid.txt`中的数据,依据此进行关卡号的替换,便于常用关卡的使用。`gameid.txt`在初始已经存储了一些常用资源本的替代方案。
![gameid](https://github.com/DLmaster361/AUTO_MAA/blob/main/res/README/gameid.png "gameid")
### 设置MAA路径
输入“/”+新的MAA文件夹路径以修改MAA安装位置的配置。格式
```
/新的MAA文件夹路径
```
**注意:** /’与路径间没有空格,路径同样不能使用反斜杠
![信息配置8](https://github.com/DLmaster361/AUTO_MAA/blob/main/res/README/信息配置8.png "信息配置8")
### 设置启动时间
**添加启动时间:** 输入“:+”+时间以添加定时启动时间。格式:
```
:+小时:分钟
```
**注意:** 所有输入间没有空格
![信息配置9](https://github.com/DLmaster361/AUTO_MAA/blob/main/res/README/信息配置9.png "信息配置9")
**删除启动时间:** 输入“:-”+时间以删除定时启动时间。格式:
```
:-小时:分钟
```
**注意:** 所有输入间没有空格
![信息配置10](https://github.com/DLmaster361/AUTO_MAA/blob/main/res/README/信息配置10.png "信息配置10")
### 检索信息
**检索所有信息:** `manage.exe`打开时会打印所有用户与配置信息。除此之外你可以通过输入“all ?”以打印所有信息,如下:
```
all ?
```
![信息配置11](https://github.com/DLmaster361/AUTO_MAA/blob/main/res/README/信息配置11.png "信息配置11")
**检索MAA路径** 输入“maa ?”以检索MAA安装路径如下
```
maa ?
```
![信息配置12](https://github.com/DLmaster361/AUTO_MAA/blob/main/res/README/信息配置12.png "信息配置12")
**检索启动时间:** 输入“time ?”以检索定时启动的时间,如下:
```
time ?
```
![信息配置13](https://github.com/DLmaster361/AUTO_MAA/blob/main/res/README/信息配置13.png "信息配置13")
**检索指定用户:** 输入用户名+“?”以检索指定用户信息,如下:
```
用户名 ?
```
**注意:** 由于需要检索用户密码,每一次`manage.exe`启动后的首次查询需要验证管理密钥。为了方便操作,之后的查询不会再要求重复验证。因此,完成密码查询后,请及时关闭`manage.exe`
![信息配置14](https://github.com/DLmaster361/AUTO_MAA/blob/main/res/README/信息配置14.png "信息配置14")
### 修改管理密钥
输入“*”以开始修改管理密钥。依次输入:
**旧管理密钥:** 当数据库中没有存储用户信息时,允许跳过验证直接配置新管理密钥
**新管理密钥:** 请妥善保管,丢失无法找回。
![信息配置15](https://github.com/DLmaster361/AUTO_MAA/blob/main/res/README/信息配置15.png "信息配置15")
### 退出
输入“-”以退出`manage.exe`,如下:
```
-
```
## 运行代理
## 运行代理任务
### 直接运行
双击`run.exe`直接运行
- 在执行页单击`立即执行`直接运行
### 定时运行
双击`AUTO_MAA.exe`打开,不要关闭。它会读取设定时间,在该时刻自动运行
- 在执行页的`定时执行`栏设置时间
**注意:** 将优先进行剿灭代理
- 保持软件打开,软件会在设定的时间自动运行
## 关于
项目图标由文心一格AI生成
----------------------------------------------------------------------------------------------
---
# 关于
欢迎加入AUTO_MAA项目组欢迎反馈bug

View File

@@ -932,9 +932,9 @@ li.checked::marker { content: "\2612"; }
</style></head><body style=" font-family:'Microsoft YaHei UI'; font-size:9pt; font-weight:400; font-style:normal;">
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">致用户:</p>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> 这是AUTO_MAA_v3.0_Beta,项目初步完成可视化。</p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> 这是AUTO_MAA_v3.1,项目基本完成可视化。</p>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> 这个版本可能出现各种各样的BUG因此不会去除命令行窗口。当程序出现异常时,您可以在命令行窗口中获取报错信息,以便向项目组求助。</p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> 正式版去除命令行窗口但这不意味着BUG不会出现。由于用户与项目贡献者的稀缺我们无法确保正式版足够完善还望谅解。</p>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> 您可以通过官方仓库 <a href="https://github.com/DLmaster361/AUTO_MAA/"><span style=" text-decoration: underline; color:#007ad6;">DLmaster361/AUTO_MAA</span></a> 发布Issues求助。</p>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 93 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 92 KiB

View File

@@ -4,7 +4,7 @@ VSVersionInfo(
ffi=FixedFileInfo(
# filevers and prodvers should be always a tuple with four items: (1, 2, 3, 4)
# Set not needed items to zero 0.
filevers=(3, 0, 0, 0),
filevers=(3, 1, 0, 0),
prodvers=(0, 0, 0, 0),
# Contains a bitmask that specifies the valid bits 'flags'r
mask=0x3f,
@@ -31,13 +31,13 @@ VSVersionInfo(
[StringStruct('Comments', 'https://github.com/DLmaster361/AUTO_MAA/'),
StringStruct('CompanyName', 'AUTO_MAA Team'),
StringStruct('FileDescription', 'AUTO_MAA Component'),
StringStruct('FileVersion', '3.0'),
StringStruct('FileVersion', '3.1'),
StringStruct('InternalName', 'AUTO_MAA'),
StringStruct('LegalCopyright', 'Copyright © 2024 DLmaster361'),
StringStruct('OriginalFilename', 'AUTO_MAA'),
StringStruct('ProductName', 'AUTO_MAA'),
StringStruct('ProductVersion', 'v3.0_Beta'),
StringStruct('Assembly Version', 'v3.0_Beta')])
StringStruct('ProductVersion', 'v3.1'),
StringStruct('Assembly Version', 'v3.1')])
])
]
)

View File

@@ -21,6 +21,11 @@
"Infrast.CustomInfrastPlanShowInFightSettings": "False" #显示基建计划
"Penguin.EnablePenguin": "True" #上报企鹅物流
"Yituliu.EnableYituliu": "True" #上报一图流
#基建换班
"Infrast.CustomInfrastEnabled": "True" #启用自定义基建配置
"Infrast.DefaultInfrast": "user_defined" #内置配置
"Infrast.IsCustomInfrastFileReadOnly": "False" #自定义基建配置文件只读
"Infrast.CustomInfrastFile": "" #自定义基建配置文件地址
#设置
"Start.RunDirectly": "True" #启动MAA后直接运行
"Start.StartEmulator": "True" #启动MAA后自动开启模拟器

View File

@@ -20,4 +20,6 @@
import os
os.system("pyinstaller -F --version-file res/info.txt --icon=res/AUTO_MAA.ico gui.py")
os.system(
"pyinstaller -F --version-file res/info.txt -w --icon=res/AUTO_MAA.ico AUTO_MAA.py"
)

View File

@@ -1,3 +1,4 @@
项目初始阶段,不会提供专门的版本更新程序,您需要手动更新程序。
v3.0_Beta版本采用全新的架构,您需要手动输入之前的信息。
v2.1.5及以前的用户,由于新版本采用全新的架构,您需要手动输入之前的信息。
v3.0_Beta版用户直接用AUTO_MAA.exe替代gui.exe后重新设置每个用户的“自定义基建”选项输入“-”以关闭该功能,输入自定义基建配置文件地址以开启该功能)。
新用户请忽略本说明。