Compare commits

...

447 Commits

Author SHA1 Message Date
Constrat
ee566c5fb7 chore: add coppers to resource updater 2026-02-22 00:13:53 +01:00
Constrat
40d5bdd560 fix: IS6 EN yostar decided to finally fix the tongbaos releasing an official translation + resource updater copper-ability 2026-02-22 00:13:29 +01:00
status102
01a2329d18 fix(wpf): 修复自定义基建计划在迁移时基建计划选择转换错误 2026-02-21 19:58:51 +08:00
HX3N
c52cf81b94 chore: YostarKR SSS#9 SSSBuffChoose
and GO-OpenOcr
2026-02-21 18:02:25 +09:00
Constrat
2a9c963fef fix: EN Operator OCR roi fixes + skadi alter simplification 2026-02-20 23:45:10 +01:00
MistEO
0817bc1c9f feat: 适配maafw新Win32触控方式 (#15755) 2026-02-20 23:44:50 +08:00
Constrat
c36e5cfd9a fix: IS6 EN encounter regex post ROI increase 2026-02-20 16:04:14 +01:00
undefined
3fbda5b98d fix: touch screen support for version updated page (#15747) 2026-02-20 17:07:21 +08:00
uye
50cbc2e10d feat: PC 提示新增分辨率要求
close #15749
2026-02-20 16:59:38 +08:00
Constrat
30dd7d0afa fix: invert dice refresh with invest system priority in IS3 (#15740) 2026-02-20 16:52:33 +08:00
status102
80280bb62d fix: 小工具=-公招识别3~5星设置时间未遵循设置 2026-02-20 11:24:07 +08:00
SherkeyXD
e7362d2d35 feat: PC端忽略启动客户端设置 2026-02-19 14:17:04 +08:00
uye
f77d85f542 Release v6.3.2 (#15737)
## Summary by Sourcery

更新公招工具箱的时间选项、改进干员列表排序与电源操作的交互体验,并简化旧版 Windows 支持文档。

新功能:
- 在工具箱界面中为 3★–5★ 干员新增可配置的公招时间设置,并持久化到配置中。

缺陷修复:
- 确保自定义剿灭关卡在执行战斗任务时被正确应用,并在关卡列表中正确显示。
- 改进基建收取任务的异常处理,在出错时关闭线索发送对话框并正常停止任务。
- 修复公招时间选择器的绑定问题,确保当底层时间变化时,小时与分钟选择器能够保持同步。

优化改进:
- 优化与公招相关的视图模型属性,使用更简洁的自动属性模式,并以配置作为默认值来源。
- 以稀有度、精英化阶段、等级、潜能和 ID 的固定顺序对干员列表进行确定性排序,使已拥有与未拥有干员更易浏览。
- 用可取消的确认对话框替代固定延时的睡眠/休眠提示,将主窗口置于前台并记录操作结果。

文档:
- 在所有支持的语言中简化并统一常见问题(FAQ)部分,明确说明不再支持 Windows 7/8/8.1,并移除过时的版本说明和解决方案指引。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Update recruitment toolbox timing options, improve operator box sorting
and power actions UX, and simplify legacy Windows support documentation.

New Features:
- Add configurable recruitment time settings for 3★–5★ operators within
the toolbox UI, persisted in configuration.

Bug Fixes:
- Ensure custom annihilation stages are correctly applied and reflected
in the stage list when running battle tasks.
- Improve infrastructure reception task failure handling by closing the
clue sending dialog and stopping cleanly on errors.
- Fix recruitment time picker bindings so hour and minute selectors stay
in sync when the underlying time changes.

Enhancements:
- Refine recruit-related view model properties to use simpler
auto-property patterns with configuration-backed defaults.
- Sort operator box lists deterministically by rarity, promotion, level,
potential, and ID to make owned and unowned operators easier to browse.
- Replace fixed-delay sleep/hibernate prompts with a cancelable
confirmation dialog that brings the main window to the foreground and
logs the result.

Documentation:
- Simplify and unify FAQ sections in all supported languages to state
that Windows 7/8/8.1 are no longer supported, removing outdated version
and workaround guidance.

</details>

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

更新公招工具箱的时间选项、改进干员列表排序与电源操作的交互体验,并简化旧版 Windows 支持文档。

新功能:
- 在工具箱界面中为 3★–5★ 干员新增可配置的公招时间设置,并持久化到配置中。

缺陷修复:
- 确保自定义剿灭关卡在执行战斗任务时被正确应用,并在关卡列表中正确显示。
- 改进基建收取任务的异常处理,在出错时关闭线索发送对话框并正常停止任务。
- 修复公招时间选择器的绑定问题,确保当底层时间变化时,小时与分钟选择器能够保持同步。

优化改进:
- 优化与公招相关的视图模型属性,使用更简洁的自动属性模式,并以配置作为默认值来源。
- 以稀有度、精英化阶段、等级、潜能和 ID 的固定顺序对干员列表进行确定性排序,使已拥有与未拥有干员更易浏览。
- 用可取消的确认对话框替代固定延时的睡眠/休眠提示,将主窗口置于前台并记录操作结果。

文档:
- 在所有支持的语言中简化并统一常见问题(FAQ)部分,明确说明不再支持 Windows 7/8/8.1,并移除过时的版本说明和解决方案指引。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Update recruitment toolbox timing options, improve operator box sorting
and power actions UX, and simplify legacy Windows support documentation.

New Features:
- Add configurable recruitment time settings for 3★–5★ operators within
the toolbox UI, persisted in configuration.

Bug Fixes:
- Ensure custom annihilation stages are correctly applied and reflected
in the stage list when running battle tasks.
- Improve infrastructure reception task failure handling by closing the
clue sending dialog and stopping cleanly on errors.
- Fix recruitment time picker bindings so hour and minute selectors stay
in sync when the underlying time changes.

Enhancements:
- Refine recruit-related view model properties to use simpler
auto-property patterns with configuration-backed defaults.
- Sort operator box lists deterministically by rarity, promotion, level,
potential, and ID to make owned and unowned operators easier to browse.
- Replace fixed-delay sleep/hibernate prompts with a cancelable
confirmation dialog that brings the main window to the foreground and
logs the result.

Documentation:
- Simplify and unify FAQ sections in all supported languages to state
that Windows 7/8/8.1 are no longer supported, removing outdated version
and workaround guidance.

</details>

</details>
2026-02-18 23:35:46 +08:00
github-actions[bot]
00e577f6d2 docs: Auto Update Changelogs of v6.3.2 (#15738)
* docs: Auto Generate Changelog of Release v6.3.2

* docs: Update CHANGELOG for v6.3.2 release

This version update includes preliminary support for the PC client, a restructured task configuration for Windows, and various enhancements and fixes across the application. Key features include the ability to add multiple tasks, color-coded task statuses, and improved operator recognition.

* docs: Update CHANGELOG for version 6.3.2

Updated CHANGELOG for version 6.3.2 with new features, improvements, fixes, and documentation updates.

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: AnnAngela <naganjue@vip.qq.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2026-02-18 23:35:28 +08:00
uye
6d32795ffa chore: 增加 id 格式验证 2026-02-18 20:31:39 +08:00
uye
a72571ce90 fix: 4 星公招时间显示错误 2026-02-18 20:23:16 +08:00
uye
59fa039a72 feat: 睡眠休眠前增加倒计时弹窗 2026-02-18 20:12:31 +08:00
Constrat
adb8863cf6 perf: optimize templates 2026-02-17 10:12:07 +01:00
Constrat
7bab2b2312 perf: increase score for AddOperatorTradeAggressive EN 2026-02-17 10:11:58 +01:00
Manicsteiner
b55b2c6bd6 chore: Yostar servers SSS#9 and ShamareThumbnail (#15732)
* chore: Yostar servers SSS#9 and ShamareThumbnail

* chore: KR ShamareThumbnail4.png

* chore: Shamare EN

* perf: png optimization

* chore: KR replace the incorrect template

---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2026-02-16 23:54:22 +01:00
status102
3d46fc1d0c fix: 刷理智自定义剿灭关卡在特定情况的绑定错误 2026-02-16 17:44:15 +08:00
status102
e62a9a08a9 fix(wpf): 在禁用刷理智-自定义剿灭关卡后需要手动切换任务以刷新列表中显示的剿灭关卡, 尽管不影响实际运行 2026-02-16 15:58:01 +08:00
uye
f7f9a4f44c perf: 干员识别按照 稀有度->精英化->等级->潜能->Id 排序 2026-02-16 02:04:08 +08:00
uye
9ab3265188 perf: 优化识别工具中列表小于 5 时的显示效果 2026-02-16 01:29:23 +08:00
uye
e1572d8bba chore: 明确周计划和定时更新使用游戏时间而非现实时间 2026-02-16 00:56:52 +08:00
uye
761ea19e8b fix: 会客室任务失败重试时尝试关闭赠送线索界面
fix #15726
2026-02-16 00:36:26 +08:00
Constrat
d9ad52053b fix(wpf): English text overflow on long strings in middle column 2026-02-15 16:23:48 +01:00
SherkeyXD
1ddee84199 chore: 移除老主线导航逻辑 (#15644) 2026-02-14 15:54:33 +08:00
uye
45b89b7089 feat: 生息演算支援道具名称改为全字匹配
fix #15713
2026-02-14 15:52:52 +08:00
status102
c8a0c982b9 fix(wpf): 肉鸽开局种子无法通过Wpf设置两位数难度 2026-02-14 12:56:31 +08:00
status102
910cd47dfa fix(wpf): 小工具-公招识别 3~5星选择时间无法修改 2026-02-14 12:54:58 +08:00
status102
63d499816d fix(wpf): 小工具-干员识别 开始识别按钮启用状态绑定失效 2026-02-14 12:54:57 +08:00
status102
d734109155 fix: 自动公招任务3~5星确认时间在修改后未能刷新UI 2026-02-14 12:54:57 +08:00
github-actions[bot]
c45e6a3d10 chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/22002953703
[skip changelog]
2026-02-13 21:12:26 +00:00
Goat Boring(山羊博宁88)
5e712c04eb docs: 删除一些过时内容 (#15700)
* docs: 删除一些过时内容

* docs: Apply suggestion from @sourcery-ai[bot]

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: Rbqwow <55343783+Rbqwow@users.noreply.github.com>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
2026-02-13 15:36:13 +08:00
HY
dc9c9dfee6 chore: 繁中服「夢鄉」主題 (#15699) 2026-02-13 15:34:27 +08:00
Constrat
ec7cbeeb1c fix: EN AveMujica terminal new template 2026-02-13 00:42:44 +01:00
Constrat
c3ccd36d02 fix: EN IS tentative fix increasing roi for encounter and more replace regex 2026-02-12 23:36:44 +01:00
uye
283309d3c1 Release v6.3.1 (#15679)
## Summary by Sourcery

优化干员名称 OCR 预处理逻辑,新增在无效关卡详情干员名称时保存调试图片,并调整工具与配置,以提升开发分支上 GUI 构建的安全性并简化 CI
流程。

Enhancements:
- 改进 OperNameAnalyzer,使其支持可配置的左右文本对齐方式,采用更安全的 ROI 裁剪方式并提供更合理的参数默认值。
- 在关卡详情的干员名称 OCR 中使用 OperNameAnalyzer,并在检测到无效名称时保存调试图片。
- 更新多项游戏内任务和资源的 JSON 配置,包括肉鸽、基建以及协同作战编队等。

Build:
- 将 WPF GUI 的自定义 CMake 目标 `run-MaaWpfGui` 置于 VS Code
环境检查之后,以避免在其他环境中被意外执行。

CI:
- 更新 CI 工作流触发条件,使其在 dev 分支推送与打 tag 时运行,同时简化拉取请求相关条件,并调整冒烟测试在 dev
分支推送时运行。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Refine operator name OCR preprocessing, add debug image saving for
invalid battle detail names, and adjust tooling and configuration for
safer GUI builds and streamlined CI on the dev branch.

Enhancements:
- Improve OperNameAnalyzer to handle configurable left/right text
alignment with safer ROI cropping and parameter defaults.
- Use OperNameAnalyzer for battle detail operator name OCR and save
debug images when an invalid name is detected.
- Update multiple in-game task and resource JSON configurations,
including roguelike, infrastructure, and copilot formations.

Build:
- Gate the WPF GUI run-MaaWpfGui custom CMake target behind a VS Code
environment check to avoid unintended execution in other environments.

CI:
- Update CI workflow triggers to run on dev branch pushes and tags while
simplifying pull request conditions and aligning smoke tests to run on
dev pushes.

</details>

增强内容:
- 将 WPF GUI 的 CMake 运行目标限制在 VS Code 环境中,以避免在其他环境中被意外执行。
- 为战斗详情分析中无效干员名称检测添加图片保存功能,以便进行调试和诊断。
- 更新多种任务与资源的 JSON 配置,包括肉鸽、基建以及助理编队等。

构建:
- 在主 CMake 配置中,通过 VS Code 环境变量控制自定义目标 `run-MaaWpfGui` 的执行。

CI:
- 调整 CI 工作流,使其在 dev 分支的推送和打标签时运行,同时简化拉取请求触发条件,并将冒烟测试对齐为在 dev 分支推送时运行。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

优化干员名称 OCR 预处理逻辑,新增在无效关卡详情干员名称时保存调试图片,并调整工具与配置,以提升开发分支上 GUI 构建的安全性并简化 CI
流程。

Enhancements:
- 改进 OperNameAnalyzer,使其支持可配置的左右文本对齐方式,采用更安全的 ROI 裁剪方式并提供更合理的参数默认值。
- 在关卡详情的干员名称 OCR 中使用 OperNameAnalyzer,并在检测到无效名称时保存调试图片。
- 更新多项游戏内任务和资源的 JSON 配置,包括肉鸽、基建以及协同作战编队等。

Build:
- 将 WPF GUI 的自定义 CMake 目标 `run-MaaWpfGui` 置于 VS Code
环境检查之后,以避免在其他环境中被意外执行。

CI:
- 更新 CI 工作流触发条件,使其在 dev 分支推送与打 tag 时运行,同时简化拉取请求相关条件,并调整冒烟测试在 dev
分支推送时运行。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Refine operator name OCR preprocessing, add debug image saving for
invalid battle detail names, and adjust tooling and configuration for
safer GUI builds and streamlined CI on the dev branch.

Enhancements:
- Improve OperNameAnalyzer to handle configurable left/right text
alignment with safer ROI cropping and parameter defaults.
- Use OperNameAnalyzer for battle detail operator name OCR and save
debug images when an invalid name is detected.
- Update multiple in-game task and resource JSON configurations,
including roguelike, infrastructure, and copilot formations.

Build:
- Gate the WPF GUI run-MaaWpfGui custom CMake target behind a VS Code
environment check to avoid unintended execution in other environments.

CI:
- Update CI workflow triggers to run on dev branch pushes and tags while
simplifying pull request conditions and aligning smoke tests to run on
dev pushes.

</details>

</details>
2026-02-13 02:01:52 +08:00
uye
43d5c429ae docs: Update CHANGELOG with new features and fixes 2026-02-13 01:59:57 +08:00
status102
bb15f533b2 perf: 配置迁移自动为启用备选且首个关卡为剿灭模式的刷理智任务自动添加额外的刷理智任务 2026-02-13 00:13:06 +08:00
uye
424b916265 docs: 更新 api 链接 2026-02-12 21:57:07 +08:00
Status102
656ba9d749 perf: 忽略干员属性要求 不再允许跳过精英化要求 (#15697)
* perf: `忽略干员属性要求` 不再允许跳过精英化要求

* fix: flag

* i18n: KR

* i18n: EN

---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2026-02-12 21:31:48 +08:00
Manicsteiner
2a4cd8b7c8 fix: JP AveMujica event ocr 2026-02-12 20:12:47 +08:00
status102
e862101764 docs: changelog 2026-02-12 19:50:07 +08:00
status102
c095cc6d6f perf: 自动战斗自动编队期间如有干员属性要求被忽略, 则禁用自动化投票 2026-02-12 19:30:33 +08:00
status102
a0a6cf6739 perf: 作业列表在忽略干员属性后不再自动投票 2026-02-12 19:02:22 +08:00
uye
f21f7cfd92 docs: Update CHANGELOG for version 6.3.1
Added new features and fixed various issues in version 6.3.1.
2026-02-12 18:58:50 +08:00
github-actions[bot]
10989582ee chore: Auto Update Game Resources - 2026-02-12
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21938905905

[skip changelog]
2026-02-12 08:23:37 +00:00
status102
a0b73022cd fix: UserAdditional非json格式报错 2026-02-12 16:01:31 +08:00
status102
5bc7364eb6 chore: 使用屏幕宽高常量代替硬编码 2026-02-12 16:01:30 +08:00
status102
7c3d531177 fix: 屏幕外的干员跳过技能就绪检测 2026-02-12 16:01:30 +08:00
Manicsteiner
b4d75f194e chore: JP OperNameAnalyzer specialParams 2026-02-12 14:55:37 +08:00
AnnAngela
f642273b7a docs: Update CHANGELOG with recent adjustments and fixes 2026-02-12 12:58:34 +08:00
HY
3da747a59a chore: 調整繁中服界園肉鴿 OCR (2/?) (#15689) 2026-02-12 12:57:35 +08:00
github-actions[bot]
cfb2a70ac3 docs: Auto Update Changelogs of v6.3.1 (#15688)
* docs: Auto Generate Changelog of Release v6.3.1

* docs: Update CHANGELOG for v6.3.1 release

This update introduces preliminary support for the PC client of Arknights, restructures the Farming configuration for Windows, and includes various improvements and fixes across multiple features.

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: AnnAngela <naganjue@vip.qq.com>
2026-02-12 02:34:03 +01:00
Constrat
3c763afa2d fix: update refresh node EN IS5 2026-02-11 23:55:16 +01:00
Constrat
173d8f50ac ci: color [INF] for smoke testing as well 2026-02-11 22:50:05 +01:00
Constrat
867a7b5ea7 fix: i'm kinda stupid 2026-02-11 22:24:43 +01:00
Constrat
3469aa3777 fix: EN IS StageRefresh 2026-02-11 21:54:26 +01:00
github-actions[bot]
f7c85a9803 feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21921948238
[skip changelog]
2026-02-11 20:31:02 +00:00
uye
19241cf186 feat: OperNameAnalyzer 支持左对齐检测 (#15682)
rft: OperNameAnalyzer 支持左对齐检测
2026-02-12 04:30:20 +08:00
uye
51d6fc3ce1 chore: 调整单字干员正则 2026-02-11 21:55:23 +08:00
HY
d7f7614de6 chore: 調整繁中服界園肉鴿 OCR (#15678) 2026-02-11 14:29:14 +01:00
Constrat
5de1387402 fix: EN IS fix trader store templates AGAIN 2026-02-11 14:17:55 +01:00
Constrat
08956dc9e8 fix: EN Yu OCR for Yutenji 2026-02-11 13:59:57 +01:00
status102
d32484e366 fix: 自动编队选择技能时点击到技能描述教程了 2026-02-11 16:30:09 +08:00
uye
206f5bf97c chore: 删除干员名开头/末尾的_<> 2026-02-11 16:27:00 +08:00
status102
f1827ad99a fix: 自动编队选择技能时点击到技能范围 2026-02-11 16:22:18 +08:00
drway
a68f740fe3 chore: 添加响石、赤刃明霄陈基建技能加成 (#15674)
响石效率参照技能同为线索交流期间加成的跃跃填写
2026-02-11 16:10:12 +08:00
uye
483a484ae7 chore: 保全派驻自动战斗使用二值化结果识别干员名 2026-02-11 16:06:50 +08:00
uye
ad26721541 chore: 删除无用的正则替换 2026-02-11 15:59:55 +08:00
uye
ba6f52f974 chore: 自动战斗使用二值化结果识别干员名 2026-02-11 15:55:51 +08:00
uye
3782fb1fcb debug: 自动战斗遇到干员名识别失败时保留截图 2026-02-11 15:33:20 +08:00
Status102
0ea2845b5b chore: 仅在VS Code中添加辅助项目 (#15669) 2026-02-11 11:16:09 +08:00
MistEO
96b95bf5e4 ci: only handle push on dev 2026-02-11 10:58:29 +08:00
晓丶梦丶仁
256e3e3f58 Release v6.3.0 (#15651) 2026-02-11 00:37:48 +08:00
github-actions[bot]
9629226688 docs: Auto Update Changelogs of v6.3.0 (#15652)
* docs: Auto Generate Changelog of Release v6.3.0

* docs: ai 神力

* docs: update changelog

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2026-02-11 00:33:34 +08:00
uye
7dd93eb756 chore: 作业集 Parse 后不删除历史记录,避免错过作业抛出的错误 2026-02-11 00:30:40 +08:00
Constrat
f91324fbe8 fix: AweMujica fixes + recruitment button 2026-02-10 17:23:21 +01:00
status102
8eb62c2a7b perf: 刷理智过期关卡样式优化 2026-02-11 00:21:32 +08:00
status102
d473c2c3f6 rft(wpf): 移除不再使用的旧序列化函数 2026-02-10 23:57:52 +08:00
Status102
8785c9d00a rft: 过期关卡使用删除线表示 (#15657)
* rft: 使用`不修改关卡`替代 显式修改为`无效关卡`

* fix: 过滤过期关卡

* feat: 过期关卡增加删除线

* perf: 移除不必要的警告

* perf: 简化过滤

* fix: 无法隐藏关卡, 取消手动输入关卡名后验证关卡名有效性

---------

Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2026-02-10 23:50:32 +08:00
airwish
02cf529bf8 chore: fix casing typo and related context (#15656)
* chore: fix typo

* typo: "Request" spelling mistake

---------

Co-authored-by: 晓丶梦丶仁 <74444214+Daydreamer114@users.noreply.github.com>
2026-02-10 23:48:44 +08:00
萨拉托加
2b8e88cdc5 fix: 移除单字干员ocr替换中的+*?避免误判 2026-02-10 22:29:59 +08:00
github-actions[bot]
e05fe43662 chore: Auto Templates Optimization
Triggered by d84c5b3311

[skip changelog]
2026-02-10 13:10:10 +00:00
Manicsteiner
d84c5b3311 chore: YostarJP AveMujica UiTheme and ocr edits 2026-02-10 21:08:40 +08:00
github-actions[bot]
5162a77701 chore: Auto Update Game Resources - 2026-02-10
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21864946208

[skip changelog]
2026-02-10 12:31:45 +00:00
status102
24c3e7e945 Revert "fix: 未开放关卡不重置 (#15647)"
This reverts commit 6c0bde0611.
2026-02-10 20:31:29 +08:00
uye
fc1643a728 fix: LoadApiCache 路径拼接错误 2026-02-10 20:30:40 +08:00
github-actions[bot]
86baa18ad9 chore: Auto Update Game Resources - 2026-02-10
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21863968850

[skip changelog]
2026-02-10 12:00:12 +00:00
github-actions[bot]
45a6695a15 chore: Auto Update Game Resources - 2026-02-10
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21863336036

[skip changelog]
2026-02-10 11:38:48 +00:00
HY
f39ae39f7d feat: 繁中服 界園肉鴿 初步適配 (#15605)
* chore: 先放已知的 json 內容

* chore: 再補一點東西方便後續作業

* chore: 補充截圖

* chore: 調整 GUI 相關內容

* chore: 再改一點啥

* chore: 補完剩餘的截圖 (應該)

* chore: 再改點

* chore: 改啦哪次不改

* chore: 再改 (3/?)

* chore: 替換 Roguelike@StageTraderRefresh.png

* chore: 漏了【安全的角落】的截圖

* chore: 改 (4/?)

* chore: 衡-霧凇 OCR 調整

* chore: 再改 (嗎?)

* chore: 再改 嗚嗚
2026-02-10 19:32:36 +08:00
晓丶梦丶仁
6c0bde0611 fix: 未开放关卡不重置 (#15647)
* fix: 未开放关卡不重置

* fix: 默认值设为不重置
2026-02-10 19:20:32 +08:00
HX3N
93b7d47cc7 fix: YostarKR Roguelike@ChooseOperConfirm 2026-02-10 18:27:53 +09:00
status102
8365874e28 chore: 辞岁行 地图 2026-02-10 Map 2026-02-10 17:00:31 +08:00
HX3N
cb03a617d2 chore: YostarKR AveMujica UiTheme and ocr edits 2026-02-10 17:37:31 +09:00
github-actions[bot]
a6f309fa88 chore: Auto Update Game Resources - 2026-02-10
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21857003427

[skip changelog]
2026-02-10 08:17:18 +00:00
github-actions[bot]
9a214aaf0e chore: Auto Update Game Resources - 2026-02-10
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21856050997

[skip changelog]
2026-02-10 07:42:37 +00:00
uye
ff97d59d58 fix: 外服主线导航 2026-02-10 15:33:27 +08:00
github-actions[bot]
d94961f737 chore: Auto Update Game Resources - 2026-02-10
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21854248482

[skip changelog]
2026-02-10 06:27:40 +00:00
SherkeyXD
3ad1c7096d fix: 主线导航出错 2026-02-10 14:21:13 +08:00
SherkeyXD
9a5ad94920 feat: SideStory「辞岁行」导航 2026-02-10 13:43:48 +08:00
github-actions[bot]
d832875951 chore: Auto Update Game Resources - 2026-02-10
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21851784430

[skip changelog]
2026-02-10 04:32:04 +00:00
github-actions[bot]
68a9a82107 chore: Auto Update Game Resources - 2026-02-09
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21844665938

[skip changelog]
2026-02-09 23:17:22 +00:00
github-actions[bot]
42088719c5 chore: Auto Update Game Resources - 2026-02-09
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21844123005

[skip changelog]
2026-02-09 22:57:53 +00:00
Constrat
c4f229930e chore: remove regex from text field in EN Sui IS 2026-02-09 23:37:14 +01:00
Constrat
5f0f0da82e fix: EN Greyy Alter regex 2026-02-09 22:39:31 +01:00
Constrat
a0a475764b fix: EN IS6 encounter 2026-02-09 22:21:09 +01:00
uye
59f848b7f7 feat: 日志中额外记录 TaskChain 与 taskId ~~免得有人把 Fight 改成开始唤醒~~ 2026-02-10 03:46:57 +08:00
uye
6c0c84c649 Release v6.3.0-beta.8 (#15639)
## Summary by Sourcery

从构建和发布流程中移除 JSON 压缩,并修复 WPF Maa API 服务中的缓存路径构造错误。

Bug 修复:
- 修正 Maa API 缓存文件路径的构造方式,将字符串拼接改为使用 `Path.Combine`。

构建:
- 从 Windows、Linux 和 macOS 的 CI 构建工作流中移除 JSON 资源压缩步骤。

文档:
- 更新变更日志,不再提及资源文件的 JSON 压缩。

杂项:
- 删除未使用的工具脚本 `minify_json_folder.py`。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Remove JSON minification from the build and release process and fix a
cache path construction bug in the WPF Maa API service.

Bug Fixes:
- Correct Maa API cache file path construction to use Path.Combine
instead of string concatenation.

Build:
- Remove JSON resource minification steps from CI workflows for Windows,
Linux, and macOS builds.

Documentation:
- Update changelog to no longer mention JSON minification of resource
files.

Chores:
- Delete the unused minify_json_folder.py tooling script.

</details>
2026-02-10 02:27:59 +08:00
uye
fd18bfee21 Revert: "feat: 发布时minify resource文件下的json (#15567)" 2026-02-10 02:18:56 +08:00
uye
b5bba18200 fix: 路径拼接 2026-02-10 01:58:41 +08:00
uye
4149344318 Release v6.3.0-beta.8 (#15613)
## Summary by Sourcery

更新 copilot、roguelike 和战斗任务处理逻辑,引入缓存清理工具和关卡元数据增强,并将构建/CI 工作流与文档迁移到使用
CMake presets 的方案,同时加入 JSON 压缩步骤。

New Features:
- 新增从 GUI 一直到核心任务插件的 roguelike 随机种子(seed)显式输入支持。
- 引入用于清理缓存和调试目录的 GUI 工具,并带有用户通知。
- 新增具备背包认知的芯片关卡提示,利用分组掉落信息,并暴露更多关卡元数据,如每周开放情况和掉落分组。
- 提供一个 CMake target,使 WPF GUI 可以直接从构建目录运行。

Bug Fixes:
- 防止 copilot 分配超出干员稀有度所支持等级的技能等级,并在文件名为空时安全跳过元数据更新。
- 修复任务队列日志记录,改为使用实际任务名称,并加固任务索引逻辑,避免在任务流中越界访问。
- 修正 roguelike 小队的持久化与选择问题,并确保在关卡可见性设置变化时,战斗任务的关卡计划能够正确刷新。

Enhancements:
- 优化 copilot 与 roguelike 的 ViewModel,包括简化后备字段、规范化 copilot
缓存路径,以及改进用户配置标志的传递。
- 将彩蛋检测扩展到所有商店类任务,并调整 Pallas 字符串行为以改善用户体验。
- 在应用退出时重置临时任务状态,避免不必要的 UI 刷新,并改进在战斗关卡规划中对过期或自定义关卡的处理。
- 在 GUI 和核心解析逻辑中验证并规范化 copilot 干员技能索引,并在 copilot 配置中完整解析干员需求字段。

Build:
- 在 CI、冒烟测试、资源更新器和发布流程中采用 CMake presets,为主项目和 `ResourceUpdater` 添加
presets,并在打包过程中集成 JSON 压缩步骤。
- 更新 devcontainer 镜像,使用 Kitware 的 APT 软件源以保持 CMake 版本最新。

CI:
- 更新 CI、夜间 OTA、冒烟测试和资源更新工作流,通过 CMake presets 进行配置、构建和安装,并在适用场景下压缩打包的
JSON 资源。

Documentation:
- 更新多语言开发指南,使其使用 CMake presets,并记录可选的基于 VSCode 的工作流,包括推荐扩展和调试步骤。
- 在所有支持语言中澄清 copilot 模式文档,使其允许技能索引 0,以符合新的验证语义。

Chores:
- 添加 `clangd` 配置和 VSCode 设置,调整忽略规则,刷新多份资源 JSON 文件和任务定义,以适配新关卡和 roguelike
内容,包括 AveMujica、更新后的地块与战斗数据。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Update copilot, roguelike, and fight task handling, introduce
cache-cleaning tools and stage metadata enhancements, and migrate
build/CI workflows and docs to CMake presets with JSON minification.

New Features:
- Add explicit roguelike seed input support from GUI through to core
task plugins.
- Introduce a GUI tool to clear cache and debug directories with user
notifications.
- Add inventory-aware chip stage tips using grouped drop information and
expose additional stage metadata such as weekly availability and drop
groups.
- Provide a CMake target to run the WPF GUI directly from the build
tree.

Bug Fixes:
- Prevent copilot from assigning skill levels beyond what an operator's
rarity supports and safely skip metadata updates when filenames are
empty.
- Fix task queue logging to use actual task names and harden task
indexing to avoid out-of-range access across task flows.
- Correct persistence and selection of roguelike squads and ensure fight
task stage plans refresh properly when stage visibility settings change.

Enhancements:
- Refine copilot and roguelike view models, including backing-field
simplifications, normalized copilot cache paths, and improved
propagation of user configuration flags.
- Extend Easter egg detection to all mall tasks and adjust Pallas string
behavior for better UX.
- Reset temporary task state on app exit without unnecessary UI
refreshes and improve handling of expired or custom stages in fight
stage planning.
- Validate and normalize copilot operator skill indices both in GUI and
core parsing logic and fully parse operator requirement fields in
copilot configs.

Build:
- Adopt CMake presets across CI, smoke tests, resource updater, and
release workflows, adding presets for the main project and
ResourceUpdater and integrating a JSON minification step into packaging.
- Update the devcontainer image to use Kitware's APT repository to keep
CMake up to date.

CI:
- Update CI, nightly OTA, smoke test, and resource update workflows to
configure, build, and install via CMake presets and to minify packaged
JSON resources where applicable.

Documentation:
- Update multi-language development guides to use CMake presets and
document an optional VSCode-based workflow with recommended extensions
and debugging steps.
- Clarify copilot schema docs in all supported languages to allow skill
index 0 in line with new validation semantics.

Chores:
- Add clangd configuration and VSCode settings, adjust ignore rules, and
refresh multiple resource JSON files and task definitions for new stages
and roguelike content including AveMujica, updated tiles, and battle
data.

</details>

Bug 修复:
- 防止 copilot 为干员使用超出其稀有度允许范围的技能等级,并在更新 copilot 文件元数据时安全处理空文件名。
- 修复任务队列日志与索引处理逻辑,改为使用实际任务名,并避免在各类任务流程中出现索引越界或不一致的情况。
- 修正肉鸽编队选择的持久化问题,并确保在关卡可见性变化时,战斗任务的关卡规划会正确刷新。

功能增强:
- 优化 copilot 和肉鸽视图模型,通过简化属性后备字段、规范化文件路径,以及改进对用户配置(如附加参数和种子选项)的处理。
- 从 UI 到核心任务插件执行链路,新增对肉鸽种子显式输入的支持,包括种子值的序列化。
- 在 CMake 中为 WPF GUI 添加运行目标,并改进应用程序退出时临时任务状态的重置行为。
- 调整缓存路径处理逻辑,改为使用相对于基础目录的路径,并将彩蛋检测扩展到所有商城任务中。
- 扩展本地化内容、copilot schema 文档和 Pallas 字符串行为,以反映新的技能语义和 UX 调整。
- 在 GUI 中新增用于清理缓存和调试目录的工具,并提供相应的用户反馈和日志记录。

构建:
- 在所有平台上为 CI、冒烟测试、资源更新器和发布工作流采用 CMakePresets,并将自动 JSON 压缩集成到打包步骤中。
- 为 devcontainer 镜像加入 Kitware APT 仓库,以确保 CMake 保持最新可用版本。
- 为主项目和 ResourceUpdater 添加 CMake Presets,并提供一个便捷目标,用于从构建树中启动 WPF GUI。

CI:
- 更新 CI、夜间 OTA、冒烟测试和资源更新工作流,以使用 CMake Presets 进行配置/构建/安装,并在打包资源上运行 JSON
压缩。

文档:
- 更新多语言开发指南,使其使用 CMake Presets 进行配置,并记录一个可选的基于 VSCode 的工作流,包括推荐扩展和调试步骤。
- 在所有语言的 copilot schema 文档中做出澄清,允许技能索引 0,并与新的校验行为保持一致。

杂项:
- 添加 clangd 配置和 VSCode 设置,更新忽略规则,并刷新多份资源 JSON 文件和任务定义,以支持新的关卡和肉鸽内容,包括
AveMujica,以及更新后的地块、关卡与战斗数据。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

更新 copilot、roguelike 和战斗任务处理逻辑,引入缓存清理工具和关卡元数据增强,并将构建/CI 工作流与文档迁移到使用
CMake presets 的方案,同时加入 JSON 压缩步骤。

New Features:
- 新增从 GUI 一直到核心任务插件的 roguelike 随机种子(seed)显式输入支持。
- 引入用于清理缓存和调试目录的 GUI 工具,并带有用户通知。
- 新增具备背包认知的芯片关卡提示,利用分组掉落信息,并暴露更多关卡元数据,如每周开放情况和掉落分组。
- 提供一个 CMake target,使 WPF GUI 可以直接从构建目录运行。

Bug Fixes:
- 防止 copilot 分配超出干员稀有度所支持等级的技能等级,并在文件名为空时安全跳过元数据更新。
- 修复任务队列日志记录,改为使用实际任务名称,并加固任务索引逻辑,避免在任务流中越界访问。
- 修正 roguelike 小队的持久化与选择问题,并确保在关卡可见性设置变化时,战斗任务的关卡计划能够正确刷新。

Enhancements:
- 优化 copilot 与 roguelike 的 ViewModel,包括简化后备字段、规范化 copilot
缓存路径,以及改进用户配置标志的传递。
- 将彩蛋检测扩展到所有商店类任务,并调整 Pallas 字符串行为以改善用户体验。
- 在应用退出时重置临时任务状态,避免不必要的 UI 刷新,并改进在战斗关卡规划中对过期或自定义关卡的处理。
- 在 GUI 和核心解析逻辑中验证并规范化 copilot 干员技能索引,并在 copilot 配置中完整解析干员需求字段。

Build:
- 在 CI、冒烟测试、资源更新器和发布流程中采用 CMake presets,为主项目和 `ResourceUpdater` 添加
presets,并在打包过程中集成 JSON 压缩步骤。
- 更新 devcontainer 镜像,使用 Kitware 的 APT 软件源以保持 CMake 版本最新。

CI:
- 更新 CI、夜间 OTA、冒烟测试和资源更新工作流,通过 CMake presets 进行配置、构建和安装,并在适用场景下压缩打包的
JSON 资源。

Documentation:
- 更新多语言开发指南,使其使用 CMake presets,并记录可选的基于 VSCode 的工作流,包括推荐扩展和调试步骤。
- 在所有支持语言中澄清 copilot 模式文档,使其允许技能索引 0,以符合新的验证语义。

Chores:
- 添加 `clangd` 配置和 VSCode 设置,调整忽略规则,刷新多份资源 JSON 文件和任务定义,以适配新关卡和 roguelike
内容,包括 AveMujica、更新后的地块与战斗数据。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Update copilot, roguelike, and fight task handling, introduce
cache-cleaning tools and stage metadata enhancements, and migrate
build/CI workflows and docs to CMake presets with JSON minification.

New Features:
- Add explicit roguelike seed input support from GUI through to core
task plugins.
- Introduce a GUI tool to clear cache and debug directories with user
notifications.
- Add inventory-aware chip stage tips using grouped drop information and
expose additional stage metadata such as weekly availability and drop
groups.
- Provide a CMake target to run the WPF GUI directly from the build
tree.

Bug Fixes:
- Prevent copilot from assigning skill levels beyond what an operator's
rarity supports and safely skip metadata updates when filenames are
empty.
- Fix task queue logging to use actual task names and harden task
indexing to avoid out-of-range access across task flows.
- Correct persistence and selection of roguelike squads and ensure fight
task stage plans refresh properly when stage visibility settings change.

Enhancements:
- Refine copilot and roguelike view models, including backing-field
simplifications, normalized copilot cache paths, and improved
propagation of user configuration flags.
- Extend Easter egg detection to all mall tasks and adjust Pallas string
behavior for better UX.
- Reset temporary task state on app exit without unnecessary UI
refreshes and improve handling of expired or custom stages in fight
stage planning.
- Validate and normalize copilot operator skill indices both in GUI and
core parsing logic and fully parse operator requirement fields in
copilot configs.

Build:
- Adopt CMake presets across CI, smoke tests, resource updater, and
release workflows, adding presets for the main project and
ResourceUpdater and integrating a JSON minification step into packaging.
- Update the devcontainer image to use Kitware's APT repository to keep
CMake up to date.

CI:
- Update CI, nightly OTA, smoke test, and resource update workflows to
configure, build, and install via CMake presets and to minify packaged
JSON resources where applicable.

Documentation:
- Update multi-language development guides to use CMake presets and
document an optional VSCode-based workflow with recommended extensions
and debugging steps.
- Clarify copilot schema docs in all supported languages to allow skill
index 0 in line with new validation semantics.

Chores:
- Add clangd configuration and VSCode settings, adjust ignore rules, and
refresh multiple resource JSON files and task definitions for new stages
and roguelike content including AveMujica, updated tiles, and battle
data.

</details>

</details>

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

更新 copilot、roguelike 和战斗任务处理逻辑,引入缓存清理工具和关卡元数据增强,并将构建/CI 工作流与文档迁移到使用
CMake presets 的方案,同时加入 JSON 压缩步骤。

New Features:
- 新增从 GUI 一直到核心任务插件的 roguelike 随机种子(seed)显式输入支持。
- 引入用于清理缓存和调试目录的 GUI 工具,并带有用户通知。
- 新增具备背包认知的芯片关卡提示,利用分组掉落信息,并暴露更多关卡元数据,如每周开放情况和掉落分组。
- 提供一个 CMake target,使 WPF GUI 可以直接从构建目录运行。

Bug Fixes:
- 防止 copilot 分配超出干员稀有度所支持等级的技能等级,并在文件名为空时安全跳过元数据更新。
- 修复任务队列日志记录,改为使用实际任务名称,并加固任务索引逻辑,避免在任务流中越界访问。
- 修正 roguelike 小队的持久化与选择问题,并确保在关卡可见性设置变化时,战斗任务的关卡计划能够正确刷新。

Enhancements:
- 优化 copilot 与 roguelike 的 ViewModel,包括简化后备字段、规范化 copilot
缓存路径,以及改进用户配置标志的传递。
- 将彩蛋检测扩展到所有商店类任务,并调整 Pallas 字符串行为以改善用户体验。
- 在应用退出时重置临时任务状态,避免不必要的 UI 刷新,并改进在战斗关卡规划中对过期或自定义关卡的处理。
- 在 GUI 和核心解析逻辑中验证并规范化 copilot 干员技能索引,并在 copilot 配置中完整解析干员需求字段。

Build:
- 在 CI、冒烟测试、资源更新器和发布流程中采用 CMake presets,为主项目和 `ResourceUpdater` 添加
presets,并在打包过程中集成 JSON 压缩步骤。
- 更新 devcontainer 镜像,使用 Kitware 的 APT 软件源以保持 CMake 版本最新。

CI:
- 更新 CI、夜间 OTA、冒烟测试和资源更新工作流,通过 CMake presets 进行配置、构建和安装,并在适用场景下压缩打包的
JSON 资源。

Documentation:
- 更新多语言开发指南,使其使用 CMake presets,并记录可选的基于 VSCode 的工作流,包括推荐扩展和调试步骤。
- 在所有支持语言中澄清 copilot 模式文档,使其允许技能索引 0,以符合新的验证语义。

Chores:
- 添加 `clangd` 配置和 VSCode 设置,调整忽略规则,刷新多份资源 JSON 文件和任务定义,以适配新关卡和 roguelike
内容,包括 AveMujica、更新后的地块与战斗数据。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Update copilot, roguelike, and fight task handling, introduce
cache-cleaning tools and stage metadata enhancements, and migrate
build/CI workflows and docs to CMake presets with JSON minification.

New Features:
- Add explicit roguelike seed input support from GUI through to core
task plugins.
- Introduce a GUI tool to clear cache and debug directories with user
notifications.
- Add inventory-aware chip stage tips using grouped drop information and
expose additional stage metadata such as weekly availability and drop
groups.
- Provide a CMake target to run the WPF GUI directly from the build
tree.

Bug Fixes:
- Prevent copilot from assigning skill levels beyond what an operator's
rarity supports and safely skip metadata updates when filenames are
empty.
- Fix task queue logging to use actual task names and harden task
indexing to avoid out-of-range access across task flows.
- Correct persistence and selection of roguelike squads and ensure fight
task stage plans refresh properly when stage visibility settings change.

Enhancements:
- Refine copilot and roguelike view models, including backing-field
simplifications, normalized copilot cache paths, and improved
propagation of user configuration flags.
- Extend Easter egg detection to all mall tasks and adjust Pallas string
behavior for better UX.
- Reset temporary task state on app exit without unnecessary UI
refreshes and improve handling of expired or custom stages in fight
stage planning.
- Validate and normalize copilot operator skill indices both in GUI and
core parsing logic and fully parse operator requirement fields in
copilot configs.

Build:
- Adopt CMake presets across CI, smoke tests, resource updater, and
release workflows, adding presets for the main project and
ResourceUpdater and integrating a JSON minification step into packaging.
- Update the devcontainer image to use Kitware's APT repository to keep
CMake up to date.

CI:
- Update CI, nightly OTA, smoke test, and resource update workflows to
configure, build, and install via CMake presets and to minify packaged
JSON resources where applicable.

Documentation:
- Update multi-language development guides to use CMake presets and
document an optional VSCode-based workflow with recommended extensions
and debugging steps.
- Clarify copilot schema docs in all supported languages to allow skill
index 0 in line with new validation semantics.

Chores:
- Add clangd configuration and VSCode settings, adjust ignore rules, and
refresh multiple resource JSON files and task definitions for new stages
and roguelike content including AveMujica, updated tiles, and battle
data.

</details>

Bug 修复:
- 防止 copilot 为干员使用超出其稀有度允许范围的技能等级,并在更新 copilot 文件元数据时安全处理空文件名。
- 修复任务队列日志与索引处理逻辑,改为使用实际任务名,并避免在各类任务流程中出现索引越界或不一致的情况。
- 修正肉鸽编队选择的持久化问题,并确保在关卡可见性变化时,战斗任务的关卡规划会正确刷新。

功能增强:
- 优化 copilot 和肉鸽视图模型,通过简化属性后备字段、规范化文件路径,以及改进对用户配置(如附加参数和种子选项)的处理。
- 从 UI 到核心任务插件执行链路,新增对肉鸽种子显式输入的支持,包括种子值的序列化。
- 在 CMake 中为 WPF GUI 添加运行目标,并改进应用程序退出时临时任务状态的重置行为。
- 调整缓存路径处理逻辑,改为使用相对于基础目录的路径,并将彩蛋检测扩展到所有商城任务中。
- 扩展本地化内容、copilot schema 文档和 Pallas 字符串行为,以反映新的技能语义和 UX 调整。
- 在 GUI 中新增用于清理缓存和调试目录的工具,并提供相应的用户反馈和日志记录。

构建:
- 在所有平台上为 CI、冒烟测试、资源更新器和发布工作流采用 CMakePresets,并将自动 JSON 压缩集成到打包步骤中。
- 为 devcontainer 镜像加入 Kitware APT 仓库,以确保 CMake 保持最新可用版本。
- 为主项目和 ResourceUpdater 添加 CMake Presets,并提供一个便捷目标,用于从构建树中启动 WPF GUI。

CI:
- 更新 CI、夜间 OTA、冒烟测试和资源更新工作流,以使用 CMake Presets 进行配置/构建/安装,并在打包资源上运行 JSON
压缩。

文档:
- 更新多语言开发指南,使其使用 CMake Presets 进行配置,并记录一个可选的基于 VSCode 的工作流,包括推荐扩展和调试步骤。
- 在所有语言的 copilot schema 文档中做出澄清,允许技能索引 0,并与新的校验行为保持一致。

杂项:
- 添加 clangd 配置和 VSCode 设置,更新忽略规则,并刷新多份资源 JSON 文件和任务定义,以支持新的关卡和肉鸽内容,包括
AveMujica,以及更新后的地块、关卡与战斗数据。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

更新 copilot、roguelike 和战斗任务处理逻辑,引入缓存清理工具和关卡元数据增强,并将构建/CI 工作流与文档迁移到使用
CMake presets 的方案,同时加入 JSON 压缩步骤。

New Features:
- 新增从 GUI 一直到核心任务插件的 roguelike 随机种子(seed)显式输入支持。
- 引入用于清理缓存和调试目录的 GUI 工具,并带有用户通知。
- 新增具备背包认知的芯片关卡提示,利用分组掉落信息,并暴露更多关卡元数据,如每周开放情况和掉落分组。
- 提供一个 CMake target,使 WPF GUI 可以直接从构建目录运行。

Bug Fixes:
- 防止 copilot 分配超出干员稀有度所支持等级的技能等级,并在文件名为空时安全跳过元数据更新。
- 修复任务队列日志记录,改为使用实际任务名称,并加固任务索引逻辑,避免在任务流中越界访问。
- 修正 roguelike 小队的持久化与选择问题,并确保在关卡可见性设置变化时,战斗任务的关卡计划能够正确刷新。

Enhancements:
- 优化 copilot 与 roguelike 的 ViewModel,包括简化后备字段、规范化 copilot
缓存路径,以及改进用户配置标志的传递。
- 将彩蛋检测扩展到所有商店类任务,并调整 Pallas 字符串行为以改善用户体验。
- 在应用退出时重置临时任务状态,避免不必要的 UI 刷新,并改进在战斗关卡规划中对过期或自定义关卡的处理。
- 在 GUI 和核心解析逻辑中验证并规范化 copilot 干员技能索引,并在 copilot 配置中完整解析干员需求字段。

Build:
- 在 CI、冒烟测试、资源更新器和发布流程中采用 CMake presets,为主项目和 `ResourceUpdater` 添加
presets,并在打包过程中集成 JSON 压缩步骤。
- 更新 devcontainer 镜像,使用 Kitware 的 APT 软件源以保持 CMake 版本最新。

CI:
- 更新 CI、夜间 OTA、冒烟测试和资源更新工作流,通过 CMake presets 进行配置、构建和安装,并在适用场景下压缩打包的
JSON 资源。

Documentation:
- 更新多语言开发指南,使其使用 CMake presets,并记录可选的基于 VSCode 的工作流,包括推荐扩展和调试步骤。
- 在所有支持语言中澄清 copilot 模式文档,使其允许技能索引 0,以符合新的验证语义。

Chores:
- 添加 `clangd` 配置和 VSCode 设置,调整忽略规则,刷新多份资源 JSON 文件和任务定义,以适配新关卡和 roguelike
内容,包括 AveMujica、更新后的地块与战斗数据。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Update copilot, roguelike, and fight task handling, introduce
cache-cleaning tools and stage metadata enhancements, and migrate
build/CI workflows and docs to CMake presets with JSON minification.

New Features:
- Add explicit roguelike seed input support from GUI through to core
task plugins.
- Introduce a GUI tool to clear cache and debug directories with user
notifications.
- Add inventory-aware chip stage tips using grouped drop information and
expose additional stage metadata such as weekly availability and drop
groups.
- Provide a CMake target to run the WPF GUI directly from the build
tree.

Bug Fixes:
- Prevent copilot from assigning skill levels beyond what an operator's
rarity supports and safely skip metadata updates when filenames are
empty.
- Fix task queue logging to use actual task names and harden task
indexing to avoid out-of-range access across task flows.
- Correct persistence and selection of roguelike squads and ensure fight
task stage plans refresh properly when stage visibility settings change.

Enhancements:
- Refine copilot and roguelike view models, including backing-field
simplifications, normalized copilot cache paths, and improved
propagation of user configuration flags.
- Extend Easter egg detection to all mall tasks and adjust Pallas string
behavior for better UX.
- Reset temporary task state on app exit without unnecessary UI
refreshes and improve handling of expired or custom stages in fight
stage planning.
- Validate and normalize copilot operator skill indices both in GUI and
core parsing logic and fully parse operator requirement fields in
copilot configs.

Build:
- Adopt CMake presets across CI, smoke tests, resource updater, and
release workflows, adding presets for the main project and
ResourceUpdater and integrating a JSON minification step into packaging.
- Update the devcontainer image to use Kitware's APT repository to keep
CMake up to date.

CI:
- Update CI, nightly OTA, smoke test, and resource update workflows to
configure, build, and install via CMake presets and to minify packaged
JSON resources where applicable.

Documentation:
- Update multi-language development guides to use CMake presets and
document an optional VSCode-based workflow with recommended extensions
and debugging steps.
- Clarify copilot schema docs in all supported languages to allow skill
index 0 in line with new validation semantics.

Chores:
- Add clangd configuration and VSCode settings, adjust ignore rules, and
refresh multiple resource JSON files and task definitions for new stages
and roguelike content including AveMujica, updated tiles, and battle
data.

</details>

</details>

</details>
2026-02-10 01:01:29 +08:00
uye
8537612c37 chore: 调整清理图片缓存样式,增加提示 2026-02-10 00:58:35 +08:00
uye
6cc28ae344 chore: ClearCache 改成 static 2026-02-10 00:54:40 +08:00
uye
67d73e8e2e Revert "perf: 清空缓存移动到界面设置"
This reverts commit bfa2ab4e93.
2026-02-10 00:54:40 +08:00
uye
7fe05d3261 docs: format changelog 2026-02-09 23:33:46 +08:00
uye
4e94fdf133 docs: changelog 2026-02-09 23:32:00 +08:00
uye
cab1d602c9 fix: 修复任务出错日志可能晚于任务完成日志显示的问题 2026-02-09 22:43:19 +08:00
status102
8d983f2c8c fix: 自动编队干员技能描述过长时点击位置错误 2026-02-09 22:41:13 +08:00
status102
a76ac22c13 fix: 干员等级跨精英化时判断出错修复 2026-02-09 22:41:12 +08:00
status102
c45f76785d rft: 自动战斗自动编队检查干员等级&精英化技能等级拆分 2026-02-09 22:41:12 +08:00
SherkeyXD
1fde5dd93b feat: 界园肉鸽可选难度提高至18 2026-02-09 13:43:41 +08:00
Constrat
630aae99bc fix: EN IS TradeInvest templates text font change. 2026-02-08 16:07:27 +01:00
github-actions[bot]
cb50ad4a46 docs: Auto Update Changelogs of v6.3.0-beta.8 (#15615)
* docs: Auto Generate Changelog of Release v6.3.0-beta.8

* docs: changelog

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Status102 <102887808+status102@users.noreply.github.com>
2026-02-08 19:39:21 +08:00
Status102
13d88119b3 fix: NumberOcrReplace移除|/ (#15625) 2026-02-08 16:55:38 +08:00
Constrat
156335da1c fix: EN IS ShoppingConfirm text font change. 2026-02-08 00:59:42 +01:00
github-actions[bot]
3eeb45b3b4 chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21786873309
[skip changelog]
2026-02-07 21:07:38 +00:00
status102
c9c587053a fix: 过期关卡重置模式补充自动迁移 2026-02-08 02:02:43 +08:00
status102
f7875e3033 fix: UI绑定 2026-02-08 01:50:24 +08:00
uye
58bf3b3a82 feat: 芯片本支持显示库存数量 2026-02-07 23:55:03 +08:00
status102
33716c8350 fix: 无效关卡未能显示i18n文本 2026-02-07 19:55:31 +08:00
status102
c822ad0310 perf: 自动战斗不支持技能重置说明中, 干员名遵循干员名语言设置 2026-02-07 16:17:01 +08:00
status102
647efc8ade perf: 移除过时的参数兼容 2026-02-07 16:12:16 +08:00
Status102
759a81b03a i18n: 自动战斗-自动编队干员不支持技能说明 (#15609)
* i18n: 不支持技能

* i18n: EN

* i18n: typo

* i18n: KR

* i18n: JP

---------

Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
2026-02-07 00:40:17 +08:00
soundofautumn
3652fc4bea build: Adopt CMake presets for CI and add clangd/VSCode integration (#15595)
* feat: clangd support

* feat: 完善CMakePresets

* docs: 更新cmake命令

* fix: smoke test run

* docs: 更新vscode开发文档

* feat: 添加执行MaaWpf到cmake中

* feat: 支持全部的presets

* chore: 重新安排顺序

* chore: add some comment

* chore: add more comments

* feat: 简化res-update-game

* chore: 移除多余build

* chore: 统一x64和arm64

* chore: 修正重复忽略.vscode

* feat: vscode cmaketool乱码

* docs: 添加提示
2026-02-06 23:05:41 +08:00
github-actions[bot]
d51e971f3d chore: Auto Update Game Resources - 2026-02-06
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21753711092

[skip changelog]
2026-02-06 14:18:15 +00:00
Manicsteiner
99848bb7b3 chore: YostarJP AveMujica preload 2026-02-06 21:36:35 +08:00
HX3N
f273a6f410 chore: YostarKR preload AveMujica 2026-02-06 21:44:35 +09:00
Constrat
d68efb6333 chore: preload AveMujica EN 2026-02-06 13:02:19 +01:00
Manicsteiner
13f9ccfc4d chore: NumberOcrReplace 新增规则 (#14186) 2026-02-06 17:24:00 +08:00
drway
a0ef5f705a fix: 修复生息演算商店无法正常购买皮肤的问题 (#15585) 2026-02-06 17:22:34 +08:00
soundofautumn
bfe7c0eabc feat: 发布时minify resource文件下的json (#15567)
* feat: 添加json压缩脚本

* feat: 添加cmake install时进行压缩

* feat: 添加压缩成功时日志

* feat: 添加日志

* feat: 修正install路径

* fix: 确保数据写入

* revert: CMakeList.txt

* feat: 在CI中进行minify json的调用
2026-02-06 17:10:33 +08:00
Lucien Shaw
36b776d42c chore: devcontainer适配CMakePresets.json (#15606)
* build: 添加新的可在linux系统上使用的cmake预设

* chore: 将devcontainer中的部分cmake配置移除

* chore: devcontainer中使用kitware的apt源以安装最新版本cmake
2026-02-06 17:10:11 +08:00
status102
9badef9093 fix: 先兼容旧作业中不合理的技能选择 2026-02-06 14:57:04 +08:00
status102
6e895b50ae fix: 干员组干员未解析精英化及等级属性 2026-02-06 14:57:03 +08:00
status102
31832c411a perf: 追加自定干员允许不切换技能 2026-02-06 14:57:03 +08:00
status102
7ca53518cc docs: 自动战斗作业文档干员技能值范围补上0 2026-02-06 14:57:02 +08:00
github-actions[bot]
b836758ce4 chore: Auto Update Game Resources - 2026-02-05
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21726724671

[skip changelog]
2026-02-05 20:10:11 +00:00
Constrat
97b5944216 Revert "ci: temp fix for txwy gamedat"
gamedata was fixed on the 05/02/2026 at 08:03Z

This reverts commit 3cf198e5e1.
2026-02-05 15:13:04 +01:00
github-actions[bot]
5645e893e6 chore: Auto Update Game Resources - 2026-02-05
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21704133010

[skip changelog]
2026-02-05 08:23:10 +00:00
status102
bfa2ab4e93 perf: 清空缓存移动到界面设置 2026-02-05 15:56:18 +08:00
soundofautumn
85df2a4059 feat: WpfGui清空缓存按钮 (#15582)
* feat: 清空缓存按钮

* feat: 排除asst.log和gui.log

* i18n: EN

* i18n: KR

* i18n: zh-tw

---------

Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: HY <45387477+momomochi987@users.noreply.github.com>
2026-02-05 15:36:07 +08:00
status102
3422cc375f fix: 肉鸽烧水分队切换界面后错误重置 2026-02-05 11:21:36 +08:00
yali-hzy
5e36bac060 fix: 初始化 StartEnabled 属性为 true (#15596)
link to 7ad52310cf
2026-02-04 23:06:43 +08:00
github-actions[bot]
10d40be9f8 chore: Auto Update Game Resources - 2026-02-04
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21664275147

[skip changelog]
2026-02-04 08:34:10 +00:00
Status102
0e0c6665e8 feat: 界园肉鸽指定种子开局 (#15588)
* feat: 界园肉鸽指定种子开局

* i18n: 机翻一下

* i18n: KR

* i18n: JP

* perf: 加个格式校验

* perf: input Text前后延迟

---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
2026-02-04 16:14:09 +08:00
status102
7ad52310cf style: field
[skip changelog]
2026-02-04 15:07:34 +08:00
status102
f18329cea9 fix: 自动战斗切换活动类型未清空解析缓存 2026-02-04 15:07:33 +08:00
github-actions[bot]
012dd635de chore: Auto Update Game Resources - 2026-02-03
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21637416890

[skip changelog]
2026-02-03 16:00:02 +00:00
status102
fe77da4391 perf: 自动战斗作业列表使用相对路径代替绝对路径 2026-02-03 22:45:04 +08:00
status102
295daad11d fix: 刷理智取消勾选下拉框中隐藏非当日关卡后关卡选择框不显示内容 2026-02-03 16:06:50 +08:00
github-actions[bot]
fcc40f97c8 chore: Auto Update Game Resources - 2026-02-03
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21621269660

[skip changelog]
2026-02-03 07:34:58 +00:00
status102
875fc4ec6d fix: 退出MAA时重置变量不再刷新UI 2026-02-03 00:35:42 +08:00
status102
d95523439b perf: TaskQueue 任务开始&完成显示修改后的任务名 2026-02-02 18:17:06 +08:00
uye
6f33c7a7ad fix: egg 炸了 2026-02-02 18:14:00 +08:00
uye
066e836a6e chore: 优化 emoji 2026-02-02 18:14:00 +08:00
uye
8994cec168 Release v6.3.0-beta.7 (#15574)
## Summary by Sourcery

优化 WPF 农场任务阶段计划的处理方式,并在更新日志中补充最近 6.3.0 测试版的详细说明。

Bug 修复:
- 确保 WPF 农场任务在刷新可用阶段时,使用当前选中任务的阶段计划,而不是全局配置。
- 在加载配置时,当可选阶段被禁用时,对农场任务的阶段计划进行规范化处理,以避免出现无效或遗留的多阶段数据。

文档:
- 重新组织并大幅扩充更新日志,突出说明 WPF 农场任务配置变更以及在最近的 v6.3.0 测试版中对新 PC 客户端的支持。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Refine WPF farming task stage plan handling and expand the changelog
with detailed notes for recent 6.3.0 beta releases.

Bug Fixes:
- Ensure WPF farming tasks refresh available stages using the currently
selected task’s stage plan instead of the global configuration.
- Normalize farming task stage plans on config load when optional stages
are disabled to avoid invalid or legacy multi-stage data.

Documentation:
- Reorganize and greatly expand the changelog to highlight WPF farming
task configuration changes and new PC client support across recent
v6.3.0 beta versions.

</details>

Bug 修复:
- 修正 WPF 农场任务阶段列表刷新逻辑,在填充可用阶段时使用当前任务方案。

文档:
- 扩充并重构更新日志,对最近的 v6.3.0 测试版发布进行重点和详细说明,包括 WPF 农场任务配置变更以及对 PC 明日方舟的支持。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

优化 WPF 农场任务阶段计划的处理方式,并在更新日志中补充最近 6.3.0 测试版的详细说明。

Bug 修复:
- 确保 WPF 农场任务在刷新可用阶段时,使用当前选中任务的阶段计划,而不是全局配置。
- 在加载配置时,当可选阶段被禁用时,对农场任务的阶段计划进行规范化处理,以避免出现无效或遗留的多阶段数据。

文档:
- 重新组织并大幅扩充更新日志,突出说明 WPF 农场任务配置变更以及在最近的 v6.3.0 测试版中对新 PC 客户端的支持。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Refine WPF farming task stage plan handling and expand the changelog
with detailed notes for recent 6.3.0 beta releases.

Bug Fixes:
- Ensure WPF farming tasks refresh available stages using the currently
selected task’s stage plan instead of the global configuration.
- Normalize farming task stage plans on config load when optional stages
are disabled to avoid invalid or legacy multi-stage data.

Documentation:
- Reorganize and greatly expand the changelog to highlight WPF farming
task configuration changes and new PC client support across recent
v6.3.0 beta versions.

</details>

</details>
2026-02-02 17:35:34 +08:00
Status102
14296d6a90 docs: cahngelog
Removed documentation section and updated fixes.
2026-02-02 17:31:09 +08:00
Status102
5a6f94b742 docs: changelog 2026-02-02 17:28:49 +08:00
yali-hzy
71566544b5 build: 添加 CMakePresets.json (#15568) 2026-02-02 13:42:57 +08:00
github-actions[bot]
0fa1ae48e0 docs: Auto Update Changelogs of v6.3.0-beta.7 (#15576)
* docs: Auto Generate Changelog of Release v6.3.0-beta.7

* docs: changelog

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
2026-02-02 13:40:05 +08:00
status102
78848c5f3e perf: 刷理智高级设置使用hc:InfoElement.Title显示设置项名 2026-02-02 13:34:29 +08:00
yali-hzy
d3532ab8ed chore: 消除部分编译警告 (#15578) 2026-02-02 12:51:12 +08:00
status102
bdd299a85e perf: 备选关卡读取后检查 2026-02-02 10:30:29 +08:00
status102
51a8837b09 fix: 切换刷理智任务时读取到错误的关卡列表 2026-02-02 10:05:43 +08:00
github-actions[bot]
d407a034c7 docs: Auto Update Changelogs of v6.3.0-beta.6 (#15571)
* docs: Auto Generate Changelog of Release v6.3.0-beta.6

* docs: Update CHANGELOG for v6.3.0-beta.6 enhancements

This update includes a significant reconstruction of the WPF 'Farming' task configuration, improving usability and adding support for repeating tasks and a weekly combat schedule. It also introduces support for the PC version of Arknights, along with various bug fixes and improvements.

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2026-02-02 07:58:38 +08:00
uye
79027bc9f0 Release v6.3.0-beta.6 (#15492)
## Summary by Sourcery

在 v6.3.0-beta.6 中新增 GUI 选项与战斗编队能力,同时提升任务调度的稳定性、肉鸽数据以及多语言文档质量。

New Features:
- 新增 GUI 设置和工作流,用于忽略损坏的注入模块并切换为软件渲染,包括用户提示与自动重启处理。
- 为损坏模块警告弹窗增加持久化的“不再提示”偏好设置,并在用户确认后启用软件渲染。
- 在助理作战(copilot)编队中支持精英化与等级要求,包括干员需求解析、校验以及更丰富的 UI 展示。
- 为战斗编队计划新增可配置的关卡重置模式,并在关卡过期或被移除时增加明确的无效关卡处理。
- 扩展肉鸽「JieGarden」的数据,为海外客户端更新龙门币、分队配置、地图数据以及主题资源。
- 在干员工具箱、导出功能及相关 UI 组件中暴露干员的精英化、等级和潜能信息。

Bug Fixes:
- 防止关卡编队计划与掉落列表的自动清理干扰手动选择的关卡和下拉候选项。
- 确保商店任务中的“访问好友”与 OF-1 作战的时间戳能按商城任务正确持久化,并在禁用访问好友选项时正确尊重设置。
- 修复基建自定义方案索引变化后选择 UI 不刷新的问题,以及自定义剿灭模式标签无法正确更新的问题。
- 当 JieGarden 的龙门币优先级未设置时,通过回退到默认值避免崩溃。
- 确保自动编队与助理作战流程在处理用户指定的额外干员无效或任务 ID 缺失时更安全。
- 修正未启用每日访问限制时的好友访问可用性逻辑,并在选项未勾选时避免访问好友。

Enhancements:
- 优化 WPF 战斗设置中的关卡列表、剿灭显示以及无效关卡处理,包括在隐藏不可用关卡时新增关卡重置行为。
- 通过跟踪干员角色、检测已预选干员,并检查精英/等级与技能等级要求,改进自动战斗编队选择,并提供更清晰的回调与日志。
- 使任务启用检查在任务队列执行和商店序列化之间可复用且保持一致。
- 改进助理作战日志,加入等级要求说明,并为不可用干员使用更简洁的本地化键。
- 为助理作战用户额外干员的 JSON 提供美化视图,并调整默认助战干员使用配置。
- 更新优化工具,加入可选的 no-cleanup 模式,并调整 CI 以保留缓存的模板元数据。
- 在资源更新器中为特定海外客户端跳过公招数据更新,以避免不必要的处理。
- 打磨多个 WPF GUI 绑定与属性变更模式,涵盖掉落、引导标记、显示名称以及干员潜能缓存。

Build:
- 为模板优化工具新增 `--no-cleanup` 参数,并更新资源更新工作流,在优化图片时使用该参数。

CI:
- 调整游戏资源更新工作流,在 PNG 优化时使用新的模板优化 no-cleanup 模式。

Documentation:
- 修订并重排多份繁体中文(zh-TW)手册、协议规范与开发指南,提升用语清晰度以及表格、列表与代码块的结构。
- 在 zh-TW FAQ 中澄清 Windows 7 的支持状态和兼容版本,并更新各类 README 的跳转与目录组件。
- 微调日文与英文开发文档,以获得更好的 Markdown 结构与分支工作流说明。
- 在 zh-TW 手册与协议参考中记录更多肉鸽分队选项与整合策略行为。

Chores:
- 更新 JieGarden 及其他近期内容在国服与海外服的战斗、关卡、物品与肉鸽配置数据。
- 刷新 OCR 模板、任务定义及多地区(包括 Yostar JP/KR/EN 和 txwy)的本地化字符串。
- 调整 GUI 本地化与主题资源,以呈现与损坏模块处理和干员详情相关的新设置与可视元素。
- 优化 Issue Bot 与 CI 教程文档的引用与元数据,而不改变其行为。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Add new GUI options and battle formation capabilities while improving
task scheduling robustness, roguelike data, and documentation across
multiple locales for v6.3.0-beta.6.

New Features:
- Introduce a GUI setting and workflow to ignore bad injected modules
and switch to software rendering, including user prompts and
auto-restart handling.
- Add a persistent 'do not show again' preference to the bad module
warning dialog that enables software rendering when confirmed.
- Support elite and level requirements in copilot battle formation,
including operator requirement parsing, validation, and richer UI
display.
- Add a configurable stage reset mode and explicit invalid-stage
handling for combat plans when stages expire or are removed.
- Extend roguelike JieGarden data with updated coppers, squads, tile
maps, and theme resources for overseas clients.
- Expose operator elite, level, and potential in the operator toolbox,
exports, and related UI components.

Bug Fixes:
- Prevent auto-cleanup of stage plans and drop lists from interfering
with manually selected stages and drop-down candidates.
- Ensure credit task visit-friend and OF-1 fight timestamps are
correctly persisted per Mall task and visit-friend options are respected
when disabled.
- Fix infrastructure custom plan index changes not refreshing the
selection UI and custom annihilation mode labels not updating correctly.
- Avoid crashes when JieGarden copper priorities are unset by falling
back to default values.
- Ensure automatic formation and copilot flows handle invalid
user-specified additional operators and missing task IDs more safely.
- Correct friend visit availability logic when daily-visit restrictions
are not enabled, and avoid visiting friends when the option is
unchecked.

Enhancements:
- Refine stage list, annihilation display, and invalid-stage handling in
the WPF fight settings, including a new stage-reset behavior when hiding
unavailable stages.
- Improve auto-battle formation selection by tracking operator roles,
detecting preselected operators, and checking elite/level and
skill-level requirements with clearer callbacks and logs.
- Make task enablement checks reusable and consistent across task queue
execution and mall serialization.
- Improve copilot logs to include level requirements and more concise
localization keys for unavailable operators.
- Add a pretty-printed view for copilot user additional operators JSON
and adjust default support-unit usage configuration.
- Update optimization tooling with an optional no-cleanup mode and
adjust CI to preserve cached template metadata.
- Skip recruitment data updates for specific overseas clients in the
resource updater to avoid unnecessary processing.
- Polish multiple WPF GUI bindings and property change patterns for
drops, guide flags, display names, and operator potential caching.

Build:
- Add a --no-cleanup flag to the template optimization tool and update
the resource update workflow to use it when optimizing images.

CI:
- Adjust the game resource update workflow to use the new template
optimization no-cleanup mode during PNG optimization.

Documentation:
- Revise and reformat multiple zh-TW manuals, protocol specs, and
development guides for clearer wording, tables, lists, and code blocks.
- Clarify Windows 7 support status and compatible versions in the zh-TW
FAQ and update various README redirects and catalog components.
- Tweak Japanese and English development docs for better markdown
structure and branch workflow explanations.
- Document additional roguelike squad options and integrated strategy
behavior in the zh-TW manual and protocol references.

Chores:
- Update battle, stage, item, and roguelike configuration data for
JieGarden and other recent content across CN and overseas clients.
- Refresh OCR templates, task definitions, and localization strings for
multiple regions including Yostar JP/KR/EN and txwy.
- Adjust GUI localization and theme resources to surface new settings
and visual elements related to bad module handling and operator details.
- Refine Issue Bot and CI tutorial documentation references and metadata
without changing behavior.

</details>

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

在 v6.3.0-beta.6 中新增 GUI 选项与战斗编队能力,同时提升任务调度的稳定性、肉鸽数据以及多语言文档质量。

New Features:
- 新增 GUI 设置和工作流,用于忽略损坏的注入模块并切换为软件渲染,包括用户提示与自动重启处理。
- 为损坏模块警告弹窗增加持久化的“不再提示”偏好设置,并在用户确认后启用软件渲染。
- 在助理作战(copilot)编队中支持精英化与等级要求,包括干员需求解析、校验以及更丰富的 UI 展示。
- 为战斗编队计划新增可配置的关卡重置模式,并在关卡过期或被移除时增加明确的无效关卡处理。
- 扩展肉鸽「JieGarden」的数据,为海外客户端更新龙门币、分队配置、地图数据以及主题资源。
- 在干员工具箱、导出功能及相关 UI 组件中暴露干员的精英化、等级和潜能信息。

Bug Fixes:
- 防止关卡编队计划与掉落列表的自动清理干扰手动选择的关卡和下拉候选项。
- 确保商店任务中的“访问好友”与 OF-1 作战的时间戳能按商城任务正确持久化,并在禁用访问好友选项时正确尊重设置。
- 修复基建自定义方案索引变化后选择 UI 不刷新的问题,以及自定义剿灭模式标签无法正确更新的问题。
- 当 JieGarden 的龙门币优先级未设置时,通过回退到默认值避免崩溃。
- 确保自动编队与助理作战流程在处理用户指定的额外干员无效或任务 ID 缺失时更安全。
- 修正未启用每日访问限制时的好友访问可用性逻辑,并在选项未勾选时避免访问好友。

Enhancements:
- 优化 WPF 战斗设置中的关卡列表、剿灭显示以及无效关卡处理,包括在隐藏不可用关卡时新增关卡重置行为。
- 通过跟踪干员角色、检测已预选干员,并检查精英/等级与技能等级要求,改进自动战斗编队选择,并提供更清晰的回调与日志。
- 使任务启用检查在任务队列执行和商店序列化之间可复用且保持一致。
- 改进助理作战日志,加入等级要求说明,并为不可用干员使用更简洁的本地化键。
- 为助理作战用户额外干员的 JSON 提供美化视图,并调整默认助战干员使用配置。
- 更新优化工具,加入可选的 no-cleanup 模式,并调整 CI 以保留缓存的模板元数据。
- 在资源更新器中为特定海外客户端跳过公招数据更新,以避免不必要的处理。
- 打磨多个 WPF GUI 绑定与属性变更模式,涵盖掉落、引导标记、显示名称以及干员潜能缓存。

Build:
- 为模板优化工具新增 `--no-cleanup` 参数,并更新资源更新工作流,在优化图片时使用该参数。

CI:
- 调整游戏资源更新工作流,在 PNG 优化时使用新的模板优化 no-cleanup 模式。

Documentation:
- 修订并重排多份繁体中文(zh-TW)手册、协议规范与开发指南,提升用语清晰度以及表格、列表与代码块的结构。
- 在 zh-TW FAQ 中澄清 Windows 7 的支持状态和兼容版本,并更新各类 README 的跳转与目录组件。
- 微调日文与英文开发文档,以获得更好的 Markdown 结构与分支工作流说明。
- 在 zh-TW 手册与协议参考中记录更多肉鸽分队选项与整合策略行为。

Chores:
- 更新 JieGarden 及其他近期内容在国服与海外服的战斗、关卡、物品与肉鸽配置数据。
- 刷新 OCR 模板、任务定义及多地区(包括 Yostar JP/KR/EN 和 txwy)的本地化字符串。
- 调整 GUI 本地化与主题资源,以呈现与损坏模块处理和干员详情相关的新设置与可视元素。
- 优化 Issue Bot 与 CI 教程文档的引用与元数据,而不改变其行为。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Add new GUI options and battle formation capabilities while improving
task scheduling robustness, roguelike data, and documentation across
multiple locales for v6.3.0-beta.6.

New Features:
- Introduce a GUI setting and workflow to ignore bad injected modules
and switch to software rendering, including user prompts and
auto-restart handling.
- Add a persistent 'do not show again' preference to the bad module
warning dialog that enables software rendering when confirmed.
- Support elite and level requirements in copilot battle formation,
including operator requirement parsing, validation, and richer UI
display.
- Add a configurable stage reset mode and explicit invalid-stage
handling for combat plans when stages expire or are removed.
- Extend roguelike JieGarden data with updated coppers, squads, tile
maps, and theme resources for overseas clients.
- Expose operator elite, level, and potential in the operator toolbox,
exports, and related UI components.

Bug Fixes:
- Prevent auto-cleanup of stage plans and drop lists from interfering
with manually selected stages and drop-down candidates.
- Ensure credit task visit-friend and OF-1 fight timestamps are
correctly persisted per Mall task and visit-friend options are respected
when disabled.
- Fix infrastructure custom plan index changes not refreshing the
selection UI and custom annihilation mode labels not updating correctly.
- Avoid crashes when JieGarden copper priorities are unset by falling
back to default values.
- Ensure automatic formation and copilot flows handle invalid
user-specified additional operators and missing task IDs more safely.
- Correct friend visit availability logic when daily-visit restrictions
are not enabled, and avoid visiting friends when the option is
unchecked.

Enhancements:
- Refine stage list, annihilation display, and invalid-stage handling in
the WPF fight settings, including a new stage-reset behavior when hiding
unavailable stages.
- Improve auto-battle formation selection by tracking operator roles,
detecting preselected operators, and checking elite/level and
skill-level requirements with clearer callbacks and logs.
- Make task enablement checks reusable and consistent across task queue
execution and mall serialization.
- Improve copilot logs to include level requirements and more concise
localization keys for unavailable operators.
- Add a pretty-printed view for copilot user additional operators JSON
and adjust default support-unit usage configuration.
- Update optimization tooling with an optional no-cleanup mode and
adjust CI to preserve cached template metadata.
- Skip recruitment data updates for specific overseas clients in the
resource updater to avoid unnecessary processing.
- Polish multiple WPF GUI bindings and property change patterns for
drops, guide flags, display names, and operator potential caching.

Build:
- Add a --no-cleanup flag to the template optimization tool and update
the resource update workflow to use it when optimizing images.

CI:
- Adjust the game resource update workflow to use the new template
optimization no-cleanup mode during PNG optimization.

Documentation:
- Revise and reformat multiple zh-TW manuals, protocol specs, and
development guides for clearer wording, tables, lists, and code blocks.
- Clarify Windows 7 support status and compatible versions in the zh-TW
FAQ and update various README redirects and catalog components.
- Tweak Japanese and English development docs for better markdown
structure and branch workflow explanations.
- Document additional roguelike squad options and integrated strategy
behavior in the zh-TW manual and protocol references.

Chores:
- Update battle, stage, item, and roguelike configuration data for
JieGarden and other recent content across CN and overseas clients.
- Refresh OCR templates, task definitions, and localization strings for
multiple regions including Yostar JP/KR/EN and txwy.
- Adjust GUI localization and theme resources to surface new settings
and visual elements related to bad module handling and operator details.
- Refine Issue Bot and CI tutorial documentation references and metadata
without changing behavior.

</details>

</details>

新功能:
- 在 GUI 中新增设置,用于忽略损坏模块并强制使用软件渲染;当该选项被切换时,包含用户提示与自动重启处理。
- 为损坏模块警告对话框新增“不再显示”流程,可将“忽略并使用软件渲染”的偏好持久化保存。

错误修复:
- 防止自动关卡方案清理影响到手动设置关卡的战斗。
- 确保当当前方案索引以程式方式变更时,自定义基础设施方案选择的 UI 会正确更新。

改进:
- 当用户选择忽略损坏模块时,完全跳过损坏模块检查,以减少不必要的提示。
- 改善繁体中文文档的排版、表格、列表,以及多个手册与协议文档中的轻微措辞与格式问题。
- 更新 GUI 本地化资源与设置界面,以暴露新的损坏模块处理选项。

文档:
- 整理并澄清多份 zh-TW 手册与开发者文档,包括表格、列表、提示块与程式码片段,以提升可读性与一致性。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

在 v6.3.0-beta.6 中新增 GUI 选项与战斗编队能力,同时提升任务调度的稳定性、肉鸽数据以及多语言文档质量。

New Features:
- 新增 GUI 设置和工作流,用于忽略损坏的注入模块并切换为软件渲染,包括用户提示与自动重启处理。
- 为损坏模块警告弹窗增加持久化的“不再提示”偏好设置,并在用户确认后启用软件渲染。
- 在助理作战(copilot)编队中支持精英化与等级要求,包括干员需求解析、校验以及更丰富的 UI 展示。
- 为战斗编队计划新增可配置的关卡重置模式,并在关卡过期或被移除时增加明确的无效关卡处理。
- 扩展肉鸽「JieGarden」的数据,为海外客户端更新龙门币、分队配置、地图数据以及主题资源。
- 在干员工具箱、导出功能及相关 UI 组件中暴露干员的精英化、等级和潜能信息。

Bug Fixes:
- 防止关卡编队计划与掉落列表的自动清理干扰手动选择的关卡和下拉候选项。
- 确保商店任务中的“访问好友”与 OF-1 作战的时间戳能按商城任务正确持久化,并在禁用访问好友选项时正确尊重设置。
- 修复基建自定义方案索引变化后选择 UI 不刷新的问题,以及自定义剿灭模式标签无法正确更新的问题。
- 当 JieGarden 的龙门币优先级未设置时,通过回退到默认值避免崩溃。
- 确保自动编队与助理作战流程在处理用户指定的额外干员无效或任务 ID 缺失时更安全。
- 修正未启用每日访问限制时的好友访问可用性逻辑,并在选项未勾选时避免访问好友。

Enhancements:
- 优化 WPF 战斗设置中的关卡列表、剿灭显示以及无效关卡处理,包括在隐藏不可用关卡时新增关卡重置行为。
- 通过跟踪干员角色、检测已预选干员,并检查精英/等级与技能等级要求,改进自动战斗编队选择,并提供更清晰的回调与日志。
- 使任务启用检查在任务队列执行和商店序列化之间可复用且保持一致。
- 改进助理作战日志,加入等级要求说明,并为不可用干员使用更简洁的本地化键。
- 为助理作战用户额外干员的 JSON 提供美化视图,并调整默认助战干员使用配置。
- 更新优化工具,加入可选的 no-cleanup 模式,并调整 CI 以保留缓存的模板元数据。
- 在资源更新器中为特定海外客户端跳过公招数据更新,以避免不必要的处理。
- 打磨多个 WPF GUI 绑定与属性变更模式,涵盖掉落、引导标记、显示名称以及干员潜能缓存。

Build:
- 为模板优化工具新增 `--no-cleanup` 参数,并更新资源更新工作流,在优化图片时使用该参数。

CI:
- 调整游戏资源更新工作流,在 PNG 优化时使用新的模板优化 no-cleanup 模式。

Documentation:
- 修订并重排多份繁体中文(zh-TW)手册、协议规范与开发指南,提升用语清晰度以及表格、列表与代码块的结构。
- 在 zh-TW FAQ 中澄清 Windows 7 的支持状态和兼容版本,并更新各类 README 的跳转与目录组件。
- 微调日文与英文开发文档,以获得更好的 Markdown 结构与分支工作流说明。
- 在 zh-TW 手册与协议参考中记录更多肉鸽分队选项与整合策略行为。

Chores:
- 更新 JieGarden 及其他近期内容在国服与海外服的战斗、关卡、物品与肉鸽配置数据。
- 刷新 OCR 模板、任务定义及多地区(包括 Yostar JP/KR/EN 和 txwy)的本地化字符串。
- 调整 GUI 本地化与主题资源,以呈现与损坏模块处理和干员详情相关的新设置与可视元素。
- 优化 Issue Bot 与 CI 教程文档的引用与元数据,而不改变其行为。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Add new GUI options and battle formation capabilities while improving
task scheduling robustness, roguelike data, and documentation across
multiple locales for v6.3.0-beta.6.

New Features:
- Introduce a GUI setting and workflow to ignore bad injected modules
and switch to software rendering, including user prompts and
auto-restart handling.
- Add a persistent 'do not show again' preference to the bad module
warning dialog that enables software rendering when confirmed.
- Support elite and level requirements in copilot battle formation,
including operator requirement parsing, validation, and richer UI
display.
- Add a configurable stage reset mode and explicit invalid-stage
handling for combat plans when stages expire or are removed.
- Extend roguelike JieGarden data with updated coppers, squads, tile
maps, and theme resources for overseas clients.
- Expose operator elite, level, and potential in the operator toolbox,
exports, and related UI components.

Bug Fixes:
- Prevent auto-cleanup of stage plans and drop lists from interfering
with manually selected stages and drop-down candidates.
- Ensure credit task visit-friend and OF-1 fight timestamps are
correctly persisted per Mall task and visit-friend options are respected
when disabled.
- Fix infrastructure custom plan index changes not refreshing the
selection UI and custom annihilation mode labels not updating correctly.
- Avoid crashes when JieGarden copper priorities are unset by falling
back to default values.
- Ensure automatic formation and copilot flows handle invalid
user-specified additional operators and missing task IDs more safely.
- Correct friend visit availability logic when daily-visit restrictions
are not enabled, and avoid visiting friends when the option is
unchecked.

Enhancements:
- Refine stage list, annihilation display, and invalid-stage handling in
the WPF fight settings, including a new stage-reset behavior when hiding
unavailable stages.
- Improve auto-battle formation selection by tracking operator roles,
detecting preselected operators, and checking elite/level and
skill-level requirements with clearer callbacks and logs.
- Make task enablement checks reusable and consistent across task queue
execution and mall serialization.
- Improve copilot logs to include level requirements and more concise
localization keys for unavailable operators.
- Add a pretty-printed view for copilot user additional operators JSON
and adjust default support-unit usage configuration.
- Update optimization tooling with an optional no-cleanup mode and
adjust CI to preserve cached template metadata.
- Skip recruitment data updates for specific overseas clients in the
resource updater to avoid unnecessary processing.
- Polish multiple WPF GUI bindings and property change patterns for
drops, guide flags, display names, and operator potential caching.

Build:
- Add a --no-cleanup flag to the template optimization tool and update
the resource update workflow to use it when optimizing images.

CI:
- Adjust the game resource update workflow to use the new template
optimization no-cleanup mode during PNG optimization.

Documentation:
- Revise and reformat multiple zh-TW manuals, protocol specs, and
development guides for clearer wording, tables, lists, and code blocks.
- Clarify Windows 7 support status and compatible versions in the zh-TW
FAQ and update various README redirects and catalog components.
- Tweak Japanese and English development docs for better markdown
structure and branch workflow explanations.
- Document additional roguelike squad options and integrated strategy
behavior in the zh-TW manual and protocol references.

Chores:
- Update battle, stage, item, and roguelike configuration data for
JieGarden and other recent content across CN and overseas clients.
- Refresh OCR templates, task definitions, and localization strings for
multiple regions including Yostar JP/KR/EN and txwy.
- Adjust GUI localization and theme resources to surface new settings
and visual elements related to bad module handling and operator details.
- Refine Issue Bot and CI tutorial documentation references and metadata
without changing behavior.

</details>

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

在 v6.3.0-beta.6 中新增 GUI 选项与战斗编队能力,同时提升任务调度的稳定性、肉鸽数据以及多语言文档质量。

New Features:
- 新增 GUI 设置和工作流,用于忽略损坏的注入模块并切换为软件渲染,包括用户提示与自动重启处理。
- 为损坏模块警告弹窗增加持久化的“不再提示”偏好设置,并在用户确认后启用软件渲染。
- 在助理作战(copilot)编队中支持精英化与等级要求,包括干员需求解析、校验以及更丰富的 UI 展示。
- 为战斗编队计划新增可配置的关卡重置模式,并在关卡过期或被移除时增加明确的无效关卡处理。
- 扩展肉鸽「JieGarden」的数据,为海外客户端更新龙门币、分队配置、地图数据以及主题资源。
- 在干员工具箱、导出功能及相关 UI 组件中暴露干员的精英化、等级和潜能信息。

Bug Fixes:
- 防止关卡编队计划与掉落列表的自动清理干扰手动选择的关卡和下拉候选项。
- 确保商店任务中的“访问好友”与 OF-1 作战的时间戳能按商城任务正确持久化,并在禁用访问好友选项时正确尊重设置。
- 修复基建自定义方案索引变化后选择 UI 不刷新的问题,以及自定义剿灭模式标签无法正确更新的问题。
- 当 JieGarden 的龙门币优先级未设置时,通过回退到默认值避免崩溃。
- 确保自动编队与助理作战流程在处理用户指定的额外干员无效或任务 ID 缺失时更安全。
- 修正未启用每日访问限制时的好友访问可用性逻辑,并在选项未勾选时避免访问好友。

Enhancements:
- 优化 WPF 战斗设置中的关卡列表、剿灭显示以及无效关卡处理,包括在隐藏不可用关卡时新增关卡重置行为。
- 通过跟踪干员角色、检测已预选干员,并检查精英/等级与技能等级要求,改进自动战斗编队选择,并提供更清晰的回调与日志。
- 使任务启用检查在任务队列执行和商店序列化之间可复用且保持一致。
- 改进助理作战日志,加入等级要求说明,并为不可用干员使用更简洁的本地化键。
- 为助理作战用户额外干员的 JSON 提供美化视图,并调整默认助战干员使用配置。
- 更新优化工具,加入可选的 no-cleanup 模式,并调整 CI 以保留缓存的模板元数据。
- 在资源更新器中为特定海外客户端跳过公招数据更新,以避免不必要的处理。
- 打磨多个 WPF GUI 绑定与属性变更模式,涵盖掉落、引导标记、显示名称以及干员潜能缓存。

Build:
- 为模板优化工具新增 `--no-cleanup` 参数,并更新资源更新工作流,在优化图片时使用该参数。

CI:
- 调整游戏资源更新工作流,在 PNG 优化时使用新的模板优化 no-cleanup 模式。

Documentation:
- 修订并重排多份繁体中文(zh-TW)手册、协议规范与开发指南,提升用语清晰度以及表格、列表与代码块的结构。
- 在 zh-TW FAQ 中澄清 Windows 7 的支持状态和兼容版本,并更新各类 README 的跳转与目录组件。
- 微调日文与英文开发文档,以获得更好的 Markdown 结构与分支工作流说明。
- 在 zh-TW 手册与协议参考中记录更多肉鸽分队选项与整合策略行为。

Chores:
- 更新 JieGarden 及其他近期内容在国服与海外服的战斗、关卡、物品与肉鸽配置数据。
- 刷新 OCR 模板、任务定义及多地区(包括 Yostar JP/KR/EN 和 txwy)的本地化字符串。
- 调整 GUI 本地化与主题资源,以呈现与损坏模块处理和干员详情相关的新设置与可视元素。
- 优化 Issue Bot 与 CI 教程文档的引用与元数据,而不改变其行为。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Add new GUI options and battle formation capabilities while improving
task scheduling robustness, roguelike data, and documentation across
multiple locales for v6.3.0-beta.6.

New Features:
- Introduce a GUI setting and workflow to ignore bad injected modules
and switch to software rendering, including user prompts and
auto-restart handling.
- Add a persistent 'do not show again' preference to the bad module
warning dialog that enables software rendering when confirmed.
- Support elite and level requirements in copilot battle formation,
including operator requirement parsing, validation, and richer UI
display.
- Add a configurable stage reset mode and explicit invalid-stage
handling for combat plans when stages expire or are removed.
- Extend roguelike JieGarden data with updated coppers, squads, tile
maps, and theme resources for overseas clients.
- Expose operator elite, level, and potential in the operator toolbox,
exports, and related UI components.

Bug Fixes:
- Prevent auto-cleanup of stage plans and drop lists from interfering
with manually selected stages and drop-down candidates.
- Ensure credit task visit-friend and OF-1 fight timestamps are
correctly persisted per Mall task and visit-friend options are respected
when disabled.
- Fix infrastructure custom plan index changes not refreshing the
selection UI and custom annihilation mode labels not updating correctly.
- Avoid crashes when JieGarden copper priorities are unset by falling
back to default values.
- Ensure automatic formation and copilot flows handle invalid
user-specified additional operators and missing task IDs more safely.
- Correct friend visit availability logic when daily-visit restrictions
are not enabled, and avoid visiting friends when the option is
unchecked.

Enhancements:
- Refine stage list, annihilation display, and invalid-stage handling in
the WPF fight settings, including a new stage-reset behavior when hiding
unavailable stages.
- Improve auto-battle formation selection by tracking operator roles,
detecting preselected operators, and checking elite/level and
skill-level requirements with clearer callbacks and logs.
- Make task enablement checks reusable and consistent across task queue
execution and mall serialization.
- Improve copilot logs to include level requirements and more concise
localization keys for unavailable operators.
- Add a pretty-printed view for copilot user additional operators JSON
and adjust default support-unit usage configuration.
- Update optimization tooling with an optional no-cleanup mode and
adjust CI to preserve cached template metadata.
- Skip recruitment data updates for specific overseas clients in the
resource updater to avoid unnecessary processing.
- Polish multiple WPF GUI bindings and property change patterns for
drops, guide flags, display names, and operator potential caching.

Build:
- Add a --no-cleanup flag to the template optimization tool and update
the resource update workflow to use it when optimizing images.

CI:
- Adjust the game resource update workflow to use the new template
optimization no-cleanup mode during PNG optimization.

Documentation:
- Revise and reformat multiple zh-TW manuals, protocol specs, and
development guides for clearer wording, tables, lists, and code blocks.
- Clarify Windows 7 support status and compatible versions in the zh-TW
FAQ and update various README redirects and catalog components.
- Tweak Japanese and English development docs for better markdown
structure and branch workflow explanations.
- Document additional roguelike squad options and integrated strategy
behavior in the zh-TW manual and protocol references.

Chores:
- Update battle, stage, item, and roguelike configuration data for
JieGarden and other recent content across CN and overseas clients.
- Refresh OCR templates, task definitions, and localization strings for
multiple regions including Yostar JP/KR/EN and txwy.
- Adjust GUI localization and theme resources to surface new settings
and visual elements related to bad module handling and operator details.
- Refine Issue Bot and CI tutorial documentation references and metadata
without changing behavior.

</details>

</details>

</details>
2026-02-02 07:57:16 +08:00
github-actions[bot]
11a6f45481 chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21570221339
[skip changelog]
2026-02-01 21:06:42 +00:00
uye
52afaa37be fix: 开始干员识别前重置潜能状态 2026-02-02 05:04:05 +08:00
Status102
a8b7ae2474 rft: 关卡候选列表刷新 & 关卡选择下拉列表刷新 (#15562)
* rft: 无效关卡重置

* fix: 显示翻转

* fix: 无效关卡开放状态错误

* fix: 无效关卡被错误重置

* feat: 自定义剿灭关卡将会同步修改关卡选择下拉框中的剿灭模式显示名

* perf: 修改任务参数快速退出

* i18n: invalid stage

* fix: 刷理智任务在LinkStart后修改关卡无法生效

* i18n: KR

* i18n: EN

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* i18n: JP

* i18n: zh-tw

---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
Co-authored-by: momomochi987 <as99us301@gmail.com>
2026-02-01 22:59:30 +08:00
yali-hzy
edcc7857ef perf: 优化自动战斗界面布局 (#15512)
* perf: 优化自动战斗界面布局

* fix: 显示禁用状态下的自定追加干员提示

* feat: 追加自定干员tooltip的格式化显示
2026-02-01 21:09:46 +08:00
HX3N
ef1987e02a i18n: KR AnnouncementNotFinishedConfirm 2026-02-01 22:05:39 +09:00
uye
c95dd34533 chore: 调整按钮不透明度 2026-02-01 20:02:18 +08:00
uye
dd9ce36953 feat: 干员识别支持显示精英化等级与潜能 2026-02-01 19:59:13 +08:00
status102
102aa5dc85 fix: 自动战斗自动编队补充自定干员名非法字段名调整 2026-02-01 19:40:59 +08:00
yali-hzy
f23e43cadc feat: 追加自定干员名称无效时的错误处理及本地化支持 (#15556)
* feat: 追加自定干员名称无效时的错误处理及本地化支持

* i18n: KR

* feat: 提前到设置参数时检查追加自定干员名称

* feat: 更新自定干员名称无效时的错误处理,使用“what”替代“why”

---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
2026-02-01 19:26:28 +08:00
status102
0e5097fe0b fix: MacOS & Linux
[skip changelog]
2026-02-01 16:32:49 +08:00
github-actions[bot]
4ed05750e5 feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21551544753
[skip changelog]
2026-01-31 21:54:35 +00:00
github-actions[bot]
a64be68417 chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21550883972
[skip changelog]
2026-01-31 21:04:41 +00:00
status102
32b7cbbf9d perf: TaskQueue重命名与移除时显示任务序号 2026-01-31 18:15:50 +08:00
status102
8a075b7f05 Revert "fix: 追加信赖时重复计算助战"
This reverts commit 1e1e0f14fe.
2026-01-31 18:12:51 +08:00
status102
07aeb4b354 fix: ; 2026-01-31 18:00:15 +08:00
status102
5de92ba180 fix: 禁用自动战斗-自动编队在无需检查技能等级时的快速选中, 以修复外服干员技能描述过长的错误选中
link to #14576
2026-01-31 17:53:05 +08:00
status102
1e1e0f14fe fix: 追加信赖时重复计算助战 2026-01-31 17:41:52 +08:00
status102
5281d95710 perf: use field 2026-01-31 17:32:14 +08:00
uye
38974951b9 chore: 调整正则 2026-01-31 16:46:25 +08:00
uye
73f7feec97 fix: OR 关卡掉落界面关卡名识别问题 2026-01-31 16:45:45 +08:00
status102
26dd914a79 rft: 提取任务启用状态 2026-01-31 16:07:31 +08:00
status102
c8b9147f19 i18n: 修改当前剿灭的key, 以免与剿灭模式混淆 2026-01-31 16:07:30 +08:00
Constrat
ecbed74dd6 i18n: EN minigame honeyfruit 2026-01-30 17:36:07 +01:00
yali-hzy
99f294d572 docs: 修正开发文档中的格式错误及笔误 (#15516)
* fix: 修正开发指南中的格式

* docs: Apply suggestion from @sourcery-ai[bot]

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: 修改 zh-tw 中 sln 为 slnx

---------

Co-authored-by: AnnAngela <naganjue@vip.qq.com>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
2026-01-30 20:43:59 +08:00
Manicsteiner
2d2d490f44 i18n: JP MiniGame HoneyFruit 2026-01-30 18:49:13 +08:00
HX3N
599cbfd5dc i18n: KR MiniGame ConversationRoom and HoneyFruit 2026-01-30 18:39:52 +09:00
status102
ebc5ec8047 perf: 刷理智任务高级设置UI调整选项顺序 2026-01-30 16:23:02 +08:00
status102
7fefe97301 perf: cv::Mat const ref 2026-01-29 23:51:01 +08:00
status102
af96544893 fix: 刷理智任务运行时不允许添加关卡 2026-01-29 20:49:50 +08:00
github-actions[bot]
33e7225119 docs: Auto Update Changelogs of v6.3.0-beta.6 (#15551)
docs: Auto Generate Changelog of Release v6.3.0-beta.6

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-01-29 10:46:14 +01:00
github-actions[bot]
9a456dcaec chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21414068115
[skip changelog]
2026-01-27 21:04:32 +00:00
HX3N
8634826c01 i18n: KR ReceptionOptionsRequireInfrast 2026-01-28 01:48:15 +09:00
github-actions[bot]
07068c14da chore: Auto Update Game Resources - 2026-01-27
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21398153371

[skip changelog]
2026-01-27 13:01:59 +00:00
status102
02917c04dd fix: 自动战斗-自动编队 干员等级不足i18n未启用 2026-01-27 17:08:24 +08:00
SherkeyXD
e933074535 fix: 保证通宝优先级未定义时不会加载崩溃
fallback到默认值
2026-01-27 13:51:14 +08:00
SherkeyXD
777d471a98 feat: 界园肉鸽通宝数据更新 2026-01-27 13:45:57 +08:00
status102
bde877c915 fix: 选中 完成后动作 时添加新任务未能隐藏 完成后动作 设置UI 2026-01-27 13:30:04 +08:00
status102
55c0c29589 fix: 切换刷理智时, 候选掉落物反复添加到下拉列表
仍然存在: 输入文本修改掉落物名称后切换到另一个掉落物为 `未选择` 的刷理智, 会导致切换后掉落物框显示为 ""
2026-01-27 13:14:21 +08:00
github-actions[bot]
819707fc42 chore: Auto Update Game Resources - 2026-01-26
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21372157503

[skip changelog]
2026-01-26 20:08:16 +00:00
HX3N
86700994ba i18n: KR CreditFightWhenOF-1Warning 2026-01-27 04:07:16 +09:00
Constrat
3c41f7662b chore: manual data for txwy 2026-01-26 14:26:17 +01:00
Constrat
3cf198e5e1 ci: temp fix for txwy gamedat
cc @tsuk1ko 0d5e2f9e64 (r175642072)
2026-01-26 14:25:43 +01:00
github-actions[bot]
15c53df25b chore: Auto Update Game Resources - 2026-01-25
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21336623936

[skip changelog]
2026-01-25 17:29:10 +00:00
SherkeyXD
1bf5ae8e7f feat: 界园肉鸽 dlc2 分队更新 2026-01-25 22:48:28 +08:00
github-actions[bot]
8fe346fac8 chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21321561122
[skip changelog]
2026-01-24 21:04:08 +00:00
status102
5f08be41b1 fix: 信用收取任务访问好友及OF-1战斗最后执行时间未能保存 2026-01-24 23:04:59 +08:00
Constrat
89b0b243f9 ci(fix): resource updater incorrectly cleaning optimize_templates.json 2026-01-24 15:41:55 +01:00
Constrat
892e4e14cb chore: optimize templates 2026-01-24 15:32:16 +01:00
Constrat
abf8d62c30 feat: YostarJP Dreamland and JieGarden themes
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
2026-01-24 15:30:58 +01:00
Constrat
01e35405d9 feat: YostarKR Dreamland and JieGarden themes
Co-authored-by: HX3N <scarlet7518@gmail.com>
2026-01-24 15:28:00 +01:00
Constrat
5b8c050e82 feat: YostarEN Dreamland and JieGarden themes 2026-01-24 15:25:14 +01:00
github-actions[bot]
1c3ae38368 chore: Auto Update Game Resources - 2026-01-24
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21312948143

[skip changelog]
2026-01-24 09:29:20 +00:00
HX3N
c7db3681be fix: YostarKR use ' ' in ocrReplace to preserve '\n' for InfrastTrainingTask 2026-01-24 12:45:39 +09:00
萨拉托加
898fbea848 fix: 日服酒神识别 2026-01-23 22:22:13 +08:00
github-actions[bot]
40057b0022 chore: Auto Update Game Resources - 2026-01-22
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21263082861

[skip changelog]
2026-01-22 20:04:32 +00:00
status102
27d94c7de0 fix: 未勾选访问好友时若未勾选每日仅访问一次, 则依旧会访问好友 2026-01-22 09:59:07 +08:00
github-actions[bot]
8612eead4e chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21225726864
[skip changelog]
2026-01-21 21:08:45 +00:00
github-actions[bot]
f179ca1822 chore: Auto Update Game Resources - 2026-01-21
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21219651398

[skip changelog]
2026-01-21 17:43:49 +00:00
Status102
0712fba4c4 feat: 自动编队识别精英化及等级 (#15161)
* feat: 自动编队识别专精及等级

* chore: module

* i18n: translation

* style: format

* i18n: JP

* i18n: EN

Unsure if Elite 1 / Elite 2 is better than E1 / E2... No idea how other servers consider them.

Consistency wise we always called them Elite 2

* i18n: KR

* chore: fix typo

* i18n: add new key 干员等级不足

---------

Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
2026-01-22 01:36:35 +08:00
status102
17a08252f1 fix: 手动输入关卡名时, 不移除过期关卡 2026-01-22 00:54:46 +08:00
Constrat
26e035dabe Revert "fix: Yostaren IS invest template update"
Yostar changed this AGAIN

This reverts commit 75ec134118.
2026-01-21 16:35:20 +01:00
status102
67e9ade712 fix: 基建计划选择计数增加后未刷新UI 2026-01-21 23:31:58 +08:00
uye
c5c72d9ab0 fix: 涤火杰西卡识别
fix #15490
2026-01-21 23:07:08 +08:00
uye
18f76c918c feat: 新增注入弹窗不再提醒的勾选框,勾选后使用软件渲染
close #15164
2026-01-21 17:34:14 +08:00
uye
cf1a6bbdae i18n: 补全缺少的翻译 2026-01-21 17:15:54 +08:00
github-actions[bot]
272c30a5d0 chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21187195536
[skip changelog]
2026-01-20 21:06:26 +00:00
uye
5d87a2c9ec Release v6.3.0-beta.5 (#15481)
## Summary by Sourcery

更新 v6.3.0-beta.5 的配置处理、错误恢复机制和发布流程。

Bug 修复:
- 确保 Infrast 自定义方案和 PlanSelect 在 JSON 反序列化以及文件加载出错后能够安全初始化。
- 在禁用保存石头时,反序列化后重置 FightTask 的石头使用状态,并在配置转换过程中修正剩余理智关卡启用逻辑。
- 通过让新配置与先前配置文件对齐并保证当前配置存在,防止当前配置缺失或无效。
- 修复崩溃日志处理,避免出现无限循环,并确保始终清理崩溃日志文件。
- 处理直达剿灭关卡导航失败时,改为禁用父级战斗任务,而不是导致整次运行失败。
- 改进商店信用刷图计划的排程逻辑,正确检测后续启用的 FightTask 和空关卡配置。
- 在推进 Infrast 自定义方案索引超过最后一个方案时进行循环,避免越界访问。
- 通过设置合适的模板匹配方法和阈值,提高技能选择图像匹配的稳定性。
- 修正 Windows 未处理异常过滤器,使其终止进程而不是继续执行。

增强:
- 为任务添加反序列化后的钩子,用于规范化配置值和派生状态。
- 放宽 JSON 编码器的字符范围,并从 JSON 反序列化 Root.Current,以更好地保留国际化配置名称。
- 对齐工厂和转换器之间的配置清理逻辑,移除在先前配置中不存在的配置项,并重新同步当前激活的配置。
- 在检测到崩溃日志时,将最近的崩溃转储文件复制到专用调试目录,以便诊断问题。

CI:
- 扩展发布打包工作流,新增可选任务用于将 Windows 构建产物上传至腾讯云
COS,并更新发布准备自动分配(auto-assign)动作的版本。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Update configuration handling, error recovery, and release workflows for
v6.3.0-beta.5.

Bug Fixes:
- Ensure Infrast custom plans and PlanSelect are safely initialized
after JSON deserialization and file loading errors.
- Reset FightTask stone usage after deserialization when saving stones
is disabled, and correct remaining sanity stage enabling logic during
config conversion.
- Prevent missing or invalid current configuration by aligning new
configuration with the previous file and guaranteeing the current config
exists.
- Fix crash log handling to avoid infinite loops and to always clean up
crash log files.
- Handle direct annihilation stage navigation failures by disabling the
parent fight task instead of failing the run.
- Improve mall credit-fight scheduling by correctly detecting subsequent
enabled FightTask and empty stage configuration.
- Wrap Infrast custom plan index when advancing beyond the last plan to
avoid out-of-range access.
- Improve skill selection image matching stability by setting an
appropriate template-matching method and threshold.
- Correct Windows unhandled-exception filter to terminate the process
instead of continuing execution.

Enhancements:
- Add post-deserialization hooks to tasks to normalize configuration
values and derived state.
- Relax JSON encoder character ranges and deserialize Root.Current from
JSON to better preserve internationalized configuration names.
- Align configuration cleanup logic between factory and converter to
remove configs not present in the previous configuration and resync the
active configuration.
- Copy recent crash dump files into a dedicated debug directory when a
crash log is detected to aid diagnostics.

CI:
- Extend release packaging workflow with an optional job to upload
Windows artifacts to Tencent COS and bump the release-preparation
auto-assign action version.

</details>
2026-01-21 01:29:19 +08:00
uye
b6f71355a8 chore: 调整迁移判断条件 2026-01-21 01:22:11 +08:00
uye
49839ff439 docs: Update CHANGELOG for v6.3.0-beta.5
Updated CHANGELOG for version 6.3.0-beta.5, including improvements, fixes, documentation updates, and other changes.
2026-01-21 01:21:14 +08:00
Status102
a58a4b7383 i18n: 增加借助战 OF-1 在后续刷理智选择 当前/上次 导致禁用时的输出 (#15478)
* i18n: 增加借助战 OF-1 在后续刷理智选择 `当前/上次` 导致禁用时的输出

* i18n: JP

* i18n: EN

* i18n: KR

* fix: 存在当前/上次的时候就不打 OF-1

* i18n: JP

* perf: 未启用任务不检查

* perf: 刷理智任务 周计划禁用任务跳过检查

* i18n: zh-tw

* perf: 检查全部刷理智关卡, 若有关卡会以 `当前/上次` 触发则禁用 OF-1

* fix: +1

---------

Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
Co-authored-by: momomochi987 <as99us301@gmail.com>
2026-01-21 01:00:23 +08:00
uye
d3611bbbf5 chore: 繁中服不上报企鹅物流 2026-01-21 00:53:26 +08:00
github-actions[bot]
bc9d10316a chore: Auto Templates Optimization
Triggered by 63e87aaabf

[skip changelog]
2026-01-20 16:16:49 +00:00
status102
f63da7c794 fix: 剩余理智启用状态迁移后未能从旧配置移除 2026-01-21 00:15:23 +08:00
status102
0ff111cc20 fix: 剩余理智关卡 关卡选择 迁移后错误使用 2026-01-21 00:15:22 +08:00
HY
63e87aaabf docs: 繁中文件大更新 (#15480)
* docs: readme

* docs: develop_ci-tutorial, development

* docs: develop_documentation-guidelines

* docs: develop_issue-bot-usage

* docs: develop_linux-tutorial, overseas-client-adaptation

* docs: develop_README, pr-tutorial

* docs: develop_vsc-ext-tutorial

* docs: manual_README, newbie

* docs: manual_faq

* docs: manual_connection

* docs: manual_cli_config

* docs: manual_cli_faq, install

* docs: manual_cli_README, usage

* docs: develop_development

* docs: manual_device_README, macos

* docs: manual_device_linux

* docs: manual_device_windows

* docs: manual_device_android

* docs: manual_introduction README, reclamation-algorithm, recruit, rewards, startup, tools

* docs: manual_introduction_others

* docs: manual_introduction_credit

* docs: manual_introduction_infrastructure

* docs: manual_introduction_combat

* docs: manual_introduction_copilot

* docs: manual_introduction_integrated-strategy

* docs: protocol_base-scheduling-schema, README, sss-schema

* docs: protocol_remote-control-schema

* docs: protocol_callback-schema

* docs: protocol_copilot-schema

* docs: protocol_task-schema

* chore: update xmal

* chore: 調整部分內容

* chore: 再次調整 README 跟 develop 資料夾下的所有文件內容

* chore: 調整 protocol 資料夾內的文件內容

* chore: 調整 manual 資料夾內的零散文件內容

* chore: 調整 cil 與 device 資料夾內的文件內容

* chore: 調整 introduction 資料夾內的文件內容

* chore: update xaml

* chore: 再......再改一點什麼......

* chore: 補圖

* chore: 更改連結

* chore: 再改一點奇怪的東西
2026-01-21 00:14:24 +08:00
Status102
0d7c54dd53 i18n: 基建找不到对应时间的基建计划 (#15468)
* i18n: 基建找不到对应时间的基建计划

* i18n: zh-tw tweak

---------

Co-authored-by: HY <45387477+momomochi987@users.noreply.github.com>
2026-01-20 23:54:04 +08:00
uye
bcca9bbb8a style: 什么格式 2026-01-20 22:29:13 +08:00
uye
ca2f4d5b8d Revert "perf: 信用战斗检查启用的首个刷理智是否选择 当前/上次"
This reverts commit dde61c5e6d.
2026-01-20 22:23:41 +08:00
status102
dde61c5e6d perf: 信用战斗检查启用的首个刷理智是否选择 当前/上次 2026-01-20 22:14:30 +08:00
uye
5a0f94e8c3 fix: 萨米肉鸽刷开局功能异常 2026-01-20 19:25:55 +08:00
uye
66e44f45e7 chore: 移除不再使用的 VirtualizingWrapPanel 与 NoAutomationDataGrid 2026-01-20 18:42:41 +08:00
uye
e454290827 perf: 优化干员识别、仓库识别显示 2026-01-20 18:40:38 +08:00
status102
08b4f4eae1 fix: 基建计划选中 Index 超出范围 2026-01-20 16:32:56 +08:00
Status102
1fd7f71f64 perf: 存在crash.log时, Wpf尝试获取dumps文件 (#15432)
* feat: 存在crash.log时, 尝试获取dumps文件

* fix: SEH exception 未写入crash file

* fix: path

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* perf: dumps path check

* perf: log perf

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-20 14:12:17 +08:00
MistEO
7d1e18fb39 ci: 算了不传 latest 了 2026-01-20 14:00:22 +08:00
status102
289ba1d431 fix: SEH 错误终止运行 2026-01-20 13:37:44 +08:00
MistEO
09df60e3d2 ci: COS 多传一份 2026-01-20 13:32:45 +08:00
status102
29ccd0f4ff fix: 自动编队识别技能等级匹配失败 2026-01-20 13:26:49 +08:00
MistEO
d58b86cfb4 ci: Add MAA COS upload step to release workflow (#15479) 2026-01-20 13:16:53 +08:00
status102
0fca6fda6d fix: 信用收取后刷 OF-1 不会在后续刷理智任务选中 当前/上次 时禁用 2026-01-20 11:31:39 +08:00
status102
35d375a746 fix: 启动MAA后重新读取基建计划 2026-01-20 10:49:59 +08:00
status102
1f9222b7f0 perf: 配置迁移检查简化 2026-01-20 10:49:59 +08:00
status102
f7b43bdac1 fix: 默认配置创建修复 2026-01-20 10:49:59 +08:00
status102
39e595d6fc perf: 移除多余的新Config配置删除 2026-01-20 10:49:59 +08:00
status102
af23150152 feat: 新Config 加载时移除旧Config中不存在的配置 2026-01-20 10:49:59 +08:00
status102
6ea89637ad fix: 剩余理智勾选且设定关卡为空时, 迁移后直接禁用剩余理智 2026-01-20 10:12:57 +08:00
dependabot[bot]
0c4e81c4b3 ci: bump kentaro-m/auto-assign-action from 2.0.0 to 2.0.1 in /.github/workflows in the github-actions group (#15467)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-20 09:21:43 +08:00
status102
e14b993890 perf: 新Config 字符序列化 2026-01-20 00:25:06 +08:00
status102
22e17bac31 fix: 配置迁移后切换回原配置 2026-01-20 00:22:51 +08:00
uye
502c61e88e perf: 剿灭卡使用到上限时不报错停止 2026-01-19 22:31:36 +08:00
uye
2951e5b5e9 perf: 剿灭关卡通过 ends_with 判断 2026-01-19 22:27:49 +08:00
status102
690f4b4f62 perf: FightTask 以剿灭为目标关卡时, 在终端界面找不到周剿灭获取进度图标不再以 False 退出 2026-01-19 21:12:11 +08:00
status102
964424a084 fix: 源石恢复 -> 使用源石 遗漏 2026-01-19 21:10:50 +08:00
status102
be674bc681 fix: 刷理智使用源石 CheckBox 勾选后不生效 2026-01-19 21:01:49 +08:00
status102
fd03b66f83 Revert "perf: 剿灭作战找不到终端内的图标直接结束"
This reverts commit 71ab040728.
2026-01-19 20:34:32 +08:00
uye
90de6f03b1 Release v6.3.0-beta.4 (#15462)
## Summary by Sourcery

提升配置迁移的健壮性和任务队列行为,同时扩展与 PC 相关组件的夜间 OTA 打包流程。

Bug 修复:
- 在配置转换和任务队列迁移过程中,更安全地处理缺失或无效的配置部分。
- 当在任务队列 UI 中重新排序任务项时,保持任务设置的可见性选择同步。
- 在任务序列化过程中,通过对每个任务单独捕获并上报错误来防止崩溃。

增强:
- 在迁移过程中裁剪多余的配置项,使其与现有配置列表一致,并移除未使用的配置。
- 在配置转换中对基础设施方案选择索引进行限制,并改进日志记录的一致性。
- 明确 CHANGELOG 中关于《明日方舟》PC 版本支持状态和预期的相关表述。

CI:
- 扩展夜间 OTA 发布工作流,以下载 MaaFramework x64 构件,并将 MaaWin32ControlUnit
打包到安装输出中。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Improve configuration migration robustness and task queue behavior while
extending nightly OTA packaging for PC-related components.

Bug Fixes:
- Handle missing or invalid configuration sections more safely during
config conversion and task queue migration.
- Keep task settings visibility selection in sync when task items are
reordered in the task queue UI.
- Prevent crashes during task serialization by catching and reporting
errors per task.

Enhancements:
- Prune extra configuration entries during migration to match the
existing configuration list and remove unused configurations.
- Clamp infrastructure plan selection indices and improve logging
consistency in configuration conversion.
- Clarify CHANGELOG wording around support status and expectations for
the PC version of Arknights.

CI:
- Extend the nightly OTA release workflow to download MaaFramework x64
artifacts and bundle MaaWin32ControlUnit into the install output.

</details>

Bug 修复:
- 确保在配置转换时,更稳健地处理缺失或无效的 `"Configurations"`,并使配置键与上一版本保持同步。
- 在任务队列 UI 中,当任务条目重新排序时,使任务设置的可见性选择保持同步。

增强:
- 在配置迁移过程中清理多余的配置项,使其与旧配置中的条目保持一致。

CI:
- 扩展夜间 OTA 发布工作流,以下载用于 x64 构建的 MaaFramework 构件,并在安装输出中包含
`MaaWin32ControlUnit`。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

提升配置迁移的健壮性和任务队列行为,同时扩展与 PC 相关组件的夜间 OTA 打包流程。

Bug 修复:
- 在配置转换和任务队列迁移过程中,更安全地处理缺失或无效的配置部分。
- 当在任务队列 UI 中重新排序任务项时,保持任务设置的可见性选择同步。
- 在任务序列化过程中,通过对每个任务单独捕获并上报错误来防止崩溃。

增强:
- 在迁移过程中裁剪多余的配置项,使其与现有配置列表一致,并移除未使用的配置。
- 在配置转换中对基础设施方案选择索引进行限制,并改进日志记录的一致性。
- 明确 CHANGELOG 中关于《明日方舟》PC 版本支持状态和预期的相关表述。

CI:
- 扩展夜间 OTA 发布工作流,以下载 MaaFramework x64 构件,并将 MaaWin32ControlUnit
打包到安装输出中。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Improve configuration migration robustness and task queue behavior while
extending nightly OTA packaging for PC-related components.

Bug Fixes:
- Handle missing or invalid configuration sections more safely during
config conversion and task queue migration.
- Keep task settings visibility selection in sync when task items are
reordered in the task queue UI.
- Prevent crashes during task serialization by catching and reporting
errors per task.

Enhancements:
- Prune extra configuration entries during migration to match the
existing configuration list and remove unused configurations.
- Clamp infrastructure plan selection indices and improve logging
consistency in configuration conversion.
- Clarify CHANGELOG wording around support status and expectations for
the PC version of Arknights.

CI:
- Extend the nightly OTA release workflow to download MaaFramework x64
artifacts and bundle MaaWin32ControlUnit into the install output.

</details>

</details>
2026-01-19 20:21:16 +08:00
status102
71ab040728 perf: 剿灭作战找不到终端内的图标直接结束 2026-01-19 20:20:56 +08:00
status102
7b0589013b i18n: 基建计划选择OutOfIndex 2026-01-19 20:14:42 +08:00
status102
eac775dc83 perf: Config 创建和切换检查 2026-01-19 20:00:57 +08:00
status102
31e7844ca1 perf: 迁移前清空 gui.new 中的所有配置 2026-01-19 20:00:57 +08:00
uye
566a1b1c30 docs: Update CHANGELOG for version 6.3.0-beta.4
Updated changelog for version 6.3.0-beta.4 with highlights, improvements, fixes, documentation updates, and other changes.
2026-01-19 19:57:50 +08:00
MistEO
d9daa078c0 docs: changelog for PC arknights 2026-01-19 19:45:08 +08:00
status102
4361b5dcbe fix: rename 2026-01-19 19:38:30 +08:00
status102
24033e42af fix: 配置迁移后移除gui.new中多余的config 2026-01-19 19:34:31 +08:00
status102
9c1216332d perf: 调整位置 2026-01-19 19:25:25 +08:00
status102
2fff5e4b7b fix: 任务序列化Catch 2026-01-19 19:22:40 +08:00
status102
8202acabe4 fix: 基建计划转换期增加检查 2026-01-19 19:18:13 +08:00
uye
6ada0e0cb4 perf: 自动战斗掉线重连、自动肉鸽在战斗结束前延迟 「停止」 动作 添加多任务共用提示 2026-01-19 18:53:08 +08:00
uye
c3c21e8b5c chore: 调整删旧配置时机 2026-01-19 18:40:49 +08:00
Manicsteiner
dae67ed303 fix: add MaaWin32ControlUnit to nightly build (#15447) 2026-01-19 18:17:26 +08:00
uye
12791e94d1 fix: 多配置用户在删除 Default 配置时迁移异常
fix #15458
2026-01-19 18:14:13 +08:00
uye
092d46bac0 fix: EX 关符合时 1 被识别为 | 2026-01-19 16:53:13 +08:00
uye
fcd29a0efb fix: 修复移动已打开设置的任务后,当前的设置面板无法继续修改的问题 2026-01-19 15:54:19 +08:00
uye
5c2451ba44 Release v6.3.0-beta.3 (#15452)
## Summary by Sourcery

更新任务队列默认值和招募设置,改进配置迁移和游戏启动行为,并在多种语言中优化文档与本地化格式。

Enhancements:
- 当未配置任何任务时,在任务队列中初始化一组默认核心任务,以确保开箱即用的可用配置。
- 调整任务启用状态处理和选择逻辑,包括可为空的启用标记以及主任务反转行为,以获得更可预测的任务执行效果。
- 优化招募设置,将可为空的加急票标记按任务进行存储,并正确序列化到助手后端。
- 改进配置转换逻辑,更好地检测并修复来自旧版本或损坏配置中的缺失或空任务队列配置。
- 将游戏启动行为与专用配置标记对齐,并使启动任务遵循该设置,而非再根据客户端类型进行推断。
- 收紧商城任务行为,在尝试刷信用战斗前,检查最近的、且已启用的战斗任务以获取关卡配置。
- 在核心 C++ 代码中对控制器和助手 API 的签名以及 lambda 的格式进行小幅清理,而不改变任何行为。

Documentation:
- 打磨英文、中文(简体/繁体)、日文和韩文的协议与战斗相关文档,主要修正格式、转义以及表格/布局一致性,以提升可读性和准确性。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Update task queue defaults and recruitment settings, improve
configuration migration and game startup behavior, and refine
documentation and localization formatting across multiple languages.

Enhancements:
- Initialize a default set of core tasks in the task queue when no tasks
are configured to ensure a usable out-of-the-box setup.
- Adjust task enablement handling and selection logic, including
nullable enable flags and main-task inversion behavior, for more
predictable task execution.
- Refine recruitment settings to use a nullable expedited-ticket flag
stored per task and serialized appropriately to the assistant backend.
- Improve configuration conversion logic to better detect and repair
missing or empty task queue configurations from older or broken setups.
- Align game startup behavior to a dedicated configuration flag and wire
startup tasks to respect this setting instead of inferring from client
type.
- Tighten mall task behavior by checking the nearest preceding enabled
fight task for stage configuration before attempting credit-farming
battles.
- Minor controller and assistant API signature and lambda formatting
cleanups in core C++ code without changing behavior.

Documentation:
- Polish protocol and combat documentation in English, Chinese
(Simplified/Traditional), Japanese, and Korean, mainly correcting
formatting, escaping, and table/layout consistency to improve
readability and accuracy.

</details>
2026-01-19 15:14:33 +08:00
uye
b71ab1c96b docs: en Coupon 2026-01-19 15:13:33 +08:00
uye
99e8dd707a docs: 有猪 2026-01-19 15:11:28 +08:00
uye
a712d0bce1 fix: OF-1 跳过条件又有猪改错了 2026-01-19 15:08:54 +08:00
uye
ab624f8adc fix: config task 默认值错误 2026-01-19 15:00:10 +08:00
uye
32b13dfc75 docs: changelog 2026-01-19 14:51:36 +08:00
uye
a2480d5286 perf: 优化任务设置按钮悬浮提示 2026-01-19 14:25:52 +08:00
status102
c036a32a68 fix: 右键跳过一次 2026-01-19 14:03:46 +08:00
uye
eeb78ee38f feat: 设置指引增加右键重命名/删除提示 2026-01-19 13:59:32 +08:00
status102
6a484e7926 perf: 开始唤醒 多任务共用参数提示 2026-01-19 13:36:33 +08:00
status102
e04b0b08e2 perf: 开始唤醒任务未设置账号切换时, 禁用手动切换按钮 2026-01-19 13:31:40 +08:00
status102
e813d62f4b fix: 新Config神秘小bug丢失Default 2026-01-19 13:31:40 +08:00
status102
bc72adb8f9 fix: config最后一个时移除按钮禁用 2026-01-19 13:31:40 +08:00
uye
a44b4c7cbd perf: 优化设置右键菜单布局 2026-01-19 13:30:51 +08:00
uye
407bca4bf5 fix: 删除配置的时候不会删除 .new 2026-01-19 12:51:21 +08:00
status102
192a106d8e fix: 公招加速券 2026-01-19 12:49:58 +08:00
status102
f5ed9d60a6 fix: 公招加速券 2026-01-19 12:33:04 +08:00
MistEO
9839f3b3d0 feat: 再次微调 PC 端文案 2026-01-19 12:09:10 +08:00
status102
62043a97f2 fix: 启动客户端绑定失效 2026-01-19 12:08:12 +08:00
status102
0b073ed84f chore: style 2026-01-19 12:08:11 +08:00
MistEO
2c357840c8 feat: PC 端说明文案调整 2026-01-19 12:03:53 +08:00
status102
45511c0a12 fix: 关卡列表显示不刷新 2026-01-19 11:53:35 +08:00
status102
ccbc877034 fix: 启动客户端绑定 2026-01-19 10:59:13 +08:00
status102
e1b769a43c perf: 更换Config迁移检查 2026-01-19 10:13:07 +08:00
status102
6d3440647d fix: 收取信用检查 2026-01-19 10:12:20 +08:00
status102
4eea1612f2 fix: 启动MAA时若没有任何任务, 则追加一套默认任务 2026-01-19 09:59:14 +08:00
github-actions[bot]
284553361a chore: Auto Templates Optimization
Triggered by 9f48a35118

[skip changelog]
2026-01-18 22:12:43 +00:00
Constrat
9f48a35118 fix: YostarEN refresh node template 2026-01-18 23:12:17 +01:00
Constrat
34c8416527 i18n: EN fix 2026-01-18 22:27:14 +01:00
github-actions[bot]
6086b721e6 chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21118556393
[skip changelog]
2026-01-18 21:04:18 +00:00
uye
9626e1b5ce Release v6.3.0-beta.2 (#15441)
## Summary by Sourcery

Bug Fixes:
- 当通用战斗任务在未配置具体关卡的情况下被设置时,阻止安排 credit-fight 任务,从而避免触发无效的 OF-1 运行。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Bug Fixes:
- Prevent credit-fight tasks from being scheduled when a generic fight
task is configured without a specific stage, avoiding invalid OF-1 runs.

</details>
2026-01-19 04:03:48 +08:00
uye
91b0b9a2b1 docs: Update CHANGELOG for v6.3.0-beta.2 fixes 2026-01-19 04:03:28 +08:00
uye
df5a776419 fix: 在赠送线索时弹出上次线索交流结束的提示时无法返回
fix #15439
2026-01-19 04:00:34 +08:00
uye
37ae3f0e61 chore: 调整 OF-1 执行条件判断逻辑 2026-01-19 03:50:54 +08:00
uye
24d229f383 fix: 调整判空逻辑 2026-01-19 03:38:57 +08:00
uye
780a8b3e9f chore: 合并判断 2026-01-19 03:11:39 +08:00
uye
ee9d73e4fc docs: Update CHANGELOG for v6.3.0-beta.2
Updated changelog for version 6.3.0-beta.2, adding fixes and highlights.
2026-01-19 03:10:25 +08:00
uye
eadb0833e5 fix: 有猪乱写 OF-1 和 当前/上次 的条件
fix #15440
2026-01-19 03:04:50 +08:00
uye
76f012c25a Release v6.3.0-beta.1 (#15437) 2026-01-19 01:33:01 +08:00
github-actions[bot]
91cd39bae3 docs: Auto Update Changelogs of v6.3.0-beta.1 (#15438)
* docs: Auto Generate Changelog of Release v6.3.0-beta.1

* docs: changelog

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2026-01-19 01:32:37 +08:00
uye
d64fe1c879 chore: 调整选技能滑动的 postdelay 2026-01-19 00:56:21 +08:00
status102
ab4d60b1c9 fix: 移除不必要的sleep 2026-01-19 00:38:18 +08:00
status102
3fab803de2 fix: 移除不必要的sleep 2026-01-19 00:36:48 +08:00
uye
0a1f510b66 fix: 有猪不等动画 2026-01-19 00:17:39 +08:00
Constrat
75ec134118 fix: Yostaren IS invest template update 2026-01-18 15:57:06 +01:00
Manicsteiner
344e43392b fix: JP AT minigame confirm (#15427) 2026-01-18 22:38:44 +08:00
萨拉托加
f96f8f46e2 fix: jp JieGardenStrategyChange 2026-01-18 22:24:04 +08:00
github-actions[bot]
69d5418eba feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21113179704
[skip changelog]
2026-01-18 14:18:13 +00:00
Constrat
9692a57069 i18n: EN IS6 tip 2026-01-18 15:11:33 +01:00
萨拉托加
8c51743ee5 fix: 日服見字祠识别
fix #15411
2026-01-18 22:09:23 +08:00
uye
885b747ca8 docs: 集成文档统一格式,同时显示 field-group 和示例代码 (#15409)
* docs: 示例

* docs: ParadoxCopilot

* i18n: tw

* i18n: en

* docs: 荧光棒

* i18n: jp

* docs: 链接未生效

* i18n: kr

* i18n: 肉鸽辅助协议 tw

* i18n: 肉鸽辅助协议 en

* i18n: 肉鸽辅助协议 jp

* i18n: 肉鸽辅助协议 kr

* i18n: JP integrated-strategy-schema

* i18n: EN

* i18n: JP integration

* docs: 移除傀影难度相关描述

* docs: 票券奖励

* docs: 界园全称

* i18n: integrated-strategy-schema for zh-tw

* i18n: integration for zh-tw

---------

Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: momomochi987 <as99us301@gmail.com>
2026-01-18 21:47:33 +08:00
Status102
008673d9eb rft: Wpf一键长草任务配置重构 (#15385)
* rft: 已重构部分

* rft: 差stageList

* rft: 补上界园常乐

* rft: 备选关卡

* i18n: 添加关卡 & 备选

* fix: 任务添加出错时中断

* fix: 当前上次关卡转换错误

* fix: 当前上次关卡转换错误

* rft: 刷理智任务序列化

* perf: 糊点

* fix: 漏了一个

* rft: 迁移标记

* fix: 加上剿灭

* fix: index漏了

* fix: 重构后的基建计划

* chore: customTask弃用多任务

* perf: 周几选择框动画

* fix: 移除备选CheckBox

* perf: 刷理智-剿灭不上传企鹅

* rft: rename

* feat: 刷理智 周几 设置

* chore: sync

* revert: debug

* revert: 使用备选关卡

* feat: 下拉框

# Conflicts:
#	src/MaaWpfGui/Views/UserControl/TaskQueue/FightSettingsUserControl.xaml

* rft: rename

* fix: config

* feat: stageList刷新, 差移除过期关卡

* perf: StageListSource 当日未开放

* fix: bingding

* perf: UI 上下布局

* Revert "perf: UI 上下布局"

This reverts commit df39cb2f09.

* feat: 增加默认隐藏的删除和拖动区域

* chore: 优化触发事件绑定

* perf: 优化全反选按钮布局

* feat: 添加任务列表的删除和重命名

* perf: idle 或 inited 为 false 时禁用删除和重命名

* chore: 确保 StagePlan 有一个元素

* fix: ComboBox无法滚动

* Revert "perf: idle 或 inited 为 false 时禁用删除和重命名"

This reverts commit e0b71b53b6.

* perf: 非 idle 期间禁止重命名或删除任务

* feat: 添加启用周计划勾选框

* perf: 不启用周计划时不重置

* perf: 优化滚动

* fix: 一键长草任务添加或跳过时提示修复

* i18n: TaskQueue 添加任务失败 / 跳过

* feat: config 保存

* perf: 删除任务Dialog增加任务类型文本

* rft: 任务可见rename

* rft: 删除任务 & 任务切换

* perf: 合并备选 & 非备选的关卡选择

* fix: index

* rft: 任务设置界面刷新

* fix: 任务设置界面

* fix: 移除最后一个任务后不会自动选中上一个

* fix: stageList刷新

* perf: 当StageList仅存在一个关卡时隐藏删除按钮

* fix: 刷理智-手动输入关卡代码自动补全

* i18n: 添加关卡

* fix: CreditFightOnceADay set

* fix: ExpectedCollapsalParadigms set

* perf: 移除无用注释 & 变量

* feat: 迁移前加个备份

* fix: 刷理智迁移时重复添加关卡

* fix: 移除信用任务中设置基建任务的UI

* fix: TaskId

* fix: 任务后状态重置

* fix: 基建任务检查

* Revert "fix: 移除信用任务中设置基建任务的UI"

This reverts commit 1f51b5fe00.

* fix: 收取信用任务的基建设置说明

* fix: TaskQueue & 基建房间 拖动容器限制

* fix: CanShowAutoReload

* fix: CustomTask适配

* fix: 任务设置改名删除Context绑定

* perf: 移除 StagePlanItem 的 Index

* rft: TaskId 迁移

* feat: TaskStatus 显示任务颜色

* perf: UI状态颜色 for Light

* perf: config迁移

* fix: base

* perf: 调整界面布局

* perf: 调整运行时任务的颜色,调整圆角

* fix: 拖动标签后无法修改配置

* fix: 部分元素在运行中时未被正确禁用

* fix: 是 move 不是 swap

* docs: 移除文档中关于 `剩余理智` & `备选关卡`中剿灭任务相关的特殊逻辑

* i18n: update introduction\combat for zh-tw

* i18n: KR

* i18n: update zh-tw.xaml

---------

Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
Co-authored-by: momomochi987 <as99us301@gmail.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
2026-01-18 21:47:11 +08:00
MistEO
a5b6f17e83 feat(PC): 支持 PC 端明日方舟 (#15407)
* feat(controller): 集成 MaaWin32ControlUnit 支持 Win32 窗口截图与控制

- 提取公共滑动插值逻辑到 SwipeHelper.hpp,重构 Minitouch/PlayTools 控制器
- 新增 Win32ControlUnitLoader 动态加载 MaaWin32ControlUnit.dll
- 新增 Win32Controller 实现 ControllerAPI,适配 touch_down/move/up 接口
- 添加 AsstAsyncAttachWindow 公开 API 用于绑定 Win32 窗口
- 添加 Win32 截图/输入方式的类型定义和枚举常量

* feat(api): 增加同步版本的 AsstAttachWindow 接口

模仿 AsstConnect 实现同步绑定 Win32 窗口的接口,方便简单场景下直接调用。
该接口标记为 deprecated,建议使用异步版本 AsstAsyncAttachWindow。

* fix: can build MaaCore

* feat: 完成整体适配

* feat(ci): 添加 MaaFramework Win32ControlUnit 下载步骤

使用 robinraju/release-downloader 从 MaaFramework 最新 release 下载
win-x64 版本并提取 MaaWin32ControlUnit 到构建产物中

* docs: 添加 Win32Controller 调试所需 MaaWin32ControlUnit 的说明

在开发文档的环境配置步骤中说明调试 Win32Controller 需要手动下载
MaaWin32ControlUnit.dll,并欢迎社区贡献自动下载脚本

* fix(i18n): 修改 UseAttachWindowWarning 措辞为"仅供尝鲜"

* fix: 小细节修复

* ci: fix maafw filename

* feat: PC 移至连接配置

* feat: 调整描述

* chore: 调整 PC 在连接配置中的顺序

* feat: 设置指引和开始唤醒界面 PC 选项绑定

---------

Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2026-01-18 21:17:59 +08:00
uye
1ed2952767 docs: 有猪漏改了 2026-01-18 21:17:09 +08:00
uye
5099827e1f fix: 粘贴作业集代码后下方的链接未重置为作业站链接
fix #15436
2026-01-18 21:08:26 +08:00
Status102
535625afcd i18n: 自动战斗编队 技能等级不足i18n, CN 使用理智药及碎石 (#15435)
* i18n: 自动战斗编队 技能等级不足i18n, CN 使用理智药及碎石

* i18n: KR

* docs: 使用理智药

---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
2026-01-18 18:53:26 +08:00
Manicsteiner
1c1ad37797 chore: YostarJP ocr fix for roguelike 2026-01-18 14:32:42 +08:00
uye
4ef45c056a Release v6.2.3 (#15420)
## Summary by Sourcery

调整 Roguelike 战斗格子评分逻辑,以处理更多格子类型,并在缺少格子权重映射时避免崩溃。

Bug Fixes:
- 当遇到未配置权重的格子类型时,防止 Roguelike 战斗评分过程中的潜在崩溃。

Enhancements:
- 扩展 Roguelike 战斗和医疗格子的权重映射,将 Green 和 Infection 格子纳入其中,以获得更精确的方向评分。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Adjust roguelike battle tile scoring to handle additional tile types and
avoid crashes when tile weight mappings are missing.

Bug Fixes:
- Prevent potential crashes in roguelike battle scoring when
encountering tile types that lack configured weights.

Enhancements:
- Extend roguelike combat and medic tile weight mappings to include
Green and Infection tiles for more accurate direction scoring.

</details>
2026-01-18 01:41:26 +08:00
uye
5fcf5dbd6a docs: Revise CHANGELOG for version 6.2.3
Updated CHANGELOG for version 6.2.3 with highlights and fixes.
2026-01-18 01:40:41 +08:00
Constrat
0ae353c15f fix: vertical alignment to top instead of center for updatesettings (#15359)
* fix: vertical alignment to top instead of center for updatesettings

* perf: 调整界面布局

---------

Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2026-01-18 01:11:11 +08:00
status102
d652661ca1 chore: order 2026-01-18 00:58:42 +08:00
status102
a7e4c79b7f fix: 肉鸽自动站位算法遇到未设置优先级地块崩溃 2026-01-18 00:57:33 +08:00
uye
5f364c5886 fix: 肉鸽遇到源石地板会闪退 2026-01-18 00:55:34 +08:00
Constrat
3bf073abdf i18n: EN fix 2026-01-17 15:04:49 +01:00
Constrat
1dfa49bda2 i18n: EN tweak for ATO minigame 2026-01-17 15:04:31 +01:00
uye
174a1b882d Release v6.2.2 (#15410) 2026-01-17 18:43:34 +08:00
github-actions[bot]
0fbed82550 docs: Auto Update Changelogs of v6.2.2 (#15418)
* docs: Auto Generate Changelog of Release v6.2.2

* docs: changelog

* docs: changelog

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2026-01-17 18:43:16 +08:00
萨拉托加
954e9ad61f fix: 界园指挥避战刷钱黑屏等待 2026-01-17 18:10:11 +08:00
uye
fa9f443bcf fix: 怎么把成就注释掉了 2026-01-17 18:05:33 +08:00
uye
23f59ed2c9 chore: 快捷置入显示加点判断日志 2026-01-17 17:50:46 +08:00
status102
cb3dd38f23 perf: 悬浮窗改static 2026-01-17 11:30:57 +08:00
github-actions[bot]
6c4819e909 feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21082012091
[skip changelog]
2026-01-16 21:52:56 +00:00
uye
0d21d3b909 chore: 力竭了 2026-01-17 02:00:08 +08:00
uye
b34c5f6909 feat: 只有一个配置时标题栏隐藏配置名 2026-01-17 01:29:24 +08:00
Constrat
9e1e7dc2e4 i18n: EN tweak to inventory display 2026-01-16 18:27:22 +01:00
Constrat
c3046c6411 fix: phantom puppet not deploying 2026-01-16 18:17:27 +01:00
Constrat
e5b6ba5888 fix: AT ClickStage t -> T 2026-01-16 18:03:41 +01:00
Constrat
2c67e23334 chore: AT updates 2026-01-16 17:06:00 +01:00
uye
ed08eb3d78 feat: 检查更新失败时吐司通知 2026-01-16 23:47:34 +08:00
github-actions[bot]
44b2d4d1f7 chore: Auto Update Game Resources - 2026-01-16
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21072180793

[skip changelog]
2026-01-16 15:46:14 +00:00
uye
98758bfbec chore: 抽卡任务结束后提示还原为默认 2026-01-16 22:45:28 +08:00
uye
243e89d948 fix: 牛牛抽卡点击停止之后文字提示不会停止变化 2026-01-16 22:44:50 +08:00
uye
4ec68ce699 feat: 一图流上报 id 单独实现 2026-01-16 19:08:55 +08:00
github-actions[bot]
91ef092905 chore: Auto Update Game Resources - 2026-01-16
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21061982270

[skip changelog]
2026-01-16 09:30:41 +00:00
github-actions[bot]
a46f17774c chore: Auto Templates Optimization
Triggered by 3943bb0d46

[skip changelog]
2026-01-16 09:17:29 +00:00
Manicsteiner
3943bb0d46 chore: YostarJP AT updates 2026-01-16 17:16:55 +08:00
HX3N
99294b9f67 chore: YostarKR AT updates
MiniGame, navigation, ocr edit
2026-01-16 17:30:14 +09:00
github-actions[bot]
b5eb6f2b19 chore: Auto Update Game Resources - 2026-01-16
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21059831385

[skip changelog]
2026-01-16 08:05:15 +00:00
github-actions[bot]
c6c844626a chore: Auto Update Game Resources - 2026-01-16
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21059079979

[skip changelog]
2026-01-16 07:29:37 +00:00
Constrat
b50eb305eb chore: Preload AT + new alter operators regex for EN 2026-01-15 15:19:16 +01:00
Manicsteiner
3e114a4d60 chore: YostarJP AT preload and ocr edit 2026-01-15 22:08:28 +08:00
萨拉托加
1d6c99f77c fix: 萨米肉鸽StartAction 2026-01-15 20:09:40 +08:00
萨拉托加
feffd27a35 fix: 矿石“杀手”识别 2026-01-15 18:17:34 +08:00
萨拉托加
0ba193f895 fix: 肉鸽增加黑屏等待时间 2026-01-15 17:53:54 +08:00
uye
d6fa6c87b7 chore: 下调一点仓库识别二值化阈值 2026-01-15 02:39:17 +08:00
github-actions[bot]
61614b8a6f chore: Auto Update Game Resources - 2026-01-14
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/21000893301

[skip changelog]
2026-01-14 16:05:05 +00:00
Constrat
6fe58eeceb chore: update OrundumActivities for EN 2026-01-14 17:01:52 +01:00
status102
349ea1078c fix: 悖论模拟-作业列表 额外等待 2026-01-14 17:32:32 +08:00
github-actions[bot]
8acbcaae11 feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20973892195
[skip changelog]
2026-01-13 21:53:12 +00:00
github-actions[bot]
af2e1879fb chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20972531014
[skip changelog]
2026-01-13 21:05:11 +00:00
uye
bf0f555233 fix: build warring 2026-01-14 02:28:05 +08:00
uye
78f0adf0a4 fix: 仓库数据 parse 失败时返回空数据 2026-01-14 01:11:03 +08:00
uye
cf1f7ba5f5 rft: 调整 ViewModels 目录结构,规范 ViewModels 命名 (#15389)
* rft: 调整 ViewModels 目录结构,规范 ViewModels 命名

* rft: 统一 Views 结构

* rft: rename AnnouncementDialogViewModel

* rft: 漏网之鱼

* rft: 怎么还有

* rft: 统一命名

* rft: 重命名

* rft: 重命名

* style: 格式化
2026-01-14 00:27:56 +08:00
uye
7369c28a1e docs: 更新开发指南 2026-01-13 21:53:10 +08:00
github-actions[bot]
73badc0a67 chore: Auto Templates Optimization
Triggered by f6d5887229

[skip changelog]
2026-01-13 11:52:21 +00:00
萨拉托加
f6d5887229 fix: 肉鸽快速编队按钮边缘无法点击导致出错 2026-01-13 19:12:06 +08:00
drway
92f22ec499 chore: 制造站加入苍苔组,避免苍苔与阿罗玛冲突 (#15343)
feat: 基建制造站加入苍苔组逻辑

如果单纯按一般逻辑筛选,会导致阿罗玛和苍苔同时使用,亏苍苔加成。
故单独加入苍苔组逻辑,避免同时选中苍苔和阿罗玛(以及未来可能会出现的其他非金属工艺的赤金制造加成干员)
2026-01-13 17:04:37 +08:00
github-actions[bot]
a20f0f684f feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20936269722
[skip changelog]
2026-01-12 21:53:00 +00:00
github-actions[bot]
16f5331dc3 chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20934921302
[skip changelog]
2026-01-12 21:05:14 +00:00
uye
71b2186dc6 perf: 优化动画效果 2026-01-13 03:03:39 +08:00
CH4
0c35daa458 fix: 修复了特殊路径下执行adb命令可能失败的问题(#15381) (#15382)
fix: 修复了特殊路径下执行adb命令可能失败的问题
2026-01-13 02:00:07 +08:00
uye
1dabdd4043 feat: 新增截图增强模拟器路径的选择窗口 2026-01-13 00:40:56 +08:00
github-actions[bot]
0a3ee5676e chore: Auto Update Game Resources - 2026-01-12
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20912072352

[skip changelog]
2026-01-12 08:05:20 +00:00
github-actions[bot]
c2ec6e0c0a chore: Auto Update Game Resources - 2026-01-12
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20910590766

[skip changelog]
2026-01-12 06:55:17 +00:00
Status102
7438df5ada feat: 自动战斗-自动编队支持技能等级要求 (#15355)
* feat: 自动战斗-自动编队支持技能等级要求

* fix: unused

* perf: 合并上报

* fix: 滑动任务

* fix: 修改一下点击位置
2026-01-12 14:45:11 +08:00
Status102
a58c0c55d9 chore: 地块类型标注 TileType (#15373)
* chore: 地块类型标注 TileType

* chore: tile

* style: format
2026-01-12 11:01:30 +08:00
github-actions[bot]
0f05a95c82 feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20902460196
[skip changelog]
2026-01-11 21:53:16 +00:00
github-actions[bot]
c27a79da36 chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20901826616
[skip changelog]
2026-01-11 21:04:29 +00:00
dantmnf
26880c62c7 fix: add AsstGetImageBgr to wine shim 2026-01-12 01:24:15 +08:00
雪银星月
61d26fbe26 fix: 修复 TaskDialog 按钮文本赋值时的语法错误及空引用保护 (#15377)
修复了在赋值语句左侧使用 ?. 导致的代码无效/编译错误问题
2026-01-11 23:45:24 +08:00
uye
eee6c64d23 chore: 收到关卡名识别失败回调时更新卡片 2026-01-11 23:04:02 +08:00
uye
363da5be9d feat: 设置指引中添加使用指引页 2026-01-11 20:16:59 +08:00
Goat Boring(山羊博宁88)
f5ce1e8728 docs: Update cli usage.md with Windows installation note (#15369) 2026-01-11 19:47:22 +08:00
uye
656e774366 Release v6.2.1 (#15366)
## Summary by Sourcery

准备发布 6.2.1 补丁版本,包含稳定性改进、简化的错误日志记录,以及更新的 UI/本地化资源。

Bug 修复:
- 防止 copilot 文件弹窗在失去焦点后立即再次被切换显示。
- 确保在打开调试文件夹前先创建该文件夹,并在失败时进行合理的错误报告。
- 在生成支持负载(support payload)后,改为打开报告文件夹而不是调试文件夹。
- 在与 Paradox 相关的任务中加载 copilot 配置时,使用正确的文件系统路径类型。

增强功能:
- 通过移除堆栈跟踪捕获和崩溃文件生成来简化 Windows 未处理异常的日志记录,并删除现已未使用的
`ExceptionStacktrace` 工具类。
- 刷新各语言中与公告、copilot 视图、任务以及本地化相关的多种资源。

文档:
- 更新所有支持语言中的 FAQ 链接,使其指向正确的 Visual C++ Redistributable 安装程序 URL。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Prepare the 6.2.1 patch release with stability improvements, simplified
error logging, and updated UI/localization resources.

Bug Fixes:
- Prevent the copilot file popup from being immediately re-toggled after
losing focus.
- Ensure the debug folder is created before opening it and gracefully
report failures.
- After generating a support payload, open the reports folder instead of
the debug folder.
- Use the correct filesystem path type when loading copilot
configurations in Paradox-related tasks.

Enhancements:
- Simplify Windows unhandled-exception logging by removing stack-trace
capture and crash file generation, and delete the now-unused
ExceptionStacktrace utility.
- Refresh various announcement, copilot view, task, and localization
resources across supported languages.

Documentation:
- Update FAQ links in all supported languages to point to the correct
Visual C++ Redistributable installer URL.

</details>

Bug 修复:
- 防止在 copilot 文件弹窗失去焦点后立刻被意外再次切换。
- 确保在打开调试文件夹时,如果目录不存在则创建该目录,并能够优雅地处理失败情况。
- 在生成支持负载后,改为打开报告文件夹而不是调试文件夹。

增强改进:
- 简化未处理异常的日志记录逻辑,移除堆栈跟踪捕获及相关的崩溃文件输出。

文档:
- 更新所有已支持语言中的 FAQ 链接,使其指向正确的 Visual C++ Redistributable 安装程序。

日常维护:
- 移除未使用的 `ExceptionStacktrace` 工具头文件及其相关引用。
- 更新公告、copilot 视图和翻译等相关的各种 UI 和本地化资源。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

准备发布 6.2.1 补丁版本,包含稳定性改进、简化的错误日志记录,以及更新的 UI/本地化资源。

Bug 修复:
- 防止 copilot 文件弹窗在失去焦点后立即再次被切换显示。
- 确保在打开调试文件夹前先创建该文件夹,并在失败时进行合理的错误报告。
- 在生成支持负载(support payload)后,改为打开报告文件夹而不是调试文件夹。
- 在与 Paradox 相关的任务中加载 copilot 配置时,使用正确的文件系统路径类型。

增强功能:
- 通过移除堆栈跟踪捕获和崩溃文件生成来简化 Windows 未处理异常的日志记录,并删除现已未使用的
`ExceptionStacktrace` 工具类。
- 刷新各语言中与公告、copilot 视图、任务以及本地化相关的多种资源。

文档:
- 更新所有支持语言中的 FAQ 链接,使其指向正确的 Visual C++ Redistributable 安装程序 URL。

<details>
<summary>Original summary in English</summary>

## Summary by Sourcery

Prepare the 6.2.1 patch release with stability improvements, simplified
error logging, and updated UI/localization resources.

Bug Fixes:
- Prevent the copilot file popup from being immediately re-toggled after
losing focus.
- Ensure the debug folder is created before opening it and gracefully
report failures.
- After generating a support payload, open the reports folder instead of
the debug folder.
- Use the correct filesystem path type when loading copilot
configurations in Paradox-related tasks.

Enhancements:
- Simplify Windows unhandled-exception logging by removing stack-trace
capture and crash file generation, and delete the now-unused
ExceptionStacktrace utility.
- Refresh various announcement, copilot view, task, and localization
resources across supported languages.

Documentation:
- Update FAQ links in all supported languages to point to the correct
Visual C++ Redistributable installer URL.

</details>

</details>
2026-01-11 19:08:59 +08:00
uye
1e58932ea8 docs: Update CHANGELOG for version 6.2.0
Added multiple improvements and fixes related to game mechanics and user interface.
2026-01-11 19:05:01 +08:00
uye
7c7916aa95 chore: 调整战斗结束后的点击位置 2026-01-11 19:03:26 +08:00
uye
17b7b16069 fix: 将借助战打 OF-1 的任务结束后最大等待时间翻倍,避免延长的黑屏时间影响 2026-01-11 18:44:50 +08:00
Status102
eb85bf2f36 feat: 自动检测地图是否为多阶段地图, 判断是否需要使用 view[0].x 修正镜头 (#15371) 2026-01-11 18:38:58 +08:00
uye
efc4a57d74 fix: 增加理智战斗后点击到掉落列表的重试次数,避免延长的黑屏时间影响 2026-01-11 18:23:32 +08:00
uye
10c4b2d8ef fix: 游戏更新后结算黑屏时长大幅增加,导致肉鸽结算失败 2026-01-11 18:17:04 +08:00
uye
aa3830ee91 docs: changelog 2026-01-11 16:54:56 +08:00
github-actions[bot]
ff11dfc080 feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20892349945
[skip changelog]
2026-01-11 08:42:35 +00:00
uye
f590bffcbf fix: 肉鸽推荐设置文本 (#15370)
* fix: 肉鸽推荐设置文本

* fix: MAX

* fix: 忘了加上没解锁的情况

* fix: 空格

* fix: 优化细节

* fix: 优化细节

* i18n: 更新翻译

---------

Co-authored-by: 萨拉托加 <151550168+Saratoga-Official@users.noreply.github.com>
2026-01-11 16:41:38 +08:00
status102
ad76ab4956 fix: 自动战斗-悖论模拟 中文路径作业 解析作业失败 2026-01-11 16:34:01 +08:00
status102
e4ece2cff0 fix: unused 2026-01-11 16:33:57 +08:00
uye
4980fa1e8c perf: 优化下拉框逻辑 2026-01-11 15:47:05 +08:00
萨拉托加
e7d83dda91 fix: 肉鸽误点进招募界面
fix #15356
2026-01-11 09:48:43 +08:00
status102
921de77f9b fix: 移除 ExceptionStacktrace.hpp 2026-01-11 08:51:59 +08:00
github-actions[bot]
ea085c600d chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20884343514
[skip changelog]
2026-01-10 21:04:06 +00:00
uye
54569e636e feat: 公告界面触屏滚动 2026-01-11 03:46:48 +08:00
uye
6a06789ece feat: 拆分 debug 和 report 文件夹逻辑 2026-01-11 03:25:32 +08:00
uye
47f1d0c939 i18n: 悖论模拟自动战斗任务翻译 2026-01-11 01:49:08 +08:00
uye
4230d695e7 perf: 用妖法实现了自动战斗下拉框的失焦和收起按钮 2026-01-11 00:40:37 +08:00
wryx166
f65cb918eb docs: 更新 Visual C++ 可再发行程序包链接至 V14 版本 (#15360) 2026-01-10 23:59:16 +08:00
uye
d276eea233 fix: 收取好友线索延迟 2026-01-10 23:21:12 +08:00
1472 changed files with 89810 additions and 10756 deletions

2
.clangd Normal file
View File

@@ -0,0 +1,2 @@
CompileFlags:
CompilationDatabase: build

View File

@@ -8,6 +8,17 @@ ARG CLANGD_VERSION=20
ARG PYTHON_VERSION=3.12.11
ARG NODEJS_VERSION=24
# Add kitware's apt repository (for cmake)
RUN curl -fsSL https://apt.kitware.com/keys/kitware-archive-latest.asc | sudo gpg --dearmor -o /usr/share/keyrings/kitware-archive-keyring.gpg
RUN cat <<EOF | sudo tee /etc/apt/sources.list.d/kitware.sources
Types: deb
URIs: https://apt.kitware.com/ubuntu
Suites: $(lsb_release -cs)
Components: main
Architectures: $(dpkg --print-architecture)
Signed-By: /usr/share/keyrings/kitware-archive-keyring.gpg
EOF
# Install system dependencies
RUN sudo apt update \
&& sudo apt upgrade -y \

View File

@@ -60,10 +60,6 @@
"python.terminal.activateEnvironment": false,
// CMake settings
"cmake.configureSettings": {
"BUILD_DEBUG_DEMO": "ON",
"CMAKE_TOOLCHAIN_FILE": "src/MaaUtils/MaaDeps/cmake/maa-x64-linux-toolchain.cmake"
},
"cmake.configureOnOpen": false,
// Performance optimizations

View File

@@ -4,18 +4,6 @@ on:
push:
tags:
- "v*"
branches-ignore:
- "master"
paths:
- ".github/workflows/ci.yml"
- "3rdparty/include/**"
- "cmake/**"
- "CMakeLists.txt"
- "include/**"
- "src/**"
- "tools/maadeps-download.py"
- "!**/*.md"
pull_request:
branches:
- "dev"
paths:
@@ -23,6 +11,18 @@ on:
- "3rdparty/include/**"
- "cmake/**"
- "CMakeLists.txt"
- "CMakePresets.json"
- "include/**"
- "src/**"
- "tools/maadeps-download.py"
- "!**/*.md"
pull_request:
paths:
- ".github/workflows/ci.yml"
- "3rdparty/include/**"
- "cmake/**"
- "CMakeLists.txt"
- "CMakePresets.json"
- "include/**"
- "src/**"
- "tools/maadeps-download.py"
@@ -130,19 +130,26 @@ jobs:
run: |
python3 tools/maadeps-download.py ${{ matrix.arch }}-windows
- name: Config cmake
- name: Configure, build and install
run: |
mkdir -p build
cmake -B build ${{ matrix.arch == 'arm64' && '-A ARM64' }} -DCMAKE_BUILD_TYPE=RelWithDebInfo -DMAADEPS_TRIPLET='maa-${{ matrix.arch }}-windows' -DINSTALL_RESOURCE=ON -DINSTALL_PYTHON=ON -DMAA_HASH_VERSION='${{ needs.meta.outputs.tag }}' -DBUILD_WPF_GUI=OFF
cmake -B build --preset ${{ matrix.arch == 'arm64' && 'windows-publish-arm64' || 'windows-publish-x64' }} -DMAA_HASH_VERSION='${{ needs.meta.outputs.tag }}'
cmake --build --preset ${{ matrix.arch == 'arm64' && 'windows-publish-arm64' || 'windows-publish-x64' }} --parallel $env:NUMBER_OF_PROCESSORS
cmake --install build --config RelWithDebInfo
- name: Build
run: |
cmake --build build --config RelWithDebInfo --parallel $env:NUMBER_OF_PROCESSORS
- name: Download MaaFramework
if: matrix.arch == 'x64'
uses: robinraju/release-downloader@v1
with:
repository: MaaXYZ/MaaFramework
latest: true
fileName: '*win-x86_64*.zip'
extract: true
out-file-path: MaaFramework-temp
- name: Install
- name: Copy MaaWin32ControlUnit
if: matrix.arch == 'x64'
run: |
mkdir -p install
cmake --install build --prefix install --config RelWithDebInfo
cp MaaFramework-temp/bin/*Win32ControlUnit* install/
- name: Cache .nuke/temp, ~/.nuget/packages
id: cache-nuget
@@ -249,28 +256,14 @@ jobs:
run: |
python3 tools/maadeps-download.py ${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-linux
- name: Config cmake
- name: Configure, build and install
run: |
mkdir -p build
cmake -B build \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DMAADEPS_TRIPLET='maa-${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-linux' \
-DINSTALL_RESOURCE=ON \
-DINSTALL_PYTHON=ON \
-DMAA_HASH_VERSION='${{ needs.meta.outputs.tag }}' \
-DCMAKE_TOOLCHAIN_FILE=src/MaaUtils/MaaDeps/cmake/maa-${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-linux-toolchain.cmake
- name: Build
run: |
cmake --build build --config RelWithDebInfo --parallel $(nproc)
cmake --preset ${{ matrix.arch == 'x86_64' && 'linux-publish-x64' || 'linux-publish-arm64' }} -DMAA_HASH_VERSION='${{ needs.meta.outputs.tag }}'
cmake --build --preset ${{ matrix.arch == 'x86_64' && 'linux-publish-x64' || 'linux-publish-arm64' }} --parallel $(nproc)
cmake --install build --config RelWithDebInfo
env:
CLICOLOR_FORCE: 1
- name: Install
run: |
mkdir -p install
cmake --install build --prefix install --config RelWithDebInfo
- name: Setup cross compile toolchains for CLI
uses: ./src/maa-cli/.github/actions/setup
with:
@@ -372,20 +365,11 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Config cmake
- name: Configure, build and install
run: |
cmake -B build -GNinja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_OSX_ARCHITECTURES='${{ matrix.arch }}' \
-DMAA_HASH_VERSION='${{ needs.meta.outputs.tag }}'
- name: Build
run: |
cmake --build build --config RelWithDebInfo --parallel $(sysctl -n hw.logicalcpu)
- name: Install
run: |
cmake --install build --prefix install --config RelWithDebInfo
cmake -B build --preset ${{ matrix.arch == 'x86_64' && 'macos-publish-x64' || 'macos-publish-arm64' }} -DMAA_HASH_VERSION='${{ needs.meta.outputs.tag }}'
cmake --build --preset ${{ matrix.arch == 'x86_64' && 'macos-publish-x64' || 'macos-publish-arm64' }} --parallel $(sysctl -n hw.logicalcpu)
cmake --install build --config RelWithDebInfo
- name: Upload MAA to GitHub
uses: actions/upload-artifact@v6

View File

@@ -185,19 +185,26 @@ jobs:
run: |
python3 tools/maadeps-download.py ${{ matrix.arch }}-windows
- name: Config cmake
- name: Configure, build and install
run: |
mkdir -p build
cmake -B build ${{ matrix.arch == 'arm64' && '-A ARM64' }} -DCMAKE_BUILD_TYPE=RelWithDebInfo -DMAADEPS_TRIPLET='maa-${{ matrix.arch }}-windows' -DINSTALL_RESOURCE=ON -DINSTALL_PYTHON=ON -DMAA_HASH_VERSION='${{ steps.set_tag.outputs.tag }}' -DBUILD_WPF_GUI=OFF
cmake -B build --preset ${{ matrix.arch == 'arm64' && 'windows-publish-arm64' || 'windows-publish-x64' }} -DMAA_HASH_VERSION='${{ steps.set_tag.outputs.tag }}'
cmake --build --preset ${{ matrix.arch == 'arm64' && 'windows-publish-arm64' || 'windows-publish-x64' }} --parallel $env:NUMBER_OF_PROCESSORS
cmake --install build --config RelWithDebInfo
- name: Build
run: |
cmake --build build --config RelWithDebInfo --parallel $env:NUMBER_OF_PROCESSORS
- name: Download MaaFramework
if: matrix.arch == 'x64'
uses: robinraju/release-downloader@v1
with:
repository: MaaXYZ/MaaFramework
latest: true
fileName: '*win-x86_64*.zip'
extract: true
out-file-path: MaaFramework-temp
- name: Install
- name: Copy MaaWin32ControlUnit
if: matrix.arch == 'x64'
run: |
mkdir -p install
cmake --install build --prefix install --config RelWithDebInfo
cp MaaFramework-temp/bin/*Win32ControlUnit* install/
- name: Cache .nuke/temp, ~/.nuget/packages
id: cache-nuget

View File

@@ -18,6 +18,11 @@ on:
type: boolean
required: false
default: true
maa_cos:
description: "Upload to MAA COS"
type: boolean
required: false
default: true
env:
RELEASE_TAG_RAW: ${{ github.event.inputs.release_tag || 'latest' }}
@@ -120,3 +125,30 @@ jobs:
release-tag: ${{ env.RELEASE_TAG }}
fork-user: MaaAssistantArknights
token: ${{ secrets.MAABOT_WINGET_TOKEN }}
maa_cos:
name: Upload to MAA COS
needs: meta
if: ${{ github.event.inputs.maa_cos == 'true' && !contains(needs.meta.outputs.RELEASE_TAG, '-') }}
runs-on: ubuntu-latest
continue-on-error: true
env:
FILENAME: MAA-${{ needs.meta.outputs.RELEASE_TAG }}-win-x64.zip
steps:
- uses: robinraju/release-downloader@v1
with:
repository: 'MaaAssistantArknights/MaaAssistantArknights'
latest: true
fileName: ${{ env.FILENAME }}
out-file-path: 'downloads'
token: ${{ secrets.GITHUB_TOKEN }}
- name: Upload to COS
uses: zkqiang/tencent-cos-action@v0.1.0
with:
args: upload -rs downloads/${{ env.FILENAME }} MAA/${{ env.FILENAME }}
secret_id: ${{ secrets.MISTEO_MAA_COS_SECRET_ID }}
secret_key: ${{ secrets.MISTEO_MAA_COS_SECRET_KEY }}
bucket: ${{ secrets.MISTEO_MAA_COS_BUCKET }}
region: ${{ secrets.MISTEO_MAA_COS_REG }}

View File

@@ -95,7 +95,7 @@ jobs:
AnnAngela
- name: Assign reviewers to release PR
uses: kentaro-m/auto-assign-action@v2.0.0
uses: kentaro-m/auto-assign-action@v2.0.1
with:
configuration-path: ".github/release_reviewers.yaml"

View File

@@ -184,25 +184,13 @@ jobs:
run: |
python3 tools/maadeps-download.py arm64-osx
- name: Config cmake
- name: Config, Build & Install ResourceUpdater
if: steps.resupd-cache.outputs.cache-hit != 'true'
run: |
cd tools/ResourceUpdater
mkdir -p build
cmake -B build -GNinja \
-DCMAKE_BUILD_TYPE=Release \
-DMAADEPS_TRIPLET='maa-arm64-osx' \
-DWITH_HASH_VERSION=ON
- name: Build
if: steps.resupd-cache.outputs.cache-hit != 'true'
run: |
cmake --build tools/ResourceUpdater/build --config Release --parallel $(sysctl -n hw.logicalcpu)
- name: Install
if: steps.resupd-cache.outputs.cache-hit != 'true'
run: |
cmake --install tools/ResourceUpdater/build --prefix tools/ResourceUpdater --config Release
cmake --preset res-updater-macos-arm64
cmake --build --preset res-updater-macos-arm64 --parallel $(sysctl -n hw.logicalcpu)
cmake --install build --config Release
- name: Save ResourceUpdater to cache
if: always() && steps.resupd-cache.outputs.cache-hit != 'true'
@@ -291,7 +279,7 @@ jobs:
- name: Optimize png images
if: steps.update_version.outputs.contains_png == 'True'
run: |
python3 tools/OptimizeTemplates/optimize_templates.py -p resource/template/items/ resource/template/infrast/
python3 tools/OptimizeTemplates/optimize_templates.py --no-cleanup -p resource/template/items/ resource/template/infrast/
- name: Commit changes
if: steps.update_version.outputs.changes == 'True'

View File

@@ -4,6 +4,8 @@ permissions:
on:
push:
branches:
- "dev"
paths:
- ".github/workflows/smoke-testing.yml"
- "3rdparty/include/**"
@@ -87,27 +89,12 @@ jobs:
run: |
python3 tools/maadeps-download.py arm64-osx
- name: Config cmake
- name: Configure, build and install
if: steps.smoke-cache.outputs.cache-hit != 'true'
run: |
mkdir -p build
cmake -B build -GNinja \
-DCMAKE_BUILD_TYPE=Debug \
-DMAADEPS_TRIPLET='maa-arm64-osx' \
-DBUILD_SMOKE_TEST=ON \
-DINSTALL_RESOURCE=ON \
-DWITH_HASH_VERSION=ON
- name: Build
if: steps.smoke-cache.outputs.cache-hit != 'true'
run: |
cmake --build build --config Debug --parallel $(sysctl -n hw.logicalcpu)
- name: Install
if: steps.smoke-cache.outputs.cache-hit != 'true'
run: |
mkdir -p install
cmake --install build --prefix install --config Debug
cmake -B build --preset smoke-test
cmake --build build --preset smoke-test --parallel $(sysctl -n hw.logicalcpu)
cmake --install build --config Debug
- name: Make link to Smoke Test cache
if: steps.smoke-cache.outputs.cache-hit == 'true'

12
.gitignore vendored
View File

@@ -411,10 +411,10 @@ FodyWeavers.xsd
# VS Code files for those working on multiple tools
**/.vscode/*
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
# !.vscode/settings.json
# !.vscode/tasks.json
# !.vscode/launch.json
# !.vscode/extensions.json
*.code-workspace
# Local History for Visual Studio Code
@@ -434,7 +434,6 @@ FodyWeavers.xsd
screen.png
adb_screen.png
tools/**/*.png
.vscode
enc_temp_folder/*
# RoguelikeRecruitmentTool 导出的 Excel 文件
@@ -479,3 +478,6 @@ install
# pnpm cache
.pnpm-store
# CMake user presets
CMakeUserPresets.json

View File

@@ -15,5 +15,6 @@
"files.associations": {
"**/resource/tasks/**/*.json": "jsonc"
},
"C_Cpp.exclusionPolicy": "checkFilesAndFolders"
"C_Cpp.exclusionPolicy": "checkFilesAndFolders",
"cmake.outputLogEncoding": "UTF-8"
}

View File

@@ -115,15 +115,15 @@ static constexpr double rel_pos_x = 1.3143386840820312;
static constexpr double rel_pos_y = 1.314337134361267;
static constexpr double rel_pos_z = -0.3967874050140381;
inline auto get_retreat_screen_pos(const Level& level)
inline auto get_retreat_screen_pos(const Level& level, bool has_multi_stages = false)
{
const vec3d relative_pos = { -rel_pos_x + level.view[0].x, +rel_pos_y, rel_pos_z };
const vec3d relative_pos = { -rel_pos_x + (has_multi_stages ? level.view[0].x : 0), +rel_pos_y, rel_pos_z };
return world_to_screen(level, relative_pos, true);
}
inline auto get_skill_screen_pos(const Level& level)
inline auto get_skill_screen_pos(const Level& level, bool has_multi_stages = false)
{
const vec3d relative_pos = { +rel_pos_x + level.view[0].x, -rel_pos_y, rel_pos_z };
const vec3d relative_pos = { +rel_pos_x + (has_multi_stages ? level.view[0].x : 0), -rel_pos_y, rel_pos_z };
return world_to_screen(level, relative_pos, true);
}

View File

@@ -1,167 +1,268 @@
## v6.2.0
## v6.3.2
### Highlights
### 拉电线不知天地为何物 | Highlight
随着米诺斯 SS 的到来,我们迎来了一位全新的萨尔贡六星干员,~~那么牛牛的米诺斯大C在哪呢~~
本次版本更新真的是千呼万唤始出来,也恰逢新年版本和 PC 端的发布,我们在这个版本提供了对 PC 端的初步支持,也合并了 SideStory 「辞岁行」 的数据。
#### 日志侧边栏重构
#### Windows 端一键长草任务配置重构
本次更新我们对主页日志侧边栏进行了整体重构,统一并优化了布局与视觉样式
本次更新我们对 Windows 端 「一键长草」 任务配置进行了重构,解决了一些痛点
现在你可以在「设置 → 界面设置」中控制【使用卡片样式日志】设置来切换日志样式,控制【日志缩略图最大数量】设置来决定日志侧边栏的缩略图数量上限(这些缩略图都是临时保存在内存里的,**内存较小的用户可能需要调整数量**
现在牛牛支持添加多个重复类型任务,并支持重命名。现在你可以通过 「一键长草」 任务左下角的加号按钮添加多个同类型任务,并可以通过拖拽任务来调整任务执行顺序,以及右键点击任务右侧的齿轮图标重命名和删除任务,这样你就可以更灵活地管理任务。
#### 自动战斗优化
牛牛也新增了理智作战任务的周计划设置,可按星期数(如星期三、星期二、星期五等)设置任务是否执行。这样你就可以结合上面提到的添加任务,<u>在理智作战任务前添加另一个理智作战任务,并将其设置为仅打当期剿灭、仅在星期一运行</u>,更多用法等你探索~
我们优化了自动战斗功能的作业路径下拉选择栏,现在同一个任务的本地作业将会折叠在一起,大幅度提升了下拉选择栏的可读性
另外,在牛牛执行一键长草流程时,各个任务的勾选框会根据其运行状态以不同颜色进行区分,直观反馈任务被跳过、已完成、运行中或执行失败等状态
另外,本次游戏更新 yj 修改了暂停按钮的位置,我们已经通过热更新修复该问题,本次更新 MAA 也会合并此项修复
注:由于牛牛现已支持 「理智作战」 周计划并可添加多个同类型任务,本次更新**移除了原有 「剿灭作战」 任务失败后自动尝试下一个已开放的备选逻辑**,如有需要请参照上方的示例添加对应任务
#### 今日关卡提示优化
#### PC 端初步支持
今日关卡提示中的掉落信息现已支持同步显示对应的库存数量,便于在刷图规划时快速判断材料缺口与优先级。
本次更新,牛牛已支持控制 PC 端明日方舟了~不过有以下限制:
你可通过「小工具 → 仓库识别」更新库存数量,今日关卡提示中的掉落信息会自动同步更新。
* 由于 Windows 的限制PC 端在被控制时**不可以处于最小化窗口状态**,否则游戏画面不会被渲染,也就无法被牛牛识别;
* 由于 Win32 API 和某反作弊软件的限制,牛牛在控制 PC 端时**必须要直接控制鼠标(不能模拟点击)**,期间不建议你使用鼠标。
#### 基建与线索管理优化
另外由于维护人手有限PC 端的适配可能长期处于不稳定状态,部分功能可能出现异常或暂时无法使用。
我们在「一键长草 → 基建换班 → 高级设置」里新增了【进行线索交流】【赠送线索】两项独立开关设置,提升基建管理的灵活性
我们非常欢迎社区开发者协助适配并提交改进,共同完善对 PC 端的支持
我们也优化了一键赠送线索等的逻辑,减少误操作发生的可能性。
#### 其他方面
同时,在基建进入设施失败时牛牛将自动保留测试截图,便于后续问题的定位与排查。
#### 成就系统 DLC
我们新增了一些成就,覆盖多个场景,等你探索哦~
* 我们继续对界园肉鸽进行适配,包括 DLC 2 的更新支持;
* 我们优化了自动编队的识别,现在支持对作业要求的精英化、等级和模组的识别,如果发现你的干员不满足要求将会有对应提示;
* 相应的,干员识别功能也支持显示精英化和等级了。
----
#### Log Sidebar Redesign
#### Restructuring of *Farming* Configuration for Windows
In this update, we've completely redesigned the main page log sidebar, unifying and optimizing its layout and visual style.
In this update, we have restructured the *Farming* configuration for Windows, addressing several pain points.
You can now switch log styles by controlling the *Use card style log* setting in *Settings → GUI*, and control the *Maximum number of log thumbnails* setting to determine the maximum number of thumbnails in the log sidebar (these thumbnails are temporarily stored in memory, **users with limited memory may need to adjust the number**).
MAA now supports adding multiple tasks of the same type and renaming them. You can add multiple tasks of the same type using the plus button at the bottom left of the *Farming* panel, adjust the execution order by dragging tasks, and rename or delete tasks by right-clicking the gear icon on the right side of each task. This allows for more flexible task management.
#### *Copilot* Optimization
MAA also supports weekly schedule settings for *Combat* tasks, allowing you to specify on which days of the week (e.g., Monday, Thursday) a task should run. For example, you can add another *Combat* task before your existing one and set it to only run Current Annihilation on Mondays. More usage scenarios await your exploration!
We've optimized the task path dropdown selection bar for the *Copilot*. Local tasks for the same stage will now be collapsed together, significantly improving the readability of the dropdown selection bar.
Additionally, when MAA executes the *Farming* process, the checkboxes for each task will be color-coded to indicate their status: skipped, completed, running, or failed, providing intuitive feedback.
Additionally, the game update changed the position of the pause button. We have fixed this issue through a hot update, and this fix has been merged into the MAA update.
Note: Since MAA now supports weekly schedules for *Combat* tasks and allows adding multiple tasks of the same type, this update **removes the previous logic that automatically attempted the next available alternative stage after a "Current Annihilation" task failure**. If needed, please refer to the example above to add corresponding tasks.
#### *Today's open stages* Hint Optimization
#### Preliminary PC Client Support (**[CN ONLY]**)
The drop information in the *Today's open stages* hints now supports synchronous display of the corresponding depot quantity, making it easier to quickly determine material shortages and priorities when planning your stage runs.
In this update, MAA now supports controlling the PC client of Arknights.
You can update your depot info through *Toolbox → Depot*, and the daily drop information in the *Today's open stages* hints will be automatically updated.
However, due to limited maintenance resources, PC client adaptation may remain unstable for a long period, and some features may experience issues or be temporarily unavailable.
#### *Base* and Clue Management Optimizations
We warmly welcome community developers to assist with adaptation and submit improvements to collectively enhance PC client support.
We've added two independent toggle settings for *Conduct Clue Exchange* and *Send Clues* in *Farming → Base → Advanced*, improving the flexibility of *Base* management.
#### Other Updates
We've also optimized the logic for one-click clue sending, reducing the possibility of accidental operations.
Additionally, when *Base* entry fails, MAA will automatically save a test screenshot for easier troubleshooting and identification of subsequent issues.
#### Achievement System DLC
We've added some achievements covering multiple scenarios, waiting for you to explore!
* Continued adaptation for *Sui's Garden of Grotesqueries*, including support for DLC 2 updates (**[CN ONLY]**)
* Optimized recognition in *Auto Squad*, which now supports identifying elite, level, and module requirements. If your operators do not meet the requirements, you will receive corresponding prompts.
* The operator recognition feature now also supports displaying elite and level information.
----
以下是详细内容:
## v6.3.2
### 新增 | New
* 重构仓库识别结构,支持根据关卡掉落情况自动更新 (#15358) @ABA2396
* 成就 DLC 功能 (#15288) @ABA2396
* 增强自动战斗文件选择功能,支持多级路径和相对目录 (#15174) @momomochi987 @ABA2396
* 允许设置是否启用线索交流与赠送线索 (#15278) @ABA2396
* 增加冬时至基建温蒂组并调整温蒂组选人逻辑 (#15294) @drway
* 通知渠道添加 Gotify (#15284) @2436238575
* 给 Bark 通知添加默认的分类组 (#15244) @Anselyuki
* 重构主页日志侧边栏整体布局和样式 (#15211) @MistEO @ABA2396
* 支持日志样式切换 @ABA2396
* 基建设施缩略图 @ABA2396
* 自动战斗日志栏添加日志悬浮窗按钮 @ABA2396
* 关卡提示支持显示库存 @ABA2396
* 更新库存提示移到 ToolTip @ABA2396
* 可以点击 20 次按钮关闭公告弹窗 @ABA2396
* 日志允许图片更新时不添加内容 @ABA2396
* 限制使用 CPU 推理时的线程占用数,优先保证模拟器运行 @ABA2396
* 基建进入设施失败时保留测试截图 @ABA2396
* 将自动重载资源独立出来,在 debug 模式下显示勾选框 @ABA2396
* 尝试增加 B 服开屏活动跳过 @ABA2396
* 检测到自身处于临时路径中时阻止启动 (#14961) @Rbqwow @ABA2396
* 企鹅物流上报 ID 不为空时禁止被上报结果赋值 @ABA2396
* 新增肉鸽主题推荐配置 tip 并适配多语言 (#15324) @hcl55 @HX3N @Manicsteiner @Constrat @momomochi987 @ABA2396
* SideStory 「雅赛努斯复仇记」导航 @SherkeyXD
* Disable CoreML for detection and recognition on macOS @MistEO
* 睡眠休眠前增加倒计时弹窗 @ABA2396
* 生息演算支援道具名称改为全字匹配 @ABA2396
### 改进 | Improved
* 重构自动战斗标签页逻辑,拆分悖论模拟任务 (#15327) @ABA2396 @yali-hzy @status102 @HX3N @Constrat
* 刷理智任务指定次数与代理倍率冲突提醒 (#15233) @status102 @HX3N @momomochi987 @Manicsteiner
* 优化线索交流、获取好友线索逻辑 @ABA2396
* 优化界面显示效果与换行 @ABA2396
* 优化缩略图逻辑 @ABA2396
* 优化 PropertyDependsOnHelper 实现 @ABA2396
* 将 PropertyDependsOnViewModel 改为静态工具类 @ABA2396
* 调整缩略图 ToolTip 延迟 @ABA2396
* 在禁用时 TooltipBlock 显示特效 (#15260) @yali-hzy @ABA2396
* 重命名以符合文件结构 @ABA2396
* devcontainer 从 conda 迁移至 mise/uv (#15251) @SherkeyXD
* rename Dps to Ops (#15325) @ABA2396
* 干员识别按照 稀有度->精英化->等级->潜能->Id 排序 @ABA2396
* 优化识别工具中列表小于 5 时的显示效果 @ABA2396
* optimize templates @Constrat
* increase score for AddOperatorTradeAggressive EN @Constrat
### 修复 | Fix
* 界园肉鸽因点击模板边缘导致关卡进不去 @Saratoga-Official
* 肉鸽暂停按钮更新 @ABA2396
* 20260109 游戏更新导致自动战斗失效 @status102
* 同时开启「剿灭模式」和「备选关卡」会导致「企鹅物流汇报 ID」被修改 @ABA2396
* 无法通过删除自动战斗输入框内容清除当前作业,无法通过在输入框输入神秘代码直接开始战斗 @ABA2396
* 线索数量识别 @ABA2396
* 线索板上有线索时无法一键放置线索 @ABA2396
* 肉鸽未填写开局干员时借助战强制为 false @ABA2396
* 隐秘战线结局识别 @ABA2396
* 隐秘战线识别到多余字符时无法进入对应事件 @ABA2396
* 给缺失干员检查补上 Unavailable (#15296) @Alan-Charred
* 尝试修复基建效率计算中的 out_of_range 异常 @ABA2396
* 远程控制截图无法获取最新图像 (#15276) @Hakuin123
* Debug 图片保存目录 (#15250) @hguandl
* 修复文档站搜索问题 @SherkeyXD
* 鬼影迷踪 -> 诡影迷踪 @ABA2396
* 撷英调香师 @ABA2396
* 避免其他 locale 下,掉落次数误认数字字符 (#15306) @aflyhorse
* ai review @ABA2396
* Filename too long @Daydreamer114
* update DormMini.png for EN (again) @Constrat
* fix SA1518 warnings @Constrat
* SA1633 warning missing copyright notice @Constrat
* waydroid rawbync screencap 2>/dev/null (#15196) @commondservice
* 4 星公招时间显示错误 @ABA2396
* 刷理智自定义剿灭关卡在特定情况的绑定错误 @status102
* 在禁用刷理智-自定义剿灭关卡后需要手动切换任务以刷新列表中显示的剿灭关卡, 尽管不影响实际运行 @status102
* 会客室任务失败重试时尝试关闭赠送线索界面 @ABA2396
* 肉鸽开局种子无法通过 Wpf 设置两位数难度 @status102
* 小工具-公招识别 3~5 星选择时间无法修改 @status102
* 小工具-干员识别 开始识别按钮启用状态绑定失效 @status102
* 自动公招任务 3~5 星确认时间在修改后未能刷新 UI @status102
* EN AveMujica terminal new template @Constrat
* EN IS tentative fix increasing roi for encounter and more replace regex @Constrat
* English text overflow on long strings in middle column @Constrat
### 文档 | Docs
* 使用脚本一键安装 maa-cli (#15283) @wangl-cc
* 战斗协议 移动镜头 (#15261) @Daydreamer114
* 源码链接同步最新行数 @Rbqwow
* 中文集成文档统一格式 @ABA2396
* update KR documents (#15282) @HX3N
* update vsc ext docs for quick ocr (#15298) @neko-para @HX3N @Constrat
* 删除一些过时内容 (#15700) @JasonHuang79
### 其他 | Other
* 移除地图未修复期间的临时糊屎, 移除未更正的注释 @status102
* 添加雪猎基建技能加成 @Saratoga-Official
* 调整文件夹判断逻辑 @ABA2396
* 调整注释 @ABA2396
* 调整 MaxNumberOfLogThumbnails 作用域,调整默认数量 @ABA2396
* 微调公告确认按钮位置 @SherkeyXD
* 移除多余关卡 @SherkeyXD
* 添加挂调试器下使用 GPU 的注释 @ABA2396
* add IsDebugVersion to _forcedReloadResource (#15293) @Constrat
* port changes from api @SherkeyXD
* H16-4, 引航者 #6 TN-1~TN-4 剩余地图 view[1] @status102
* YostarKR tweak AS-OpenOcr @HX3N
* YostarJP roguelike JieGarden ocr edit @Manicsteiner
* YoStarJP SN device ocr (#15310) @cheriu
* EN for `FightTimesMayNotExhausted` @Constrat
* 增加 id 格式验证 @ABA2396
* 明确周计划和定时更新使用游戏时间而非现实时间 @ABA2396
* 移除老主线导航逻辑 (#15644) @SherkeyXD
* 繁中服「夢鄉」主題 (#15699) @momomochi987
* Yostar servers SSS#9 and ShamareThumbnail (#15732) @Manicsteiner @Constrat
## v6.3.1
### 新增 | New
* OperNameAnalyzer 支持左对齐检测 (#15682) @ABA2396
### 改进 | Improved
* 配置迁移自动为启用备选且首个关卡为剿灭模式的刷理智任务自动添加额外的刷理智任务 @status102
* 忽略干员属性要求 不再允许跳过精英化要求 (#15697) @status102 @Constrat @HX3N
### 修复 | Fix
* JP AveMujica event ocr @Manicsteiner
* EN IS StageRefresh @Constrat
* i'm kinda stupid @Constrat
* update refresh node EN IS5 @Constrat
* EN IS fix trader store templates AGAIN @Constrat
* EN Yu OCR for Yutenji @Constrat
* 自动编队选择技能时点击到技能描述/技能范围 @status102
* 自动编队期间如有干员属性要求被忽略, 则禁用自动化投票 @status102
### 文档 | Docs
* 更新 api 链接 @ABA2396
### 其他 | Other
* UserAdditional 非 json 格式返回原始字符串 @status102
* 使用屏幕宽高常量代替硬编码 @status102
* 屏幕外的干员跳过技能就绪检测 @status102
* 調整繁中服界園肉鴿 OCR (2/?) @momomochi987
* color [INF] for smoke testing as well @Constrat
* 调整单字干员正则 @ABA2396
* 調整繁中服界園肉鴿 OCR (#15678) @momomochi987
* 删除干员名开头/末尾的_<> @ABA2396
* 添加响石、赤刃明霄陈基建技能加成 (#15674) @drway
* 保全派驻自动战斗使用二值化结果识别干员名 @ABA2396
* 删除无用的正则替换 @ABA2396
* 自动战斗使用二值化结果识别干员名 @ABA2396
* 仅在 VS Code 中添加辅助项目 (#15669) @status102
* JP OperNameAnalyzer specialParams @Manicsteiner
## v6.3.0
### 新增 | New
* 支持 PC 端明日方舟 (#15407) @MistEO @ABA2396
* SideStory「辞岁行」导航及地图数据更新 @SherkeyXD @status102
* 界园肉鸽 DLC 2 分队更新、通宝数据更新、可选难度提高至 18、支持指定种子开局 (#15588) @SherkeyXD @status102 @HX3N @Manicsteiner
* 繁中服界園肉鴿初步適配 (#15605) @momomochi987
* 干员识别支持显示精英化、等级与潜能 @ABA2396
* 自动编队识别精英化、等级及模组要求 (#15161) @status102 @Manicsteiner @Constrat @HX3N
* 芯片本支持显示库存数量 @ABA2396
* 新增注入弹窗不再提醒的勾选框,勾选后使用软件渲染 @ABA2396
* WpfGui 清空缓存按钮 (#15582) @soundofautumn @Constrat @HX3N @momomochi987
* 自定干员名称无效时的错误处理及本地化支持 (#15556) @yali-hzy @HX3N
* 设置指引增加右键重命名/删除提示 @ABA2396
* 新 Config 加载时移除旧 Config 中不存在的配置 @status102
* 日志中额外记录 TaskChain 与 taskId ~~免得有人把 Fight 改成开始唤醒~~ @ABA2396
* YostarEN/JP/KR Dreamland、JieGarden 和 AveMujica 主题支持 @Constrat @Manicsteiner @HX3N
### 改进 | Improved
* Wpf 一键长草任务配置重构,支持添加多个同类型任务、重命名和周计划设置 (#15385) @status102 @ABA2396 @momomochi987 @HX3N
* 刷理智过期关卡逻辑/样式优化 @status102 @ABA2396
* 关卡候选列表刷新及关卡选择下拉列表刷新 (#15562) @status102 @HX3N @Constrat @Manicsteiner @momomochi987
* 优化自动战斗界面布局 (#15512) @yali-hzy
* 优化任务设置按钮悬浮提示 @ABA2396
* 优化设置右键菜单布局 @ABA2396
* 优化干员识别、仓库识别显示 @ABA2396
* 配置迁移检查优化与简化 @status102 @ABA2396
* 开始唤醒任务未设置账号切换时,禁用手动切换按钮 @status102
* 自动战斗掉线重连、自动肉鸽在战斗结束前延迟「停止」动作添加多任务共用提示 @ABA2396 @status102
* 剿灭卡使用到上限时不报错停止 @ABA2396
* 剿灭关卡通过 ends_with 判断 @ABA2396
* 刷理智任务高级设置 UI 调整选项顺序和显示优化 @status102
* 自动战斗自动编队检查`干员等级&精英化``技能等级`拆分 @status102
* 自动战斗不支持技能重置说明中,干员名遵循干员名语言设置 @status102
* 自动战斗作业列表使用相对路径代替绝对路径 @status102
* TaskQueue 重命名与移除时显示任务序号 @status102
* TaskQueue 任务开始&完成显示修改后的任务名 @status102
* 追加自定干员允许不切换技能 @status102
* 存在 crash.log 时Wpf 尝试获取 dumps 文件 (#15432) @status102
* 移除过时的参数兼容 @status102
* 消除部分编译警告 (#15578) @yali-hzy
* NumberOcrReplace 新增规则 (#14186) @Manicsteiner
### 修复 | Fix
* 配置迁移相关问题修复:迁移后切换回原配置、删除配置时未删除 .new、多配置用户删除 Default 配置时迁移异常、剩余理智启用状态和关卡选择迁移问题 @status102 @ABA2396
* 刷理智任务相关修复:切换刷理智任务时读取错误关卡列表、运行时不允许添加关卡 @status102
* 自动编队相关修复:识别技能等级匹配失败、干员技能描述过长时点击位置错误、禁用快速选中以修复外服干员技能描述过长的错误选中、干员等级跨精英化时判断出错、干员等级不足 i18n 未启用、干员组干员未解析精英化及等级属性、先兼容旧作业中不合理的技能选择 @status102
* 公招加速券识别问题修复 @status102
* LoadApiCache 路径拼接错误 @ABA2396
* 主线导航及外服主线导航问题修复 @SherkeyXD @ABA2396
* 在赠送线索时弹出上次线索交流结束的提示时无法返回 @ABA2396
* 粘贴作业集代码后下方的链接未重置为作业站链接 @ABA2396
* 修复移动已打开设置的任务后,当前的设置面板无法继续修改的问题 @ABA2396
* 萨米肉鸽刷开局功能异常 @ABA2396
* 肉鸽烧水分队切换界面后错误重置 @status102
* 保证通宝优先级未定义时不会加载崩溃 fallback 到默认值 @SherkeyXD
* SEH 错误终止运行 @status102
* 启动 MAA 时若没有任何任务,则追加一套默认任务 @status102
* 启动客户端绑定失效问题修复 @status102
* 关卡列表显示不刷新 @status102
* 选中完成后动作时添加新任务未能隐藏完成后动作设置 UI @status102
* 刷理智使用源石 CheckBox 勾选后不生效 @status102
* 退出 MAA 时重置变量不再刷新 UI @status102
* 初始化 StartEnabled 属性为 true (#15596) @yali-hzy
* 自动战斗切换活动类型未清空解析缓存 @status102
* 修复任务出错日志可能晚于任务完成日志显示的问题 @ABA2396
* 开始干员识别前重置潜能状态 @ABA2396
* 修复生息演算商店无法正常购买皮肤的问题 (#15585) @drway
* 手动输入关卡名时,不移除过期关卡 @status102
* 过期关卡重置模式补充自动迁移 @status102
* OR 关卡掉落界面关卡名识别问题 @ABA2396
* EX 关符合时 1 被识别为 | @ABA2396
* NumberOcrReplace 移除`|``/` (#15625) @status102
* 移除单字干员 ocr 替换中的 +*?避免误判 @Saratoga-Official
* 涤火杰西卡识别 @ABA2396
* 日服酒神、見字祠识别 @Saratoga-Official
* YostarKR Roguelike@ChooseOperConfirm @HX3N
* YostarKR use ' ' in ocrReplace to preserve '\n' for InfrastTrainingTask @HX3N
* EN Greyy Alter regex @Constrat
* EN IS6 encounter @Constrat
* EN IS TradeInvest templates text font change @Constrat
* EN IS ShoppingConfirm text font change @Constrat
* EN refresh node template @Constrat
* JP AT minigame confirm (#15427) @Manicsteiner
* JP JieGardenStrategyChange @Saratoga-Official
* add MaaWin32ControlUnit to nightly build (#15447) @Manicsteiner
### 文档 | Docs
* 集成文档统一格式,同时显示 field-group 和示例代码 (#15409) @ABA2396 @Manicsteiner @Constrat @momomochi987
* 繁中文件大更新 (#15480) @momomochi987
* 修正开发文档中的格式错误及笔误 (#15516) @yali-hzy
* 自动战斗作业文档干员技能值范围补上 0 @status102
### 其他 | Other
* 作业集 Parse 后不删除历史记录,避免错过作业抛出的错误 @ABA2396
* 辞岁行地图 2026-02-10 Map 更新 @status102
* 繁中服不上报企鹅物流 @ABA2396
* devcontainer 适配 CMakePresets.json (#15606) @lucienshawls
* 移除不再使用的 VirtualizingWrapPanel 与 NoAutomationDataGrid @ABA2396
* 调整清理图片缓存样式,增加提示 @ABA2396
* 补全缺少的翻译 @ABA2396
* 优化 emoji @ABA2396
* 自动战斗-自动编队干员不支持技能说明国际化 (#15609) @status102 @Constrat @HX3N @Manicsteiner
* 自动战斗编队技能等级不足 i18nCN 使用理智药及碎石文案 (#15435) @status102 @HX3N
* 增加借助战 OF-1 在后续刷理智选择`当前/上次`导致禁用时的输出 (#15478) @status102 @Manicsteiner @Constrat @HX3N @ABA2396 @momomochi987
* remove regex from `text` field in EN Sui IS @Constrat
* KR AnnouncementNotFinishedConfirm、ReceptionOptionsRequireInfrast、CreditFightWhenOF-1Warning、MiniGame ConversationRoom and HoneyFruit 支持 @HX3N
* EN minigame honeyfruit、IS6 tip 支持 @Constrat
* JP MiniGame HoneyFruit 支持 @Manicsteiner
* YostarJP ocr fix for roguelike @Manicsteiner
* manual data for txwy @Constrat
* optimize templates @Constrat
* fix casing typo and related context (#15656) @ittuann @Daydreamer114

View File

@@ -35,6 +35,13 @@ if(BUILD_WPF_GUI)
include_external_msproject(MaaWpfGui ${PROJECT_SOURCE_DIR}/src/MaaWpfGui/MaaWpfGui.csproj)
add_dependencies(MaaWpfGui MaaCore)
if(DEFINED ENV{VSCODE_PID})
add_custom_target(run-MaaWpfGui
COMMAND "${CMAKE_BINARY_DIR}/bin/$<CONFIG>/MAA.exe"
DEPENDS MaaWpfGui
WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/bin/$<CONFIG>"
)
endif()
endif()
if(INSTALL_PYTHON)

348
CMakePresets.json Normal file
View File

@@ -0,0 +1,348 @@
{
"version": 10,
"cmakeMinimumRequired": {
"major": 3,
"minor": 23,
"patch": 0
},
"configurePresets": [
{
"name": "windows-base",
"hidden": true,
"generator": "Visual Studio 18 2026",
"binaryDir": "${sourceDir}/build",
"$comment": [
"Base for Windows presets; Visual Studio is multi-config (Debug/Release/RelWithDebInfo in same build dir)",
"see https://cmake.org/cmake/help/latest/generator/Visual%20Studio%2018%202026.html"
],
"cacheVariables": {
"BUILD_WPF_GUI": "ON",
"BUILD_DEBUG_DEMO": "ON",
"INSTALL_RESOURCE": "OFF",
"INSTALL_PYTHON": "OFF"
},
"condition": {
"type": "equals",
"lhs": "${hostSystemName}",
"rhs": "Windows"
}
},
{
"name": "linux-base",
"hidden": true,
"generator": "Ninja Multi-Config",
"binaryDir": "${sourceDir}/build",
"$comment": [
"Base for Linux presets; Ninja is multi-config (Debug/Release/RelWithDebInfo in same build dir)",
"see https://cmake.org/cmake/help/latest/generator/Ninja%20Multi-Config.html",
"clangd uses compile_commands.json to provide code completion and navigation",
"so CMAKE_EXPORT_COMPILE_COMMANDS is set to ON",
"see https://clangd.llvm.org/installation.html"
],
"cacheVariables": {
"CMAKE_EXPORT_COMPILE_COMMANDS": "ON"
},
"condition": {
"type": "equals",
"lhs": "${hostSystemName}",
"rhs": "Linux"
}
},
{
"name": "macos-base",
"hidden": true,
"generator": "Ninja Multi-Config",
"binaryDir": "${sourceDir}/build",
"$comment": [
"Base for macOS presets; Ninja is multi-config (Debug/Release/RelWithDebInfo in same build dir)",
"see https://cmake.org/cmake/help/latest/generator/Ninja%20Multi-Config.html",
"clangd uses compile_commands.json to provide code completion and navigation",
"so CMAKE_EXPORT_COMPILE_COMMANDS is set to ON",
"see https://clangd.llvm.org/installation.html"
],
"cacheVariables": {
"CMAKE_EXPORT_COMPILE_COMMANDS": "ON"
},
"condition": {
"type": "equals",
"lhs": "${hostSystemName}",
"rhs": "Darwin"
}
},
{
"name": "windows-x64",
"inherits": "windows-base",
"displayName": "Windows x64",
"architecture": "x64",
"cacheVariables": {
"MAADEPS_TRIPLET": "maa-x64-windows"
}
},
{
"name": "windows-arm64",
"inherits": "windows-base",
"displayName": "Windows arm64",
"architecture": "ARM64",
"cacheVariables": {
"MAADEPS_TRIPLET": "maa-arm64-windows"
}
},
{
"name": "linux-x64",
"inherits": "linux-base",
"displayName": "Linux x64",
"toolchainFile": "src/MaaUtils/MaaDeps/cmake/maa-x64-linux-toolchain.cmake",
"cacheVariables": {
"MAADEPS_TRIPLET": "maa-x64-linux"
}
},
{
"name": "linux-arm64",
"inherits": "linux-base",
"displayName": "Linux arm64",
"toolchainFile": "src/MaaUtils/MaaDeps/cmake/maa-arm64-linux-toolchain.cmake",
"cacheVariables": {
"MAADEPS_TRIPLET": "maa-arm64-linux"
}
},
{
"name": "macos-arm64",
"inherits": "macos-base",
"displayName": "macOS arm64",
"cacheVariables": {
"CMAKE_OSX_ARCHITECTURES": "arm64"
}
},
{
"name": "macos-x64",
"inherits": "macos-base",
"displayName": "macOS x64",
"cacheVariables": {
"CMAKE_OSX_ARCHITECTURES": "x86_64"
}
},
{
"name": "publish-base",
"$comment":[
"All the name contains 'publish' are used for github actions",
"see .github/workflows/ci.yml"
],
"hidden": true,
"installDir": "install",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "RelWithDebInfo",
"INSTALL_RESOURCE": "ON",
"INSTALL_PYTHON": "ON",
"BUILD_WPF_GUI": "OFF",
"BUILD_DEBUG_DEMO": "OFF"
}
},
{
"name": "windows-publish-x64",
"inherits": ["publish-base", "windows-x64"],
"$comment": [
"github actions only support Visual Studio 17 2022",
"see https://github.com/actions/runner-images/issues/13291"
],
"generator": "Visual Studio 17 2022",
"displayName": "Windows x64 Publish"
},
{
"name": "windows-publish-arm64",
"inherits": ["publish-base", "windows-arm64"],
"$comment": [
"github actions only support Visual Studio 17 2022",
"see https://github.com/actions/runner-images/issues/13291"
],
"generator": "Visual Studio 17 2022",
"displayName": "Windows arm64 Publish"
},
{
"name": "linux-publish-x64",
"inherits": ["publish-base", "linux-x64"],
"displayName": "Linux x64 Publish"
},
{
"name": "linux-publish-arm64",
"inherits": ["publish-base", "linux-arm64"],
"displayName": "Linux arm64 Publish"
},
{
"name": "macos-publish-x64",
"inherits": ["publish-base", "macos-x64"],
"displayName": "macOS x64 Publish"
},
{
"name": "macos-publish-arm64",
"inherits": ["publish-base", "macos-arm64"],
"displayName": "macOS arm64 Publish"
},
{
"name": "smoke-test",
"$comment":[
"this preset is used for smoke testing",
"see .github/workflows/smoke-testing.yml"
],
"inherits": "macos-arm64",
"displayName": "macOS arm64 Smoke Test",
"installDir": "install",
"cacheVariables": {
"BUILD_SMOKE_TEST": "ON",
"INSTALL_RESOURCE": "ON",
"WITH_HASH_VERSION": "ON"
}
}
],
"buildPresets": [
{
"name": "windows-x64-Debug",
"displayName": "Build Windows x64 Debug",
"configurePreset": "windows-x64",
"configuration": "Debug"
},
{
"name": "windows-x64-Release",
"displayName": "Build Windows x64 Release",
"configurePreset": "windows-x64",
"configuration": "Release"
},
{
"name": "windows-x64-RelWithDebInfo",
"displayName": "Build Windows x64 RelWithDebInfo",
"configurePreset": "windows-x64",
"configuration": "RelWithDebInfo"
},
{
"name": "windows-arm64-Debug",
"displayName": "Build Windows arm64 Debug",
"configurePreset": "windows-arm64",
"configuration": "Debug"
},
{
"name": "windows-arm64-Release",
"displayName": "Build Windows arm64 Release",
"configurePreset": "windows-arm64",
"configuration": "Release"
},
{
"name": "windows-arm64-RelWithDebInfo",
"displayName": "Build Windows arm64 RelWithDebInfo",
"configurePreset": "windows-arm64",
"configuration": "RelWithDebInfo"
},
{
"name": "linux-x64-Debug",
"displayName": "Build Linux x64 Debug",
"configurePreset": "linux-x64",
"configuration": "Debug"
},
{
"name": "linux-x64-Release",
"displayName": "Build Linux x64 Release",
"configurePreset": "linux-x64",
"configuration": "Release"
},
{
"name": "linux-x64-RelWithDebInfo",
"displayName": "Build Linux x64 RelWithDebInfo",
"configurePreset": "linux-x64",
"configuration": "RelWithDebInfo"
},
{
"name": "linux-arm64-Debug",
"displayName": "Build Linux arm64 Debug",
"configurePreset": "linux-arm64",
"configuration": "Debug"
},
{
"name": "linux-arm64-Release",
"displayName": "Build Linux arm64 Release",
"configurePreset": "linux-arm64",
"configuration": "Release"
},
{
"name": "linux-arm64-RelWithDebInfo",
"displayName": "Build Linux arm64 RelWithDebInfo",
"configurePreset": "linux-arm64",
"configuration": "RelWithDebInfo"
},
{
"name": "macos-x64-Debug",
"displayName": "Build macOS x64 Debug",
"configurePreset": "macos-x64",
"configuration": "Debug"
},
{
"name": "macos-x64-Release",
"displayName": "Build macOS x64 Release",
"configurePreset": "macos-x64",
"configuration": "Release"
},
{
"name": "macos-x64-RelWithDebInfo",
"displayName": "Build macOS x64 RelWithDebInfo",
"configurePreset": "macos-x64",
"configuration": "RelWithDebInfo"
},
{
"name": "macos-arm64-Debug",
"displayName": "Build macOS arm64 Debug",
"configurePreset": "macos-arm64",
"configuration": "Debug"
},
{
"name": "macos-arm64-Release",
"displayName": "Build macOS arm64 Release",
"configurePreset": "macos-arm64",
"configuration": "Release"
},
{
"name": "macos-arm64-RelWithDebInfo",
"displayName": "Build macOS arm64 RelWithDebInfo",
"configurePreset": "macos-arm64",
"configuration": "RelWithDebInfo"
},
{
"name": "windows-publish-x64",
"displayName": "Build Windows x64 Publish",
"configurePreset": "windows-publish-x64",
"configuration": "RelWithDebInfo"
},
{
"name": "windows-publish-arm64",
"displayName": "Build Windows arm64 Publish",
"configurePreset": "windows-publish-arm64",
"configuration": "RelWithDebInfo"
},
{
"name": "linux-publish-x64",
"displayName": "Build Linux x64 Publish",
"configurePreset": "linux-publish-x64",
"configuration": "RelWithDebInfo"
},
{
"name": "linux-publish-arm64",
"displayName": "Build Linux arm64 Publish",
"configurePreset": "linux-publish-arm64",
"configuration": "RelWithDebInfo"
},
{
"name": "macos-publish-x64",
"displayName": "Build macOS x64 Publish",
"configurePreset": "macos-publish-x64",
"configuration": "RelWithDebInfo"
},
{
"name": "macos-publish-arm64",
"displayName": "Build macOS arm64 Publish",
"configurePreset": "macos-publish-arm64",
"configuration": "RelWithDebInfo"
},
{
"name": "smoke-test",
"displayName": "Build macOS arm64 Smoke Test",
"configurePreset": "smoke-test",
"configuration": "Debug"
}
]
}

View File

@@ -12,7 +12,7 @@ function(create_resource_link TARGET_NAME OUTPUT_DIR)
COMMENT "Creating junction for resource directory for ${TARGET_NAME}"
)
else()
# Unix/Linux/macOS 使用符号链接
# UNIX/Linux/macOS 使用符号链接
add_custom_command(
TARGET ${TARGET_NAME}
POST_BUILD

Binary file not shown.

Before

Width:  |  Height:  |  Size: 691 KiB

After

Width:  |  Height:  |  Size: 690 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 64 KiB

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 301 KiB

After

Width:  |  Height:  |  Size: 301 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 642 KiB

After

Width:  |  Height:  |  Size: 641 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 934 KiB

After

Width:  |  Height:  |  Size: 931 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 926 KiB

After

Width:  |  Height:  |  Size: 925 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

After

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

After

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 84 KiB

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 84 KiB

After

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 78 KiB

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 80 KiB

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 160 KiB

After

Width:  |  Height:  |  Size: 160 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 160 KiB

After

Width:  |  Height:  |  Size: 160 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 84 KiB

After

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 77 KiB

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 86 KiB

After

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 366 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

View File

@@ -15,7 +15,7 @@ You can [Ask DeepWiki](https://deepwiki.com/MaaAssistantArknights/MaaAssistantAr
## I don't know programming but just want to modify some JSON files/documents, how can I do it?
Welcome to the [Web-based PR Tutorial](./pr-tutorial.md) that anyone can understand (purely web-based on Github.com)
Welcome to the [Web-based PR Tutorial](./pr-tutorial.md) that anyone can understand (purely web-based on GitHub.com)
## I want to make simple modifications to a few lines of code, but configuring the environment is too tedious and pure web editing is difficult to use. What should I do?
@@ -58,32 +58,44 @@ We've preset several different development environments for you to choose from:
```
5. Configure development environment
- Download and install `CMake`
- Download and install `Visual Studio 2026 Community`, selecting `Desktop development with C++` and `.NET Desktop Development` during installation.
6. Double-click `MAA.sln` to open the project in Visual Studio.
7. Configure Visual Studio settings
- Select `RelWithDebInfo` and `x64` in the top configuration bar (Skip for Release builds or ARM platforms)
- Right-click `MaaWpfGui` → Properties → Debug → Enable native debugging (This enables breakpoints in C++ Core)
6. Execute cmake project configuration
8. Now you're ready to happily ~~mess around~~ start developing!
9. Commit regularly with meaningful messages during development
If you're not familiar with git usage, you might want to create a new branch for changes instead of committing directly to `dev`:
```bash
git branch your_own_branch
git checkout your_own_branch
```cmd
cmake --preset windows-x64
```
This keeps your changes isolated from upstream `dev` updates.
7. Double-click `build/MAA.slnx` to open the project in Visual Studio.
8. Configure Visual Studio settings
- Select `Debug` and `x64` in the top configuration bar
- Right-click `MaaWpfGui` - Set as Startup Project
- Press F5 to run
10. After development, push your local branch (e.g. `dev`) to your remote repository:
::: tip
To debug Win32Controller (Windows window control) features, you need to manually download the corresponding platform package from [MaaFramework Releases](https://github.com/MaaXYZ/MaaFramework/releases), and place `MaaWin32ControlUnit.dll` from the `bin` directory into MAA's DLL directory (e.g. `build/bin/Debug`). PRs for an auto-download script are welcome!
:::
9. Now you're ready to happily ~~mess around~~ start developing!
10. Commit regularly with meaningful messages during development
If you're not familiar with git usage, you might want to create a new branch for changes instead of committing directly to `dev`:
```bash
git branch your_own_branch
git checkout your_own_branch
```
This keeps your changes isolated from upstream `dev` updates.
11. After development, push your local branch (e.g. `dev`) to your remote repository:
```bash
git push origin dev
```
11. Submit a Pull Request at the [MAA main repository](https://github.com/MaaAssistantArknights/MaaAssistantArknights). Ensure your changes are based on the `dev` branch, not `master`.
12. To sync upstream changes:
12. Submit a Pull Request at the [MAA main repository](https://github.com/MaaAssistantArknights/MaaAssistantArknights). Ensure your changes are based on the `dev` branch, not `master`.
13. To sync upstream changes:
1. Add upstream repository:
```bash
@@ -108,12 +120,48 @@ We've preset several different development environments for you to choose from:
git merge # merge
```
4. Repeat steps 7, 8, 9, 10.
4. Repeat steps 8, 9, 10, 11.
::: tip
After opening Visual Studio, Git operations can be performed using VS's built-in "Git Changes" instead of command-line tools.
:::
## Using VS Code for Development (Optional)
::: warning
**Visual Studio is the recommended IDE for development.** The MAA project is primarily built around Visual Studio, and the complete environment setup described above covers all development needs with the best out-of-the-box experience. The VS Code workflow is provided only as an alternative for developers already familiar with VS Code + CMake + clangd, and requires more configuration effort.
:::
If you prefer VS Code, you can use CMake, clangd, and related extensions for code completion, navigation, and debugging. After completing steps 16 above (clone, dependencies, CMake configuration), follow these steps:
### Recommended Extensions
Install from the VS Code marketplace:
| Extension | Purpose |
| --------------------------------------------------------------------------------------------------- | ---------------------------------------------------------- |
| [CMake Tools](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cmake-tools) | CMake configure, build, and debug integration |
| [clangd](https://marketplace.visualstudio.com/items?itemName=llvm-vs-code-extensions.vscode-clangd) | C++ IntelliSense, code navigation, diagnostics (LSP-based) |
| [C/C++](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) | Debug C++ programs (works with CMake Tools or launch.json) |
::: tip
When using clangd, set `C_Cpp.intelliSenseEngine` to `disabled` to avoid conflicts with the C/C++ extension's IntelliSense.
:::
### Setup Steps
1. Open the project root folder in VS Code
2. **CMake Tools**:
- Select a Configure Preset from the status bar (e.g. `windows-x64`, `linux-x64`)
- Select a Build Preset and run configure/build
3. **clangd**: Works on Windows with MSVC without needing `compile_commands.json`. On Linux/macOS, presets enable `CMAKE_EXPORT_COMPILE_COMMANDS` and clangd uses `build/compile_commands.json` automatically
4. **Debugging**: The project includes `.vscode/launch.json` for launching MaaWpfGui or Debug Demo
### Build and Debug Shortcuts
- **Build**: `Ctrl+Shift+B` or via CMake Tools status bar
- **Debug**: F5 or choose a configuration from the Run and Debug panel
## MAA File Formatting Requirements
MAA uses a series of formatting tools to ensure that the code and resource files in the repository are visually unified for easy maintenance and reading.
@@ -125,7 +173,7 @@ The currently enabled formatting tools are as follows:
| File Type | Format Tool |
| --------- | --------------------------------------------------------------- |
| C++ | [clang-format](https://clang.llvm.org/docs/ClangFormat.html) |
| Json/Yaml | [Prettier](https://prettier.io/) |
| JSON/YAML | [Prettier](https://prettier.io/) |
| Markdown | [markdownlint](https://github.com/DavidAnson/markdownlint-cli2) |
### Use Pre-commit Hooks to Automatically Format Code

View File

@@ -3,7 +3,7 @@ order: 8
icon: iconoir:code-brackets
---
# Dedicated VSCode Extension Tutorial
# Dedicated VS Code Extension Tutorial
The extension provides a series of convenient development capabilities for MaaAssistantArknights/MaaFramework, including but not limited to the following features:
@@ -14,7 +14,7 @@ For details, please visit [Extension Store](https://marketplace.visualstudio.com
## Installation
Searching `Maa` and installing it from VSCode extensions list is recommended.
Searching `Maa` and installing it from VS Code extensions list is recommended.
::: tip
When used for the first time, the extension will automatically download the preset version of resources.
@@ -90,9 +90,9 @@ Scanning and selecting controllers, selecting resource, adding and manipulating
### Take screenshots and crop images / Quick recognition
Searching and launching `Maa: open crop tool` inside VSCode command panel can open `Screenshots / Crop` panel.
Searching and launching `Maa: open crop tool` inside VS Code command panel can open `Screenshots / Crop` panel.
> Use `Ctrl+Shift+P` (`Command+Shift+P` on MacOS) to open command panel
> Use `Ctrl+Shift+P` (`Command+Shift+P` on macOS) to open command panel
- After selecting and connecting to the controller, use `Screencap` button to obtain screenshots
- Use `Upload` button to manually upload images.
@@ -114,11 +114,11 @@ For MAA, the extension will maintain the models used automatically; you only nee
#### MaaFramework Log
Search and execute `Maa: open maa log` in the VSCode command panel to view the `maa.log` generated during debugging.
Search and execute `Maa: open maa log` in the VS Code command panel to view the `maa.log` generated during debugging.
#### Maa Pipeline Support Extension Log
Search and execute `Maa: open extension log` in the VSCode command panel to view the `mse.log` generated during debugging.
Search and execute `Maa: open extension log` in the VS Code command panel to view the `mse.log` generated during debugging.
### Bottom status bar

View File

@@ -7,6 +7,12 @@ icon: material-symbols:summarize
maa-cli's main functionality is to automate Arknights game tasks by calling MaaCore. Additionally, for convenience, maa-cli also provides functions to manage MaaCore.
::: tip
For users who installed maa-cli via the Windows Package Manager (winget) , `maa` in the following commands needs to be replaced with `maa-cli` .
:::
## Manage MaaCore
maa-cli can install and update MaaCore and resources by running the following commands:

View File

@@ -9,7 +9,7 @@ icon: basil:apple-solid
### ✅ [PlayCover](https://playcover.io) (Runs most fluently as it's native 🚀)
Experimental support. Please submit issues if you encounter problems, and include `MacOS` in the title.
Experimental support. Please submit issues if you encounter problems, and include `macOS` in the title.
Note: Due to macOS system limitations, screenshot issues may occur when minimizing the game window, switching to other windows while in Stage Manager, or moving the window to other desktops/screens. Related issue: [#4371](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues/4371#issuecomment-1527977512)

View File

@@ -20,7 +20,7 @@ winget install "Microsoft.VCRedist.2015+.x64" --override "/repair /passive /nore
Or manually download and install these <u>**two**</u> runtime libraries to solve the problem:
- [Visual C++ Redistributable](https://aka.ms/vs/17/release/vc_redist.x64.exe)
- [Visual C++ Redistributable](https://aka.ms/vc14/vc_redist.x64.exe)
- [.NET Desktop Runtime 10](https://aka.ms/dotnet/10.0/windowsdesktop-runtime-win-x64.exe)
:::
@@ -49,25 +49,9 @@ We cannot provide repair solutions other than reinstalling your system. Please a
For Windows N/KN (European/Korean versions), you also need to install the [Media Feature Pack](https://support.microsoft.com/en-us/topic/c1c6fffa-d052-8338-7a79-a4bb980a700a).
#### Windows 7
#### Windows 7/8/8.1
.NET 10 doesn't support Windows 7/8/8.1 systems<sup>[source](https://github.com/dotnet/core/issues/7556)</sup>, so MAA no longer supports them either. The last usable .NET 8 version is [`v5.4.0-beta.1.d035.gd2e5001e7`](https://github.com/MaaAssistantArknights/MaaRelease/releases/tag/v5.4.0-beta.1.d035.gd2e5001e7); the last usable .NET 4.8 version is [`v4.28.8`](https://github.com/MaaAssistantArknights/MaaAssistantArknights/releases/tag/v4.28.8). Self-compilation feasibility remains undetermined.
For Windows 7, before installing the two runtime libraries mentioned above, check if these patches are installed:
1. [Windows 7 Service Pack 1](https://support.microsoft.com/en-us/windows/b3da2c0f-cdb6-0572-8596-bab972897f61)
2. SHA-2 code signing patches:
- KB4474419: [Download link 1](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/secu/2019/09/windows6.1-kb4474419-v3-x64_b5614c6cea5cb4e198717789633dca16308ef79c.msu), [Download link 2](http://download.windowsupdate.com/c/msdownload/update/software/secu/2019/09/windows6.1-kb4474419-v3-x64_b5614c6cea5cb4e198717789633dca16308ef79c.msu)
- KB4490628: [Download link 1](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/secu/2019/03/windows6.1-kb4490628-x64_d3de52d6987f7c8bdc2c015dca69eac96047c76e.msu), [Download link 2](http://download.windowsupdate.com/c/msdownload/update/software/secu/2019/03/windows6.1-kb4490628-x64_d3de52d6987f7c8bdc2c015dca69eac96047c76e.msu)
3. Platform Update for Windows 7 (DXGI 1.2, Direct3D 11.1, KB2670838): [Download link 1](https://catalog.s.download.windowsupdate.com/msdownload/update/software/ftpk/2013/02/windows6.1-kb2670838-x64_9f667ff60e80b64cbed2774681302baeaf0fc6a6.msu), [Download link 2](http://download.windowsupdate.com/msdownload/update/software/ftpk/2013/02/windows6.1-kb2670838-x64_9f667ff60e80b64cbed2774681302baeaf0fc6a6.msu)
##### Workaround for .NET 8 applications running abnormally on Windows 7 [#8238](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues/8238)
When running .NET 8 applications on Windows 7, abnormal memory usage can occur. Follow these steps to mitigate it. Windows 8/8.1 hasn't been tested; if similar issues occur, please open an Issue to remind us to update the documentation.
1. Open `Computer`, right-click in empty space, click Properties, click `Advanced system settings` on the left, and click `Environment Variables`.
2. Create a new system variable with name `DOTNET_EnableWriteXorExecute` and value `0`.
3. Restart your computer.
.NET 10 doesn't support Windows 7/8/8.1 systems<sup>[source](https://github.com/dotnet/core/issues/7556)</sup>, so MAA no longer supports them either.
## Connection errors

View File

@@ -51,7 +51,7 @@ icon: hugeicons:brain-02
- Lungmen Downtown: LungmenDowntown@Annihilation
- Side story stages like `OF-1`, `OF-F3`, and `GT-5`.
- The last three stages of the current Side Story event. These will be shown at the bottom of the interface after automatically downloading updates from the [API](https://api.maa.plus/MaaAssistantArknights/api/gui/StageActivity.json).
- The last three stages of the current Side Story event. These will be shown at the bottom of the interface after automatically downloading updates from the [API](https://api.maa.plus/MaaAssistantArknights/api/gui/StageActivityV2.json).
- Rerun Side Story events: Enter `SSReopen-<stage prefix>` to farm all stages XX-1 through XX-9 in sequence, like `SSReopen-IC`.
::: details Example Screen
@@ -70,22 +70,11 @@ icon: hugeicons:brain-02
Alternative stages are selected based on daily stage availability - MAA will choose the first available stage in the list.
This functions like a schedule, not as a fallback if the primary stage selection fails.
1. Example: If primary stage is `CE-6/5` with alternatives `1-7` and `LS-6/5`:
- If `CE-6/5` is open today, MAA will run it and ignore the alternatives. If you haven't unlocked auto-deploy for CE-6/5, the task will fail.
- If `CE-6/5` is closed today, MAA will run `1-7` instead. If you haven't unlocked auto-deploy for 1-7, the task will fail.
- Since `1-7` is a permanent stage that appears before `LS-6/5` in the list, MAA will never run `LS-6/5` in this scenario.
2. If the primary stage is `Annihilation Mode`:
- Annihilation results won't affect the alternative stage logic - even if Annihilation fails, the task will continue.
- Alternative stages will only inherit the `Use Sanity Potion` and `Multiplier` settings, ignoring `Use Originium`, `Perform Battles`, and `Material` settings.
Example: Alternative Stages are `CE-6/5`, `1-7` and `LS-6/5`:
### Remaining Sanity
This option activates after the main `Sanity Farming` task ends, ignoring all `Use Sanity Potion`, `Use Originium`, `Perform Battles`, `Material`, and `Multiplier` settings. It simply uses up any remaining sanity and stops.
- Useful for farming a low-cost stage (like 1-7) with leftover sanity after your main stage becomes unaffordable.
- Also useful for automatically switching to single runs when you have insufficient sanity for your configured multiplier (e.g., if you set 1-7 for 6x runs but only have 30 sanity, it will automatically run five single 1-7 runs instead).
- The task will end if remaining sanity is insufficient (e.g., less than 6 sanity).
- If the selected remaining sanity stage is closed or unavailable, the task will fail.
- If `CE-6/5` is open today, MAA will run it and ignore the alternatives. If you haven't unlocked auto-deploy for CE-6/5, the task will fail.
- If `CE-6/5` is closed today, MAA will run `1-7` instead. If you haven't unlocked auto-deploy for 1-7, the task will fail.
- Since `1-7` is a permanent stage that appears before `LS-6/5` in the list, MAA will never run `LS-6/5` in this scenario.
### Multiplier
@@ -93,15 +82,14 @@ MAA will use the specified battle multiplier setting:
- **AUTO mode** (0):
- Automatically identifies and uses the maximum possible multiplier without wasting sanity
- Proceeds to the `Remaining Sanity` option afterward (if enabled)
- **Fixed value mode** (1-6):
- Uses exactly the specified multiplier
- If current sanity is insufficient for the set multiplier (e.g., only enough for 5× but set to 6×), ends the task and proceeds to `Remaining Sanity` (if enabled)
- If current sanity is insufficient for the set multiplier (e.g., only enough for 5× but set to 6×), ends the task
- **Disabled mode** (-1):
- Doesn't change the in-game multiplier setting
- If sanity is insufficient for the current in-game multiplier setting, ends the task and proceeds to `Remaining Sanity` (if enabled)
- If sanity is insufficient for the current in-game multiplier setting, ends the task
### Perform Battles

View File

@@ -20,7 +20,7 @@ Please note that JSON files do not support comments. The comments in this docume
// Specified operators
{
"name": "重岳", // Operator name ("重岳" = "Chongyue")
"skill": 3, // Skill number. Optional, default is 1, range [1, 3]
"skill": 3, // Skill number. Optional, default is 1, range [0, 3]
"skill_usage": 2, // Skill usage method. Optional, default is 0
// 0 - Do not use automatically (depends on "actions" field)
// 1 - Use whenever ready, as many times as possible (e.g., Thorns S3, Myrtle S1, etc.)

View File

@@ -36,6 +36,9 @@ Please note that JSON files do not support comments. Comments are for demonstrat
- `fragments.json` stores basic information about Sarkaz's Thoughts
- `map.json` stores template image information for Sarkaz's Blueprint navigation
- In `JieGarden/`:
- `coppers.json` basic information and pickup/replacement logic for Coppers
## Integrated Strategy Step 1: Operator Recruitment
`resource/roguelike/theme_name/recruitment.json` describes the logic of the operator recruitment
@@ -152,7 +155,7 @@ By default, only E1 Level 55 operators will be recruited
| 情报官 (Agents) | 晓歌 (Cantabile), 伊内丝 (Ines) | Can recover DP, provide side output, and can single cut |
| 浊心斯卡蒂 (Skadi Alter) | 浊心斯卡蒂 (Skadi the Corrupting Heart) | Decent healing under low pressure, but special range, some maps have suitable positions |
| 焰苇 (Reed Alter) | 焰影苇草 (Reed the Flame Shadow) | Commonly used opening operator in Sami I.S., combines healing and output, some maps have optimal positions |
| 玛恩纳 (SilverAsh) | 玛恩纳 (Closure), 银灰 (SilverAsh) | Ground large-area decisive output, can be deployed against bosses |
| 玛恩纳 (Mlynar) | 玛恩纳 (Mlynar), 银灰 (SilverAsh) | Ground large-area decisive output, can be deployed against bosses |
| 史尔特尔 (Surtr) | 史尔特尔 (Surtr) | Since Surtr always carries S3 at E2, field presence ability is almost zero, deployment priority is extremely low |
| 骰子 (Dice) | 骰子 (Dice) | In Mizuki I.S. the dice needs to be operated separately |
@@ -778,6 +781,94 @@ For farming hidden Collapsal Paradigms, N10 difficulty is recommended, with the
- Reed the Flame Shadow + Orchid + Popukar;
- Toddifons + Spot + Steward.
### JieGarden Integrated Strategy - Coppers
`resource/roguelike/JieGarden/coppers.json` describes the configuration and exchange strategy for JieGarden I.S. Coppers
```json5
{
"theme": "JieGarden", // I.S. Theme name (JieGarden here)
"addons": { // Copper addon attribute descriptions (notes only, no effect on program)
"锈色": "When cast, gain Originium Ingots +1 for every node passed",
"存护": "When added to wallet, gain Shield +2",
"入幻": "When added to wallet, gain Hope +1",
"引光": "When added to wallet, gain Candlelight +1",
"巡游": "When cast, gain Tickets +1 for every battle completed"
},
"coppers": [ // Copper list
{
"name": "大炎通宝", // Copper name (Yan Copper)
"desc": "Ordinary and blank, nothing special", // Copper effect description (notes only, no effect on program)
"rarity": "NORMAL", // Rarity: NONE/NORMAL/RARE/SUPER_RARE (notes only, no effect on program)
"pickup_priority": 0, // Pickup priority, used when selecting drops, higher value = higher priority pickup
"discard_priority": 1000 // Discard priority, used during exchange, higher value = higher priority discard
},
{
"name": "衡-奇土生金", // Balance - Bountiful Land (name kept in Chinese as game-specific term)
"desc": "When cast, immediately gain Originium Ingots +4 (transforms into Yan Copper before next cast)",
"rarity": "NORMAL",
"pickup_priority": 200,
"discard_priority": 800,
"cast_discard_priority": 999 // Optional field, discard priority when cast, only replaces discard_priority when cast and value >= 0
// This typically applies to coppers whose effects change after casting (like coppers that become Yan Copper)
},
{
"name": "厉-西廉贞", // Risk - Xi Lianzhen (name kept in Chinese as game-specific term)
"desc": "When cast, Elite and Leader enemies gain HP and ATK +10%, with additional +20% in Dangerous Operations and Nian Beast Remnant Cognition",
"rarity": "NORMAL",
"pickup_priority": 0,
"discard_priority": 1998,
"cast_discard_priority": 2098 // Same as above, sometimes also used for coppers that bring negative effects after casting
},
...
]
}
```
#### Copper Exchange Logic
MAA automatically handles copper pickup and exchange in JieGarden I.S.:
::: tip Enable Conditions
Copper exchange functionality is only enabled in the following modes:
- Investment Mode: Requires "Investment mode enable shopping, recruitment, advance 2 floors" option enabled
- Other Modes: Enabled by default
:::
1. **Pickup Dropped Coppers**: After battle ends, if copper drop selection interface appears, MAA will select the copper with highest `pickup_priority`
2. **Exchange Wallet Coppers**: When a newly picked copper needs to be exchanged with coppers in the wallet:
- Recognize all coppers in wallet: type, name, and whether cast status
- Find the copper with highest `discard_priority` (least important) in wallet
- If new copper's `discard_priority` is lower than the least important existing copper, abandon exchange
- Otherwise replace the least important copper with the new copper
3. **Special Handling for Cast Coppers**:
- For coppers marked with `cast_discard_priority`, use this priority when cast instead of `discard_priority`
- This typically applies to coppers whose effects change after casting (like coppers that transform into Yan Copper 大炎通宝)
#### Copper Recognition Mechanism
MAA uses the following methods to recognize and handle coppers:
1. Recognize copper type icons (厉/衡/花 - Risk/Balance/Flower) through template matching
2. Based on type icon position, use ROI offset for OCR recognition of copper name
3. Recognize whether copper is in "cast" state
4. Auto-scroll list in copper exchange interface, scan all coppers for comparison
#### Recognition Process Illustration
![image](/images/zh-cn/copper-explanation-1.png)
![image](/images/zh-cn/copper-explanation-2.png)
::: info Note
- If OCR recognized copper name not found in config file, MAA will save debug image to `debug/roguelike/coppers/unknown` directory for troubleshooting
:::
## Desired Logic (todo)
### Automatic Formation Logic

File diff suppressed because it is too large Load Diff

View File

@@ -194,14 +194,14 @@ Please note that JSON files do not support comments. The comments in this docume
Task list type fields (`sub`, `next`, `onErrorNext`, `exceededNext`, `reduceOtherTimes`) support expression calculations.
| Symbol | Meaning | Example |
| :----------: | :--------------------------------------------------------------------------------------: | :------------------------------------: |
| `@` | `@`-type Task | `Fight@ReturnTo` |
| `#` (unary) | Virtual task | `#self` |
| `#` (binary) | Virtual task | `StartUpThemes#next` |
| `*` | Repeat tasks | `(ClickCornerAfterPRTS+ClickCorner)*5` |
| `+` | Task list merge (in next-type attributes, only first occurrence of same-name tasks kept) | `A+B` |
| `^` | Task list difference (in first but not second, order preserved) | `(A+A+B+C)^(A+B+D)` (result is `C`) |
| Symbol | Meaning | Example |
| :----------: | :--------------------------------------------------------------------------------------: | :-------------------------------------: |
| `@` | `@`-type Task | `Fight@ReturnTo` |
| `#` (unary) | Virtual task | `#self` |
| `#` (binary) | Virtual task | `StartUpThemes#next` |
| `*` | Repeat tasks | `(ClickCornerAfterPRTS+ClickCorner)*10` |
| `+` | Task list merge (in next-type attributes, only first occurrence of same-name tasks kept) | `A+B` |
| `^` | Task list difference (in first but not second, order preserved) | `(A+A+B+C)^(A+B+D)` (result is `C`) |
Operators `@`, `#`, `*`, `+`, `^` have precedence: `#` (unary) > `@` = `#` (binary) > `*` > `+` = `^`.
@@ -440,4 +440,4 @@ Configured in `MaaCore.vcxporj`, works out of the box. Prompts are somewhat cryp
### Visual Studio Code
Configured in `.vscode/settings.json`, use VSCode to open the **project folder** to use. Better prompt quality.
Configured in `.vscode/settings.json`, use VS Code to open the **project folder** to use. Better prompt quality.

View File

@@ -5,7 +5,7 @@ icon: devicon-plain:githubactions
# CI システム解析
MAA は Github Action を活用して、ウェブサイトの構築、自動リソース更新、最終ファイルの構築とリリースなど、大量の自動化作業を完了しました。時間の経過とともに、これらの CI は徐々にネスト化し始め、一部は他のリポジトリにリンクされています。このドキュメントは、MAA の CI システムを改善したい人のために簡単な紹介を提供することを目的としています。
MAA は GitHub Action を活用して、ウェブサイトの構築、自動リソース更新、最終ファイルの構築とリリースなど、大量の自動化作業を完了しました。時間の経過とともに、これらの CI は徐々にネスト化し始め、一部は他のリポジトリにリンクされています。このドキュメントは、MAA の CI システムを改善したい人のために簡単な紹介を提供することを目的としています。
このドキュメントを読む前に、MAA のプロジェクト構造と構成について基本的な概念を持っていることが推奨されます。
@@ -28,7 +28,7 @@ MAA は Github Action を活用して、ウェブサイトの構築、自動リ
さらに、[pre-commit.ci](https://pre-commit.ci/) を通じてコードの自動フォーマットと画像リソースの自動最適化を実現しており、PR を作成した後に自動的に実行されるため、通常は特に注意する必要はありません。
## Github Action 部分
## GitHub Action 部分
### コードテスト

View File

@@ -64,32 +64,44 @@ icon: iconoir:developer
```
5. 開発環境の設定
- `CMake` をダウンロードしてインストール
- `Visual Studio 2026 Community` をインストール時、`C++ によるデスクトップ開発` と `.NET デスクトップ開発` を選択必須
6. `MAA.sln` をダブルクリックで開き、Visual Studio にプロジェクトを自動ロード
7. VS の設定
- 上部設定バーで `RelWithDebInfo` `x64` を選択Release ビルド/ARM プラットフォームの場合は不要)
- `MaaWpfGui` 右クリック → プロパティ → デバッグ → ネイティブデバッグを有効化C++ Core へのブレークポイント設定可能)
6. cmake プロジェクト設定を実行
8. これで自由に ~~改造~~ 開発を始められます
9. 一定量の変更ごにコミット(メッセージ記入必須)
Git 未経験者は dev ブランチ直接変更ではなく新規ブランチ作成推奨:
```bash
git branch your_own_branch
git checkout your_own_branch
```cmd
cmake --preset windows-x64
```
これで dev の更新影響を受けずに開発可能
7. `build/MAA.slnx` をダブルクリックで開き、Visual Studio にプロジェクトを自動ロード
8. VS の設定
- 上部設定バーで `Debug` `x64` を選択
- `MaaWpfGui` 右クリック → スタートアップ プロジェクトに設定
- F5 キーを押して実行
10. 開発完了後、変更をリモートリポジトリへプッシュ:
::: tip
Win32ControllerWindows ウィンドウ制御)関連機能をデバッグする場合は、[MaaFramework Releases](https://github.com/MaaXYZ/MaaFramework/releases) から対応プラットフォームのアーカイブをダウンロードし、`bin` ディレクトリ内の `MaaWin32ControlUnit.dll` を MAA の DLL と同じディレクトリ(例:`build/bin/Debug`)に配置してください。自動ダウンロードスクリプトの PR 歓迎!
:::
9. これで自由に ~~改造~~ 開発を始められます
10. 一定量の変更ごとにコミット(メッセージ記入必須)
Git 未経験者は dev ブランチ直接変更ではなく新規ブランチ作成推奨:
```bash
git branch your_own_branch
git checkout your_own_branch
```
これで dev の更新影響を受けずに開発可能
11. 開発完了後、変更をリモートリポジトリへプッシュ:
```bash
git push origin dev
```
11. [MAA メインリポジトリ](https://github.com/MaaAssistantArknights/MaaAssistantArknights) で Pull Request を提出master ではなく dev ブランチを指定)
12. 上流リポジトリの更新を同期する場合:
12. [MAA メインリポジトリ](https://github.com/MaaAssistantArknights/MaaAssistantArknights) で Pull Request を提出master ではなく dev ブランチを指定)
13. 上流リポジトリの更新を同期する場合:
1. 上流リポジトリを追加:
```bash
@@ -114,12 +126,46 @@ icon: iconoir:developer
git merge
```
4. ステップ7、8、9、10 を繰り返し
4. ステップ8、9、10、11 を繰り返し
::: tip
Visual Studio 起動後、Git 操作は「Git 変更」画面からコマンドライン不要で可能
:::
## VSCodeでの開発オプション
::: warning
**Visual Studio での開発を推奨します。** MAA プロジェクトは主に Visual Studio をベースに構築されており、上記の完全な環境セットアップですべての開発ニーズをカバーし、すぐに使える最高の体験を提供します。VSCode ワークフローは、VSCode + CMake + clangd に精通した開発者向けの代替手段としてのみ提供されており、設定のハードルが比較的高くなります。
:::
VSCodeを好む場合、CMake、clangdなどの拡張機能でコード補完、ナビゲーション、デバッグが可能です。前述の手順16クローン、依存関係、CMake設定を完了した後、以下の手順で設定できます。
### 推奨拡張機能
VS Code Marketplace からインストール:
| 拡張機能 | 用途 |
| --------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| [CMake Tools](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cmake-tools) | CMake の設定、ビルド、デバッグ統合 |
| [clangd](https://marketplace.visualstudio.com/items?itemName=llvm-vs-code-extensions.vscode-clangd) | C++ インテリセンス、コードナビゲーション、診断LSPベース |
| [C/C++](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) | C++ プログラムのデバッグCMake Tools または launch.json と連携) |
::: tip
clangd を使用する場合、C/C++ 拡張機能の IntelliSense を無効化(`C_Cpp.intelliSenseEngine` を `disabled` に設定)することを推奨します。競合を避けるためです。
:::
### 設定手順
1. VS Code でプロジェクトルートを開く
2. **CMake Tools**:ステータスバーで Configure Preset`windows-x64`、`linux-x64`を選択し、Build Preset でビルドを実行
3. **clangd**Windows で MSVC を使用する場合、`compile_commands.json` がなくても clangd で開発可能。Linux/macOS ではプリセットで `CMAKE_EXPORT_COMPILE_COMMANDS` が有効となり、clangd は `build/compile_commands.json` を自動使用
4. **デバッグ**:プロジェクトには `.vscode/launch.json` が含まれており、MaaWpfGui や Debug Demo の起動が可能
### ビルドとデバッグのショートカット
- **ビルド**`Ctrl+Shift+B` または CMake Tools ステータスバー
- **デバッグ**F5 または Run and Debug パネルで設定を選択
## MAAのファイルフォーマット要件
MAAは、リポジトリ内のコードとリソースファイルが美しく統一されるよう、一連のフォーマットツールを使用してメンテナンスと読み取りを容易にしています。
@@ -131,7 +177,7 @@ MAAは、リポジトリ内のコードとリソースファイルが美しく
| ファイルタイプ | フォーマットツール |
| -------------- | --------------------------------------------------------------- |
| C++ | [clang-format](https://clang.llvm.org/docs/ClangFormat.html) |
| Json/Yaml | [Prettier](https://prettier.io/) |
| JSON/YAML | [Prettier](https://prettier.io/) |
| Markdown | [markdownlint](https://github.com/DavidAnson/markdownlint-cli2) |
### Pre-commit Hooksを使用してコードを自動フォーマット

View File

@@ -163,4 +163,4 @@ ROIの範囲を変更するには
## 変更を送信する
[Github Pull Requst ガイド](../develop/development.md#github-pull-request-プロセス概要)を参照してください。
[GitHub Pull Request ガイド](../develop/development.md#github-pull-request-プロセス概要)を参照してください。

View File

@@ -11,7 +11,7 @@ icon: mingcute:git-pull-request-fill
::: warning
このガイドでは、多くの概念を簡略化し、より多くの人々が実際に使用できるように、不格好であるが簡単な操作が含まれています。また、正しくない説明もありますので、大変恐れ入りますが、専門家の方々にはお許しください。
Gitの使用経験とプログラミングの基礎がある場合、[Github Pull Request プロセス概要](./development.md#github-pull-request-プロセス概要)など、より上級のチュートリアルを見ることができます。
Gitの使用経験とプログラミングの基礎がある場合、[GitHub Pull Request プロセス概要](./development.md#github-pull-request-プロセス概要)など、より上級のチュートリアルを見ることができます。
:::
## 基本概念および用語の説明

View File

@@ -3,7 +3,7 @@ order: 8
icon: iconoir:code-brackets
---
# Dedicated VSCode Extension Tutorial
# Dedicated VS Code Extension Tutorial
The extension provides a series of convenient development capabilities for MaaAssistantArknights/MaaFramework, including but not limited to the following features:
@@ -14,7 +14,7 @@ For details, please visit [Extension Store](https://marketplace.visualstudio.com
## Installation
Searching `Maa` and installing it from VSCode extensions list is recommended.
Searching `Maa` and installing it from VS Code extensions list is recommended.
::: tip
When used for the first time, the extension will automatically download the preset version of resources.
@@ -90,9 +90,9 @@ Scanning and selecting controllers, selecting resource, adding and manipulating
### Take screenshots and crop images / Quick recognition
Searching and launching `Maa: open crop tool` inside VSCode command panel can open `Screenshots / Crop` panel.
Searching and launching `Maa: open crop tool` inside VS Code command panel can open `Screenshots / Crop` panel.
> Use `Ctrl+Shift+P` (`Command+Shift+P` on MacOS) to open command panel
> Use `Ctrl+Shift+P` (`Command+Shift+P` on macOS) to open command panel
- After selecting and connecting to the controller, use `Screencap` button to obtain screenshots
- Use `Upload` button to manually upload images.
@@ -114,11 +114,11 @@ For MAA, the extension will maintain the models used automatically; you only nee
#### MaaFramework Log
Search and execute `Maa: open maa log` in the VSCode command panel to view the `maa.log` generated during debugging.
Search and execute `Maa: open maa log` in the VS Code command panel to view the `maa.log` generated during debugging.
#### Maa Pipeline Support Extension Log
Search and execute `Maa: open extension log` in the VSCode command panel to view the `mse.log` generated during debugging.
Search and execute `Maa: open extension log` in the VS Code command panel to view the `mse.log` generated during debugging.
### Bottom status bar

View File

@@ -11,6 +11,12 @@ This page is outdated and maybe still in Simplified Chinese. Translation is need
maa-cli 主要功能是通过调用 MaaCore自动化完成明日方舟的游戏任务。此外为了方便使用maa-cli 还提供了管理 MaaCore 的功能。
::: tip
对于使用 Windows 包管理器 (winget) 安装 maa-cli 的用户,以下命令中的 `maa` 需要替换为 `maa-cli`
:::
## 管理 MaaCore
maa-cli 可以安装和更新 MaaCore 及资源,只需运行以下命令:

View File

@@ -20,7 +20,7 @@ winget install "Microsoft.VCRedist.2015+.x64" --override "/repair /passive /nore
以下の<u>**2つ**</u>のランタイムライブラリを手動でダウンロードしてインストールして問題を解決してください。
- [Visual C++ 再頒布可能パッケージ](https://aka.ms/vs/17/release/vc_redist.x64.exe)
- [Visual C++ 再頒布可能パッケージ](https://aka.ms/vc14/vc_redist.x64.exe)
- [.NET デスクトップランタイム 10](https://aka.ms/dotnet/10.0/windowsdesktop-runtime-win-x64.exe)
:::
@@ -49,25 +49,9 @@ winget install "Microsoft.VCRedist.2015+.x64" --override "/repair /passive /nore
Windows N/KNヨーロッパ/韓国)の場合、[メディア機能パック](https://support.microsoft.com/ja-jp/topic/c1c6fffa-d052-8338-7a79-a4bb980a700a)をインストールする必要があります。
#### Windows 7 関連
#### Windows 7 / 8 / 8.1 関連
.NET 10 は Windows 7 / 8 / 8.1 システムをサポートしていないため<sup>[ソース](https://github.com/dotnet/core/issues/7556)</sup>、MAA も同様にサポートしていません。最後に利用可能な .NET 8 バージョンは [`v5.4.0-beta.1.d035.gd2e5001e7`](https://github.com/MaaAssistantArknights/MaaRelease/releases/tag/v5.4.0-beta.1.d035.gd2e5001e7) です。最後に利用可能な .NET 4.8 バージョンは [`v4.28.8`](https://github.com/MaaAssistantArknights/MaaAssistantArknights/releases/tag/v4.28.8) です。自己コンパイルの実現可能性はまだ確認されていません。
Windows 7 の場合、上記の 2 つのランタイムライブラリをインストールする前に、以下のパッチがインストールされているかどうかを確認する必要があります:
1. [Windows 7 Service Pack 1](https://support.microsoft.com/ja-jp/windows/windows-7-service-pack-1-sp1-%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B-b3da2c0f-cdb6-0572-8596-bab972897f61)
2. SHA-2 コード署名:
- KB4474419[ダウンロードリンク1](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/secu/2019/09/windows6.1-kb4474419-v3-x64_b5614c6cea5cb4e198717789633dca16308ef79c.msu)、[ダウンロードリンク2](http://download.windowsupdate.com/c/msdownload/update/software/secu/2019/09/windows6.1-kb4474419-v3-x64_b5614c6cea5cb4e198717789633dca16308ef79c.msu)
- KB4490628[ダウンロードリンク1](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/secu/2019/03/windows6.1-kb4490628-x64_d3de52d6987f7c8bdc2c015dca69eac96047c76e.msu)、[ダウンロードリンク2](http://download.windowsupdate.com/c/msdownload/update/software/secu/2019/03/windows6.1-kb4490628-x64_d3de52d6987f7c8bdc2c015dca69eac96047c76e.msu)
3. Platform Update for Windows 7DXGI 1.2、Direct3D 11.1KB2670838[ダウンロードリンク1](https://catalog.s.download.windowsupdate.com/msdownload/update/software/ftpk/2013/02/windows6.1-kb2670838-x64_9f667ff60e80b64cbed2774681302baeaf0fc6a6.msu)、[ダウンロードリンク2](http://download.windowsupdate.com/msdownload/update/software/ftpk/2013/02/windows6.1-kb2670838-x64_9f667ff60e80b64cbed2774681302baeaf0fc6a6.msu)
##### .NET 8 アプリケーションが Windows 7 で異常に動作する場合の緩和策 [#8238](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues/8238)
Windows 7 で .NET 8 アプリケーションを実行すると、メモリ使用量が異常になる問題があります。以下の緩和策を参照してください。Windows 8/8.1 はテストされていません。同じ問題がある場合は、ドキュメントを更新するために Issue を提出してください。
1. `コンピュータ` を開き、空白部分を右クリックしてプロパティをクリックし、左側の `システムの詳細設定` をクリックし、`環境変数` をクリックします。
2. 新しいシステム変数を作成し、変数名を `DOTNET_EnableWriteXorExecute`、変数値を `0` に設定します。
3. コンピュータを再起動します。
.NET 10 は Windows 7 / 8 / 8.1 システムをサポートしていないため<sup>[ソース](https://github.com/dotnet/core/issues/7556)</sup>、MAA も同様にサポートしていません。
#### 公式統合パック(確信)

View File

@@ -51,7 +51,7 @@ icon: hugeicons:brain-02
- 龍門市街LungmenDowntown@Annihilation
- サイドストーリー内の `OF-1` / `OF-F3` / `GT-5`
- 当期 SS イベントの後半 3 ステージ。自動で [API](https://api.maa.plus/MaaAssistantArknights/api/gui/StageActivity.json) から更新を取得後、画面下部に表示されます。
- 当期 SS イベントの後半 3 ステージ。自動で [API](https://api.maa.plus/MaaAssistantArknights/api/gui/StageActivityV2.json) から更新を取得後、画面下部に表示されます。
- 復刻 SS イベント。`SSReopen-<ステージ接頭辞>` を入力すると、XX-1 XX-9 を一括周回します(例:`SSReopen-IC`)。
::: details サンプル画面
@@ -70,22 +70,11 @@ icon: hugeicons:brain-02
代替ステージは当日の開放状況に応じて戦闘ステージを決定し、最初に開放されているステージを選びます。
これはスケジュールに近い機能であり、「ステージ選択に失敗したときの予備候補」にはなりません。
1. 例:ステージ選択が `龍門幣-6(CE-6)`代替が `1-7` `作戦記録-6(LS-6)` の場合:
- 当日に `龍門幣-6(CE-6)` が開放されていれば `龍門幣-6(CE-6)` に向かい、`1-7``作戦記録-6(LS-6)` には向かいません。この時点で `龍門幣-6(CE-6)` の自動指揮を解放していなければ、作戦タスクはエラーになります。
- 当日に `龍門幣-6(CE-6)` が開放されていなければ `1-7` に向かい、`龍門幣-6(CE-6)` には向かいません。この時点で `1-7` の自動指揮を解放していなければ、作戦タスクはエラーになります。
- `作戦記録-6(LS-6)` より前に常設の `1-7` が存在するため、この構成では MAA は `作戦記録-6(LS-6)` には決して向かいません。
2. ステージ選択が `殲滅作戦` の場合:
- 殲滅の結果にかかわらず、他の代替ステージの選択ロジックには影響しません。殲滅がエラーでも作戦タスクはエラーになりません。
- 残りの代替ステージは `理性剤使用数``連戦回数` の設定のみを継承し、`割る源石の数``周回数指定``素材の指定` の制御は受けません。
例:代替選択`龍門幣-6(CE-6)``1-7` `作戦記録-6(LS-6)` の場合:
### 余剰理性の消費
`作戦` タスク終了後に起動します。`理性剤使用数``割る源石の数``周回数指定``素材の指定``連戦回数` の制御は受けず、現在残っている理性を使い切った時点で終了します
- `ステージ` の理性不足後に、`余剰理性の消費` 用ステージで残りの“端数”理性を処理する用途に適します1-7 へ行く)。
- 連戦回数の設定が高すぎて理性が不足した場合に、自動で単発周回に切り替えて理性を使い切って締める用途にも適します1-7 を連戦 6 回に設定したが理性が 30 のため、自動的に連戦なしの 1-7 を 5 回に切り替え)。
- 残り理性がなお不足している場合(例:理性は 6 未満)にはタスクを終了します。
- `余剰理性の消費` で選んだステージが未開放の場合、作戦タスクはエラーになります。
- 当日に `龍門幣-6(CE-6)` が開放されていれば `龍門幣-6(CE-6)` に向かい、`1-7``作戦記録-6(LS-6)` には向かいません。この時点で `龍門幣-6(CE-6)` の自動指揮を解放していなければ、作戦タスクはエラーになります。
- 当日に `龍門幣-6(CE-6)` が開放されていなければ `1-7` に向かい、`龍門幣-6(CE-6)` には向かいません。この時点で `1-7` の自動指揮を解放していなければ、作戦タスクはエラーになります。
- `作戦記録-6(LS-6)` より前に常設の `1-7` が存在するため、この構成では MAA は `作戦記録-6(LS-6)` には決して向かいません
### 連戦回数
@@ -93,15 +82,14 @@ MAA はユーザーが設定した連戦回数に基づいて戦闘を行いま
- **AUTOモード**0
- ステージの最大連戦回数を自動認識し、理性が溢れない範囲で最大を維持
- 完了後は(設定していれば)`余剰理性の消費` フローへ移行
- **数値モード**16
- 設定した回数で連戦を実行
- 現在の理性で設定回数を満たせない場合5 回分しかないのに 6 回を設定)には、その時点で終了し(設定していれば)`余剰理性の消費` フローへ移行
- 現在の理性で設定回数を満たせない場合5 回分しかないのに 6 回を設定)には、その時点で終了し
- **切り替えない**-1
- ゲーム内の連戦回数設定を変更しません
- 現在のゲーム内設定回数を満たす理性が不足している場合は、その時点で終了し(設定していれば)`余剰理性の消費` フローへ移行
- 現在のゲーム内設定回数を満たす理性が不足している場合は、その時点で終了し
### 周回数指定

View File

@@ -18,7 +18,7 @@ icon: ic:baseline-article
- SoCの場合のみ、完全なステージ番号を入力する必要があります。例 `PR-A-1`
- `Annihilation`(殲滅作戦)。
- `OF-1` / `OF-F3` / `GT-5` のみサポートされます。
- 現在のSSイベントの最後の3つのステージ。 [API](https://api.maa.plus/MaaAssistantArknights/api/gui/StageActivity.json) で更新が自動的にダウンロードされた後、メイン画面に対応するメッセージが表示されます。
- 現在のSSイベントの最後の3つのステージ。 [API](https://api.maa.plus/MaaAssistantArknights/api/gui/StageActivityV2.json) で更新が自動的にダウンロードされた後、メイン画面に対応するメッセージが表示されます。
- 再刻印SSアクティビティは `SSReopen-XX` と入力するとXX-1XX-9ステージを一度にクリアできます。 `SSReopen-IC` など。
::: details 画面例

View File

@@ -20,7 +20,7 @@ JSONファイルはコメントをサポートしておらず、テキスト内
{
"name": "ソーンズ", // オペーレーター名
"skill": 3, // スキルID と範囲 [1, 3], オプション, 1 がデフォルト
"skill": 3, // スキルID と範囲 [0, 3], オプション, 1 がデフォルト
"skill_usage": 0, // スキルの使用, オプション, デフォルトは 0
// 0 - `パッシブ`

View File

@@ -12,16 +12,27 @@ JSONファイルはコメントをサポートしていません。テキスト
## ローグリソースの保存場所
- `resource/roguelike/` には、各ローグテーマに応じての運用リソースが格納されています
- テーマフォルダ: `Phantom/` はファントム、 `Mizuki/` はミヅキ `Sami/` はサーミ
- テーマフォルダ: `Phantom/` はファントム、 `Mizuki/` はミヅキ`Sami/` はサーミ`Sarkaz/` はサルカズ、`JieGarden/` は界園
- `autopilot/` には、各ステージの戦闘jsonが含まれます
- `ステージ名.json` ステージの戦闘ロジック
- `encounter.json/` 思わぬ遭遇イベントロジック
- `encounter/` 思わぬ遭遇イベントロジック
- `default.json` 経験値モード
- `deposit.json` 源石錐モード
- `recruitment.json` オペレーター招集ロジック
- `shopping.json` ストア購入ロジック
特に、 `Sami/` の下の `foldartal.json` は、サーミの暗号文板の使用ロジックを表す
- 特に、`Sami/` の下の
- `foldartal.json` はサーミの啓示板の使用ロジックを表す
- `collapsal_paradigms.json` はサーミのパラダイムロストの種類を表す
- `autopilot/ステージ名_collapse.json` ステージの戦闘ロジック(パラダイムロスト収集モード)
- `encounter/collapse.json` パラダイムロスト収集モードの思わぬ遭遇ロジック
- `Sarkaz/` の下の
- `fragments.json` はサルカズの思案の基本情報を保存
- `map.json` はサルカズの位置測定分隊のルーティング用テンプレート画像情報を保存
- `JieGarden/` の下の
- `coppers.json` は通宝の基本情報と拾取・交換ロジック
## ローグの始め--オペレーター招集
@@ -86,45 +97,89 @@ JSONファイルはコメントをサポートしていません。テキスト
1. 既存のグループの紹介
ファントムテーマを例に取ると:主にオペレーターを以下のように分類しています
サーミのテーマを例に取ると:主にオペレーターを以下のように分類しています
| グループ | 主な考慮事項 | 主に職種を含む | オペレーターの例 |
| :------------- | :----------------------------- | :----------------- | :----------------------------------------------------------------------------------------------- |
| **_地面阻挡_** | 場に立つことと雑魚を清掃 | 重装、前衛 | 庇護衛士、基石、ラ・プルマ、マウンテン、M3、リィンとシーンの召喚ユニット、スポット、重装予備隊員 |
| **_地面单切_** | 一人でエリートモンスターと戦う | 執行者-特殊 | スルト、血掟テキサス、キリンRヤトウ、M3、レッド |
| **_高台 C_** | 常態と決戦DPS | 狙撃、術師 | 遊龍チェン、ゴールデングロー、エイヤフィヤトラ、フィアメッタ |
| **_高台输出_** | 対空および通常DPS | 狙撃、術師 | アルケット、エクシア、クルース、スチュワード |
| **__** | 治療能力 | 医療、補助 | ケルシ、濁心スカジ、ハイビスカス、アンセル |
| **_回费_** | cost 回復 | 先鋒 | テンニンカ、イネス、フェン、バニラ |
| **_炮灰_** | 砲弾吸収、再配置 | 特殊、召喚ユニット | M3、レッド、テンニンカ、予備隊員 |
| **_高台预备_** | DPS能力を持っています | | オーキッド、予備隊員 |
| グループ | 主な考慮事項 | 主に職種を含む | オペレーターの例 |
| :---------------------- | :---------------------------------------- | :------------------------- | :----------------------------------------------------------------------------------------------- |
| **_地面阻挡_** | 場に立つことと雑魚を清掃 | 重装、前衛 | 庇護衛士、基石、ラ・プルマ、マウンテン、M3、リィンとシーンの召喚ユニット、スポット、重装予備隊員 |
| **_地面单切/執行者_** | 一人でエリート敵と戦う | 執行者-特殊 | スルト、血掟テキサス、キリンRヤトウ、M3、レッド |
| **_高台C_** | 常態と決戦DPS | 狙撃、術師 | ウィシャデル、ロゴス、遊龍チェン、ゴールデングロー |
| **_高台输出_** | 対空および通常DPS | 狙撃、術師 | アルケット、エクシア、クルース、スチュワード |
| **_速狙_** | 物理DPS、標準射程 | 狙撃 | Ela、エクシア、ケイパー、クルース |
| **_術師_** | 術DPS、標準射程 | 単体術師 | エイヤフィヤトラ、ロゴス、スチュワード |
| **_辅助_** | 後方1マスを攻撃可能 | 補助 | ヴィルトゥオーサ、スズラン、ケイパー、オーキッド |
| **_狙撃_** | 射程が長い高台 | 投擲手、破城射手 | ウィシャデル、ティフォン、ロサ |
| **_奶_** | 治療能力 | 医療、補助 | ケルシー、濁心スカジ、ハイビスカス、アンセル |
| **_単奶_** | 攻撃範囲縦深>=4 | 医療 | ケルシー、焔影リード、純燼エイヤフィヤトラ、ハイビスカス、アンセル |
| **_群奶_** | 攻撃範囲縦深<4、後方を治療可能 | 医療、補助 | ナイチンゲール、フィリオプシス、濁心スカジ |
| **_回费_** | COST 回復 | 先鋒 | テンニンカ、イネス、フェン、バニラ |
| **_地刺_** | ブロックなし、盾の前でDPSまたは減速を提供 | 潜伏者 | 帰溟スペクター、アスカロン、マンティコア |
| **_地面遠程_** | 地上長射程、盾の後ろでDPS可能 | 教官、領主 | ホルン、パラス、ソーンズ、シルバーアッシュ |
| **_領主_** | 地上攻撃範囲縦深>4、対空可能 | 要塞、領主 | ソーンズ、シルバーアッシュ、チューバイ |
| **_盾法_** | 攻撃範囲が短く、ある程度の耐久力がある | 法陣術師 | リン、カーネリアン |
| **_炮灰_** | 砲弾吸収、再配置 | 特殊、召喚ユニット | M3、レッド、テンニンカ、予備隊員 |
| **_大龍_** | 盾の前で耐久、近接ブロックで合体しやすい | 召喚ユニット | リィンの小龍、ジェシカの盾 |
| **_補給站_** | メインDPS オペレーターの回転を加速 | 召喚ユニット | 支援補給ステーション、工匠系オペレーターの召喚ユニット |
| **_無人機_** | 高台地上を無視する治療召喚ユニット | 召喚ユニット | スカジのシーボーン、サイレンスのドローン |
| **_支援陷阱_** | 地上に配置する爆発物 | 召喚ユニット | 壊れたスモークマシン、ミスターランブル |
| **_障碍物_** | 配置枠を使わず敵視を集めるかブロック | 召喚ユニット | 鳥籠、障害物 |
| **_其他地面_** | 優先使用したくない地上 | 押引、ブロック1先鋒、剣豪 | バグパイプ、クロワッサン |
| **_高台预备/其他高台_** | 優先使用したくない高台 | 拡散術師、連鎖術師、戦術家 | オーキッド、予備隊員 |
::: tip
地面阻挡は主にオペレーターの防御総合能力を考慮します(時には全滅させることも防御力が強い表現ですね)、地面遠程と領主グループを含みます
奶は主に総合治療能力を考慮し、単奶と群奶を含みます。攻撃範囲カバーを考慮する必要がある場合は、単奶4マス治療または群奶後方治療を単独で使用します
高台输出は出力能力のみを考慮し、主に狙撃と術師職業の混合順序です。出力タイプ、攻撃範囲などの制限条件を考慮する必要がある場合は、速狙、術師、辅助、盾法を単独で使用します
罠タイプの召喚ユニットは数が多いため、支援陷阱グループに入れず、MAAに自動配置させた方が効果的です
:::
2. 特別な操作が必要なグループ
上記のような一般的なグループ以外に、時折、特定のオペレーターやオペレーターの種類に対して細かいカスタマイズが必要な場合があります。例えば
| グループ | 含まれるオペレーター | 主な特徴 |
| :--------- | :--------------------------- | :------------------------------------------------------------------------------------------------------------------ |
| 棘刺 | ソーンズ、ホルン | 地上遠隔攻撃、特定の位置に非常に適したマップがあります |
| 召唤类 | ケルシ、リィン、シーン | 地上ブロックを持ち、一部のマップでは優先的に配置する必要があり、召喚物はブロックまたは死体として使用できます |
| 情报官 | カンタービレ、イネス | コスト回収やサイドアウトプット、シングルカットが可能 |
| 浊心斯卡蒂 | 濁心スカジ | 低圧時の回復量はまあまあですが、範囲が特殊で、一部のマップには特に適しています |
| 焰苇 | 焔影リード | サーミローグはよく開局オペレーターを使い、治療と輸出を兼ねており、いくつかの図には比較的適切な位置がある |
| 银灰 | シルバーアッシュ、ムリナール | 地上の大規模な戦闘出力、ボスに対して配置できます |
| 史尔特尔 | スルト | 精二後、3スキルを固定搭載するため、この時点でのスタンバイ能力はほぼゼロで、ブロック位置の配置優先度は非常に低いです |
| 骰子 | ダイス | ミヅキテーマの中のダイスは個別に操作する必要があります |
| グループ | 含まれるオペレーター | 主な特徴 |
| :--------- | :--------------------------- | :-------------------------------------------------------------------------------------------------------------- |
| 益达 | ウィシャデル | 高台DPS、優先配置でプレッシャーを軽減できます |
| 棘刺 | ソーンズ、ホルン | 地上遠隔攻撃、ファントムテーマでは特定の位置に非常に適したマップがあります |
| 召唤类 | ケルシ、リィン、シーン | 地上ブロックを持ち、一部のマップでは優先的に配置する必要があり、召喚物はブロックまたは死体として使用できます |
| 情报官 | カンタービレ、イネス | コスト回収やサイドアウトプット、シングルカットが可能 |
| 浊心斯卡蒂 | 濁心スカジ | 低圧時の回復量はまあまあですが、範囲が特殊で、一部のマップには特に適しています |
| 焰苇 | 焔影リード | サーミローグでよく使う開局オペレーター、治療と輸出を兼ねており、一部のマップには比較的適切な位置があります |
| 玛恩纳 | ムリナール、シルバーアッシュ | 地上の大規模な決戦DPS、ボスに対して配置できます |
| 史尔特尔 | スルト | 精二後、3スキルを固定搭載するため、この時点での場持ち能力はほぼゼロで、ブロック位置の配置優先度は非常に低いです |
| 骰子 | ダイス | ミヅキテーマの中のダイスは個別に操作する必要があります |
::: info 注意
現在、識別されていない近距離オペレーターは最後から2番目のグループ其他地面に分類され、識別されていない遠距離オペレーターは最後から1番目のグループ其他高台に分類されます
:::
::: tip
新しく実装されたオペレーターは、それぞれのローグライクの `recruitment.json` に手動で追加する必要があります。開発者が対応を忘れることもあります。
もし気づいた場合は、issue を送って開発者に知らせることもできますし、直接 PR を送ることもできます。
:::
### 預設陣容--陣容完備檢測
あなたがクリアできるか、高層まで進むことが期待されるチームの中で、どのオペレーターが基本的なコアメンバーに属していますか?欠かせないものは何ですか?
::: info 注意
現在のスクリプトの勧誘ロジックは、陣容が完全でない限り、0希望とkeyオペレーターだけを勧誘し、希望を高星のkeyオペレーターに渡します
現在のスクリプトの招集ロジックは、陣容が完全でない限り、0希望とkeyオペレーターだけを招集し、希望を高星のkeyオペレーターに渡します
現在の実装方法は、高レア度オペレーターと★3オペレーターを手動でキーオペレーターとしてマークし、募集時にはキーオペレーターのみを募集するTODO: 0希望のオペレーターを識別する
したがって、完全度の数字を高く設定しないようにし、必要なすべてのオペレーターの数基本的なコアメンバーを合計して、4〜8人にしてください
チームが陣容の完全度テストをクリアした後、招集券を入手するたびにオペレーターの募集と昇進優先度に基づいて採用されるため、希望を無駄にしないために、採用を望まないオペレーターは評価を設定したり、同じ職業の★3と予備隊員の評価を下回ったりする
(絶対に必要でないオペレーターには特別な高得点と低得点が与えられます。 `Sami``止颂` を参照)
戦闘陣容を形成する際、オペレーター選択画面のデフォルトソート(上から下、左から右へ)が読み取られ、秩序正しく保存されます
この順序に基づき、最初に陣容完全性を満たすオペレーターは、すべての陣容完全性を満たすか、陣容完全性を満たすオペレーターがいないまで相対的な順序で言及されます
次に予備隊員を一番最後に移動させ、新しい順序を形成し、新しい順序で選択します
特に、六つ星の臨時招集オペレーターはデフォルトで編成の先頭に配置されているため、実際の編成に六つ星の臨時招集オペレーターを簡単に組み込むことができますTODO使いならないE1臨時招集オペレーターは除外
新しいアカウントについてキーオペレーターの半チームの要件を満たさない10件の招集の場合、完全性テストは中止され、スコアに応じて使用されます。つまり、3つ星を育成していない新しい人数は2つか3つの6つ星のみを得られ、残りは多くの予備オペレーターを使います
:::
```json
@@ -149,16 +204,34 @@ JSONファイルはコメントをサポートしていません。テキスト
],
"threshold": 2
},
{
"groups": [
"奶" //ここでは、回復役が1名必要であることを示しています
],
"threshold": 1
}
...
]
}
```
::: caution
あるオペレーターが複数のオペレーターグループに所属している場合、カウントは一度だけ行われます。
例えば、オペレーター `棘刺` はオペレーターグループ `棘刺``地面阻挡` の両方に所属している可能性がありますが、この戦略グループ内ではオペレーター `棘刺` は一度だけカウントされます。
しかし、それぞれの戦略グループでは別々にカウントされます。
例えば、オペレーター `焰影苇草` はオペレーターグループ `高台输出``奶` の両方に所属している可能性があり、この場合、両方の戦略グループでオペレーター `焰影苇草` がカウントされます。
:::
### オペレーター募集パラメータの調整
1. グループ内の順序は配置検出の優先度を表します
2. グループ内のオペレーターの各フィールドの意味とスクリプト関連のロジック
2. 臨時募集オペレーターは、既存の優先度に600ポイントが加算されます
3. ランダム昇進オペレーターの評価は、募集優先度と精二優先度を合計して計算されます
4. グループ内のオペレーターの各フィールドの意味とスクリプト関連のロジック
```json
{
@@ -178,15 +251,16 @@ JSONファイルはコメントをサポートしていません。テキスト
"alternate_skill_times": 1, // 代替スキルのスキル使用回数(このフィールドはまだ実装されていません)
"recruit_priority": 900, // 募集優先度、数字が大きいほど優先度が高くなり、900以上は必ず募集することを示し、400以下は一部の重要なオペレーターのE2優先度よりも低い
// 臨時オペレーターの募集優先度は自動的に+800
"promote_priority": 600, // 昇優先度、数字が大きいほど優先度が高くなり、900以上はE2を取得する可能性があり、400以下は普通の3星オペレーターの募集優先度よりも低い
"promote_priority": 600, // 昇優先度、数字が大きいほど優先度が高くなり、900以上はE2を取得する可能性があり、400以下は普通の3星オペレーターの募集優先度よりも低い
// Tips: 募集優先度を下げたり書かないで精英度を高めると、実際にはこれらのオペレーターのE2優先度を高めています
"is_key": true, // true はキーオペレーター、false または省略すると非キーオペレーターです。陣形完全性チェックに合格しない場合、キーオペレーターおよび0希望オペレーターのみを募集し、希望を保存します。
"is_start": true, // true は開幕選択オペレーター、false または省略すると非開幕選択オペレーターです。チームに start オペレーターがいない場合、start オペレーターおよび0希望オペレーターのみを募集し、ユーザーが入力したオペレーターは強制的に start オペレーターになります
"auto_retreat": 0, // 配置後何秒で自動撤退するか、整数で、0 より大きい場合に有効です、主に特殊オペレーターや投錨に使用されます、肉鳩は通常2倍速ですので、スキルの持続時間/2 に設定することをお勧めします
"promote_priority_when_team_full": 850,
"recruit_priority_when_team_full": 850, // 個別に設定する必要はなく、編成が整ったときの募集の優先度は、デフォルトで-100となります
"promote_priority_when_team_full": 850, // 個別に設定する必要はなく、編成が整った時、昇進の優先度はデフォルトで精二優先度300
"recruit_priority_offsets": [ // 現在の陣形に応じた募集優先度の調整
{
"groups": [ // 条件を満たすためにどのグループが必要か
"groups": [ // 条件を満たすためにどのグループが必要か。これらのグループには同じオペレーターが重複して出ないようにしてください。そうしないと、重複してカウントされます。
"凯尔希",
"地面阻挡",
"棘刺"
@@ -207,7 +281,13 @@ JSONファイルはコメントをサポートしていません。テキスト
}
```
3. あなたの理解に基づいて新しいグループとオペレーターを追加してください
::: info 注意
`recruit_priority_offsets`の`group`内のグループに重複するオペレーターがいないようにしてください。
`auto_retreat`を設定した場合、通常は作戦計画で改めて`retreat_plan`を設定する必要はありません。
:::
5. あなたの理解に基づいて新しいグループとオペレーターを追加してください
新しいグループを追加すると、既存のグループからオペレーターをコピーして、エキスパートの評価を参考にして、それを基に変更できます
@@ -420,6 +500,12 @@ JSONファイルはコメントをサポートしていません。テキスト
],
```
::: info 注意
maaが現在のステージに対応するカスタム作戦を見つけられない場合、自動的に汎用作戦を実行します。
maaが現在のステージ名を認識できない場合、作戦のロジックは一切実行されません。
:::
### 特定のオペレーターの戦術に特別な理解がありますか?- 特定のオペレーターに対する高度な操作
このオペレーターを単独でグループ化してください。
@@ -442,7 +528,9 @@ JSONファイルはコメントをサポートしていません。テキスト
OCRで思わぬ遭遇イベントを認識しますが、選択肢は固定された位置を操作します
時間が認識されない場合、最も下の選択肢を選択します
事件が認識されない場合、最も下の選択肢を選択します
よくあるフリーズの原因の一つは、オプションタイプのアイコンは存在するのにオプションが選択できないことですTODO
通常、微調整するか調整しないことが必要です(高手はすでに書いているでしょう)
@@ -524,13 +612,27 @@ OCRで思わぬ遭遇イベントを認識しますが、選択肢は固定さ
"effect": "立即进阶两个干员(不消耗希望)",
"No": 15
},
...
{
"name": "警戒篱木",
"effect": "坍缩值-2目标生命上限+2",
"No": 198,
"decrease_collapse": true // trueは、このコレクションを入手すると崩壊値が下がることを示します。modeが5の場合は購入されません。
},
...
"others": // maaは購入しないコレクション品、例えばエンディングコレクションやクレーン
{
"name": "无人起重机"
},
```
## 個別のローグテーマ カスタムロジック
### サーミテーマ--密文
### サーミテーマ--啓示
`resource/roguelike/Sami/foldartal.json` はサーミテーマの密文板の戦術を記述しています。
`resource/roguelike/Sami/foldartal.json` はサーミテーマの啓示板の戦術を記述しています。
```json
{
@@ -568,17 +670,151 @@ OCRで思わぬ遭遇イベントを認識しますが、選択肢は固定さ
...
}
],
"foldartal": [ //密文板の効果の注釈(ここでは、板の効果を参照用に記述し、プログラムの実行には影響しません)
"foldartal": [ //啓示板の効果の注釈(ここでは、板の効果を参照用に記述し、プログラムの実行には影響しません)
{
"name": "布局", //密文板の種類(上板か下板か)
"name": "布局", //啓示板の種類(上板か下板か)
"foldartal": [
{
"name": "黜人", //密文板の名前
"effect": "选择所有右侧邻近的战斗节点" //密文板の効果
"name": "黜人", //啓示板の名前
"effect": "选择所有右侧邻近的战斗节点" //啓示板の効果
},
```
### サーミテーマ--パラダイムロスト
`check_collapsal_paradigms`が`true`の場合、MAAは2つの異なる方法でパラダイムロストをチェックします
- ステージ選択画面で画面上中央をクリックして崩壊状態バーを展開する、以下Panel Checkと呼ぶ
- 画面右側にパラダイムロスト通知があるかどうかを観察する、以下Banner Checkと呼ぶ
崩壊値を取得する方法は多様で、以下の状況を考慮しています:
1. 戦闘後、完璧な戦闘でないため崩壊値が増加し、Banner Checkを実行
2. 戦闘後、秘宝を獲得したため崩壊値が変動し、Banner Checkを実行
3. 思わぬ遭遇などのードで選択肢を選んだため崩壊値が変動し、Banner Checkを実行
4. 怪しい旅商人ードで秘宝を購入したため崩壊値が変動し、Banner Checkを実行
5. 啓示板を使用したため崩壊値が減少し、Banner Checkを実行
6. 新しい層に入ったため崩壊値が増加し、Panel Checkを実行
7. Banner Check時にパラダイムロストが消退したことを発見した場合、一度に2層消退するかどうか不明なため可能性は極めて低い、次回ステージ選択画面に戻った時に追加でPanel Checkを実行
8. `double_check_collapsal_paradigms`が`true`の場合、ステージ選択画面に戻るたびに追加でPanel Checkを実行し、パラダイムロストの記録漏れや記録過剰がないか検証
以下は隠しパラダイムロストを収集するタスク設定例です:
```json5
{
"theme": "Sami",
"mode": 5,
"investment_enabled": false,
"squad": "远程战术分队",
"roles": "稳扎稳打",
"core_char": "维什戴尔",
"expected_collapsal_paradigms": ["目空一些", "睁眼瞎", "图像损坏", "一抹黑"]
}
```
`mode`が`5`の場合:
- `stage_name`が`ステージ名_collapse`の作戦戦略を優先使用、例:`resource/roguelike/Sami/autopilot/事不过四_collapse.json`
- `resource/roguelike/Sami/encounter/collapse.json`に記述された思わぬ遭遇イベント選択の戦略を使用
- `decrease_collapse`が`true`の秘宝は購入しません
`mode`が`5`でないが`check_collapsal_paradigms`が`true`の場合、パラダイムロストを検出し、`expected_collapsal_paradigms`リストにあるパラダイムロストに遭遇した時にタスクを停止しますが、他のパラダイムロストに遭遇した時は再開しません。
隠しパラダイムロストを収集する場合、N10難易度を推奨し、以下のチームの使用を推奨します
- ウィシャデル + スポット + スチュワード
- 焔影リード + オーキッド + ポプカル
- ティフォン + スポット + スチュワード
### 界園テーマ--通宝
`resource/roguelike/JieGarden/coppers.json` は界園テーマの通宝の設定と交換戦略を記述しています
```json5
{
"theme": "JieGarden", // テーマ名(ここは界園)
"addons": { // 通宝の追加属性説明(備考のみ、プログラム実行に影響なし)
"锈色": "投出时,每经过一个节点,获得源石锭+1",
"存护": "加入钱盒时,获得护盾值+2",
"入幻": "加入钱盒时,获得希望+1",
"引光": "加入钱盒时,获得烛火+1",
"巡游": "投出时,每完成一场战斗,获得票券+1"
},
"coppers": [ // 通宝リスト
{
"name": "大炎通宝", // 通宝名
"desc": "普通又空白,什么也没有", // 通宝効果説明(備考のみ、プログラム実行に影響なし)
"rarity": "NORMAL", // レアリティNONE/NORMAL/RARE/SUPER_RARE備考のみ、プログラム実行に影響なし
"pickup_priority": 0, // 拾取優先度、ドロップ選択時に使用、数値が大きいほど優先的に拾取
"discard_priority": 1000 // 廃棄優先度、交換時に使用、数値が大きいほど優先的に廃棄
},
{
"name": "衡-奇土生金",
"desc": "投出时,立即获得源石锭+4下次投钱前变化为-大炎通宝)",
"rarity": "NORMAL",
"pickup_priority": 200,
"discard_priority": 800,
"cast_discard_priority": 999 // オプションフィールド、投出時の廃棄優先度、投出済みかつ値>=0の場合のみdiscard_priorityを置換
// 通常、投出後に効果が変化する通宝に適用(大炎通宝に変化する通宝など)
},
{
"name": "厉-西廉贞",
"desc": "投出时,精英及领袖敌人的生命值、攻击力+10%,在险路恶敌及岁兽残识中攻击力、生命值额外+20",
"rarity": "NORMAL",
"pickup_priority": 0,
"discard_priority": 1998,
"cast_discard_priority": 2098 // 同上、投出後にマイナス効果をもたらす通宝にも使用されることがあります
},
...
]
}
```
#### 通宝交換ロジック
MAAは界園テーマで通宝の拾取と交換を自動処理します
::: tip 有効条件
通宝交換機能は以下のモードでのみ有効:
- 投資モード「投資モードで購買、募集、2層進出を有効化」オプションを有効にする必要があります
- その他のモード:デフォルトで有効
:::
1. **ドロップ通宝の拾取**戦闘終了後、通宝ドロップ選択画面が表示された場合、MAAは `pickup_priority` に基づいて最も優先度の高い通宝を選択
2. **銭匣通宝の交換**:新しく拾った通宝を銭匣内の通宝と交換する必要がある場合:
- 銭匣内のすべての通宝の種類、名前、投出済み状態を認識
- 銭匣内で `discard_priority` が最も高い(最も重要度が低い)通宝を見つける
- 新しい通宝の `discard_priority` が既存の最も重要度が低い通宝より低い場合、交換を放棄
- それ以外の場合、最も重要度が低い通宝を新しい通宝に置換
3. **投出済み通宝の特殊処理**
- `cast_discard_priority` が指定された通宝の場合、投出済み状態では `discard_priority` ではなくこの優先度を使用
- 通常、投出後に効果が変化する通宝に適用(大炎通宝に変化する通宝など)
#### 通宝認識メカニズム
MAAは以下の方法で通宝を認識・処理します
1. テンプレートマッチングで通宝の種類アイコン(厲/衡/花)を認識
2. 種類アイコンの位置に基づき、ROIオフセットを使用してOCRで通宝名を認識
3. 通宝が「投出済み」状態かどうかを認識
4. 通宝交換画面でリストを自動スクロールし、すべての通宝をスキャンして比較
#### 認識フロー図解
![image](/images/zh-cn/copper-explanation-1.png)
![image](/images/zh-cn/copper-explanation-2.png)
::: info 注意
- OCR認識した通宝名が設定ファイルに見つからない場合、MAAはデバッグ画像を`debug/roguelike/coppers/unknown`ディレクトリに保存し、トラブルシューティングに使用します
:::
## 実現したいロジックtodo
### 自動編成ロジック

File diff suppressed because it is too large Load Diff

View File

@@ -338,14 +338,14 @@ default:
## 式の計算
| 記号 | 意味 | 例 |
| :---------: | :-----------------------------------------------------------------------------------------: | :------------------------------------: |
| `@` | テンプレートタスク | `Fight@ReturnTo` |
| `#`(単項) | 仮想タスク | `#self` |
| `#`(二項) | 仮想タスク | `StartUpThemes#next` |
| `*` | タスクの繰り返し | `(ClickCornerAfterPRTS+ClickCorner)*5` |
| `+` | タスクリストの結合next の一連のプロパティで同じ名前を持つ最初のタスクのみが保持されます) | `A+B` |
| `^` | タスクリストの差分(前者にあり、後者にないもので、順序は変わらない) | `(A+A+B+C)^(A+B+D)` (= `C`) |
| 記号 | 意味 | 例 |
| :---------: | :-----------------------------------------------------------------------------------------: | :-------------------------------------: |
| `@` | テンプレートタスク | `Fight@ReturnTo` |
| `#`(単項) | 仮想タスク | `#self` |
| `#`(二項) | 仮想タスク | `StartUpThemes#next` |
| `*` | タスクの繰り返し | `(ClickCornerAfterPRTS+ClickCorner)*10` |
| `+` | タスクリストの結合next の一連のプロパティで同じ名前を持つ最初のタスクのみが保持されます) | `A+B` |
| `^` | タスクリストの差分(前者にあり、後者にないもので、順序は変わらない) | `(A+A+B+C)^(A+B+D)` (= `C`) |
演算子 `@`、`#`、`*`、`+`、`^` には優先順位があります: `#`(単項)> `@` = `#`(二項)> `*` > `+` = `^`。

View File

@@ -5,7 +5,7 @@ icon: devicon-plain:githubactions
# CI 시스템 해석
MAA는 Github Action을 활용하여 웹사이트 구축, 자동 리소스 업데이트, 최종 파일 빌드 및 릴리즈 등 대량의 자동화 작업을 완성했습니다. 시간이 지나면서 이러한 CI들은 점차 중첩되기 시작했고, 일부는 다른 저장소로 연결되기도 했습니다. 본 문서는 MAA의 CI 시스템을 개선하고자 하는 분들에게 간단한 소개를 제공하는 것을 목표로 합니다.
MAA는 GitHub Action을 활용하여 웹사이트 구축, 자동 리소스 업데이트, 최종 파일 빌드 및 릴리즈 등 대량의 자동화 작업을 완성했습니다. 시간이 지나면서 이러한 CI들은 점차 중첩되기 시작했고, 일부는 다른 저장소로 연결되기도 했습니다. 본 문서는 MAA의 CI 시스템을 개선하고자 하는 분들에게 간단한 소개를 제공하는 것을 목표로 합니다.
본 문서를 읽기 전에 MAA의 프로젝트 구조와 구성에 대한 기본적인 개념을 갖고 있는 것이 좋습니다.
@@ -42,7 +42,7 @@ MAA는 Github Action을 활용하여 웹사이트 구축, 자동 리소스 업
이 워크플로우는 코드의 전체 빌드 작업을 담당하며, MAA의 모든 구성 요소를 포함합니다. 빌드 결과물은 실행 가능한 MAA입니다.
필수적인 MaaCore 외에, Windows 빌드 결과물에는 MaaWpfGui가, MacOS 빌드 결과물에는 MaaMacGui가, Linux 빌드 결과물에는 MaaCLI가 포함됩니다.
필수적인 MaaCore 외에, Windows 빌드 결과물에는 MaaWpfGui가, macOS 빌드 결과물에는 MaaMacGui가, Linux 빌드 결과물에는 MaaCLI가 포함됩니다.
이 워크플로우는 새로운 Commit이나 PR이 발생할 때마다 자동으로 실행되며, 릴리즈 PR에 의해 트리거될 때는 이번 빌드 결과물이 직접 릴리즈에 사용되고 Release가 생성됩니다.

View File

@@ -63,19 +63,24 @@ icon: iconoir:developer
```
5. 개발 환경 구성
- `CMake` 다운로드 및 설치
- Visual Studio 2026 Community 설치 시 `C++ 데스크톱 개발` 및 `.NET 데스크톱 개발` 필수 선택
6. cmake 프로젝트 구성 실행
```cmd
mkdir -p build
cmake -G "Visual Studio 18 2026" -B build -DBUILD_WPF_GUI=ON -DBUILD_DEBUG_DEMO=ON
cmake --preset windows-x64
```
7. `build/MAA.sln` 파일을 더블 클릭하여 엽니다. Visual Studio가 자동으로 전체 프로젝트를 로드합니다.
7. `build/MAA.slnx` 파일을 더블 클릭하여 엽니다. Visual Studio가 자동으로 전체 프로젝트를 로드합니다.
8. VS 설정
- 상단 구성에서 RelWithDebInfo x64 선택 (릴리스 빌드/ARM 플랫폼 시 생략)
- MaaWpfGui 우클릭 → 속성 → 디버그 → 네이티브 디버깅 활성화 (C++ 코어 중단점 사용 가능)
- 상단 구성에서 `Debug` `x64` 선택
- `MaaWpfGui` 우클릭 → 시작 프로젝트로 설정
- F5 키를 눌러 실행
::: tip
Win32Controller(Windows 창 제어) 관련 기능을 디버깅하려면 [MaaFramework Releases](https://github.com/MaaXYZ/MaaFramework/releases)에서 해당 플랫폼 압축 파일을 다운로드하고, `bin` 디렉토리의 `MaaWin32ControlUnit.dll`을 MAA DLL과 같은 디렉토리(예: `build/bin/Debug`)에 배치해야 합니다. 자동 다운로드 스크립트 PR 환영!
:::
9. 이제 자유롭게 ~~개조~~ 개발 시작!
10. 주기적 커밋 (메시지 필수 작성)
@@ -120,12 +125,46 @@ icon: iconoir:developer
git merge
```
4. 단계 7, 8, 9, 10 반복 수행
4. 단계 8, 9, 10, 11 반복 수행
::: tip
Visual Studio 실행 시 Git 작업은 "Git 변경" 탭에서 명령어 없이 처리 가능
:::
## VSCode로 개발하기 (선택 사항)
::: warning
**Visual Studio를 사용한 개발을 권장합니다.** MAA 프로젝트는 주로 Visual Studio를 기반으로 구축되며, 위의 완전한 환경 설정 과정이 모든 개발 요구를 충족하여 최상의 즉시 사용 가능한 경험을 제공합니다. VS Code 워크플로는 VS Code + CMake + clangd에 이미 익숙한 개발자를 위한 대안으로만 제공되며, 설정 난이도가 상대적으로 높습니다.
:::
VSCode를 선호한다면 CMake, clangd 등의 확장을 사용해 코드 완성, 탐색, 디버깅을 할 수 있습니다. 위 16단계(클론, 의존성, CMake 설정)를 완료한 후 다음 단계로 설정하세요.
### 추천 확장
VS Code Marketplace에서 설치:
| 확장 | 용도 |
| --------------------------------------------------------------------------------------------------- | --------------------------------------------------------- |
| [CMake Tools](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cmake-tools) | CMake 설정, 빌드, 디버깅 통합 |
| [clangd](https://marketplace.visualstudio.com/items?itemName=llvm-vs-code-extensions.vscode-clangd) | C++ IntelliSense, 코드 탐색, 진단 (LSP 기반) |
| [C/C++](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) | C++ 프로그램 디버깅 (CMake Tools 또는 launch.json과 연동) |
::: tip
clangd 사용 시 C/C++ 확장의 IntelliSense를 비활성화(`C_Cpp.intelliSenseEngine`을 `disabled`로 설정)하는 것을 권장합니다. 충돌을 피하기 위함입니다.
:::
### 설정 단계
1. VSCode에서 프로젝트 루트 열기
2. **CMake Tools**: 상태 표시줄에서 Configure Preset(예: `windows-x64`, `linux-x64`) 선택 후 Build Preset으로 빌드 실행
3. **clangd**: Windows에서 MSVC 사용 시 `compile_commands.json` 없이도 clangd로 개발 가능. Linux/macOS에서는 프리셋에서 `CMAKE_EXPORT_COMPILE_COMMANDS`가 활성화되어 clangd가 `build/compile_commands.json`을 자동 사용
4. **디버깅**: 프로젝트에 `.vscode/launch.json`이 포함되어 MaaWpfGui 또는 Debug Demo를 바로 실행 가능
### 빌드 및 디버깅 단축키
- **빌드**: `Ctrl+Shift+B` 또는 CMake Tools 상태 표시줄
- **디버깅**: F5 또는 Run and Debug 패널에서 구성 선택
## MAA 파일의 포매팅 요구 사항
MAA는 리포지토리의 코드 및 리소스 파일들을 아름답고 일관적으로 유지하기 위해 일련의 포매팅 도구를 사용합니다.
@@ -137,7 +176,7 @@ MAA는 리포지토리의 코드 및 리소스 파일들을 아름답고 일관
| 파일 유형 | 포매팅 도구 |
| --------- | --------------------------------------------------------------- |
| C++ | [clang-format](https://clang.llvm.org/docs/ClangFormat.html) |
| Json/Yaml | [Prettier](https://prettier.io/) |
| JSON/YAML | [Prettier](https://prettier.io/) |
| Markdown | [markdownlint](https://github.com/DavidAnson/markdownlint-cli2) |
### Pre-commit Hooks를 사용하여 자동 포매팅을 활성화

View File

@@ -29,7 +29,7 @@ icon: jam:write-f
:::
```
또는 Github 스타일 구문 사용:
또는 GitHub 스타일 구문 사용:
```markdown
> [!컨테이너 타입]

View File

@@ -162,4 +162,4 @@ ROI 범위를 수정하는 방법:
## 변경사항 제출
[Github Pull Request 가이드](./pr-tutorial.md)를 참고하세요!
[GitHub Pull Request 가이드](./pr-tutorial.md)를 참고하세요!

View File

@@ -9,7 +9,7 @@ icon: mingcute:git-pull-request-fill
::: warning
이 가이드는 많은 개념을 단순화하여 더 많은 사람들이 실제로 사용할 수 있도록 설계되었습니다. 때로는 꽤 불안불안한 ~~하지만 간단한~~ 조치들과 약간 부정확한 설명이 있을 수 있으므로 전문가 분들의 이해를 부탁드립니다.
만약 Git 사용 경험이 있고 프로그래밍 기초 지식을 가지고 계시다면 ~~그럼 당신은 왜 보고 있나요🔨~~, 약간 더 발전된 가이드인 [Github Pull Request 진행과정](./development.md#완전한-환경-설정-windows)을 확인해주세요.
만약 Git 사용 경험이 있고 프로그래밍 기초 지식을 가지고 계시다면 ~~그럼 당신은 왜 보고 있나요🔨~~, 약간 더 발전된 가이드인 [GitHub Pull Request 진행과정](./development.md#완전한-환경-설정-windows)을 확인해주세요.
:::
## 기본 개념 및 용어 설명

View File

@@ -3,7 +3,7 @@ order: 8
icon: iconoir:code-brackets
---
# 전용 VSCode 확장 프로그램 가이드
# 전용 VS Code 확장 프로그램 가이드
이 확장 프로그램은 MaaAssistantArknights/MaaFramework에 대해 다음과 같은 기능들을 포함한 편리한 개발 기능들을 제공합니다:
@@ -14,7 +14,7 @@ icon: iconoir:code-brackets
## 설치
VSCode 확장 프로그램 목록에서 `Maa`를 검색하여 직접 설치하는 것을 권장합니다.
VS Code 확장 프로그램 목록에서 `Maa`를 검색하여 직접 설치하는 것을 권장합니다.
::: tip
처음 사용할 때 확장 프로그램은 사전 설정된 버전의 리소스를 자동으로 다운로드합니다.
@@ -90,7 +90,7 @@ VSCode 확장 프로그램 목록에서 `Maa`를 검색하여 직접 설치하
### 스크린샷 캡처 및 자르기 / 빠른 인식
VSCode 명령 팔레트에서 `Maa: 스크린샷 도구 열기(Maa: open crop tool)`를 검색하고 실행하여 `스크린샷 / 자르기(Screenshots / Crop)` 패널을 열 수 있습니다.
VS Code 명령 팔레트에서 `Maa: 스크린샷 도구 열기(Maa: open crop tool)`를 검색하고 실행하여 `스크린샷 / 자르기(Screenshots / Crop)` 패널을 열 수 있습니다.
> `Ctrl+Shift+P` (MacOS의 경우 `Command+Shift+P`)를 사용하여 명령 팔레트를 엽니다.
@@ -114,11 +114,11 @@ MAA의 경우, 확장 프로그램에서 사용되는 모델을 자동으로 관
#### MaaFramework 로그
VSCode 명령 팔레트에서 `Maa: maa 로그 열기(Maa: open maa log)`를 검색하고 실행하여 디버깅 중에 생성된 `maa.log` 로그를 볼 수 있습니다.
VS Code 명령 팔레트에서 `Maa: maa 로그 열기(Maa: open maa log)`를 검색하고 실행하여 디버깅 중에 생성된 `maa.log` 로그를 볼 수 있습니다.
#### Maa Pipeline Support 확장 로그
VSCode 명령 팔레트에서 `Maa: 확장 로그 열기(Maa: open extension log)`를 검색하고 실행하여 디버깅 중에 생성된 `mse.log` 로그를 볼 수 있습니다.
VS Code 명령 팔레트에서 `Maa: 확장 로그 열기(Maa: open extension log)`를 검색하고 실행하여 디버깅 중에 생성된 `mse.log` 로그를 볼 수 있습니다.
### 하단 상태 표시줄

View File

@@ -335,7 +335,7 @@ address = "127.0.0.1:7777" # 필요 시 사전 설정된 주소를 재정의할
#### 특수 프리셋
현재 `PlayCover (MacOS)`, `Waydroid (Linux)` 두 가지 특수 프리셋이 사전 구성되어 있습니다.
현재 `PlayCover (macOS)`, `Waydroid (Linux)` 두 가지 특수 프리셋이 사전 구성되어 있습니다.
- `PlayCover`는 macOS에서 `PlayCover`를 통해 네이티브로 실행되는 게임 클라이언트에 연결하는 데 사용됩니다. 이 경우 `adb_path`를 지정할 필요가 없으며, `address``adb` 연결 주소가 아닌 `PlayTools`의 주소입니다. 자세한 내용은 [PlayCover 지원 문서][playcover-doc]를 참고하세요.

View File

@@ -99,7 +99,7 @@ nix run github:Cryolitia/nur-packages#maa-cli-nightly
:::
안정 버전은 [nixpkgs](https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/by-name/ma/maa-cli/package.nix)에 패키징되어 있으며, `nixpkgs`의 Rust 툴체인을 사용합니다. 나이틀리 빌드는 [NUR](https://github.com/Cryolitia/nur-packages/blob/master/pkgs/maa-assistant-arknights/maa-cli.nix)에 있으며, 베타 채널의 Rust 툴체인을 사용하며 Github Action에 의해 매일 자동으로 업데이트되고 빌드가 검증됩니다.
안정 버전은 [nixpkgs](https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/by-name/ma/maa-cli/package.nix)에 패키징되어 있으며, `nixpkgs`의 Rust 툴체인을 사용합니다. 나이틀리 빌드는 [NUR](https://github.com/Cryolitia/nur-packages/blob/master/pkgs/maa-assistant-arknights/maa-cli.nix)에 있으며, 베타 채널의 Rust 툴체인을 사용하며 GitHub Action에 의해 매일 자동으로 업데이트되고 빌드가 검증됩니다.
#### Homebrew

View File

@@ -7,6 +7,12 @@ icon: material-symbols:summarize
maa-cli의 주요 기능은 MaaCore를 호출하여 명일방주의 게임 작업을 자동화하는 것입니다. 또한 사용의 편의성을 위해 MaaCore 관리 기능도 제공합니다.
::: tip
Windows 패키지 관리자 (winget) 를 통해 maa-cli를 설치한 사용자는 다음 명령에서 `maa``maa-cli` 로 대체해야 합니다.
:::
## MaaCore 관리
maa-cli는 MaaCore 및 리소스를 설치하고 업데이트할 수 있습니다. 다음 명령어를 실행하세요:

View File

@@ -61,7 +61,7 @@ Mac 버전 개발에 인력이 부족하여 업데이트 속도가 비교적 느
완벽하게 지원됩니다.
추가로, macOS에서 녹스 에뮬레이터의 adb 이진 파일의 위치는 `/Applications/NoxAppPlayer.app/Contents/MacOS/adb`이며 부모 디렉토리 `MacOS`에서 `adb devices` 명령을 사용하여 adb 포트를 확인할 수 있습니다.
추가로, macOS에서 녹스 에뮬레이터의 adb 이진 파일의 위치는 `/Applications/NoxAppPlayer.app/Contents/macOS/adb`이며 부모 디렉토리 `macOS`에서 `adb devices` 명령을 사용하여 adb 포트를 확인할 수 있습니다.
### ✅ [AVD](https://developer.android.com/studio/run/managing-avds)

View File

@@ -20,7 +20,7 @@ winget install "Microsoft.VCRedist.2015+.x64" --override "/repair /passive /nore
아래<u>**두 개**</u>의 실행 라이브러리를 수동으로 다운로드하여 설치하여 문제를 해결하세요.
- [Visual C++ 재배포 가능 패키지](https://aka.ms/vs/17/release/vc_redist.x64.exe)
- [Visual C++ 재배포 가능 패키지](https://aka.ms/vc14/vc_redist.x64.exe)
- [.NET 데스크톱 런타임 10](https://aka.ms/dotnet/10.0/windowsdesktop-runtime-win-x64.exe)
:::
@@ -49,25 +49,9 @@ winget install "Microsoft.VCRedist.2015+.x64" --override "/repair /passive /nore
Windows 8/8.1/10/11 N/KN(유럽/한국) 버전을 사용하는 경우, [미디어 기능 팩](https://support.microsoft.com/ko-kr/topic/c1c6fffa-d052-8338-7a79-a4bb980a700a)을 설치해야 합니다.
#### Windows 7 관련
#### Windows 7 / 8 / 8.1 관련
.NET 10은 Windows 7 / 8 / 8.1 시스템을 지원하지 않으므로<sup>[출처](https://github.com/dotnet/core/issues/7556)</sup>, MAA도 더 이상 지원하지 않습니다. 마지막으로 사용 가능한 .NET 8 버전은 [`v5.4.0-beta.1.d035.gd2e5001e7`](https://github.com/MaaAssistantArknights/MaaRelease/releases/tag/v5.4.0-beta.1.d035.gd2e5001e7)입니다. 마지막으로 사용 가능한 .NET 4.8 버전은 [`v4.28.8`](https://github.com/MaaAssistantArknights/MaaAssistantArknights/releases/tag/v4.28.8)입니다. 자체 컴파일의 실현 가능성은 아직 확인되지 않았습니다.
Windows 7의 경우, 위에서 언급한 두 개의 런타임 라이브러리를 설치하기 전에 다음 패치가 설치되어 있는지 확인해야 합니다:
1. [Windows 7 Service Pack 1](https://support.microsoft.com/ko-kr/windows/b3da2c0f-cdb6-0572-8596-bab972897f61)
2. SHA-2 코드 서명 패치:
- KB4474419[다운로드 링크 1](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/secu/2019/09/windows6.1-kb4474419-v3-x64_b5614c6cea5cb4e198717789633dca16308ef79c.msu)、[다운로드 링크 2](http://download.windowsupdate.com/c/msdownload/update/software/secu/2019/09/windows6.1-kb4474419-v3-x64_b5614c6cea5cb4e198717789633dca16308ef79c.msu)
- KB4490628[다운로드 링크 1](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/secu/2019/03/windows6.1-kb4490628-x64_d3de52d6987f7c8bdc2c015dca69eac96047c76e.msu)、[다운로드 링크 2](http://download.windowsupdate.com/c/msdownload/update/software/secu/2019/03/windows6.1-kb4490628-x64_d3de52d6987f7c8bdc2c015dca69eac96047c76e.msu)
3. Platform Update for Windows 7DXGI 1.2、Direct3D 11.1,KB2670838[다운로드 링크 1](https://catalog.s.download.windowsupdate.com/msdownload/update/software/ftpk/2013/02/windows6.1-kb2670838-x64_9f667ff60e80b64cbed2774681302baeaf0fc6a6.msu)、[다운로드 링크 2](http://download.windowsupdate.com/msdownload/update/software/ftpk/2013/02/windows6.1-kb2670838-x64_9f667ff60e80b64cbed2774681302baeaf0fc6a6.msu)
##### .NET 8 애플리케이션이 Windows 7에서 비정상적으로 실행되는 문제 완화 조치 [#8238](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues/8238)
Windows 7에서 .NET 8 애플리케이션을 실행할 때 메모리 사용량이 비정상적으로 증가하는 문제가 있습니다. 아래의 완화 조치를 참조하세요. Windows 8/8.1은 테스트되지 않았습니다. 동일한 문제가 있는 경우, 문서를 업데이트할 수 있도록 Issue를 제출해 주세요.
1. `컴퓨터`를 열고 빈 공간을 마우스 오른쪽 버튼으로 클릭하여 속성을 클릭하고, 왼쪽의 `고급 시스템 설정`을 클릭한 다음 `환경 변수`를 클릭합니다.
2. 새 시스템 변수를 만들고, 변수 이름을 `DOTNET_EnableWriteXorExecute`, 변수 값을 `0`으로 설정합니다.
3. 컴퓨터를 재시작합니다.
.NET 10은 Windows 7 / 8 / 8.1 시스템을 지원하지 않으므로<sup>[출처](https://github.com/dotnet/core/issues/7556)</sup>, MAA도 더 이상 지원하지 않습니다.
## 연결 오류

View File

@@ -51,7 +51,7 @@ icon: hugeicons:brain-02
- 용문 시내LungmenDowntown@Annihilation
- 상시 개방 이벤트의 경우 `OF-1`/`OF-F3`/`GT-5`와 같이 입력합니다.
- 현재 개방된 사이드 스토리 이벤트의 세 개의 스테이지입니다. [API](https://api.maa.plus/MaaAssistantArknights/api/gui/StageActivity.json)에서 업데이트를 자동으로 다운로드 한 후 화면 하단에 표시됩니다.
- 현재 개방된 사이드 스토리 이벤트의 세 개의 스테이지입니다. [API](https://api.maa.plus/MaaAssistantArknights/api/gui/StageActivityV2.json)에서 업데이트를 자동으로 다운로드 한 후 화면 하단에 표시됩니다.
- 재개방된 사이드 스토리 이벤트. `SSReopen-<스테이지 접두사>`를 입력하면 XX-1~XX-9 스테이지를 한 번에 완료할 수 있습니다. 예: `SSReopen-IC`.
::: details 예시 화면
@@ -70,23 +70,11 @@ icon: hugeicons:brain-02
대체 스테이지는 해당 일자의 개방 여부에 따라 실제 전투에 사용될 스테이지를 결정합니다. 즉, 열려 있는 스테이지 중 첫 번째 것을 선택하여 전투를 수행합니다.
이 기능은 일정표와 유사하며, 선택한 스테이지가 실패했을 경우를 대비한 백업 스테이지로 작동하지 않습니다.
1. 예: 기본 스테이지를 `용문폐-6/5`로 설정하고, 대체 스테이지로 `1-7``경험치-6/5` 설정 경우:
- 당일 `용문폐-6/5`가 개방되어 있다면 해당 스테이지로 진입하며, `1-7``경험치-6/5`는 실행되지 않습니다. 이때 플레이어가 `용문폐-6/5` 대리를 해제한 경우 작업은 실패합니다.
- 당일 `용문폐-6/5`가 개방되어 있지 않다면 `1-7`으로 진입하며, `경험치-6/5`는 실행되지 않습니다. 이때 `1-7` 대리를 해제한 경우에도 작업은 실패합니다.
- `1-7`은 상시 개방된 스테이지이므로, 그 앞에 위치한 `경험치-6/5`는 절대 선택되지 않습니다.
예: 대체 단계가 `용문폐-6/5`, `1-7``경험치-6/5` 설정되어 있는 경우:
2. 기본 스테이지가 `섬멸 모드`인 경우:
- 섬멸 작전 결과는 이후 대체 스테이지 선택 로직에 영향을 주지 않으며, 섬멸이 실패하더라도 이성 소모 작업은 오류 없이 이어집니다.
- 이후 대체 스테이지는 `이성약 사용``대리 배수` 설정만 상속하며, `원석 사용`, `지정 횟수`, `지정 재료` 등의 설정은 상속되지 않습니다.
### 남은 이성
`이성 사용`이 종료된 후에 시작되며, 이성 회복제 사용, 순오리지늄 사용, 횟수 제한, 드롭 제한, 연속 전투 횟수 등의 제어를 받지 않고, 이성을 모두 소비하면 종료됩니다.
- 스테이지 개시 시 이성이 부족한 경우, 남은 이성 스테이지로 이동하여 "나머지" 이성을 소모합니다. (예: 1-7)
- 이성이 부족하여 연속 전투 횟수가 너무 높게 설정된 경우에도 자동으로 단일 전투 횟수로 선택되어 이성을 모두 소비합니다(예: 1-7을 6회 연속 전투 설정하지만, 이성이 30밖에 되지 않는 경우, 자동으로 연속 전투 없는 1-7로 전환됩니다).
- 여전히 이성이 부족하면 작업을 중지합니다.(예: 6 이하의 이성)
- 남은 이성 선택 스테이지가 개방되지 않은 스테이지인 경우, 이성 사용에 실패합니다.
- 당일 `용문폐-6/5`가 개방되어 있다면 해당 스테이지로 진입하며, `1-7``경험치-6/5`는 실행되지 않습니다. 이때 플레이어가 `용문폐-6/5` 대리를 해제한 경우 작업은 실패합니다.
- 당일 `용문폐-6/5`가 개방되어 있지 않다면 `1-7`으로 진입하며, `경험치-6/5`는 실행되지 않습니다. 이때 `1-7` 대리를 해제한 경우에도 작업은 실패합니다.
- `1-7`은 상시 개방된 스테이지이므로, 그 앞에 위치한 `경험치-6/5`는 절대 선택되지 않습니다.
### 연속 전투 횟수
@@ -94,15 +82,14 @@ MAA는 사용자가 설정한 연속 전투 횟수에 따라 전투를 진행합
- **AUTO** (0):
- 레벨 내 최대 연속 전투 횟수를 자동으로 파악하고, 최대 연속 전투 횟수를 유지하며, 이성을 초과하지 않습니다.
- 완료 후 `남은 이성` 프로세스 시작(설정된 경우)
- **숫자 모드** (1~6):
- 설정된 횟수에 따라 연속 전투를 진행합니다.
- 현재 이성이 설정된 횟수를 완료하기에 충분하지 않은 경우(예: 5회만 가능하지만 6회로 설정된 경우), 작업을 바로 종료하고 `남은 이성` 프로세스(설정된 경우)를 시작합니다.
- 현재 이성이 설정된 횟수를 완료하기에 충분하지 않은 경우(예: 5회만 가능하지만 6회로 설정된 경우), 작업을 바로 종료합니다.
- **비활성 모드** (-1):
- 게임 내 연속 전투 횟수를 조정하지 않습니다.
- 이성이 현재 설정된 횟수를 완료하기에 충분하지 않은 경우 작업을 바로 종료하고 `남은 이성` 프로세스(설정된 경우)를 시작합니다.
- 이성이 현재 설정된 횟수를 완료하기에 충분하지 않은 경우 작업을 바로 종료합니다.
### 지정된 횟수

View File

@@ -23,7 +23,7 @@ DirectML을 사용하여 GPU를 호출하여 인식 추론을 가속화합니다
MAA는 시작 매개변수를 통해 구성을 자동으로 전환할 수 있습니다. MAA 프로세스 이름 뒤에 `--config <구성 이름>`을 추가하면 됩니다. 예: `./MAA/MAA.exe --config Official`
일부 기호는 이스케이프해야 합니다. `Json` 참조하세요. 예를 들어 구성 이름이 `"Official"`인 경우 매개변수는 --config `\"Official\"`가 되어야 합니다
일부 기호는 이스케이프해야 합니다. `JSON` 참조하세요. 예를 들어 구성 이름이 `"Official"`인 경우 매개변수는 --config `\"Official\"`가 되어야 합니다
## 시작 전/후 스크립트

View File

@@ -20,7 +20,7 @@ JSON 파일은 주석을 지원하지 않으므로, 텍스트 내의 주석은
// 특정 오퍼레이터 지정
{
"name": "重岳", // 오퍼레이터명
"skill": 3, // 스킬 번호. 선택 사항, 기본값 1, 범위 [1, 3]
"skill": 3, // 스킬 번호. 선택 사항, 기본값 1, 범위 [0, 3]
"skill_usage": 2, // 스킬 사용법. 선택 사항, 기본값 0
// 0 - 자동 사용 안 함 ("actions" 필드에 의존)
// 1 - 쿨타임 찰 때마다 사용 (예: 쏜즈 3스킬, 머틀 1스킬 등)

View File

@@ -81,10 +81,14 @@ JSON 파일은 주석을 지원하지 않습니다. 본문의 주석은 설명
// (예: 이 그룹의 오퍼레이터를 배치해야 할 때, 쏜즈가 있는지 먼저 확인하고 있으면 배치, 없으면 혼을 확인)
{
"name": "棘刺", // 오퍼레이터 이름
"skill": 3,
"skill_usage": 1,
...
},
{
"name": "号角",
"skill": 2,
"skill_usage": 1,
...
}
]

View File

@@ -67,6 +67,20 @@ Bilibili 서버: `张三`인 경우 `张三`, `张`, `三` 입력 가능
:::
::::
<details>
<summary>Example</summary>
```json
{
"enable": true,
"client_type": "Official",
"start_game_enabled": true,
"account_name": "123****4567"
}
```
</details>
- `CloseDown`
게임 종료
@@ -81,6 +95,18 @@ Bilibili 서버: `张三`인 경우 `张三`, `张`, `三` 입력 가능
:::
::::
<details>
<summary>Example</summary>
```json
{
"enable": true,
"client_type": "Official"
}
```
</details>
- `Fight`
이성 사용 작전
@@ -148,7 +174,35 @@ Bilibili 서버: `张三`인 경우 `张三`, `张`, `三` 입력 가능
<br>
오리지늄 사용 확인 창에서 대기하다가, 현재 1이성이 회복되면 즉시 오리지늄을 사용
:::
::::
::::
<details>
<summary>Example</summary>
```json
{
"enable": true,
"stage": "1-7",
"medicine": 1,
"expiring_medicine": 0,
"stone": 0,
"times": 10,
"series": 0,
"drops": {
"30011": 10
},
"report_to_penguin": true,
"penguin_id": "123456",
"report_to_yituliu": true,
"yituliu_id": "123456",
"server": "CN",
"client_type": "Official",
"DrGrandet": false
}
```
</details>
일부 소수 자원 스테이지명도 지원합니다. [통합 예시](https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/master/tools/AutoLocalization/example/zh-cn.xaml#L260)를 참고하세요
- `Recruit`
@@ -220,6 +274,36 @@ Yituliu 전송 ID, 기본값 비어 있음. `report_to_yituliu`가 true일 때
:::
::::
<details>
<summary>Example</summary>
```json
{
"enable": true,
"refresh": true,
"select": [5, 4],
"confirm": [4, 3],
"first_tags": ["高级资深干员"],
"extra_tags_mode": 1,
"times": 4,
"set_time": true,
"expedite": false,
"expedite_times": 0,
"skip_robot": true,
"recruitment_time": {
"3": 540,
"4": 540
},
"report_to_penguin": false,
"penguin_id": "123456",
"report_to_yituliu": false,
"yituliu_id": "123456",
"server": "CN"
}
```
</details>
- `Infrast`
기반시설 교대
@@ -283,6 +367,29 @@ Yituliu 전송 ID, 기본값 비어 있음. `report_to_yituliu`가 true일 때
:::
::::
<details>
<summary>Example</summary>
```json
{
"enable": true,
"mode": 0,
"facility": ["Mfg", "Trade", "Reception"],
"drones": "PureGold",
"threshold": 0.3,
"replenish": true,
"dorm_notstationed_enabled": false,
"dorm_trust_enabled": true,
"reception_message_board": true,
"reception_clue_exchange": true,
"reception_send_clue": true,
"filename": "schedules/base.json",
"plan_index": 1
}
```
</details>
- `Mall`
크레딧 수령 및 상점 구매
먼저 `buy_first` 목록 순서대로 구매하고, 그 다음 `blacklist`를 제외하고 왼쪽에서 오른쪽으로 구매하며, 크레딧이 넘칠 경우 블랙리스트를 무시하고 넘치지 않을 때까지 구매
@@ -322,6 +429,26 @@ OF-1 플레이 시 사용할 편성 슬롯 번호
:::
::::
<details>
<summary>Example</summary>
```json
{
"enable": true,
"visit_friends": true,
"shopping": true,
"buy_first": ["招聘许可", "龙门币"],
"blacklist": ["家具零件"],
"force_shopping_if_credit_full": false,
"only_buy_discount": true,
"reserve_max_credit": false,
"credit_fight": false,
"formation_index": 0
}
```
</details>
- `Award`
각종 보상 수령
@@ -349,6 +476,23 @@ OF-1 플레이 시 사용할 편성 슬롯 번호
:::
::::
<details>
<summary>Example</summary>
```json
{
"enable": true,
"award": true,
"mail": true,
"recruit": true,
"orundum": false,
"mining": true,
"specialaccess": false
}
```
</details>
- `Roguelike`
통합 전략 무한 반복
@@ -388,10 +532,10 @@ OF-1 플레이 시 사용할 편성 슬롯 번호
<br>
`7` - 심층 조사 보상 파밍, 모드 적응 외엔 모드 0과 동일
:::
::: field name="squad" type="string" optional default="지휘 분대"
::: field name="squad" type="string" optional default="指挥分队"
시작 분대명
:::
::: field name="roles" type="string" optional default="적재적소 활용"
::: field name="roles" type="string" optional default="取长补短"
시작 모집 조합
:::
::: field name="core_char" type="string" optional
@@ -407,7 +551,7 @@ OF-1 플레이 시 사용할 편성 슬롯 번호
탐색 시작 횟수. 도달 시 자동 정지
:::
::: field name="difficulty" type="number" optional default="0"
지정 난이도 등급. **Phantom 제외** 테마에만 적용. 미해금 시 현재 해금된 최고 난이도 선택
지정 난이도 등급. 미해금 시 현재 해금된 최고 난이도 선택
:::
::: field name="stop_at_final_boss" type="boolean" optional default="false"
5층 보스 노드 앞에서 정지할지 여부. **Phantom 제외** 테마에만 적용
@@ -463,7 +607,9 @@ OF-1 플레이 시 사용할 편성 슬롯 번호
<br>
`dice`: 주사위 보상, Mizuki 테마 전용
<br>
`ideas`: 구상 2개 보상, Sarkaz 테마 전용
`ideas`: 구상 2개 보상, Sarkaz 테마 전용
<br>
`ticket`: 티켓 보상, JieGarden 테마 전용
:::
::: field name="use_foldartal" type="boolean" optional
암호문 사용 여부. 모드 5 기본값 `false`, 기타 모드 기본값 `true`. Sami 테마 전용
@@ -499,7 +645,59 @@ Sarkaz 테마, Investment 모드, "연금술 분대" 또는 "지원 분대"일
<br>
고정 시드 사용
:::
::::
::::
<details>
<summary>Example</summary>
```json
{
"enable": true,
"theme": "Sami",
"mode": 5,
"squad": "指挥分队",
"roles": "取长补短",
"core_char": "塑心",
"use_support": false,
"use_nonfriend_support": false,
"starts_count": 3,
"difficulty": 8,
"stop_at_final_boss": false,
"stop_at_max_level": false,
"investment_enabled": true,
"investments_count": 2,
"stop_when_investment_full": false,
"investment_with_more_score": false,
"start_with_elite_two": false,
"only_start_with_elite_two": false,
"refresh_trader_with_dice": false,
"first_floor_foldartal": "",
"start_foldartal_list": [],
"collectible_mode_start_list": {
"hot_water": true,
"shield": false,
"ingot": false,
"hope": true,
"random": false,
"key": false,
"dice": false,
"ideas": false
},
"use_foldartal": true,
"check_collapsal_paradigms": true,
"double_check_collapsal_paradigms": true,
"expected_collapsal_paradigms": ["目空一些", "睁眼瞎"],
"monthly_squad_auto_iterate": false,
"monthly_squad_check_comms": false,
"deep_exploration_auto_iterate": false,
"collectible_mode_shopping": false,
"collectible_mode_squad": "",
"start_with_seed": false
}
```
</details>
붕괴 패러다임 파밍 기능에 대한 자세한 내용은 [통합 전략 보조 프로토콜](./integrated-strategy-schema.md#탐험가의-은빛-서리-끝자락-—-붕괴-패러다임)을 참고하세요.
- `Copilot`
@@ -571,6 +769,32 @@ Sarkaz 테마, Investment 모드, "연금술 분대" 또는 "지원 분대"일
작전 JSON은 [자동지휘 프로토콜](./copilot-schema.md)을 참고하세요.
<details>
<summary>Example</summary>
```json
{
"enable": true,
"filename": "copilot/1-7.json",
"loop_times": 2,
"use_sanity_potion": false,
"formation": true,
"formation_index": 1,
"user_additional": [
{
"name": "能天使",
"skill": 3
}
],
"add_trust": true,
"ignore_requirements": false,
"support_unit_usage": 2,
"support_unit_name": "艾雅法拉"
}
```
</details>
- `SSSCopilot`
보안 파견 자동지휘
@@ -587,18 +811,47 @@ Sarkaz 테마, Investment 모드, "연금술 분대" 또는 "지원 분대"일
::::
보안 파견 작전 JSON은 [보안 파견 프로토콜](./sss-schema.md)을 참고하세요.
<details>
<summary>Example</summary>
```json
{
"enable": true,
"filename": "sss/plan.json",
"loop_times": 1
}
```
</details>
- `ParadoxCopilot`
패러독스 시뮬레이션 작전 계획 자동 수행
```json5
// Task parameters
:::: field-group
::: field name="enable" type="boolean" optional default="true"
본 작업 활성화 여부.
:::
::: field name="filename" type="string" required
단일 작전 JSON 파일 경로, 절대/상대 경로 모두 가능. 실행 중 설정 불가. 필수, list와 택일.
:::
::: field name="list" type="array<string>" required
작전 JSON 목록, 절대/상대 경로 모두 가능. 실행 중 설정 불가. 필수, filename과 택일.
:::
::::
<details>
<summary>Example</summary>
```json
{
"enable": bool, // 해당 작업의 활성화 여부. 기본값은 true
"filename": string, // 개별 작업 JSON 파일 경로. 절대 경로 및 상대 경로 모두 가능하며, 실행 중 설정은 지원하지 않음. list와 둘 중 하나를 반드시 선택(필수)
"list" : list<string> // 작업 JSON 파일 목록. 절대 경로 및 상대 경로 모두 가능하며, 실행 중 설정은 지원하지 않음. filename과 둘 중 하나를 반드시 선택(필수)
"enable": true,
"filename": "paradox/exusiai.json",
"list": []
}
```
</details>
- `Depot`
창고 인식
@@ -608,6 +861,17 @@ Sarkaz 테마, Investment 모드, "연금술 분대" 또는 "지원 분대"일
:::
::::
<details>
<summary>Example</summary>
```json
{
"enable": true
}
```
</details>
- `OperBox`
오퍼레이터 인식
@@ -617,6 +881,17 @@ Sarkaz 테마, Investment 모드, "연금술 분대" 또는 "지원 분대"일
:::
::::
<details>
<summary>Example</summary>
```json
{
"enable": true
}
```
</details>
- `Reclamation`
생존 연산
@@ -638,7 +913,7 @@ Sarkaz 테마, Investment 모드, "연금술 분대" 또는 "지원 분대"일
<br>
`1` - 모래 속의 불: 적금 파밍, 연락원에게 물 구매 후 기지에서 주조; 사막 이야기: 자동 아이템 제작 및 로드 반복으로 화폐 파밍
:::
::: field name="tools_to_craft" type="array<string>" optional default="['荧光棒']"
::: field name="tools_to_craft" type="array<string>" optional default="[&quot;荧光棒&quot;]"
자동 제작 아이템, 부분 문자열 입력 권장
:::
::: field name="increment_mode" type="number" optional default="0"
@@ -653,6 +928,22 @@ Sarkaz 테마, Investment 모드, "연금술 분대" 또는 "지원 분대"일
:::
::::
<details>
<summary>Example</summary>
```json
{
"enable": true,
"theme": "Fire",
"mode": 1,
"tools_to_craft": ["荧光棒", "发电机"],
"increment_mode": 0,
"num_craft_batches": 12
}
```
</details>
- `Custom`
사용자 정의 작업
@@ -665,6 +956,18 @@ Sarkaz 테마, Investment 모드, "연금술 분대" 또는 "지원 분대"일
:::
::::
<details>
<summary>Example</summary>
```json
{
"enable": true,
"task_names": ["StartUp", "Infrast", "Fight"]
}
```
</details>
- `SingleStep`
단일 단계 작업 (현재 전투만 지원)
@@ -689,6 +992,22 @@ Sarkaz 테마, Investment 모드, "연금술 분대" 또는 "지원 분대"일
:::
::::
<details>
<summary>Example</summary>
```json
{
"enable": true,
"type": "copilot",
"subtask": "stage",
"details": {
"stage": "1-7"
}
}
```
</details>
- `VideoRecognition`
영상 인식, 현재 작전(전투) 영상만 지원
@@ -701,6 +1020,18 @@ Sarkaz 테마, Investment 모드, "연금술 분대" 또는 "지원 분대"일
:::
::::
<details>
<summary>Example</summary>
```json
{
"enable": true,
"filename": "videos/copilot.mp4"
}
```
</details>
### `AsstSetTaskParams`
#### 인터페이스 원형

View File

@@ -192,14 +192,14 @@ JSON 파일은 주석을 지원하지 않으므로, 텍스트 내의 주석은
작업 목록 유형 필드 (`sub`, `next`, `onErrorNext`, `exceededNext`, `reduceOtherTimes`)는 표현식 계산을 지원합니다.
| 기호 | 의미 | 예시 |
| :--------: | :-------------------------------------------------------: | :------------------------------------: |
| `@` | `@` 형 작업 | `Fight@ReturnTo` |
| `#` (단항) | 가상 작업 | `#self` |
| `#` (이항) | 가상 작업 | `StartUpThemes#next` |
| `*` | 다중 작업 반복 | `(ClickCornerAfterPRTS+ClickCorner)*5` |
| `+` | 작업 목록 병합 (next 계열 필드에서 동명 작업은 앞쪽 우선) | `A+B` |
| `^` | 작업 목록 차집합 (전자에만 존재, 순서 유지) | `(A+A+B+C)^(A+B+D)` (결과는 `C`) |
| 기호 | 의미 | 예시 |
| :--------: | :-------------------------------------------------------: | :-------------------------------------: |
| `@` | `@` 형 작업 | `Fight@ReturnTo` |
| `#` (단항) | 가상 작업 | `#self` |
| `#` (이항) | 가상 작업 | `StartUpThemes#next` |
| `*` | 다중 작업 반복 | `(ClickCornerAfterPRTS+ClickCorner)*10` |
| `+` | 작업 목록 병합 (next 계열 필드에서 동명 작업은 앞쪽 우선) | `A+B` |
| `^` | 작업 목록 차집합 (전자에만 존재, 순서 유지) | `(A+A+B+C)^(A+B+D)` (결과는 `C`) |
연산자 `@`, `#`, `*`, `+`, `^`의 우선순위: `#`(단항) > `@` = `#`(이항) > `*` > `+` = `^`.

View File

@@ -5,7 +5,7 @@ icon: devicon-plain:githubactions
# CI 系统解析
MAA 借助 Github Action 完成了大量的自动化工作,包括网站的构建,自动更新资源,最终文件的构建与发版等等过程。随着时间的推移,这些 CI 逐渐开始嵌套,部分甚至引向了其他的存储库。本文档旨在为想要对 MAA 的 CI 系统做出改进的各位做一个简要的介绍。
MAA 借助 GitHub Action 完成了大量的自动化工作,包括网站的构建,自动更新资源,最终文件的构建与发版等等过程。随着时间的推移,这些 CI 逐渐开始嵌套,部分甚至引向了其他的存储库。本文档旨在为想要对 MAA 的 CI 系统做出改进的各位做一个简要的介绍。
阅读本文之前,最好对 MAA 的项目结构以及组成有一个基本的概念。
@@ -28,7 +28,7 @@ MAA 借助 Github Action 完成了大量的自动化工作,包括网站的构
此外,我们还通过 [pre-commit.ci](https://pre-commit.ci/) 实现了代码的自动格式化和图片资源的自动优化,它在发起 PR 后会自动执行,一般无需特别在意。
## Github Action 部分
## GitHub Action 部分
### 代码测试

View File

@@ -15,7 +15,7 @@ icon: iconoir:developer
## 我不懂编程,只是想改一点点 JSON 文件/文档等,要怎么操作?
欢迎收看 [牛牛也能看懂的 GitHub Pull Request 使用指南](./pr-tutorial.md) (纯网页端操作 Github.com
欢迎收看 [牛牛也能看懂的 GitHub Pull Request 使用指南](./pr-tutorial.md) (纯网页端操作 GitHub.com
## 我只想简单修改几行代码,但配置环境太麻烦,纯网页编辑又很难用,怎么办?
@@ -64,16 +64,19 @@ icon: iconoir:developer
6. 执行 cmake 项目配置
```cmd
mkdir -p build
cmake -G "Visual Studio 18 2026" -B build -DBUILD_WPF_GUI=ON -DBUILD_DEBUG_DEMO=ON
cmake --preset windows-x64
```
7. 双击打开 `build/MAA.sln` 文件Visual Studio 会自动加载整个项目。
7. 双击打开 `build/MAA.slnx` 文件Visual Studio 会自动加载整个项目。
8. 设置 VS
- VS 上方配置选择 `Debug` `x64`
- 右键 `MaaWpfGui` - 设为启动项目
- 按 F5 运行
::: tip
若需调试 Win32ControllerWindows 窗口控制)相关功能,需要自行从 [MaaFramework Releases](https://github.com/MaaXYZ/MaaFramework/releases) 下载对应平台的压缩包,将 `bin` 目录中的 `MaaWin32ControlUnit.dll` 放到 MAA 的 DLL 同目录下(如 `build/bin/Debug`)。欢迎 PR 一个自动下载脚本!
:::
9. 到这里,你就可以愉快地 ~~瞎 JB 改~~ 发电了
10. 开发过程中,每一定数量,记得提交一个 Commit, 别忘了写上 Message
假如你不熟悉 git 的使用,你可能想要新建一个分支进行更改,而不是直接提交在 `dev` 上
@@ -117,12 +120,48 @@ icon: iconoir:developer
git merge # 合并
```
4. 重复上述 7, 8, 9, 10 中的操作
4. 重复上述 8, 9, 10, 11 中的操作
::: tip
在打开 VS 之后,和 Git 有关的操作可以不用命令行工具,直接使用 VS 自带的“Git 更改”即可
:::
## 使用 VS Code 进行开发(可选)
::: warning
**推荐优先使用 Visual Studio 进行开发。** MAA 项目主要基于 Visual Studio 构建上述完整环境配置流程已涵盖所有开发需求开箱即用体验最佳。VSCode 方案仅作为备选,适合已经熟悉 VS Code + CMake + clangd 工作流的开发者,配置门槛相对较高。
:::
如果你偏好使用 VSCode可以配合 CMake、clangd 等扩展获得代码补全、跳转和调试能力。在完成前述 16 步克隆、依赖、CMake 配置)后,可按以下步骤配置:
### 推荐扩展
在 VS Code 扩展市场安装:
| 扩展 | 作用 |
| --------------------------------------------------------------------------------------------------- | --------------------------------------------------- |
| [CMake Tools](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cmake-tools) | CMake 配置、构建、调试集成 |
| [clangd](https://marketplace.visualstudio.com/items?itemName=llvm-vs-code-extensions.vscode-clangd) | C++ 智能提示、代码跳转、诊断(基于 LSP |
| [C/C++](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) | 调试 C++ 程序(与 CMake Tools 或 launch.json 配合) |
::: tip
使用 clangd 时,建议禁用 C/C++ 扩展的 IntelliSense`C_Cpp.intelliSenseEngine` 设为 `disabled`),避免与 clangd 冲突。
:::
### 配置步骤
1. 用 VS Code 打开项目根目录
2. 使用 **CMake Tools**
- 状态栏选择 Configure Preset如 `windows-x64`、`linux-x64` 等)
- 选择 Build Preset执行配置与构建
3. 使用 **clangd**:在 Windows 上配合 MSVC 使用时无需 `compile_commands.json` 即可正常开发。Linux/macOS 下预设已开启 `CMAKE_EXPORT_COMPILE_COMMANDS`clangd 会自动使用 `build/compile_commands.json`
4. **调试**:项目已包含 `.vscode/launch.json`,可直接启动 MaaWpfGui 或 Debug Demo 进行调试
### 快速构建与调试
- **构建**`Ctrl+Shift+B` 或通过 CMake Tools 状态栏
- **调试**F5 或运行与调试面板选择对应配置
## MAA 的文件格式化要求
MAA 使用一系列的格式化工具来保证仓库中的代码和资源文件美观统一,以便于维护和阅读
@@ -134,7 +173,7 @@ MAA 使用一系列的格式化工具来保证仓库中的代码和资源文件
| 文件类型 | 格式化工具 |
| --------- | --------------------------------------------------------------- |
| C++ | [clang-format](https://clang.llvm.org/docs/ClangFormat.html) |
| Json/Yaml | [Prettier](https://prettier.io/) |
| JSON/YAML | [Prettier](https://prettier.io/) |
| Markdown | [markdownlint](https://github.com/DavidAnson/markdownlint-cli2) |
### 利用 Pre-commit Hooks 自动进行代码格式化

Some files were not shown because too many files have changed in this diff Show More