Compare commits

...

3294 Commits

Author SHA1 Message Date
uye
9df9f1540d Release v6.3.4 (#15807)
## Summary by Sourcery

杂务:
- 为 v6.3.4 版本更新任务配置和模板优化配置。

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

## Summary by Sourcery

Chores:
- Update task configuration and template optimization configuration for
the v6.3.4 release.

</details>
2026-02-25 19:53:19 +08:00
uye
596687c7b9 docs: Bump version to v6.3.4 in CHANGELOG.md
Updated version to v6.3.4 and added release notes.
2026-02-25 19:51:59 +08:00
github-actions[bot]
9a567bb158 feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/22395513088
[skip changelog]
2026-02-25 11:48:44 +00:00
github-actions[bot]
89a7f93960 chore: Auto Templates Optimization
Triggered by 9f99058d84

[skip changelog]
2026-02-25 11:38:52 +00:00
uye
9f99058d84 fix: 沟槽的 yj 怎么有倒计时的时候击杀数图标都不一样 2026-02-25 19:38:17 +08:00
uye
69176a9f1c chore: 调整 BattleKillsFlag height 2026-02-25 19:37:35 +08:00
uye
0ea5e1ec9f Release v6.3.3 (#15776)
- ~~等 #15773 ,以及顺带修一下掉落识别~~

## Summary by Sourcery

准备 6.3.3
版本发布,包含对视觉识别、干员招募、基建规划、启动流程以及窗口附加行为的多项稳定性修复,并加入新的输入模式以及更新后的游戏/任务资源和 UI
文本。

新功能:
- 暴露新的 Win32 输入方式,可使用窗口相对位置发送或投递消息,并在附加窗口的鼠标方式设置中提供这些选项。

错误修复:
- 加强矩形校正逻辑以应对完全在屏幕外的区域,避免在基于视觉的识别中产生无效 ROI。
- 确保招募计算使用视图模型中配置的选择时间,而不是任务队列中的数值。
- 将基建自定义方案选择默认为未设置状态,并相应迁移现有配置。
- 当使用附加窗口连接时自动禁用 StartGame 选项,以防止产生冲突的启动行为。
- 阻止启动任务重复尝试主开始按钮的动作,以减少不必要的重试。

增强内容:
- 调整游戏/任务资源定义(包括肉鸽玩法以及特定关卡/任务配置),以适配更新后的游戏流程和掉落识别行为。
- 刷新本地化内容和版本更新对话框文案,以适配 6.3.3 版本发布。

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

## Summary by Sourcery

Prepare 6.3.3 release with multiple stability fixes to vision,
recruitment, infrastructure planning, startup, and attach-window
behavior, plus new input modes and updated game/task resources and UI
text.

New Features:
- Expose new Win32 input methods that send or post messages using
window-relative positions and surface them in the attach-window mouse
method settings.

Bug Fixes:
- Harden rectangle correction against completely off-screen regions to
avoid invalid ROIs during vision-based recognition.
- Ensure recruitment calculation uses the view model’s configured
selection times instead of the task queue’s values.
- Default infrastructure custom plan selection to an unset state and
migrate existing configs accordingly.
- Disable the StartGame option automatically when using attach-window
connection to prevent conflicting launch behavior.
- Prevent startup tasks from retrying the primary start button action to
reduce erroneous retries.

Enhancements:
- Adjust game/task resource definitions (including Roguelike and
specific stage/task configs) for updated gameplay flows and drop
recognition behavior.
- Refresh localizations and version update dialog content for the 6.3.3
release.

</details>

## Summary by Sourcery

重构任务队列视图模型以共享通用序列化接口,提升基于视觉的识别与任务执行流程的稳定性,并为 6.3.3 版本更新输入选项、配置默认值和游戏资源。

新特性:
- 新增 Win32 输入方式,可发送或投递相对窗口的消息,并将其作为可选的鼠标输入选项用于“附加窗口”连接。

错误修复:
- 防止无效或完全位于屏幕外的矩形在视觉处理过程中产生错误的感兴趣区域(ROI)。
- 确保干员招募概率计算使用视图模型中配置的选人时间,而不是任务模型中的值。
- 通过将主开始按钮在启动任务中的重试上限设为 0,避免对主开始按钮进行重复重试。
- 将基础设施自定义方案选择默认为未设置状态,并迁移现有配置以避免意外选择方案。
- 在使用“附加窗口”模式时自动禁用 StartGame 行为,以防止启动流程冲突。

增强改进:
- 引入任务队列视图模型的共享序列化接口,并迁移多个任务设置模型以使用该接口,实现统一的任务编码。
- 收紧肉鸽、战斗、贸易站(商城)、基建、启动、奖励、回收与自定义任务的序列化逻辑,同时不改变用户可见行为。
- 调整关卡掉落 OCR,当关卡编号已确定为无效时跳过特殊的二次识别,减少不必要的工作量。
- 更新商城信用战验证和黑名单处理逻辑,更好地遵守每周日程并兼容不同客户端的黑名单映射。
- 统一配置序列化选项及默认值,并在各服务器区域刷新肉鸽与关卡任务的资源定义。
- 为 6.3.3 版本刷新本地化内容以及版本更新对话框文案。

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

## Summary by Sourcery

Refactor task queue view models to share a common serialization
interface, improve stability of vision-based recognition and task
execution flows, and update input options, configuration defaults, and
game resources for the 6.3.3 release.

New Features:
- Add new Win32 input methods that send or post window-relative messages
and expose them as selectable mouse input options for attach-window
connections.

Bug Fixes:
- Prevent invalid or fully off-screen rectangles from producing
incorrect regions of interest during vision processing.
- Ensure recruit probability calculations use the view model’s
configured selection times instead of the task model values.
- Avoid retrying the primary start button in startup tasks by capping
its retry limit at zero.
- Default infrastructure custom plan selection to an unset value and
migrate existing configuration accordingly, avoiding unintended plan
selection.
- Disable the StartGame behavior automatically when using attach-window
mode to prevent conflicting launch flows.

Enhancements:
- Introduce a shared serialization interface for task queue view models
and migrate multiple task setting models to use it for consistent task
encoding.
- Tighten Roguelike, fight, mall, infrastructure, startup, award,
reclamation, and custom task serialization logic without changing
user-facing behavior.
- Adjust stage drop OCR to skip special-case re-recognition when the
stage code is known invalid, reducing unnecessary work.
- Update mall credit-fight validation and blacklist handling to better
respect weekly schedules and client-specific blacklist mappings.
- Normalize configuration serialization options and defaults and refresh
Roguelike and stage task resource definitions across regions.
- Refresh localizations and the version update dialog copy for the 6.3.3
release.

</details>
2026-02-25 18:41:02 +08:00
uye
66e95ad657 docs: Update CHANGELOG for version 6.3.3
Updated CHANGELOG.md with new entries, improvements, and fixes for version 6.3.3.
2026-02-25 18:40:07 +08:00
github-actions[bot]
d8b37bee6f chore: Auto Update Game Resources - 2026-02-25
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/22393069463

[skip changelog]
2026-02-25 10:37:16 +00:00
Status102
19ba0a285e fix: 修复游戏内快捷编队在矢量突破S2不会自动重置回技能选择界面 (#15802)
* fix: 修复游戏内快捷编队在矢量突破S2不会自动重置回技能选择界面

* chore: 注释

* perf: 外服先跳过

* chore: EN

---------

Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2026-02-25 18:35:20 +08:00
github-actions[bot]
4e2fdc4552 chore: Auto Templates Optimization
Triggered by d605d345ff

[skip changelog]
2026-02-25 10:21:21 +00:00
uye
d605d345ff perf: 优化击杀数模板图 2026-02-25 18:20:51 +08:00
Constrat
9e6e9cb19f ci: updates to Resource Updater and clangd (#15758)
* fix: update classifyType assignment in update_items_data function
(global and txwy are up to date)

* fix: add CMAKE_INSTALL_PREFIX to cacheVariables in CMakePresets.json

* test: cleanup infrast_data

* chore: move submodules behind cache

* fix: CMake configs update for clangd code navigation

* docs: add windows vscode docs

---------

Co-authored-by: soundofautumn <62000745+soundofautumn@users.noreply.github.com>
2026-02-25 09:57:39 +01:00
status102
1b1897d1d9 perf(wpf): 悖论和保全作业解析后自动切换作业类型 2026-02-25 16:27:20 +08:00
status102
5d65dab393 perf: 自动编队无干员等级、技能等级要求时跳过识别 2026-02-25 15:58:00 +08:00
Manicsteiner
421b1bca55 chore: YostarJP ocr fix (#15793) 2026-02-25 00:04:01 +01:00
Constrat
e93d79202f fix: IS6 EN encounter regex 2026-02-24 22:36:49 +01:00
Constrat
001cb4d0d3 fix: YostarEN GO navigation fix 2026-02-24 22:02:34 +01:00
Constrat
397c057a51 fix: IS6 EN tongbao regex 2026-02-24 22:01:51 +01:00
github-actions[bot]
87440d4e28 docs: Auto Update Changelogs of v6.3.3 (#15790)
* docs: Auto Generate Changelog of Release v6.3.3

* 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-25 00:13:58 +08:00
github-actions[bot]
5cb9e582e1 chore: Auto Update Game Resources - 2026-02-24
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/22356445499

[skip changelog]
2026-02-24 15:04:07 +00:00
github-actions[bot]
7534c5c593 chore: Auto Update Game Resources - 2026-02-24
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/22348671848

[skip changelog]
2026-02-24 11:23:35 +00:00
github-actions[bot]
7782173e72 chore: Auto Update Game Resources - 2026-02-24
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/22343717529

[skip changelog]
2026-02-24 09:01:17 +00:00
status102
b4e538737b perf: 被禁用的关卡错误进入关卡名二次识别 2026-02-24 15:19:21 +08:00
status102
ee92dd8acf fix: 刷理智关卡名识别错误替换 2026-02-24 15:19:21 +08:00
github-actions[bot]
bbf9cf5d96 chore: Auto Update Game Resources - 2026-02-24
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/22340370862

[skip changelog]
2026-02-24 07:07:51 +00:00
Constrat
1dd1742918 fix: EN IS6 tongbao wrong regex 2026-02-23 21:28:37 +01:00
github-actions[bot]
2a23312a6e chore: Auto Update Game Resources - 2026-02-23
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/22320576641

[skip changelog]
2026-02-23 19:03:06 +00:00
Status102
4175d32962 rft(wpf): 长草任务序列化接口重构拆分 (#15773)
## Summary by Sourcery

将任务序列化逻辑从任务设置视图模型中抽取出来,放入一个专门的序列化接口中,并在每个任务特定的视图模型中通过内部接口实现。

Enhancements:
- 引入 `ITaskQueueModelSerialize` 接口,将任务序列化相关的逻辑与 `TaskSettingsViewModel`
解耦。
- 重构多个任务特定的设置视图模型,通过私有的嵌套 `ISerialize` 接口来实现新的序列化接口。
- 简化或移除未使用的 `using` 指令,并在相关视图模型中进行一些次要的属性格式整理。

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

## Summary by Sourcery

Extract task serialization logic from task settings view models into a
dedicated serialization interface implemented via inner interfaces on
each task-specific view model.

Enhancements:
- Introduce the ITaskQueueModelSerialize interface to decouple task
serialization concerns from TaskSettingsViewModel.
- Refactor multiple task-specific settings view models to implement the
new serialization interface via private nested ISerialize interfaces.
- Simplify or remove unused using directives and minor property
formatting cleanups across affected view models.

</details>

增强内容:
- 让 TaskSettingsViewModel 实现新的 ITaskQueueModelSerialize
接口,以将任务序列化相关的关注点从视图模型中分离出来。
- 清理 TaskSettingsViewModel 中未使用的 using 指令,以减少依赖。

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

## Summary by Sourcery

将任务序列化逻辑从任务设置视图模型中抽取出来,放入一个专门的序列化接口中,并在每个任务特定的视图模型中通过内部接口实现。

Enhancements:
- 引入 `ITaskQueueModelSerialize` 接口,将任务序列化相关的逻辑与 `TaskSettingsViewModel`
解耦。
- 重构多个任务特定的设置视图模型,通过私有的嵌套 `ISerialize` 接口来实现新的序列化接口。
- 简化或移除未使用的 `using` 指令,并在相关视图模型中进行一些次要的属性格式整理。

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

## Summary by Sourcery

Extract task serialization logic from task settings view models into a
dedicated serialization interface implemented via inner interfaces on
each task-specific view model.

Enhancements:
- Introduce the ITaskQueueModelSerialize interface to decouple task
serialization concerns from TaskSettingsViewModel.
- Refactor multiple task-specific settings view models to implement the
new serialization interface via private nested ISerialize interfaces.
- Simplify or remove unused using directives and minor property
formatting cleanups across affected view models.

</details>

</details>
2026-02-24 01:06:49 +08:00
status102
9aaf2df941 style: format
[skip changelog]
2026-02-23 20:11:57 +08:00
status102
24c10a9713 fix(wpf): 肉鸽烧水参数在特定情况未能生效 2026-02-23 20:04:41 +08:00
status102
d02ee89a3b rft(wpf): 长草任务序列化接口重构拆分 2026-02-23 20:03:45 +08:00
Status102
e14af2f630 fix: 超出范围的Rect使用{0, 0, 0, 0}代替原样返回, x, y为负值时width和height改正错误 (#15695)
* fix: 超出范围的Rect使用{0, 0, 0, 0}代替原样返回

* fix: x, y为负值时width和height改正错误

* fix: 全出去的直接0
2026-02-23 10:02:00 +08:00
status102
0f5f3a2f88 perf: 开始唤醒支持战斗中识别 2026-02-22 16:01:23 +08: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
uye
c54dd5450b Release v6.2.0 (#15346)
![f1467ea7b0b749744834e653cab7dff3](https://github.com/user-attachments/assets/c69fb771-a2ba-4bf0-ba3b-892016f5fd35)

## Summary by Sourcery

发布 v6.2.0,带来重新设计的日志侧边栏、扩展的自动战斗与基建管理选项、新成就系统,以及多项稳定性与用户体验改进。

新功能:
- 新增成就 DLC 系统,覆盖更多游戏玩法场景。
- 增强打手(copilot)任务选择功能,支持多级路径、相对目录以及本地任务折叠。
- 在基建管理中新增情报交换与情报发送的独立开关。
- 为冬灵寒脊主题新增基建配置,并调整相关干员选择逻辑。
- 新增 Gotify 通知渠道,并为 Bark 通知设置默认分类。
- 重新设计主页日志侧边栏,提供可切换的视觉样式、缩略图以及改进后的布局。
- 在今日开放关卡提示中显示仓库剩余数量,并将库存更新提示移至工具提示中。
- 限制基于 CPU 的推理线程使用,以优先保障模拟器性能。
- 当从临时路径运行时阻止应用启动,并保护非空的企鹅物流 ID 不被覆盖。
- 新增 Roguelike 主题推荐提示,支持多语言,并为新侧故事加入导航。
- 在 macOS 上禁用基于 CoreML 的检测与识别。

问题修复:
- 修复由于 2026-01-09 游戏更新及 Roguelike 暂停按钮位置调整导致的打手(copilot)运行失败问题。
- 解决打手任务清理异常,以及通过输入框特殊代码启动关卡时的相关问题。
- 修正情报数量识别,以及在情报已在展示板上时的一键放置逻辑。
- 提升对“隐秘战线”(Hidden Crimes)事件与结局的识别,包括对多余字符的处理。
- 防止在同时启用剿灭与备选关卡选项时企鹅物流报表 ID 被修改。
- 解决基建效率计算中的 out_of_range 错误以及远程控制截图残留问题。
- 修复文档站搜索、不同语言环境下掉落数量识别错误,以及多处命名和措辞问题。
- 修复调试图像路径、过长文件名以及 waydroid 截图行为相关问题。
- 更新若干素材与样式警告,包括 DormMini.png 以及 SA1518/SA1633 分析器警告。

优化增强:
- 优化打手(copilot)标签结构,包括将悖论模拟关卡单独分组。
- 当指定的刷理智次数与理智加成倍数设置冲突时给出警告。
- 改进情报交换、好友情报领取以及一键赠送情报的逻辑,减少误操作。
- 打磨 UI 布局、换行、工具提示以及缩略图行为与展示时机。
- 重构并简化属性依赖辅助工具为静态工具类,并使文件命名与目录结构保持一致。
- 将开发容器从 conda 迁移到基于 mise/uv 的环境,并在适当位置将 DPS 更名为 OPS。

文档:
- 为 `maa-cli` 添加一键脚本安装说明,并更新韩文文档与 VS Code 扩展使用指南。
- 统一中文整合文档的格式,并刷新源码链接以对应最新行号。
- 在战斗协议文档中补充摄像头移动相关说明。

日常维护:
- 调整文件夹检测逻辑、注释、默认日志缩略图数量限制以及公告按钮的位置。
- 移除冗余关卡,迁移 API 变更,并补充调试阶段的 GPU 使用说明。
- 更新多地区的 OCR 配置与应用内英文提示文案。

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

## Summary by Sourcery

Release v6.2.0 with a redesigned log sidebar, expanded automation and
base management options, new achievements, and multiple stability and UX
improvements.

New Features:
- Add an achievement DLC system covering additional gameplay scenarios.
- Enhance copilot task selection with multi-level paths, relative
directories, and local task collapsing.
- Introduce independent toggles for clue exchange and sending clues in
Base management.
- Add new Base configurations for the Winterwisp set and adjust related
operator selection logic.
- Add Gotify as a new notification channel and set a default category
for Bark notifications.
- Redesign the home log sidebar with switchable visual styles,
thumbnails, and improved layout.
- Display depot quantities in today’s open stages hints and move
inventory update prompts to tooltips.
- Limit CPU-based inference thread usage to prioritize emulator
performance.
- Block application startup when running from a temporary path and
protect non-empty Penguin Logistics IDs from being overwritten.
- Add new roguelike theme recommendation tips with multi-language
support and navigation for the new side story.
- Disable CoreML-based detection and recognition on macOS.

Bug Fixes:
- Fix copilot failures caused by the 2026-01-09 game update and updated
roguelike pause button position.
- Resolve issues with copilot job clearing and starting runs via special
codes from the input box.
- Correct clue count recognition and one-click clue placement when clues
are already on the board.
- Improve recognition for Hidden Crimes events and endings, including
handling of extra characters.
- Prevent changes to Penguin Logistics report IDs when Annihilation and
backup stage options are both enabled.
- Address out_of_range errors in Base efficiency calculations and stale
screenshots in remote control capture.
- Fix documentation site search, locale-specific drop count misreads,
and various naming and wording issues.
- Resolve issues with debug image paths, overly long filenames, and
waydroid screencap behavior.
- Update assorted assets and style warnings, including DormMini.png and
SA1518/SA1633 analyzer warnings.

Enhancements:
- Refine copilot tab structure, including separating paradox simulation
stages.
- Warn when specified sanity-farming run counts conflict with sanity
multiplier settings.
- Improve logic for clue exchange, friend clue retrieval, and one-click
clue sending to reduce mis-operations.
- Polish UI layouts, wrapping, tooltips, and thumbnail behavior and
timing.
- Refactor and simplify property dependency helpers into a static
utility and align file naming with structure.
- Migrate the development container from conda to a mise/uv-based setup
and rename DPS to OPS where appropriate.

Documentation:
- Document one-click maa-cli installation via scripts and update KR docs
and VS Code extension guides.
- Align Chinese integrated documentation formatting and refresh source
links to current line numbers.
- Expand battle protocol docs with camera movement instructions.

Chores:
- Tweak folder detection logic, comments, default log thumbnail limits,
and announcement button placement.
- Remove redundant stages, port API changes, and add debug-time GPU
usage notes.
- Update multiple region-specific OCR configurations and English strings
for in-app messages.

</details>
2026-01-10 21:07:55 +08:00
uye
8ac2b1bc58 docs: Update CHANGELOG for v6.2.0 release notes
Refactor the layout and visual style of the log sidebar on the homepage.
2026-01-10 21:04:12 +08:00
uye
8101f35923 docs: changelog 2026-01-10 21:03:14 +08:00
uye
20b317b07a feat: 重构仓库识别结构,支持根据关卡掉落情况自动更新 (#15358)
* feat: 重构仓库识别结构,支持根据关卡掉落情况自动更新

* feat: 上次同步时间

* chore: 使用 TryParseExact
2026-01-10 21:01:01 +08:00
status102
4a42d1142b fix: 移除地图未修复期间的临时糊屎, 移除未更正的注释
link to d0b594cdc0, ade38a68a0.
2026-01-10 18:02:30 +08:00
status102
ed2594b5c7 perf(core): ProcessTask 输出优化 2026-01-10 18:02:12 +08:00
萨拉托加
cca39cf410 fix: 界园肉鸽因点击模板边缘导致关卡进不去 (#15352)
* fix: 界园肉鸽因点击模板边缘导致关卡进不去

* fix: postDelay

上次改错了
2026-01-10 17:40:29 +08:00
status102
a14f7c3a3a chore: doc 2026-01-10 15:57:27 +08:00
AnnAngela
430c389a90 docs: Remove v6.2.0 section from CHANGELOG
Removed version v6.2.0 section from CHANGELOG.
2026-01-10 11:49:52 +08:00
AnnAngela
dcbd843534 docs: Update CHANGELOG.md
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
2026-01-10 11:49:22 +08:00
萨拉托加
f3e0c6a527 chore: 添加雪猎基建技能加成
fix #15334
2026-01-10 08:56:49 +08:00
github-actions[bot]
279d9092a4 chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20865488969
[skip changelog]
2026-01-09 21:04:51 +00:00
status102
d25edcbbbd fix: 游戏进入战斗关卡后, 暂停/恢复 按钮亮度在点击后发生变化 255 -> 245 2026-01-10 03:10:29 +08:00
uye
2751467878 docs: v6.2.0 2026-01-09 23:58:27 +08:00
uye
95bc306404 Release v6.2.0-beta.4 (#15339)
## Summary by Sourcery

发布 6.2.0 版本,对日志侧边栏进行了全新设计,扩展了 Copilot 和基建管理能力,并带来多项稳定性和用户体验改进。

New Features:
- 新增成就 DLC 系统,在多个关卡场景中加入全新成就。
- 增强 Copilot 任务文件选择功能,支持嵌套路径和相对目录,并改进任务下拉列表的分组方式。
- 在基建自动化设置中新增线索交换与线索发送的开关选项。
- 新增冬季基建分组配置调整,以及包括 Gotify 和默认 Bark 分类在内的通知选项。
- 重新设计首页日志侧边栏,支持切换视觉样式、日志缩略图,并加入悬浮日志窗口按钮。
- 在“今日可打关卡”提示中显示仓库库存数量,并将库存更新提示移动到工具提示(tooltip)中。
- 增加安全防护措施,例如限制 CPU 推理线程数、在调试模式下可选自动资源重载,以及在程序从临时目录运行时阻止启动。

Bug Fixes:
- 修复多个 Copilot 和关卡自动战斗问题,包括最新版游戏更新后导致的失败,以及通过输入框清除或开始任务时出现的问题。
- 解决线索识别与摆放问题,包括当线索已在棋盘上时的一键摆放,以及在某些选项组合下处理不正确的问题。
- 修复肉鸽和活动识别逻辑,包括隐藏结局识别、多余角色处理、干员可用性缺失以及受语言环境影响的掉落数量解析问题。
- 处理基础设施相关的 bug,例如基建效率计算异常、远程控制截图不刷新的问题,以及调试图像和文档搜索行为不正确的问题。
- 修正多处素材、文本与样式问题,包括关卡名拼写错误、警告清理,以及为特定语言环境更新图像资源。
- 确保 Copilot 任务在开始前会校验并设置受支持的关卡名称,并调整临时目录检测逻辑,以可靠地阻止在临时路径中运行。

Enhancements:
- 优化 Copilot 标签页逻辑,将悖论模拟任务拆分并改进相关警告与交互体验。
- 改进线索交换和好友线索获取逻辑,以及通用 UI 布局、换行、工具提示和缩略图行为。
- 重构依赖辅助工具及相关视图模型,调整缩略图工具提示延迟,并重命名文件以更好匹配项目结构。
- 微调公告对话框、日志缩略图数量上限及其他小型 UI 行为,以提升可用性。
- 将开发容器环境从 conda 迁移到基于 mise/uv 的方案,并在合适位置将 DPS 重命名为 OPS。

Documentation:
- 更新和扩充面向用户的文档,包括一键 CLI 安装、战斗协议中的镜头移动说明、中文集成格式、韩文(KR)文档,以及 VS Code 插件快速
OCR 使用说明。

Chores:
- 调整文件夹检测和注释,微调公告按钮位置,并为不同服务器和场景更新地图配置和 OCR 相关参数。
- 新增调试相关辅助内容,例如用于强制资源重载的 `IsDebugVersion` 标志,以及调试模式下 GPU 使用的注解。

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

## Summary by Sourcery

Release version 6.2.0 with a redesigned log sidebar, expanded Copilot
and base management capabilities, and assorted stability and UX
improvements.

New Features:
- Add an achievement DLC system with new achievements across multiple
scenarios.
- Enhance Copilot task file selection to support nested paths and
relative directories, and improve the task dropdown grouping.
- Introduce toggles for conducting clue exchange and sending clues in
base automation settings.
- Add winter base group configuration adjustments and new notification
options including Gotify and default Bark categories.
- Redesign the home log sidebar with switchable visual styles, log
thumbnails, and a floating log window button.
- Display depot inventory counts in today’s open stages hints and move
inventory update tips into tooltips.
- Add safeguards such as limiting CPU inference threads, optional auto
resource reload in debug, and blocking startup when running from
temporary directories.

Bug Fixes:
- Fix multiple Copilot and stage automation issues, including failures
after the latest game update and problems clearing or starting tasks via
the input box.
- Resolve clue recognition and placement issues, including one-click
placement when clues are already on the board and incorrect handling
when certain options are combined.
- Fix roguelike and event recognition logic, including hidden ending
recognition, extra-character handling, missing operator availability,
and locale-dependent drop count parsing.
- Address infrastructure-related bugs such as base efficiency
calculation exceptions, remote control screenshots not updating, and
incorrect debug image and document search behavior.
- Correct various assets, strings, and style issues, including stage
name typos, warning cleanups, and updated images for specific locales.
- Ensure Copilot tasks validate and set supported stage names before
starting, and adjust temp directory detection logic to reliably block
running from temporary paths.

Enhancements:
- Refine Copilot tab logic by splitting paradox simulation tasks and
improving related warnings and UX.
- Improve clue exchange and friend clue retrieval logic and general UI
layout, wrapping, tooltips, and thumbnail behavior.
- Refactor dependency helper utilities and related view models, adjust
thumbnail tooltip delays, and rename files to better match the project
structure.
- Tweak announcement dialogs, log thumbnail limits, and other small UI
behaviors for better usability.
- Migrate the development container environment from conda to a
mise/uv-based setup and rename DPS to OPS where appropriate.

Documentation:
- Update and expand user-facing documentation, including one-click CLI
installation, battle protocol camera movement, Chinese integration
formatting, KR docs, and VS Code extension docs for quick OCR.

Chores:
- Adjust folder detection and comments, tune announcement button
positions, and update map configurations and OCR tweaks for various
servers and scenarios.
- Add debug-related helpers such as an IsDebugVersion flag for forced
resource reloads and annotations for GPU use under debugging.

</details>

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

## Summary by Sourcery

发布 6.2.0 版本,对日志侧边栏进行了全新设计,扩展了 Copilot 和基建管理能力,并带来多项稳定性和用户体验改进。

New Features:
- 新增成就 DLC 系统,在多个关卡场景中加入全新成就。
- 增强 Copilot 任务文件选择功能,支持嵌套路径和相对目录,并改进任务下拉列表的分组方式。
- 在基建自动化设置中新增线索交换与线索发送的开关选项。
- 新增冬季基建分组配置调整,以及包括 Gotify 和默认 Bark 分类在内的通知选项。
- 重新设计首页日志侧边栏,支持切换视觉样式、日志缩略图,并加入悬浮日志窗口按钮。
- 在“今日可打关卡”提示中显示仓库库存数量,并将库存更新提示移动到工具提示(tooltip)中。
- 增加安全防护措施,例如限制 CPU 推理线程数、在调试模式下可选自动资源重载,以及在程序从临时目录运行时阻止启动。

Bug Fixes:
- 修复多个 Copilot 和关卡自动战斗问题,包括最新版游戏更新后导致的失败,以及通过输入框清除或开始任务时出现的问题。
- 解决线索识别与摆放问题,包括当线索已在棋盘上时的一键摆放,以及在某些选项组合下处理不正确的问题。
- 修复肉鸽和活动识别逻辑,包括隐藏结局识别、多余角色处理、干员可用性缺失以及受语言环境影响的掉落数量解析问题。
- 处理基础设施相关的 bug,例如基建效率计算异常、远程控制截图不刷新的问题,以及调试图像和文档搜索行为不正确的问题。
- 修正多处素材、文本与样式问题,包括关卡名拼写错误、警告清理,以及为特定语言环境更新图像资源。
- 确保 Copilot 任务在开始前会校验并设置受支持的关卡名称,并调整临时目录检测逻辑,以可靠地阻止在临时路径中运行。

Enhancements:
- 优化 Copilot 标签页逻辑,将悖论模拟任务拆分并改进相关警告与交互体验。
- 改进线索交换和好友线索获取逻辑,以及通用 UI 布局、换行、工具提示和缩略图行为。
- 重构依赖辅助工具及相关视图模型,调整缩略图工具提示延迟,并重命名文件以更好匹配项目结构。
- 微调公告对话框、日志缩略图数量上限及其他小型 UI 行为,以提升可用性。
- 将开发容器环境从 conda 迁移到基于 mise/uv 的方案,并在合适位置将 DPS 重命名为 OPS。

Documentation:
- 更新和扩充面向用户的文档,包括一键 CLI 安装、战斗协议中的镜头移动说明、中文集成格式、韩文(KR)文档,以及 VS Code 插件快速
OCR 使用说明。

Chores:
- 调整文件夹检测和注释,微调公告按钮位置,并为不同服务器和场景更新地图配置和 OCR 相关参数。
- 新增调试相关辅助内容,例如用于强制资源重载的 `IsDebugVersion` 标志,以及调试模式下 GPU 使用的注解。

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

## Summary by Sourcery

Release version 6.2.0 with a redesigned log sidebar, expanded Copilot
and base management capabilities, and assorted stability and UX
improvements.

New Features:
- Add an achievement DLC system with new achievements across multiple
scenarios.
- Enhance Copilot task file selection to support nested paths and
relative directories, and improve the task dropdown grouping.
- Introduce toggles for conducting clue exchange and sending clues in
base automation settings.
- Add winter base group configuration adjustments and new notification
options including Gotify and default Bark categories.
- Redesign the home log sidebar with switchable visual styles, log
thumbnails, and a floating log window button.
- Display depot inventory counts in today’s open stages hints and move
inventory update tips into tooltips.
- Add safeguards such as limiting CPU inference threads, optional auto
resource reload in debug, and blocking startup when running from
temporary directories.

Bug Fixes:
- Fix multiple Copilot and stage automation issues, including failures
after the latest game update and problems clearing or starting tasks via
the input box.
- Resolve clue recognition and placement issues, including one-click
placement when clues are already on the board and incorrect handling
when certain options are combined.
- Fix roguelike and event recognition logic, including hidden ending
recognition, extra-character handling, missing operator availability,
and locale-dependent drop count parsing.
- Address infrastructure-related bugs such as base efficiency
calculation exceptions, remote control screenshots not updating, and
incorrect debug image and document search behavior.
- Correct various assets, strings, and style issues, including stage
name typos, warning cleanups, and updated images for specific locales.
- Ensure Copilot tasks validate and set supported stage names before
starting, and adjust temp directory detection logic to reliably block
running from temporary paths.

Enhancements:
- Refine Copilot tab logic by splitting paradox simulation tasks and
improving related warnings and UX.
- Improve clue exchange and friend clue retrieval logic and general UI
layout, wrapping, tooltips, and thumbnail behavior.
- Refactor dependency helper utilities and related view models, adjust
thumbnail tooltip delays, and rename files to better match the project
structure.
- Tweak announcement dialogs, log thumbnail limits, and other small UI
behaviors for better usability.
- Migrate the development container environment from conda to a
mise/uv-based setup and rename DPS to OPS where appropriate.

Documentation:
- Update and expand user-facing documentation, including one-click CLI
installation, battle protocol camera movement, Chinese integration
formatting, KR docs, and VS Code extension docs for quick OCR.

Chores:
- Adjust folder detection and comments, tune announcement button
positions, and update map configurations and OCR tweaks for various
servers and scenarios.
- Add debug-related helpers such as an IsDebugVersion flag for forced
resource reloads and annotations for GPU use under debugging.

</details>

</details>
- 修复
`IsRunningInTempDirectory`,通过确保当前路径和临时路径都包含一致的尾部分隔符并处理可替代的路径分隔符,从而正确识别临时目录位置。

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

## Summary by Sourcery

发布 6.2.0 版本,对日志侧边栏进行了全新设计,扩展了 Copilot 和基建管理能力,并带来多项稳定性和用户体验改进。

New Features:
- 新增成就 DLC 系统,在多个关卡场景中加入全新成就。
- 增强 Copilot 任务文件选择功能,支持嵌套路径和相对目录,并改进任务下拉列表的分组方式。
- 在基建自动化设置中新增线索交换与线索发送的开关选项。
- 新增冬季基建分组配置调整,以及包括 Gotify 和默认 Bark 分类在内的通知选项。
- 重新设计首页日志侧边栏,支持切换视觉样式、日志缩略图,并加入悬浮日志窗口按钮。
- 在“今日可打关卡”提示中显示仓库库存数量,并将库存更新提示移动到工具提示(tooltip)中。
- 增加安全防护措施,例如限制 CPU 推理线程数、在调试模式下可选自动资源重载,以及在程序从临时目录运行时阻止启动。

Bug Fixes:
- 修复多个 Copilot 和关卡自动战斗问题,包括最新版游戏更新后导致的失败,以及通过输入框清除或开始任务时出现的问题。
- 解决线索识别与摆放问题,包括当线索已在棋盘上时的一键摆放,以及在某些选项组合下处理不正确的问题。
- 修复肉鸽和活动识别逻辑,包括隐藏结局识别、多余角色处理、干员可用性缺失以及受语言环境影响的掉落数量解析问题。
- 处理基础设施相关的 bug,例如基建效率计算异常、远程控制截图不刷新的问题,以及调试图像和文档搜索行为不正确的问题。
- 修正多处素材、文本与样式问题,包括关卡名拼写错误、警告清理,以及为特定语言环境更新图像资源。
- 确保 Copilot 任务在开始前会校验并设置受支持的关卡名称,并调整临时目录检测逻辑,以可靠地阻止在临时路径中运行。

Enhancements:
- 优化 Copilot 标签页逻辑,将悖论模拟任务拆分并改进相关警告与交互体验。
- 改进线索交换和好友线索获取逻辑,以及通用 UI 布局、换行、工具提示和缩略图行为。
- 重构依赖辅助工具及相关视图模型,调整缩略图工具提示延迟,并重命名文件以更好匹配项目结构。
- 微调公告对话框、日志缩略图数量上限及其他小型 UI 行为,以提升可用性。
- 将开发容器环境从 conda 迁移到基于 mise/uv 的方案,并在合适位置将 DPS 重命名为 OPS。

Documentation:
- 更新和扩充面向用户的文档,包括一键 CLI 安装、战斗协议中的镜头移动说明、中文集成格式、韩文(KR)文档,以及 VS Code 插件快速
OCR 使用说明。

Chores:
- 调整文件夹检测和注释,微调公告按钮位置,并为不同服务器和场景更新地图配置和 OCR 相关参数。
- 新增调试相关辅助内容,例如用于强制资源重载的 `IsDebugVersion` 标志,以及调试模式下 GPU 使用的注解。

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

## Summary by Sourcery

Release version 6.2.0 with a redesigned log sidebar, expanded Copilot
and base management capabilities, and assorted stability and UX
improvements.

New Features:
- Add an achievement DLC system with new achievements across multiple
scenarios.
- Enhance Copilot task file selection to support nested paths and
relative directories, and improve the task dropdown grouping.
- Introduce toggles for conducting clue exchange and sending clues in
base automation settings.
- Add winter base group configuration adjustments and new notification
options including Gotify and default Bark categories.
- Redesign the home log sidebar with switchable visual styles, log
thumbnails, and a floating log window button.
- Display depot inventory counts in today’s open stages hints and move
inventory update tips into tooltips.
- Add safeguards such as limiting CPU inference threads, optional auto
resource reload in debug, and blocking startup when running from
temporary directories.

Bug Fixes:
- Fix multiple Copilot and stage automation issues, including failures
after the latest game update and problems clearing or starting tasks via
the input box.
- Resolve clue recognition and placement issues, including one-click
placement when clues are already on the board and incorrect handling
when certain options are combined.
- Fix roguelike and event recognition logic, including hidden ending
recognition, extra-character handling, missing operator availability,
and locale-dependent drop count parsing.
- Address infrastructure-related bugs such as base efficiency
calculation exceptions, remote control screenshots not updating, and
incorrect debug image and document search behavior.
- Correct various assets, strings, and style issues, including stage
name typos, warning cleanups, and updated images for specific locales.
- Ensure Copilot tasks validate and set supported stage names before
starting, and adjust temp directory detection logic to reliably block
running from temporary paths.

Enhancements:
- Refine Copilot tab logic by splitting paradox simulation tasks and
improving related warnings and UX.
- Improve clue exchange and friend clue retrieval logic and general UI
layout, wrapping, tooltips, and thumbnail behavior.
- Refactor dependency helper utilities and related view models, adjust
thumbnail tooltip delays, and rename files to better match the project
structure.
- Tweak announcement dialogs, log thumbnail limits, and other small UI
behaviors for better usability.
- Migrate the development container environment from conda to a
mise/uv-based setup and rename DPS to OPS where appropriate.

Documentation:
- Update and expand user-facing documentation, including one-click CLI
installation, battle protocol camera movement, Chinese integration
formatting, KR docs, and VS Code extension docs for quick OCR.

Chores:
- Adjust folder detection and comments, tune announcement button
positions, and update map configurations and OCR tweaks for various
servers and scenarios.
- Add debug-related helpers such as an IsDebugVersion flag for forced
resource reloads and annotations for GPU use under debugging.

</details>

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

## Summary by Sourcery

发布 6.2.0 版本,对日志侧边栏进行了全新设计,扩展了 Copilot 和基建管理能力,并带来多项稳定性和用户体验改进。

New Features:
- 新增成就 DLC 系统,在多个关卡场景中加入全新成就。
- 增强 Copilot 任务文件选择功能,支持嵌套路径和相对目录,并改进任务下拉列表的分组方式。
- 在基建自动化设置中新增线索交换与线索发送的开关选项。
- 新增冬季基建分组配置调整,以及包括 Gotify 和默认 Bark 分类在内的通知选项。
- 重新设计首页日志侧边栏,支持切换视觉样式、日志缩略图,并加入悬浮日志窗口按钮。
- 在“今日可打关卡”提示中显示仓库库存数量,并将库存更新提示移动到工具提示(tooltip)中。
- 增加安全防护措施,例如限制 CPU 推理线程数、在调试模式下可选自动资源重载,以及在程序从临时目录运行时阻止启动。

Bug Fixes:
- 修复多个 Copilot 和关卡自动战斗问题,包括最新版游戏更新后导致的失败,以及通过输入框清除或开始任务时出现的问题。
- 解决线索识别与摆放问题,包括当线索已在棋盘上时的一键摆放,以及在某些选项组合下处理不正确的问题。
- 修复肉鸽和活动识别逻辑,包括隐藏结局识别、多余角色处理、干员可用性缺失以及受语言环境影响的掉落数量解析问题。
- 处理基础设施相关的 bug,例如基建效率计算异常、远程控制截图不刷新的问题,以及调试图像和文档搜索行为不正确的问题。
- 修正多处素材、文本与样式问题,包括关卡名拼写错误、警告清理,以及为特定语言环境更新图像资源。
- 确保 Copilot 任务在开始前会校验并设置受支持的关卡名称,并调整临时目录检测逻辑,以可靠地阻止在临时路径中运行。

Enhancements:
- 优化 Copilot 标签页逻辑,将悖论模拟任务拆分并改进相关警告与交互体验。
- 改进线索交换和好友线索获取逻辑,以及通用 UI 布局、换行、工具提示和缩略图行为。
- 重构依赖辅助工具及相关视图模型,调整缩略图工具提示延迟,并重命名文件以更好匹配项目结构。
- 微调公告对话框、日志缩略图数量上限及其他小型 UI 行为,以提升可用性。
- 将开发容器环境从 conda 迁移到基于 mise/uv 的方案,并在合适位置将 DPS 重命名为 OPS。

Documentation:
- 更新和扩充面向用户的文档,包括一键 CLI 安装、战斗协议中的镜头移动说明、中文集成格式、韩文(KR)文档,以及 VS Code 插件快速
OCR 使用说明。

Chores:
- 调整文件夹检测和注释,微调公告按钮位置,并为不同服务器和场景更新地图配置和 OCR 相关参数。
- 新增调试相关辅助内容,例如用于强制资源重载的 `IsDebugVersion` 标志,以及调试模式下 GPU 使用的注解。

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

## Summary by Sourcery

Release version 6.2.0 with a redesigned log sidebar, expanded Copilot
and base management capabilities, and assorted stability and UX
improvements.

New Features:
- Add an achievement DLC system with new achievements across multiple
scenarios.
- Enhance Copilot task file selection to support nested paths and
relative directories, and improve the task dropdown grouping.
- Introduce toggles for conducting clue exchange and sending clues in
base automation settings.
- Add winter base group configuration adjustments and new notification
options including Gotify and default Bark categories.
- Redesign the home log sidebar with switchable visual styles, log
thumbnails, and a floating log window button.
- Display depot inventory counts in today’s open stages hints and move
inventory update tips into tooltips.
- Add safeguards such as limiting CPU inference threads, optional auto
resource reload in debug, and blocking startup when running from
temporary directories.

Bug Fixes:
- Fix multiple Copilot and stage automation issues, including failures
after the latest game update and problems clearing or starting tasks via
the input box.
- Resolve clue recognition and placement issues, including one-click
placement when clues are already on the board and incorrect handling
when certain options are combined.
- Fix roguelike and event recognition logic, including hidden ending
recognition, extra-character handling, missing operator availability,
and locale-dependent drop count parsing.
- Address infrastructure-related bugs such as base efficiency
calculation exceptions, remote control screenshots not updating, and
incorrect debug image and document search behavior.
- Correct various assets, strings, and style issues, including stage
name typos, warning cleanups, and updated images for specific locales.
- Ensure Copilot tasks validate and set supported stage names before
starting, and adjust temp directory detection logic to reliably block
running from temporary paths.

Enhancements:
- Refine Copilot tab logic by splitting paradox simulation tasks and
improving related warnings and UX.
- Improve clue exchange and friend clue retrieval logic and general UI
layout, wrapping, tooltips, and thumbnail behavior.
- Refactor dependency helper utilities and related view models, adjust
thumbnail tooltip delays, and rename files to better match the project
structure.
- Tweak announcement dialogs, log thumbnail limits, and other small UI
behaviors for better usability.
- Migrate the development container environment from conda to a
mise/uv-based setup and rename DPS to OPS where appropriate.

Documentation:
- Update and expand user-facing documentation, including one-click CLI
installation, battle protocol camera movement, Chinese integration
formatting, KR docs, and VS Code extension docs for quick OCR.

Chores:
- Adjust folder detection and comments, tune announcement button
positions, and update map configurations and OCR tweaks for various
servers and scenarios.
- Add debug-related helpers such as an IsDebugVersion flag for forced
resource reloads and annotations for GPU use under debugging.

</details>

</details>

</details>
2026-01-09 23:54:01 +08:00
uye
776ee22d79 docs: Revise CHANGELOG for v6.2.0-beta.4
Updated version to v6.2.0-beta.4 and revised changelog entries, including highlights and detailed changes for new features, improvements, fixes, and documentation updates.
2026-01-09 23:53:11 +08:00
uye
f6427b1f3f chore: 删除未使用函数 2026-01-09 23:39:16 +08:00
status102
9fa2971da6 fix: 删多了 2026-01-09 23:31:24 +08:00
AnnAngela
44d74846f4 docs: Update CHANGELOG for version 6.2.0
Updated the CHANGELOG for version 6.2.0, detailing UI enhancements, log sidebar redesign, daily stage hint improvements, base management optimizations, and new achievements.
2026-01-09 23:26:38 +08:00
status102
f60af3f51e fix: 漏了 2026-01-09 23:22:29 +08:00
status102
ff6660aa75 fix: 忘删了 2026-01-09 23:12:13 +08:00
uye
886f2a43dd fix: 肉鸽暂停按钮更新 2026-01-09 23:06:44 +08:00
github-actions[bot]
4ebacda6be docs: Auto Update Changelogs of v6.2.0 (#15340)
* docs: Auto Generate Changelog of Release v6.2.0

* docs:  changelog

* docs: 多了个换行

---------

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-09 22:14:38 +08:00
uye
8deeea77d3 chore: 调整文件夹判断逻辑 2026-01-09 21:42:45 +08:00
uye
b9a850a8c1 Release v6.2.0-beta.3 (#15337)
## Summary by Sourcery

引入专用的悖论协战任务,并优化协战、OCR、肉鸽和基建相关行为,同时移除旧版视频识别路径,并相应更新协议、资源和 UI。

New Features:
- 新增专用的 `ParadoxCopilot` 核心任务和 WPF 模型,用于运行单次或多次的悖论模拟操作。
- 在 UI 中暴露一个肉鸽主题提示字符串,会随所选主题动态更新。
- 在关卡提示 UI 中,将背包物品数量与支线关卡掉落提示一并展示。

Bug Fixes:
- 禁止在非空闲状态下启动协战任务,并在标签页、任务类型与协战列表之间实施更严格的校验,避免任务类型不匹配或空任务运行。
- 修复悖论任务校验逻辑:通过本地化名称检查干员,并在数据过期时触发资源重载和成就更新。
- 确保仓库识别完成后会更新日期输入提示,并在处理报告响应时避免覆盖已有的企鹅 ID。
- 处理物品列表查询中缺失的物品名称,改为返回 null,而不是回显物品 ID。

Enhancements:
- 优化协战文件名处理、文件名显示更新、用户附加信息解析和多任务列表管理,同时移除基于视频的协战流程支持。
- 拓展悖论识别功能以支持读取协战文件,与战斗任务集成,并通过新增的界面任务支持批量悖论操作。
- 通过根据硬件并发度限制线程数并设置顺序执行模式来优化 OCR 和 ONNX 的 CPU 执行表现,并记录相关配置日志。
- 改进基建线索处理:使用 OCR 决定是否通过「快速填入」按钮进行批量插入,简化返回接待室的导航流程,并在设施检测失败时保存调试图片。
- 在协战物品集合发生变化时增加日志和索引维护,并确保自动编队和协战列表的使用遵循当前选中的标签页。
- 将自动资源重载功能置于新的用户开关之后,并在合适的构建版本中提供对应的 UI 选项。
- 收紧协战多任务序列化的错误信息,并在助手中清晰区分 SSS 和悖论列表的处理。
- 阻止从临时目录运行应用程序,并向用户显示错误提示,同时新增用于检测临时目录运行环境的工具方法。
- 在核心、代理和文档中统一「集成战略」回调事件名称和日志键(`Combat/Emergency`)。
- 通过使用现代集合初始化器和属性依赖工具,以及集中处理部分 UI 更新,简化多个 WPF 视图模型与服务实现。

Build:
- 从代码库中移除 AutoLocalization 工具目录及相关 Python 项目文件。

Documentation:
- 更新所有支持语言的集成协议文档,移除已废弃的协战列表字段 `is_paradox` 支持,并补充新的 `ParadoxCopilot`
任务结构说明。
- 修订回调结构文档,在所有语言中反映重命名后的集成战略战斗相关子任务标识符。

Chores:
- 更新明日方舟资源数据文件(关卡、地块、战斗数据、基建、物品索引、肉鸽任务、UI 主题任务以及版本元数据),并为近期关卡新增地块位置文件。

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

## Summary by Sourcery

Introduce a dedicated paradox copilot task and refine copilot, OCR,
roguelike, and infrastructure behaviors while removing legacy video
recognition paths and updating protocols, resources, and UI accordingly.

New Features:
- Add a dedicated ParadoxCopilot core task and WPF model to run single
or multiple paradox simulation operations.
- Expose a roguelike theme tip string in the UI that updates with the
selected theme.
- Surface inventory counts alongside side-story stage drop tips in the
stage tips UI.

Bug Fixes:
- Prevent starting copilot tasks from non-idle state and enforce better
validation between tabs, task types, and copilot lists to avoid
mismatched or empty runs.
- Fix paradox task validation by checking operators against localized
names, triggering resource reloads and achievements on outdated data.
- Ensure depot recognition completion updates the date prompt and avoid
overwriting an existing Penguin ID when processing report responses.
- Handle missing item names in item list lookups by returning null
instead of echoing the ID.

Enhancements:
- Refine copilot filename handling, display filename updates, user
additional parsing, and multi-task list management, while dropping
support for video-based copilot flows.
- Extend paradox recognition to consume copilot files, integrate with
the battle task, and support batch paradox operations via a new
interface task.
- Optimize OCR and ONNX CPU execution by limiting thread counts based on
hardware concurrency and setting sequential execution modes, and log
relevant configuration.
- Improve infrastructure clue handling by using OCR to decide bulk
insertion via the quick-insert button, simplifying navigation back to
reception, and saving debug images when facility detection fails.
- Add logging and index maintenance when the copilot item collection
changes and ensure auto-formation and copilot list usage respect the
selected tab.
- Gate auto resource reload behind a new user-toggle flag, and expose a
UI option for it in appropriate builds.
- Tighten copilot multi-task serialization error messages and cleanly
separate SSS and paradox list handling in the assistant.
- Block running the app from temporary directories with a user-facing
error message, and add a utility to detect temp-directory execution
environments.
- Align Integrated Strategy callback event names and logging keys
(Combat/Emergency) across core, proxy, and documentation.
- Simplify various WPF view models and services by using modern
collection initializers and property dependency utilities, and by
centralizing certain UI updates.

Build:
- Remove the AutoLocalization tooling directory and associated Python
project files from the repository.

Documentation:
- Update integration protocol docs in all supported languages to remove
deprecated copilot list `is_paradox` support and document the new
ParadoxCopilot task schema.
- Revise callback schema docs to reflect renamed Integrated Strategy
combat-related subtask identifiers across all languages.

Chores:
- Update Arknights resource data files (stages, tiles, battle data,
infrastructure, item index, roguelike tasks, UI theme tasks, and version
metadata) and add new tile position files for recent stages.

</details>
2026-01-09 21:41:29 +08:00
github-actions[bot]
58de47bca7 docs: Auto Update Changelogs of v6.2.0-beta.3 (#15338)
* docs: Auto Generate Changelog of Release v6.2.0-beta.3

* 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-09 21:40:01 +08:00
github-actions[bot]
dd703da02f feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20853303793
[skip changelog]
2026-01-09 13:24:02 +00:00
uye
efadf87944 rft: 重构自动战斗标签页逻辑, 拆分悖论模拟任务 (#15327)
* fix: 自动战斗切换至其他活动时不会取消战斗列表

* fix: 运行时禁止切换标签页

* fix: 调整悖论模拟检查顺序

* chore: 移除视频识别

* rft: 重构自动战斗选项页,增加列表混用与类型检查

* feat: 切换标签页时清空作业输入框

* chore: 添加注释

* refactor: 移除 CopilotItemViewModel 中的 Index 属性并更新相关逻辑 (#15328)

* rft: 重构拆分悖论模拟任务

* fix: stage_name

* Revert "refactor: 移除 CopilotItemViewModel 中的 Index 属性并更新相关逻辑 (#15328)"

This reverts commit bbdca4ebcb.

* fix: Wpf 自动战斗-战斗列表 拖动后index错误

* i18n: zh-tw

* i18n: KR

* i18n: EN

* i18n: JP

* style: 空格

---------

Co-authored-by: yali-hzy <48376189+yali-hzy@users.noreply.github.com>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2026-01-09 21:16:16 +08:00
uye
fae39b8fa4 refactor(BREAKING): rename Dps to Ops (#15325)
* refactor!: rename Dps to Ops (breaking change for callbacks)

BREAKING CHANGE: This changes all callback interfaces from Dps to Ops naming.

* chore: 删除 AutoLocalization

* fix: typo
2026-01-09 20:54:49 +08:00
uye
6e0e3998b9 fix: 撷英调香师 2026-01-09 20:42:15 +08:00
uye
5a30197362 debug: 测试代码
[skip changelog]
2026-01-09 20:41:56 +08:00
uye
60e191adf7 feat: 自动战斗日志栏添加日志悬浮窗按钮 2026-01-09 20:36:02 +08:00
github-actions[bot]
a02e9b8fc0 chore: Auto Update Game Resources - 2026-01-09
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20850458500

[skip changelog]
2026-01-09 11:34:40 +00:00
uye
224ede8c31 feat: 低于 2 核心电脑使用单线程 OCR 2026-01-09 19:28:01 +08:00
uye
82ee510499 feat: 更新库存提示移到 ToolTip 2026-01-09 19:25:23 +08:00
uye
6f99eb5a7b feat: 关卡提示支持显示库存 2026-01-09 18:43:03 +08:00
uye
04b7b11dfc perf: 优化线索交流、获取好友线索逻辑 2026-01-09 17:45:33 +08:00
status102
352ae52ca1 chore: H16-4, 引航者#6 TN-1~TN-4 剩余地图 view[1] 2026-01-09 17:34:02 +08:00
雪银星月
1b98edc30a feat(roguelike): 新增肉鸽主题推荐配置tip并适配多语言 (#15324)
* feat(roguelike): 新增肉鸽主题推荐配置提示并适配多语言

* fix(roguelike): 用显式映射获取主题提示并添加本地化回退

* fix(roguelike): 优化注释以统一风格

* i18n: KR

* i18n: KR use direct text

* i18n: JP

* i18n: EN + ★ changes

* i18n: zh-tw

* feat: 调整界面布局

---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: HY <45387477+momomochi987@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2026-01-09 17:20:15 +08:00
MistEO
bb9fc88042 feat: Disable CoreML for detection and recognition on macOS
Comment out CoreML usage for detection and recognition options due to precision issues reported by users.
2026-01-09 14:04:12 +08:00
status102
ccf6df9046 fix: 20260109 游戏更新导致自动战斗失效 2026-01-09 13:37:19 +08:00
SherkeyXD
2c82a696d8 chore: 移除多余关卡 2026-01-09 12:55:24 +08:00
SherkeyXD
4ec4d33d49 feat: SideStory「雅赛努斯复仇记」导航 2026-01-09 12:06:38 +08:00
SherkeyXD
df79e53b31 chore: port changes from api 2026-01-09 10:31:39 +08:00
github-actions[bot]
1bcb29ded2 chore: Auto Update Game Resources - 2026-01-08
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20835385463

[skip changelog]
2026-01-08 23:28:22 +00:00
github-actions[bot]
96d2ccac88 feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20833010392
[skip changelog]
2026-01-08 21:53:11 +00:00
github-actions[bot]
6784e6fcab chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20831693747
[skip changelog]
2026-01-08 21:04:56 +00:00
uye
577399c1f6 chore: 添加挂调试器下使用 GPU 的注释 2026-01-09 03:59:10 +08:00
uye
a46387b28b feat: 限制使用 CPU 推理时的线程占用数,优先保证模拟器运行
Test (operator recognition OCR, high-frequency)
Platform: i7-13700KF + RTX 4080S

CPU:
1t  11%  3m30s
2t  24%  2m11s
3t  28%  1m42s
4t  36%  1m29s
5t  50%  1m25s

GPU (DirectML):
5% CPU / 2% GPU / 36s
2026-01-09 03:09:47 +08:00
uye
cea14f843b feat: 基建进入设施失败时保留测试截图 2026-01-09 01:42:24 +08:00
uye
6657421336 feat: 将自动重载资源独立出来,在 debug 模式下显示勾选框 2026-01-09 01:03:19 +08:00
github-actions[bot]
1091dfceb1 chore: Auto Templates Optimization
Triggered by b385b472e4

[skip changelog]
2026-01-08 16:25:48 +00:00
uye
b385b472e4 feat: 尝试增加 b服 开屏活动跳过 2026-01-09 00:25:23 +08:00
uye
91971ce650 fix: 线索数量识别 2026-01-08 19:27:33 +08:00
github-actions[bot]
d6723d93de feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20797719573
[skip changelog]
2026-01-07 21:53:24 +00:00
Rbqwow
58d71d79c1 feat: 检测到自身处于临时路径中时阻止启动 (#14961)
* feat: 检测到自身处于临时路径中时阻止启动

* feat: 增加环境变量中的 temp 判断

---------

Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2026-01-08 01:40:38 +08:00
github-actions[bot]
31eb59e5ff chore: Auto Templates Optimization
Triggered by 2288392dde

[skip changelog]
2026-01-07 17:20:06 +00:00
uye
2288392dde fix: 线索板上有线索时无法一键放置线索 2026-01-08 01:19:34 +08:00
uye
be4a96a06f feat: 企鹅物流上报 ID 不为空时禁止被上报结果赋值 2026-01-07 23:21:54 +08:00
uye
34fa52495f fix: 同时开启 剿灭模式备选关卡 会导致 企鹅物流汇报 ID 被修改
fix #15323
2026-01-07 23:14:58 +08:00
晓丶梦丶仁
b877be6b30 fix: Filename too long 2026-01-07 18:11:33 +08:00
github-actions[bot]
95d2d1dcf3 chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20762004855
[skip changelog]
2026-01-06 21:04:29 +00:00
uye
48ca14e835 Release v6.2.0-beta.2 (#15315)
## Summary by Sourcery

优化日志卡片和缩略图处理,引入可复用的属性依赖初始化方式,并新增可配置的卡片日志选项,同时更新 copilot 路径解析、游戏内任务行为以及
VSCode 扩展文档。

New Features:
- 新增一个 GUI 设置和配置键,用于启用或禁用卡片样式日志。
- 更新 copilot 配置文件名处理逻辑,在通过已知映射找不到文件时支持使用原始路径。
- 在确认基础设施操作时输出额外信息,并使用更新后的卡片图片将其同步到 GUI 日志中。

Bug Fixes:
- 防止将缩略图附加到已经被移除的日志卡片上。
- 在获取日志缩略图信号量时允许短暂等待,以在高并发情况下减少丢失的截图。
- 确保在肉鸽设置中只有在指定核心角色时才会使用支援单位。
- 修复 Secret Front 关卡名称解析和路线匹配,以正确处理新增关卡。
- 调整数字正则表达式以改进对掉落时间文本的识别。

Enhancements:
- 将 PropertyDependsOn 支持重构为共享工具,并更新各视图模型以使用带有新辅助方法的通用
PropertyChangedBase。
- 调整日志卡片创建与拆分逻辑,使空日志也能按预期触发图片更新和卡片边界。
- 当战斗轮次上限可能无法完全消耗配置的次数时,向用户发出警告。
- 调整多语言的 VSCode 扩展文档,以说明快速识别功能并澄清 OCR 模型的处理方式。

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

## Summary by Sourcery

Refine log card and thumbnail handling, introduce reusable
property-dependency initialization, and add a configurable card-log
option while updating copilot path resolution, in-game task behavior,
and VSCode extension docs.

New Features:
- Add a GUI setting and configuration key to enable or disable
card-style logging.
- Update copilot configuration filename handling to support raw paths
when files are not found via known mappings.
- Emit extra info when confirming infrastructure actions and sync it to
the GUI log with updated card images.

Bug Fixes:
- Prevent attaching thumbnails to log cards that have already been
removed.
- Allow a short wait when acquiring the log thumbnail semaphore to
reduce dropped captures under contention.
- Ensure support units are only used when a core character is specified
in roguelike settings.
- Fix Secret Front stage name parsing and route matching to correctly
handle additional stages.
- Improve recognition of drop times text by adjusting the numeric regex.

Enhancements:
- Refactor PropertyDependsOn support into a shared utility and update
view models to use the common PropertyChangedBase with the new helper.
- Adjust log card creation and splitting logic so empty logs can still
trigger image updates and card boundaries as intended.
- Warn users when battle run limits may not fully consume the configured
number of runs.
- Tweak VSCode extension documentation in multiple languages to describe
quick recognition and clarify OCR model handling.

</details>

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

## Summary by Sourcery

优化日志卡片和缩略图处理,引入可复用的属性依赖初始化方式,并新增可配置的卡片日志选项,同时更新 copilot 路径解析、游戏内任务行为以及
VSCode 扩展文档。

New Features:
- 新增一个 GUI 设置和配置键,用于启用或禁用卡片样式日志。
- 更新 copilot 配置文件名处理逻辑,在通过已知映射找不到文件时支持使用原始路径。
- 在确认基础设施操作时输出额外信息,并使用更新后的卡片图片将其同步到 GUI 日志中。

Bug Fixes:
- 防止将缩略图附加到已经被移除的日志卡片上。
- 在获取日志缩略图信号量时允许短暂等待,以在高并发情况下减少丢失的截图。
- 确保在肉鸽设置中只有在指定核心角色时才会使用支援单位。
- 修复 Secret Front 关卡名称解析和路线匹配,以正确处理新增关卡。
- 调整数字正则表达式以改进对掉落时间文本的识别。

Enhancements:
- 将 PropertyDependsOn 支持重构为共享工具,并更新各视图模型以使用带有新辅助方法的通用
PropertyChangedBase。
- 调整日志卡片创建与拆分逻辑,使空日志也能按预期触发图片更新和卡片边界。
- 当战斗轮次上限可能无法完全消耗配置的次数时,向用户发出警告。
- 调整多语言的 VSCode 扩展文档,以说明快速识别功能并澄清 OCR 模型的处理方式。

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

## Summary by Sourcery

Refine log card and thumbnail handling, introduce reusable
property-dependency initialization, and add a configurable card-log
option while updating copilot path resolution, in-game task behavior,
and VSCode extension docs.

New Features:
- Add a GUI setting and configuration key to enable or disable
card-style logging.
- Update copilot configuration filename handling to support raw paths
when files are not found via known mappings.
- Emit extra info when confirming infrastructure actions and sync it to
the GUI log with updated card images.

Bug Fixes:
- Prevent attaching thumbnails to log cards that have already been
removed.
- Allow a short wait when acquiring the log thumbnail semaphore to
reduce dropped captures under contention.
- Ensure support units are only used when a core character is specified
in roguelike settings.
- Fix Secret Front stage name parsing and route matching to correctly
handle additional stages.
- Improve recognition of drop times text by adjusting the numeric regex.

Enhancements:
- Refactor PropertyDependsOn support into a shared utility and update
view models to use the common PropertyChangedBase with the new helper.
- Adjust log card creation and splitting logic so empty logs can still
trigger image updates and card boundaries as intended.
- Warn users when battle run limits may not fully consume the configured
number of runs.
- Tweak VSCode extension documentation in multiple languages to describe
quick recognition and clarify OCR model handling.

</details>

</details>
2026-01-07 03:56:33 +08:00
github-actions[bot]
cce5463e5c docs: Auto Update Changelogs of v6.2.0-beta.2 (#15316)
* docs: Auto Generate Changelog of Release v6.2.0-beta.2

* 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-07 03:54:00 +08:00
uye
f98ccb6eaf fix: ai review 2026-01-07 03:42:15 +08:00
github-actions[bot]
c963384124 feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20759668897
[skip changelog]
2026-01-06 19:30:40 +00:00
uye
d3aaf5645e feat: 支持日志样式切换 2026-01-07 03:21:20 +08:00
uye
f6b4072780 perf: 优化缩略图逻辑 2026-01-07 02:41:26 +08:00
Constrat
f404eaa3c8 i18n: EN for FightTimesMayNotExhausted 2026-01-06 19:01:27 +01:00
uye
eab9143533 chore: 调整 MaxNumberOfLogThumbnails 作用域,调整默认数量 2026-01-07 01:48:02 +08:00
uye
9456f73ea7 feat: 基建设施缩略图 2026-01-07 01:37:06 +08:00
uye
59db82e638 feat: addlog 允许只更新图片不添加内容 2026-01-07 00:28:26 +08:00
Constrat
29f63322ba fix: fix SA1518 warnings 2026-01-06 14:32:24 +01:00
芆芮
eac2d39834 chore: YoStarJP SN device ocr (#15310) 2026-01-06 21:07:53 +08:00
uye
4abf4d63d0 fix: 肉鸽未填写开局干员时借助战强制为 false
fix #15311
2026-01-06 20:37:48 +08:00
uye
ab32660f41 fix: 隐秘战线结局识别 2026-01-06 19:49:45 +08:00
uye
c2b0c1f177 fix: 隐秘战线识别到多余字符时无法进入对应事件
fix #15303
2026-01-06 19:24:46 +08:00
uye
20c437b32b perf: 重命名以符合文件结构 2026-01-06 19:15:41 +08:00
uye
cfb973e037 perf: 优化 PropertyDependsOnHelper 实现 2026-01-06 19:11:33 +08:00
github-actions[bot]
7e962c4394 chore: Auto Update Game Resources - 2026-01-06
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20746324315

[skip changelog]
2026-01-06 11:03:47 +00:00
uye
39d156cc26 rft: 将 PropertyDependsOnViewModel 改为静态工具类 2026-01-06 18:17:59 +08:00
uye
7abd89480b perf: 调整缩略图 ToolTip 延迟 2026-01-06 17:52:33 +08:00
commondservice
a158b12ddf fix: waydroid rawbync screencap 2>/dev/null (#15196) 2026-01-06 17:45:56 +08:00
Chen Chen
24aec64266 fix: 避免其他locale下,掉落次数误认数字字符 (#15306) 2026-01-06 17:43:19 +08:00
nekosu
459c55df40 docs: update vsc ext docs for quick ocr (#15298)
Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2026-01-06 17:37:42 +08:00
uye
c151f97af1 fix: 无法通过删除自动战斗输入框内容清除当前作业,无法通过在输入框输入神秘代码直接开始战斗 2026-01-06 16:54:01 +08:00
Status102
a67e2b4fb9 perf: 刷理智任务指定次数与代理倍率冲突提醒 (#15233)
* perf: 移动刷理智过程中的未消耗次数输出到任务结束

fix: 刷理智任务参数设置提醒

* i18n: KR

* i18n: zh-tw

* i18n: JP

---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: HY <45387477+momomochi987@users.noreply.github.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
2026-01-06 16:24:56 +08:00
github-actions[bot]
e3734a715f chore: Auto Update Game Resources - 2026-01-05
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20726135855

[skip changelog]
2026-01-05 19:04:53 +00:00
uye
27ec293dca Release v6.2.0-beta.1 (#15299) 2026-01-05 22:12:34 +08:00
github-actions[bot]
3e9f19cc22 docs: Auto Update Changelogs of v6.2.0-beta.1 (#15301)
* docs: Auto Generate Changelog of Release v6.2.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-05 22:12:16 +08:00
uye
50e9767f0c perf: 优化界面显示效果 2026-01-05 21:29:38 +08:00
drway
22c0593343 feat: 增加冬时至基建温蒂组并调整温蒂组选人逻辑 (#15294)
* fix: 修正了温蒂组: 2电站效率

将温蒂组: 2电站时效率由 30% 修正到了正确的 20%。

* feat: 增加冬时至基建温蒂组并调整温蒂组选人逻辑

将冬时-1加入温蒂组的换班逻辑中。
考虑到现在 冬时-1 + 森蚺/异客2 + 清流-1 也可以构成温蒂组,新增逻辑“冬时组”,加入了上述换班逻辑。
将温蒂/森蚺-2的权重上调至30.2(考虑到温蒂/森蚺2可受晨曦格雷伊加成),在选人时会优先选择温蒂/森蚺-2而不是冬时。
2026-01-05 20:31:43 +08:00
uye
3d42e5e55f feat: 成就 dlc (#15288)
* feat: 成就描述与翻译

* feat: 开着日志悬浮窗完成一次任务

* feat: 在公开招募中刷新标签 50 次

* feat: 累计开启线索交流 20/50 次

* feat: 累计向好友发送 20/50 次线索

* feat: 单次运行中,勾选超过 7 个任务

* feat: 在更新发布后 1 天/1 小时 内完成更新

* feat: 完成{key=Combat}时刚好消耗完所有理智

* feat: 设置并使用一个超过 4 个修饰键的热键组合

* feat: 仓库识别功能识别到仓库内某种材料数量超过 5000 个(不包括作战记录!)

* perf: 优化界面布局

* chore: 调整触发条件

* fix: 部分成就弹窗无法显示

* feat: 单轮公招任务连续招募 10/20 次

* feat: 支持组内排序

* perf: 优化成就排序

* feat: 干员识别中包含干员“帕拉斯”

* feat: 使用远程协议调用错误的任务 id

* feat: 尝试切换界面语言

* feat: 设置开机启动 MAA

* feat: 连续 7 天每天集齐并开启线索交流

* feat: 325

* chore: 调整 325 触发条件
2026-01-05 20:30:26 +08:00
HY
c6037cc4d7 feat: 增強自动战斗文件选择功能,支持多级路径和相对目录 (#15174)
* chore: 先依照保全派駐週期粗略分類

* chore: 換個位置

* chore: 換成用地圖名稱分類

* chore: 再改 再改

* chore: 別空白了 伺服器會被殺死的

* chore: 補上下拉選單顯示的 json 檔案名稱,避免解析錯誤

* chore: 幫展開後的下拉選單加上寬度限制

* Revert "chore: 幫展開後的下拉選單加上寬度限制"

This reverts commit d5f80c9d6e.

* feat: 新增文件树视图项样式

* perf: 优化自动战斗下拉列表

* feat: 统一样式

* chore: 删除多余调用

---------

Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2026-01-05 20:29:13 +08:00
9cde16b262 feat: 通知渠道添加 Gotify (#15284)
* feat: 通知渠道添加 Gotify

* fix: 移除 Gotify 通知内容中的颜色标记

* fix: 优化 Gotify 通知格式处理
2026-01-05 17:56:37 +08:00
Weiyou Wang
5bd9a40560 fix: 给缺失干员检查补上 Unavailable (#15296)
fix: 缺失干员检查补上 Unavailable
2026-01-05 11:14:51 +08:00
github-actions[bot]
c679542c5f feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20699650804
[skip changelog]
2026-01-04 21:52:42 +00:00
Constrat
2b222eae65 chore: add IsDebugVersion to _forcedReloadResource (#15293)
fix: add IsDebugVersion to _forcedReloadResource
2026-01-04 20:58:49 +01:00
uye
9feba528e2 fix: 尝试修复基建效率计算中的 out_of_range 异常
fix #15287
2026-01-04 20:35:01 +08:00
HX3N
dde55b8310 chore: YostarKR tweak AS-OpenOcr
to prevent misrecognition
2026-01-04 19:03:24 +09:00
uye
06f2740ce4 chore: 调整注释 2026-01-04 15:46:37 +08:00
Loong
e1cf1ff24a docs: 使用脚本一键安装 maa-cli (#15283) 2026-01-04 15:09:03 +08:00
HX3N
154adf2266 docs: update KR documents (#15282) 2026-01-04 10:36:17 +09:00
Rbqwow
e29c1243c6 docs: 源码链接同步最新行数
想了想还是觉得指向HEAD而非某个commit更好一点,但是要跟着行数变化
2026-01-04 06:29:00 +08:00
github-actions[bot]
7525028f36 feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20683420431
[skip changelog]
2026-01-03 21:52:48 +00:00
uye
a5c25fddda feat: 可以点 20 次按钮关闭弹窗 2026-01-03 22:53:25 +08:00
uye
5467030be4 perf: 优化换行 2026-01-03 22:31:04 +08:00
Constrat
5fae60911d fix: update DormMini.png for EN (again) 2026-01-03 15:25:59 +01:00
Constrat
534ad0a7a0 fix: SA1633 warning missing copyright notice 2026-01-03 15:25:11 +01:00
SherkeyXD
8ed11ba8ec chore: 微调公告确认按钮位置 2026-01-03 20:29:22 +08:00
Manicsteiner
b404672b0b chore: YostarJP roguelike JieGarden ocr edit 2026-01-03 12:56:42 +08:00
github-actions[bot]
6ee4544d92 chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20666643117
[skip changelog]
2026-01-02 21:04:50 +00:00
uye
cc58382158 style: typo 2026-01-03 02:51:02 +08:00
uye
637ebc87ad feat: 还点? 2026-01-03 02:49:48 +08:00
uye
2f3dbf55d2 docs: 中文集成文档统一格式 2026-01-03 01:40:33 +08:00
uye
215d76e38d feat: 允许设置是否启用线索交流与赠送线索 (#15278)
* feat: 允许设置是否启用线索交流与赠送线索

* feat: ui 支持设置赠送线索,将借助战打 OF-1 的一日一次功能拆出来

* perf: 调整界面布局

* i18n: 漏了一个翻译

* chore: 简化代码

* docs: 补充文档
2026-01-03 00:04:10 +08:00
AnselYuki
0fd4b8185e feat: 给 bark 通知添加默认的分类组 (#15244) 2026-01-02 23:58:20 +08:00
MistEO
c4d361a363 feat: 重构主页日志侧边栏整体布局和样式 (#15211)
* feat: 重构主页日志侧边栏整体布局和样式

* feat: 优化一下Live

* refactor: 调整卡片布局

* revert: 回滚不知道干嘛的改动

* feat: 调整右上角悬浮窗布局

* chore: AI一直在改个啥

* Revert "chore: AI一直在改个啥"

This reverts commit b5ae565c34a2a187ae953cc385b0b85de83fc140.

* perf: 调整卡片分割逻辑,优化界面布局

* perf: 优化显示效果

* rft: 简化绑定

* chore: 调整界面布局

* feat: 任务报错更新缩略图

* feat: 肉鸽开始探索前分割卡片

* feat: 肉鸽结算更新缩略图

* feat: 肉鸽战斗成功/失败时更新缩略图

* feat: 事件选择更新图片

* fix: 在缩放时对 BGR 缓冲区长度或尺寸不匹配的情况进行防护

* chore: 添加日志,删除无用的 using

* style: 格式化代码

* fix: 避免在使用 PropertyDependsOn 的同时重复发送依赖属性通知。

* fix: 下载日志错位

* fix: 图片数量限制错误

* feat: 自定义最大缩略图数量

* fix: en 语言下背景图片选择按钮文字无法显示完全

* chore: 新用户标题栏默认不显示配置名称

* chore: 标题栏端口地址默认省略 127.0.0.1: 与 localhost:

* feat: 卡片背景色

* chore: 删除没用的 ColumnDefinitions

* feat: 就要四个字

---------

Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2026-01-02 23:40:26 +08:00
Loong
286908d41e ci: use git2/vendored-openssl feature flag for cli (#15279) 2026-01-02 23:40:11 +08:00
yali-hzy
bd4039d442 perf: 在禁用时 TooltipBlock 显示特效 (#15260)
* perf: 在禁用时 TooltipBlock 显示特效

* perf: 改用 ToolTip 触发改善性能

---------

Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2026-01-02 23:01:59 +08:00
SherkeyXD
e87608411f fix(docs): 修复文档站搜索问题 2026-01-02 21:51:08 +08:00
SherkeyXD
a0e5f9b3a6 rft: devcontainer 从 conda 迁移至 mise/uv (#15251)
Co-authored-by: Lucien Shaw <myxlc55@outlook.com>
2026-01-02 21:45:14 +08:00
白隐Hakuin
1456fbb91c fix: 远程控制截图无法获取最新图像 (#15276) 2026-01-02 19:20:55 +08:00
Hao Guan
6eaf74a289 fix: Debug图片保存目录 (#15250) 2026-01-02 17:26:22 +08:00
uye
edc8768b2e fix: 鬼影迷踪 -> 诡影迷踪
fix #15274
2026-01-02 15:28:24 +08:00
github-actions[bot]
1ce8ff4262 chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20645504464
[skip changelog]
2026-01-01 21:04:54 +00:00
晓丶梦丶仁
d0b594cdc0 docs: 战斗协议 移动镜头 (#15261)
* docs: 战斗协议 移动镜头

* docs: details

* docs: 地图站链接
2026-01-02 03:24:29 +08:00
uye
807adf92fa Release v6.1.1 (#15270)
## Summary by Sourcery

CI:
- 调整 CI 和冒烟测试工作流的并发组配置,在键中加入仓库和分支信息,以更好地隔离各次运行。

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

## Summary by Sourcery

CI:
- Adjust CI and smoke test workflow concurrency groups to include
repository and branch in the key to better isolate runs.

</details>
2026-01-02 03:20:37 +08:00
MistEO
7397e1ac00 ci: fix concurrency group (#15269) 2026-01-02 02:28:55 +08:00
MistEO
c7c8466b10 ci: fix linux build (#15268) 2026-01-02 02:16:31 +08:00
Constrat
e0c226f7bb chore: optimize template
[skip changelog]
2026-01-01 18:30:58 +01:00
Constrat
de4b86fda8 fix: update Roguelike@TraderRandomShoppingConfirm for EN
fix #15264
2026-01-01 18:30:45 +01:00
MistEO
21181c2872 ci: try to fix linux arm64 build 2026-01-02 01:24:39 +08:00
MistEO
01b59f54fe ci: limit CI in PRs within the same branch 2026-01-02 01:18:30 +08:00
MistEO
03634ae516 ci: try to fix linux build 2026-01-02 01:03:13 +08:00
github-actions[bot]
2621b0a77b chore: Auto Update Game Resources - 2026-01-01
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20641861359

[skip changelog]
2026-01-01 16:30:53 +00:00
uye
cf42b1a9fd Release v6.1.1 (#15262)
## Summary by Sourcery

使版本报告与 MAA 核心配置保持一致,加固任务解析与符号处理,改进战斗/地图交互与图像工具,并为新版本优化 CI 缓存清理和资源数据。

New Features:
- 在生成和裁剪基于 ROI 的任务时,新增对分组 UI 主题变体和嵌套图像布局的支持。
- 引入新的 TXWY 关卡任务定义,并更新多种肉鸽和 UI 主题任务资源。

Bug Fixes:
- 通过引入来自地块位置信息的地图视图偏移,修复地块位置以及技能/撤退按钮的计算。
- 在撤退后通过取消选中作为保护措施,防止干员被误操作。
- 在执行清理前检查地图目录,避免删除不存在的地图图像。
- 通过处理缺失的 PR 和与陈旧分支相关的缓存,提高缓存清理脚本的健壮性。
- 通过统一使用拥有所有权的 `std::string` 作为键和容器,替代基于 `std::string_view`
的映射,提高任务与符号解析的稳定性。

Enhancements:
- 将版本日志、API 上报和上传数据统一切换为使用统一的 `MAA_VERSION` 配置和一致的 `DEBUG_VERSION` 标记。
- 通过委托给更高层级的流程任务,简化基建设施线索的快速插入处理逻辑。
- 整理版本更新 UI 逻辑与注释,以反映新的调试版本命名约定。
- 调整图像裁剪器的输出,以提供更清晰的 ROI 诊断信息和控制台消息。
- 优化 JSON 工具中关于默认值检查的注释,而不改变运行时行为。

CI:
- 扩展 GitHub 缓存清理脚本,覆盖与 Linux X64 prek 构建相关的更多缓存键模式,并更智能地清理 PR 和分支缓存。

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

## Summary by Sourcery

Align version reporting with MAA core config, harden task parsing and
symbol handling, improve battle/map interactions and image tooling, and
refine CI cache cleanup and resource data for the new release.

New Features:
- Add support for grouped UI theme variants and nested image layouts
when generating and cutting ROI-based tasks.
- Introduce a new TXWY stage task definition and update various
Roguelike and UI theme task resources.

Bug Fixes:
- Fix tile position and skill/retreat button calculations by
incorporating map view offsets from tile position data.
- Prevent unintended operator interactions after retreat by cancelling
selection as a safeguard.
- Avoid deleting non-existent map images by checking the map directory
before cleanup.
- Increase robustness of cache cleanup scripts by handling missing PRs
and stale branch-related caches.
- Improve stability of task and symbol parsing by standardizing on
owning std::string keys and containers instead of
std::string_view-backed maps.

Enhancements:
- Switch version logging, API reporting, and upload payloads to use the
unified MAA_VERSION config and consistent DEBUG_VERSION marker.
- Simplify infrastructure clue quick-insert handling by delegating to a
higher-level process task.
- Tidy version update UI logic and comments to reflect the new debug
version naming convention.
- Adjust image cropper output for clearer ROI diagnostics and console
messaging.
- Refine JSON utility comments around default-value checks without
changing runtime behavior.

CI:
- Extend GitHub cache cleanup scripts to cover additional cache key
patterns related to Linux X64 prek builds and to clean both PR and
branch caches more intelligently.

</details>
2026-01-02 00:28:01 +08:00
uye
f28c10a0b1 docs: update changelog 2026-01-02 00:26:37 +08:00
github-actions[bot]
6ae3cb685c feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20641688332
[skip changelog]
2026-01-01 16:16:56 +00:00
uye
16e23a32b7 feat: 隐秘战线支持系列任务 (#15249)
* feat: 隐秘战线支持系列事件

* fix: 漏了个事件

* fix: 避免修改任务导致后续无法进入系列任务

* fix: 怎么小游戏没禁用运行时修改

* rft: 提取通用逻辑

* i18n: KR

* i18n: EN

* i18n: KR fix typo

* i18n: JP

* i18n: txwy

* perf: 优化解析逻辑

* fix: 隐秘战线结局与事件无法保存

* chore: text → ocrReplace

* chore: 再改一點 gui 上的東西

---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
Co-authored-by: momomochi987 <as99us301@gmail.com>
2026-01-02 00:15:30 +08:00
uye
5fd5c8a90f feat: 新增模板路径同步工具 (#15254)
* feat: 新增模板路径同步工具

* feat: 移动路径

* chore: remove stale templates + move HS to stagenavigation

* chore: update optimize_templates with new paths

* chore: KR remove unused templates

* chore: remove unused templates for txwy

* feat: 自动删除空文件夹

* chore: update optimize_templates.json

* fix: typo

---------

Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: momomochi987 <as99us301@gmail.com>
2026-01-01 23:37:11 +08:00
github-actions[bot]
9673b62ec7 chore: Auto Update Game Resources - 2026-01-01
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20641085022

[skip changelog]
2026-01-01 15:29:06 +00:00
Status102
fab4a272fd fix: 自动战斗击杀数识别错误 (#15266) 2026-01-01 23:22:54 +08:00
Constrat
2dddb7b231 ci: perhaps found a typo 2026-01-01 16:18:55 +01:00
status102
292624166f fix: 自动战斗 击杀数、费用识别 useRaw = false 2026-01-01 23:17:47 +08:00
status102
d85291a97a refactor: useRaw 参数设置重构 2026-01-01 23:17:17 +08:00
Constrat
cd0273d321 ci: try to fix cache miss on smoke-testing 2026-01-01 16:06:51 +01:00
github-actions[bot]
c7d9fc37f6 feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20637168125
[skip changelog]
2026-01-01 10:40:12 +00:00
岩浆浮沉的木梳
5bc1d2835d chore: YostarJP copper regex (#15257)
* chore: YostarJP copper regex

* chore: YostarJP copper regex

act for event recognition failed:
まんまるな財神

* chore: YostarJP copper regex

fix: 通宝認識失敗: 「衡-軍屯翠す」

* chore: YostarJP copper regex

fix: 通宝認識失敗: 「厲-頃異を安める」
2026-01-01 16:33:53 +08:00
status102
2ecb2b7206 fix: 自动战斗击杀数识别错误 2026-01-01 14:21:11 +08:00
HX3N
0943c48f4e i18n: KR tweak NightlyWarning and CheckBeforeReportingIssue 2026-01-01 09:01:06 +09:00
github-actions[bot]
a2c99dc72d chore: Auto Templates Optimization
Triggered by d036a2594c

[skip changelog]
2025-12-31 18:56:22 +00:00
uye
d036a2594c chore: 更新截图 2026-01-01 02:55:57 +08:00
Constrat
0a89c82ba1 ci: fixes to cache removal scripts 2025-12-31 19:13:12 +01:00
Constrat
0224f51076 feat: YostarEN base templates overhaul 2025-12-31 18:05:48 +01:00
github-actions[bot]
e7cc61eb9a chore: Auto Update Game Resources - 2025-12-31
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20622568070

[skip changelog]
2025-12-31 16:07:06 +00:00
Constrat
25a9712102 perf: optimize LoneTrail templates 2025-12-31 16:51:47 +01:00
Constrat
3ac22778d8 fix: EN Sami floor detection regex 2025-12-31 15:51:49 +01:00
MistEO
be7159f554 fix: bad reference 2025-12-31 22:43:12 +08:00
MistEO
da0445ddbc refactor: 减少string_view滥用 2025-12-31 22:13:53 +08:00
MistEO
b5dff5a285 Revert "fix: 任务名字符串池的线程安全问题"
This reverts commit 824e774b2b.
2025-12-31 21:46:59 +08:00
MistEO
a5cd79a70e refactor: 统一 DEBUG_VERSION 2025-12-31 21:38:44 +08:00
status102
35d31555b0 fix: 盲点撤退兜底 2025-12-31 20:59:23 +08:00
status102
aa34f54f22 fix: 自动战斗在未存在 debug/map 路径时无法生成地图截图 2025-12-31 20:59:23 +08:00
uye
824e774b2b fix: 任务名字符串池的线程安全问题 2025-12-31 20:03:58 +08:00
Status102
9f002b8f16 fix: 大地图技能, 撤离按钮及相机偏移修复, 连带引航者S6地图TN-2 ~ TN-4 view[1] (#15252)
* chore: TN-2

* fix: 技能&撤退 大地图视角偏移

Co-authored-by: status102 <102887808+status102@users.noreply.github.com>

* chore: TN-3&TN-4

* perf: const

---------

Co-authored-by: Weiyou Wang <44151844+Alan-Charred@users.noreply.github.com>
2025-12-31 20:03:37 +08:00
Manicsteiner
e5cf3be9ed chore: YostarJP copper regex 2025-12-31 16:38:22 +08:00
Constrat
02bf291f85 fix: Copper regex for Sui Garden EN 2025-12-30 13:09:51 +01:00
Manicsteiner
32ab6ce890 chore: YostarJP roguelike JieGarden ocr edit 2025-12-30 18:38:47 +08:00
uye
e95f7e9a78 fix: 满线索再放入 2025-12-30 15:04:31 +08:00
github-actions[bot]
98e26cd9de chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20582634976
[skip changelog]
2025-12-29 21:04:35 +00:00
HY
be19d7c5a8 chore: 繁中服「紅絲絨」活動導航 (#15234) 2025-12-29 18:17:04 +01:00
SherkeyXD
4741a8f6d2 feat: 添加孤星主题配置 2025-12-29 21:41:20 +08:00
SherkeyXD
d43b416837 feat: 添加孤星主题模板图 2025-12-29 21:41:20 +08:00
SherkeyXD
5d20d86080 feat: 优化 ImageCropper 输出 2025-12-29 21:41:20 +08:00
SherkeyXD
0d446c83dd chore: update template tool 2025-12-29 21:41:20 +08:00
uye
2b4dc643ed Release v6.1.0 (#15216)
## Summary by Sourcery

发布 v6.1.0,新增玩法自动化支持、增强日志与更新体验、大幅优化识别与模板,并带来多项稳定性与开发工具改进。

New Features:
- 在全服务器上新增 Hidden Front 玩法的全流程自动化支持。
- 为 Yostar JP/KR/EN 服务器新增类肉鸽玩法(JieGarden)的自动化支持。
- 引入悬浮日志窗口与托盘开关,用于实时查看自动战斗日志。
- 支持点击主窗口中的更新提示,直接触发更新流程。
- 新增对极寒保全(Extreme Cold Security,保全)委托与相关战斗的自动化支持。
- 在线索栏已满时支持一键放置线索。
- 在 WPF 日志系统中支持按日志级别输出到文件。

Bug Fixes:
- 修复多处更新流程问题,包括缓存文件夹拷贝、过期 OTA 包处理,以及在无可用 OTA 补丁时的错误提示信息。
- 修复 macOS 上 asst.log 被意外清空的问题,以及路径字符串含首尾空白或控制字符时导致的报错。
- 在更新进行中时正确禁用“检查更新”按钮。
- 解决日志、UI 变化与加载指示器之间的时序不匹配问题,避免因此造成的误识别。
- 修复 ROI 越界错误以及更新工具异常。
- 修复自动战斗流程问题,包括借助战后卡在好友添加界面、因布阵过快/模拟器卡顿导致的误触,以及在网络波动下确认编队失败等。
- 修复财富道具(通宝/铜钱)识别与死锁问题,并提升跨多服务器与多语言环境下的 OCR/正则与模板精度。

Enhancements:
- 打磨悬浮窗口布局与交互体验。
- 重构并优化模板资源与索引,以提升加载与识别性能。
- 缓存 ProcessTask 结果并优化 StableHash,减少重复计算并提升一致性。
- 在工具链中统一从源分辨率到目标分辨率的截图缩放逻辑。
- 通过切换到 boost::regex 改进基础设施规划刷新 API 与正则性能。
- 在拖动悬浮窗口时保持可见,避免与部分应用搭配时出现闪烁。
- 更新 macOS CMake 配置、C# EditorConfig 与开发工具,移除过时的 lint/格式化配置。

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

## Summary by Sourcery

Release v6.1.0 with new gameplay automation support, enhanced logging
and update experience, broad recognition/template optimizations, and
multiple stability and tooling improvements.

New Features:
- Add full Hidden Front gameplay automation support across servers.
- Add roguelike (JieGarden) automation support for Yostar JP/KR/EN
servers.
- Introduce a floating log window and tray toggle for real-time
auto-battle log viewing.
- Allow clicking the main window update notification to directly trigger
the update process.
- Add automation support for new Extreme Cold Security (保全) assignments
and related battles.
- Enable one-click clue placement when clue slots are full.
- Support level-based log file output in the WPF logging system.

Bug Fixes:
- Fix multiple update flow issues including cache folder copying, stale
OTA packages, and incorrect messaging when no OTA patch is available.
- Fix asst.log being unexpectedly cleared on macOS and path strings with
surrounding whitespace or control characters causing errors.
- Disable the update check button correctly while an update is in
progress.
- Resolve timing-related mismatches between logs, UI changes, and
loading indicators that caused misrecognition.
- Fix ROI out-of-range errors and update tool exceptions.
- Fix auto-battle flow issues including being stuck on friend add after
borrowing support, misclicks due to fast formations/emulator lag, and
failures confirming lineups under network fluctuations.
- Fix treasury item (通宝/铜钱) recognition and deadlock issues, and improve
OCR/regex and template accuracy across multiple servers and languages.

Enhancements:
- Refine floating window layout and interaction experience.
- Refactor and optimize template resources and indexing to improve
loading and recognition performance.
- Cache ProcessTask results and optimize StableHash to reduce repeated
computation and improve consistency.
- Standardize screenshot scaling from source to target resolution in
tooling.
- Improve infrastructure plan refresh API and regex performance by
switching to boost::regex.
- Keep the floating window visible while moving to avoid flicker with
certain applications.
- Update macOS CMake config, C# EditorConfig, and developer tooling,
removing outdated lint/format configs.

</details>
2025-12-29 21:20:11 +08:00
uye
b2cbde245e docs: 更新 changelog 2025-12-29 21:07:30 +08:00
Constrat
a7603b66cd fix: use delay for all client
cc @HX3N
2025-12-29 13:59:53 +01:00
github-actions[bot]
66baf1be55 chore: Auto Update Game Resources - 2025-12-29
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20569894345

[skip changelog]
2025-12-29 09:48:45 +00:00
uye
5433a52b24 fix: 有猪把切换主题改炸了 2025-12-29 17:42:15 +08:00
uye
2e0d0e1313 debug: 打这么多日志真有人看吗 2025-12-29 17:42:00 +08:00
uye
744605548c chore: 调整倍战超过限制提示 2025-12-29 16:53:15 +08:00
github-actions[bot]
7585be794b chore: Auto Update Game Resources - 2025-12-29
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20567964907

[skip changelog]
2025-12-29 08:05:00 +00:00
github-actions[bot]
822d509455 chore: Auto Update Game Resources - 2025-12-29
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20567450539

[skip changelog]
2025-12-29 07:30:08 +00:00
github-actions[bot]
36d59a1f7f chore: Auto Update Game Resources - 2025-12-28
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20558862532

[skip changelog]
2025-12-28 20:04:05 +00:00
Constrat
5949146267 fix: typo 2025-12-28 19:26:57 +01:00
SherkeyXD
9cf5b65be2 rft: 优化多主题路径 2025-12-29 01:01:05 +08:00
status102
f5c5417f6b fix: 自定义基建选择被错误重置 2025-12-28 23:27:56 +08:00
Manicsteiner
e935a04674 chore: YostarJP Roguelike StartExploreCD for JieGarden 2025-12-28 23:15:36 +08:00
Constrat
f2460215ac fix: missing StartExploreCD for Sui EN
fix #15225
2025-12-28 15:50:24 +01:00
status102
367b513cc8 fix: 刷理智设置的基建计划绑定失效
link to #15222
2025-12-28 11:08:39 +08:00
Constrat
d477412cab chore: remove dupes from ocrREplaces EN 2025-12-28 00:36:32 +01:00
HX3N
e3170cef94 fix: YostarKR stuck after send clues (#15223) 2025-12-28 05:05:08 +09:00
github-actions[bot]
54f40c2708 chore: auto blame ignore
[skip changelog]
2025-12-27 15:35:18 +00:00
Constrat
1944164d9c fix: typo for blame_ignore.yml 2025-12-27 16:27:33 +01:00
uye
16d9d812b8 docs: Update CHANGELOG with recent changes and fixes
Added new features, improvements, and fixes to the application.
2025-12-27 20:48:28 +08:00
晓丶梦丶仁
ade38a68a0 perf: move_camera 允许微调镜头 (#15220) 2025-12-27 20:41:51 +08:00
Constrat
45ab2e7ba5 ci(fix): continue on error required for blame ignore\npost 22.04 to 24.04 ubuntu migration 2025-12-27 10:44:43 +01:00
Fryze
581df2fc7b i18n: Update ko-kr.xaml (#15213) 2025-12-27 14:37:01 +09:00
uye
a7a5d44276 fix: 引航者试炼借助战 2025-12-27 12:43:02 +08:00
github-actions[bot]
52561a7a7c docs: Auto Update Changelogs of v6.1.0 (#15215)
* docs: Auto Generate Changelog of Release v6.1.0

* Release v6.1.0 with new features and bug fixes

This release includes new features such as Hidden Front support, improvements to Roguelike gameplay across Yostar servers, a floating log window for auto-battle logs, and a clickable update notification for easier upgrades. Several bug fixes and optimizations were also implemented to enhance overall performance and user experience.

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-12-27 12:29:20 +08:00
github-actions[bot]
48c518c80b chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20529356176
[skip changelog]
2025-12-26 21:04:24 +00:00
uye
62c407c81d Release v6.1.0-beta.4 (#15208)
## Summary by Sourcery

优化自定义基建排程、肉鸽源石锭处理以及若干游戏内任务行为,并更新相关工具链、本地化以及 CI / pre-commit 配置。

New Features:
- 引入强类型的 `CustomInfrastConfig`
模型和新的选择机制,以支持基于时间和基于索引的自定义基建方案,并支持序列化到辅助任务中。
- 新增 YoStarJP SecretFront 任务配置,并在叠加层中支持 SSS Copilot 任务链日志记录。

Bug Fixes:
- 修复自定义基建方案解析与选择逻辑,包括更安全的配置默认值、更好地处理缺失的时段,以及在文件无效或方案不完整时提供更健壮的日志。
- 确保 Secret Front 关卡名称 OCR 使用可配置的 ROI,并通过重试机制让战斗编队中的支援干员入场更加稳健。
- 改进当游戏窗口移动时叠加层窗口的行为,并限制叠加层最大宽度以获得更好的布局效果。
- 将被跳过的肉鸽源石锭拾取/兑换流程视为非致命问题并细化日志记录,避免不必要的任务失败。
- 防止在更新检查运行过程中退出应用,并调整基建附加检查逻辑以适配新的自定义方案列表模型。

Enhancements:
- 现代化基建设置中的配置访问方式,并将自定义方案刷新逻辑简化为单一的解析/刷新流程。
- 优化基于时间的自定义方案显示刷新,以及自动在运行后切换方案与相关日志记录。
- 收紧 `TaskData` 的 loading-justreturn 检查,以覆盖更多加载类任务类型。
- 对各类实用脚本和测试应用多处 Python 及工具链格式清理。
- 调整 GitHub Actions 工作流,使用 Prek 来执行定时的 pre-commit 运行,并改进针对 PR 与直接推送的 PNG
优化逻辑,同时更新 devcontainer 中的 Python 工具链以使用 Ruff 替代 Black/Isort。

Build:
- 将 pre-commit 钩子更新到较新版本,用 Ruff 替换 Black/Isort 进行 Python
格式化,并微调优化模板工具的输出格式。

CI:
- 用 Prek GitHub Action 替代自定义的基于 Python 的定时 pre-commit 任务,并优化
optimize-templates 工作流逻辑,以更好地区分直接推送与 PR 合并。

Documentation:
- 修复日文入门手册中轻微的表格格式与对齐问题。

Tests:
- 整理 AutoLocalization XAML 解析器测试,不改变其现有行为。

Chores:
- 添加或调整多处任务/资源 JSON 与 XAML 本地化文件,并更新 CLI 与视图 XAML,使其与新的行为和资源保持一致。

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

## Summary by Sourcery

Refine custom infrastructure scheduling, roguelike copper handling, and
several gameplay task behaviors while updating tooling, localization,
and CI/pre-commit setup.

New Features:
- Introduce a strongly typed CustomInfrastConfig model and new selection
mechanism to support time-based and index-based custom infrastructure
plans, including serialization to assistant tasks.
- Add a YoStarJP SecretFront task configuration and support SSS Copilot
task chain logging in the overlay.

Bug Fixes:
- Fix custom infrastructure plan parsing and selection, including safer
configuration defaults, better handling of missing periods, and more
robust logging when files are invalid or plans are incomplete.
- Ensure Secret Front stage name OCR uses a configurable ROI and make
battle formation support-unit entry more resilient with retries.
- Improve overlay window behavior when the game window moves and clamp
overlay width to a maximum for better layout.
- Treat skipped roguelike copper pickup/exchange flows as non-fatal and
refine logging, preventing unnecessary task failures.
- Prevent exiting the app while an update check is running and adjust
infrast append checks to reflect the new custom plan list model.

Enhancements:
- Modernize config access patterns in infrastructure settings and
simplify custom plan refresh logic into a single parsing/refresh flow.
- Refine time-based custom plan display refresh and automatic post-run
plan switching and logging.
- Tighten TaskData loading-justreturn checks for additional loading task
types.
- Apply assorted Python and tooling formatting cleanups across utility
scripts and tests.
- Adjust GitHub Actions workflows to use Prek for scheduled pre-commit
runs and improve PNG optimization logic for PR vs direct pushes, while
updating devcontainer Python tooling to use Ruff instead of Black/Isort.

Build:
- Update pre-commit hooks to newer versions, replace Black/Isort with
Ruff for Python formatting, and tweak optimization template tooling
output formatting.

CI:
- Replace the custom Python-based pre-commit scheduled job with the Prek
GitHub Action and refine the optimize-templates workflow logic for
detecting direct pushes vs PR merges.

Documentation:
- Fix minor table formatting and alignment issues in the Japanese
introduction manual.

Tests:
- Tidy AutoLocalization XAML parser tests without changing behavior.

Chores:
- Add or adjust various task/resource JSON and XAML localization files,
plus CLI and view XAML tweaks, to align with the new behaviors and
resources.

</details>

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

## Summary by Sourcery

优化自定义基建排程、肉鸽源石锭处理以及若干游戏内任务行为,并更新相关工具链、本地化以及 CI / pre-commit 配置。

New Features:
- 引入强类型的 `CustomInfrastConfig`
模型和新的选择机制,以支持基于时间和基于索引的自定义基建方案,并支持序列化到辅助任务中。
- 新增 YoStarJP SecretFront 任务配置,并在叠加层中支持 SSS Copilot 任务链日志记录。

Bug Fixes:
- 修复自定义基建方案解析与选择逻辑,包括更安全的配置默认值、更好地处理缺失的时段,以及在文件无效或方案不完整时提供更健壮的日志。
- 确保 Secret Front 关卡名称 OCR 使用可配置的 ROI,并通过重试机制让战斗编队中的支援干员入场更加稳健。
- 改进当游戏窗口移动时叠加层窗口的行为,并限制叠加层最大宽度以获得更好的布局效果。
- 将被跳过的肉鸽源石锭拾取/兑换流程视为非致命问题并细化日志记录,避免不必要的任务失败。
- 防止在更新检查运行过程中退出应用,并调整基建附加检查逻辑以适配新的自定义方案列表模型。

Enhancements:
- 现代化基建设置中的配置访问方式,并将自定义方案刷新逻辑简化为单一的解析/刷新流程。
- 优化基于时间的自定义方案显示刷新,以及自动在运行后切换方案与相关日志记录。
- 收紧 `TaskData` 的 loading-justreturn 检查,以覆盖更多加载类任务类型。
- 对各类实用脚本和测试应用多处 Python 及工具链格式清理。
- 调整 GitHub Actions 工作流,使用 Prek 来执行定时的 pre-commit 运行,并改进针对 PR 与直接推送的 PNG
优化逻辑,同时更新 devcontainer 中的 Python 工具链以使用 Ruff 替代 Black/Isort。

Build:
- 将 pre-commit 钩子更新到较新版本,用 Ruff 替换 Black/Isort 进行 Python
格式化,并微调优化模板工具的输出格式。

CI:
- 用 Prek GitHub Action 替代自定义的基于 Python 的定时 pre-commit 任务,并优化
optimize-templates 工作流逻辑,以更好地区分直接推送与 PR 合并。

Documentation:
- 修复日文入门手册中轻微的表格格式与对齐问题。

Tests:
- 整理 AutoLocalization XAML 解析器测试,不改变其现有行为。

Chores:
- 添加或调整多处任务/资源 JSON 与 XAML 本地化文件,并更新 CLI 与视图 XAML,使其与新的行为和资源保持一致。

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

## Summary by Sourcery

Refine custom infrastructure scheduling, roguelike copper handling, and
several gameplay task behaviors while updating tooling, localization,
and CI/pre-commit setup.

New Features:
- Introduce a strongly typed CustomInfrastConfig model and new selection
mechanism to support time-based and index-based custom infrastructure
plans, including serialization to assistant tasks.
- Add a YoStarJP SecretFront task configuration and support SSS Copilot
task chain logging in the overlay.

Bug Fixes:
- Fix custom infrastructure plan parsing and selection, including safer
configuration defaults, better handling of missing periods, and more
robust logging when files are invalid or plans are incomplete.
- Ensure Secret Front stage name OCR uses a configurable ROI and make
battle formation support-unit entry more resilient with retries.
- Improve overlay window behavior when the game window moves and clamp
overlay width to a maximum for better layout.
- Treat skipped roguelike copper pickup/exchange flows as non-fatal and
refine logging, preventing unnecessary task failures.
- Prevent exiting the app while an update check is running and adjust
infrast append checks to reflect the new custom plan list model.

Enhancements:
- Modernize config access patterns in infrastructure settings and
simplify custom plan refresh logic into a single parsing/refresh flow.
- Refine time-based custom plan display refresh and automatic post-run
plan switching and logging.
- Tighten TaskData loading-justreturn checks for additional loading task
types.
- Apply assorted Python and tooling formatting cleanups across utility
scripts and tests.
- Adjust GitHub Actions workflows to use Prek for scheduled pre-commit
runs and improve PNG optimization logic for PR vs direct pushes, while
updating devcontainer Python tooling to use Ruff instead of Black/Isort.

Build:
- Update pre-commit hooks to newer versions, replace Black/Isort with
Ruff for Python formatting, and tweak optimization template tooling
output formatting.

CI:
- Replace the custom Python-based pre-commit scheduled job with the Prek
GitHub Action and refine the optimize-templates workflow logic for
detecting direct pushes vs PR merges.

Documentation:
- Fix minor table formatting and alignment issues in the Japanese
introduction manual.

Tests:
- Tidy AutoLocalization XAML parser tests without changing behavior.

Chores:
- Add or adjust various task/resource JSON and XAML localization files,
plus CLI and view XAML tweaks, to align with the new behaviors and
resources.

</details>

</details>

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

## Summary by Sourcery

优化自定义基建排程、肉鸽源石锭处理以及若干游戏内任务行为,并更新相关工具链、本地化以及 CI / pre-commit 配置。

New Features:
- 引入强类型的 `CustomInfrastConfig`
模型和新的选择机制,以支持基于时间和基于索引的自定义基建方案,并支持序列化到辅助任务中。
- 新增 YoStarJP SecretFront 任务配置,并在叠加层中支持 SSS Copilot 任务链日志记录。

Bug Fixes:
- 修复自定义基建方案解析与选择逻辑,包括更安全的配置默认值、更好地处理缺失的时段,以及在文件无效或方案不完整时提供更健壮的日志。
- 确保 Secret Front 关卡名称 OCR 使用可配置的 ROI,并通过重试机制让战斗编队中的支援干员入场更加稳健。
- 改进当游戏窗口移动时叠加层窗口的行为,并限制叠加层最大宽度以获得更好的布局效果。
- 将被跳过的肉鸽源石锭拾取/兑换流程视为非致命问题并细化日志记录,避免不必要的任务失败。
- 防止在更新检查运行过程中退出应用,并调整基建附加检查逻辑以适配新的自定义方案列表模型。

Enhancements:
- 现代化基建设置中的配置访问方式,并将自定义方案刷新逻辑简化为单一的解析/刷新流程。
- 优化基于时间的自定义方案显示刷新,以及自动在运行后切换方案与相关日志记录。
- 收紧 `TaskData` 的 loading-justreturn 检查,以覆盖更多加载类任务类型。
- 对各类实用脚本和测试应用多处 Python 及工具链格式清理。
- 调整 GitHub Actions 工作流,使用 Prek 来执行定时的 pre-commit 运行,并改进针对 PR 与直接推送的 PNG
优化逻辑,同时更新 devcontainer 中的 Python 工具链以使用 Ruff 替代 Black/Isort。

Build:
- 将 pre-commit 钩子更新到较新版本,用 Ruff 替换 Black/Isort 进行 Python
格式化,并微调优化模板工具的输出格式。

CI:
- 用 Prek GitHub Action 替代自定义的基于 Python 的定时 pre-commit 任务,并优化
optimize-templates 工作流逻辑,以更好地区分直接推送与 PR 合并。

Documentation:
- 修复日文入门手册中轻微的表格格式与对齐问题。

Tests:
- 整理 AutoLocalization XAML 解析器测试,不改变其现有行为。

Chores:
- 添加或调整多处任务/资源 JSON 与 XAML 本地化文件,并更新 CLI 与视图 XAML,使其与新的行为和资源保持一致。

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

## Summary by Sourcery

Refine custom infrastructure scheduling, roguelike copper handling, and
several gameplay task behaviors while updating tooling, localization,
and CI/pre-commit setup.

New Features:
- Introduce a strongly typed CustomInfrastConfig model and new selection
mechanism to support time-based and index-based custom infrastructure
plans, including serialization to assistant tasks.
- Add a YoStarJP SecretFront task configuration and support SSS Copilot
task chain logging in the overlay.

Bug Fixes:
- Fix custom infrastructure plan parsing and selection, including safer
configuration defaults, better handling of missing periods, and more
robust logging when files are invalid or plans are incomplete.
- Ensure Secret Front stage name OCR uses a configurable ROI and make
battle formation support-unit entry more resilient with retries.
- Improve overlay window behavior when the game window moves and clamp
overlay width to a maximum for better layout.
- Treat skipped roguelike copper pickup/exchange flows as non-fatal and
refine logging, preventing unnecessary task failures.
- Prevent exiting the app while an update check is running and adjust
infrast append checks to reflect the new custom plan list model.

Enhancements:
- Modernize config access patterns in infrastructure settings and
simplify custom plan refresh logic into a single parsing/refresh flow.
- Refine time-based custom plan display refresh and automatic post-run
plan switching and logging.
- Tighten TaskData loading-justreturn checks for additional loading task
types.
- Apply assorted Python and tooling formatting cleanups across utility
scripts and tests.
- Adjust GitHub Actions workflows to use Prek for scheduled pre-commit
runs and improve PNG optimization logic for PR vs direct pushes, while
updating devcontainer Python tooling to use Ruff instead of Black/Isort.

Build:
- Update pre-commit hooks to newer versions, replace Black/Isort with
Ruff for Python formatting, and tweak optimization template tooling
output formatting.

CI:
- Replace the custom Python-based pre-commit scheduled job with the Prek
GitHub Action and refine the optimize-templates workflow logic for
detecting direct pushes vs PR merges.

Documentation:
- Fix minor table formatting and alignment issues in the Japanese
introduction manual.

Tests:
- Tidy AutoLocalization XAML parser tests without changing behavior.

Chores:
- Add or adjust various task/resource JSON and XAML localization files,
plus CLI and view XAML tweaks, to align with the new behaviors and
resources.

</details>

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

## Summary by Sourcery

优化自定义基建排程、肉鸽源石锭处理以及若干游戏内任务行为,并更新相关工具链、本地化以及 CI / pre-commit 配置。

New Features:
- 引入强类型的 `CustomInfrastConfig`
模型和新的选择机制,以支持基于时间和基于索引的自定义基建方案,并支持序列化到辅助任务中。
- 新增 YoStarJP SecretFront 任务配置,并在叠加层中支持 SSS Copilot 任务链日志记录。

Bug Fixes:
- 修复自定义基建方案解析与选择逻辑,包括更安全的配置默认值、更好地处理缺失的时段,以及在文件无效或方案不完整时提供更健壮的日志。
- 确保 Secret Front 关卡名称 OCR 使用可配置的 ROI,并通过重试机制让战斗编队中的支援干员入场更加稳健。
- 改进当游戏窗口移动时叠加层窗口的行为,并限制叠加层最大宽度以获得更好的布局效果。
- 将被跳过的肉鸽源石锭拾取/兑换流程视为非致命问题并细化日志记录,避免不必要的任务失败。
- 防止在更新检查运行过程中退出应用,并调整基建附加检查逻辑以适配新的自定义方案列表模型。

Enhancements:
- 现代化基建设置中的配置访问方式,并将自定义方案刷新逻辑简化为单一的解析/刷新流程。
- 优化基于时间的自定义方案显示刷新,以及自动在运行后切换方案与相关日志记录。
- 收紧 `TaskData` 的 loading-justreturn 检查,以覆盖更多加载类任务类型。
- 对各类实用脚本和测试应用多处 Python 及工具链格式清理。
- 调整 GitHub Actions 工作流,使用 Prek 来执行定时的 pre-commit 运行,并改进针对 PR 与直接推送的 PNG
优化逻辑,同时更新 devcontainer 中的 Python 工具链以使用 Ruff 替代 Black/Isort。

Build:
- 将 pre-commit 钩子更新到较新版本,用 Ruff 替换 Black/Isort 进行 Python
格式化,并微调优化模板工具的输出格式。

CI:
- 用 Prek GitHub Action 替代自定义的基于 Python 的定时 pre-commit 任务,并优化
optimize-templates 工作流逻辑,以更好地区分直接推送与 PR 合并。

Documentation:
- 修复日文入门手册中轻微的表格格式与对齐问题。

Tests:
- 整理 AutoLocalization XAML 解析器测试,不改变其现有行为。

Chores:
- 添加或调整多处任务/资源 JSON 与 XAML 本地化文件,并更新 CLI 与视图 XAML,使其与新的行为和资源保持一致。

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

## Summary by Sourcery

Refine custom infrastructure scheduling, roguelike copper handling, and
several gameplay task behaviors while updating tooling, localization,
and CI/pre-commit setup.

New Features:
- Introduce a strongly typed CustomInfrastConfig model and new selection
mechanism to support time-based and index-based custom infrastructure
plans, including serialization to assistant tasks.
- Add a YoStarJP SecretFront task configuration and support SSS Copilot
task chain logging in the overlay.

Bug Fixes:
- Fix custom infrastructure plan parsing and selection, including safer
configuration defaults, better handling of missing periods, and more
robust logging when files are invalid or plans are incomplete.
- Ensure Secret Front stage name OCR uses a configurable ROI and make
battle formation support-unit entry more resilient with retries.
- Improve overlay window behavior when the game window moves and clamp
overlay width to a maximum for better layout.
- Treat skipped roguelike copper pickup/exchange flows as non-fatal and
refine logging, preventing unnecessary task failures.
- Prevent exiting the app while an update check is running and adjust
infrast append checks to reflect the new custom plan list model.

Enhancements:
- Modernize config access patterns in infrastructure settings and
simplify custom plan refresh logic into a single parsing/refresh flow.
- Refine time-based custom plan display refresh and automatic post-run
plan switching and logging.
- Tighten TaskData loading-justreturn checks for additional loading task
types.
- Apply assorted Python and tooling formatting cleanups across utility
scripts and tests.
- Adjust GitHub Actions workflows to use Prek for scheduled pre-commit
runs and improve PNG optimization logic for PR vs direct pushes, while
updating devcontainer Python tooling to use Ruff instead of Black/Isort.

Build:
- Update pre-commit hooks to newer versions, replace Black/Isort with
Ruff for Python formatting, and tweak optimization template tooling
output formatting.

CI:
- Replace the custom Python-based pre-commit scheduled job with the Prek
GitHub Action and refine the optimize-templates workflow logic for
detecting direct pushes vs PR merges.

Documentation:
- Fix minor table formatting and alignment issues in the Japanese
introduction manual.

Tests:
- Tidy AutoLocalization XAML parser tests without changing behavior.

Chores:
- Add or adjust various task/resource JSON and XAML localization files,
plus CLI and view XAML tweaks, to align with the new behaviors and
resources.

</details>

</details>

</details>
2025-12-27 00:42:45 +08:00
github-actions[bot]
d368dca271 docs: Auto Update Changelogs of v6.1.0-beta.4 (#15209)
* docs: Auto Generate Changelog of Release v6.1.0-beta.4

* docs: Update CHANGELOG with recent improvements and fixes

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-12-27 00:01:27 +08:00
Constrat
fc60270576 feat(tools): add ability to remove unused templates (#15207) 2025-12-26 16:37:39 +01:00
uye
d7b1c83baa fix: 部分情况下无法进入借助战界面 2025-12-26 23:07:36 +08:00
Constrat
e68db16dce perf: reoptimize ALL templates from scratch 2025-12-26 15:59:20 +01:00
白隐Hakuin
4f8bf54398 feat: 更新期间退出应用添加二次确认 (#14964)
* feat: 防止资源更新期间退出应用

- 在应用关闭前检查资源更新状态
- 若资源更新进行中,弹出确认对话框提示用户
- 防止解压过程中意外关闭导致资源更新异常
- 新增本地化字符串用于资源更新确认提示

* fix: 修复编译错误 - 局部变量重复声明

- 修改第二个 MessageBoxHelper.Show() 返回值变量名为 confirmResult
- 避免在同一方法作用域内重复声明 result 变量

* chore: 更新版本更新的退出确认对话框

将ResourceUpdateInProgress本地化字符串替换为UpdateConfirmExit
在版本更新期间退出时提供更清晰的消息传递。

* i18n: 翻译

---------

Co-authored-by: Hakuin123 <hakuin123@github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-12-26 22:47:14 +08:00
Status102
23d54a51c6 fix: LoadingText 结束后 UI 延迟变化导致误匹配 (#15198)
* fix: LoadingText 结束后 UI 延迟变化导致误匹配

* fix: task check
2025-12-26 22:36:57 +08:00
Fryze
2a2cfec777 fix: roi out of range (#15204)
* fix: roi out of range

* fix: roi out of range in base.json
2025-12-26 22:28:20 +08:00
Constrat
d988d2537c ci: fix for optimize templates
- fixed wrong condition
- xargs -> jq for better checking
2025-12-26 14:45:57 +01:00
Constrat
e1d0432e09 fix: sendclue reception standardize templates (#15205)
fix: standardize template for all clients
2025-12-26 14:31:00 +01:00
github-actions[bot]
3835659ac9 feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20511398549
[skip changelog]
2025-12-25 21:52:28 +00:00
uye
ac8680d768 fix: 前往上一次作战增加重试
fix #15202
2025-12-26 03:23:34 +08:00
travellerse
8c6b3bf559 fix: 修复通宝拾取时卡死并删除m_retry_times=1 (#15197)
* fix: 使用return true进入next替代通宝插件范围的retry_times=1

* fix: 优化通宝插件任务的返回结果
2025-12-26 03:18:12 +08:00
uye
aa1b267278 perf: 优化悬浮窗布局 2025-12-26 03:06:45 +08:00
status102
017c6bdce5 fix: 基建自定义配置迁移加个try 2025-12-26 02:25:52 +08:00
SherkeyXD
ccd5d30ac0 chore: 更新 pre-commit 配置 2025-12-26 00:53:35 +08:00
github-actions[bot]
e20f02c5d2 chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20508148724
[skip changelog]
2025-12-25 16:53:07 +00:00
SherkeyXD
925bb69111 chore: 移除 isort/black 配置 2025-12-26 00:50:55 +08:00
SherkeyXD
232d4adb04 chore: update pre-commit toolchain (#15179) 2025-12-26 00:50:14 +08:00
SherkeyXD
2bae56659b chore: devcontainer 迁移至 ruff 2025-12-26 00:48:18 +08:00
SherkeyXD
b70d662a3e chore: 修复 roi updater 工具的问题 2025-12-26 00:44:27 +08:00
uye
25222f6e9a fix: 保全自动战斗日志悬浮窗 2025-12-25 22:47:19 +08:00
uye
25786dabeb fix: 保全派驻因网络波动可能无法点击阵容确认 2025-12-25 22:11:15 +08:00
uye
b8b020e839 fix: 未设置自定义基建排班路径时第一次启动会报错 2025-12-25 21:37:23 +08:00
uye
45162e093e chore: 悬浮窗移动时不隐藏,避免某些窗口点击就会触发闪烁(说的就是 QQ) 2025-12-25 21:28:11 +08:00
Status102
61fbba4b12 fix: 自定义基建计划指定某个计划后会在1分钟后被重置为定时计划 (#14649)
* fix: 选中计划转换

fix: 解析警告

rft: 重构完成

perf: 移除_customInfrastPlanHasPeriod

rft: 设置读取

perf: 加上数量检查

i18n: warning

fix: 基建自定义计划手动选择后依旧会被时间刷新

* i18n: placehold

* i18n: KR

* i18n: EN

* fix: 时间轮换UI刷新错误

---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2025-12-25 19:41:21 +08:00
Manicsteiner
86376c9118 feat: YostarJP SecretFront edit (#15191) 2025-12-25 15:11:57 +08:00
Constrat
dcc2c05aee Release v6.1.0-beta.3 (#15188) 2025-12-25 01:24:50 +01:00
github-actions[bot]
48315226dd docs: Auto Update Changelogs of v6.1.0-beta.3 (#15195)
* docs: Auto Generate Changelog of Release v6.1.0-beta.3

* docs: highlight

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2025-12-25 01:24:23 +01:00
github-actions[bot]
7817b15929 chore: Auto Update Game Resources - 2025-12-24
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20493071706

[skip changelog]
2025-12-24 20:03:47 +00:00
萨拉托加
b683cdc400 fix: 避免肉鸽快速编队点太快可能点不上
还是先加500吧,不够再加
2025-12-24 21:27:12 +08:00
萨拉托加
9d24679cab fix: 肉鸽因模拟器卡顿可能点进招募界面 2025-12-24 21:12:08 +08:00
Constrat
957f821976 fix: allow usage of CLI build instead of only VS (#15190)
* fix: change solutiondir to msbuildproject

* chore: perhaps a better solution
2025-12-24 14:08:20 +01:00
Manicsteiner
b1d7950843 chore: YostarJP roguelike JieGarden ocr edit 2025-12-24 21:02:12 +08:00
萨拉托加
0bb546d1d8 fix: 萨米积冰岩骸识别 2025-12-24 20:58:22 +08:00
Constrat
49ad57dc2c i18n: EN typo 2025-12-24 13:47:35 +01:00
SherkeyXD
42d8699e63 chore: remove codeql workflow 2025-12-24 19:38:04 +08:00
uye
8dbc73e0fe perf: RefreshCustomInfrastPlanIndexByPeriod 支持传入当前时间 2025-12-24 19:12:38 +08:00
uye
0148b78711 fix: 保全关卡名识别 2025-12-24 19:05:09 +08:00
uye
dc50e93075 chore: 资源更新忽略 .gitignore 文件 2025-12-24 17:15:48 +08:00
uye
a5e7477b90 feat: 支持点击标题栏左上角的检测到新版本提示触发更新 2025-12-24 16:51:16 +08:00
uye
093320a4c8 fix: 两个检测更新的按钮在更新时禁用 2025-12-24 16:46:07 +08:00
uye
db2dfbce78 fix: 未勾选自动下载更新包且无可用的 OTA 增量更新包时仍然提示“将下载完整包xxx” 2025-12-24 16:42:04 +08:00
uye
c1a0d38037 feat: 右键图标菜单栏中增加日志悬浮窗切换 2025-12-24 16:09:47 +08:00
uye
2380db976b feat: 悬浮窗支持自动战斗日志源 2025-12-24 15:38:49 +08:00
Constrat
6f52b01076 perf: optimize templates for secrentfront 2025-12-24 00:46:06 +01:00
Constrat
4fd44e2315 feat: YostarEN SecretFront (Hidden Front) 2025-12-24 00:45:22 +01:00
github-actions[bot]
1cbe7e2670 chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20471520173
[skip changelog]
2025-12-23 21:06:06 +00:00
github-actions[bot]
9d4a9b801b chore: Auto Update Game Resources - 2025-12-23
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20467704410

[skip changelog]
2025-12-23 17:47:53 +00:00
uye
442474cce1 feat: 隐秘战线 (#15115)
* feat: 隐秘战线

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: 抵达终点

* chore: Auto update by pre-commit hooks [skip changelog]

* perf: 抑制一下低概率

* feat: ui 新增隐秘战线入口

* chore: Auto update by pre-commit hooks [skip changelog]

* i18n: zh-tw

* i18n: KR

* chore: fix typo

* i18n: JP

* chore: txwy update

* chore: Auto update by pre-commit hooks [skip changelog]

* i18n: placehold

* rft: roi to json

* i18n: 翻译

* chore: 插件只在传入对应任务时启用

* fix: 任务名错误

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: momomochi987 <as99us301@gmail.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
2025-12-24 01:43:35 +08:00
uye
5880499330 feat: 日志悬浮窗 (#15185)
* feat: 日志叠加层

* feat: 添加窗口选择和持久化保存

* rft: 调整部分后台代码至 vm 中

* feat: 选择列表添加 ProcessId 显示

* i18n: 翻译

* rft: 改用 CsWin32

* fix: MessageBoxResult ShowNative 报错

* chore: 移除多余的 PInvoke

* rft: OverlayViewModel 改用 PInvoke

* style: 编译警告

* rft: OverlayWindow.xaml.cs 改用 PInvoke

* perf: 优化显示效果,添加控制按钮

* chore: 改用 SetWindowLongPtr

* perf: 优化性能

* i18n: 翻译

* feat: 增加 TooltipBlock 提示

* fix: 中途开启不会滚动到日志最后一栏

* chore: 使用属性而不是字段

* chore: 注释

* fix: 窗口未显示的时候不会持久化保存目标窗口

* chore: 移除未使用变量
2025-12-24 01:23:42 +08:00
yali-hzy
419d3a6711 feat: 在任务开始后的禁用组件内也能查看tooltip (#15186) 2025-12-24 01:02:26 +08:00
Constrat
e0e037fd8d fix: more tongbaso regex en 2025-12-23 17:36:04 +01:00
Manicsteiner
7ca6845b35 chore: YostarJP roguelike JieGarden ocr edit 2025-12-23 23:24:11 +08:00
MistEO
55beea8593 refactor(core): 重构 ResourceLoader::load 资源加载逻辑 (#15132)
* refactor(core): 重构 ResourceLoader::load 资源加载逻辑

- 将函数内宏定义替换为类型安全的泛型 lambda
- 修复 _custom.json 路径计算错误(仅对 .json 文件生效)
- 使用循环和数组消除 Roguelike 配置的重复加载代码
- 添加结构化注释分隔符提升可读性
- 移除未使用的 AsyncLoadConfig 宏和错误的 #undef

* fix: 修复行为不一致

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-12-23 21:42:30 +08:00
Status102
801d656329 feat: ProcessTask任务命中缓存结果 (#12651)
* feat: ProcessTask任务命中缓存结果

* perf: 加个函数

* perf: 合并直接截图

* feat: 增加匹配模板及文字

* fix: win

* fix: ptr check

* fix: template func

* fix: type

* fix: import

* fix: empty

* perf: early retrun

* perf: shared image

* fix: import
2025-12-23 21:40:56 +08:00
github-actions[bot]
0cd1d1b63e chore: Auto Update Game Resources - 2025-12-23
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20462178052

[skip changelog]
2025-12-23 13:37:08 +00:00
status102
e71037a1b0 fix: 单切换账号时,任务运行计时错误 2025-12-23 21:23:48 +08:00
yali-hzy
fef77f5780 fix: 招募助战后补充低信赖干员数量不足 (#15184)
fix: 修正补充低信赖干员数量计算,考虑是否已经招募助战干员
2025-12-23 18:41:57 +08:00
Status102
ca9807ce09 chore: Update C# EditorConfig for c# 13 & 14 (#15146)
[blame ignore]
2025-12-23 17:11:48 +08:00
Constrat
32c6429825 fix: BattleStageName requiring ^$ for EN 2025-12-23 00:07:28 +01:00
HX3N
56f6ef419c i18n: KR improve client display names 2025-12-23 07:46:47 +09:00
Constrat
6532e29d88 fix: wrong template for EN 2025-12-22 23:25:53 +01:00
github-actions[bot]
1c294925d2 feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20444930763
[skip changelog]
2025-12-22 21:52:47 +00:00
Constrat
58a0e07854 Release v6.1.0-beta.2 (#15172)
> [!IMPORTANT]
> - [x] #15167 ~~to be merged~~ merged

## Summary by Sourcery

更新 roguelike 任务配置、区域任务资源、韩语本地化字符串,以及面向即将到来的测试版发布的模板优化设置。

改进内容:
- 刷新多个地区的 roguelike 任务配置文件和共享任务资源。
- 调整 WPF GUI 中的韩语本地化资源。
- 为更新后的资源微调模板优化配置。

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

## Summary by Sourcery

Update roguelike task configurations, regional task resources, Korean
localization strings, and template optimization settings for the
upcoming beta release.

Enhancements:
- Refresh roguelike task configuration files and shared task resources
for multiple regions.
- Adjust Korean localization resources in the WPF GUI.
- Tune template optimization configuration for updated assets.

</details>

## Summary by Sourcery

为 v6.1.0-beta.2 版本准备 Roguelike 任务处理、本地化资源和构建工具。

新特性:
- 将 Roguelike 铜币识别错误从核心任务插件上报到 WPF UI,以便进行用户可见的日志记录。

错误修复:
- 改进 Roguelike 铜币拾取行为,通过减少重试交换模式的次数,并在只检测到无效铜币时点击回退位置。

增强改进:
- 优化 macOS xcframework 的生成方式,以使用目标产物、专用构建目录以及对第三方 dylib 的动态发现。
- 调整 Roguelike 铜币调试图像的保存逻辑,以支持可选的自动清理。
- 刷新多个地区的 Roguelike 任务配置和共享任务资源。
- 更新 WPF 本地化资源(包括韩文字符串),以支持 Roguelike UI 和新增消息。
- 重新调校模板优化配置,使其与更新后的资源和素材保持一致。

CI:
- 将预定执行的 pre-commit 工作流更新为使用更高版本的 checkout 和 setup-python GitHub
Actions。

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

## Summary by Sourcery

Prepare roguelike task handling, localization resources, and build
tooling for the v6.1.0-beta.2 release.

New Features:
- Report roguelike copper recognition errors from the core task plugin
to the WPF UI for user-visible logging.

Bug Fixes:
- Improve roguelike copper pickup behavior by retrying exchange mode
fewer times and clicking a fallback position when only invalid coppers
are detected.

Enhancements:
- Refine macOS xcframework generation to use target outputs, a dedicated
build directory, and dynamic discovery of third-party dylibs.
- Adjust roguelike copper debug image saving to support optional
automatic cleanup.
- Refresh roguelike task configuration and shared task resources across
multiple regions.
- Update WPF localization resources, including Korean strings, for the
roguelike UI and new messages.
- Retune template optimization configuration to align with updated
assets and resources.

CI:
- Update scheduled pre-commit workflow to newer checkout and
setup-python GitHub Actions versions.

</details>
2025-12-22 18:18:37 +01:00
github-actions[bot]
e735da403c docs: Auto Update Changelogs of v6.1.0-beta.2 (#15135)
* docs: Auto Generate Changelog of Release v6.1.0-beta.2

* docs: early changelog. requires CN checking

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2025-12-22 18:12:22 +01:00
HX3N
b4b1aa69c6 chore: KR 同心 ocr 2025-12-23 02:11:51 +09:00
Constrat
69bc5bcf83 fix: more copper regex for EN 2025-12-22 18:11:16 +01:00
Constrat
250eebd81f fix: update GetDropSwitch for EN
to make it same size as CN for ROI Pickup reasons
2025-12-22 17:51:30 +01:00
travellerse
9bdfc02de5 fix: 完善通宝识别失败时的分支处理 (#15180) 2025-12-22 17:17:45 +01:00
github-actions[bot]
d75c028852 feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20436912089
[skip changelog]
2025-12-22 15:52:36 +00:00
Constrat
a3ea60b014 fix: more tongbao EN regex 2025-12-22 16:45:09 +01:00
HY
6d72632617 chore: 繁中服保全派駐 8 清音安保派駐 (#15110)
* chore: sss8 txwy

* Revert "chore: sss8 txwy"

This reverts commit 75912772e2.

* chore: 拆出 text

* chore: 先把上個週期的作業移進 old

* chore: 把作業搬移的部分交給其他 PR

This reverts commit c3904dd896.
2025-12-22 16:37:25 +01:00
HY
1fd8c03e32 fix: SendClues for txwy (#15178) 2025-12-22 16:16:22 +01:00
travellerse
f155bc4867 fix: 通宝识别失败时放弃通宝 (#15167)
* fix: 通宝识别失败时放弃通宝

* fix: 初始化click_point_fallback

* fix: 通宝交换任务仅尝试2次

* fix: 不小心把调试用的传上去了

* fix: 所有通宝名称识别错误都发送反馈

* i18n: KR

* fix: Tongbao error info tweak

* perf: disable auto clean for Tongbao unknown debug image

* fix: Tongbao info case tweak

---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
2025-12-22 16:15:40 +01:00
Manicsteiner
16da7903ba chore: YostarJP roguelike JieGarden ocr edit 2025-12-22 23:08:31 +08:00
HX3N
bee37d42ab chore: YostarKR JieGarden Encounter ocr 2025-12-22 22:59:48 +09:00
dependabot[bot]
a3d3b54fcf ci: bump the github-actions group in /.github/workflows with 2 updates (#15177)
Bumps the github-actions group in /.github/workflows with 2 updates: [actions/checkout](https://github.com/actions/checkout) and [actions/setup-python](https://github.com/actions/setup-python).


Updates `actions/checkout` from 4 to 6
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v6)

Updates `actions/setup-python` from 5 to 6
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: actions/setup-python
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-22 14:22:19 +01:00
Weiyou Wang
0072770349 chore(ci): 更新 macos.cmake (#15173) 2025-12-22 11:19:35 +08:00
Constrat
38b5d0332b fix: more Coppers EN regexes 2025-12-22 01:48:17 +01:00
github-actions[bot]
7937882099 chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20415763013
[skip changelog]
2025-12-21 21:05:48 +00:00
Constrat
74256dc3d2 fix: missing Special Squad for EN 2025-12-21 21:34:26 +01:00
Constrat
c376af8dff fix: more regex for CoppersNameOcrReplace EN 2025-12-21 21:25:36 +01:00
HX3N
4846ad64e3 fix: SendClues for Yostar server (#15168)
* fix: SendClues

* chore: expand roi

* Revert "chore: expand roi"

This reverts commit b764d81792.
2025-12-21 19:32:03 +01:00
Constrat
573bd6f0a4 fix: Missing GetDropSelectRecruit for EN 2025-12-21 19:24:10 +01:00
Constrat
5c40c4b6e8 fix: missing CoppersAbandonExchange for EN 2025-12-21 16:47:18 +01:00
HX3N
78a27ebfa6 i18n: KR tweak InvestmentReach 2025-12-21 23:58:12 +09:00
Constrat
ee4f966f75 fix: tonbgbao regex for EN 2025-12-21 15:07:17 +01:00
github-actions[bot]
14f331e964 chore: Auto Templates Optimization
Triggered by 18dd3b2034

[skip changelog]
2025-12-21 13:23:25 +00:00
uye
18dd3b2034 feat:满线索再一键置入 2025-12-21 21:22:56 +08:00
Constrat
9c12b659cf Release v6.1.0-beta.1 (#15134)
Sui Garden for EN KR JP
2025-12-21 13:58:38 +01:00
Manicsteiner
365af6653d chore: YostarJP roguelike JieGarden ocr edits (#15162) 2025-12-21 13:56:47 +01:00
Constrat
b467138bee fix: regex off all double letters for EN coppers 2025-12-21 13:56:05 +01:00
HX3N
1539769b0c chore: YostarKR JieGarden ocr edit 2025-12-21 17:27:05 +09:00
萨拉托加
4400d05cfa feat: 极寒保全派驻作业 2025-12-21 11:25:50 +08:00
github-actions[bot]
970860d4f4 chore: Auto Update Game Resources - 2025-12-21
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20402818215

[skip changelog]
2025-12-21 01:32:03 +00:00
Constrat
3824fb1c3e fix: EN requires GetDropSwitch2 2025-12-21 02:06:25 +01:00
Constrat
aa9dc2ee4d fix: remove case sensitivity from CoppersNameOcrReplace 2025-12-20 22:48:03 +01:00
HX3N
66b95cb1e7 i18n: KR tweak translation for IS nodes, achievements and general UI 2025-12-21 06:43:59 +09:00
Constrat
c641e35ee5 i18n: EN tweak 2025-12-20 21:32:32 +01:00
status102
389812279d feat: Wpf日志文件输出分级 2025-12-21 00:59:38 +08:00
Constrat
e11a90e252 fix: Ruwu Gate ROI is too big and detects floor number (IV) 2025-12-20 16:20:37 +01:00
Constrat
ebc980f154 i18n: various tweaks to IS nodes and stages 2025-12-20 16:12:54 +01:00
github-actions[bot]
d44735e969 chore: Auto Templates Optimization
Triggered by 3916aa0211

[skip changelog]
2025-12-20 14:51:38 +00:00
Manicsteiner
3916aa0211 chore: YostarJP roguelike JieGarden edits (#15153) 2025-12-20 15:51:19 +01:00
Constrat
28267a5490 fix: use template instead of reduced score
thanks to @HX3N
2025-12-20 15:49:09 +01:00
github-actions[bot]
1bc27e05b2 chore: Auto Update Game Resources - 2025-12-20
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20395883077

[skip changelog]
2025-12-20 14:44:39 +00:00
Constrat
4edcb7dad7 fix: FastPass for EN ref be08678 2025-12-20 15:34:39 +01:00
uye
e6862591e8 fix: 资源更新不应该复制 cache 文件夹 2025-12-20 22:25:26 +08:00
HY
2c3b95ddca chore: 調整繁中服薩米與薩卡茲肉鴿的 OCR 辨識對應文字 (#15145)
* chore: 點人 → 黜人

* chore: 更新部分不期而遇關卡名稱

* chore: 再改一點
2025-12-20 14:58:46 +01:00
Manicsteiner
fd5449d2de chore: YostarJP JieGarden ocr edit 2025-12-20 21:44:15 +08:00
HX3N
2f88a7e2e8 fix: adb addressRegex (#15142) 2025-12-20 15:58:31 +09:00
Hao Guan
1f7dcde3f9 fix(mac): 资源版本显示标题 2025-12-20 09:25:49 +08:00
github-actions[bot]
131b6c4983 chore: Auto update by pre-commit hooks
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20382466064
[skip changelog]
2025-12-19 21:05:56 +00:00
github-actions[bot]
03d814e211 chore: Auto Update Game Resources - 2025-12-19
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20379032927

[skip changelog]
2025-12-19 18:30:57 +00:00
HX3N
be08678390 fix: YostarKR StrategyChange_mode-FastPass 2025-12-20 02:59:40 +09:00
HX3N
724326b309 i18n: KR tweak EncounterOptions translation
[skip ci]
2025-12-20 00:23:32 +09:00
Constrat
3b50040cde perf: optimize templates size 2025-12-19 16:20:26 +01:00
github-actions[bot]
28f1fbbc6a chore: Auto Update Game Resources - 2025-12-19
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20372992970

[skip changelog]
2025-12-19 14:34:49 +00:00
HX3N
1fd58e846e chore: YostarKR wrap short OcrReplaces with anchors to prevent misrecognition 2025-12-19 23:24:10 +09:00
Manicsteiner
3e9992598a feat: YostarJP Roguelike JieGarden (#15116)
* feat: YostarJP Roguelike JieGarden

* chore: templates and docs

* chore: OCR edits

* chore: templates and ocr

* chore: add templates

* chore: ocr edit

* chore: ocr edit

* chore: ocr edit

* chore: ocr edit

* chore: remove CoppersAnalyzer roi

* chore: Update docs/ja-jp/manual/introduction/integrated-strategy.md

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

* chore: ocr edit

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
2025-12-19 15:16:55 +01:00
Constrat
fbb40d4a7e feat: YostarEN Roguelike Jie Garden (#15119)
* feat: tasks for json

* feat: templates

* fix: remove spaces in encounter analyzer

* docs: update difficulty name

* feat: add skip1 template

* i18n: translations

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: typo

* i18n: typo

* feat: missing templates

* fix: missing optimized

* feat: add squads and starts

* fix: add ROI to StrategyChange detection

* chore: remove unnecessary field from sarkaz

* fix: add all basetasks and texts from JP

* fix: update DropsFlag for all IS

* fix: LeaveBosky custom for EN (different color shading)

* fix: custom Abandon for EN (slightly taller no idea)

* fix: just reduce score for abandon

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: added space remove

* feat: add coppers to trader list

* fix: revert regex changes to copper

Waiting to increase ROI

* i18n: AI Sourcery wow

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

* chore: cleanup tasks

* fix: Encounter OCR remove dashes

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
2025-12-19 15:10:20 +01:00
HX3N
05fc329eb3 feat: YostarKR Roguelike JieGarden (#15113)
* chore: placeholder

* chore: Squad and Roles

* chore: remove CoppersType

* chore: NextLevel and StrategyChange_mode

* chore: StageEncounterOcr and RoguelikeTraderShoppingOcr

* chore: templates

* chore: JieGarden@Roguelike@StartAction

Yostar... :(

* chore: BattleStageName

* chore: text and templates

* chore: CoppersNameOcrReplace and OptionHeaderBar

* chore: remove space

* chore: CharsNameOcrReplace and template

* docs: IS

* chore: template and encounter

* chore: TraderShoppingOcr add Copper

i18n: SpecialForceSquad

chore: revert 강제이동

Update ko-kr.xaml

* fix: StrategyChange_mode

* chore: GamePass
2025-12-19 14:57:23 +01:00
travellerse
415fb7d8fc fix: change tongbao name OCR to fit oversea (#15129)
* fix: 移除通宝已投出硬编码

* fix: 添加左侧列通宝名称识别OCR任务

* fix: 加长通宝名称识别的ROI

* fix: apply suggestion

* chore: increase pickupOCR ROI (from JP)

* fix: increase ExchangeNameOCR ROI to max

---------

Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2025-12-19 14:32:12 +01:00
Constrat
0f25d34076 ci: implement matrix for uploading myrror + ubuntu for winget (#14844)
* ci: implement matrix for uploading myrror + ubuntu for winget

docs say it's fine since we don't use .msi

* revert: ubuntu-latest to windows-latest
2025-12-19 13:57:10 +01:00
MistEO
07b808dc30 ci: 将 pre-commit 改为定时任务运行 (#15133) 2025-12-19 18:03:49 +08:00
github-actions[bot]
84b54d395a chore: Auto Update Game Resources - 2025-12-19
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20363778361

[skip changelog]
2025-12-19 08:04:58 +00:00
MistEO
c80954862b perf: use boost::regex instead of std::regex (#15126) 2025-12-19 13:04:28 +08:00
status102
6d8bab3588 fix: 更新后连带清除过往未下载成功的OTA包 2025-12-19 10:08:32 +08:00
Weiyou Wang
90ecbb9a74 fix: 修复 MacOS asst.log 自动清空的问题 (#15122) 2025-12-19 10:02:35 +08:00
github-actions[bot]
7143cd2a72 chore: Auto Update Game Resources - 2025-12-18
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20350382139

[skip changelog]
2025-12-18 20:29:24 +00:00
github-actions[bot]
cffc52ae0a chore: Auto Update Game Resources - 2025-12-18
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20342598213

[skip changelog]
2025-12-18 15:48:47 +00:00
Constrat
b62dc10967 fix: PlaatformWin32 for ResourceUpdater on windows 2025-12-18 16:40:34 +01:00
HX3N
0af9ee5e95 chore: enable Roguelike JieGarden for Yostar servers 2025-12-18 16:44:41 +09:00
github-actions[bot]
27c748ad89 chore: Auto Update Game Resources - 2025-12-18
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20329402284

[skip changelog]
2025-12-18 07:29:28 +00:00
mayuri0v0
e91efce7db fix: 去除路径左右的空格与控制字符 (#15082)
* fix: 去除路径左右的空格与控制字符

* fix: 忘了调库了

* fix: 忘了调库了
2025-12-18 13:20:00 +08:00
Constrat
46e2025699 fix: regex for Leizi Alter for EN 2025-12-17 17:12:01 +01:00
铃语
11edd2a030 perf: 更新 333 极限效率一天三换排班表(20251217 修订) (#15108)
* perf: 更新 333 极限效率一天三换排班表(20251217 修订)

* perf: 优化描述

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-12-17 23:49:21 +08:00
github-actions[bot]
02b1e0e15e feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20283887348
[skip changelog]
2025-12-16 21:52:45 +00:00
Status102
c7d947fc03 perf: TemplResource 查找图片过程预构建索引 (#15092)
* rft: TemplResource 查找图片过程预构建索引

* perf: 存储相对路径

* chore: rename

* fix: case

* fix: 还原成旧的.path
2025-12-16 22:55:56 +08:00
uye
2106057d13 fix: 赠送线索后的弹窗会挡住自己新线索的图标 2025-12-16 17:31:00 +08:00
vonnoq
46c2464bb4 fix: 繁中服 自動編隊不會使用職業欄 (#15090)
* fix:繁中服 黍 識別錯誤

黍被識別為丞

* fix:繁中服 無法透過職業自動編隊

* fix:繁中服 無法透過職業自動編隊

* fix:繁中服 無法透過職業自動編隊

* fix:繁中服 無法透過職業自動編隊

* fix:繁中服 無法透過職業自動編隊

* fix:繁中服 無法透過職業自動編隊

* fix:繁中服 無法透過職業自動編隊

* fix:繁中服 無法透過職業自動編隊
2025-12-16 09:24:01 +08:00
dependabot[bot]
3b3383ef4b ci: bump the github-actions group in /.github/workflows with 4 updates (#15091)
Bumps the github-actions group in /.github/workflows with 4 updates: [actions/upload-artifact](https://github.com/actions/upload-artifact), [actions/cache](https://github.com/actions/cache), [actions/download-artifact](https://github.com/actions/download-artifact) and [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request).


Updates `actions/upload-artifact` from 5 to 6
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v5...v6)

Updates `actions/cache` from 4 to 5
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v4...v5)

Updates `actions/download-artifact` from 6 to 7
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v6...v7)

Updates `peter-evans/create-pull-request` from 7 to 8
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/v7...v8)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: actions/cache
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: actions/download-artifact
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: peter-evans/create-pull-request
  dependency-version: '8'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-15 18:44:55 +01:00
github-actions[bot]
0abc18ef10 chore: Auto Update Game Resources - 2025-12-15
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20224773230

[skip changelog]
2025-12-15 08:05:21 +00:00
HX3N
c154e24cf3 fix: YostarKR update Roguelike@TraderRandomShoppingConfirm 2025-12-15 13:30:33 +09:00
Constrat
b956f1690a fix: prettier 2025-12-14 17:24:23 +01:00
HX3N
087dc66617 fix: YostarKR remove problematic equivalence_classes
ref #15084
2025-12-15 00:54:27 +09:00
DavidWang19
087c34a67d perf: 让截图工具支持从src/获取的截图也缩放到目标分辨率 2025-12-14 20:53:23 +08:00
github-actions[bot]
0b30335044 chore: Auto Templates Optimization
Triggered by dd23959f41

[skip changelog]
2025-12-14 12:44:56 +00:00
DavidWang19
dd23959f41 fix: 增加巫恋的绣云鹤皮肤头像 2025-12-14 20:44:27 +08:00
uye
3a7e5780b6 perf: 优化 StableHash 2025-12-14 18:41:36 +08:00
uye
98fbcd1712 chore: 调整正则 2025-12-14 18:23:18 +08:00
uye
f3a1812eff fix: 关卡名中的 - 被识别成
fix #15074
2025-12-14 18:20:01 +08:00
github-actions[bot]
e2d666785a chore: Auto Templates Optimization
Triggered by e0c2338531

[skip changelog]
2025-12-14 09:50:39 +00:00
uye
e0c2338531 fix: 基建使用无人机加速贸易站点击 最多 按钮边缘时可能点到 +
fix #15081
2025-12-14 17:50:15 +08:00
status102
08cfe7c4c2 fix(wpf): 移除过时的基建Mode转换 2025-12-13 17:14:54 +08:00
uye
58d5b5c02b fix: 自动战斗借非好友助战在关卡结束后卡在加好友界面 2025-12-13 03:11:30 +08:00
uye
b5164c333c docs: Update CHANGELOG for version 6.0.1
Added highlights for version 6.0.1, including quick fixes and .NET 10 upgrade details.
2025-12-13 02:44:15 +08:00
uye
487df8ffc4 fix: 逃离哥伦比亚 2025-12-13 00:15:52 +08:00
Constrat
84182aa9c1 Release v6.0.1 (#15052)
## Summary by Sourcery

为 v6.0.1 版本发布做准备,包含更新游戏资源、模拟器配置校验以及模板优化设置等内容。

New Features:
- 为最新活动与集成战略关卡新增明日方舟地块位置数据文件。

Bug Fixes:
- 通过检查必要的 DLL 文件来校验 MuMu 和 LDPlayer 模拟器路径,并在配置无效时显示本地化指引信息。

Enhancements:
- 更新商数夜市与阿卡胡兰丛林关卡的 copilot 与仅任务配置。
- 更新 YoStarEN Reclamation2 和 Tales RA 的任务资源。
- 为新版本优化 OptimizeTemplates 工具配置。
- 为新的模拟器校验消息扩展本地化资源。

Chores:
- 更新战斗与总览元数据,以及 v6.0.1 版本的版本信息。

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

## Summary by Sourcery

Prepare v6.0.1 release with updated game resources, emulator
configuration validation, and template optimization settings.

New Features:
- Add new Arknights tile-position data files for recent event and legion
stages.

Bug Fixes:
- Validate MuMu and LDPlayer emulator paths by checking for required
DLLs and show localized guidance when configuration is invalid.

Enhancements:
- Refresh copilot and task-only configurations for Shangshu Night Market
and Acahuallan Jungle stages.
- Update YoStarEN Reclamation2 and Tales RA task resources.
- Refine OptimizeTemplates tool configuration for the new release.
- Extend localization resources for new emulator validation messages.

Chores:
- Update battle and overview metadata along with version information for
the v6.0.1 release.

</details>

改进内容:
- 刷新尚蜀夜市和阿赫瓦兰丛林关卡的 copilot SSS 与纯任务资源定义。
- 调整 Reclamation2 和 Tales 的全球 YoStarEN RA 任务资源。
- 为新版本优化并微调 OptimizeTemplates 工具配置。

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

## Summary by Sourcery

为 v6.0.1 版本发布做准备,包含更新游戏资源、模拟器配置校验以及模板优化设置等内容。

New Features:
- 为最新活动与集成战略关卡新增明日方舟地块位置数据文件。

Bug Fixes:
- 通过检查必要的 DLL 文件来校验 MuMu 和 LDPlayer 模拟器路径,并在配置无效时显示本地化指引信息。

Enhancements:
- 更新商数夜市与阿卡胡兰丛林关卡的 copilot 与仅任务配置。
- 更新 YoStarEN Reclamation2 和 Tales RA 的任务资源。
- 为新版本优化 OptimizeTemplates 工具配置。
- 为新的模拟器校验消息扩展本地化资源。

Chores:
- 更新战斗与总览元数据,以及 v6.0.1 版本的版本信息。

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

## Summary by Sourcery

Prepare v6.0.1 release with updated game resources, emulator
configuration validation, and template optimization settings.

New Features:
- Add new Arknights tile-position data files for recent event and legion
stages.

Bug Fixes:
- Validate MuMu and LDPlayer emulator paths by checking for required
DLLs and show localized guidance when configuration is invalid.

Enhancements:
- Refresh copilot and task-only configurations for Shangshu Night Market
and Acahuallan Jungle stages.
- Update YoStarEN Reclamation2 and Tales RA task resources.
- Refine OptimizeTemplates tool configuration for the new release.
- Extend localization resources for new emulator validation messages.

Chores:
- Update battle and overview metadata along with version information for
the v6.0.1 release.

</details>

</details>
- 为 v6.0.1 版本发布调整 OptimizeTemplates 工具配置

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

## Summary by Sourcery

为 v6.0.1 版本发布做准备,包含更新游戏资源、模拟器配置校验以及模板优化设置等内容。

New Features:
- 为最新活动与集成战略关卡新增明日方舟地块位置数据文件。

Bug Fixes:
- 通过检查必要的 DLL 文件来校验 MuMu 和 LDPlayer 模拟器路径,并在配置无效时显示本地化指引信息。

Enhancements:
- 更新商数夜市与阿卡胡兰丛林关卡的 copilot 与仅任务配置。
- 更新 YoStarEN Reclamation2 和 Tales RA 的任务资源。
- 为新版本优化 OptimizeTemplates 工具配置。
- 为新的模拟器校验消息扩展本地化资源。

Chores:
- 更新战斗与总览元数据,以及 v6.0.1 版本的版本信息。

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

## Summary by Sourcery

Prepare v6.0.1 release with updated game resources, emulator
configuration validation, and template optimization settings.

New Features:
- Add new Arknights tile-position data files for recent event and legion
stages.

Bug Fixes:
- Validate MuMu and LDPlayer emulator paths by checking for required
DLLs and show localized guidance when configuration is invalid.

Enhancements:
- Refresh copilot and task-only configurations for Shangshu Night Market
and Acahuallan Jungle stages.
- Update YoStarEN Reclamation2 and Tales RA task resources.
- Refine OptimizeTemplates tool configuration for the new release.
- Extend localization resources for new emulator validation messages.

Chores:
- Update battle and overview metadata along with version information for
the v6.0.1 release.

</details>

改进内容:
- 刷新尚蜀夜市和阿赫瓦兰丛林关卡的 copilot SSS 与纯任务资源定义。
- 调整 Reclamation2 和 Tales 的全球 YoStarEN RA 任务资源。
- 为新版本优化并微调 OptimizeTemplates 工具配置。

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

## Summary by Sourcery

为 v6.0.1 版本发布做准备,包含更新游戏资源、模拟器配置校验以及模板优化设置等内容。

New Features:
- 为最新活动与集成战略关卡新增明日方舟地块位置数据文件。

Bug Fixes:
- 通过检查必要的 DLL 文件来校验 MuMu 和 LDPlayer 模拟器路径,并在配置无效时显示本地化指引信息。

Enhancements:
- 更新商数夜市与阿卡胡兰丛林关卡的 copilot 与仅任务配置。
- 更新 YoStarEN Reclamation2 和 Tales RA 的任务资源。
- 为新版本优化 OptimizeTemplates 工具配置。
- 为新的模拟器校验消息扩展本地化资源。

Chores:
- 更新战斗与总览元数据,以及 v6.0.1 版本的版本信息。

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

## Summary by Sourcery

Prepare v6.0.1 release with updated game resources, emulator
configuration validation, and template optimization settings.

New Features:
- Add new Arknights tile-position data files for recent event and legion
stages.

Bug Fixes:
- Validate MuMu and LDPlayer emulator paths by checking for required
DLLs and show localized guidance when configuration is invalid.

Enhancements:
- Refresh copilot and task-only configurations for Shangshu Night Market
and Acahuallan Jungle stages.
- Update YoStarEN Reclamation2 and Tales RA task resources.
- Refine OptimizeTemplates tool configuration for the new release.
- Extend localization resources for new emulator validation messages.

Chores:
- Update battle and overview metadata along with version information for
the v6.0.1 release.

</details>

</details>

</details>
2025-12-12 15:53:19 +01:00
github-actions[bot]
dc68f34960 docs: Auto Update Changelogs of v6.0.1 (#15067)
* docs: Auto Generate Changelog of Release v6.0.1

* fix: cleanup md

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2025-12-12 15:31:51 +01:00
HX3N
d39074c831 i18n: KR tweak punctuation 2025-12-12 23:26:22 +09:00
Manicsteiner
5e54cabc80 chore: YostarJP roguelike ocr edit 2025-12-12 22:18:49 +08:00
Constrat
d59e70d08a fix: wrong template 2025-12-12 14:50:09 +01:00
Constrat
8020cafac4 fix: collect rewards for EN updated templates 2025-12-12 14:17:59 +01:00
uye
7fd6ffae14 feat: 为 MuMu/LDPlayer 添加路径/库检查并补充 i18n 提示 2025-12-12 18:06:08 +08:00
github-actions[bot]
9a8df0ea4e chore: Auto Update Game Resources - 2025-12-12
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20162370738

[skip changelog]
2025-12-12 09:30:07 +00:00
Constrat
199ab432f0 fix: OCR for RA2 2025-12-11 22:43:22 +01:00
Constrat
c897693363 chore: update translations for SSS#8 tasks 2025-12-11 22:43:14 +01:00
Constrat
ea623bbb16 chore: tweak copilot SSS tasks name 2025-12-11 22:12:07 +01:00
Constrat
08d7105a94 fix: Update StageTrader for EN IS 2025-12-11 22:02:14 +01:00
uye
5b8a260deb Release v6.0.0 (#15040)
## Summary by Sourcery

更新支持列表处理逻辑以使用回调方式,并让 ROI 自适应窗口大小,同时为新版本刷新 VSCode 扩展文档和打包资源元数据。

New Features:
- 文档中新增 VSCode 扩展的功能说明,例如快速跳转到任务定义、ROI 复制、识别工具以及跨多种语言查看日志等能力。

Enhancements:
- 重构 SupportList,使其由回调函数、assistant 实例和任务链构造,而不是依赖 AbstractTask 父类。
- 调整支持列表分析的 ROI 宽度,以更好适配不同的窗口宽度。

Documentation:
- 扩展多语言 VSCode 扩展教程,增加功能概览、使用技巧、OCR 故障排查、日志查看说明,以及对 MaaFramework
版本选择行为的更清晰解释。

Chores:
- 为新版本刷新打包的战斗/资源元数据、区域任务数据以及模板优化配置。

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

## Summary by Sourcery

Update support list handling to use callbacks and adapt ROI to window
size, while refreshing VSCode extension documentation and bundled
resource metadata for the new release.

New Features:
- Document new VSCode extension capabilities such as quick task
definition jump, ROI copy, recognition tools, and log viewing across
multiple languages.

Enhancements:
- Refactor SupportList to be constructed from callback, assistant
instance, and task chain instead of an AbstractTask parent.
- Adjust support list analysis ROI width to better accommodate varying
window widths.

Documentation:
- Expand multi-language VSCode extension tutorials with feature
overview, usage tips, OCR troubleshooting, logging instructions, and
clarified MaaFramework version selection behavior.

Chores:
- Refresh packaged battle/resource metadata, regional task data, and
template optimization settings for the new version.

</details>

增强功能:
- 通过在等待详情面板出现时允许更多重试,提高支持单元选择的健壮性。
- 调整支持列表分析的 ROI 宽度计算,以更好地适应不同的窗口大小。

文档:
- 扩展多语言 VSCode 插件教程,加入功能概览、使用技巧、日志查看说明,以及关于 MaaFramework 版本选择的最新行为说明。

日常维护:
- 为新版本刷新打包的资源元数据和任务数据,包括特定地区的资源和优化模板。

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

## Summary by Sourcery

更新支持列表处理逻辑以使用回调方式,并让 ROI 自适应窗口大小,同时为新版本刷新 VSCode 扩展文档和打包资源元数据。

New Features:
- 文档中新增 VSCode 扩展的功能说明,例如快速跳转到任务定义、ROI 复制、识别工具以及跨多种语言查看日志等能力。

Enhancements:
- 重构 SupportList,使其由回调函数、assistant 实例和任务链构造,而不是依赖 AbstractTask 父类。
- 调整支持列表分析的 ROI 宽度,以更好适配不同的窗口宽度。

Documentation:
- 扩展多语言 VSCode 扩展教程,增加功能概览、使用技巧、OCR 故障排查、日志查看说明,以及对 MaaFramework
版本选择行为的更清晰解释。

Chores:
- 为新版本刷新打包的战斗/资源元数据、区域任务数据以及模板优化配置。

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

## Summary by Sourcery

Update support list handling to use callbacks and adapt ROI to window
size, while refreshing VSCode extension documentation and bundled
resource metadata for the new release.

New Features:
- Document new VSCode extension capabilities such as quick task
definition jump, ROI copy, recognition tools, and log viewing across
multiple languages.

Enhancements:
- Refactor SupportList to be constructed from callback, assistant
instance, and task chain instead of an AbstractTask parent.
- Adjust support list analysis ROI width to better accommodate varying
window widths.

Documentation:
- Expand multi-language VSCode extension tutorials with feature
overview, usage tips, OCR troubleshooting, logging instructions, and
clarified MaaFramework version selection behavior.

Chores:
- Refresh packaged battle/resource metadata, regional task data, and
template optimization settings for the new version.

</details>

</details>
2025-12-12 02:36:20 +08:00
uye
79a658c8db docs: changelog 2025-12-12 02:34:06 +08:00
github-actions[bot]
3d796dec56 docs: Auto Update Changelogs of v6.0.0 (#15048)
* docs: Auto Generate Changelog of Release v6.0.0

* docs: ai 改 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>
2025-12-12 02:32:50 +08:00
uye
8a824c23af docs: Update docs/en-us/develop/vsc-ext-tutorial.md
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
2025-12-12 01:16:29 +08:00
status102
37d4185cbe fix: 移除废弃的右键添加作业集行为 2025-12-12 01:03:10 +08:00
Manicsteiner
8921ccf093 fix: YostarJP Roguelike StagrTrader (#15047) 2025-12-12 00:22:55 +08:00
status102
165ad9ecb0 fix: 自动编队助战模块retry_times 2025-12-11 22:25:58 +08:00
status102
1d3c2fd049 Revert "fix: 助战干员进入详情页后flag检测retry"
This reverts commit 04615fb22c.
2025-12-11 22:22:45 +08:00
status102
04615fb22c fix: 助战干员进入详情页后flag检测retry 2025-12-11 20:49:29 +08:00
github-actions[bot]
c7dbd48709 chore: Auto Templates Optimization
Triggered by b2929100ba

[skip changelog]
2025-12-11 12:44:40 +00:00
HX3N
b2929100ba fix: YostarKR Roguelike@StageTrader UI updates
ref #13172
2025-12-11 21:43:23 +09:00
github-actions[bot]
e5653427e0 chore: Auto Update Game Resources - 2025-12-11
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20132471286

[skip changelog]
2025-12-11 12:05:46 +00:00
github-actions[bot]
2adc3699c6 chore: Auto Update Game Resources - 2025-12-11
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20131954062

[skip changelog]
2025-12-11 11:44:32 +00:00
HX3N
0563565f80 chore: YostarKR ocr edits for FM
RecruitTags ocr fix may be reverted when Yostar rolls back their tags
2025-12-11 20:35:08 +09:00
Natsuu
51ee0fea1c docs: add instruction of log view in vsc-ext (#14696)
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-12-11 18:37:54 +08:00
Manicsteiner
5ff48c456c chore: YostarJP ocr (#15026)
* chore: YostarJP ocr

* fix: jp纯艾ocrfix

* fix: jp惊蛰ocrfix

---------

Co-authored-by: 萨拉托加 <151550168+Saratoga-Official@users.noreply.github.com>
2025-12-11 18:19:57 +08:00
uye
9fd19c908d Release v6.0.0-beta.2 (#15021)
## Sourcery 总结

改进平台相关的栈基址检测逻辑,调整 UI 日志与关卡显示行为,更新 v6 的安全支持策略,并为新的测试版刷新游戏/资源数据。

Bug 修复:
- 通过处理 `GetModuleHandleExA` 调用失败的情况,改进 Windows 模块基址获取。
- 使用 `dladdr` 并在失败时以更安全的方式扫描 `/proc/self/maps` 作为回退方案,使 Linux 基址解析更加健壮。
- 始终使用关卡提供的显示字段和数值字段,防止对不支持的关卡进行错误标记。
- 在下载日志更新中通过传递字符串并在同一处构建 WPF 提示框(tooltip),修复提示信息的处理问题。
- 改进在助战角色选择以及助战列表更新中的错误日志记录,使诊断信息更加清晰。

功能增强:
- 在助战角色选择中允许更多重试次数后再判定失败,以提高健壮性。
- 通过改用基于字符串的提示信息而不是 UI 元素类型,简化任务队列下载日志的 API。

文档:
- 更新 SECURITY.md,说明只有最新的 v6 稳定版本会获得安全支持。

日常维护:
- 为多个地区刷新战斗、物品、召集、任务以及版本资源文件,以支持 v6.0.0-beta.2 版本发布。

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

## Summary by Sourcery

Refine platform-specific stack base address detection, adjust UI logging
and stage display behavior, update security support policy for v6, and
refresh game/resource data for the new beta release.

Bug Fixes:
- Improve Windows module base retrieval by handling GetModuleHandleExA
failures.
- Make Linux base address resolution more robust using dladdr with a
safer fallback that scans /proc/self/maps.
- Prevent incorrect stage labeling for unsupported stages by always
using stage-provided display and value fields.
- Fix tooltip handling in download log updates by passing strings and
constructing WPF tooltips in one place.
- Improve error logging in support-role selection and support list
updates for clearer diagnostics.

Enhancements:
- Increase robustness of support-role selection by allowing more retries
before failing.
- Simplify task queue download log API by using string-based tooltips
instead of UI element types.

Documentation:
- Update SECURITY.md to state that only the latest v6 stable release
receives security support.

Chores:
- Refresh battle, item, recruitment, task, and version resource files
for multiple regions for the v6.0.0-beta.2 release.

</details>
2025-12-11 16:28:58 +08:00
github-actions[bot]
7ebedec7b8 docs: Auto Update Changelogs of v6.0.0-beta.2 (#15022)
* docs: Auto Generate Changelog of Release v6.0.0-beta.2

* docs: Refactor v6.0.0-beta.2 changelog following patch version conventions (#15024)

* Initial plan

* docs: Refactor v6.0.0-beta.2 changelog following project conventions

- Add Highlights section with bilingual content
- Merge beta.1 and beta.2 sections following patch version format
- Include beta.2-specific fixes in Highlights
- Add detailed changelog sections for both versions
- Follow historical format from previous beta releases

Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

* Remove fixes section from CHANGELOG.md

Removed fix section for version 6.0.0-beta.2 and above from CHANGELOG.md.

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

* docs: Update .NET version in documentation to 10

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>
2025-12-11 16:28:45 +08:00
wryx166
7b4aed0abe docs: 更新文档中的 .NET 版本至 10 (#15023) 2025-12-11 16:17:09 +08:00
pre-commit-ci[bot]
b6c34b8363 chore: Auto update by pre-commit hooks [skip changelog] 2025-12-11 08:13:18 +00:00
uye
7d7221cd74 fix: 资源更新创建 ToolTip 失败
fix #15012
2025-12-11 16:04:31 +08:00
SherkeyXD
4f5afa8bef docs: 更新安全策略版本 2025-12-11 12:22:22 +08:00
github-actions[bot]
d8b728eebe chore: Auto Update Game Resources - 2025-12-11
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20120701727

[skip changelog]
2025-12-11 03:14:14 +00:00
status102
035e2632a5 fix: 自动编队助战切换职业retry 2025-12-11 10:42:05 +08:00
github-actions[bot]
0845c19dd6 feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/20114426102
[skip changelog]
2025-12-10 21:53:00 +00:00
uye
460eb6c6d6 fix: 多活动同时开放时提示可能被错误折叠 2025-12-11 02:47:11 +08:00
Status102
1bb3132896 perf: Stacktrace Linux 优化 (#14983)
* fix: 修修Linux

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: Apply suggestions from code review

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

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-11 01:17:03 +08:00
uye
a233635d80 Release v6.0.0-beta.1 (#15001)
## 由 Sourcery 生成的摘要

更新关卡活动处理逻辑以消费新的 StageActivityV2 格式,将丰富的小游戏元数据暴露给工具箱 UI,并在助战选择、线索发送、GPU
检测、原生互操作以及 DLL 劫持防护方面增强可靠性和安全性。

新功能:
- 从新的 `StageActivityV2.json` 格式中解析丰富的小游戏条目,并将其绑定到 WPF 工具箱,以实现小游戏的动态配置。

缺陷修复:
- 修正快速编队助战干员完成逻辑,用于跟踪已填充的干员分组,避免将未勾选的干员误标记为缺失。
- 提高基础设施线索发送时的重试次数,以提升可靠性。
- 确保变更日志窗口在已打开时被激活,而不是新建一个窗口。
- 修复 Windows 配置管理器 GPU 查询逻辑,使其正确使用 span 和缓冲池,避免缓冲区误用和泄漏。
- 扩展启动 DLL 白名单,以降低 WPF GUI 中的 DLL 劫持风险。

增强改进:
- 调整活动关卡解析,以支持分组的支线故事,以及为关卡和小游戏提供活动时间元数据。
- 重构助战列表处理,改为使用以 `InstHelper` 为基础的辅助类,提供更清晰的日志记录,并将实际选中的助战干员名称返回给编队逻辑。
- 改进战斗编队中对缺失干员和注入助战单位的处理,通过跟踪是哪个分组被填充,避免对未选择的干员错误标记为缺失。
- 现代化 MaaService 中 MaaCore 的原生互操作绑定,改用源生成的 `LibraryImport` 和显式封送属性。
- 为 `LocalizationHelper` 添加查找辅助方法,以安全检查键是否存在,并在获取字符串失败时不抛出异常。
- 以更安全的顺序初始化依赖的单例对象,确保 `StageManager` 在依赖它的视图模型之前可用。
- 将助战列表内容仅记录到日志中,而不再通过额外的回调负载对外发送。
- 在夜间 OTA 工作流的 WPF 发布步骤中加入与架构相关的平台选择。
- 将小游戏列表刷新与本地日期/关卡更新联动,使 UI 能反映当前的活动配置。

构建:
- 提升用于 macOS 签名与配置以及 GitHub Releases 的 GitHub Actions 版本,并更新 CMake
生成器/工具脚本和文档,以引用更新后的 Visual Studio 工具集。

持续集成(CI):
- 更新 CI 发布流程,在夜间 OTA 工作流中为 WPF GUI 构建传递平台相关的配置。

文档:
- 刷新多语言开发文档,以引用更新后的 Visual Studio 版本和新的 CMake 生成器参数。

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

## Summary by Sourcery

Update stage activity handling to consume the new StageActivityV2
format, expose rich mini-game metadata to the toolbox UI, and tighten
reliability and security around support selection, clue sending, GPU
detection, native interop, and DLL hijack prevention.

New Features:
- Parse rich mini-game entries from the new StageActivityV2.json format
and bind them to the WPF toolbox for dynamic mini-game configuration.

Bug Fixes:
- Correct quick formation support-operator completion logic to track
filled operator groups and avoid mislabeling unchecked operators as
missing.
- Increase retry count when sending infrastructure clues to improve
reliability.
- Ensure the changelog window is activated when already open instead of
creating a new window.
- Fix Windows configuration manager GPU queries to use spans and pooled
buffers correctly, avoiding buffer misuse and leaks.
- Extend startup DLL whitelist to reduce DLL hijack risk in the WPF GUI.

Enhancements:
- Adjust activity-stage parsing to support grouped side stories and
activity time metadata for stages and mini-games.
- Refactor support list handling to use an InstHelper-backed helper with
clearer logging and to return actual chosen support operator names to
formation logic.
- Improve battle formation handling of missing operators and injected
support units by tracking which group was filled and avoiding incorrect
missing flags for unselected operators.
- Modernize MaaCore native interop bindings in MaaService to use
source-generated LibraryImport and explicit marshalling attributes.
- Add lookup helpers to LocalizationHelper for safe key existence checks
and non-throwing string retrieval.
- Initialize dependent singletons in a safer order so StageManager is
available before view models that depend on it.
- Log support list contents only to the logger instead of emitting extra
callback payloads.
- Include architecture-specific platform selection in WPF publish steps
of the nightly OTA workflow.
- Wire mini-game list refresh into local date/stage updates so UI
reflects current activity configuration.

Build:
- Bump GitHub Actions versions for macOS signing and provisioning and
for GitHub Releases, and update CMake generator/tooling scripts and docs
to reference the newer Visual Studio toolset.

CI:
- Update CI publishing to pass platform-specific configuration for WPF
GUI builds in nightly OTA workflow.

Documentation:
- Refresh multi-language development docs to reference the newer Visual
Studio version and updated CMake generator arguments.

</details>

新功能:
- 暴露从新的 `StageActivityV2.json` 格式中解析出的丰富小游戏条目,并将其绑定到 WPF
工具箱中,以支持动态配置小游戏。

漏洞修复:
- 修复快速编队补充助战干员时的逻辑,确保正确追踪已填充的干员分组,并防止未勾选的干员被错误标记为“缺失”。
- 通过增加重试次数,提高基建线索接收与发送的可靠性。
- 当变更日志窗口已打开时,确保正确激活该窗口,而不是新开一个窗口。
- 在通过 Windows 配置管理器 API 查询 GPU 相关设备属性时,避免缓冲区误用和内存泄漏。
- 通过扩展启动时检查的 DLL 列表,防止 DLL 劫持问题。

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

## 由 Sourcery 生成的摘要

更新关卡活动处理逻辑以消费新的 StageActivityV2 格式,将丰富的小游戏元数据暴露给工具箱 UI,并在助战选择、线索发送、GPU
检测、原生互操作以及 DLL 劫持防护方面增强可靠性和安全性。

新功能:
- 从新的 `StageActivityV2.json` 格式中解析丰富的小游戏条目,并将其绑定到 WPF 工具箱,以实现小游戏的动态配置。

缺陷修复:
- 修正快速编队助战干员完成逻辑,用于跟踪已填充的干员分组,避免将未勾选的干员误标记为缺失。
- 提高基础设施线索发送时的重试次数,以提升可靠性。
- 确保变更日志窗口在已打开时被激活,而不是新建一个窗口。
- 修复 Windows 配置管理器 GPU 查询逻辑,使其正确使用 span 和缓冲池,避免缓冲区误用和泄漏。
- 扩展启动 DLL 白名单,以降低 WPF GUI 中的 DLL 劫持风险。

增强改进:
- 调整活动关卡解析,以支持分组的支线故事,以及为关卡和小游戏提供活动时间元数据。
- 重构助战列表处理,改为使用以 `InstHelper` 为基础的辅助类,提供更清晰的日志记录,并将实际选中的助战干员名称返回给编队逻辑。
- 改进战斗编队中对缺失干员和注入助战单位的处理,通过跟踪是哪个分组被填充,避免对未选择的干员错误标记为缺失。
- 现代化 MaaService 中 MaaCore 的原生互操作绑定,改用源生成的 `LibraryImport` 和显式封送属性。
- 为 `LocalizationHelper` 添加查找辅助方法,以安全检查键是否存在,并在获取字符串失败时不抛出异常。
- 以更安全的顺序初始化依赖的单例对象,确保 `StageManager` 在依赖它的视图模型之前可用。
- 将助战列表内容仅记录到日志中,而不再通过额外的回调负载对外发送。
- 在夜间 OTA 工作流的 WPF 发布步骤中加入与架构相关的平台选择。
- 将小游戏列表刷新与本地日期/关卡更新联动,使 UI 能反映当前的活动配置。

构建:
- 提升用于 macOS 签名与配置以及 GitHub Releases 的 GitHub Actions 版本,并更新 CMake
生成器/工具脚本和文档,以引用更新后的 Visual Studio 工具集。

持续集成(CI):
- 更新 CI 发布流程,在夜间 OTA 工作流中为 WPF GUI 构建传递平台相关的配置。

文档:
- 刷新多语言开发文档,以引用更新后的 Visual Studio 版本和新的 CMake 生成器参数。

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

## Summary by Sourcery

Update stage activity handling to consume the new StageActivityV2
format, expose rich mini-game metadata to the toolbox UI, and tighten
reliability and security around support selection, clue sending, GPU
detection, native interop, and DLL hijack prevention.

New Features:
- Parse rich mini-game entries from the new StageActivityV2.json format
and bind them to the WPF toolbox for dynamic mini-game configuration.

Bug Fixes:
- Correct quick formation support-operator completion logic to track
filled operator groups and avoid mislabeling unchecked operators as
missing.
- Increase retry count when sending infrastructure clues to improve
reliability.
- Ensure the changelog window is activated when already open instead of
creating a new window.
- Fix Windows configuration manager GPU queries to use spans and pooled
buffers correctly, avoiding buffer misuse and leaks.
- Extend startup DLL whitelist to reduce DLL hijack risk in the WPF GUI.

Enhancements:
- Adjust activity-stage parsing to support grouped side stories and
activity time metadata for stages and mini-games.
- Refactor support list handling to use an InstHelper-backed helper with
clearer logging and to return actual chosen support operator names to
formation logic.
- Improve battle formation handling of missing operators and injected
support units by tracking which group was filled and avoiding incorrect
missing flags for unselected operators.
- Modernize MaaCore native interop bindings in MaaService to use
source-generated LibraryImport and explicit marshalling attributes.
- Add lookup helpers to LocalizationHelper for safe key existence checks
and non-throwing string retrieval.
- Initialize dependent singletons in a safer order so StageManager is
available before view models that depend on it.
- Log support list contents only to the logger instead of emitting extra
callback payloads.
- Include architecture-specific platform selection in WPF publish steps
of the nightly OTA workflow.
- Wire mini-game list refresh into local date/stage updates so UI
reflects current activity configuration.

Build:
- Bump GitHub Actions versions for macOS signing and provisioning and
for GitHub Releases, and update CMake generator/tooling scripts and docs
to reference the newer Visual Studio toolset.

CI:
- Update CI publishing to pass platform-specific configuration for WPF
GUI builds in nightly OTA workflow.

Documentation:
- Refresh multi-language development docs to reference the newer Visual
Studio version and updated CMake generator arguments.

</details>

</details>
2025-12-11 00:48:25 +08:00
Copilot
bb4af376d3 docs: Generate v6.0.0-beta.1 changelog following project conventions (#15003)
* Initial plan

* docs: 生成 v6.0.0-beta.1 changelog

Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

* Remove auto-formation optimization details from CHANGELOG

Removed sections related to auto-formation support unit optimization from the changelog.

* docs: 补充单文件发布取消与更新包体积减少说明

Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

* docs: Update CHANGELOG for .NET 10 upgrade details

Removed mention of disabling single-file publishing in .NET 10 upgrade notes.

* docs: 更正 changelog 中的提交作者

Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

* docs: Update CHANGELOG with recent improvements and fixes

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>
2025-12-11 00:24:41 +08:00
Status102
e835681bf7 fix: 自动编队助战干员组名存储错误 2025-12-10 23:08:43 +08:00
uye
2599e8d6be rft: 重构简化关卡导航 api,小游戏列表通过 api 获取 (#14997)
* rft: 重构关卡导航 api,小游戏列表通过 api 获取

* feat: 添加小活动开放时间

* style: 初始化
2025-12-10 22:50:16 +08:00
uye
a1ff0cbee5 fix: 在已开启更新日志的情况下点击更新日志窗口不会移至前台 2025-12-10 22:29:40 +08:00
pre-commit-ci[bot]
4deb53bb22 chore: Auto update by pre-commit hooks [skip changelog] 2025-12-10 18:48:16 +08:00
uye
7eab0a76aa feat: LocalizationHelper 支持 TryGetString 与 HasTranslation 2025-12-10 17:21:16 +08:00
status102
6893755bd4 fix: import 2025-12-10 16:29:49 +08:00
status102
a262337abd rft: 自动编队助战页面继承优化 2025-12-10 15:00:29 +08:00
status102
7d4c42822f perf: 自动编队编入助战后缺失干员查找 2025-12-10 12:06:42 +08:00
Manicsteiner
e44e113190 fix: fix nightly ota dotnet build (#14996) 2025-12-10 11:39:11 +08:00
status102
a448cf0af8 fix: 自动编队编入助战后未添加至干员-干员组映射 2025-12-10 11:36:22 +08:00
status102
0ce038a616 perf: 自动编队缺失干员查找优化 2025-12-10 11:36:22 +08:00
status102
f9f08a69a6 fix: 自动编队当干员存在于多个作业组且已经被编入后可能被误标记为未持有 2025-12-10 11:36:21 +08:00
status102
3218989811 chore: 移除不再使用的report 2025-12-10 11:36:16 +08:00
HX3N
f775c6cfeb chore: YostarKR CharsNameOcrReplace ocr edit 2025-12-10 12:33:04 +09:00
uye
41572b1834 fix: 因延迟进入线索传递界面导致任务出错
fix #14992
2025-12-10 02:32:09 +08:00
uye
18c0fd6be7 Revert "chore: 隐藏 .deps.json 与 .runtimeconfig*.json"
This reverts commit 0e6104e790.
2025-12-10 02:05:19 +08:00
dependabot[bot]
8ac592d217 ci: bump the github-actions group in /.github/workflows with 3 updates (#14978)
Bumps the github-actions group in /.github/workflows with 3 updates: [apple-actions/import-codesign-certs](https://github.com/apple-actions/import-codesign-certs), [apple-actions/download-provisioning-profiles](https://github.com/apple-actions/download-provisioning-profiles) and [softprops/action-gh-release](https://github.com/softprops/action-gh-release).


Updates `apple-actions/import-codesign-certs` from 5 to 6
- [Release notes](https://github.com/apple-actions/import-codesign-certs/releases)
- [Commits](https://github.com/apple-actions/import-codesign-certs/compare/v5...v6)

Updates `apple-actions/download-provisioning-profiles` from 4 to 5
- [Release notes](https://github.com/apple-actions/download-provisioning-profiles/releases)
- [Commits](https://github.com/apple-actions/download-provisioning-profiles/compare/v4...v5)

Updates `softprops/action-gh-release` from 2.4.2 to 2.5.0
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](https://github.com/softprops/action-gh-release/compare/v2.4.2...v2.5.0)

---
updated-dependencies:
- dependency-name: apple-actions/import-codesign-certs
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: apple-actions/download-provisioning-profiles
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: softprops/action-gh-release
  dependency-version: 2.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-09 19:01:30 +01:00
SherkeyXD
97dfaf6dcd build: Update to .NET 10 (#14971)
* build: Update to .NET 10

* chore: 关闭 CET 保证 win10 可用性

* feat: 提升语言版本

* chore: 更新文档与脚本

* chore: update all packages

* fix: 修复 GpuOption 构建错误

* chore: 更新依赖安装脚本

* chore: 更新 csproj 中标记的软件版本

* docs: Update docs/zh-cn/develop/development.md

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

* docs: Update docs/zh-tw/develop/development.md

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

---------

Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
2025-12-10 02:00:41 +08:00
uye
0e6104e790 chore: 隐藏 .deps.json 与 .runtimeconfig*.json 2025-12-10 01:50:34 +08:00
uye
1acaab0b75 feat: 第三方依赖移至子文件夹 (#14984)
* feat: 第三方依赖移至子文件夹

* feat: 忽略 libloader.dll
2025-12-10 01:44:41 +08:00
status102
4eff8d066a perf(wpf): 使用LibraryImport替换部分DllImport 2025-12-09 22:01:01 +08:00
uye
300c5d06f9 Release v5.28.5 (#14985)
## Summary by Sourcery

发布维护更新,包含基础设施线索处理改进、新的外部通知支持、日志优化,以及若干 UI/UX 调整。

新特性:
- 新增钉钉作为可配置的外部通知提供方,并支持访问令牌(access token)和密钥(secret)设置。
- 在任务队列 UI 中引入专门的下载日志展示,并通过新的更新方法对外提供。

缺陷修复:
- 确保在不需要更新的情况下清除下载进度时,能够正确关闭“正在下载”状态。

增强改进:
- 优化日志行为,可通过 `DEBUG.txt` 文件切换调试日志开关,并调整异常日志的元数据。
- 改进接待室线索处理逻辑,以支持新增的“快速插入”和“快速发送重复线索”按钮,并相应更新核心逻辑和多语言文档。
- 简化并集中下载进度日志记录,通过 `TaskQueueViewModel` 统一处理,而不是直接操作日志集合。
- 明确战斗编队逻辑中的支援单位使用说明注释,并在编队未发生变化时抑制多余的编队设置操作。
- 在显示警告对话框时记录检测到的非法注入模块。

文档:
- 更新所有受支持语言的基础设施管理文档,说明新的接待室线索发送行为及相关术语变更。

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

## Summary by Sourcery

Release maintenance update with infrastructure clue handling
improvements, new external notification support, logging tweaks, and
UI/UX adjustments.

New Features:
- Add DingTalk as a configurable external notification provider with
access token and secret settings.
- Introduce dedicated download log display in the task queue UI and
expose it via a new update method.

Bug Fixes:
- Ensure download progress clearing correctly disables downloading state
when no update is needed.

Enhancements:
- Refine logging behavior to allow debug logging to be toggled via a
DEBUG.txt file and adjust exception logging metadata.
- Improve reception room clue handling to support newly added quick
insert and quick send duplicate clue buttons, updating core logic and
multi-language documentation accordingly.
- Simplify and centralize download progress logging by routing it
through TaskQueueViewModel instead of manipulating log collections
directly.
- Clarify support unit usage comments in battle formation logic and
suppress redundant formation setup when unchanged.
- Log detected bad injected modules when displaying the warning dialog.

Documentation:
- Update infrastructure management documentation in all supported
languages to describe new reception room clue sending behavior and
terminology changes.

</details>
2025-12-09 17:07:25 +08:00
Copilot
0aecc50549 docs: Add v5.28.5 changelog entries following historical format (#14986)
* Initial plan

* docs: Add v5.28.5 changelog entries

Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

* docs: Update CHANGELOG.md by removing outdated sections

Removed sections related to new features, debugging, and logging enhancements from the changelog.

* docs: Update version from v5.28.4 to v5.28.5

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>
2025-12-09 17:06:13 +08:00
HX3N
09bf45b307 chore: YostarKR CharsNameOcrReplace remove space 2025-12-09 17:38:19 +09:00
Status102
02bfd3c8c7 feat: LogDebug 宏支持 DEBUG.txt 特性 (#14977)
* feat: LogDebug 宏支持 DEBUG.txt 特性

* fix: log level

* perf: static

* fix: static
2025-12-09 15:55:45 +08:00
uye
07844d61d9 Revert "chore: 重复访问好友添加Ocr兜底"
This reverts commit d59144c549.
2025-12-08 19:54:49 +08:00
github-actions[bot]
0effeb9b00 chore: Auto Templates Optimization
Triggered by a5dfc573dd

[skip changelog]
2025-12-08 11:49:59 +00:00
uye
a5dfc573dd feat: 支持会客室快捷置入线索与一键赠送重复线索 (#14966)
* feat: 支持会客室快捷置入线索与一键赠送重复线索

* docs: 更新文档

* chore: Auto update by pre-commit hooks [skip changelog]

* i18n: JP

* chore: Auto update by pre-commit hooks [skip changelog]

* i18n: sourcery ai suggestion

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

* i18n: KR

* chore: 增加被注入的日志记录

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
2025-12-08 19:48:57 +08:00
status102
b6e236eda0 docs: 自动战斗编队注释 2025-12-08 17:03:19 +08:00
uye
fb592fdab5 feat: 更新设置中新增下载进度提示 2025-12-08 17:02:41 +08:00
uye
4cc0bc55d2 perf: 优化绑定 2025-12-08 17:02:22 +08:00
uye
6c4c92f26b fix: 未勾选自动下载时仍提示使用 xx 下载 2025-12-08 17:01:36 +08:00
uye
f198f93ac2 feat: 将下载日志独立出来 2025-12-08 16:16:49 +08:00
uye
82fd1c074e perf: 优化线索识别范围 2025-12-06 17:37:58 +08:00
uye
04ac48c9db fix: 主线/故事集/SideStory 禁用循环次数 2025-12-06 14:19:16 +08:00
Kagura
2947f9fe97 feat: 通知渠道支持钉钉 (#14884)
* feat: 通知渠道支持钉钉

* fix: 还原错误的更改

* chore: 加回丢掉的换行符

* fix: 还原错误删除的内容
2025-12-06 00:45:11 +08:00
uye
8796112363 Release v5.28.4 (#14958)
## Summary by Sourcery

通过更新游戏内容数据,并打磨小游戏、肉鸽玩法、工具链和 CI 行为,为各端与各平台准备 v5.28.4 版本。

New Features:
- 基于所选游戏客户端类型,动态加载小游戏任务选项。
- 为最新活动和 UR 关卡新增关卡、任务与地块位置数据。

Bug Fixes:
- 当小游戏选择为空或未知时,显示专用提示,而不是静默失败。
- 将未知的“两位字母-数字”形式的关卡视作已过期活动关卡,而不是常驻关卡。
- 在包括 txwy 在内的所有客户端上允许幻影肉鸽难度 15。
- 通过放宽匹配模式,改进 MacGui 问题自动打标签的 issue 检查器配置。
- 避免在 lldb 中包装冒烟测试,从而使脚本能在没有调试器的环境中运行。

Enhancements:
- 扩展小游戏提示,覆盖更多小游戏变体,例如 HoneyFruit 对决频道。
- 调整资源、CLI 二进制文件与模板的优化设置,以匹配新版本内容。

Build:
- 调整冒烟测试工作流的权限,只请求对仓库内容的只读访问。

CI:
- 简化 CI 中调用冒烟测试脚本的方式,改为直接运行测试二进制文件,而不附加调试器。

Tests:
- 更新冒烟测试工具和日志,以便在新版本内容下运行面向各客户端的自动化检查。

Chores:
- 刷新多类游戏数据资源文件(战斗、基建、物品、关卡、任务以及本地化)以适配新版本。

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

## Summary by Sourcery

Prepare v5.28.4 by updating game content data and polishing minigame,
roguelike, tooling, and CI behavior across clients and platforms.

New Features:
- Load minigame task options dynamically based on the selected game
client type.
- Add new stage, task, and tile-position data for the latest activities
and UR stages.

Bug Fixes:
- Handle unknown or empty minigame selections by showing a dedicated tip
instead of failing silently.
- Treat unknown two-letter dash numeric stages as expired activity
stages instead of permanent ones.
- Allow Phantom roguelike difficulty 15 on all clients, including txwy.
- Improve MacGui issue auto-labeling by broadening the matching patterns
in the issue checker configuration.
- Avoid wrapping smoke tests in lldb so the script can run in
environments without the debugger.

Enhancements:
- Extend minigame tips to cover additional minigame variants such as
HoneyFruit duel channel.
- Refine resources, CLI binary, and template optimization settings to
align with the new release content.

Build:
- Adjust smoke testing workflow permissions to only request read access
to repository contents.

CI:
- Simplify the smoke testing script invocation in CI to run the test
binary directly without debugger attachment.

Tests:
- Update smoke testing tooling and logs for running client-specific
automated checks with the new release content.

Chores:
- Refresh multiple game data resource files (battle, infrastructure,
items, stages, tasks, and localization) for the new release.

</details>

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

## Summary by Sourcery

通过更新游戏内容数据,并打磨小游戏、肉鸽玩法、工具链和 CI 行为,为各端与各平台准备 v5.28.4 版本。

New Features:
- 基于所选游戏客户端类型,动态加载小游戏任务选项。
- 为最新活动和 UR 关卡新增关卡、任务与地块位置数据。

Bug Fixes:
- 当小游戏选择为空或未知时,显示专用提示,而不是静默失败。
- 将未知的“两位字母-数字”形式的关卡视作已过期活动关卡,而不是常驻关卡。
- 在包括 txwy 在内的所有客户端上允许幻影肉鸽难度 15。
- 通过放宽匹配模式,改进 MacGui 问题自动打标签的 issue 检查器配置。
- 避免在 lldb 中包装冒烟测试,从而使脚本能在没有调试器的环境中运行。

Enhancements:
- 扩展小游戏提示,覆盖更多小游戏变体,例如 HoneyFruit 对决频道。
- 调整资源、CLI 二进制文件与模板的优化设置,以匹配新版本内容。

Build:
- 调整冒烟测试工作流的权限,只请求对仓库内容的只读访问。

CI:
- 简化 CI 中调用冒烟测试脚本的方式,改为直接运行测试二进制文件,而不附加调试器。

Tests:
- 更新冒烟测试工具和日志,以便在新版本内容下运行面向各客户端的自动化检查。

Chores:
- 刷新多类游戏数据资源文件(战斗、基建、物品、关卡、任务以及本地化)以适配新版本。

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

## Summary by Sourcery

Prepare v5.28.4 by updating game content data and polishing minigame,
roguelike, tooling, and CI behavior across clients and platforms.

New Features:
- Load minigame task options dynamically based on the selected game
client type.
- Add new stage, task, and tile-position data for the latest activities
and UR stages.

Bug Fixes:
- Handle unknown or empty minigame selections by showing a dedicated tip
instead of failing silently.
- Treat unknown two-letter dash numeric stages as expired activity
stages instead of permanent ones.
- Allow Phantom roguelike difficulty 15 on all clients, including txwy.
- Improve MacGui issue auto-labeling by broadening the matching patterns
in the issue checker configuration.
- Avoid wrapping smoke tests in lldb so the script can run in
environments without the debugger.

Enhancements:
- Extend minigame tips to cover additional minigame variants such as
HoneyFruit duel channel.
- Refine resources, CLI binary, and template optimization settings to
align with the new release content.

Build:
- Adjust smoke testing workflow permissions to only request read access
to repository contents.

CI:
- Simplify the smoke testing script invocation in CI to run the test
binary directly without debugger attachment.

Tests:
- Update smoke testing tooling and logs for running client-specific
automated checks with the new release content.

Chores:
- Refresh multiple game data resource files (battle, infrastructure,
items, stages, tasks, and localization) for the new release.

</details>

</details>
2025-12-06 00:13:02 +08:00
github-actions[bot]
bd0681a437 docs: Auto Update Changelogs of v5.28.4 (#14959)
* docs: Auto Generate Changelog of Release v5.28.4

* docs: Auto Update Changelogs of v5.28.4 (#14960)

* Initial plan

* docs: Update CHANGELOG.md v5.28.4 per formatting guidelines

Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

* docs: Refine precommit template description

Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

* docs: Add separator and preserve v5.28.3 content

Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

* docs: Apply version merge rules for v5.28.4 patch release

Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>
2025-12-06 00:10:34 +08:00
uye
4feb2f109b perf: 调整 UpdateMiniGameTaskList 2025-12-05 18:44:55 +08:00
HY
765b9acb1c feat: 當左上角進行中活動因太多被折疊時,增加展開領取的狀態判斷 (#14957)
* feat: 當左側進行中活動列表折疊時,增加展開領取的狀態判斷

* chore: 放個圖片

* chore: 加個保底任務 & 補充說明文字

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: 移除 "maxTimes"

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-12-05 18:22:27 +08:00
晓丶梦丶仁
bdeebe80e0 rft: Minigame ToolboxViewModel (#14951)
* rft: Minigame ToolboxViewModel

* fix: Invalid Task Name

* feat: Invalid Task Tip

* fix: key name
2025-12-05 17:07:46 +08:00
github-actions[bot]
df9f458a6f chore: Auto Update Game Resources - 2025-12-05
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19957243176

[skip changelog]
2025-12-05 08:30:31 +00:00
uye
ee7a61974b feat: 关卡选择验证输入,非当期活动的关卡名会当做未开放关卡 2025-12-05 16:11:11 +08:00
uye
b4887ae836 feat: UR 活动导航 2025-12-05 16:11:11 +08:00
github-actions[bot]
ca23e700c8 chore: Auto Update Game Resources - 2025-12-05
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19954805469

[skip changelog]
2025-12-05 06:31:21 +00:00
github-actions[bot]
2a4b9097c3 chore: Auto Update Game Resources - 2025-12-04
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19947291234

[skip changelog]
2025-12-04 23:29:22 +00:00
github-actions[bot]
97a45542f3 chore: Auto Update Game Resources - 2025-12-04
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19942256933

[skip changelog]
2025-12-04 20:03:59 +00:00
github-actions[bot]
226b21d32a feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19910040375
[skip changelog]
2025-12-03 21:52:50 +00:00
HY
5b49d406c9 chore: 調整繁中服傀影肉鴿能夠選擇的難度 (#14952) 2025-12-03 19:40:29 +01:00
HY
6dd412364b fix: 繁中服周年月卡領取及贈送單抽的處理錯誤 (#14953) 2025-12-04 01:37:08 +08:00
Rbqwow
55b9ce4c7d fix: issue-checker.yml 中 MacGui 正则不包含 MacGui 2025-12-04 01:13:00 +08:00
github-actions[bot]
0acdf51077 feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19874728857
[skip changelog]
2025-12-02 21:52:33 +00:00
Status102
a92d429ab3 ci: smoke_test remove lldb (#14942)
ci: fix unthrow smoke_test error
2025-12-03 01:11:38 +08:00
萨拉托加
7eccc8674b fix: 卫戍协议因网络问题卡在结算界面 2025-12-02 23:35:24 +08:00
uye
b61e04dcfc fix: 代理失败后等待动画结束后再点击任务失败
fix #14937
2025-12-02 17:55:04 +08:00
uye
dd7c6d0a85 fix: 自定义基建排班使用无人机加速未进驻干员的设施导致卡死
fix #14933
2025-12-02 17:38:58 +08:00
github-actions[bot]
79469f2047 feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19838737544
[skip changelog]
2025-12-01 21:52:29 +00:00
Drest
0ea6626435 fix: 干员识别异常(荒芜拉普兰德) (#14934) 2025-12-01 10:29:27 +00:00
AnnAngela
bde9b78a60 ci: Potential fix for code scanning alert no. 109: Workflow does not contain permissions
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2025-11-30 23:47:58 +08:00
Constrat
53498f0d54 fix: precommit
precommit is fucking useless. It pushes the optimized templates in the PR, but it still throws the stupid failed check.
2025-11-29 23:25:38 +01:00
HY
ccdc37dbc3 chore: 更新繁中服部分基建設施截圖 (#14923)
* chore: 更新繁中服部分基建設施截圖

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: HY <momomochi987@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-11-29 23:20:27 +01:00
uye
746e62226f Release v5.28.3 (#14920)
## Summary by Sourcery

调整异常日志的基址解析方式,精炼调试文件保留策略,在 CI 中打包 Windows 调试符号,并为新版本更新配置、模板和任务资源。

New Features:
- 在 `txwy` 资源命名空间下,为小游戏与关卡新增全局任务配置。

Enhancements:
- 更改异常基址查找逻辑,以解析当前模块,从而在各平台上提供更精确的栈追踪日志。
- 收紧调试日志默认清理阈值,以减少调试文件的数量和存活时间。
- 根据新版本内容更新资源配置、本地化文件、GUI 资源以及模板优化设置。

CI:
- 在上传为 CI 构建工件前,将 Windows PDB 调试符号压缩为带版本号的 ZIP 存档,并在之后从安装目录中清理这些符号文件。

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

## Summary by Sourcery

Adjust exception logging base address resolution, refine debug file
retention defaults, package Windows debug symbols in CI, and update
configuration, templates, and task resources for the new release.

New Features:
- Add new global task configurations for minigames and stages under the
txwy resource namespace.

Enhancements:
- Change exception base address lookup to resolve the current module for
more accurate stacktrace logging across platforms.
- Tighten default debug log cleanup thresholds to reduce the number and
lifetime of debug files.
- Update resource configs, localization files, GUI assets, and template
optimization settings in line with the new release content.

CI:
- Compress Windows PDB debug symbols into versioned ZIP archives before
uploading them as CI artifacts and clean them from the install directory
afterward.

</details>
2025-11-29 21:39:03 +08:00
Status102
784baa5a2a perf: debug下非根路径文件限3日内 (#14919) 2025-11-29 19:05:23 +08:00
github-actions[bot]
849c34c7fe docs: Auto Update Changelogs of v5.28.3 (#14921)
* docs: Auto Generate Changelog of Release v5.28.3

* docs: Auto Update Changelogs of v5.28.3 (#14922)

* Initial plan

* docs: Update CHANGELOG.md for v5.28.3 following generation rules

Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

* docs: Improve changelog text capitalization and formatting

Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

* docs: Append v5.28.3 changelog to existing v5.28.x release notes

Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

* docs: Bump version to v5.28.3 and update highlights

Updated version number and highlighted bug fixes.

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>
2025-11-29 18:57:05 +08:00
github-actions[bot]
008252f3c8 chore: Auto Templates Optimization
Triggered by d24bd20919

[skip changelog]
2025-11-29 10:12:16 +00:00
uye
d24bd20919 fix: yj 的小杯 UI 2025-11-29 18:11:37 +08:00
uye
34acc37961 perf: 调整小游戏描述 2025-11-29 17:42:24 +08:00
uye
b2111f7d8b feat: 支持 PV 小游戏从当前关卡开始 2025-11-29 17:24:17 +08:00
uye
ab9faff55b perf: 优化 PV 小游戏部分复杂背景关卡的识别 2025-11-29 17:06:54 +08:00
uye
aaa2cb8fd7 perf: 优化 卫戍协议 流程 2025-11-29 16:42:52 +08:00
uye
9336144892 perf: 优化 PV 小游戏识别范围,提高识别率 2025-11-29 16:42:15 +08:00
uye
131eda9dfb fix: PV 小游戏进入关卡时遇到网络连接会少选烟花样片 2025-11-29 16:11:01 +08:00
uye
f2a3f84180 chore: debug 截图默认保存最近 10 张 2025-11-29 16:00:16 +08:00
status102
629bb9e576 chore: format 2025-11-29 12:24:38 +08:00
HY
56d311ebdb chore: 繁中服「眾生行記」活動導航 (#14908)
Co-authored-by: HY <momomochi987@users.noreply.github.com>
2025-11-29 00:28:41 +08:00
HY
139d812c0b chore: 繁中服「爭鋒頻道:青草城」小遊戲 (#14906)
chore: 繁中服「爭鋒頻道:青草城」

Co-authored-by: HY <momomochi987@users.noreply.github.com>
2025-11-29 00:28:27 +08:00
status102
a373f7bf8e fix: 改漏了 2025-11-28 23:43:29 +08:00
status102
1bb6012cd8 fix: 压缩win平台的pdb文件 2025-11-28 23:37:48 +08:00
status102
426b785b21 fix: MaaCore Base Address 2025-11-28 23:23:38 +08:00
Hao Guan
8ec9023112 feat(mac): PV小游戏 2025-11-28 20:32:45 +08:00
uye
4edf912ecd Release v5.28.2 (#14901) 2025-11-28 18:59:50 +08:00
uye
07c01a6777 docs: 更新 CHANGELOG.md 2025-11-28 18:54:46 +08:00
github-actions[bot]
fbd2a6eb82 chore: Auto Templates Optimization
Triggered by f4f7a9d5a1

[skip changelog]
2025-11-28 10:51:58 +00:00
pre-commit-ci[bot]
f4f7a9d5a1 chore: Auto update by pre-commit hooks [skip changelog] 2025-11-28 10:51:38 +00:00
不留
d1cdd26176 fix: 裁剪 PV 小游戏 06-14 模板图以尽可能提高识别分数 (#14900)
* fix: 裁剪模板图以尽可能提高识别分数

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-11-28 18:43:24 +08:00
uye
f82ce2acad Release v5.28.1 (#14864)
Important [fix:
regex_error(error_badrepeat)](4861e96ddc)

<img width="1549" height="236" alt="image"
src="https://github.com/user-attachments/assets/0be3c81c-0281-4716-bae2-85a9fc5507db"
/>

My mistake a week ago.
Pushed a typo in the Sami I.S. regex

## Summary by Sourcery

为 v5.28.1 版本发布做准备,包括配置微调、自动化更新和资源刷新。

Bug Fixes:
- 在解析战斗编队前重置 support-unit 使用状态,以避免在多次运行之间出现陈旧状态。
- 在使用扁平化安装(flattened installs)时修正安装配置,确保库路径和安装目标位置设置一致。

Enhancements:
- 为新版本刷新游戏/资源任务定义、关卡元数据以及版本信息。
- 更新模板优化配置,以与当前的资源布局保持一致。

Build:
- 在使用扁平化安装布局时,调整 CMake 配置以设置运行库/链接库的安装目标以及 RPATH。

CI:
- 在 CI、发布、资源同步、网站和维护任务中,将所有 GitHub Actions 工作流更新为使用 actions/checkout v6。

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

## Summary by Sourcery

Prepare the v5.28.1 release with configuration tweaks, automation
updates, and resource refreshes.

Bug Fixes:
- Reset support-unit usage state before parsing battle formations to
avoid stale state between runs.
- Correct installation configuration when using flattened installs so
library paths and install destinations are set consistently.

Enhancements:
- Refresh game/resource task definitions, stage metadata, and version
information for the new release.
- Update template optimization configuration to align with the current
resource layout.

Build:
- Adjust CMake configuration to set runtime/library install destinations
and RPATH when using a flattened install layout.

CI:
- Update all GitHub Actions workflows to use actions/checkout v6 across
CI, release, resource sync, website, and maintenance jobs.

</details>
2025-11-28 16:19:52 +08:00
Copilot
58d974184f Release v5.28.1 (#14897)
* Initial plan

* docs: add PV-烟花筹委会 mini-game highlight to v5.28.1 changelog

Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

* docs: move PV-烟花筹委会 highlight to top section with v5.28.1+ note

Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

* docs: Bump version to 5.28.1 and update changelog

Updated version from 5.28.0 to 5.28.1 and added new features.

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>
2025-11-28 16:11:23 +08:00
uye
eebdb0e9f0 docs: Update CHANGELOG for version 5.28.1 2025-11-28 16:02:19 +08:00
uye
18a65f3b39 feat: pv 小游戏 (#14885)
* feat: pv 小游戏架子

* chore: Auto update by pre-commit hooks [skip changelog]

* feat: 1-5 关

* chore: Auto update by pre-commit hooks [skip changelog]

* feat: PV 小游戏 06-15 (#14888)

* feat: 06-15

* fix: 15

* fix: templates and threshold

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* chore: Auto update by pre-commit hooks [skip changelog]

* feat: 小游戏 16-20

* fix: 18-20 导航

* chore: Auto update by pre-commit hooks [skip changelog]

* feat: 添加 ui 入口

* fix: 全角数字

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: 不留 <weinibuliu@outlook.com>
2025-11-28 15:54:14 +08:00
status102
1d4a84dcca fix: 收集遗漏的MaaCore.pdb和MaaUtils/pdb 2025-11-28 14:36:11 +08:00
status102
69f3919b52 perf: wpf Debug压缩包切片增加时间前缀 2025-11-28 14:33:21 +08:00
github-actions[bot]
96d426f52c chore: Auto Update Game Resources - 2025-11-28
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19755551218

[skip changelog]
2025-11-28 06:04:54 +00:00
github-actions[bot]
b460703cdd chore: Auto Update Game Resources - 2025-11-28
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19754997403

[skip changelog]
2025-11-28 05:29:54 +00:00
uye
b7b010f97c fix: 基建换班卡死在无人机使用界面
fix #14751
2025-11-28 01:29:51 +08:00
github-actions[bot]
fdc1184ea0 chore: Auto Update Game Resources - 2025-11-27
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19740458310

[skip changelog]
2025-11-27 15:03:42 +00:00
DavidWang19
51c5fb44ee feat: 更新界园肉鸽商品列表 (#14882)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-11-27 12:27:00 +00:00
github-actions[bot]
ffbb46ba52 chore: Auto Update Game Resources - 2025-11-27
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19734077676

[skip changelog]
2025-11-27 11:03:19 +00:00
不留
d025969c82 refactor: 改进 ImageCropper (#14762)
* fix: 修复 ImageCropper 循环异常退出的问题

* feat: 允许 ADB 为空

* fix: 修复 input 为空时的异常

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: 规范变量命名

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-11-27 18:25:42 +08:00
github-actions[bot]
c9f3fb8053 chore: Auto Templates Optimization
Triggered by 9c2d6c3a30

[skip changelog]
2025-11-27 09:15:39 +00:00
uye
9c2d6c3a30 rft: 整理截图 2025-11-27 17:14:54 +08:00
github-actions[bot]
efda298a11 chore: Auto Templates Optimization
Triggered by fec5edd021

[skip changelog]
2025-11-27 08:11:27 +00:00
uye
fec5edd021 chore: 重命名文件夹 2025-11-27 16:08:57 +08:00
github-actions[bot]
ede4cd526e chore: Auto Update Game Resources - 2025-11-27
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19727964321

[skip changelog]
2025-11-27 07:04:13 +00:00
uye
8ac9610d66 chore: Update bug report template to simplify instructions
Removed redundant instruction about uploading error images from the debug directory.
2025-11-27 03:47:42 +08:00
uye
838790a6a1 chore: Refine descriptions in en-bug-report.yaml
Updated descriptions in the bug report template for clarity and formatting.
2025-11-27 03:46:50 +08:00
uye
cef398b417 chore: Update descriptions in cn-bug-report.yaml 2025-11-27 03:43:03 +08:00
github-actions[bot]
f09dbd2f49 docs: Auto Update Changelogs of v5.28.1 (#14879)
* docs: Auto Generate Changelog of Release v5.28.1

* [WIP] Update changelogs for version v5.28.1 (#14881)

* Initial plan

* docs: Update CHANGELOG.md following changelog generation guidelines

Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

* docs: Update CHANGELOG with recent fixes and improvements

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>
2025-11-27 03:37:46 +08:00
uye
46b8d41998 rft: 整理一下截图 (#14878)
* rft: 整理一下截图

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-11-27 02:59:56 +08:00
SherkeyXD
695ca69da6 chore: remove and sort usings (#14877) 2025-11-27 02:55:57 +08:00
DavidWang19
84fe358011 feat: 更新肉鸽协议文档和界园肉鸽商品列表 (#14873)
* feat: 更新肉鸽协议文档和界园肉鸽商品列表

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: 将no修改为No

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-11-27 02:54:58 +08:00
uye
c4b363da3d feat: 刷理智失败次数达到上限时报错 2025-11-27 01:28:32 +08:00
uye
3177e2a51d fix: 功能入口 (#14872)
* fix: 功能入口

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: 调整任务

* chore: 重试时只检测对应主题

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-11-27 01:03:02 +08:00
travellerse
46cea84d7d fix: 避免通宝插件通过任务链作用到通宝以外的地方 (#14867) 2025-11-27 00:35:27 +08:00
Rbqwow
753637609d docs: issue模板修改25mb压缩包上传提示 (#14850)
* docs: 25mb

* i18n: add 25MB upload limit message to English bug report template (#14858)

---------

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
2025-11-27 00:34:20 +08:00
Constrat
4861e96ddc fix: regex_error(error_badrepeat) 2025-11-25 21:39:56 +01:00
status102
2003772ddf fix: 重置助战干员为未编入
link to #14859
2025-11-26 00:53:41 +08:00
github-actions[bot]
8c76a62230 chore: Auto Update Game Resources - 2025-11-25
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19677269535

[skip changelog]
2025-11-25 16:49:03 +00:00
uye
3511a426de chore: 调整 StartToVisit 阈值
fix #14853

相关工作项: #14
2025-11-25 16:01:25 +08:00
MistEO
9f8da17db1 build: set RPATH_LIBRARY_INSTALL_DIR (#14854) 2025-11-25 13:22:41 +08:00
github-actions[bot]
4eff74e5b1 chore: Auto Templates Optimization
Triggered by fdb89a6d4e

[skip changelog]
2025-11-24 16:43:56 +00:00
uye
fdb89a6d4e fix: 齐聚主题会在基建同时存在红蓝两个提示的时候无法进入
fix 14746
2025-11-25 00:43:27 +08:00
MistEO
8a73d922e0 feat: update meojson to v5.0.0 (#14849) 2025-11-25 00:29:46 +08:00
dependabot[bot]
36084974d1 ci: bump actions/checkout from 5 to 6 in /.github/workflows in the github-actions group (#14847)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-24 23:39:04 +08:00
uye
27027dbdfa Release v5.28.0 (#14833)
发正式版,先别进新东西

## Summary by Sourcery

Prepare battle processing, vision handling, roguelike copper management,
and CI smoke testing for the v5.28.0 release.

Bug Fixes:
- Allow skill usage actions to correctly handle drone deployments by
mapping tile locations to dynamically registered operator names.
- Prevent region-of-interest calculations from exceeding image bounds by
clamping rectangles safely and logging out-of-range inputs.
- Avoid smoke-test workflow failures when cache key generation fails by
making the step non-fatal and guarding cache restore on a valid key.

Enhancements:
- Centralize registration of deployed operators into a reusable helper
to keep battlefield state consistent.
- Standardize logging in the roguelike coppers task plugin to use the
project logging macros and clean up unused includes.
2025-11-24 16:55:52 +08:00
github-actions[bot]
d828cdb078 docs: Auto Update Changelogs of v5.28.0 (#14836)
* docs: Auto Generate Changelog of Release v5.28.0

* docs: Optimize changelog formatting and organization for v5.28.0 (#14837)

Reformatted changelog entries to follow project conventions: merged
related commits, fixed CJK/Latin number spacing, reordered sections by
language, clarified vague descriptions, and added Highlights section.

**Changes:**

* **Added Highlights section** - Created bilingual (Chinese/English)
highlights focusing on 5 key user-facing improvements:
  1. Task error log screenshot viewing on hover for intuitive debugging
2. Debug screenshot packaging with multi-volume support (20 MB per
volume) for flexible uploads
  3. Smart auto support unit borrowing when only one operator is missing
  4. Optimized auto-battle page layout
5. Integrated Strategies fixes (boss recognition, Tongbao parsing, event
recognition, task chains)
* **Merged duplicate entries** - Combined 3 "Release beta.2" PRs, 2
"Auto Update Changelogs", and related bug fixes (e.g., 通宝解析 fixes
#14802/#14820/#14829)
* **Fixed number spacing** - Added spaces around numbers in mixed
CJK/Latin text per convention (e.g., "第三层" → "第 3 层", "8识别成g" → "8 识别成
g")
* **Reordered sections** - Chinese entries first, English-only entries
last within each category
* **Improved clarity** - Replaced vague commit messages with descriptive
text (e.g., "投资入口不知道为啥没点进去" → "投资入口识别失败")
* **Fixed categorization** - Moved "修复 '入暂亭' 事件" from Improved to Fix
section

Removed uninformative entries like "擦屁股", "unused", "去掉勾选框" that don't
describe actual changes.

<!-- START COPILOT CODING AGENT TIPS -->
---

💬 We'd love your input! Share your thoughts on Copilot coding agent in
our [2 minute survey](https://gh.io/copilot-coding-agent-survey).

* feat: Revise changelog for version 5.28.0

Updated highlights and added new features for better debugging and auto-battle experience.

* doc: Update CHANGELOG.md for recent feature enhancements

* doc: Update CHANGELOG with recent fixes and optimizations

* docs: Revise CHANGELOG for clarity and detail

Updated the CHANGELOG with improved error handling descriptions and clarified features for 'Generate Support Payload' and 'Copilot'.

* docs: changelog

* docs: Update CHANGELOG with recent fixes and optimizations

* chore: EN issues address

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: AnnAngela <naganjue@vip.qq.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
Co-authored-by: Status102 <102887808+status102@users.noreply.github.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2025-11-24 16:47:56 +08:00
Copilot
a778ff84d9 fix: propagate errors from parallel downloads in res-update-game workflow (#14794)
* Initial plan

* fix: properly handle errors in parallel downloads for stages.json

Co-authored-by: AnnAngela <9762652+AnnAngela@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: AnnAngela <9762652+AnnAngela@users.noreply.github.com>
2025-11-24 09:30:03 +01:00
uye
95133cfeae fix: 部分名片无法进入线索交接
fix #14841
2025-11-24 14:40:26 +08:00
github-actions[bot]
4f7ba196c3 chore: Auto Update Game Resources - 2025-11-24
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19624349036

[skip changelog]
2025-11-24 05:29:59 +00:00
travellerse
e4644f7d2f fix: 修复放弃通宝的后续任务逻辑 (#14840) 2025-11-24 13:28:03 +08:00
uye
12846c9689 fix: 移除传入的 save_cnt 参数 2025-11-24 13:22:58 +08:00
github-actions[bot]
4fef683612 chore: Auto Templates Optimization
Triggered by a0547bee50

[skip changelog]
2025-11-24 05:11:49 +00:00
uye
a0547bee50 fix: 在未进入缩小的全局总览的时可能进错宿舍 2025-11-24 13:11:20 +08:00
pre-commit-ci[bot]
9f0e6e104c chore: Auto update by pre-commit hooks [skip changelog] 2025-11-24 05:00:32 +00:00
uye
e0b67b1523 fix: 大括号位置错误 2025-11-24 12:57:35 +08:00
uye
31520afb37 fix: image 长宽等于 0 时提前返回 2025-11-24 12:48:08 +08:00
uye
bf30c84b4f chore: 完全越界时报 error 2025-11-24 02:46:18 +08:00
uye
5c6f654762 fix: 避免输出空矩阵 2025-11-23 16:23:50 +08:00
uye
127d3a670c perf: 简化 ROI 修正逻辑 2025-11-23 16:15:10 +08:00
Status102
58d001744e feat(MaaCore): Copilot支持切换技能用法使用坐标 (#14818)
* feat: 支持切换技能用法使用坐标

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: usage

* fix: const ref

* perf: capture

* fix: case define

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-11-23 15:55:13 +08:00
status102
0d3a7ba48f fix: unused 2025-11-23 15:28:23 +08:00
status102
9b8686778d chore: 移除部分无需的include 2025-11-23 13:48:07 +08:00
晓丶梦丶仁
61489e4890 fix: KR 引航 2025-11-23 12:43:51 +08:00
uye
16bccd9876 fix: 擦屁股 2025-11-23 02:29:54 +08:00
uye
30fcea747b fix: StartUp 为什么要进终端 2025-11-23 01:54:52 +08:00
MistEO
44aec32649 ci: continue on bad cache key 2025-11-22 22:48:20 +08:00
uye
3cfcffbe16 Release v5.28.0-beta.2 (#14831)
一波三折!

## Summary by Sourcery

CI:
- Allow GitHub Actions cache steps to continue on error across multiple
workflows, preventing cache failures from breaking CI runs.
2025-11-22 22:42:58 +08:00
MistEO
3bec98b7ce ci: continue on error for all actions/cache 2025-11-22 22:23:36 +08:00
MistEO
889313fe36 ci: continue on cache maadeps error 2025-11-22 22:19:06 +08:00
uye
9db5f5a43b Release v5.28.0-beta.2 (#14827)
## Summary by Sourcery

Tighten roguelike copper exchange handling and improve debugging support
for copper recognition issues.

Bug Fixes:
- Ensure exactly one copper is detected in the left column during
exchange mode and fail fast otherwise.
- Fix the created copper’s position and logging to consistently use the
top-left slot coordinates.
- Stop silently continuing when copper creation fails by treating it as
a hard failure.

Enhancements:
- Add debug image capture for unexpected left-column copper counts and
for newly detected coppers.
- Always compile the copper detection debug drawing and image-saving
helpers regardless of debug flags.

Documentation:
- Update the documented path for saved debug images when unknown copper
names are encountered.
2025-11-22 21:42:40 +08:00
travellerse
d3f038b1ce fix: 修正通宝识别中的坐标 (#14829)
* fix: 修正通宝识别中的坐标

* fix: 添加Sarkaz关掉进入事件窗口的模板
2025-11-22 21:39:43 +08:00
travellerse
46d0fd2e5c fix: 处理左侧通宝解析失败的情况 (#14820)
* fix: 处理左侧通宝解析失败的情况

* fix: 更新调试图像保存路径至 debug/roguelike/coppers/unknown 目录

* fix: 优化通宝处理逻辑

* fix: 限制一下变量作用域

* fix: 移除ASST_DEBUG
2025-11-22 20:57:09 +08:00
github-actions[bot]
2503f2bc68 chore: Auto Update Game Resources - 2025-11-22
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19594191480

[skip changelog]
2025-11-22 10:28:05 +00:00
uye
de8634bf29 Release v5.28.0-beta.2 (#14800)
## Summary by Sourcery

Improve copilot configuration UX, extend roguelike (JieGarden)
automation with copper handling, and refine tooling, workflows, and
diagnostics for better stability and observability.

New Features:
- Add structured JSON-based configuration with popup editor for copilot
user additional operators, including optional skill and module fields.
- Introduce automated JieGarden copper pickup and exchange logic with
dedicated analyzers and config to optimize in-run decisions.
- Add UI theme task generation and image moving utilities to support
multi-theme homepage templates.

Bug Fixes:
- Ensure copilot log tooltips are closed and cleaned when clearing logs
to avoid lingering UI artifacts.
- Fix fight times unused warning trigger conditions so it only logs when
a finished run has remaining configured runs.
- Wait for reserve recruitment confirmation to disappear in JieGarden
recruit flow to prevent premature termination.
- Honor first-floor foldartal and start-with-elite-two flags correctly
so rerolling and early-exit behaviors are coordinated.
- Prevent GetImageFromROI cutter from crashing on unreadable images and
ensure crop regions are correctly resolved from base tasks.
- Handle GitHub API rate limiting and missing outputs more robustly in
the changelog generator and resource update workflows.

Enhancements:
- Refine copilot formation and support usage options, including a toggle
for support unit usage and updated formation index naming.
- Export operator box data including missing operators with default
metadata instead of only current user-stored entries.
- Warn users in logs when an outdated GPU driver is detected and include
localized messaging.
- Improve roguelike Bosky Passage routing by closing obstructive popups
before updating the map.
- Make InterfaceTask capture debug screenshots on failure to aid
troubleshooting.
- Simplify and harden changelog generation by restructuring commit
categorization, contributor resolution, and tree building logic.
- Modernize ROI-based image cutter to work off UiTheme task JSONs,
propagate shared crop docs, and respect per-template filenames.

Build:
- Adjust Windows nightly OTA CMake configuration to build with
RelWithDebInfo and publish PDB debug symbols for components.

CI:
- Tighten game resource download workflow with failing curl on HTTP
errors, coordinated job waiting, simpler artifact retries, and smarter
failure-comment management on the dev branch.

Documentation:
- Document JieGarden copper configuration schema and automatic
pickup/exchange behavior in the integrated strategy protocol docs.
- Clarify SECURITY policy to state that only the latest v5 stable
release receives security support.
2025-11-22 18:20:27 +08:00
github-actions[bot]
2e3fe293e6 docs: Auto Update Changelogs of v5.28.0-beta.2 (#14801)
* docs: Auto Generate Changelog of Release v5.28.0-beta.2

* docs: Optimize changelog formatting for v5.28.0-beta.2 (#14819)

* Initial plan

* docs: Optimize changelog formatting for v5.28.0-beta.2

- Merge similar commits (e.g., OCR replacement commits)
- Add spaces around numbers in Chinese/English mixed text (GPU, OCR, 20 MB)
- Sort entries: Chinese first, then English within each module
- Merge template optimization entries
- Optimize commit descriptions for clarity

Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

* docs: Update CHANGELOG with recent improvements and fixes

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>
2025-11-22 18:18:38 +08:00
萨拉托加
c1cb1ee978 fix: 肉鸽问题修复 (#14654)
* perf: 萨米界园肉鸽添加并优化暂时撤退逻辑

* perf: 萨卡兹肉鸽关掉进入事件可能弹出的窗口

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: RolesConfirm不知道为啥点不进去

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-11-22 18:12:15 +08:00
uye
fc61ff8ea2 rft: 统一存截图 (#14825)
* rft: 统一存截图

* rft: 漏网之鱼

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: 静态锁

* chore: map 改为全局

* fix: 避免溢出

* chore: 怎么整得这么麻烦

* perf: 避免额外std::format

* fix: ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
2025-11-22 18:11:42 +08:00
Manicsteiner
285628a293 fix: copilot file name (#14821) 2025-11-22 14:24:17 +08:00
github-actions[bot]
8e906402fb chore: Auto Update Game Resources - 2025-11-21
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19582060835

[skip changelog]
2025-11-21 20:04:04 +00:00
uye
cf0a248ae1 ci: Update tools/ChangelogGenerator/changelog_generator.py
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
2025-11-22 02:47:23 +08:00
uye
f232eacbb4 fix: 单文件模式下总是传递借助战 2025-11-22 02:44:17 +08:00
travellerse
c52f79cbaa fix: 修复界园树洞偶发点击到剩余烛火,导致无法进入下一个节点 (#14806)
* fix: 修复界园树洞偶发点击到剩余烛火,导致无法进入下一个节点

* rft: 使用task任务替代Matcher

* fix: 将弹窗检测置于节点识别前

* fix: 将检测任务retry_times设为0
2025-11-22 02:41:03 +08:00
uye
0978c10dca chore: 分卷压缩包大小改成 20 MB 2025-11-22 02:39:52 +08:00
Status102
b697fdc2c7 feat: MaaCore主任务错误时保存截图 (#14812)
* feat: MaaCore主任务错误时保存截图

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-11-22 02:33:31 +08:00
uye
5c37d751c7 perf: 优化自动战斗界面显示 (#14795)
* perf: 优化自动战斗界面显示

* fix: 不勾选战斗列表时也会吃理智药

* i18n: KR

* i18n: 加個空白

* i18n: EN

* i18n: JP

* rft: 使用自动换行

* style: increase size a bit

* perf: 优化界面布局

* rft: UserAdditional 改为序列化存储,增加自选模组

* fix: 列表过长时超链接无法显示

* perf: 未激活追加自定干员也可以进行编辑

* perf: 战斗列表自适应宽度

* chore: 按钮放上面

* perf: 优化日志栏宽度,占用 1/2 或 2/5

* perf: 突袭改成用背景色提示

---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: momomochi987 <as99us301@gmail.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
2025-11-22 02:30:44 +08:00
pre-commit-ci[bot]
07982cfebd chore: Auto update by pre-commit hooks [skip changelog] 2025-11-21 12:57:53 +00:00
SherkeyXD
ca21c9bcca chore: 更新多模板截图工具 2025-11-21 20:54:50 +08:00
github-actions[bot]
fbeed8083f chore: Auto Update Game Resources - 2025-11-20
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19541308413

[skip changelog]
2025-11-20 15:03:33 +00:00
Rbqwow
9ae8ca3ba8 feat: 为GPU加速添加超过两年的驱动版本检测 (#14690)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
2025-11-20 14:45:55 +00:00
SherkeyXD
b70d6b6b7f rft: 拆分多主题识别任务 (#14774)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: DavidWang19 <dwang0340@gmail.com>
2025-11-20 13:34:02 +00:00
Hao Guan
d6dbbf194f i18n(mac): KR 2025-11-20 18:38:49 +08:00
Hao Guan
fe134e2587 chore(mac): 修复UI细节 2025-11-20 16:58:49 +08:00
github-actions[bot]
b3539e6f27 chore: Auto Update Game Resources - 2025-11-20
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19528514707

[skip changelog]
2025-11-20 07:03:47 +00:00
Manicsteiner
3f06c13ff8 chore: SSS#8 for global (#14803) 2025-11-19 17:59:56 +01:00
Constrat
036f1c55ae fix: reduce template size for QuickFormation RL 2025-11-19 17:37:56 +01:00
Constrat
bba94660d7 perf: optimize templates 2025-11-19 17:36:37 +01:00
uye
0963e88112 fix: RA 导航错误 2025-11-19 23:15:16 +08:00
uye
bbb48127ff rft: 调整 ExportOperBox 内的变量命名与结构 2025-11-19 23:08:49 +08:00
travellerse
88acc9e83d fix: 修复通宝配置解析逻辑 (#14802) 2025-11-19 23:03:52 +08:00
SherkeyXD
38a7710387 style: changelog 生成器格式化 2025-11-19 20:30:53 +08:00
github-actions[bot]
9a7318942c feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19498803186
[skip changelog]
2025-11-19 10:54:03 +00:00
萨拉托加
48bb385211 fix: 从主页进入终端点过头后返回 (#14698)
* fix: 从主页进入终端点过头后返回

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-11-19 18:52:16 +08:00
Weiyou Wang
cb897863f6 fix: 修复集成战略萨米主题下凹密闻板相关功能 (#14755) 2025-11-19 18:50:32 +08:00
travellerse
d25f8e934c fix: 保存招募券结束后等待确认招募按钮消失 (#14773)
* fix: 保存招募券结束后加点延时

* fix: 增加确认招募按钮消失的等待逻辑

* fix: 添加确认按钮未消失时继续招募流程
2025-11-19 18:50:03 +08:00
uye
5d75c247be ci: 更新下 changelog 2025-11-19 18:49:23 +08:00
travellerse
f08fdd0548 fix: 修正不期而遇事件名ocr以区分禳解的三个相近选项 (#14799) 2025-11-19 18:11:02 +08:00
status102
06f793cf59 ci: nightly版恢复pdb文件生成及上传 2025-11-19 17:47:38 +08:00
status102
8b61cac331 fix: 刷理智指定次数未完全消耗警告在剩余理智也会提示 2025-11-19 16:51:51 +08:00
status102
807a3d472d fix: 干员识别复制结果到剪贴板时丢失未拥有干员 2025-11-19 15:53:27 +08:00
status102
4a71452841 fix: 移除过旧的add_user_additional参数弃用提示 2025-11-19 15:53:05 +08:00
github-actions[bot]
d5b6d2fe60 chore: Auto Update Game Resources - 2025-11-19
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19493348827

[skip changelog]
2025-11-19 07:28:02 +00:00
travellerse
ac7d449584 feat: 适配界园肉鸽通宝交换 (#13835)
* feat: 初步实现界园肉鸽通宝交换

* feat: 实现通宝交换后弹窗点击

* fix: 使用ocr作为通宝交换完成的标志

* fix: 给通宝弹窗确认的 pre_task 加上 postDelay

* fix: 小错误修改

* fix: 添加ocrReplace

* feat: 给通宝赋予临时权重,之后再改

* refactor: 重构通宝任务插件,拆分复杂的_run

* fix: 修正通宝选择点击错误

* refactor: 把滑动函数改回直观

* feat: 新增已投出时的通宝丢弃权重

* fix: 更新通宝名称匹配规则

* chore: 增加注释和日志输出

* chore: 添加调试截图保存

* fix: 清理未使用的参数

* fix: 微调通宝权重

* fix: 修正保存截图过多

* fix: 修复Rect不匹配造成的错误

* fix: 调整debug截图

* fix: 修正选择通宝时位置错误

* fix: 修复刷不交换通宝时无法退出

* fix: 修改`已投出`识别得分的绘制位置

* fix: 启用不期而遇`饕餮廊`获取通宝

* fix: 调整通宝识别区域宽度

* fix: 添加`厉-安硕` -> `厉-安硕鼷`的替换

* fix: 为通宝名称未匹配产生的debug截图添加方框

* fix: 修正debug截图方框位置

* fix: 清理无用的ocrReplace

* fix: 删除通过任务给插件传递特殊参数

* fix: 增加"衡-霹雳"和"花-圣诏封神"的ocr替换

* docs: 添加界园肉鸽通宝交换文档

* fix: 默认刷开局模式交换通宝

* fix: 删除未使用的通宝列表行数变量

* fix: 通宝交换完成识别增加延迟

* fix: 增加"衡-军屯垦"的ocr替换

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: 修正调试图像保存路径

* perf: 优化通宝创建逻辑

* refactor: 更新通宝任务模式名称

* refactor: 更新通宝稀有度键值

* chore: 更新通宝优先级

* fix: 通宝列表匹配时可能会将y轴间隔覆盖为0

* perf: 将交换通宝的信息发送到wpf

* perf: 将通宝调试截图改为jpeg

* fix:  添加"衡-旱热"的ocr替换

* refactor: 传递任务执行结果

* feat: 初步动态识别通宝列表

* perf: 将期望为空的识别逻辑改为期望匹配到

* chore: 为通宝类型模板添加mask

* refactor: 重构通宝识别逻辑

* refactor: 提取保存调试图像

* refactor: 使用std::format优化日志输出

* refactor: 收尾

* chore: 微调滑动距离

* fix: 忘了加maskRange了

* chore: 保留score小数点后六位

* fix: 修复神秘的点击停止后卡死问题

* docs: 更新文档

* docs: 添加通宝识别流程示意图

* fix: 更新通宝稀有度定义

* chore: 添加通宝交换模式的图片示意注释

* chore: 加点注释

* perf: 预分配通宝和检测结果的空间

* chore: 优化运行时状态变量注释

* fix: 仅在确实已被投出时绘制已投出的调试方框

* fix: 修正坐标变量名称以符合语义

* perf: 滑动误差较大时额外滑动一次进行回正

* fix: 仅在缓慢滑动时校准位置

* refactor: 优化通宝列表滑动

* fix: 尝试修复偶发通宝最后一列无法识别

* fix: 移除了 999

* fix: 进一步修复滑动

* chore: 更新未知通宝调试图像保存路径

* fix: 更改调试截图保存位置和matcher使用图片初始化

* fix: 添加"厉-一字落"的ocr替换

* fix: 适配MaaUtils的更改

* chore: 调整任务顺序

* chore: 添加通宝重投和开关钱盒任务配置

* chore: 文件头/注释调整

* rft: meojson反序列化

* chore: Auto update by pre-commit hooks [skip changelog]

* perf: 替换部分新log输出

* i18n: KR

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
2025-11-19 15:22:33 +08:00
Weiyou Wang
e9bc53cb6d fix: 上调助战栏位匹配分数阈值 (#14796) 2025-11-18 21:54:06 +00:00
AnnAngela
990907fdb1 chore: Revise security support to only include v5 [skip changelog]
Updated security policy to indicate support only for v5.
2025-11-18 23:45:13 +08:00
Constrat
a4ca4ffda9 ci(testing): game resource update error comment tweaks and changes 2025-11-18 16:11:14 +01:00
AnnAngela
8e9c648f0e ci: Change curl command to fail on error
cc @Constrat
2025-11-18 22:31:57 +08:00
github-actions[bot]
b2231e3392 chore: Auto Templates Optimization
Triggered by 70075152df

[skip changelog]
2025-11-18 12:11:17 +00:00
uye
70075152df fix: 通关角标 2025-11-18 20:10:38 +08:00
travellerse
d8000250dc fix: 添加不期而遇事件名ocr替换 (#14588)
* fix: 添加不期而遇事件名ocr替换

* fix: 添加"找黍溯果"的ocr替换

* fix: 更新JieGarden的OCR替换规则
2025-11-18 19:58:13 +08:00
Constrat
37299f8758 fix: Sami IS EN 3rd floor regex 2025-11-18 11:39:52 +01:00
github-actions[bot]
bdd747fe2a chore: Auto Update Game Resources - 2025-11-18
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19457757314

[skip changelog]
2025-11-18 07:27:47 +00:00
status102
e71ade9573 chore: 路径迁移 2025-11-18 15:19:25 +08:00
Constrat
b77b8e55e5 fix: regex AD navigation EN 2025-11-17 20:06:48 +01:00
AnnAngela
222af5e23c ci: Simplify resource update workflow (#14785)
* ci: Simplify resource update workflow

Removed unnecessary delay and re-download steps for resources.

* ci: Apply suggestions from code review

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

* ci: Remove continue-on-error from download steps

Removed 'continue-on-error' option from multiple download steps.

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-17 17:41:08 +01:00
github-actions[bot]
0014167468 feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19412598245
[skip changelog]
2025-11-16 21:52:53 +00:00
uye
56a83bb8d7 feat: 清日志的时候把 ToolTip 手动清除一下 2025-11-16 03:32:39 +08:00
uye
fe71d9ea1c Release v5.28.0-beta.1 (#14767) 2025-11-16 03:13:09 +08:00
github-actions[bot]
565b8fa7f9 docs: Auto Update Changelogs of v5.28.0-beta.1 (#14768)
* docs: Auto Generate Changelog of Release v5.28.0-beta.1

* docs: Optimize changelog formatting for v5.28.0-beta.1 (#14769)

* Initial plan

* docs: Optimize changelog formatting per review guidelines

Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

* docs: Update CHANGELOG for v5.28.0-beta.1

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>
2025-11-16 03:02:46 +08:00
uye
b71f0b0a9f feat: 卫戍协议:盟约 小游戏 (#14763)
* feat: 卫戍协议:盟约 小游戏

* chore: Auto update by pre-commit hooks [skip changelog]

* feat: 调整描述

* chore: Auto update by pre-commit hooks [skip changelog]

* i18n: EN tweak

* i18n: KR tweak

* i18n: EN tweak

* feat: mac 卫戍协议:盟约

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
2025-11-16 02:42:44 +08:00
Weiyou Wang
abe9affa44 fix: 进一步调整 WpfGui 助战选项显示布局 2025-11-16 00:32:14 +11:00
uye
e20508d46e fix: 自动借助战错误显示 2025-11-15 20:17:20 +08:00
HX3N
6427fdd609 i18n: KR tweak SupportUnitUsage translation 2025-11-15 13:20:51 +09:00
Status102
5c86b4b875 docs: integration zh可读性增强 (#14756)
docs: integration zh可读性增强 (#14754)

* docs: integration zh可读性增强

* docs: 再加一点

* docs: all in

* chore: Auto update by pre-commit hooks [skip changelog]

* docs: 去掉点多余的换行

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-11-14 22:22:48 +08:00
uye
c3f870e51e fix: 干员识别包含 盟约·辅助干员 和 领主·Sharp 2025-11-14 18:49:32 +08:00
github-actions[bot]
b99f1d4776 chore: Auto Templates Optimization
Triggered by 0d13aed500

[skip changelog]
2025-11-14 09:03:43 +00:00
github-actions[bot]
0d13aed500 chore: Auto Update Game Resources - 2025-11-14
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19359577330

[skip changelog]
2025-11-14 09:03:16 +00:00
Manicsteiner
5a1ea3c186 fix: JP paradox 2025-11-14 16:30:38 +08:00
github-actions[bot]
2c8c319657 chore: Auto Update Game Resources - 2025-11-14
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19358208540

[skip changelog]
2025-11-14 08:03:37 +00:00
Weiyou Wang
26a20755e1 rft: 修复、改进自动借助战功能 (#11105) 2025-11-14 14:20:45 +11:00
Weiyou Wang
e29d802c08 fix: 简化萨米肉鸽 "诡秘的预感" 相关任务链 (#14749) 2025-11-14 12:17:13 +11:00
Weiyou Wang
a84e87f5e7 fix: 给 open_series_list 加上失败截图机制 (#14693) 2025-11-14 12:16:41 +11:00
Weiyou Wang
6662457428 refactor: 修复 "入暂亭" 事件 (#14684) 2025-11-14 12:16:03 +11:00
Weiyou Wang
95ea200ede fix: 防止生息演算重置地图视图时因截图延迟卡死 (#14721) 2025-11-14 12:15:17 +11:00
Status102
3ded8b574a chore: 向MaaCore工程增加tasks文件以便检索 (#14731)
* chore: 向MaaCore增加tasks文件

* chore: 支持global
2025-11-14 01:23:24 +08:00
Manicsteiner
d11582f39f chore: JP ocr edits (#14748) 2025-11-13 17:02:25 +01:00
github-actions[bot]
eedee9e6ee chore: Auto Update Game Resources - 2025-11-13
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19337134611

[skip changelog]
2025-11-13 15:44:31 +00:00
github-actions[bot]
0a768d8804 chore: Auto Update Game Resources - 2025-11-13
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19326795251

[skip changelog]
2025-11-13 09:28:33 +00:00
HX3N
0ff3492415 fix: KR AD navigation (#14742) 2025-11-13 09:19:11 +01:00
Weiyou Wang
a4d4e39257 fix: ocrReplace for EN (#14740)
Co-authored-by: 萨拉托加 <151550168+saratoga-official@users.noreply.github.com>
2025-11-13 09:18:35 +01:00
github-actions[bot]
89ab18ea6c chore: Auto Update Game Resources - 2025-11-13
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19324207913

[skip changelog]
2025-11-13 07:43:04 +00:00
萨拉托加
332592d998 fix: 肉鸽可能卡进剧目获取界面和收藏品界面
fix #14723
2025-11-13 14:53:16 +08:00
uye
6a931760d6 feat: 去掉勾选框 2025-11-12 22:11:13 +08:00
status102
f0a509fb6f perf: std::signal 自动舍弃 abort / terminate 上方栈 2025-11-12 20:04:53 +08:00
Lucien Shaw
f096131e12 ci: 修正一个cli相关的action的输入 (#14730)
ci: 修正cli使用的一个action的输入
2025-11-12 09:08:51 +01:00
uye
8240390a8b chore: git blame 忽略 "c# 统一使用文件范围限定的 namespace"
[skip changelog]
2025-11-12 16:05:35 +08:00
Weiyou Wang
80c8f03b24 docs: 自动战斗文档添加 copilot_list, is_raid, is_paradox, loop_times 注释 2025-11-12 15:12:46 +08:00
uye
39a89f6361 rft: 日志汇报打包 debug 截图,支持分卷,修改存储路径 2025-11-12 14:15:18 +08:00
Weiyou Wang
74cad75e74 fix: build WpfGui for ARM architecture (#14722) 2025-11-12 12:27:02 +08:00
uye
376e929d96 feat: 任务错误日志鼠标悬浮可以查看出错时截图 2025-11-12 11:27:00 +08:00
萨拉托加
d370b5d5fe fix: 关卡复核会把8识别成g 2025-11-12 09:57:21 +08:00
Weiyou Wang
e2ac3ff4e4 fix: 肉鸽允许跳过招募组合直接开始初始招募 (#14713)
fix: 允许跳过招募组合直接开始初始招募
2025-11-12 09:12:38 +08:00
MistEO
1c233d21c4 ci: include prerelease for release-package-distribution
https://github.com/pozetroninc/github-action-get-latest-release

default 	"prerelease, draft"
2025-11-12 01:28:43 +08:00
MistEO
b7cca46076 ci: remove permissions restrictions 2025-11-12 01:23:51 +08:00
Lucien Shaw
bfacd31911 ci: 支持winget软件分发 (#14667)
* ci: 测试winget-releaser

* ci: 暂时禁用mirrorchyan

* Revert "ci: 暂时禁用mirrorchyan"

This reverts commit 83550ac47f.

* ci: release分发工作流支持指定tag

* ci: 修复判断语句

* ci: 修改主工作流的release分发部分

* ci: 添加权限

* ci: 设置默认版本tag为空

* ci: 尝试修复空版本号带来的问题

* ci: 使用独立工作流设置release tag

* ci: 补全仓库名称

* ci: 优化gh workflow run调用语句

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

* style: 添加空格

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

* ci: use secrets and repos of MAA

* ci: 更新secrets名称

* ci: 版本分发工作流重命名

* ci: 匹配的名称变更

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-12 01:04:55 +08:00
萨拉托加
714e8e5511 fix: 投资入口不知道为啥没点进去 2025-11-11 23:26:40 +08:00
uye
0179825ff8 fix: 无法区分界园肉鸽第三层与第五层 boss、界园肉鸽第五层 boss 前暂停设置无效
fix #14641
2025-11-11 22:49:03 +08:00
uye
3fa5aa028a Release v5.27.4 (#14717)
有猪没合 changelog

## Summary by Sourcery

Update CHANGELOG.md to release version 5.27.4, detailing new features,
improvements, bug fixes, and other changes.

New Features:
- Add duplicate name check for auto battle groups
- Add difficulty selection tip for Guiyuan command squad savings
- Add minigame entry point on macOS

Bug Fixes:
- Fix monthly squad failing to auto-switch
- Improve recognition matching for the “gather” theme
- Fix unintended clicks in roguelike mode (double-speed and ClickToDrops
issues)

Enhancements:
- Update extreme efficiency one-day three-shift schedule table
(2025-11-11 revision)

Documentation:
- Bump version to v5.27.4 and document release notes in CHANGELOG.md

Chores:
- Update Dependabot CI members
- Preload ads for Global build
2025-11-11 22:06:23 +08:00
github-actions[bot]
6192e7d02b docs: Auto Update Changelogs of v5.27.4 (#14715)
* docs: Auto Generate Changelog of Release v5.27.4

* Initial plan

* Update CHANGELOG.md for v5.27.4

- Merge similar commits into single lines
- Sort entries within each category
- Preserve original changelog content (v5.27.3 and earlier)

Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

* Move v5.27.4 section to end of changelog

Patch version content should be placed at the end, after other v5.27.x patches, not at the beginning.

Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>

* docs: Update CHANGELOG for version 5.27.4

Updated version number to v5.27.4 and modified highlights, new features, improvements, and fixes sections.

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ABA2396 <99072975+ABA2396@users.noreply.github.com>
2025-11-11 22:03:13 +08:00
uye
e5c48504cd Release v5.27.4 (#14714)
## Summary by Sourcery

Add duplicate detection in battle formation parsing with UI reporting,
refactor Roguelike plugin parameter loading, update CI action versions,
and adjust Dependabot assignees.

Bug Fixes:
- Prevent duplicate groups in battle formation and report parse failures
- Add UI handler to log BattleFormationParseFailed messages

Enhancements:
- Store deep_exploration_auto_iterate flag in Roguelike plugin and
simplify mode check
- Upgrade GitHub Actions versions for release and artifact upload
- Add lucienshawls to Dependabot assignees
2025-11-11 22:02:26 +08:00
github-actions[bot]
9b1bd1c70a chore: Auto Templates Optimization
Triggered by 5be311282e

[skip changelog]
2025-11-11 13:51:08 +00:00
uye
5be311282e perf: 优化齐聚主题模板图 2025-11-11 21:50:41 +08:00
萨拉托加
bb2325babc fix: 肉鸽ClickToDrops可能会点到藏品栏 2025-11-11 21:37:15 +08:00
github-actions[bot]
60fd50a3e5 feat: Update Submodules MaaMacGui, maa-cli
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19267340013
[skip changelog]
2025-11-11 13:35:49 +00:00
Constrat
4efef06aaa chore: update dependabot with ci members 2025-11-11 14:31:11 +01:00
dependabot[bot]
2bad5258e2 ci: bump the github-actions group in /.github/workflows with 2 updates (#14705)
Bumps the github-actions group in /.github/workflows with 2 updates: [actions/upload-artifact](https://github.com/actions/upload-artifact) and [softprops/action-gh-release](https://github.com/softprops/action-gh-release).


Updates `actions/upload-artifact` from 4 to 5
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v4...v5)

Updates `softprops/action-gh-release` from 2.4.1 to 2.4.2
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](https://github.com/softprops/action-gh-release/compare/v2.4.1...v2.4.2)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: softprops/action-gh-release
  dependency-version: 2.4.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-11 14:26:45 +01:00
uye
7941a599e9 fix: 月度小队无法自动切换 2025-11-11 20:30:30 +08:00
Zsm1n
0066d3364e perf: 更新 243 极限效率一天三换排班表(20251111 修订) (#14708) 2025-11-11 11:25:12 +01:00
Status102
7b72b729b8 feat: 自动战斗新增组名重复检查 (#14710)
---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
2025-11-11 10:35:18 +01:00
Hao Guan
a1d0dc9fea feat(mac): 喀兰小游戏界面提示 2025-11-11 17:25:30 +08:00
Hao Guan
abc2e618c7 fix(mac): 小游戏 2025-11-11 17:24:34 +08:00
uye
5771ede8a9 feat: mac 小游戏 2025-11-11 17:06:43 +08:00
萨拉托加
440d53e544 fix: 齐聚也干了
fix #14703
2025-11-10 22:20:06 +08:00
Constrat
dff100d338 chore: preload AD for Global (#14700)
---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
2025-11-10 15:03:06 +01:00
萨拉托加
0b94d7464e fix: 肉鸽中取消选中状态可能会点到二倍速 2025-11-10 12:26:06 +08:00
uye
ef46443681 feat: 增加界园指挥分队存钱难度选择 tip 2025-11-10 12:08:03 +08:00
uye
8821df308b Release v5.27.3 (#14687) 2025-11-09 23:05:13 +08:00
status102
af81c25ba1 fix: 猪猪 2025-11-09 22:43:33 +08:00
pre-commit-ci[bot]
34843fab31 chore: Auto update by pre-commit hooks [skip changelog] 2025-11-09 14:41:21 +00:00
status102
d1736e5dd4 fix: Module base macOs 2025-11-09 22:38:39 +08:00
github-actions[bot]
6b4164e6eb docs: Auto Update Changelogs of v5.27.3 (#14688)
* docs: Auto Generate Changelog of Release v5.27.3

* docs: Update CHANGELOG for version 5.27.3

Updated CHANGELOG for version 5.27.3, highlighting new features, improvements, fixes, and documentation updates.

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-11-09 22:31:42 +08:00
travellerse
2fb57d65df fix: 修复界园保留招募券在1080p下识别异常 (#14637)
* fix: 将colorWithClose设为false

* fix: 更换为没有文字的模板

* fix: 改回ClickSelf
2025-11-09 22:24:17 +08:00
萨拉托加
dce3780927 chore: 肉鸽添加凛御银灰圣聆初雪招募逻辑 2025-11-09 22:22:48 +08:00
pre-commit-ci[bot]
a0b1eaa804 chore: Auto update by pre-commit hooks [skip changelog] 2025-11-09 14:13:25 +00:00
status102
3bfa21ee02 feat: MaaCore 记录 Exception 时额外记录模块基址 2025-11-09 21:54:42 +08:00
uye
7c84863a20 fix: 提高干员部署滑动的最小时长,减少因模拟器丢帧导致的部署失败 2025-11-09 21:54:22 +08:00
Constrat
ac539eb343 fix: Exusiai Alter ocr regex for EN 2025-11-09 12:57:38 +01:00
MistEO
5e07116597 ci: 提供调试符号 (#14675) 2025-11-09 16:07:25 +08:00
github-actions[bot]
290261c50e chore: Auto Update Game Resources - 2025-11-08
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19190884721

[skip changelog]
2025-11-08 09:02:32 +00:00
uye
f1c28c7258 fix: 肉鸽刷开局期望奖励无法动态隐藏/显示 2025-11-08 15:43:30 +08:00
Constrat
74fd453a53 fix: Dorothy S2 ocr regex 2025-11-07 12:33:19 +01:00
status102
bfd9010ee2 feat: Wpf i18n字符串支持直接string.Frmat 2025-11-07 19:29:46 +08:00
github-actions[bot]
eb8c024202 chore: Auto Update Game Resources - 2025-11-07
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19162631273

[skip changelog]
2025-11-07 08:29:33 +00:00
status102
b2d0251b7e fix: Wpf增加悖论模拟模式非悖论作业检测 2025-11-07 13:37:56 +08:00
status102
5e85d2c793 perf: asst Log增加crash时额外输出core版本, build时间, 路径 2025-11-07 11:18:38 +08:00
MistEO
f54d012cb9 chore: add logs 2025-11-07 09:38:00 +08:00
MistEO
10179d1a0b perf: 更好的随机点分布 (#14652)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-07 09:33:53 +08:00
github-actions[bot]
43d88575c5 chore: Auto Templates Optimization
Triggered by 3fac78c0f9

[skip changelog]
2025-11-06 14:16:18 +00:00
uye
3fac78c0f9 perf: 优化切换主题逻辑 2025-11-06 22:15:48 +08:00
Lucien Shaw
88e27977e8 build(docs): update and switch to esm (#14642)
* build(docs): switch to esm

* build(docs): bump pnpm to v10.20.0

* ci: 精简文档站构建和发布流程

* build(docs): 升级部分依赖

* ci: 补全package.json的查找路径

* build(docs): 升级plume主题

* fix(docs): 适应新版本主题的样式变动

* ci: 补全文档站工作流的权限设置
2025-11-06 16:51:31 +08:00
uye
579def4704 feat: 怎么还有 GTII 2025-11-06 16:48:40 +08:00
uye
3233653381 fix: typo
[skip changelog]
2025-11-06 16:44:43 +08:00
uye
2a455c306a feat: 增加华硕 GTIII 显卡超频工具注入导致崩溃提示 2025-11-06 16:41:27 +08:00
萨拉托加
39c16790cd fix: 界园入暂亭ocrfix 2025-11-06 15:49:13 +08:00
MistEO
636ffff7b3 refactor: CropRoi -> ImageCropper (#14379) (#14647)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: SherkeyXD <57581480+SherkeyXD@users.noreply.github.com>
Co-authored-by: Lucien Shaw <myxlc55@outlook.com>
Co-authored-by: MistEO <18511905+MistEO@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: 不留 <weinibuliu@outlook.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
2025-11-06 15:32:35 +08:00
MistEO
61cdb47c00 ci: 更好的 CI 并发控制 (#14645) 2025-11-06 13:42:44 +08:00
Constrat
766c33c7b6 fix(tools): update to new data repo for sh script 2025-11-05 11:48:55 +01:00
Constrat
3bc0df7e4d fix(tools): update to new data repo for ps1 script 2025-11-05 11:48:47 +01:00
Constrat
dec2d2fef2 chore: remove expired token 2025-11-05 11:44:57 +01:00
Constrat
2ee56d2089 fix: move to public arkntools repo for txwy
Thanks to @Tsuk1ko
2025-11-05 11:44:38 +01:00
Constrat
16bf17e9b1 fix: update Sami floor regex
fix 14630 (hopeful)
2025-11-05 01:00:37 +01:00
github-actions[bot]
66d4e9b298 chore: Auto Update Game Resources - 2025-11-04
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19066618580

[skip changelog]
2025-11-04 11:08:37 +00:00
Status102
15a333fd39 rft: wpf拆分添加作业和作业集按钮 (#14624)
* rft: wpf拆分添加作业和作业集按钮

* i18n: 调整CopilotTip

* chore: 添加注释, 未来移除旧的右键行为

* perf: 统一图标格式

* perf: 统一文本描述

* chore: todo!

* feat: 调整描述

* feat: 调整悖论模拟列表启动要求描述

* i18n: KR tweak translation

* fix: typo

---------

Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
2025-11-04 16:30:46 +08:00
Status102
2c2b3c5b19 feat: 战斗列表启用时, 浏览单个作业时自动添加到战斗列表 (#14625) 2025-11-04 12:34:28 +08:00
uye
8eea7e49c5 perf: 优化切换主题流程 2025-11-03 22:48:17 +08:00
github-actions[bot]
bce6a6f259 chore: Auto Update Game Resources - 2025-11-03
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/19038089979

[skip changelog]
2025-11-03 14:32:04 +00:00
uye
676a470d2d fix: 给 mujica 擦屁股 2025-11-03 22:28:11 +08:00
Constrat
c7db6347f9 fix: move from Template to OcrDetect for BattleQuickFormationClear
Needed after yostar keeps changing that stupid button
2025-11-03 13:13:37 +01:00
status102
45528c282d perf: 空stack trace输出 2025-11-03 13:51:39 +08:00
uye
7b31ad3417 fix: 部分情况下 钼铅 识别错误 2025-11-03 13:11:19 +08:00
晓丶梦丶仁
9842cb962e fix: JP 1ns ocr 2025-11-03 11:54:32 +08:00
uye
4edf48b2e5 fix: OS 小游戏回合结束改用 ocr 2025-11-03 00:20:14 +08:00
uye
9d58a1c5be fix: 结束回合按钮怎么还会闪烁啊 2025-11-02 23:23:08 +08:00
MistEO
b73377eb6a refactor: use MaaUtils instead of Utils (#14579)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-11-02 23:19:38 +08:00
uye
2394480583 fix: 动画或卡顿导致概率无法使用无人机
fix #14620
2025-11-02 22:32:27 +08:00
uye
e09b984a15 Revert "fix: 增加从主页进入终端的延迟"
This reverts commit 6a09f44a09.
2025-11-02 18:44:44 +08:00
萨拉托加
6a09f44a09 fix: 增加从主页进入终端的延迟
fix #14617
2025-11-02 17:47:05 +08:00
uye
79f69ae511 Release v5.27.2 (#14605) 2025-11-02 16:57:02 +08:00
uye
defeedcd82 docs: Update CHANGELOG with recent fixes and features 2025-11-02 16:56:12 +08:00
uye
9b463e0a05 fix: fix: 技能点击范围会点到装备应变 (#14611) 2025-11-02 16:54:15 +08:00
萨拉托加
bda15f1074 fix: 技能点击范围会点到装备应变 (#14611) 2025-11-02 16:48:49 +08:00
github-actions[bot]
7d3d40ab37 chore: Auto Templates Optimization
Triggered by 59ed067254

[skip changelog]
2025-11-02 08:45:23 +00:00
pre-commit-ci[bot]
59ed067254 chore: Auto update by pre-commit hooks [skip changelog] 2025-11-02 08:44:24 +00:00
uye
3d6541d337 docs: Update CHANGELOG for version 5.27.2 2025-11-02 16:43:36 +08:00
uye
62c3dbd126 feat: OS-喀兰贸易研发部 小游戏 (#14615) 2025-11-02 16:41:26 +08:00
Constrat
866ed07d0c fix: Ines regex EN 2025-11-01 17:41:59 +01:00
萨拉托加
340a121528 fix: 肉鸽商店投资界面加一点延迟 2025-11-01 23:15:46 +08:00
github-actions[bot]
76b5c3380a docs: Auto Update Changelogs of v5.27.2 (#14606)
* docs: Auto Generate Changelog of Release v5.27.2

* docs: Update CHANGELOG for v5.27.2

Update CHANGELOG for version 5.27.2 with new features, improvements, and bug fixes.

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-11-01 23:09:29 +08:00
uye
e40307f107 fix: 无法迁移就资源路径文件 2025-11-01 22:04:45 +08:00
uye
015dcbcc4f chore: SideStoryStage ocrReplace 2025-11-01 21:18:03 +08:00
Constrat
6b9612c356 fix: erosion resistant device regex fix for EN 2025-11-01 14:08:22 +01:00
MistEO
a0513fcfac Release v5.27.1 (#14598) 2025-11-01 19:06:22 +08:00
MistEO
79fce90bf8 ci: 算了你还是取消吧 2025-11-01 19:04:22 +08:00
MistEO
81793fc040 ci: fix cancel 2025-11-01 19:01:07 +08:00
MistEO
b3673409ac ci: dev do not auto cancel build 2025-11-01 18:54:31 +08:00
Hao Guan
2fa55fe15d fix(mac): 修复MaaUtils库位置 2025-11-01 18:48:30 +08:00
MistEO
a1141d2574 docs: v5.27.1 changelog 2025-11-01 18:47:11 +08:00
Hao Guan
6ba037ab4d fix(mac): GUI缺少MaaUtils库 2025-11-01 18:41:23 +08:00
SherkeyXD
011d953ffc feat: SideStory「雪山降临1101」导航 2025-11-01 18:15:43 +08:00
Copilot
cd88fd3c51 docs: fix boolean capitalization in C# documentation comments (#14599)
* Initial plan

* fix: correct boolean capitalization in C# doc comments

Co-authored-by: lucienshawls <82591976+lucienshawls@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: lucienshawls <82591976+lucienshawls@users.noreply.github.com>
2025-11-01 18:06:35 +08:00
MistEO
08105aa96d fix: macos MaaXCFramework 2025-11-01 17:53:46 +08:00
HY
ba1fb36627 chore: 繁中服第十五章 & 重複訪問好友 text (#14594) 2025-11-01 17:51:23 +08:00
Lucien Shaw
b459e7149e build: bump MaaDeps to v2.10.1-maa.1 (#14596) 2025-11-01 17:51:00 +08:00
MistEO
d20030ae98 Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-01 17:50:27 +08:00
Lucien Shaw
0a566e4954 ci: 更新最新工作流的部分显示名称和部分代码注释中的表达 (#14597)
* ci: name change for submodule update workflows

* ci: if failed -> on failure

* docs: 代码注释中,succeeded与failed相对
2025-11-01 17:48:16 +08:00
MistEO
521dc3fc71 fix: xcframework typo 2025-11-01 17:46:52 +08:00
MistEO
a781c316d3 fix: macos xcframework 2025-11-01 17:39:57 +08:00
MistEO
ac01713331 ci: remove libMaaUtils.dylib headers 2025-11-01 17:38:10 +08:00
MistEO
70204e9047 build: try to fix macos package
https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues/14595
2025-11-01 17:37:06 +08:00
HX3N
48ace472a8 i18n: KR varius translations (#14591) 2025-11-01 09:50:31 +01:00
Lucien Shaw
0ae7f8878d chore: 调整devcontainer环境构建流程,使其适应MaaUtils (#14580)
1. devcontainer 创建时,更新并拉取子模块
2. 更改 MaaCore 下的 CMakeLists.txt,适应不知道哪里冒出来的 --no-allow-shlib-undefined 限制

* chore: devcontainer创建时更新子模块

* build: 尝试修复链接目标未定义的问题

* build: 将改动限于Linux
2025-11-01 16:05:00 +08:00
uye
cd1b4231ec chore: ClickStageName 同步 ClickedCorrectStage ocrReplace 2025-11-01 15:37:57 +08:00
uye
b63b4aa50e fix: 关卡复核错误 2025-11-01 15:05:18 +08:00
uye
bbc09712c0 Release v5.27.0 (#14581) 2025-11-01 14:44:34 +08:00
uye
9e028b6c97 docs: Fix formatting and grammar in CHANGELOG.md
Correct formatting and grammar in CHANGELOG entries.
2025-11-01 14:43:52 +08:00
github-actions[bot]
8fbe22396f chore: Auto Update Game Resources - 2025-11-01
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18991434628

[skip changelog]
2025-11-01 04:31:25 +00:00
github-actions[bot]
e9a8773fdf docs: Auto Update Changelogs of v5.27.0 (#14582)
Co-authored-by: MistEO <18511905+MistEO@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: AnnAngela <naganjue@vip.qq.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2025-11-01 10:22:26 +08:00
github-actions[bot]
f1c680c978 chore: Auto Templates Optimization
Triggered by 9b5419708a

[skip changelog]
2025-10-31 23:09:26 +00:00
github-actions[bot]
9b5419708a chore: Auto Update Game Resources - 2025-10-31
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18987286934

[skip changelog]
2025-10-31 23:09:02 +00:00
uye
8b9f851a39 fix: 亮色模式下无法显示 “坍缩范式列表” 2025-10-31 23:57:15 +08:00
Constrat
646691e47e i18n: various english translations 2025-10-31 14:06:44 +01:00
github-actions[bot]
cedd8f4d93 chore: Auto Update Game Resources - 2025-10-31
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18968441578

[skip changelog]
2025-10-31 09:31:19 +00:00
HX3N
eca68a0504 i18n: KR tweak MuMu12ExtrasEnabledTip 2025-10-31 18:14:11 +09:00
MistEO
4f9484c31a ci: add env for release-preparation 2025-10-31 16:53:43 +08:00
MistEO
91ea7067f7 refactor: 集成 MaaUtils (#14578)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-10-31 14:56:56 +08:00
SherkeyXD
ae300aa00d docs: 修正插件相关描述 2025-10-31 14:13:21 +08:00
github-actions[bot]
cc50b58ca2 chore: Auto Update Game Resources - 2025-10-30
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18946105155

[skip changelog]
2025-10-30 15:32:25 +00:00
github-actions[bot]
11d427786e chore: Auto Update Game Resources - 2025-10-30
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18933497361

[skip changelog]
2025-10-30 07:45:10 +00:00
MistEO
02edf491c5 docs: Sync documents in all languages, Powered by AI (#14572)
Co-authored-by: MistEO <18511905+MistEO@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
2025-10-29 23:49:12 +08:00
Lucien Shaw
0f9dd867a9 ci: 补全子模块更新工作流的显示名称 2025-10-29 16:16:07 +08:00
MistEO
4159c07437 ci: perf commit log 2025-10-29 16:00:33 +08:00
MistEO
2fe6583328 Merge branch 'dev' of https://github.com/MaaAssistantArknights/MaaAssistantArknights into dev 2025-10-29 15:54:46 +08:00
MistEO
dbfea1e38a ci: update submodules for release PR, and rename gen-changelog -> release-preparation 2025-10-29 15:54:41 +08:00
github-actions[bot]
8ed6accb45 feat: Update Submodules MaaMacGui, maa-cli 2025-10-29 07:46:41 +00:00
MistEO
c9aa40f4ee ci: fix update submodules 2025-10-29 15:45:37 +08:00
MistEO
576904acc1 ci: update submodules 2025-10-29 15:42:10 +08:00
Status102
f9366249e1 feat: 记录crash log时同时记录stacktrace, 并允许 ASST_DEBUG 在 debug 目录下生成 crash.log (#14526)
* feat: 记录crash log时同时记录stacktrace, 并允许 ASST_DEBUG 在 debug 目录下生成 crash.log

* fix: 加个循环次数限制

* perf: 简单整理
2025-10-29 02:36:46 +08:00
Status102
cd0d075d8d feat: LogInfo 等宏支持is_enabled (#14551)
feat: LogInfo 等宏支持is_enable
2025-10-29 02:02:10 +08:00
uye
7332589d04 Release v5.27.0-beta.2 (#14556) 2025-10-29 01:27:33 +08:00
uye
0101fde3c0 docs: Update CHANGELOG with new fix entry
[skip changelog]
2025-10-29 01:27:11 +08:00
uye
8c7c47251a fix: 无法加载 cache 资源
fix #14451
2025-10-29 01:05:05 +08:00
github-actions[bot]
d874df3c2c docs: Auto Update Changelogs of v5.27.0-beta.2 (#14567)
* docs: Auto Generate Changelog of Release v5.27.0-beta.2

* docs: Update CHANGELOG for v5.27.0-beta.2

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-10-29 00:50:07 +08:00
Weiyou Wang
5b33ff3ab6 fix: 改用 CustomeSkip 来跳过新时装动画 (#14566)
* feat: 改用 CostumeSkip 来跳过新时装动画

* fix: 删除 SS@Store@Purchase@NextAfterMerelyWaiting,任务 GetCloth 改名为 WearCostume

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-10-29 00:43:45 +08:00
github-actions[bot]
f5c6c96184 chore: Auto Update Game Resources - 2025-10-28
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18875534231

[skip changelog]
2025-10-28 12:59:11 +00:00
萨拉托加
7e35a6499c Revert "chore: 同心暂时去掉5选项"
This reverts commit cb9bc0f87f.
2025-10-28 20:48:20 +08:00
Weiyou Wang
529ca6a7fc feat: 界园肉鸽不期而遇实现选项识别 (#14540)
* feat: RoguelikeEncounterOptionAnalyzer

* feat: 界园肉鸽实验性功能 -- 识别选项数量后调整选项

* chore: Auto update by pre-commit hooks [skip changelog]

* refactor: 跳过不可用选项

* refactor: 设置初次滑动

* refactor: 给 save_img 日志加点描述

* feat: 加个 get_img 接口,以便于获得合成图

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: 不是你怎么没有 formatter 啊?

* refactor: 把分析数据存储在插件成员变量内,为未来重构打基础

* refactor: 把不期而遇选项识别结果输出移到插件中,加入 callback

* feat: 无法识别选项文字时保存图片

* refactor: 给 save_img 日志加点描述

* refactor: int -> size_t

* refactor: choose -> select

* refactor: sort functions

refacor: sort functions

* refactor: 用 option_analyzed 来判断是否已经识别过不期而遇选项

* fix: 去掉不必要的参数 theme

* refactor: 给 OCR 配置任务加点东西(大概率没什么用吧)

* refactor: 去掉内部接口中的冗余 sanity check

* feat: 加入 view 控制

* fix: 忘了 callback 不能用 const

* feat: 处理一下 edge case

* feat: 来点 WpfGui Log

* fix: typo

* fix: 一些漏网之鱼

* fix: 再调整下滑动距离

* fix: 什么乱七八糟的

* fix: 什么乱七八糟的

* fix: 方向错了,加点 Log

* fix: 修正长图识别 roi

* fix: 再调整一下 roi

* fix: 所以说不建议再睡眠不好的时候糊屎

* fix: 对不可选选项的模版进行二值化后再 OCR

* fix: 好像得考虑一下通道

* fix: 删掉无用参数

* refactor: 再整理一下代码,减少冗余

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: 再缩小点 roi

* fix: 加点延迟

* fix: clang-tidy 说这样写

* feat: 把 debug 截图加回来,收工

* docs: 给任务链加点注释

* docs: 给 RoguelikeEncounterOptionAnalyzer 加点注释

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-10-28 20:46:06 +08:00
Lucien Shaw
3a75653fbb docs: 更正文档编写指南的一处typo 2025-10-28 20:32:38 +08:00
Lucien Shaw
655ab65682 docs: 对codespace相关链接进行小修小补 (#14564)
* docs: add links for home page of codespaces

* docs: 去除codespace徽章链接里意义不明的color参数
2025-10-28 20:07:41 +08:00
Weiyou Wang
bffbe8d633 fix: 调换使用错误的排序函数 (#14555) 2025-10-28 20:02:34 +08:00
dependabot[bot]
1dcf2a42a7 ci: bump the github-actions group in /.github/workflows with 2 updates (#14553)
Bumps the github-actions group in /.github/workflows with 2 updates: [actions/upload-artifact](https://github.com/actions/upload-artifact) and [actions/download-artifact](https://github.com/actions/download-artifact).


Updates `actions/upload-artifact` from 4 to 5
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v4...v5)

Updates `actions/download-artifact` from 5 to 6
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: actions/download-artifact
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-28 11:32:20 +01:00
Lucien Shaw
846d76f137 docs: 接入DeepWiki (#14563)
* docs: 使用DeepWiki徽章和链接

* docs: 开发文档中加入deepwiki的指引

* docs: fix typo
2025-10-28 18:27:19 +08:00
Weiyou Wang
1ea6833ffe fix: 给生息演算点击 "开始行动" 的任务加点延迟,防止错过确认弹窗 2025-10-28 21:17:32 +11:00
MistEO
5e097de000 docs: 全语言开发文档章节整理 (#14562)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-10-28 16:00:58 +08:00
uye
8a45b1717e fix: 猪玛写 switch 不写 break 2025-10-28 15:54:12 +08:00
MistEO
fad876527a docs: 把codespace移到犄角旮旯 (#14560)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-10-28 15:28:29 +08:00
uye
5b7fe1c7e9 chore: 调整雷电截图增强提示,强制要求模拟器分辨率为横屏模式 2025-10-28 15:21:08 +08:00
uye
6ee884772b chore: 调整连接失败尝试启动模拟器的描述 2025-10-28 15:12:57 +08:00
uye
69ea005af3 perf: 主线导航目标关卡默认在屏幕内时不再划到最右边后往前寻找 2025-10-28 15:12:57 +08:00
Lucien Shaw
7caca829a1 chore: 移除devcontainer轻量环境的部分非必要依赖 (#14499)
对 devcontainer 的改动如下:
1. 在轻量环境中,
   - 移除 `python` 及其相关格式化扩展 `black` 和 `isort`
   - 移除 `black` 和 `isort` 等 pip 包
2. 在所有环境中,
   - 将 VS Code 的默认主题设置为 `Default Dark Modern`

* chore: 移除devcontainer轻量环境的部分非必要依赖

* chore: 将编辑器默认颜色主题调整为暗色

* chore: 将空白环境的post-create脚本独立,与其它环境一致

* chore: 把maa扩展加回来
2025-10-28 11:58:09 +08:00
萨拉托加
d59144c549 chore: 重复访问好友添加Ocr兜底 2025-10-28 10:02:03 +08:00
Weiyou Wang
2b245d291d fix: 界园肉鸽放弃探索改用纯色匹配 (#14532)
* fix: 界园肉鸽放弃探索改用普通模版匹配

chore: Auto update by pre-commit hooks [skip changelog]

* fix: 换用 HSV + pureColor

* refactor: 模版也用同样的 color scales 处理一下

* chore: Auto update by pre-commit hooks [skip changelog]

* refactor: 进一步修正 HSV 范围

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-10-28 01:42:00 +08:00
uye
a1e1df535a feat: 增加纯数色匹配 (#14536)
* feat: 增加纯数色匹配

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: 更新 schema

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-10-28 01:41:25 +08:00
github-actions[bot]
bdb49d8395 chore: Auto Templates Optimization
Triggered by a3523789d1

[skip changelog]
2025-10-27 15:44:45 +00:00
uye
a3523789d1 feat: 添加主线 16 章导航 2025-10-27 23:44:19 +08:00
github-actions[bot]
39aca97640 chore: Auto Update Game Resources - 2025-10-27
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18846503435

[skip changelog]
2025-10-27 15:30:28 +00:00
uye
04e454b3e0 feat: 支持生息演算与肉鸽遇到不认识的主题时自动切换 2025-10-27 23:24:52 +08:00
uye
4190e3c421 feat: 添加 生活队凹开局密文板 与 坍缩范式列表 TooltipBlock 2025-10-27 23:00:36 +08:00
萨拉托加
f19d49bf95 fix: 齐聚主题无法导航肉鸽和生息演算 2025-10-27 22:35:15 +08:00
uye
559ea25856 feat: core 异常退出 ui 添加日志记录 2025-10-27 18:27:52 +08:00
Constrat
88b6ceb4d0 fix: ocr for Executor the Ex Foedere for EN 2025-10-27 11:25:50 +01:00
uye
b126016538 fix: ja-jp 泰拉大陆调查团 识别错误
fix #14547
2025-10-27 16:01:27 +08:00
SherkeyXD
06454db032 chore: 添加 png 后缀 2025-10-27 15:30:13 +08:00
Weiyou Wang
1d11f4c1a4 chore: WpfGui 增加对界园肉鸽 DLC 1 三个新分队的支持 2025-10-27 14:55:00 +08:00
Weiyou Wang
a17e997e38 refactor: polish PixelAnalyzer a bit (#14538) 2025-10-27 00:12:47 +11:00
status102
df7207dfb0 chore: 增加wpf项目cmake build脚本 2025-10-26 02:17:55 +08:00
AnnAngela
a05a141fea chore: 更新 Windows 模拟器文档,调整支持列表并添加详细说明 (#14534) 2025-10-25 22:48:46 +08:00
github-actions[bot]
4e52dba787 chore: Auto Templates Optimization
Triggered by dc0751b1e2

[skip changelog]
2025-10-25 14:07:57 +00:00
github-actions[bot]
dc0751b1e2 chore: Auto Update Game Resources - 2025-10-25
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18804107643

[skip changelog]
2025-10-25 14:07:23 +00:00
uye
2b179c673c chore: ui 日志增加 adb devices 输出 2025-10-24 23:11:40 +08:00
uye
e48cb49e4a chore: 基建降低会清空其他干员效率的技能优先级
fix #14524
2025-10-24 22:51:31 +08:00
github-actions[bot]
7f7b124bc7 chore: Auto Update Game Resources - 2025-10-24
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18781459022

[skip changelog]
2025-10-24 13:38:14 +00:00
uye
2c656db087 Release v5.27.0-beta.1 (#14502) 2025-10-24 00:24:44 +08:00
SherkeyXD
63420e9808 docs: 优化文档代码的高亮主题 2025-10-23 23:24:47 +08:00
github-actions[bot]
d8207fb5b5 docs: Auto Update Changelogs of v5.27.0-beta.1 (#14523)
* docs: Auto Generate Changelog of Release v5.27.0-beta.1

* docs: Fix formatting and update entries in CHANGELOG.md

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-10-23 23:19:40 +08:00
萨拉托加
cb9bc0f87f chore: 同心暂时去掉5选项 2025-10-23 23:04:04 +08:00
Weiyou Wang
f863a6f4b6 fix: 降低萨米肉鸽进入 “诡秘的预感” 所需模版匹配分数阈值 (#14521) 2025-10-23 22:46:10 +08:00
萨拉托加
2651b1bc01 fix: 公招按钮roi错误
fix #14514
2025-10-23 12:12:32 +08:00
晓丶梦丶仁
99b4e75567 fix: JP Task.png (#14516)
* fix: JP Task.png
2025-10-23 12:10:31 +08:00
Weiyou Wang
904a8f3d4c fix: 掉落识别修复 (#14508) 2025-10-23 01:15:22 +08:00
github-actions[bot]
7c710fcee5 chore: Auto Templates Optimization
Triggered by a6a3451217

[skip changelog]
2025-10-22 16:06:15 +00:00
pre-commit-ci[bot]
a6a3451217 chore: Auto update by pre-commit hooks [skip changelog] 2025-10-22 16:05:45 +00:00
pre-commit-ci[bot]
93a0e2d4a1 chore: Auto update by pre-commit hooks [skip changelog] 2025-10-23 00:03:17 +08:00
SherkeyXD
7f6622e51d feat: 界面主题「齐聚」 2025-10-23 00:03:17 +08:00
SherkeyXD
0b533468d1 chore: GetImageFromRoi 工具优化 2025-10-23 00:03:17 +08:00
Constrat
6d26ccace1 chore: remove global templates for 3294b29f54 2025-10-22 17:03:58 +02:00
HY
c101f9cea6 chore: txwy add SwitchTheme@ConfirmThemeChange.png (#14511)
* chore: txwy add SwitchTheme@ConfirmThemeChange.png

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-10-22 16:29:46 +02:00
github-actions[bot]
f5921c7293 chore: Auto Update Game Resources - 2025-10-22
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18715072426

[skip changelog]
2025-10-22 11:45:27 +00:00
Weiyou Wang
880bdea7d3 refactor: 将 Copilot ActionType::ResetTimer 更改为更适合的 ResetStopwatch (#14507)
* refactor: 为 ActionType::ResetTimer 加入中文变种

* refactor: Timer -> Stopwatch
2025-10-22 22:20:50 +11:00
Weiyou Wang
9c53ea10c6 docs: 补充模拟器相关文档和协议文档 (#14478)
* docs: 为 #13913 跳过使用未准备好的技能 && 全局计时器补充作业协议文档

* docs: MuMu 模拟器显存使用策略警告。

* docs: 删除冗余的蓝叠模拟器 faq

* docs: 补充外服 CopilotTask 文档

* docs: 改改

* docs: timer -> stopwatch

docs: 繁体中文文档里的指令简体化 —— 我们并不支持繁体指令啊

---------

Co-authored-by: Rbqwow <55343783+Rbqwow@users.noreply.github.com>
2025-10-22 21:49:20 +11:00
uye
9ea6057145 fix: 变更弃用的参数 2025-10-22 17:04:51 +08:00
uye
05b377981a fix: 开始唤醒会回到主界面 2025-10-22 16:49:38 +08:00
github-actions[bot]
465c2bcf62 chore: Auto Templates Optimization
Triggered by 3294b29f54

[skip changelog]
2025-10-22 08:44:58 +00:00
uye
3294b29f54 chore: 调整截图 2025-10-22 16:44:25 +08:00
uye
f967903a4b feat: 资源更新完成后等待空闲时再加载
fix: #14500
2025-10-22 16:35:51 +08:00
萨拉托加
7622cff5b4 feat: 界园DLC新关卡战斗逻辑 2025-10-22 15:34:53 +08:00
github-actions[bot]
4e36c78691 chore: Auto Templates Optimization
Triggered by afb0f8f647

[skip changelog]
2025-10-22 07:15:00 +00:00
uye
afb0f8f647 chore: 文件路径错误 2025-10-22 15:14:22 +08:00
Weiyou Wang
35e437d372 fix: 尝试为活动商店小游戏适配新的时装购买动画 (#14490)
* fix: 尝试为活动商店小游戏适配新的时装购买动画

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-10-22 15:00:52 +08:00
Initial-heart
3d9732a930 docs: 添加关于实体设备上账号切换问题的说明 (#14468)
* docs: 加一段关于实体设备上账号切换问题的说明

rt

* docs: 调整措辞和格式

* docs: 修正措辞

* docs: ko-kr

* i18n: en-us translation

* i18n: ja-jp translation

* docs: zh-tw

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: Lucien Shaw <myxlc55@outlook.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
Co-authored-by: momomochi987 <as99us301@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-10-22 09:15:39 +08:00
github-actions[bot]
d12588f62b chore: Auto Templates Optimization
Triggered by e3d48ae65d

[skip changelog]
2025-10-22 00:47:15 +00:00
Manicsteiner
e3d48ae65d chore: YostarJP SwitchTheme@ConfirmThemeChang 2025-10-22 08:46:15 +08:00
HX3N
2a2e360f3e chore: YostarKR add SwitchTheme@ConfirmThemeChang
ref 979e0c4b1b
2025-10-22 08:46:54 +09:00
Constrat
df5af18b93 fix: precommit maacore 2025-10-21 21:02:23 +02:00
Constrat
55b3cdafaa chore: add SwitchTheme@ConfirmThemeChange.png 2025-10-21 21:02:13 +02:00
github-actions[bot]
538760dbbe chore: Auto Templates Optimization
Triggered by 979e0c4b1b

[skip changelog]
2025-10-21 18:29:00 +00:00
uye
979e0c4b1b feat: 不是我认识的主题,直接切换 2025-10-22 02:28:17 +08:00
github-actions[bot]
d9eb1e50d9 chore: Auto Update Game Resources - 2025-10-21
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18689594250

[skip changelog]
2025-10-21 15:46:43 +00:00
Constrat
7e9f862f62 test: remove cancelled() and add mentions 2025-10-21 15:31:56 +02:00
Constrat
20c86b0fff fix: change default issue + remove always as not necessary 2025-10-21 15:31:06 +02:00
Constrat
072a98dd41 fix: add always() 2025-10-21 15:26:20 +02:00
Constrat
a053e6547d ci: test using a single issue by adding comments and hiding previous comments 2025-10-21 15:23:17 +02:00
Constrat
bfcb02104c ci: increase sleep delay for resource updater 2025-10-21 14:42:01 +02:00
Lucien Shaw
1e9ae031ea ci: refine display names for existing workflows (#14419)
---------

Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2025-10-21 14:37:49 +02:00
github-actions[bot]
d70d939947 chore: Auto Templates Optimization
Triggered by 37ad3a2f35

[skip changelog]
2025-10-21 09:10:28 +00:00
github-actions[bot]
37ad3a2f35 chore: Auto Update Game Resources - 2025-10-21
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18678814343

[skip changelog]
2025-10-21 09:09:47 +00:00
github-actions[bot]
7d233513ff chore: Auto Update Game Resources - 2025-10-21
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18676270061

[skip changelog]
2025-10-21 07:29:13 +00:00
Goat Boring(山羊博宁88)
b93d39b77e docs: 在不支持列表中添加腾讯应用宝 (#14477)
* docs: Add Tencent App Treasure note in notSupport list

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-10-21 10:49:00 +08:00
Constrat
c91c1ff279 style: run prettier as there's missing stuff apparently 2025-10-20 21:30:13 +02:00
status102
d7524a4f9e perf: 进入新任务后重置任务超时计时器, 以避免非单任务卡阻的误报 2025-10-21 03:00:35 +08:00
status102
fff05d45b5 perf: ProcSubTask static 2025-10-21 02:36:49 +08:00
SherkeyXD
201c856594 chore: 我是铸币 2025-10-21 00:12:33 +08:00
SherkeyXD
97756b1200 feat: 界园 dlc2 通宝数据更新 2025-10-20 23:48:16 +08:00
uye
79bea9b98d fix: 无人机协助点击无效时增加自动重试机制
fix #13327
2025-10-20 23:37:52 +08:00
dependabot[bot]
f94a79a1a3 ci: bump actions/setup-node from 5 to 6 in /.github/workflows in the github-actions group (#14475)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-20 23:30:34 +08:00
Status102
eb90a19e8b docs: 增加换行以提升文档在GitHub的阅读体验 (#14338) 2025-10-20 23:27:04 +08:00
SherkeyXD
957b486c53 fix: 每日任务领取延迟载荷移位 2025-10-20 23:20:37 +08:00
SherkeyXD
87a892ad7a fix: 每日任务领取因为延迟卡住 2025-10-20 23:16:00 +08:00
SherkeyXD
363c4dbb47 docs: vscode插件文档视觉优化 2025-10-20 22:32:59 +08:00
SherkeyXD
b639fd3a62 docs: 利用tabs优化视觉表现-part2 2025-10-20 22:32:58 +08:00
SherkeyXD
8bbd104ea6 docs: 利用tabs优化视觉表现 2025-10-20 22:32:58 +08:00
uye
b63bd4b6eb feat: 支持剿灭关卡名识别 2025-10-20 22:27:26 +08:00
SherkeyXD
7264f26b14 docs: 利用步骤容器优化视觉效果-part2 2025-10-20 21:50:56 +08:00
SherkeyXD
e3be737a3c docs: 利用步骤容器优化视觉效果 2025-10-20 21:45:29 +08:00
SherkeyXD
e5a823d476 docs: 更新algolia配置 2025-10-20 21:27:43 +08:00
uye
25513ab692 chore: ALL~ the Announcements 中新公告标题中加 * 2025-10-20 21:26:10 +08:00
HY
26acc07463 fix: 繁中服無法進入資源收藏關卡 (#14469) 2025-10-20 10:23:43 +08:00
Constrat
38a801a8c1 i18n: translate ElapsedTime
ref: 1edd006982
2025-10-20 01:16:31 +02:00
Weiyou Wang
1edd006982 feat: 跳过使用未准备好的技能 && 全局计时器 (#13913)
* feat: skip_if_not_ready

* feat: elapsed_time

* feat: WpfGui log 输出计时器信息

* chore: Auto update by pre-commit hooks [skip changelog]

* feat: 不默认启用全局计时器

* refactor: 支持 ResetTimer 拼写变种

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-10-20 01:35:37 +11:00
Weiyou Wang
45025dd168 fix: 为界园放弃探索任务添加备用模版 (#14466)
* fix: add alternative template for JieGarden@Roguelike@Abandon

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-10-19 23:19:59 +11:00
github-actions[bot]
3b10c1518a chore: Auto Update Game Resources - 2025-10-19
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18630203409

[skip changelog]
2025-10-19 12:12:03 +00:00
Weiyou Wang
5efdab7fbf fix: 肉鸽跳一战打一战刷钱 (#14450)
* refactor: 在 RoguelikeConfig 中加入 skip_recruit_in_fast_pass flag,用于判断是否在特定情况下跳过招募

* refactor: refine 一下 RoguelikeRecruit-GiveUp 任务

* refactor: 重命名 RoutingStrategy

* feat: 一战快速投资/烧水

* refactor: 合并冗余 Roguelike@RoutingConfig 任务,重命名为 RoguelikeRouting-Config

* refactor: 统一 RoguelikeRoutingAction 命名

* refactor: 统一导航插件任务命名

* refactor: 这些任务不需要用 RoguelileRoutingAction

* fix: 重命名相关模版

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: 漏网之鱼

* refactor: MapNode 模版搬家

* refactor: 岁兽残识导航相关任务搬家

* refactor: 改改任务名

* refactor: 模版改名 Roguelike@MapNodeX -> RoguelikeMapNode-X

* refactor: 换一个似乎更简单的写法

* fix: 忘了外服了

* refactor: 漏了这个

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: 修修

* fix: 继续修修

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-10-19 22:49:08 +11:00
uye
930de73324 feat: 本次更新的公告右上角添加红点 2025-10-18 23:22:58 +08:00
萨拉托加
527ebee6af fix: 傀影不期而遇选项 2025-10-18 20:27:50 +08:00
github-actions[bot]
c24baee8ff chore: Auto Update Game Resources - 2025-10-18
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18613855248

[skip changelog]
2025-10-18 09:28:09 +00:00
Weiyou Wang
11f9d6e0a4 refactor: 拆出界园岁兽残识地图导航 (#14432)
* refactor: 舍弃 AbstractRoguelikeMap,拆到 RoguelikeMapConfig 与 RoguelikeBoskyPassageMap

* refactor: 拆出界园岁兽残识地图导航
2025-10-18 20:15:36 +11:00
Weiyou Wang
6733f49d8b fix: 界园 dlc 背景无法放弃探索 (#14425)
* fix: refine template for JieGarden@Roguelike@Abandon

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-10-18 15:27:27 +08:00
萨拉托加
e7f909c807 fix: 界园狭路相逢选项 2025-10-18 10:39:36 +08:00
HX3N
147cf766c1 fix: YostarKR RoguelikeCustom-HijackSquad squad recognition 2025-10-18 00:37:52 +09:00
HY
b9edba6cf5 chore: 繁中服主線、肉鴿導航 UI 更新 (#14433)
* chore: 繁中服主線、肉鴿導航 UI 更新

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: sarkaz DLC

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-10-17 22:43:27 +08:00
HY
39326e177b chore: 繁中服「輓歌燃燒殆盡」活動導航 (#14434)
* chore: 繁中服「輓歌燃燒殆盡」活動導航

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-10-17 22:42:22 +08:00
萨拉托加
e6cfa25f81 fix: Award模板阈值还是小了
fix #14431
2025-10-17 19:53:26 +08:00
MistEO
2c247bbeda fix: 掉落识别增加越界检查 (#14312)
Co-authored-by: Weiyou Wang <44151844+Alan-Charred@users.noreply.github.com>
2025-10-17 16:08:54 +08:00
萨拉托加
af69b6172c fix: 界园杂疑选项 2025-10-17 14:22:55 +08:00
github-actions[bot]
5626880d19 chore: Auto Update Game Resources - 2025-10-17
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18584128794

[skip changelog]
2025-10-17 06:11:57 +00:00
Jim-Happy
445ce5352f fix: 修复 "设置-外部通知" 存在多个通知渠道时只会发送到第一个成功的渠道问题 (#14380)
* feat: 添加选项:发送到所有通知渠道

* style: 删除调试注释

* refactor(settings): 删除原PR逻辑,改为修复通知驱动只通知一个的bug

删除原PR逻辑,改为修复通知驱动只通知一个的bug
2025-10-17 13:55:29 +08:00
travellerse
dce6fbfbce feat: 添加刷常乐节点策略 (#13868)
* feat: 支持识别常乐节点的子类型

* perf: 将树洞节点优先级拆到配置里

* refactor: 将界园树洞策略从通用Routing策略中分离出来

* feat: 初步实现刷常乐节点

* feat: 为刷常乐节点功能添加UI

* refactor: 重命名节点类型获取函数

* perf: 优化节点类型的日志输出

* feat: 添加发现目标常乐节点后退出

* i18n: CN常乐节点显示文本

* fix: 修复type2name映射初始化潜在问题

* perf: 添加目标子类型的设置和获取方法

* refactor: 优化优先级节点类型解析逻辑

* feat: 刷常乐节点策略下保存路上的招募券

* i18n: 为其它语言提供占位

* perf: 将新增的本地化键值放到一起

* chore: 调整日志输出中的空格

* perf: 仅在非开局招募时保存招募券

* perf: 保留招募券到达上限时正常招募

* fix: 修复gui日志输出没有使用本地化

* fix: 给界园树洞节点点击加上200ms的前置延时

* perf: 在 RoguelikeRoutingTaskPlugin 中添加运行模式以区分普通地图与界园树洞

* refactor: 优化RoguelikeBoskyPassageMap的单例使用

* feat: 添加界园树洞节点类型wpf输出及其颜色配置

* fix: 不在每次开始肉鸽重置m_target_subtype
2025-10-17 16:54:30 +11:00
github-actions[bot]
724130da50 chore: Auto Update Game Resources - 2025-10-17
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18583431830

[skip changelog]
2025-10-17 05:29:46 +00:00
萨拉托加
12315868c7 fix: 界园肉鸽选项 2025-10-17 13:08:00 +08:00
萨拉托加
230b3b9169 fix: 给ClickToStartPoint加点延迟
fix #14421
2025-10-17 12:51:01 +08:00
github-actions[bot]
3c61b10de5 chore: Auto Update Game Resources - 2025-10-17
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18582491372

[skip changelog]
2025-10-17 04:31:47 +00:00
萨拉托加
5456428eb7 fix: 萨卡兹去伪存真弹窗有延迟无法退出 2025-10-17 12:21:06 +08:00
github-actions[bot]
1ca780ef0d chore: Auto Update Game Resources - 2025-10-17
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18581606017

[skip changelog]
2025-10-17 03:35:51 +00:00
HX3N
8f3ff813a1 chore: YostarKR SSS#8 SSSBuffChoose 2025-10-17 11:38:29 +09:00
Constrat
a4688ebeed chore: update SSS#8 buff choose ocr for EN 2025-10-16 22:08:30 +02:00
Constrat
7d028cdbd5 chore: SSS#8 global changes (add acahuallan, remove dossoles and barrenbeasts) 2025-10-16 22:03:28 +02:00
Constrat
ef187657ba fix: cleanup ifdef + fix AsstDestroy missed calls + lldb 2025-10-16 21:49:14 +02:00
Constrat
403f3c5644 Release v5.26.2 (#14399) 2025-10-16 20:08:32 +02:00
不留
369add1890 ci: 为 CodeQL 相关工作流添加仓库所有者检查 (#14413)
* ci: 为 CodeQL 相关工作流添加仓库所有者检查

* ci: 为 CodeQL 相关工作流添加仓库所有者检查
2025-10-16 20:04:23 +02:00
github-actions[bot]
0ae21436c8 chore: Auto Templates Optimization
Triggered by a322706241

[skip changelog]
2025-10-16 14:38:37 +00:00
pre-commit-ci[bot]
a322706241 chore: Auto update by pre-commit hooks [skip changelog] 2025-10-16 14:38:00 +00:00
Constrat
ec2b92002b fix: Fix contro center mini for EN 2025-10-16 16:34:34 +02:00
晓丶梦丶仁
36dd631606 fix: MiniGame Value 重复 2025-10-16 17:10:48 +08:00
github-actions[bot]
a201b3da65 chore: Auto Update Game Resources - 2025-10-16
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18556208810

[skip changelog]
2025-10-16 09:09:46 +00:00
晓丶梦丶仁
7421100998 fix: JP GreenGrass 2025-10-16 16:44:19 +08:00
萨拉托加
e98ff0ee35 fix: 萨米肉鸽深入探索触发暂时撤退会卡住 (#14275)
* fix: 萨米肉鸽深入探索触发暂时撤退会卡住

不知道MissionFailedFlag原来的next有什么用,暂时撤退的话感觉next个MissionCompletedFlag就够了

* chore: 加点延迟
2025-10-16 15:50:32 +08:00
Lucien Shaw
d7acdfda36 docs: 为文档站字符画组件更换缩放方法和添加主题切换支持 (#14387)
* docs: 文档站字符画组件的大小调整改用transform: scale

* docs: 字符画适应窗口垂直高度

* chore: 我们精简了字符画,这样你才知道这是字符画

* fix: 调整字符画尺寸前先判断分母是否为0

* refactor: 字符画组件卸载时一并移除窗体resize事件监听

* feat: 切换主题时保留当前随机到的字符画名称

* style: prettier fix
2025-10-16 15:37:39 +08:00
github-actions[bot]
6dfffdc45b chore: Auto Templates Optimization
Triggered by 6834ee1abe

[skip changelog]
2025-10-16 04:34:13 +00:00
HX3N
6834ee1abe fix: YostarKR update Infrast Mini tempalte 2025-10-16 13:28:54 +09:00
Manicsteiner
a571e974b6 chore: YostarJP RecruitingActivities 2025-10-16 08:58:16 +08:00
github-actions[bot]
2440f365c9 docs: Auto Update Changelogs of v5.26.2 (#14400)
* docs: Auto Generate Changelog of Release v5.26.2

* i18n: simple highlight for global

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2025-10-15 18:40:15 +02:00
Constrat
f182d36014 fix: RecruitingActivities EN 2025-10-15 16:18:03 +02:00
github-actions[bot]
cd6a3efc4e chore: Auto Update Game Resources - 2025-10-15
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18530257413

[skip changelog]
2025-10-15 13:19:46 +00:00
Manicsteiner
3ee20cee2e chore: YostarJP ocr update (#14402) 2025-10-15 11:01:05 +02:00
HX3N
d9aa14333e fix: KR update RecruitingActivities ocr text 2025-10-15 09:44:28 +09:00
github-actions[bot]
a1cc9df6bd chore: Auto Templates Optimization
Triggered by 9313a606f2

[skip changelog]
2025-10-15 00:10:10 +00:00
HX3N
9313a606f2 fix: BattleQuickFormation KR 2025-10-15 09:05:25 +09:00
github-actions[bot]
3c6c7624dd chore: Auto Templates Optimization
Triggered by 0e00b05128

[skip changelog]
2025-10-14 21:47:56 +00:00
Constrat
0e00b05128 fix: ReceptionMini for EN 2025-10-14 23:47:35 +02:00
Constrat
fbf8b5636d chore: revert temp fix 715c2c13b5 for EN / JP and KR
@momomochi987this will likely happen to txwy... Try to remember?
2025-10-14 23:26:08 +02:00
Constrat
c535cbdf6d fix: Various store OCR for EN IS 2025-10-14 23:20:56 +02:00
Constrat
a872c08a32 fix: MT minigame EN 2025-10-14 23:20:32 +02:00
Manicsteiner
ff457fbd21 chore: Enable phantom roguelike difficulty for Yostar servers (#14332)
* chore: enable phantom roguelike difficulty for Yostar servers

* chore: JP translate
2025-10-14 23:10:01 +02:00
Constrat
b4fcf37b35 i18n: update MT mini event EN 2025-10-14 23:09:04 +02:00
github-actions[bot]
b5ba39174d chore: Auto Templates Optimization
Triggered by 319ee8876a

[skip changelog]
2025-10-14 21:05:58 +00:00
Constrat
319ee8876a fix: operbox, battlequick, infrast expand role EN 2025-10-14 23:05:33 +02:00
Constrat
2a8b0f7f01 fix: Exusiai and Hoshiguma prepare for alters 2025-10-14 20:25:59 +02:00
Constrat
a7dc1f791f fix: increase ROI for Orundum and SpecialAccess 2025-10-14 20:04:16 +02:00
HX3N
16a160f3a5 chore: YostarKR MT ocr edit (#14398)
* chore: YostarKR MT ocr edit

* chore: IS1 dlc
2025-10-14 19:58:54 +02:00
Constrat
7676b7235b fix: OrundumActivities MT event for EN 2025-10-14 17:13:18 +02:00
github-actions[bot]
e100cc68e2 chore: Auto Update Game Resources - 2025-10-14
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18496105506

[skip changelog]
2025-10-14 12:14:33 +00:00
github-actions[bot]
5923efe988 chore: Auto Update Game Resources - 2025-10-14
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18494958090

[skip changelog]
2025-10-14 11:27:27 +00:00
HX3N
6b91bd8106 chore: YostarKR MiniGame (#14395)
* chore: YostarKR MiniGame

* chore: fix typo
2025-10-14 11:50:38 +02:00
github-actions[bot]
24df42e14a chore: Auto Update Game Resources - 2025-10-14
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18484871142

[skip changelog]
2025-10-14 03:49:09 +00:00
Manicsteiner
6fc5800e02 chore: YostarJP update VisitNext (#14390) 2025-10-13 16:17:00 +02:00
dependabot[bot]
eb91fc34a6 ci: bump the github-actions group in /.github/workflows with 2 updates (#14391)
Bumps the github-actions group in /.github/workflows with 2 updates: [softprops/action-gh-release](https://github.com/softprops/action-gh-release) and [github/codeql-action](https://github.com/github/codeql-action).


Updates `softprops/action-gh-release` from 2.3.4 to 2.4.1
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](https://github.com/softprops/action-gh-release/compare/v2.3.4...v2.4.1)

Updates `github/codeql-action` from 3 to 4
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: softprops/action-gh-release
  dependency-version: 2.4.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
- dependency-name: github/codeql-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-13 16:15:31 +02:00
萨拉托加
03f71f02cb chore: 调整Award模板阈值 2025-10-13 14:38:38 +08:00
github-actions[bot]
966c7a251a chore: Auto Templates Optimization
Triggered by 3b74c1c4c9

[skip changelog]
2025-10-12 12:50:04 +00:00
Constrat
3b74c1c4c9 fix: update ChooseDifficulty for EN phantom 2025-10-12 14:49:39 +02:00
Constrat
295e7742f1 fix: revert IS2 EN StrategyChange changes 2025-10-12 14:49:22 +02:00
Constrat
bfdd20f6ff fix: add IS2 invest mode to EN, JP and txwy
cc @Manicsteiner @momomochi987

28a768a changed unilaterally tasks that were dependant on global
5516809 fixed but I forgot to add Phantom back
2025-10-12 14:49:05 +02:00
MistEO
63cce9811f docs: update prts.plus repo link 2025-10-12 20:02:28 +08:00
MistEO
0bed1d777a docs: 移除前端公招 2025-10-12 19:59:57 +08:00
Constrat
8ec0974d1b ci: add ownership check to Deploy to GitHub Pages
thanks to @weinibuliu
2025-10-12 13:46:33 +02:00
不留
6d9a6e5a4b ci: Add repo owner judgment to some steps of website-workflow.yml (#14378)
* ci: 为 website-workflow 增加仓库所有者判断

* ci: update workflow

* ci: move ownership check to only configure-gh-pages

---------

Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2025-10-12 13:38:02 +02:00
Constrat
7079975bd2 chore: auto run smoke testing on tools/SmokeTesting modifications 2025-10-11 22:53:01 +02:00
Constrat
f06030ac44 ci(revert): remove lldb as it just crashed the workflow erroring out 2025-10-11 22:52:11 +02:00
Constrat
b56d60aa8f fix: POSIX compliant 2025-10-11 22:43:16 +02:00
Constrat
d7f936cb3c ci(fix): use sh for smoketesting 2025-10-11 22:34:24 +02:00
Constrat
b7b80ebbea fix: preload Minigame EN 2025-10-11 20:43:55 +02:00
HX3N
daa4eab296 chore: YostarKR preload minigame (#14375) 2025-10-11 20:35:16 +02:00
Constrat
fad643985e fix: python formatting 2025-10-11 12:52:05 +02:00
HX3N
b562b6b231 fix: KR monthly card reward 2025-10-11 08:19:26 +09:00
Lucien Shaw
aa89062bdf docs: 更新plume主题并适应新版的collections配置 (#14360)
* chore: 更新pnpm版本

* chore: 更新plume主题

* docs: 适应新版文档主题的collections配置

* style: pre-commit fix
2025-10-10 21:11:54 +08:00
github-actions[bot]
374e9ed1f2 chore: Auto Update Game Resources - 2025-10-10
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18406450197

[skip changelog]
2025-10-10 12:26:59 +00:00
Constrat
959063b34c fix(ci): task sorter UTF-8 BOM fix 2025-10-10 14:25:37 +02:00
Constrat
fbf16d00c1 chore: preload minigame for MT EN 2025-10-10 14:12:10 +02:00
Manicsteiner
bacc34531e chore: YostarJP MT stages and Duel channel (#14362)
* chore: YostarJP MT stages and Duel channel
2025-10-10 14:01:30 +02:00
HX3N
6507ac0072 chore: KR MT navigation (#14365)
* chore: KR MT navigation
2025-10-10 13:59:10 +02:00
Constrat
965b6f69ce fix: EN monthly card reward 2025-10-10 13:51:01 +02:00
github-actions[bot]
eb924b816d chore: Auto Templates Optimization
Triggered by 72bc6d8ace

[skip changelog]
2025-10-10 10:58:15 +00:00
HX3N
72bc6d8ace fix: YostarKR update VisitNext
ref #14357
2025-10-10 19:57:39 +09:00
Constrat
df1a16aca3 feat: preload MT navigation EN
@Manicsteiner @HX3N Just a heads up. The tweets have been posted
2025-10-10 12:16:51 +02:00
Constrat
87f4440209 fix: update VisitNext
ref #14357
2025-10-10 12:05:57 +02:00
uye
76252d42e3 style: c# 统一使用文件范围限定的 namespace 2025-10-10 13:36:18 +08:00
github-actions[bot]
cca22c1493 chore: Auto Update Game Resources - 2025-10-10
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18396496857

[skip changelog]
2025-10-10 04:31:39 +00:00
github-actions[bot]
b0ddb9e28e chore: Auto Templates Optimization
Triggered by 3195129fa7

[skip changelog]
2025-10-10 04:24:57 +00:00
uye
3195129fa7 feat: 支持访问好友半透明界面 2025-10-10 12:24:23 +08:00
status102
42bd5ceaf0 chore: 16-16地图 2025-10-10 12:01:13 +08:00
github-actions[bot]
aae1faef41 chore: Auto Update Game Resources - 2025-10-10
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18395654688

[skip changelog]
2025-10-10 03:34:29 +00:00
Constrat
baf3bc69ca i18n: remove global info for mumu 2025-10-10 00:11:14 +02:00
uye
fde7e7dfa4 Release v5.26.1 (#14351) 2025-10-10 01:08:02 +08:00
github-actions[bot]
0af9034bad docs: Auto Update Changelogs of v5.26.1 (#14352)
* docs: Auto Generate Changelog of Release v5.26.1

* docs: Release v5.26.1 with new features and fixes

This version introduces initial support for the Rebuilding Mandate and significant improvements to the Auto I.S. recruitment strategy, enhancing gameplay experience and fixing various issues.

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-10-10 00:50:43 +08:00
uye
516d47bb9d fix: 游戏更新公招界面后无法确认招募 (#14335)
* fix: 游戏更新公招界面后无法确认招募

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-10-10 00:32:48 +08:00
uye
afc16cf6e6 feat: 新增 cdk 被封禁的提示信息 2025-10-10 00:16:47 +08:00
uye
e52f573a7f fix: 第一次访问 mirror酱 失败时错误提示 cdk 已过期 2025-10-10 00:16:47 +08:00
MistEO
04206e7e5e ci: use sh install zsh to fix resource updater
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18378946272/job/52360092110

Zsh seems to treat the array as a whole string and cannot split it, resulting in traversal errors @Constrat
2025-10-09 22:16:48 +08:00
MistEO
8c71f709db fix: resource version 2025-10-09 21:22:38 +08:00
github-actions[bot]
7f6b490d00 chore: Auto Update Game Resources - 2025-10-09
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18377623299

[skip changelog]
2025-10-09 13:18:11 +00:00
github-actions[bot]
a0bd928f75 chore: Auto Update Game Resources - 2025-10-09
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18370407108

[skip changelog]
2025-10-09 08:33:27 +00:00
github-actions[bot]
fc7c823b9f chore: Auto Update Game Resources - 2025-10-09
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18367676923

[skip changelog]
2025-10-09 06:33:51 +00:00
MistEO
488b16e8e7 fix: Update last_updated date in version.json 2025-10-09 09:07:03 +08:00
MistEO
fcc146ad2a fix: Update last_updated timestamp in version.json 2025-10-09 09:06:16 +08:00
github-actions[bot]
64ec655631 chore: Auto Templates Optimization
Triggered by 35cf87547c

[skip changelog]
2025-10-08 23:09:46 +00:00
github-actions[bot]
35cf87547c chore: Auto Update Game Resources - 2025-10-08
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18360388224

[skip changelog]
2025-10-08 23:08:38 +00:00
uye
4db7a06f01 fix: 手动关闭模拟器后未重启 MAA 时 minitouch 可能失效 2025-10-08 16:48:27 +08:00
Weiyou Wang
24bb443e08 docs: 补充 CopilotTask 的文档 (#14319) 2025-10-08 19:28:21 +11:00
Weiyou Wang
02133548c4 fix: 尝试修复生息演算任务识别并删除编队时卡住的问题 (#14290)
* fix: 尝试修复生息演算任务识别并删除编队时卡住的问题

* refactor: 改用 #self
2025-10-08 16:07:45 +08:00
uye
eff2818404 refactor: 使用 BeginAnimation 替代 新建 Storyboard 并添加动画 2025-10-07 21:38:43 +08:00
dependabot[bot]
8017430308 ci: bump the github-actions group across 1 directory with 2 updates (#14311)
Bumps the github-actions group with 2 updates in the /.github/workflows directory: [softprops/action-gh-release](https://github.com/softprops/action-gh-release) and [actions/upload-pages-artifact](https://github.com/actions/upload-pages-artifact).


Updates `softprops/action-gh-release` from 2.3.3 to 2.3.4
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](https://github.com/softprops/action-gh-release/compare/v2.3.3...v2.3.4)

Updates `actions/upload-pages-artifact` from 3 to 4
- [Release notes](https://github.com/actions/upload-pages-artifact/releases)
- [Commits](https://github.com/actions/upload-pages-artifact/compare/v3...v4)

---
updated-dependencies:
- dependency-name: softprops/action-gh-release
  dependency-version: 2.3.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
- dependency-name: actions/upload-pages-artifact
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-07 15:28:22 +02:00
github-actions[bot]
9b10bb6e02 chore: Auto Update Game Resources - 2025-10-07
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18306279350

[skip changelog]
2025-10-07 08:11:26 +00:00
Horror Proton
b89777ec07 chore: run smoke test in lldb 2025-10-07 05:41:49 +00:00
Lucien Shaw
e72b6d5e24 docs: 添加目录自动跳转组件并使locale自动生成 (#14299)
* feat: 文档站添加重定向vue小组件

* revert: "docs: 将文档中指向部分文档目录的链接改为指向对应目录下的第一篇文档 (#14292)"

This reverts commit a24c772880.

* docs: zh-tw 目录自动跳转

* docs: zh-cn 目录自动跳转

* docs: ko-kr 目录自动跳转

* docs: ja-jp 目录自动跳转

* docs: en-us 目录自动跳转

* docs: 修复了多语言faq文章中的外链对应语言错误的问题

* refactor: 将matter模块改为default import

* feat: 将文档站的i18n和导航相关设置改为全自动生成

* fix: 去除了冗余的locale属性

文档站根据文件目录名称进行索引,linkName和dirName不可能不相同,故简化为单属性name

* refactor: 调整导航组件生成模块中的部分数据类型

* style: prettier fix
2025-10-04 23:44:54 +08:00
Lucien Shaw
fb0bf0a510 docs: 文档站新增字符画组件 (#14270)
* docs: 拯救牛牛!

* chore: 字符画使用单独目录

* feat: 随机动态加载字符画

* feat: 文档站的开发者工具console会打印随机字符画

* fix: 调整字符画初始行高,修正比例

* refactor: 简化冗余的缩放逻辑

* fix: 测量基准宽度时添加100ms延迟

* chore: Auto update by pre-commit hooks [skip changelog]

* refactor: 加上类型注解,避免编辑器报错

* chore: 更改prettier配置,typescript行尾不使用分号

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: 完善字符画大小调整算法,稳定后再调整字体

* fix: 字符画的自适应调整逻辑

* feat: 字符画支持自定义主题

* docs: 调整“字号不要用小数”的注释提示

* fix: 判断document是否定义,避免构建失败

* refactor: 完善字符画获取逻辑

* feat: 为console中展示的字符画添加自动检测主题功能

* fix: 避免因滚动条等原因造成的字符画尺寸抖动

* chore: Priestess

* refactor: 将字符画调取模块置于插件目录下

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-10-04 23:21:12 +08:00
Goat Boring(山羊博宁88)
a24c772880 docs: 将文档中指向部分文档目录的链接改为指向对应目录下的第一篇文档 (#14292)
* Update newbie.md

* Update newbie.md

* Update newbie.md

* Update newbie.md

* Update newbie.md

* Update readme.md

* Update readme.md

* Update readme.md

* Update readme.md

* Update readme.md
2025-10-04 02:12:26 +08:00
Pylinx171
7a3484dc52 chore: 将mac开发环境下的cmake_osx版本改为13.4 (#14283)
Co-authored-by: lihao2Gops5m9x <li@m8@cx7H5g3eM>
2025-10-03 19:12:11 +08:00
晓丶梦丶仁
2aa2e87fd6 fix: "MiniGame@RM-1@Wait" 2025-10-03 17:20:12 +08:00
Status102
2ef25416f9 perf: RegionOCRer 中 useRaw=false 时, 使用原图二值蒙版代替直接 OCR 二值图像 (#14276)
perf: RegionOCRer中useRaw=false时, 使用原图裁剪代替二值化图像
2025-10-03 16:13:59 +08:00
Rain Yang
435e17867e fix: 增强 playtools 关闭连接时的异常处理,确保套接字安全关闭 (#14280)
* fix: 增强playtools关闭连接时的异常处理,确保套接字安全关闭

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-10-03 14:14:02 +08:00
Constrat
707d31bb30 fix: EN IS3 encounter ocr
fix MAA,EN服水月肉鸽 事件名识别错误bug
Fixes #1427214272
2025-10-01 15:32:24 +02:00
status102
de08a33db1 fix: 理智药使用数量ocr不准确时中断使用 2025-10-01 19:25:07 +08:00
status102
d724b8ff9c fix: 使用理智药 执行减少次数循环在asst_stop时缺少中断判断 2025-10-01 19:21:47 +08:00
萨拉托加
1bb7828255 chore: YostarJP ocr fix 2025-10-01 15:26:15 +08:00
萨拉托加
d2a81987b2 fix: 修复因失败导致次生预算出错 (#14267) 2025-10-01 07:38:13 +08:00
github-actions[bot]
ed7ee78952 chore: Auto Update Game Resources - 2025-09-30
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18137728844

[skip changelog]
2025-09-30 17:07:49 +00:00
晓丶梦丶仁
2973ebbbdb feat: RM-1 (#14271) 2025-10-01 00:54:41 +08:00
Lucien Shaw
e461208bf9 chore: 完善容器配置及依赖安装 (#14208)
格式化工具部分:
1. pre-commit 引入 python 的格式化工具,包括 black(代码格式化)和 isort(对“包导入顺序”的规范)
2. 允许 prettier 对文档站的 markdown 文件格式化
3. 不允许 prettier 对 markdown 文件中的代码块的代码本身进行格式化
4. 升级了 pre-commit 的各个 hook 的版本
5. 优化了 pre-commit 的日志文本显示

容器总览部分:
1. 由原来的单一轻量环境转为区分空环境、轻量环境和全量环境
2. 空环境是裸 Linux 镜像(Ubuntu),为默认环境
3. 轻量环境适合开发文档站前端
4. 全量环境适合开发 MaaCore
5. 目前,全量环境完整包含了轻量环境,轻量环境完整包含了空环境
6. 在仓库 README.md 中更新了三个环境的描述,并将链接分别设置为对应环境的创建链接
   **注意:没有修改文档站中的对应文件**
7. 在各个语言的开发指南的最后,移除了 Codespace 部分的“安装额外依赖”相关描述,且将链接设置为全量环境的创建链接
   **注意:没有添加“开发文档站”的指南和对应 codespace 的使用方式**

容器的轻量环境和全量环境共有部分:
1. 安装 black 和 isort 包
2. 调整 VS Code 设置,取消先前(对 markdown 文件单独指定 markdownlint 扩展作为格式化工具)的错误设置,现在 markdown 文件仍然使用默认的 prettier 扩展作为格式化工具
3. 引入 markdown-all-in-one 扩展作为语法提示工具
4. 将 node_modules 和 3rdparty 排除在 VS Code 的文本的搜索路径之外

容器的全量环境部分:
1. 为 tools 下的所有 python 脚本安装依赖
2. 使用 tools/maadeps-download.py 下载 maadeps,且将必要二进制文件软链接到 /usr/local/bin/
3. 使用 apt 安装 cmake 和 clangd-20,将后者通过 update-alternatives 设置为系统 clangd 的默认版本
4. 使用 cmake tools 扩展,并按照 Linux 编译方法进行配置
5. 使用 clang-format 作为 c/cpp 的格式化工具,clang-format 程序主体来自 maadeps(已经软链接到 /usr/local/bin/)
6. 使用 clangd 作为 c/cpp 的语法提示工具
7. 将 MaaDeps、install 和 build 排除在 VS Code 的文本搜索路径之外

其它手动调整:
1. 更新文档站的 package.json,指定 pnpm 包管理器的版本
2. 手动保证 markdown 文件中的列表前后有空行(注意到 MarkdownLint 官方规则不一定能精准定位所有“列表前后空行”的问题,详见:https://github.com/DavidAnson/markdownlint/blob/main/doc/Rules.md#md032---lists-should-be-surrounded-by-blank-lines )
3. 修改了部分 markdown 文件中的 json 代码块的语法问题
   **注意:相同的问题并未全部发现,仅修改了两处**
4. 在 tools 目录中,一处 python 脚本的包名误用(本地包名和某个 pip 包重名),这里修改了相应代码
5. 在 tools 目录中,一处 python 脚本使用了弃用的包 cchardet 的问题,这里更换了推荐使用的功能相近的包并修改了相应代码

自动化脚本提交的修改:
1. 自动格式化了大量 tools 中的 python 脚本
2. 自动格式化了大量 docs 中的 markdown 文件

Commits:

* chore: pre-commit引入black和isort规范py文件

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: devcontainer添加isort扩展,排序python导入

* chore: pre-commit任务命名及更名

* style: isort fix

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: 更新pre-commit的hook版本

* fix: 模块名与第三方库重名,大忌

* chore: 容器构建时额外安装isort

* docs: md -> markdown

* chore: 容器安装python包和maadeps

* fix: 修复过时python包

* chore: 指定pnpm版本

* chore: container支持选择轻量环境

* chore: 去掉rust

* chore: add plain env

* chore: 使用clangd语言服务器

* chore: 无需单独设置markdown的格式化工具

* chore: 更新安装的clangd版本

* docs: 简易文档适配

* docs: 在仓库README中重新编排codespaces相关指引

* chore: Auto update by pre-commit hooks [skip changelog]

* style: 调整缩进

* chore: 格式化工具不用特意排除被gitignore忽略的文件

* chore: sh文件在gitattributes中单列一类

* chore: 格式化docs下的markdown文件

* chore: 暂时不修改md文件中的代码块

* style: 人为明确markdown中的部分列表相关格式

* docs: 补上部分markdown的json代码块中缺失的逗号

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: 补上tools的服务器排序相关代码中缺失的逗号

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

* chore: 使用maadeps的clangd

* build: 更新maadeps工具链版本

* style: prettier fix

* revert: 还原maadeps版本

* revert: 取消使用maadeps的clangd依赖,改用系统apt安装

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-09-30 19:39:48 +08:00
github-actions[bot]
22faefe71a chore: Auto Update Game Resources - 2025-09-30
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18121756589

[skip changelog]
2025-09-30 07:09:27 +00:00
uye
7d080de077 Release v5.26.0 (#14261) 2025-09-30 14:21:11 +08:00
github-actions[bot]
cc65a68384 docs: Auto Update Changelogs of v5.26.0 (#14262)
* docs: Auto Generate Changelog of Release v5.26.0

* docs: Update CHANGELOG for v5.26.0 enhancements and fixes

* docs: Update CHANGELOG with recent fixes and optimizations

* docs: 更新 CHANGELOG,添加次生预案支持和自动肉鸽优化说明

* docs: 修正 CHANGELOG 中关于次生预案的描述格式

* docs: 更新 CHANGELOG,添加「次生预案」和自动肉鸽的提示信息

* docs: 修正 CHANGELOG 中关于次生预案的描述,优化提示信息

* docs: 更新 CHANGELOG,修正次生预案部分的描述,优化资源点数说明

* docs: 修正 CHANGELOG 中关于次生预案提示信息的描述格式

* docs: 更新 CHANGELOG,完善次生预案功能描述,增加资源点数和材料信息

* docs: Revise CHANGELOG for recent updates and fixes

Updated the changelog to reflect changes in recruitment strategy, settings guide improvements, and documentation website redesign.

* docs: Revise CHANGELOG for new features and fixes

Updated the changelog to reflect changes in the '次生预案' feature and adjustments in the automatic meat pigeon recruitment strategy.

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
Co-authored-by: AnnAngela <naganjue@vip.qq.com>
2025-09-30 14:20:54 +08:00
萨拉托加
0bb19a7376 fix: 水月肉鸽委托任务完成检测优先级过低 2025-09-30 13:59:19 +08:00
Weiyou Wang
ea6540cf6b fix: 商店刷新两步走 (#14201)
* fix: 商店刷新两步走

* chore: Auto update by pre-commit hooks [skip changelog]

* refactor: buy once only when both steps succeed (suggested by status102)

Co-Authored-By: Status102 <102887808+status102@users.noreply.github.com>

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Status102 <102887808+status102@users.noreply.github.com>
2025-09-29 17:20:32 +08:00
萨拉托加
df75025dc5 perf: 调整界园肉鸽招募策略 (#14255) 2025-09-29 12:32:25 +08:00
Rbqwow
7ab8994ed8 docs: 更新文档 (#14236)
* docs: 补充自动战斗前提

* docs: 自动战斗傀影开局添加丰川祥子

* docs: 更新肉鸽闪断处理相关描述

* chore: Auto update by pre-commit hooks [skip changelog]

* docs: 更新肉鸽文档

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: 萨拉托加 <151550168+Saratoga-Official@users.noreply.github.com>
2025-09-29 12:29:40 +08:00
Manicsteiner
a263b62e63 feat: 萨卡兹肉鸽 待诉说的故事 二次选择 (#14246) 2025-09-29 12:21:24 +08:00
萨拉托加
bf7b2e633b fix: 水月肉鸽商店刷新延迟不够
fix #14256
2025-09-29 10:49:25 +08:00
github-actions[bot]
65b84f5dbd chore: Auto Update Game Resources - 2025-09-28
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18079189511

[skip changelog]
2025-09-28 20:08:28 +00:00
Manicsteiner
347f1e191e chore: YostarJP roguelike edits (#14252) 2025-09-28 21:00:23 +02:00
uye
7905eb9fed fix: 按钮显示文字错误 2025-09-28 13:55:30 +08:00
萨拉托加
3a6c49de0c fix: 次生预案模拟器卡了容易点过头 2025-09-28 09:38:03 +08:00
Hao Guan
0be1253334 ci: update macOS runner 2025-09-27 23:29:43 +08:00
Hao Guan
a10ab607b0 chore(mac): 新图标和界面风格 2025-09-27 22:24:14 +08:00
Lancarus
45649de131 perf: 优化界园肉鸽部分关卡策略 (#14244)
* perf: 优化界园肉鸽部分关卡策略

* fix: 按照建议修改

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-09-27 20:03:03 +08:00
uye
c3ebfce07b feat: mac 支持次生预案 2025-09-27 14:59:39 +08:00
Constrat
a57e5cf98a fix: clang 2025-09-26 21:54:06 +02:00
uye
78ff33d6f0 fix: 怎么还有人在用 adb input 2025-09-27 00:32:11 +08:00
uye
a64bfc5ba3 perf: 优化次生预案执行速度 2025-09-26 23:21:22 +08:00
uye
a8ef1420b6 Release v5.26.0-beta.1 (#14231) 2025-09-26 14:13:39 +08:00
github-actions[bot]
1d7a893950 docs: Auto Update Changelogs of v5.26.0-beta.1 (#14232)
* docs: Auto Generate Changelog of Release v5.26.0-beta.1

* docs: Refactor CHANGELOG to remove duplicates and update entries

Removed duplicate entries and updated various documentation items in the 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>
2025-09-26 14:11:43 +08:00
pre-commit-ci[bot]
ef8964e0a7 chore: Auto update by pre-commit hooks [skip changelog] 2025-09-26 06:02:15 +00:00
Wallsman
775c640dba docs: Update JP(#14227)
* Update readme.md

Doc: Text sync chinese.

* Update others.md

Doc: Sync text for Chinese.

* Update copilot.md

Doc: Sync Text for Chinese.

* Update reclamation-algorithm.md

Doc: Text sync for Chinese.

* Update rewards.md

Doc: Sync text for Chinese.

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-09-26 13:58:54 +08:00
github-actions[bot]
634ebb55db chore: Auto Templates Optimization
Triggered by 5ac171d40c

[skip changelog]
2025-09-26 05:58:00 +00:00
uye
5ac171d40c feat: 次生预案十里坡剑神 2025-09-26 13:57:33 +08:00
Constrat
0ae323c855 fix: Google Play Games Developer shutdown 2025-09-26 01:24:57 +02:00
MistEO
8aaba7d60e fix: manual set resource version time 2025-09-26 00:58:36 +08:00
github-actions[bot]
caed828770 chore: Auto Templates Optimization
Triggered by 3f252eb12e

[skip changelog]
2025-09-25 08:50:39 +00:00
github-actions[bot]
3f252eb12e chore: Auto Update Game Resources - 2025-09-25
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/18002097304

[skip changelog]
2025-09-25 08:49:14 +00:00
Manicsteiner
e8051a6a39 chore: YostarJP Sarkaz roguelike StageEncounter (#14223) 2025-09-25 00:17:07 +02:00
Rbqwow
e0860ed779 docs: 补充vsc插件繁中文档
refer to a872081615
2025-09-23 14:32:12 +00:00
Rbqwow
1324165cfe docs: 修复文档站readme盾换行 2025-09-23 13:58:15 +00:00
Lucien Shaw
96aa7ada11 docs: 调整文档站的标题和尾注文本显示 (#14213)
* chore: 更新plume主题版本

* chore: 更新文档站尾注配置

* i18n: 调整多语言的默认网站标题

* docs: 调整首页的网页标题

* docs: 文档站首页MAA标题加阴影
2025-09-23 21:36:58 +08:00
Rbqwow
ca3160bd72 docs: 更新网页开发相关文档 (#14167)
* docs: vuepress-theme-hope --> vuepress-theme-plume

* docs: website --> docs

* chore: 添加 preview 图片

* feat: 添加回图片相关插件

* perf: logo 超级压缩

* perf: preview 也超级压缩

* docs: 找 GPT-5 Thinking 翻译了一下日语的本地部署

* chore: 预览图还是得走一下网页镜像

* i18n: JP

* docs: 修复损坏的超链接

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: 这东西是怎么混进来的

---------

Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-09-23 17:49:19 +08:00
Manicsteiner
c3bac8b504 chore: YostarJP sami roguelike 720p (#14210) 2025-09-23 10:53:52 +02:00
zzyyyl
642c62498c docs: 完善任务流程协议文档 (#13232)
* docs: 完善任务流程协议文档

* docs: English version of task-schema.md

* docs: markdown-lint
2025-09-23 14:21:37 +08:00
zzyyyl
56cf52808d docs: markdown pre-commit 2025-09-23 14:16:39 +08:00
pre-commit-ci[bot]
5d47ede186 chore: Auto update by pre-commit hooks [skip changelog] 2025-09-23 13:52:02 +08:00
萨拉托加
a48fe44663 chore: 水月萨米肉鸽不期而遇避战
fix #14207
2025-09-23 13:32:47 +08:00
nekosu
a872081615 docs: add extension's evaluating feature 2025-09-23 11:43:42 +08:00
Constrat
485ef8fcbf fix: prettier 2025-09-23 00:28:47 +02:00
Manicsteiner
c450e596f7 chore: YostarJP Mizuki StageEncounter (#14206) 2025-09-22 23:27:18 +02:00
SherkeyXD
f9c16319a8 docs: 回调消息协议文档视觉更新 2025-09-23 03:01:56 +08:00
SherkeyXD
5db20fe2c4 docs: 集成文档视觉更新 2025-09-23 02:41:13 +08:00
SherkeyXD
e12c7f948d docs: 文档启用b站视频播放功能 2025-09-23 02:03:57 +08:00
SherkeyXD
cb546b4370 docs: 文档添加字段容器功能 2025-09-23 02:01:29 +08:00
SherkeyXD
c193b26b62 docs: 文档添加功能 2025-09-23 01:56:38 +08:00
SherkeyXD
91c8a22d1c docs: 更新文档编写指南 2025-09-23 01:56:38 +08:00
SherkeyXD
b8205b5593 docs: add telegram icon 2025-09-23 01:56:38 +08:00
MistEO
68248df197 docs: 标题MAA统一采用缩写 2025-09-23 01:41:48 +08:00
MistEO
db98bb370e chore: 再次调整文档站标题( 2025-09-23 01:35:56 +08:00
MistEO
bf2375a44f chore: 调整文档站标题 2025-09-23 01:32:20 +08:00
Rbqwow
d12fb7d565 refactor: devcontainer.json (#14169)
* chore: cleanup devcontainer.json

* chore: 配置devcontainer环境

* build: 更新conda配置

* chore: 更新pnpm包的安装允许列表

---------

Co-authored-by: Lucien Shaw <myxlc55@outlook.com>
2025-09-23 00:53:41 +08:00
Lucien Shaw
9838dec4fd fix: 文档首页语言选择按钮的宽度定义方式 (#14199) 2025-09-22 22:11:54 +08:00
uye
793d03d47b feat: 设置指引添加更新设置 2025-09-22 20:31:35 +08:00
uye
56d796c92e feat: 统一显示效果 2025-09-22 19:36:00 +08:00
uye
aae995aef5 feat: 设置指引添加性能设置 2025-09-22 19:36:00 +08:00
萨拉托加
9159e5d979 fix: 傀影肉鸽无法识别四结局 (#14193)
* fix: 傀影肉鸽无法识别四结局

既然MAA能打就加个模板比较好?

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: 四结局必要不期而遇进战斗

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-09-22 16:27:54 +08:00
萨拉托加
705c5a4c68 fix: GamePassSkip2识别到错误的跳过
看录屏发现的,GamePassSkip1之后可能会出现一个一闪而过的GamePassSkip2被maa识别到,好抽象
2025-09-22 16:14:37 +08:00
Rbqwow
a563b14f47 refactor: 重写完成后动作仅一次的ui字符串 (#14196) 2025-09-22 14:44:49 +08:00
uye
400fd6bf53 chore: 贸易站没其他好用的人再用锏 2025-09-21 19:07:33 +08:00
萨拉托加
2915338cac fix: 萨米肉鸽不期而遇避战
fix #14192
2025-09-21 16:53:48 +08:00
uye
09dc393c98 docs: Update CHANGELOG with recent changes and fixes 2025-09-21 14:06:55 +08:00
uye
0650cdb64e Release v5.25.0 (#14184) 2025-09-21 13:54:51 +08:00
github-actions[bot]
385c521eb4 docs: Auto Update Changelogs of v5.25.0 (#14185)
* docs: Auto Generate Changelog of Release v5.25.0

* docs: 更新 v5.25.0 版本变更日志,增加自动战斗和基建换班功能的优化说明

* docs: 更新 v5.25.0 版本变更日志,增加对自动战斗和基建换班功能的详细说明

* docs: 修复 CHANGELOG.md 中的格式问题

* docs: 修复 CHANGELOG.md 中的拼写错误

* docs: Update dependencies and change CDN provider

Updated project dependencies and switched to a new CDN provider for improved access speed.

* docs: 更新依赖库并更换官网和 API 节点的 CDN 提供商,优化访问速度

---------

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>
2025-09-21 13:54:32 +08:00
萨拉托加
a37a74a4e2 fix: 现买现印选项
fix #14188
2025-09-21 12:22:02 +08:00
MistEO
1d2d49920a chore: 整理文档站 social 链接 2025-09-21 11:40:23 +08:00
MistEO
da82e14efc chore: 删除文档站不知道有啥用的文件? 2025-09-21 11:36:01 +08:00
MistEO
ad9103ea12 docs: 修改文档站导航栏跳转 2025-09-21 11:35:47 +08:00
nekosu
26296b3b82 docs: Maa Pipeline Support 扩展文档 (#14110)
* doc: cache

* doc: vsc ext doc skeleton

* fix: svg ref

* doc: optimize

* docs: 在任务流程协议文档中添加扩展使用提示

* docs: add en translation

* docs: 补充跳转超链接

---------

Co-authored-by: Rbqwow <55343783+Rbqwow@users.noreply.github.com>
2025-09-21 04:31:14 +08:00
Constrat
72ba949f1c chore: remove comment on script 2025-09-20 21:22:47 +02:00
Constrat
1102771ea1 ci(tools): add stale cache cleanup script 2025-09-20 20:48:51 +02:00
Constrat
9d9f95ea4a i18n: fix english for main page 2025-09-20 20:48:36 +02:00
MistEO
0e33a53068 feat: add docs icon 2025-09-21 01:05:26 +08:00
uye
081c0b7597 chore: 调整 锏 基建技能效率 2025-09-20 19:46:52 +08:00
uye
e3de09ddcc Release v5.25.0-beta.5 (#14180)
准备发正式版了,这个之后先别进 pr
2025-09-20 14:19:34 +08:00
github-actions[bot]
81e22e5bf9 docs: Auto Update Changelogs of v5.25.0-beta.5 (#14181)
* docs: Auto Generate Changelog of Release v5.25.0-beta.5

* docs: Update CHANGELOG with recent fixes and enhancements

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-09-20 14:17:20 +08:00
uye
424687c3e1 fix: 成就列表解锁时间显示颜色错误 2025-09-20 14:08:34 +08:00
uye
94e6fabb76 fix: GO 导航 2025-09-20 14:02:41 +08:00
uye
8d346ed392 fix: 勾选启动后直接运行时无法自动切换基建排班表
fix #14173
2025-09-20 13:51:16 +08:00
soundofautumn
fd3204e965 chore: fix build warning (#14176)
0>RunningState.cs(49,46): Warning CS8622 : “void RunningState.TimeoutReminderTimer_Elapsed(object sender, ElapsedEventArgs e)”的参数“sender”类型中引用类型的为 Null 性与目标委托“ElapsedEventHandler”不匹配(可能是由于为 Null 性特性)。
0>RunningState.cs(41,17): Warning CS8618 : 在退出构造函数时,不可为 null 的 事件 "TimeoutOccurred" 必须包含非 null 值。请考虑添加 "required" 修饰符或将该 事件 声明为可为 null。
0>RunningState.cs(80,46): Warning CS8625 : 无法将 null 字面量转换为非 null 的引用类型。
0>RunningState.cs(80,52): Warning CS8625 : 无法将 null 字面量转换为非 null 的引用类型。
0>RunningState.cs(38,37): Warning CS8618 : 在退出构造函数时,不可为 null 的 字段 "_instance" 必须包含非 null 值。请考虑添加 "required" 修饰符或将该 字段 声明为可为 null。
2025-09-20 13:43:07 +08:00
uye
7109310145 fix: 网络连接错误的情况下读取了本地缓存也提示了获取热更成功 2025-09-20 13:38:48 +08:00
soundofautumn
a424520a1d chore: rename RecognizerViewModel -> ToolboxViewModel (#14177)
* chore: rename RecognizerView -> ToolboxView

* chore: 重新排序顺序使得和ui顺序一致
2025-09-20 13:37:53 +08:00
github-actions[bot]
b98ae1be2d chore: Auto Update Game Resources - 2025-09-20
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17875323432

[skip changelog]
2025-09-20 04:31:07 +00:00
萨拉托加
5eaf466128 fix: 萨米肉鸽未通关结局时探寻前路卡住 2025-09-19 17:21:41 +08:00
github-actions[bot]
8dc7893459 chore: Auto Update Game Resources - 2025-09-19
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17853878149

[skip changelog]
2025-09-19 09:09:19 +00:00
MistEO
e891471750 ci: remove website aws config 2025-09-19 15:23:24 +08:00
Lucien Shaw
9014a20c25 fix: 文档站首页在窄屏下的响应式设计 (#14166) 2025-09-19 15:14:16 +08:00
Lucien Shaw
4280d9356a fix: 暂时修复无法读取过去的评论的问题 (#14163) 2025-09-19 14:41:33 +08:00
Manicsteiner
b8e739bcad chore: YostarJP ocr fix (#14134)
* chore: YostarJP ocr fix

* chore: item30165, ja-jp xaml, 随到随取

* i18n: RA task mode
2025-09-19 11:36:02 +08:00
Constrat
f9c76d4995 fix: Eye For an Eye encounter IS2 EN 2025-09-19 00:42:52 +02:00
Lucien Shaw
28ca820784 docs: 完善文档站的代码检查和涉及的文本替换 (#14156)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-09-18 23:53:59 +08:00
Lucien Shaw
d8dbec69ca docs: 完善自动肉鸽和其它文档中的部分内容 (#13924)
* docs: 在中文文档的连接设置中添加一处关于隐藏目录的提示

* docs: 在中文的自动肉鸽文档中完善关于蓝图测绘分队的提示

* i18n: EN is.md

* i18n: connetion for all

* docs: ko-kr is

* docs: kr fix typo

* docs: 完善了英文的自动肉鸽文档中的部分措辞

修改部分开局推荐提示的措辞和语法,使其和表格中的其它提示一致
使用罗马数字专用符号`Ⅱ`代替两个拉丁字母`II`

* docs: 更新繁体中文自动肉鸽文档中的开局推荐

* docs: 更正三种语言自动肉鸽文档中的傀影肉鸽开局推荐难度

更正简中、英文、韩文的自动肉鸽文档中傀影肉鸽开局推荐难度(繁中文档不适用;日文文档没有这一部分)

* docs: 只是改个语序

* i18n: JP

* docs: 调整简中和日语的自动肉鸽文档的表格缩进

* docs: 在繁中的自动肉鸽文档中添加最后更新日期

---------

Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Rbqwow <55343783+Rbqwow@users.noreply.github.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
2025-09-18 23:26:23 +08:00
SherkeyXD
ada9b0849b docs(rft): 切换文档主题至 vuepress-theme-plume (#13821)
Co-authored-by: Lucien Shaw <myxlc55@outlook.com>
Co-authored-by: MistEO <mistereo@hotmail.com>
2025-09-18 18:26:14 +08:00
uye
99e64b3ea8 chore: 调整会客室中更容易获得线索板上尚未拥有的线索的技能优先级 2025-09-18 18:01:26 +08:00
uye
e7be333557 chore: 基建把 u酱 ban 了 2025-09-18 15:38:03 +08:00
github-actions[bot]
8da2271af1 chore: Auto Templates Optimization
Triggered by 7b58ddee5b

[skip changelog]
2025-09-18 07:01:41 +00:00
uye
7b58ddee5b fix: 为什么 mujikca 的图黑的不够纯粹 2025-09-18 14:51:36 +08:00
萨拉托加
fcfa9c033c fix: 肉鸽在结算界面卡死 (#14145)
* fix: 肉鸽通关后有概率无法跳过剧情导致卡死或出错

有概率无法跳过卡在Roguelike@ClickToStartPoint里

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: 肉鸽还是卡结算界面,改一下ClickToStartPoint位置

* fix: 导航肉鸽时有概率识别到回弹动画状态的入口

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-09-18 14:41:41 +08:00
Loong
1992af7159 feat: cli 支持新版战斗列表以及悖论模拟 (#14154)
chore: bump maa-cli to 0.5.9
2025-09-18 14:38:54 +08:00
Constrat
a6b5101e0c ci: update cache scripts 2025-09-18 02:20:27 +02:00
github-actions[bot]
e03a96774d chore: Auto Update Game Resources - 2025-09-17
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17809390023

[skip changelog]
2025-09-17 20:08:55 +00:00
status102
261ddc49d9 fix(core): CopilotTask参数可选项存在性检查 2025-09-18 00:43:17 +08:00
Lucien Shaw
bb735b6ee7 feat: 为官网首页添加多语言支持 (#13943)
* build: 引入react i18n组件

* i18n: 加载多语言支持模块

* i18n: 添加语言切换按钮

* i18n: 添加网页下载按钮多语言支持

* build: 更新typescript依赖

* fix: 修复callback导致语言切换不生效的问题

* i18n: 完成首页所有元素的多语言支持

* chore: 删除冗余代码

* i18n: 优化了语言切换按钮的交互逻辑并添加多语言占位符

* chore: 规范了部分代码的格式并删除冗余代码

* i18n: ko-kr

* chore: kr 미러 to mirror

* fix: 修复检测和切换语言的问题

* chore: 调整了尾注用户协议部分的显示方式

* refactor: 更改首页尾注的显示方式

* style: 统一Trans元素为self-close样式

* i18n: zh-tw

* fix: 修复换行和块之间的空格问题并补上缺失的翻译

* feat: 更改首页语言也会同步更改文档按钮对应的链接

* refactor: 将弃用的MutableRefObject替换为RefObject

* feat: 语言切换按钮的选项使用对应的语言渲染

* feat: 统一管理所有语言信息并开放读取语言接口

* fix: 去除按钮在鼠标悬停时出现的下划线

* style: 统一不使用行尾分号

* build: 更新部分依赖

* fix: 修正不成对的Trans块对应的本地化文本

* feat: 移动设备横屏浏览时出现垂直滚动条

移动设备横屏时,可能仍能出现下载按钮,全部展开时可能过高,此时出现垂直滚动条,方便用户浏览所有内容

* i18n: JP

* fix: 强制隐藏下载链接容器的水平滚动条

* fix: 将下载链接容器设置为占满宽度

* i18n: JP edits

* fix: 修复滚动条引起的上端裁切问题

* feat: action按钮组根据实际宽度调整布局

不再依靠md:xxx的固定阈值区分小屏和中屏及以上,而是根据不同语言的按钮宽度动态计算是否溢出,从而决定排布方式

* feat: 使用上下文管理布局

使用layoutStateContext来管理布局相关状态,主要是宽度溢出检测

* fix: Copilot 说我们是小驼峰

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

* perf: Copilot 说我们不再需要下划线和它的偏移
我还是第一次知道这里下划线这么难看

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

* feat: 把别的按钮样式抄到语言切换按钮上

* style: 复活 Prettier

这 Prettier 什么鬼情况
我没有要求你把所有文件都格式化,我不是恶魔,后面忘了,总之我可能得狠狠恢复你了。真的。
所以这缩进怎么又 2 又 4 的

* chore: Auto update by pre-commit hooks [skip changelog]

* refactor: 更改副标题和尾注的元素class以优化动画和显示

* style: 将typescript代码文件的缩进统一为2

* fix: 改正测速进行中的i18n key

* refactor: 删除link类的下划线css定义

* build: 更新prettier依赖和相关配置

* style: prettier美化

* chore: 尝试规避github ci找不到插件的错误

* chore: Auto update by pre-commit hooks [skip changelog]

* refactor: 使用.prettierrc.js管理官网相关文件的美化配置

* refactor: 暂时取消自动import排序美化

* fix: 下载按钮动画问题

* feat: 响应式设计测量宽度时,临时隐藏相关元素

* style: prettier

* refactor: 下载按钮组居中对齐

* feat: 让系统架构提示动画从上到下

* refactor: 优化第二行按钮动画

* refactor: 优化协议部分文本动画

* i18n: 为一句过长的日语添加换行符

* fix: 修复进度条样式

* refactor: 不将i18n作为触发器

* chore: 首页图片资源文件路径变更

* chore: 添加多语言图片占位

* i18n: 首页图片支持多语言切换

* chore: 更新日文的首页截图

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: 在首页的文档链接后补全斜杠

* chore: 更新prettier的EOL设置

* style: prettier美化

* chore: pre-commit复活

* refactor: 统一languageFilename变量名

* refactor: 移除加载截图模块的dead code

* i18n: 为mirrorchyan的跳转链接添加多语言支持

mirrorchyan提供简中和英语,因此其他语言需要fallback到二者之一。
- 繁体中文跳转到简体中文
- 日语和韩语跳转到英文

* fix: dead code删除不彻底

* i18n: 去除除了简中以外的”海外源“字样

* i18n: 规范化简中和繁中的locale文本

* i18n:调整英文文本的语法和表达

* i18n: 规范化日文文本

* chore: prettier

* i18n: KR screenshot

* i18n: txwy screenshot

* chore: Auto update by pre-commit hooks [skip changelog]

* i18n: zh-tw tweak

* refactor: mirror酱相关的两处key更名

* docs: 优化中文和英文的部分语句表达方式

Linux 下载那句我怎么看怎么觉得怪
我想改成 `下载完成(Linux 版本仅包含动态库与资源文件)` `Download completed (Linux version includes dynamic libraries and resource files only)`
但感觉改完也很怪

感觉不如把这俩直接换成 CLI 的下载

* i18n: fix version info loading error message and pluralize downloads for zh-cn

* chore: update en-us screens dark and light

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: focus

* chore: Auto update by pre-commit hooks [skip changelog]

* refactor: 去除多余类型标记

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

---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: momomochi987 <as99us301@gmail.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
Co-authored-by: Rbqwow <55343783+Rbqwow@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2025-09-17 21:19:07 +08:00
uye
c54b45c09f fix: SettingsViewModel Idle 2025-09-17 17:54:19 +08:00
萨拉托加
eb061dcc59 fix: 异格推王的基建加成错误 2025-09-17 16:32:14 +08:00
uye
bc7dc763fe feat: RunningState 统一状态变更事件 (#14141)
* feat: RunningState 统一状态变更事件

* feat: 统一 Inited 与 Stopping

* perf: 优化小工具中的stop
2025-09-17 14:06:51 +08:00
github-actions[bot]
3bfc2662e3 chore: Auto Update Game Resources - 2025-09-16
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17773963424

[skip changelog]
2025-09-16 17:29:14 +00:00
status102
f4c21be051 chore: file header 2025-09-17 00:57:06 +08:00
status102
2936006087 rft: 特征匹配过程函数拆入analyze() 2025-09-17 00:53:23 +08:00
github-actions[bot]
efa364043d chore: Auto Update Game Resources - 2025-09-16
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17772582080

[skip changelog]
2025-09-16 16:33:32 +00:00
Weiyou Wang
7b6dada3ea feat: 生息盐酸任务添加对错误模式 (有/无存档) 的提示 (#14131)
* feat: 生息盐酸任务添加对错误模式 (有/无存档) 的提示

* fix: callback 里任务名没有前缀
2025-09-17 00:26:28 +08:00
Weiyou Wang
be3b1a2057 fix: 调低 MacOS PlayCover 下对 InfrastControl 识别的阈值 (#14139) 2025-09-17 00:21:20 +08:00
status102
67ceb02116 fix: CurrentConfig未刷新 2025-09-17 00:07:32 +08:00
status102
aa7a2731e0 fix: CurrentConfig悬空 2025-09-17 00:07:32 +08:00
uye
df8f3786f0 fix: 拥有全干员的情况下重启后进入干员识别界面不会自动选中选项卡 2025-09-16 23:48:49 +08:00
uye
20b167119a fix: 修复 DataGrid 虚拟化下 Tab 导航异常 2025-09-16 23:44:27 +08:00
Constrat
b1f02a2eb5 fix(ci): download to v5 with necessary fix (#14122)
fix: specify path for download v5
2025-09-16 16:41:19 +02:00
HY
f9e424cd3b chore: 繁中服「相見歡」活動導航 (#14137)
* chore: 繁中服「相見歡」活動導航

* chore: 再改 再改
2025-09-16 16:37:22 +02:00
萨拉托加
5eecbe21c1 fix: 萨卡兹肉鸽未通关结局时原初异途卡住
fix #14133
2025-09-16 18:38:49 +08:00
MistEO
32a3523bc4 feat: use coreml OCR for apple (#14108) 2025-09-16 18:20:10 +08:00
github-actions[bot]
7dd2dbdcbe chore: Auto Update Game Resources - 2025-09-16
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17759820697

[skip changelog]
2025-09-16 08:33:34 +00:00
github-actions[bot]
27f9df768d chore: Auto Update Game Resources - 2025-09-16
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17758555824

[skip changelog]
2025-09-16 07:44:48 +00:00
萨拉托加
2350a05fc4 fix: 肉鸽深入探索无法退出结算界面 (#14123) 2025-09-15 23:03:04 +08:00
soundofautumn
3ea9912802 chore: fix build warning (#14120) 2025-09-15 23:00:34 +08:00
uye
a9e31c75d0 Release v5.25.0-beta.4 (#14126) 2025-09-15 22:49:41 +08:00
uye
4e46a392a3 docs: Update CHANGELOG for v5.25.0-beta.4
Updated changelog for version 5.25.0-beta.4 with new features and fixes.
2025-09-15 22:48:52 +08:00
pre-commit-ci[bot]
2f09f9e591 chore: Auto update by pre-commit hooks [skip changelog] 2025-09-15 14:43:19 +00:00
uye
55f675fb8d fix: minitouch 触控 wait ms 2025-09-15 22:38:35 +08:00
uye
36fc9a8e0a fix: 复核自定义干员时等待游戏动画 2025-09-15 22:11:05 +08:00
Constrat
cfd463a7fd fix: wrong default on type number 2025-09-15 14:09:40 +02:00
uye
2884f2d0ae fix: 自动战斗无法读取下拉列表中的作业 2025-09-15 19:52:42 +08:00
MistEO
0af752b083 Release v5.25.0-beta.3 (#14115) 2025-09-15 16:50:34 +08:00
MistEO
212cb506d6 docs: changelog version 2025-09-15 16:50:13 +08:00
MistEO
6ed32b3344 docs: changelog 2025-09-15 16:49:32 +08:00
MistEO
4a2901c473 ci: fix minitouch scale 2025-09-15 16:43:58 +08:00
MistEO
18bec2504d ci: add create issue 2025-09-15 15:28:04 +08:00
MistEO
7c4002351e ci: use download-artifact v4 2025-09-15 15:28:04 +08:00
MistEO
4e0b5ace24 Release v5.25.0-beta.2 (#14111) 2025-09-15 15:00:10 +08:00
github-actions[bot]
acfb173cc3 docs: Auto Update Changelogs of v5.25.0-beta.2 (#14112)
* docs: Auto Generate Changelog of Release v5.25.0-beta.2

* docs: changelog

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: MistEO <mistereo@hotmail.com>
2025-09-15 14:58:02 +08:00
MistEO
feb7b6109f ci: fix win zip 2025-09-15 14:02:35 +08:00
MistEO
552d7784a2 ci: add zip for win ci and create issue if failed release 2025-09-15 13:37:59 +08:00
status102
b1d10a87dc perf: 加个try先 2025-09-15 13:19:19 +08:00
Constrat
30bb86bade ci(fix): try to color only [err] log as red 2025-09-15 01:36:04 +02:00
MistEO
80511c660f ci: split cmake file (#14109) 2025-09-15 04:18:40 +08:00
mistereo@hotmail.com
45ca28ed74 chore: remove SyncRes 2025-09-15 03:07:17 +08:00
MistEO
a208c1f03b ci: set hash version 2025-09-15 02:31:32 +08:00
Status102
5b33bc3f00 feat: 自动战斗多作业支持保存干员组内编入的干员 (#14095)
* chore: 加个存储先

* feat: 与旧编队比较

* feat: 快速编队

* fix: 计数

* fix: 缓存了旧的组名

* perf: 快速退出

* fix: 跳过编队后修改编队状态

* fix: 完事

* fix: err

* fix: 顺手一起修了
2025-09-15 01:27:51 +08:00
MistEO
6202eedeb3 refactor: use std::format instead of sprintf (#14107)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-09-15 01:07:05 +08:00
Constrat
a70502521d ci:. standardize cache key for nuget cache 2025-09-14 18:55:13 +02:00
Constrat
66a5095ede ci: standardize hash for windows maadeps 2025-09-14 18:52:20 +02:00
Constrat
5b750ca194 fix: smoke-testing script 2025-09-14 18:48:47 +02:00
uye
b18e4e6ff6 Release v5.25.0-beta.1 (#14100) 2025-09-15 00:41:06 +08:00
MistEO
31761d7e5d ci: refactor res_updater cmake (#14106)
* ci: refactor res_updater cmake

* ci: remove ResourceUpdater from main cmake

* ci: typos

* build: remove boost

* ci: fix deps and cmake config

* ci: add zsh script

* chore: fix res_updater

* chore: use -Wno-error for res_updater

* fix: perms for version.zsh

* fix: gitignore

* fix: script

---------

Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2025-09-14 18:33:40 +02:00
github-actions[bot]
c881362cb1 docs: Auto Update Changelogs of v5.25.0-beta.1 (#14101)
* docs: Auto Generate Changelog of Release v5.25.0-beta.1

* docs: Update CHANGELOG with recent changes and fixes

* docs: Update button click behavior in battle list settings

* docs: Update CHANGELOG with recent changes and fixes

* docs: changelog

* docs: Update CHANGELOG with recent changes and fixes

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
Co-authored-by: Status102 <102887808+status102@users.noreply.github.com>
2025-09-15 00:32:40 +08:00
uye
00e5c1eb9f chore: 自定义基建配置时间仍在有效期内时不检查其他时间段 2025-09-15 00:26:33 +08:00
Constrat
7e3ab62aae fix: typo 2025-09-14 17:56:32 +02:00
Constrat
b0713bb9df Merge branch 'dev' of https://github.com/MaaAssistantArknights/MaaAssistantArknights into dev 2025-09-14 17:55:19 +02:00
Constrat
42343f8978 fix: type number for nightly ota 2025-09-14 17:55:12 +02:00
MistEO
e9383a7783 build: do not auto gen version for local build 2025-09-14 23:28:08 +08:00
status102
e0ee76115b feat: CustomTask增加任务存在检测 2025-09-14 21:45:43 +08:00
Constrat
d6bf677bb1 ci: add caching for macos maadeps 2025-09-14 14:32:51 +02:00
MistEO
746816c6c7 ci: try macos for smoke_test (#14104)
* ci: try macos for smoke_test

* ci: Remove concurrency from smoke-testing workflow

* ci: use ninjga build for macos testing

* ci: add trigger

* ci: fix macos parallel

* ci: update bash

* fix: zsh script

* fix: perms

* fix: zsh script regular array

* ci: add resource link for cache hit

* test: enable dev for testing

* test: revert test

---------

Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2025-09-14 14:22:15 +02:00
nekosu
4d74abfd8f feat: custom clang (#14102)
* feat: custom clang

* fix: version typo

* fix: version typo
2025-09-14 12:35:40 +02:00
萨拉托加
5853354357 chore: 界园萨卡兹肉鸽招募休谟斯优先级 2025-09-14 17:54:08 +08:00
Status102
022ab93c1c ci: 为smoke-testing使用cache时增加resource链接 (#14096)
Co-authored-by: MistEO <mistereo@hotmail.com>
2025-09-14 17:30:30 +08:00
github-actions[bot]
cd8d22d23e chore: Auto Update Game Resources - 2025-09-14
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17708701640

[skip changelog]
2025-09-14 08:30:48 +00:00
pre-commit-ci[bot]
da1170ecc9 chore: Auto update by pre-commit hooks [skip changelog] 2025-09-14 08:25:54 +00:00
uye
df46d6bcb0 chore: 更新基建技能效率 2025-09-14 16:20:15 +08:00
Litwak913
bf27a7fc86 fix: 修复 cmake copy_and_add_rpath_library 的失败逻辑 (#14097) 2025-09-14 06:39:06 +08:00
Constrat
482f21620e chore: remove -DINSTALL_RESOURCES 2025-09-13 18:01:40 +02:00
uye
1472d80c12 fix: 刷开局奖励只选票券时行为异常
fix #14079
2025-09-13 21:12:09 +08:00
Constrat
5bfc5fce9f fix: smoke testing upload logs 2025-09-13 15:05:52 +02:00
Constrat
dcd2d52a5a fix: move smoke testing working dir 2025-09-13 14:55:15 +02:00
uye
2c87975e52 feat: core 崩溃后下次启动时 ui 输出提示 (#14022)
* feat: core 崩溃后下次启动时 ui 输出提示

* style: space

* chore: ubuntu warning

* i18n: zh-tw

---------

Co-authored-by: momomochi987 <as99us301@gmail.com>
2025-09-13 20:28:56 +08:00
status102
e3245a4163 feat(wpf): allow single copilot task execution
有人炸就派uuu @ABA2396
2025-09-13 20:02:58 +08:00
status102
43ea1f94df perf(wpf): wpf自动战斗列表中作业设置按钮左键单击还原为解析指定作业,新增行为修改至右键,解析作业并关闭列表 2025-09-13 19:57:37 +08:00
status102
1077b08c19 fix: 自动编队缺少干员输出的额外换行 2025-09-13 19:53:18 +08:00
status102
d02393f174 fix(core): Copilot多任务编队时编队设置残留 2025-09-13 19:35:52 +08:00
uye
bc59477b24 fix: 自定义基建换班的班次不会随时间切换
fix #14092
2025-09-13 16:03:53 +08:00
uye
e4cb99c0c0 fix: "统一 WpfGui 工作目录"后,配置为外服无法运行 MAA
fix #14090
2025-09-13 15:42:39 +08:00
Status102
e65219efc5 fix: 移除 debug_demo (原Sample) 的对应 resource 额外查找逻辑 (#14081)
* rft: resource链接生成移动至cmake

* fix: smoke

* fix: smoke

* fix: smoke

* chore: 干脆移除掉好了

* chore: remove blank line

* fix: 移除多余链接创建

* perf: use DINSTALL_RESOURCE

* build: 整理cmake util函数

* chore: wpf link resource由cmake进行

* Revert "chore: wpf link resource由cmake进行"

This reverts commit 0e973734e7.

---------

Co-authored-by: MistEO <mistereo@hotmail.com>
2025-09-13 12:24:22 +08:00
uye
8bffeaa368 chore: 调整 y 存图时间间隔 2025-09-13 12:01:17 +08:00
uye
b017e90b6b feat: 给自定义任务添加 ScreenshotTaskPlugin 插件 2025-09-13 11:16:03 +08:00
MistEO
36da60ed9d fix: 统一 WpfGui 工作目录 (#14072)
* fix: 统一WpfGui工作目录

* chore: 漏了的cache目录

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: 多了一层相对目录

* feat: wpf 创建软连接

* feat: 添加 PathsHelper,提取通用地址

* feat: 提取通用目录

* fix: Combine

* fix: 重构依赖后 MaaWpfGui 的 resource 路径丢失 (#14077)

fix: mklink

* chore: 删除弹窗

* chore: 自定义基建使用绝对路径

* perf: 简化命名

* fix: 遗漏的issue rp

* fix: 基建

* perf: config.new

* feat: 去除本地作业前缀

* chore: 怎么改名了

* rft: rename

添加一个Dir后缀, 直接using static

* fix: remove不再使用的../../../resrouce

* perf: 短点

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
Co-authored-by: Status102 <102887808+status102@users.noreply.github.com>
2025-09-12 21:25:33 +08:00
uye
a71eb71eff fix: 逻辑写错了!
[skip changelog]
2025-09-12 19:04:21 +08:00
uye
283329f8ea chore: 调整定时器触发逻辑
fix #14083
2025-09-12 18:51:17 +08:00
Constrat
01eed2a376 ci: reduce building scope for resource updater + rm llvm.sh (#14084)
* test: pre target / component

* test: temp disable cache

* fix: add libcxx

* ci: remove llvm.sh after execution

* test: reconfigure cache
2025-09-12 12:46:26 +02:00
uye
a13212ea6e chore: 调整未检测到模拟器的输出 2025-09-12 17:21:23 +08:00
status102
cb31aa0dbd feat(wpf): 战斗列表点击作业时自动关闭列表, 原逻辑迁移至鼠标右键 2025-09-12 13:30:50 +08:00
nekosu
61265768e5 fix: add component for install libcxx only 2025-09-12 11:54:09 +08:00
Status102
85975d642c fix: 重构依赖后 MaaWpfGui 的 resource 路径丢失 (#14077)
fix: mklink
2025-09-12 00:55:40 +08:00
status102
8d5806b9e1 chore: gitignore
lnk for sln or other
2025-09-12 00:44:13 +08:00
Constrat
5b32c3a985 chore: where and how did this come from? 2025-09-11 18:22:00 +02:00
github-actions[bot]
4dc488229d chore: Auto Update Game Resources - 2025-09-11
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17650477221

[skip changelog]
2025-09-11 16:18:07 +00:00
Constrat
f021c66fa5 feat: convert ResourceUpdater to ubuntu-latest (#14076)
* feat: convert workflow to ubuntu-latest

* fix: missing toolchain

* fix: remove component specification

* fix: apparently I didn't push the deps changes

* fix: apparently I didn't push the cache changes

* fix: build everything

* chore: delete llvm

* fix: version.sh missing indentation

* fix: missing bash
2025-09-11 17:53:56 +02:00
github-actions[bot]
1bc06de043 chore: Auto Update Game Resources - 2025-09-11
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17644090943

[skip changelog]
2025-09-11 12:14:14 +00:00
Constrat
e278577435 chore: tweak workflow + remove .sln (#14074)
---------

Co-authored-by: nekosu <liao.hy@outlook.com>
2025-09-11 14:11:45 +02:00
Constrat
9911d82dce style: fix prettier 2025-09-11 13:49:32 +02:00
github-actions[bot]
ebcb4c561b chore: Auto Update Game Resources - 2025-09-11
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17642666189

[skip changelog]
2025-09-11 11:11:33 +00:00
Constrat
29c2f8f44e ci: temporarily revert changes to ResourceUpdater to allow caching exe 2025-09-11 13:09:07 +02:00
uye
d239cbad5c feat: 添加基建计划 ToolTip 提示 2025-09-11 16:40:05 +08:00
uye
5a25cf70a9 chore: 按时间切换基建配置不在任务运行中或任务开始前切换
fix #14060
2025-09-11 15:41:12 +08:00
uye
7144821351 style: 格式化 2025-09-11 15:28:51 +08:00
uye
68ff234848 chore: 调整刷新助战日志 2025-09-11 15:15:55 +08:00
uye
98e16bd915 chore: 调整界面颜色 2025-09-11 15:12:50 +08:00
uye
108979ef5f fix: 停止中或者空闲状态不允许点击停止按钮 2025-09-11 14:55:46 +08:00
萨拉托加
e42b1dde8f chore: 肉鸽丰川祥子招募策略 (#14035)
* chore: 肉鸽丰川祥子招募策略

* chore: 调整近卫招募策略
2025-09-11 14:45:03 +08:00
uye
ee8ceba005 fix: 鲍勃杂货店拥有四叶草化石且无抗干扰值时卡住
fix #14052
2025-09-11 14:44:20 +08:00
uye
1792dae76e perf: 优化更新设置中的徽标显示和逻辑 2025-09-11 14:19:00 +08:00
nekosu
7ac3851c71 ci: fix resource updater ignoring problem 2025-09-11 14:17:35 +08:00
github-actions[bot]
23acf4735a chore: Auto Update Game Resources - 2025-09-11
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17634608287

[skip changelog]
2025-09-11 05:09:14 +00:00
nekosu
1aaf852a80 ci: update resource updater pipeline
#14045
2025-09-11 12:50:20 +08:00
HY
c093cdeac8 chore: 繁中服「大荒」介面主題 (#14064)
* chore: 繁中服「大荒」介面主題

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-09-11 12:35:44 +08:00
nekosu
cc36807ec9 feat: support build resource updater
#14045
2025-09-11 12:09:33 +08:00
Constrat
ebbc9620d9 chore: remove ninja from ci.yml 2025-09-10 19:08:17 +02:00
Constrat
36e744dabf chore: restore older cache utilization for ci.yml (#14068)
* test: test cache speed

* chore: restore older cache utilization

* chore: rft
2025-09-10 19:05:58 +02:00
Constrat
5aa8f43d42 fix: prevent caching in non-dev branches 2025-09-10 17:54:09 +02:00
Constrat
54593075c3 ci: unify bootstrap step for ci.yml 2025-09-10 17:08:46 +02:00
Constrat
a3ad69e189 ci(perf): reimplement caching for smoke testing (linux version) 2025-09-10 17:07:00 +02:00
uye
71b2ce80a5 feat: 添加信息获取失败时的提示 2025-09-10 22:57:19 +08:00
Weiyou Wang
8d5459d7d2 refactor: 维护信用作战相关功能及其文档 (#14013)
* refactor: 维护信用作战相关功能及其文档

* docs: i18n

* docs: 格式美化

* fix: 我错了我错了

* fix: 怎么顺序也有关系啊

* docs: 编队 -> 编队栏围的编号; 分队->编队

* docs: hyphen -> en dash

* fix: 修复旧参数警告
2025-09-10 22:56:33 +08:00
Constrat
f74296a01a perf: remove resource from smoke testing
use the default location, do not duplicate
2025-09-10 16:54:21 +02:00
Constrat
139e79655d ci: split web and workflow codeql (#14067) 2025-09-10 16:25:55 +02:00
Constrat
694d78be1c ci(perf): update smoke testing to ubuntu runner (#14066)
* ci: update smoke testing to ubuntu runner

* fix: missing perms
2025-09-10 16:15:59 +02:00
nekosu
08562dc4e9 chore: update interface.json 2025-09-10 21:01:59 +08:00
Constrat
1acbcd493c perf: add --parallel to cmake workflows 2025-09-10 13:45:25 +02:00
Constrat
69fdf39f09 fix: stuck on max trust EN 2025-09-10 13:35:41 +02:00
nekosu
c94d2d55d7 fix: pthread linking problem
# 14045
2025-09-10 19:29:12 +08:00
MistEO
09bf0268ac ci: fix remove .h files 2025-09-10 15:24:42 +08:00
MistEO
a92f5eb354 ci: fix core version 2025-09-10 14:36:26 +08:00
nekosu
54031c5858 doc: update linux tutorial (en) 2025-09-10 11:55:22 +08:00
Constrat
51529ad257 i18n: EN 2025-09-09 15:35:09 +02:00
github-actions[bot]
14120ecc2b chore: Auto Update Game Resources - 2025-09-09
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17582157721

[skip changelog]
2025-09-09 12:13:01 +00:00
github-actions[bot]
01a36cf0be chore: Auto Templates Optimization
Triggered by c0da8956f8

[skip changelog]
2025-09-09 11:52:56 +00:00
uye
c0da8956f8 fix: 无法收取太鼓达人联动主题会客室信息板信用
fix #14007
2025-09-09 19:44:50 +08:00
uye
9ac783219d fix: cdk 过期时间超过 2038 年会爆炸(但 10000 年还是会爆炸 2025-09-09 18:59:37 +08:00
uye
950522fda0 feat: CDK 倒计时显示 2025-09-09 17:53:46 +08:00
MistEO
5a7030ad50 fix: nightly package zip 2025-09-09 17:08:21 +08:00
MistEO
907324370a ci: fix nightly build (#14050) 2025-09-09 17:05:22 +08:00
MistEO
03f6657244 fix: global resource path 2025-09-09 16:37:59 +08:00
uye
de60b0d05a feat: 成就设置中的图标颜色可以随着主题色动态更新 2025-09-09 16:14:39 +08:00
uye
37958ab9e5 feat: 添加 CDK 到期时间显示 2025-09-09 16:14:39 +08:00
uye
dab18e1964 feat: 添加 ResourceReferenceHelper,允许绑定 前后景色 key 2025-09-09 16:14:39 +08:00
MistEO
f4b7e39b01 ci: 删除codeql中的build 2025-09-09 13:47:40 +08:00
nekosu
91a0e51142 fix: linux cross compiling (#14048)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-09-09 13:22:53 +08:00
uye
2bbc7d6546 fix: maa 变成前文明产物了 2025-09-09 09:40:10 +08:00
MistEO
8e7a9e8691 ci: fix nightly, remove zip -d 2025-09-09 02:22:50 +08:00
MistEO
8082c9913b ci: fix nightly release 2025-09-09 01:52:54 +08:00
SherkeyXD
f00e580884 style: 添加换行
fuck pre commit
2025-09-09 01:50:31 +08:00
SherkeyXD
7c1b897caa chore: 更新 markdownlint 规则 2025-09-09 00:52:44 +08:00
dependabot[bot]
d799e8e800 ci: bump the github-actions group across 1 directory with 7 updates (#14041)
* ci: bump the github-actions group across 1 directory with 7 updates

Bumps the github-actions group with 7 updates in the /.github/workflows directory:

| Package | From | To |
| --- | --- | --- |
| [actions/checkout](https://github.com/actions/checkout) | `4` | `5` |
| [actions/download-artifact](https://github.com/actions/download-artifact) | `4` | `5` |
| [softprops/action-gh-release](https://github.com/softprops/action-gh-release) | `2.3.2` | `2.3.3` |
| [actions/github-script](https://github.com/actions/github-script) | `7` | `8` |
| [actions/setup-python](https://github.com/actions/setup-python) | `5` | `6` |
| [actions/stale](https://github.com/actions/stale) | `9` | `10` |
| [actions/setup-node](https://github.com/actions/setup-node) | `4` | `5` |



Updates `actions/checkout` from 4 to 5
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v5)

Updates `actions/download-artifact` from 4 to 5
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v4...v5)

Updates `softprops/action-gh-release` from 2.3.2 to 2.3.3
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](https://github.com/softprops/action-gh-release/compare/v2.3.2...v2.3.3)

Updates `actions/github-script` from 7 to 8
- [Release notes](https://github.com/actions/github-script/releases)
- [Commits](https://github.com/actions/github-script/compare/v7...v8)

Updates `actions/setup-python` from 5 to 6
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v5...v6)

Updates `actions/stale` from 9 to 10
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/stale/compare/v9...v10)

Updates `actions/setup-node` from 4 to 5
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: actions/download-artifact
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: softprops/action-gh-release
  dependency-version: 2.3.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
- dependency-name: actions/github-script
  dependency-version: '8'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: actions/setup-python
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: actions/stale
  dependency-version: '10'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: actions/setup-node
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>

* ci: fix schema

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2025-09-08 18:51:43 +02:00
SherkeyXD
b22cfad361 docs: 修复序号问题 2025-09-09 00:48:57 +08:00
MistEO
f67a31224c docs: typo 2025-09-09 00:42:59 +08:00
MistEO
c0a5a9bd46 docs: 更新文档cmake配置 2025-09-09 00:33:15 +08:00
MistEO
74bf88523f docs: 微调文档 2025-09-09 00:31:10 +08:00
MistEO
3372c7c82a chore: 删除一些遗留文件 2025-09-09 00:24:04 +08:00
MistEO
069e159f33 chore: 再糊点注释 2025-09-09 00:22:02 +08:00
MistEO
b6552c19a6 chore: 糊点注释 2025-09-09 00:20:40 +08:00
MistEO
d4a79ba9db fix: 糊一下 debug_demo 资源路径读取 2025-09-09 00:19:53 +08:00
MistEO
523b496daa fix: 修复 wpf gui 一些 resource path 读取
fix https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues/14044
2025-09-09 00:12:15 +08:00
github-actions[bot]
c9337f90f0 chore: Auto Update Game Resources - 2025-09-08
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17556983279

[skip changelog]
2025-09-08 16:07:51 +00:00
Loong
512bd90433 docs: reapply eebe0a9 (#14036) 2025-09-08 23:48:33 +08:00
MistEO
8f906d159e ci: 再次修复 nightly build 2025-09-08 22:50:57 +08:00
MistEO
6410c3c5a5 ci: 修复 nightly build 2025-09-08 22:49:24 +08:00
MistEO
bb922d8833 ci: 调整test相关宏 2025-09-08 22:46:04 +08:00
MistEO
f65e370620 docs: remove weblate 2025-09-08 22:12:29 +08:00
MistEO
546d4b860a fix: remove opencv highgui again 2025-09-08 21:57:09 +08:00
MistEO
0f29aa369e fix: remove opencv highgui 2025-09-08 21:51:22 +08:00
MistEO
f5d6b6cd8f build: fix ASST_DEBUG macro 2025-09-08 21:44:09 +08:00
MistEO
7b29be6faf chore: remove MaaDeps 2025-09-08 21:33:31 +08:00
MistEO
87e6484cb2 fix: build error of ASST_DEBUG 2025-09-08 21:32:11 +08:00
MistEO
51ab24945b refactor: 依赖大更新 (#13908)
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-09-08 21:17:47 +08:00
萨拉托加
918a41ac3a fix: 入暂亭特殊选项 2025-09-08 19:02:21 +08:00
Constrat
29b889372a fix: Sami floor detection 3
Thanks again @lin4289 on discord
2025-09-08 12:59:28 +02:00
萨拉托加
77891805d0 fix: 特里蒙旅行社特派团多选项
fix #14026
2025-09-08 18:44:55 +08:00
晓丶梦丶仁
e9206f4244 fix: IS5 同心 2025-09-08 15:54:18 +08:00
Loong
7807577312 chore: bump maa-cli to 0.5.8 (#14032) 2025-09-08 15:30:02 +08:00
晓丶梦丶仁
c4c6297370 fix: EN Roguelike@ChooseOperConfirm (#14033) 2025-09-08 15:21:43 +08:00
uye
8a5c3029c4 fix: 选择技能时可能会点出描述文字
fix #14030
2025-09-08 00:43:25 +08:00
github-actions[bot]
92631c999c chore: Auto Update Game Resources - 2025-09-07
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17530208991

[skip changelog]
2025-09-07 15:07:03 +00:00
Constrat
e48049f198 fix: Sami floor detection 2
Thanks again @lin4289 on discord
2025-09-07 16:47:36 +02:00
Weiyou Wang
407b140bca refactor: BrightPointAnalyzer -> PixelAnalyzer (#13915)
* feat: different filters for BrightPointAnalyzer

* refactor: rename BrightPointAnalyzer to PixelAnalyzer

* fix: 草忘了重命名文件了
2025-09-07 20:07:33 +08:00
uye
0e865982c6 fix: 基建使用队列轮换时如果未勾选对应设施则不进入
fix #14019
2025-09-07 16:53:55 +08:00
uye
1d62c972b7 fix: 重构后无法使用刷开局刷仅精二 2025-09-07 16:32:21 +08:00
github-actions[bot]
890fce3567 chore: Auto Templates Optimization
Triggered by cc0b229cdf

[skip changelog]
2025-09-07 07:22:48 +00:00
uye
cc0b229cdf fix: 部分背景下 mujica 主题无法进入对应功能
fix #14016
2025-09-07 15:22:21 +08:00
uye
bcd0ed5711 fix: 萨米肉鸽刷源石锭可能卡在预见的密文板
fix #14015
2025-09-07 14:54:41 +08:00
uye
29a34766e7 chore: 管理员权限启动额外判断是否开启 UAC 2025-09-07 13:48:59 +08:00
github-actions[bot]
ada54eef32 chore: Auto Update Game Resources - 2025-09-06
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17520467055

[skip changelog]
2025-09-06 22:44:21 +00:00
Constrat
dc0e63f83e fix: Sami floor detection
Thanks @lin4289 on discord
2025-09-07 00:27:58 +02:00
Weiyou Wang
ffbb3ed798 fix: 允许生息演算任务反复点击存档位置直到画面改变 (#14005) 2025-09-06 13:58:30 +08:00
不留
8e9a408997 refactor: mujika -> mujica (#14000)
rft: mujika -> mujica
2025-09-05 23:07:46 +08:00
萨拉托加
3bf9a67d56 fix: 肉鸽助战无法刷新 2025-09-05 22:40:54 +08:00
uye
c3a35b6df5 perf: 优化干员识别动画显示效果 2025-09-05 20:28:17 +08:00
uye
241b5c0047 Release v5.24.2 (#13989) 2025-09-05 16:27:50 +08:00
Hao Guan
4895a37278 chore(mac): 无人机&关卡提示 2025-09-05 15:59:55 +08:00
uye
d7ed013825 docs: Update CHANGELOG for version 5.24.2
Updated version number to v5.24.2 and added special notices regarding stage naming conventions. Included new features, improvements, fixes, and other changes.
2025-09-05 15:22:49 +08:00
uye
981f71f024 chore: 关卡小提示改用 Value 2025-09-05 15:17:23 +08:00
uye
7e6216d573 perf: 优化关卡验证逻辑,避免导入错误类型关卡时直接崩溃 2025-09-05 14:28:16 +08:00
uye
b81e49636d fix: 肉鸽因模拟器卡顿偶现无法退出商店
fix #13982
2025-09-05 11:00:52 +08:00
status102
f17c4bfd37 fix: 信用任务无法刷OF-1 2025-09-05 10:58:20 +08:00
github-actions[bot]
cfe40ad57b chore: Auto Update Game Resources - 2025-09-04
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17471326033

[skip changelog]
2025-09-04 17:06:50 +00:00
Windsland52
343e7831da fix: 给 MiniGame@ALL@GreenGrass@DuelChannel@End 加点延迟 (#13968) 2025-09-05 00:18:43 +08:00
uye
a50f7a0c90 chore: 调整日志输出格式 2025-09-05 00:00:25 +08:00
github-actions[bot]
58acb92740 chore: Auto Update Game Resources - 2025-09-04
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17467691092

[skip changelog]
2025-09-04 14:46:04 +00:00
不留
b26d656d94 feat: 适配 命运(AveMujica) 主题 (#13970) 2025-09-04 21:56:34 +08:00
萨拉托加
7fed3d1e36 fix: 八幡海铃识别错误 2025-09-04 21:39:46 +08:00
uye
550386bb63 chore: 悖论模拟选技能改用固定位置,避免透明背景影响 2025-09-04 20:20:50 +08:00
uye
09638b2c4e fix: 选技能可能会点到技能范围 2025-09-04 17:20:51 +08:00
SherkeyXD
06265f99c5 feat: SideStory「无忧梦呓」导航 (#13969) 2025-09-04 17:14:33 +08:00
github-actions[bot]
12ef622ff3 chore: Auto Update Game Resources - 2025-09-04
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17457528502

[skip changelog]
2025-09-04 08:09:34 +00:00
github-actions[bot]
4219064117 chore: Auto Update Game Resources - 2025-09-04
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17456122106

[skip changelog]
2025-09-04 07:07:29 +00:00
github-actions[bot]
83343de32b chore: Auto Update Game Resources - 2025-09-04
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17453588679

[skip changelog]
2025-09-04 04:45:42 +00:00
github-actions[bot]
6e3230b508 chore: Auto Update Game Resources - 2025-09-04
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17453012021

[skip changelog]
2025-09-04 04:08:47 +00:00
github-actions[bot]
bec3394521 chore: Auto Templates Optimization
Triggered by 9749c858f7

[skip changelog]
2025-09-04 02:34:18 +00:00
github-actions[bot]
9749c858f7 chore: Auto Update Game Resources - 2025-09-04
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17451555281

[skip changelog]
2025-09-04 02:33:49 +00:00
github-actions[bot]
4d14212f15 chore: Auto Update Game Resources - 2025-09-03
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17444811350

[skip changelog]
2025-09-03 20:08:07 +00:00
uye
a8d6068e87 feat: 勾选 「下次公告更新前不再显示」 勾选框时不需要滚到底才能关闭公告 2025-09-04 01:29:53 +08:00
uye
f4d89ea93c Release v5.24.1 (#13964) 2025-09-04 00:59:17 +08:00
uye
08c32c6f15 docs: Release notes for version 5.24.1 2025-09-04 00:55:45 +08:00
不留
3293ce5beb feat: 适配 悬想(界园肉鸽) 主题 (#13948)
* feat: 适配界园肉鸽主题

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: DepotEnter.png

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: DepotEnter.png

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-09-04 00:47:03 +08:00
uye
390cfc38a0 feat: 悖论通关后自动取消勾选,遇到战斗失败的关卡时停止 (#13963)
* feat: 悖论通关后自动取消勾选

* fix: CopilotTask 一个个加
2025-09-04 00:44:40 +08:00
github-actions[bot]
b23e63e352 chore: Auto Update Game Resources - 2025-09-03
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17433572057

[skip changelog]
2025-09-03 12:34:27 +00:00
HY
7deaf65c06 fix: 繁中服薩米肉鴿第五層名稱 (#13961)
* fix: 繁中服薩米肉鴿第五層名稱

* chore: 再改一點....再改一點
2025-09-03 14:15:57 +02:00
uye
25b1c73659 refactor: 将 「掉线时自动重连」 从 「运行设置」 移到 「刷理智设置」 中 2025-09-03 20:15:30 +08:00
uye
6a58723398 refactor: 将 「自动肉鸽在战斗结束前延迟停止动作」 从 「运行设置」 移到 「肉鸽设置」 中 2025-09-03 20:07:19 +08:00
Lucien Shaw
94ecbe2cb5 docs: 修正文档中的部分错误 (#13923)
* docs: 替换英文连接设置文档中的一条外部文档链接

将文档中的一条外部文档链接替换为对应的英文文档链接

* docs: 更正中文常见问题文档中的一处别字

将“登陆”改为“登录”,与繁体中文和英文版本保持一致

* docs: 更新三种语言文档中有关WSA的提示信息

更正简体中文、繁体中文和英文语言文档中有关WSA的提示信息

* docs: ko-kr

* docs: 替换日文连接设置文档中的一条外部文档链接

将文档中的BlueStacks相关外部文档链接替换为对应的日文文档链接

* docs: 更新所有语言的连接设置文档中有关WSA的提示部分

所有语言使用统一名称`Windows Subsystem for Android™ (WSA)`
更新了日语文档中的停止支持提示内容

---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
2025-09-03 09:35:18 +08:00
HY
8b6c5e3011 chore: 繁中服「視相」主題介面 (#13947)
* chore: 繁中服「視相」主題介面

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-09-03 00:26:52 +08:00
不留
041c03d9be ci: 优化 optimize-templates 在 fork 仓库下的流程 (#13949)
Update optimize-templates.yml
2025-09-03 00:26:13 +08:00
github-actions[bot]
a1fe1ad099 chore: Auto Update Game Resources - 2025-09-02
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17405569167

[skip changelog]
2025-09-02 13:47:34 +00:00
HY
47f3a33167 chore: 繁中服「銀心湖列車」復刻活動導航 (#13945) 2025-09-02 15:34:39 +02:00
Constrat
5ff283cd18 fix: EN not picking up Trade Orders 2025-09-02 13:35:20 +02:00
github-actions[bot]
c8dee82a3b chore: Auto Update Game Resources - 2025-09-02
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17397385457

[skip changelog]
2025-09-02 08:10:53 +00:00
github-actions[bot]
5245bd6fbc chore: Auto Templates Optimization
Triggered by bfb5deca88

[skip changelog]
2025-09-01 22:51:45 +00:00
Constrat
bfb5deca88 fix: IS5 EN StageRefresh not working, updated template 2025-09-02 00:51:20 +02:00
status102
2bfd2257b4 fix: 自动编队后续追加自定干员失败 2025-09-02 00:57:11 +08:00
uye
7b36d43e5e fix: 错误的关卡名可能导致验证崩溃 2025-09-01 17:36:24 +08:00
uye
3943189550 fix: 公告重复点击时不会前置窗口 2025-09-01 13:45:48 +08:00
uye
f7eeffba9b chore: 调整公告日志记录 2025-09-01 12:56:29 +08:00
uye
27830218bc chore: 提取 isBuildOutputFolder 2025-08-31 23:35:40 +08:00
github-actions[bot]
79e32af4eb chore: Auto Templates Optimization
Triggered by 9d8dbe80cc

[skip changelog]
2025-08-31 15:08:30 +00:00
Constrat
9d8dbe80cc fix: IS2 and IS3 not starting for EN 2025-08-31 17:08:09 +02:00
Manicsteiner
0056a50a8e chore: JP ocr fix (#13938) 2025-08-31 16:58:46 +02:00
uye
0b22410351 chore: 编译目录下不检查 dll 2025-08-31 22:46:53 +08:00
uye
9d0df414c9 fix: 战斗列表无法进入 1/2 星干员悖论 2025-08-31 13:42:40 +08:00
uye
2cac439e5f fix: 悖论模拟战斗列表页尾干员错位 2025-08-31 13:42:40 +08:00
Status102
4a9e8f5d1e refactor(wpf): 长草任务运行状态 (#13928)
* rft(wpf): 长草任务运行状态

移除战斗任务及基建任务独立运行状态, link to #12315

* perf: remove debug log

* perf: remove debug log
2025-08-31 11:13:54 +08:00
Constrat
556d1bda73 i18n: EN 2025-08-30 17:44:48 +02:00
uye
b7681becd3 chore: 简化 Split 2025-08-30 23:21:51 +08:00
uye
7b169cb441 perf: 日志记录增加 ClassName 输出,debug 模式下属性切换新增反引号显示 2025-08-30 23:17:51 +08:00
Constrat
aca317e67e fix: update Infrast templates for EN 2025-08-30 17:03:01 +02:00
Manicsteiner
f9e0ef32bc i18n: JP 2025-08-30 23:00:33 +08:00
status102
46216817c4 chore: 漏了( 2025-08-30 22:32:05 +08:00
uye
1cc3268f70 perf: 优化 Copilot 列表验证逻辑,提高性能 2025-08-30 22:29:35 +08:00
status102
f45d051b79 rft: OperatorType -> OperatorRole 2025-08-30 22:22:39 +08:00
status102
b72a3569bf fix: wpf空作业列表点开始 2025-08-30 22:14:27 +08:00
uye
e1f766e23f Release v5.24.0 (#13916) 2025-08-30 17:07:33 +08:00
github-actions[bot]
2add7f1173 docs: Auto Update Changelogs of v5.24.0 (#13917)
* docs: Auto Generate Changelog of Release v5.24.0

* docs: Update CHANGELOG with recent changes and fixes

* docs: Update CHANGELOG for v5.24.0 enhancements

更新了 v5.24.0 的功能进化,包括一键悖论模拟、支持新内容和其他优化。

* feat: 更新 CHANGELOG.md

* feat: Update CHANGELOG.md

* feat: Update CHANGELOG.md

* feat: Update CHANGELOG.md

* feat: Update CHANGELOG.md

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
Co-authored-by: AnnAngela <naganjue@vip.qq.com>
2025-08-30 17:07:10 +08:00
AnnAngela
198f81812a chore: Update localization strings for Mini Game section 2025-08-30 16:06:28 +08:00
Lucien Shaw
fc711c9dbd ci: 更正了生成changelog工作流中debug信息的一处错误 (#13926)
ci: 更正了生成changelog工作流中debug信息的一处笔误

将Target RP更正为Target PR
2025-08-30 11:50:43 +08:00
uye
fb52a07353 style: 空格
[skip changelog]
2025-08-30 10:55:28 +08:00
soundofautumn
ca44b82acd chore: 整合枚举类 OperProfession 和 Role (#13914)
* chore: 整合枚举类OperProfession和Role

* fix: 加载数据时报错
2025-08-30 10:53:57 +08:00
pre-commit-ci[bot]
53b22fe6b9 chore: Auto update by pre-commit hooks [skip changelog] 2025-08-30 02:50:20 +00:00
uye
062f7480d7 feat: 悖论模拟战斗列表通过职业找人 2025-08-30 10:47:55 +08:00
pre-commit-ci[bot]
f97f6a2cb3 chore: Auto update by pre-commit hooks [skip changelog] 2025-08-30 01:54:35 +00:00
uye
12de1806f1 feat: 悖论模拟战斗列表支持跳过未拥有的干员 2025-08-30 09:52:12 +08:00
uye
1a374a3129 fix: mac
[skip changelog]
2025-08-30 09:31:32 +08:00
uye
7593ef29a9 fix: 悖论模拟单文件无法使用 2025-08-30 01:36:15 +08:00
uye
ae0da25d36 feat: mac 支持蜜果城 2025-08-30 01:19:20 +08:00
Constrat
3a197c4445 fix: CrownSlayer -> Crownslayer for EN 2025-08-29 16:58:40 +02:00
github-actions[bot]
51a073221b chore: Auto Templates Optimization
Triggered by a267cc5f66

[skip changelog]
2025-08-29 14:31:06 +00:00
Constrat
a267cc5f66 fix: RoguelikeDialogSkip for EN 2025-08-29 16:30:43 +02:00
github-actions[bot]
a6e61f7a6b chore: Auto Update Game Resources - 2025-08-29
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17323442926

[skip changelog]
2025-08-29 12:12:24 +00:00
uye
642c8eefe6 feat: 远程通知添加 [MAA] 前缀
fix #13912
2025-08-29 19:39:28 +08:00
uye
a54433ad8c feat: 战斗列表悖论模拟关卡名转为干员名 2025-08-29 18:54:13 +08:00
uye
af68bf918b fix: 关卡名下划线被解释成 CheckBox 访问键 2025-08-29 18:50:11 +08:00
uye
ad2945a815 feat: 调整战斗列表提示描述 2025-08-29 11:09:14 +08:00
Constrat
64e0c4ac3c fix: BattleQuickFormationExpandRole text ocr 2025-08-29 02:22:27 +02:00
Constrat
3d88182c44 fix: OfficeMini template for EN 2025-08-29 01:50:18 +02:00
Constrat
3a12869b7e fix: OfficeMini template for EN 2025-08-29 01:49:52 +02:00
github-actions[bot]
433e8d910f chore: Auto Update Game Resources - 2025-08-28
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17310328154

[skip changelog]
2025-08-28 23:27:12 +00:00
Constrat
b789183f6d chore: YostarEN updated main stage navigation (#13906)
* chore: remove unused roguelike@integratedstrategies

* chore: remove unused StageTheme and Resource

* chore: PLACEHOLDER for clickchapter

* chore: minus placeholder + ocr fixes

* chore: continue

* chore: final placeholder

* fix: custom ROI for default and movements
2025-08-29 01:19:43 +02:00
github-actions[bot]
887574aa6e chore: Auto Templates Optimization
Triggered by 5676a2df3b

[skip changelog]
2025-08-28 22:55:34 +00:00
Constrat
5676a2df3b fix: ROI and text for EA YostarEN 2025-08-29 00:55:13 +02:00
Constrat
36536d9a13 fix: YostarEN text render template changes 2025-08-29 00:55:03 +02:00
uye
63fd4ca0d8 perf: 覆盖 ThirdlyTextBrush,优化深色模式下的显示效果 2025-08-29 00:49:49 +08:00
Constrat
b1a2999c15 i18n: Give new line for English downloading from 2025-08-28 18:41:00 +02:00
uye
6770ec19c8 feat: 加个启动提醒 2025-08-28 23:56:11 +08:00
Manicsteiner
2086377f48 chore: YostarJP remove old navigation (#13905) 2025-08-28 23:32:22 +08:00
uye
d282b5b999 Release v5.24.0-beta.1 (#13866) 2025-08-28 23:00:43 +08:00
github-actions[bot]
fac1f265d7 docs: Auto Update Changelogs of v5.24.0-beta.1 (#13901)
* docs: Auto Generate Changelog of Release v5.24.0-beta.1

* 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>
2025-08-28 23:00:00 +08:00
HX3N
5376157f69 chore: YostarKR new main stage navigation and ocr fix (#13903)
* chore: remove task and add ocr

* chore: ocr fix

* chore: Store@Purchase
2025-08-28 16:29:01 +02:00
Manicsteiner
7e3a133066 chore: YostarJP new main stage navigation and ocr fix (#13902) 2025-08-28 14:12:22 +02:00
github-actions[bot]
05e3933115 chore: Auto Update Game Resources - 2025-08-28
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17294386616

[skip changelog]
2025-08-28 11:26:45 +00:00
status102
8ee7f31887 rft(wpf): 悖论模拟使用多任务流程 2025-08-28 18:40:21 +08:00
status102
44dd7c5501 perf: 任务baseTask 2025-08-28 18:25:28 +08:00
status102
aa21512ab9 rft: remove ParadoxMode var 2025-08-28 18:10:57 +08:00
status102
714e37ded2 rft(core): 移除MaaCore不再支持的自动战斗作业代码解析 2025-08-28 18:07:36 +08:00
status102
f5aee4f3fb docs: 注释
[skip changelog]
2025-08-28 18:04:18 +08:00
status102
c10df90fbf fix: var type 2025-08-28 18:01:46 +08:00
uye
79e311185a style: 什么奇怪的换行 2025-08-28 17:59:14 +08:00
uye
016783c86c chore: 删掉 core 的联网功能 2025-08-28 17:56:51 +08:00
uye
770130e774 chore: dll 检测排除带 maa 的 dll 2025-08-28 17:52:13 +08:00
Rbqwow
363aa99b83 feat: 在启动时检测额外的DLL文件 (#13850)
* feat: 在启动时检测额外的DLL文件

* chore: 改一下弹窗样式

* chore: 修改检测逻辑与翻译

* chore: 显示一下不属于 maa 的 dll

* feat: 启动弹窗都加个图标

* chore: 就要大写就要大写

* chore: MessageBoxHelper

---------

Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-08-28 17:37:25 +08:00
pre-commit-ci[bot]
2710664a79 chore: Auto update by pre-commit hooks [skip changelog] 2025-08-28 09:36:32 +00:00
uye
388b3627cb chore: core 删除 cpr 2025-08-28 17:35:23 +08:00
github-actions[bot]
3359fa618e chore: Auto Templates Optimization
Triggered by 1691f828ff

[skip changelog]
2025-08-28 09:33:13 +00:00
Status102
0c3c3df8f2 feat: 支持一键悖论模拟 (#13893)
* feat: 支持一键悖论模拟 (#13885)

* feat: 支持一键悖论模拟

* chore: OperParadoxBegin EN

* chore: Auto update by pre-commit hooks [skip changelog]

* feat: 支持一键悖论模拟

* chore: Auto update by pre-commit hooks [skip changelog]

* feat: 支持一键悖论模拟

* fix: 更新悖论模拟按钮位置

* feat: 悖论模拟UI资源添加

* fix: 删除xml中被误添加的文件

* feat: 根据关卡类型显示选项

* i18n: 标签翻译

* feat: 修改小提示

* i18n: EN

* chore: zh-tw

* i18n: KR

* i18n: KR 2

Long text breaks the UI :(

* i18n: SSS -> SSS

* feat: 多行 TabControl

* chore: 调整布局

* i18n: JP

* perf: 优化返回流程

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: 删掉 core 的联网功能

---------

Co-authored-by: 翔宇 战 <1361227324@qq.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: _Burnside <33724737+Burnside999@users.noreply.github.com>
Co-authored-by: momomochi987 <as99us301@gmail.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>

* fix: 新战斗导航下的悖论模拟

---------

Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
Co-authored-by: 翔宇 战 <1361227324@qq.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: _Burnside <33724737+Burnside999@users.noreply.github.com>
Co-authored-by: momomochi987 <as99us301@gmail.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
2025-08-28 17:32:32 +08:00
uye
1691f828ff feat: 争锋频道:蜜果城 2025-08-28 17:32:14 +08:00
github-actions[bot]
1fed8feed0 chore: Auto Update Game Resources - 2025-08-28
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17291732401

[skip changelog]
2025-08-28 09:29:35 +00:00
github-actions[bot]
351ce45a52 chore: Auto Update Game Resources - 2025-08-28
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17291207437

[skip changelog]
2025-08-28 09:09:22 +00:00
HX3N
c56e81e8be fix: YostarKR EA navigation 2025-08-28 18:07:56 +09:00
uye
c3bcb3105c fix: 勾八导航乱写 2025-08-28 17:06:06 +08:00
github-actions[bot]
0bf9379d35 chore: Auto Update Game Resources - 2025-08-28
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17284296625

[skip changelog]
2025-08-28 02:49:02 +00:00
dantmnf
a3dba0b54a style: 狗屎自动分词💩 (#13897)
Co-authored-by: dantmnf <dantmnf@users.noreply.github.com>
2025-08-28 01:00:56 +08:00
Manicsteiner
a5dcfd9100 chore: YostarJP EA navigation 2025-08-27 09:39:14 +08:00
Constrat
5f1159b2d6 chore: YostarEN EA navigation 2025-08-27 00:08:01 +02:00
HX3N
9c6df33d77 chore: YostarKR EA navigation (#13888) 2025-08-27 01:00:11 +08:00
soundofautumn
2b7894886f i18n: 自动战斗模组错误本地化 & 移除多余的行末空格 (#13800)
* i18n: 自动战斗模组错误本地化

* i18n: EN

* i18n: 忘记给en-us加了

* i18n: KR tweak translation

* chore: 统一换行符

---------

Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
2025-08-26 23:52:45 +08:00
status102
7ce19904c0 fix(wpf): 自动战斗界面Idle setter限制 2025-08-26 23:25:57 +08:00
status102
5b2b2b7fe8 fix: 自动战斗-战斗列表使用错误的作业战斗 2025-08-26 23:25:34 +08:00
github-actions[bot]
385c26b065 chore: Auto Update Game Resources - 2025-08-26
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17232989951

[skip changelog]
2025-08-26 08:49:37 +00:00
github-actions[bot]
9d60945af9 chore: Auto Update Game Resources - 2025-08-26
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17232079660

[skip changelog]
2025-08-26 08:11:58 +00:00
uye
8f1dbb64c3 fix: filters 2025-08-26 15:09:46 +08:00
uye
1ca9c3823b chore: 调整小游戏内容顺序 2025-08-26 11:05:20 +08:00
uye
27b0ddaf2f chore: 修改 RA 和肉鸽的进入终端等待时间
fix #13858
2025-08-26 10:43:57 +08:00
uye
ec4a86fab2 fix: 信用购物有时候点不掉危机合约支援界面 2025-08-26 09:28:05 +08:00
萨拉托加
86fbd1061b chore: 调整萨卡兹,界园的古米精二优先度 2025-08-25 17:58:44 +08:00
github-actions[bot]
8aada79ef5 chore: Auto Update Game Resources - 2025-08-24
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17193202533

[skip changelog]
2025-08-24 20:07:42 +00:00
Status102
b150c0d97b rft: 重构自动战斗战斗列表 (#13852)
* rft(core): 重构多作业自动战斗

* rft(wpf): wpf支持新任务参数

* perf: 移除不必要move

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: 任务计数

* fix: 战斗完成提示

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-08-24 22:51:08 +08:00
uye
3b5ef33daa chore: 修改备份文件写入时间 2025-08-24 22:33:15 +08:00
uye
e9f9e5a6b3 chore: 关机/休眠/睡眠 统一调用 PowerManagement 2025-08-24 20:12:35 +08:00
uye
c7cc4fe836 chore: 调整 GetModuleFileName 判断 2025-08-24 20:11:59 +08:00
uye
d6822fed31 chore: 更新 CsWin32 2025-08-24 20:11:07 +08:00
uye
c6e5fd43cb chore: luid 2025-08-24 19:05:01 +08:00
uye
a8164506d9 chore: 移除未使用的 container 2025-08-24 18:28:24 +08:00
uye
83ef927474 fix: ServerChan 未使用通用 httpService 2025-08-24 17:23:03 +08:00
uye
798db61999 refactor: ToastNotification 重构 2025-08-24 17:08:58 +08:00
uye
ade3e7963a style: GpuOption format 2025-08-24 14:52:59 +08:00
uye
9f899dd96e style: 统一 UI 绑定的方法 注释 2025-08-24 12:28:07 +08:00
uye
39f45e623a chore: A single-line comment within C# code is not preceded by a blank line. 2025-08-24 12:25:44 +08:00
uye
39ba4e91f5 chore: A C# partial element is missing a documentation header. 2025-08-24 12:21:47 +08:00
uye
25878b5380 chore: An item within a C# enumeration is missing an Xml documentation header. 2025-08-24 12:16:12 +08:00
uye
b62dea6a19 chore: A C# method, constructor, delegate or indexer element is missing documentation for one or more of its parameters. 2025-08-24 11:54:28 +08:00
uye
6cf7272aff chore: The XML header documentation for a C# element is missing a tag. 2025-08-24 11:53:28 +08:00
uye
2c5568d4f8 chore: Copyright 2025 2025-08-24 11:27:12 +08:00
uye
46beb3308e chore: mumu 使用 7555 端口时禁用 Index 检测,添加日志警告 2025-08-24 10:49:06 +08:00
uye
7514438144 fix: 错误清除 _tasksStatus 的时机 2025-08-24 00:28:24 +08:00
status102
39de085354 chore: file header 2025-08-23 15:45:26 +08:00
status102
ad4e32a92b feat(core): 自动战斗关卡结束后增加识别使用黑色返回按钮的检测 2025-08-23 12:27:32 +08:00
github-actions[bot]
114900e815 chore: Auto Update Game Resources - 2025-08-22
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17164905456

[skip changelog]
2025-08-22 20:08:26 +00:00
status102
6db11fa846 rft: 自动编队助战的确实干员读取 2025-08-22 22:32:44 +08:00
uye
c14225f54f chore: 加点肉鸽事件 fallback 前延迟,可能减轻点网络波动影响
fix #13848
fix #13784
2025-08-22 19:32:48 +08:00
uye
62b7b0c645 fix: 肉鸽入口等待 ocr 识别错误 2025-08-22 19:32:47 +08:00
status102
ee3a95f092 fix: 界园肉鸽商店钱包余额ocr roi 2025-08-22 17:27:17 +08:00
status102
eb370ae792 rft: 自动战斗不再使用need_navigate字段作为导航启用开关, 而是直接使用navigate_name字段 2025-08-22 16:17:48 +08:00
status102
4077100aa8 fix(wpf): 自动战斗-战斗列表突袭提示显示在运行期显示效果 2025-08-22 15:10:59 +08:00
status102
d2ada336e5 perf: 向战斗队列中添加SSS作业时追加错误输出 2025-08-22 13:37:27 +08:00
status102
b58a0c7bde fix: 不再点击停止任务时移除存储的TaskId 2025-08-22 13:37:26 +08:00
HY
ee37851d16 fix: 繁中服薩米肉鴿第四層名稱 (#13846) 2025-08-22 08:39:17 +08:00
status102
71ec401cde fix: 肉鸽投资存款不变重试20次退出 2025-08-21 23:51:42 +08:00
uye
f8c79833a1 feat: 更新源为海外源时隐藏 Mirror酱 CDK 输入框 2025-08-21 23:25:40 +08:00
uye
710515f581 fix: required version 显示错误 2025-08-21 23:09:00 +08:00
uye
36c8ee9942 fix: 会客室换班失败(如选人过程中弹出线索交流完成)时重开任务
fix #13449
2025-08-21 17:37:57 +08:00
Constrat
5c4a9338e1 ci: split codeql (#13812)
* perf: codeql core

* perf: standardize caching for codeqlcore

* fix: correct cache keys

* perf: add codeql-js for website and workflows

* fix: typo

* fix: use bash instead of pwsh in ubuntu
2025-08-20 23:14:16 +02:00
status102
f9d5b2b417 fix: 肉鸽开局招募在无开局干员时, 无法识别两招募的左侧位 2025-08-20 22:37:12 +08:00
萨拉托加
8b9fe3fecc fix: 千古鸭帝进战斗 2025-08-20 21:28:24 +08:00
uye
dc02a754d1 fix: 日服的萨卡兹第五层怎么全 jb 改成 exit 了
fix #13829
2025-08-20 20:21:13 +08:00
Status102
b9bd50d1c5 refactor: 自动战斗干员编队状态; 修复编队中干员属性未达标时反复报错; 缺少干员输出时, 干员组内干员打平输出 (#13795)
* chore: 状态定义

* rft: 重构干员编队的状态

* feat: 编入上次干员

* rft: wpf输出

* fix: ubuntu
2025-08-20 19:59:08 +08:00
Weiyou Wang
f29d9784f7 fix: 修正生息演算中 "丰饶灌木林" 的 OCR 识别 (#13825) 2025-08-20 17:43:14 +08:00
uye
c7c9f2d3c5 chore: 调整技能截图判断 2025-08-20 17:24:09 +08:00
Hao Guan
8e53d6a036 fix(mac): 资源更新文件处理 2025-08-20 17:19:26 +08:00
github-actions[bot]
43d86b717a chore: Auto Update Game Resources - 2025-08-20
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17091976053

[skip changelog]
2025-08-20 07:45:38 +00:00
uye
8aa65c6146 fix: 萨卡兹肉鸽因动画延时偶发无法领取去伪存真合成物品
fix #13822
2025-08-20 15:33:48 +08:00
github-actions[bot]
0dee92ab2c chore: Auto Update Game Resources - 2025-08-20
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17087999432

[skip changelog]
2025-08-20 03:50:54 +00:00
uye
cd078e924d fix: 萨米投资进二层会卡在预见密文板 2025-08-20 11:45:21 +08:00
Constrat
234b75dec2 perf: limit codeql run only to source code (#13802) 2025-08-19 16:18:17 +02:00
uye
3009055cb0 Release v5.23.2 (#13794) 2025-08-19 22:17:26 +08:00
uye
d1175ee34b docs: Update CHANGELOG.md 2025-08-19 22:16:13 +08:00
萨拉托加
433a009835 chore: 修改保全作业站位和工具人数量 (#13797)
* chore: 修改保全作业站位和工具人数量

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-08-19 21:39:22 +08:00
HX3N
84f3a7cc5d chore: KR use Official UiTheme template
[skip changelog]
2025-08-19 22:35:53 +09:00
github-actions[bot]
f6c9960300 chore: Auto Update Game Resources - 2025-08-19
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17071232507

[skip changelog]
2025-08-19 13:34:02 +00:00
Constrat
09ff523de7 fix: use Official template for Global (#13801)
* fix: use Official template for EN

* chore: delete infrastoverview.png

* chore: KR delete template

* chore: JP delete template

---------

Co-authored-by: momomochi987 <as99us301@gmail.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
2025-08-19 21:28:50 +08:00
HY
e0b230a259 chore: 調整繁中服水月、薩卡茲肉鴿相關內容 (#13806)
* chore: 補上水月跟薩卡茲肉鴿 mode1 task

* chore: 調整 GUI 上的薩卡茲分隊名稱
2025-08-19 21:27:34 +08:00
uye
8628130cd3 fix: tw 服缺少薩米 mode 1 对应层名翻译
fix #13803
2025-08-19 20:38:59 +08:00
travellerse
0644592e42 perf: 自动编队干员组显示模组需求 (#13796)
* perf: 自动编队干员组显示模组需求

* chore: 简化判断逻辑

* chore: 统一格式

---------

Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-08-19 19:51:44 +08:00
github-actions[bot]
331ec96ac8 chore: Auto Update Game Resources - 2025-08-19
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17064104659

[skip changelog]
2025-08-19 08:33:19 +00:00
soundofautumn
3be18fd67d i18n: 自动战斗日志本地化 (#13777)
* feat: 保全派驻工具人信息本地化

* chore: 拆分干员职业类型枚举

* feat: 战斗日志本地化

* chore: 修改切换倍数描述

* feat: 剩余自动战斗本地化

* chore: 简化字典映射

---------

Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-08-19 15:32:35 +08:00
travellerse
c963ab5a41 fix: 支持新建关闭状态的节点,并修正日志输出 (#13766)
* fix: 修复日志输出参数格式

* fix: 修正界园树洞的节点网格大小

* fix: 支持新建关闭状态的节点
2025-08-19 15:06:50 +08:00
github-actions[bot]
29fca06687 chore: Auto Templates Optimization
Triggered by ef1fd744d1

[skip changelog]
2025-08-19 06:46:41 +00:00
uye
ef1fd744d1 fix: 烛火数量过少时无法匹配退出
fix #13788
2025-08-19 14:45:25 +08:00
uye
099359bb5d fix: Y 模组模板匹配阈值要求过高
fix #13791
2025-08-19 14:40:34 +08:00
uye
e2a869e547 chore: 删除多余 next
[skip changelog]
2025-08-19 13:47:02 +08:00
uye
ac527b3617 fix: 退出商店时如果没有识别到下一层的文字会卡在遇见密文板
fix #13787
2025-08-19 13:45:40 +08:00
travellerse
2ded386178 fix: 因模组约束取消干员时删除编队信息 (#13780) 2025-08-19 00:03:04 +08:00
萨拉托加
d609d6a667 chore: 修改并添加保全派驻作业 (#13783)
* chore: 修改并添加保全派驻作业

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-08-18 23:42:49 +08:00
Constrat
9a7ac0c1fe fix: EN Phantom increase ROI for StrategyChange 2025-08-18 16:22:19 +02:00
uye
01b84292d9 chore: 自动战斗中的 使用编队 改为勾选框 2025-08-18 20:28:51 +08:00
uye
3fe5caadd0 feat: 肉鸽难度括号里显示一下对应难度 2025-08-18 20:05:35 +08:00
Manicsteiner
c5a7fe10fa chore: missing tasks for JP IS 2025-08-18 19:33:10 +08:00
HX3N
33b7fc4166 chore: fix typo default to exit
[skip changelog]
2025-08-18 19:09:14 +09:00
HX3N
f4b5672f0c chore: missing tasks for KR IS
follow 55168098db
2025-08-18 19:05:37 +09:00
github-actions[bot]
781e29c1e2 chore: Auto Update Game Resources - 2025-08-18
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17037068240

[skip changelog]
2025-08-18 09:48:10 +00:00
Constrat
55168098db chore: missing tasks for EN IS 2025-08-18 11:43:54 +02:00
status102
6f46e94754 perf: copilot useFormation ui 2025-08-18 16:38:41 +08:00
萨拉托加
eb0396cc88 fix: 萨米无法离开深埋迷境 2025-08-18 08:58:39 +08:00
Constrat
7bcf0897a5 fix: EN Sami big typo. 2025-08-18 01:15:26 +02:00
uye
b63ef6dc66 fix: 因动画或卡顿导致无法退出商店 2025-08-17 23:43:48 +08:00
uye
65c7158d1c Release v5.23.1 (#13760) 2025-08-17 20:16:30 +08:00
uye
62619170da docs: Update CHANGELOG.md 2025-08-17 20:15:43 +08:00
uye
730e7258bc style: 格式化
[skip changelog]
2025-08-17 20:13:37 +08:00
uye
586220d9d8 fix: 商店没钱了不会停止投资 2025-08-17 20:12:24 +08:00
uye
ba44ec6a40 Release v5.23.0 (#13754) 2025-08-17 19:46:38 +08:00
github-actions[bot]
db2e1ccf4e docs: Auto Update Changelogs of v5.23.0 (#13755)
* docs: Auto Generate Changelog of Release v5.23.0

* docs: Update CHANGELOG.md

* docs: Update CHANGELOG.md

* feat: Update CHANGELOG.md

* docs: Update CHANGELOG.md

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
Co-authored-by: AnnAngela <naganjue@vip.qq.com>
2025-08-17 19:39:09 +08:00
萨拉托加
a8d293999e chore: 更新新保全 (#13756)
* chore: 更新新保全

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: 迁移老保全

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-08-17 17:34:58 +08:00
uye
3ae526ff72 fix: 萨米肉鸽刷坍缩范式闪退
fix #13750
2025-08-17 15:06:51 +08:00
vcfch843875
e99e44ee91 docs: 修正“刷理智”文档表述错误 (#13745)
* docs: 修正表述错误

floor函数是向下取整函数,所以原表述有误。

* docs: 修正表述错误

floor函数是向下取整函数,所以原表述有误。

* docs: 表現の誤りを修正

floor 関数は切り捨て関数なので、元の表現は誤りです。
2025-08-17 13:44:54 +08:00
github-actions[bot]
ea55e0463b chore: Auto Update Game Resources - 2025-08-16
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17011048822

[skip changelog]
2025-08-16 17:28:40 +00:00
travellerse
b6a953cb1d fix: 修复界园树洞无可用节点时任务失败 (#13741)
* fix: 修复界园树洞无可用节点时任务自动结束

* style: 移除无用的空行
2025-08-17 01:18:39 +08:00
Constrat
38aa0618d0 Revert "fix: add slight delay before `InfrastEnteredFlag' in case of stutters in base rendering"
This reverts commit 90570fbad3.
2025-08-16 14:42:40 +02:00
uye
14963a21c4 Release v5.23.0-beta.2 (#13735) 2025-08-16 19:56:48 +08:00
github-actions[bot]
943cf646bf docs: Auto Update Changelogs of v5.23.0-beta.2 (#13737)
* docs: Auto Generate Changelog of Release v5.23.0-beta.2

* docs: Update CHANGELOG.md

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-08-16 19:48:00 +08:00
github-actions[bot]
693caf6781 chore: Auto Update Game Resources - 2025-08-16
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/17008012425

[skip changelog]
2025-08-16 11:44:13 +00:00
travellerse
aed3f29598 feat: 适配界园树洞节点 (#13552)
* feat: 适配界园树洞节点 拾遗 传说

* fix: 修复卡在传说`应“蕴”而生`投钱

* fix: 将"_defaultBoskyPassage"改为"_boskyPassageDefault"  避免被识别为"_default"

* fix: 修复拾遗获得通宝卡住

* fix: 修复树洞内遇到集印概率卡住

* feat: 初步适配`易与`

* fix: 尝试替换一个更清晰的`易与`模板图

* feat: 添加`祸乱`识别,暂时不进入策略

* feat: 添加`故肆` `筹谋`占位

* feat: 添加`常乐`占位及相关事件选项

* feat: 添加`杂疑`和`筹谋`相关事件

* feat: 添加`杂疑`识别

* fix: 替换 `易与` `常乐` 模板图

* feat: 添加 `故肆` `筹谋` `常乐` `杂疑` 到策略

* fix: 将存在遮挡的 `故肆` `筹谋` `常乐` 识别阈值暂时调到0.65

* feat: 适配传说版`传讯`

* fix: 修复 掷地有声 概率识别错误

* fix: 替换 `故肆` 模板图

* fix: 修复传说版 `同心` 选择导致崩溃

* feat: 初步构建界园树洞地图

* fix: 优化 BoskyPassage 配置加载和节点处理逻辑

* fix: 删除passed属性,优化节点获取和日志输出

* fix: 修复因内存错误导致启动自动肉鸽时闪退

* feat: 支持按类型过滤获取节点

* fix: 移除重置函数中的中心节点创建逻辑

* fix: 优化树洞地图参数传递

* fix: 添加缺失的Grey模板图

* fix: 补上遗漏的NodeAnalyze

* fix: 清理没有使用到的树洞节点Task

* fix: 删除界园树洞多余的地图参数和adjacent函数

* fix: 重构pixel_to_grid_coords为成员函数

* fix: 删除多余的RoguelikeBoskyRoutingTaskPlugin.h引用
2025-08-16 19:43:13 +08:00
HX3N
22a806d699 i18n: KR tweak copilot option translation 2025-08-16 20:06:42 +09:00
Status102
baef3b8868 perf: 不同更新渠道加个描述 (#13734)
* perf: 不同更新渠道加个描述

* i18n: cn

* i18n: zh-tw

* i18n: EN

* i18n: typo

* i18n: JP

* i18n: KR

---------

Co-authored-by: momomochi987 <as99us301@gmail.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
2025-08-16 18:45:05 +08:00
uye
a7197084c5 feat: 设置排序 (#13699)
* feat: 新增设置排序

* chore: 布局计算延迟到 Loaded 之后

* chore: 提取 SettingItemViewModel,简化代码

* chore: 排序改为全局配置

* chore: 移除没用上的属性

* feat: 运行时允许调整设置顺序
2025-08-16 16:11:31 +08:00
status102
d50f86a9c7 fix: 移除未使用 2025-08-16 14:59:29 +08:00
uye
2d6eff9cb3 chore: catch 一下企鹅物流的上报错误请求,避免影响重试逻辑
fix #13730
2025-08-16 14:50:40 +08:00
uye
d9bd770a4a feat: 调整自动战斗页面布局
[skip changelog]
2025-08-16 12:47:54 +08:00
uye
9a3bdf18d9 feat: 调整自动战斗页面布局 2025-08-16 12:09:32 +08:00
status102
be6d7d7c88 perf(wpf): 自动战斗使用编队选择框UI 2025-08-16 11:35:33 +08:00
status102
1b789ec3c3 fix: 肉鸽投资在单次投资达到999时可能无法退出 2025-08-16 11:16:53 +08:00
husy8
7b6046b682 fix: 修复掉落上报消息类型没有在 Python 层定义导致外部脚本报错的问题 (#13723) 2025-08-16 10:02:35 +08:00
uye
6877941188 fix: debug version 拿不到活动关卡 2025-08-15 22:43:32 +08:00
status102
364f9886f7 fix: 干员识别输出遗漏干员持有情况、潜能
改回旧的, 感觉是写的时候写错了
2025-08-15 22:28:35 +08:00
uye
692c301dc0 style: 长判断换行 2025-08-15 17:28:29 +08:00
status102
b154022100 fix: 剿灭失败不报错 2025-08-15 17:23:00 +08:00
uye
89e71dce76 fix: 傀影卡在无法进行初始招募的深入探索欲月度小队
fix #13692
2025-08-15 15:31:00 +08:00
vcfch843875
beb561a94f docs: 文档日语化翻译 (#13713)
* docs: 翻译“开始唤醒”部分为日语

将“开始唤醒”的部分全文翻译成了日语。
Translated the entire "Wakeup" section into Japanese.
「ウェイクアップ」の部分を全て日本語に翻訳しました。

* docs: 翻译“公开招募”部分为日语

将“公开招募”部分全文翻译成了日语。
The entire "Public Recruitment" section has been translated into Japanese.
「公開募集」部分の全文を日本語に翻訳しました。

* docs: 将“刷理智”部分全文翻译成日语

将“刷理智”部分全文翻译成了日语。
Translated the entire combat section into Japanese.
「作戦」部分の全文を日本語に翻訳しました。

* docs: 翻译文档标题为日语

将中文文档的标题“基建换班”改成日语的「基地仕事」。
Change the title of the Chinese document "基建换班" to the Japanese 「基地仕事」.
中国語のタイトル「基建换班」を日本語の「基地仕事」に変更する。

* docs: 优化文档的日语表达

优化了此文档的日语表达。
Improved the Japanese expressions in this document.
このドキュメントの日本語表現を最適化しました。

* docs: 翻译文档“获取信用及购物”部分

将“获取信用点及购物”部分全文翻译成了日语。
Translated the entire "Get Credits & Shopping" section into Japanese.
「FP獲得と交換」セクションの全文を日本語に翻訳しました。

* docs: 优化文档的日语表达

优化了此文档的日语表达。
Improved the Japanese expressions in this document.
このドキュメントの日本語表現を最適化しました。

* docs: fix 一个锚点错误

./tools.md#公招识别
→  ./tools.md#公開求人認識

* docs: fix 笔误

修正笔误。

* docs: fix 笔误

修正笔误。
2025-08-15 15:13:55 +08:00
uye
59b4ace20b feat: 使用编队宽度自适应 2025-08-15 14:59:36 +08:00
status102
95d27786dd perf(wpf): 一键长草任务列表翻转按钮下拉框样式优化 2025-08-15 14:57:03 +08:00
MistEO
3bef81c23e Revert "ci: bump the github-actions group in /.github/workflows with 2 updates" (#13707) 2025-08-15 10:11:34 +08:00
uye
80fd44728b Release v5.23.0-beta.1 (#13682) 2025-08-15 00:36:52 +08:00
github-actions[bot]
63cfa6e17d docs: Auto Update Changelogs of v5.23.0-beta.1 (#13698)
* docs: Auto Generate Changelog of Release v5.23.0-beta.1

* docs: changelog

* docs: Update CHANGELOG.md

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Status102 <102887808+status102@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-08-15 00:30:53 +08:00
SherkeyXD
02d646e9aa feat: 烧水模式启用快速退出 (#13690)
* feat: 烧水模式启用快速退出

* feat: 难度选择 + 导航插件支持

* chore: Auto update by pre-commit hooks [skip changelog]

* feat: 屎屎就试试

* fix: 可能修好了

* fix: 加点注释

* feat: 添加界园刷开局入口

* fix: 判断条件错误

* fix: 糊

* feat: 指挥烧水放弃招募

---------

Co-authored-by: Weiyou Wang <44151844+Alan-Charred@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-08-15 00:02:11 +08:00
status102
e0c72a81d4 refactor: 迁移UpdateStageList 2025-08-14 23:37:42 +08:00
status102
25d2497a47 rft: _stageManager迁移 2025-08-14 23:37:41 +08:00
pre-commit-ci[bot]
892d46e640 chore: Auto update by pre-commit hooks [skip changelog] 2025-08-14 15:12:59 +00:00
status102
e55c22d45a perf: 合并regex 2025-08-14 23:10:30 +08:00
uye
3c82f6894e feat: 支持 梦乡 主题 (#13693)
* feat: 支持 梦乡 主题

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-08-14 22:50:27 +08:00
github-actions[bot]
b80f2c45df chore: Auto Update Game Resources - 2025-08-14
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16968559153

[skip changelog]
2025-08-14 14:47:59 +00:00
Tsukiyowu
6e6ca1ef7d fix: 修复萨卡兹肉鸽部分字段无法正确识别的问题 (#13691)
* fix: 修复萨卡兹肉鸽部分字段无法正确识别的问题

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-08-14 22:37:37 +08:00
uye
3148354640 fix: 无法区分界园 3/5 层 boss 2025-08-14 19:57:12 +08:00
github-actions[bot]
15502a1d6d chore: Auto Update Game Resources - 2025-08-14
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16960910691

[skip changelog]
2025-08-14 09:10:03 +00:00
status102
ab312ec9fe refactor: binThreshold, useRaw直接写入task 2025-08-14 15:49:48 +08:00
uye
2b13f21908 feat: 优化标题栏显示效果 2025-08-14 14:21:55 +08:00
uye
8ef3e48492 feat: 版本后面也跟个日期 2025-08-14 10:29:16 +08:00
github-actions[bot]
df1c6b4fa7 chore: Auto Update Game Resources - 2025-08-13
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16941861653

[skip changelog]
2025-08-13 15:29:07 +00:00
uye
37600ac2d9 perf: 仓库识别改用二值化后的非char模型识别 (#13667)
* perf: 仓库识别改用二值化后的非char模型识别

* feat: unify large number display format to k/M/B

* chore: 通过开关控制万以下数量是否格式化
2025-08-13 23:20:00 +08:00
uye
140b041164 fix: 因招募动画卡预见密文板 (#13680)
* fix: 因招募动画卡预见密文板

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-08-13 23:19:22 +08:00
HY
17f5d9e2b1 chore: 繁中服「出蒼白海」導航入口文字調整 (#13681) 2025-08-13 21:57:58 +08:00
status102
646424347e fix: 修修ocr bin threshold 被task info 错误覆盖 2025-08-13 16:05:01 +08:00
uye
427f2996e0 fix: 获得排异反应的干员无法选择技能
fix #13618
2025-08-13 15:59:27 +08:00
uye
83f28cb49b chore: 调整 LDExtras 文件位置 2025-08-13 15:35:25 +08:00
Rbqwow
902a3e9ebe docs: mumu (#13658)
* docs: mumu删了两个数字 我改了二十个文件

* docs: 更新连接设置文档
2025-08-13 15:27:48 +08:00
uye
ca916c9455 chore: 自动战斗存图阈值改为0.75 2025-08-13 14:15:53 +08:00
uye
16968ee2ef fix: schema error 2025-08-13 14:15:53 +08:00
Status102
89f6330e48 fix: 移除使用empty.png当JustReturn屎 (#13652) 2025-08-13 11:23:36 +08:00
Rbqwow
597830850b docs: 文档站小修复 (#13659)
* fix: 去掉按tab可以选中的在页面左上角的`跳至主要内容`

* build: update turbo to 2.5.5

* fix: 干掉语言列表里面的根目录
2025-08-13 05:09:48 +08:00
uye
e1e57b99c0 feat: 幸运掉落用家具零件代替显示 2025-08-12 23:36:09 +08:00
uye
e7aed3250b feat: ADB 连接失败时尝试启动模拟器 勾选框在连接设置与启动设置中同时显示 2025-08-12 22:34:24 +08:00
uye
60eea0e176 style: format 2025-08-12 22:23:15 +08:00
uye
e1cc30b9db feat: 支持 mumu 5555 端口使用控制台退出与截图增强 2025-08-12 21:53:24 +08:00
status102
24e519bbe6 refactor(wpf): 刷理智任务指定材料不再使用双属性保存,仅保存物品id 2025-08-12 16:23:32 +08:00
status102
066c735967 fix: 保存截图加回来
[skip changelog]
2025-08-12 14:42:12 +08:00
status102
1e935aeda9 fix: 识别错误等待+200ms 2025-08-12 14:40:18 +08:00
status102
755a3b97ee fix: 肉鸽投资可能由于存款被长期遮挡导致提前退出 2025-08-12 14:33:48 +08:00
uye
0032b6834a feat: 反转网络桥接提示框的按钮位置,避免误勾选 2025-08-12 13:03:05 +08:00
status102
1f0cf7393c ci: 未提交多个issue时,当前issue也会错误添加rapid-submission标签 2025-08-12 11:59:25 +08:00
status102
fb63fdac56 fix: 未启用备选关卡也会输出剿灭提醒 2025-08-12 11:59:25 +08:00
uye
6c5870b146 chore: 密文板加一个进入后检查 2025-08-12 10:45:05 +08:00
dependabot[bot]
e01e4d2f90 ci: bump the github-actions group in /.github/workflows with 2 updates (#13648)
Bumps the github-actions group in /.github/workflows with 2 updates: [actions/checkout](https://github.com/actions/checkout) and [actions/download-artifact](https://github.com/actions/download-artifact).


Updates `actions/checkout` from 4 to 5
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v5)

Updates `actions/download-artifact` from 4 to 5
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: actions/download-artifact
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-12 09:32:59 +08:00
HY
b6e3df45c8 chore: 繁中服基建 + 保全派駐 7 相關更新 (#13643)
* chore: 繁中服基建更新

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: sss7 txwy

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: 移除彩六主題通用截圖

* chore: 再...再補個圖

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-08-12 09:29:42 +08:00
Constrat
90570fbad3 fix: add slight delay before `InfrastEnteredFlag' in case of stutters in base rendering 2025-08-12 01:10:33 +02:00
Constrat
b26f6be364 fix: EN Phantom IS font change nextlevel fix 2025-08-11 18:13:22 +02:00
HY
23469665ea chore: 繁中服「出蒼白海」活動導航 (#13644) 2025-08-11 23:34:35 +08:00
uye
1874d187d6 fix: 合成密文板未进入合成页面导致卡死 2025-08-11 23:10:21 +08:00
HX3N
f1b3dadc54 chore: YostarKR CharsNameOcrReplace ocr edit 2025-08-11 23:35:49 +09:00
Constrat
d5f7c00cdd fix: start plugin task not enough delay (#13623) 2025-08-11 16:11:01 +02:00
SherkeyXD
9126d92774 chore: 添加null检测 2025-08-11 20:33:41 +08:00
SherkeyXD
5dd8ee8f55 chore: rename MinimumFeatureLevel to minimumFeatureLevel 2025-08-11 20:33:23 +08:00
SherkeyXD
4ed4e53f46 style: add line 2025-08-11 20:32:10 +08:00
SherkeyXD
e6f29ecac6 chore: 修复fody一直报warning 2025-08-11 19:51:08 +08:00
SherkeyXD
6983c9cab9 style: move annotation 2025-08-11 19:51:08 +08:00
SherkeyXD
ed4c7b3a2b chore: add copyright header 2025-08-11 19:51:07 +08:00
SherkeyXD
c00fa86d0b chore: add nullable flags 2025-08-11 19:51:07 +08:00
Status102
baff5b46a7 ci: 关issue+提示,反复提issue+tag (#13638) 2025-08-11 18:30:37 +08:00
Status102
be96b6a160 refactor: 合并ocrBinThreshold (#13635) 2025-08-11 12:12:41 +02:00
SherkeyXD
640bdfa72b chore: gitignore添加MaaBuilder相关内容 2025-08-11 17:54:41 +08:00
SherkeyXD
3b4917e9e1 chore: 更新nuke版本 2025-08-11 17:53:59 +08:00
SherkeyXD
3596eb284f chore: 更新nuke构建参数信息 2025-08-11 17:38:09 +08:00
SherkeyXD
3ca1d0a16c chore: 更新MaaBuilder中使用的过时方法 2025-08-11 17:38:03 +08:00
SherkeyXD
aeb9ebda3c chore: add missing png suffix to templates 2025-08-11 17:24:10 +08:00
status102
fb99df8a9f ci: CN issue检查单判断逻辑更新, 不再关闭issue 2025-08-11 17:12:05 +08:00
github-actions[bot]
09784802d4 chore: Auto Update Game Resources - 2025-08-11
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16873713908

[skip changelog]
2025-08-11 07:32:44 +00:00
uye
96011a2294 fix: 商店因为动画卡在源石锭不足
fix #13632
2025-08-11 15:14:37 +08:00
status102
f83f3c83fa fix: 理智药背景干扰使用数量识别
fix #13622
2025-08-11 14:40:33 +08:00
uye
b18d57923b fix: 第一层没出商店时会在第三层才退出
fix #13615
2025-08-11 14:28:49 +08:00
uye
43a38ff1d8 chore: TestLinkAndGetImage 不允许同时运行 2025-08-11 14:28:49 +08:00
github-actions[bot]
a6bad9b029 chore: Auto Update Game Resources - 2025-08-11
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16872296487

[skip changelog]
2025-08-11 06:12:50 +00:00
status102
a13a011580 ci: fix
[skip changelog]
2025-08-11 13:28:04 +08:00
status102
d46066a26d ci: fix
[skip changelog]
2025-08-11 13:21:53 +08:00
Status102
8b133ef43f chore: 模板轮换 (#13625) 2025-08-11 13:19:13 +08:00
github-actions[bot]
5e9ba974b4 chore: Auto Update Game Resources - 2025-08-11
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16871478867

[skip changelog]
2025-08-11 05:14:53 +00:00
status102
beb6711b82 refactor(wpf): 基建设施排序初始化 2025-08-11 11:19:19 +08:00
status102
172f33d093 refactor: wpf任务名字段统一 2025-08-11 10:27:51 +08:00
status102
b9f57a4c44 fix(wpf): 肉鸽任务高级设置界面xaml错误修复 2025-08-11 10:15:26 +08:00
status102
6f025d1480 fix(wpf): 肉鸽种子选择框visibility判断更新 2025-08-11 10:14:53 +08:00
status102
6e8ed67dc5 chore(wpf): 基建设施种类 2025-08-11 10:14:18 +08:00
status102
f68d8878e9 chore: CustomTask存储 2025-08-11 10:08:50 +08:00
uye
170d02f082 fix: 每次截图测试前断开模拟器连接以获取最新的最快截图耗时 2025-08-10 23:49:00 +08:00
Status102
612c66b010 perf: 代理倍率、肉鸽难度 使用 不切换 代替 当前不使用 以符合实际逻辑 (#13612)
* perf: 代理倍率、肉鸽难度 使用 `不切换` 代替 `当前`、`不使用` 以符合实际逻辑

* i18n: kr

* chore: use key

* i18n: EN

* i18n: JP

---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
2025-08-10 23:19:43 +08:00
uye
6f8e8e8ea4 fix: 锻冶旧迹 导航识别错误 2025-08-10 20:37:48 +08:00
uye
8c33554a2e feat: 自动编队支持指定使用编队 2025-08-10 16:56:09 +08:00
uye
99175acc30 feat: 调整自动战斗页面布局 2025-08-10 16:56:09 +08:00
uye
8137754462 feat: 调整编队界面翻译 2025-08-10 16:56:08 +08:00
status102
fd91375007 perf: wpf肉鸽难度初始化优化 2025-08-10 16:02:56 +08:00
status102
63a8fe5be4 fix: 追加自定干员职业与最后编入干员职业相同时, 误展开子职业列表
fix #13603
2025-08-10 15:45:47 +08:00
status102
6c3ec3130e chore: 浅调一下初始化顺序 2025-08-10 15:43:26 +08:00
status102
287d7e6597 fix: 肉鸽烧水选择当前难度时禁用 0难烧水切换 2025-08-10 10:51:21 +08:00
uye
5321cd9f42 Release v5.22.3 (#13605) 2025-08-09 23:06:44 +08:00
uye
8e0519f549 docs: Update CHANGELOG.md 2025-08-09 23:06:17 +08:00
uye
d82f230069 rft: 增加企鹅物流 .cn 备用域名,迁移上报逻辑到 UI 层 (#13602)
* chore: 企鹅物流上报添加 .cn 域名

* rft: 将企鹅物流的上报交给 ui 处理

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: 上报移除 cpr version

* docs: 添加对应文档

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: 获取新 id

* chore: 提取链接

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-08-09 22:48:38 +08:00
Hao Guan
cafd6d82f1 fix(mac): Mirror酱增量更新 2025-08-09 20:06:30 +08:00
status102
1aad8f7bc4 fix: 肉鸽烧水无法调整难度 2025-08-09 14:13:23 +08:00
uye
5a75870169 fix: 免费单抽剩余不足一小时无法使用
fix #13589
2025-08-09 13:34:30 +08:00
uye
f98ff9cc5e Release v5.22.2 (#13573) 2025-08-08 21:10:55 +08:00
uye
e3add87dc6 docs: Update CHANGELOG.md 2025-08-08 20:57:43 +08:00
uye
50f4f1612c chore: 调整chore: 调整 指点迷津 与 思维边界 的颜色范围
[skip changelog]
2025-08-08 19:36:55 +08:00
uye
3c959a32b8 chore: 调整 指点迷津 与 思维边界 的颜色范围 2025-08-08 18:15:09 +08:00
github-actions[bot]
e1ebfb255d chore: Auto Templates Optimization
Triggered by 48cb4ad49d

[skip changelog]
2025-08-08 09:54:45 +00:00
uye
48cb4ad49d chore: 调整节点识别范围 2025-08-08 17:54:09 +08:00
uye
ddb840d21f chore: stages 识别失败时放弃当前探索 2025-08-08 17:54:08 +08:00
uye
09840fc138 chore: 沉睡石像-战斗 2025-08-08 17:54:08 +08:00
status102
51d56151e6 perf: 肉鸽难度在首次进入后,仅在通关后才再次尝试调整 2025-08-08 15:46:21 +08:00
Status102
119e5c9ce5 feat: StartUp识别开始唤醒时最开始的完整性检测 (#13576)
* feat: StartUp识别开始唤醒时最开始的完整性检测

* chore: kr

* feat: YostarEN

* chore: zh-tw

* chore: YostarJP

---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: momomochi987 <as99us301@gmail.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
2025-08-08 15:39:14 +08:00
Constrat
490329fad8 i18n: fix EN task schema 2025-08-07 22:56:32 +02:00
github-actions[bot]
852c35c068 chore: Auto Update Game Resources - 2025-08-07
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16811845762

[skip changelog]
2025-08-07 17:48:38 +00:00
uye
eff86fb645 fix: 招募助战的确认多试几次 2025-08-08 01:45:46 +08:00
uye
670d855651 fix: 最后一个节点开到招募藏品
fix #13570
2025-08-08 01:25:48 +08:00
uye
0bf28fc7d7 chore: 扩大 ChooseDifficulty base 范围 2025-08-07 23:12:07 +08:00
uye
2053f14d55 fix: 选难度闪退
[skip changelog]
2025-08-07 23:12:06 +08:00
Constrat
40fd94d40d chore: update comment
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-08-07 17:06:21 +02:00
uye
a6a4c2c934 chore: ChooseDifficulty 还是留着吧
[skip changelog]
2025-08-07 22:44:56 +08:00
pre-commit-ci[bot]
48189efb4b chore: Auto update by pre-commit hooks [skip changelog] 2025-08-07 14:37:30 +00:00
uye
f52658609a feat: 首次使用肉鸽选难度 2025-08-07 22:34:41 +08:00
status102
0b9d0fbcdd fix: 漏了 2025-08-07 22:03:10 +08:00
status102
2d9624bbc6 fix: using 2025-08-07 22:01:25 +08:00
萨拉托加
f8c728fed9 fix: 诡谲断章有概率识别错误 2025-08-07 19:41:46 +08:00
status102
8db6c3c679 refactor: wpf拆分Enum 2025-08-07 19:40:06 +08:00
uye
c97bed87f6 fix: 抗干扰值识别错误时卡树洞
#13572
2025-08-07 19:39:37 +08:00
github-actions[bot]
913bef8329 chore: Auto Update Game Resources - 2025-08-07
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16802748917

[skip changelog]
2025-08-07 11:08:34 +00:00
Manicsteiner
e0bd8cf89b chore: YostarJP ocr fix (#13571) 2025-08-07 12:50:44 +02:00
status102
8868eeea98 perf: UseStoneDisplay绑定优化 2025-08-07 17:30:31 +08:00
github-actions[bot]
cf0849aed3 chore: Auto Update Game Resources - 2025-08-07
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16798075509

[skip changelog]
2025-08-07 07:32:24 +00:00
status102
89051521c9 style: format
[skip changelog]
2025-08-07 13:54:58 +08:00
status102
ff9f4b7207 perf: Use default config key 2025-08-07 13:54:58 +08:00
status102
a0b63cc67c chore: nullable update 2025-08-07 13:54:57 +08:00
status102
d3cbb31399 fix: 统一使用NotChooseLevel1 2025-08-07 13:54:57 +08:00
HX3N
7212f160ee chore: fix typo
[skip changelog]
2025-08-07 13:57:07 +09:00
HX3N
8e26f6e94a i18n: KR minigame tweak 2025-08-07 13:54:56 +09:00
HX3N
d66158482a chore: YostarKR tweak Roguelike@StartExploreCD text
Remove text to avoid misrecognition
2025-08-07 13:04:49 +09:00
status102
112e5d2ef9 styel: format
[skip changelog]
2025-08-07 11:47:41 +08:00
status102
b60f8ffd00 refactor: wpf刷理智UI变量rename 2025-08-07 11:46:03 +08:00
status102
dd51f70f6e refactor: wpf刷理智UI默认值类型 2025-08-07 11:38:26 +08:00
status102
2ee9743915 refactor: wpf移除不必要的null移除转换 2025-08-07 11:33:07 +08:00
status102
ebc149a755 refactor: 移除肉鸽非开局时的EnterAfterRecruit,完成开始探索状态分离 2025-08-07 10:42:25 +08:00
status102
bda4900ffc refactor: 肉鸽月度小队模式和深入探索开局招募流程状态与局内分离 2025-08-07 10:42:25 +08:00
Constrat
456a7aa8d4 i18n: EN AT minigame tweak 2025-08-07 01:48:32 +02:00
uye
05275bbc0a fix: 肉鸽招募完干员点击右上角时点到了动画结束后的开始探索
fix #13547
2025-08-07 02:05:38 +08:00
HX3N
56a45cec9e fix: YostarKR update ocrReplace and ocr_config (#13562) 2025-08-07 00:37:00 +09:00
bodayw
2495e01e1b feat: 更新 243 极限效率一天四换排班表(20250806 修订) (#13561) 2025-08-06 13:58:17 +02:00
github-actions[bot]
5bbe6c7427 chore: Auto Update Game Resources - 2025-08-06
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16775639024

[skip changelog]
2025-08-06 11:29:41 +00:00
uye
36eda14549 fix: 关闭骰子页面时点进藏品页
fix #13557
2025-08-06 19:25:17 +08:00
_Burnside
63187cfe83 fix: 干员识别时因特殊排序时的遮挡而导致识别异常 (#13538)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
2025-08-06 19:12:07 +08:00
uye
577e23d961 chore: 调整 schema (#13554)
* chore: 调整 schema

* chore: required

* chore: 同步 en 版本

* chore: 移除 template 默认值

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: $schema require draft-07

* style: 格式化

* style: 格式化

* chore: 统一格式

* chore: 根据 schema 修改 tasks

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-08-06 18:37:08 +08:00
github-actions[bot]
01fd697276 chore: Auto Templates Optimization
Triggered by df880a55fa

[skip changelog]
2025-08-06 10:27:56 +00:00
Constrat
df880a55fa fix: EN Phantom IS updated Drop templates 2025-08-06 12:26:27 +02:00
HX3N
3f271f9bb6 docs: KR update and overhaul entire documentation (#13550)
* docs: manual

* docs: protocol

* docs: develop

* chore: fix typo

* chore: fix more typo

* docs: readme

readme image

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: corrected file name

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-08-06 18:33:38 +09:00
MistEO
69478a939c feat: u16 OCR replace (#13533)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-08-06 13:29:23 +08:00
cibimo
ed81d609f6 fix: 使 python 脚本支持从 github 获取文件长度并更新 (#13457) 2025-08-06 09:36:04 +08:00
Constrat
1176822d0e i18n: EN main readme 2025-08-06 01:36:20 +02:00
Constrat
abae2b77a2 i18n: EN overhaul entire documentation!
Thank you Claude
2025-08-05 19:40:51 +02:00
Constrat
6be474c67f fix: typo
[skip changelog]
2025-08-05 19:37:03 +02:00
Constrat
95c1138a74 docs: cache defaults to true in task-schema.md 2025-08-05 19:35:57 +02:00
Constrat
bff0c82b1e Merge branch 'dev' of https://github.com/MaaAssistantArknights/MaaAssistantArknights into dev 2025-08-05 18:49:11 +02:00
Constrat
0826607897 i18n: EN manual updates/fixes 2025-08-05 18:03:22 +02:00
Constrat
d7e42b0600 i18n: EN device updates/fixes 2025-08-05 18:03:14 +02:00
github-actions[bot]
52cc4971ff chore: Auto Templates Optimization
Triggered by 35fb0e0f4e

[skip changelog]
2025-08-05 15:42:02 +00:00
Constrat
35fb0e0f4e fix: EN IS5 missing template GetDrop4 2025-08-05 17:41:21 +02:00
Constrat
eebe0a9328 i18n: EN manual\cli updates/fixes 2025-08-05 17:13:22 +02:00
Constrat
b708dd9f98 i18n: EN develop updates/fixes 2025-08-05 17:11:27 +02:00
Constrat
ffa0699f89 i18n: ci tutorial for EN 2025-08-05 16:31:23 +02:00
uye
d0d691043e perf: 优化成就列表滚动条
fix #13543
2025-08-05 22:21:36 +08:00
Constrat
801bb5eb4e i18n: EN I.S. manual update 2025-08-05 15:46:09 +02:00
uye
e792af6d45 feat: 调整翻译 2025-08-05 21:42:23 +08:00
uye
8f47e000b7 Release v5.22.1 (#13539) 2025-08-05 21:00:40 +08:00
uye
812f918311 docs: Update CHANGELOG.md
[skip changelog]
2025-08-05 20:30:21 +08:00
status102
a285c3b518 rft: 调整部分UI绑定namespace 2025-08-05 18:21:49 +08:00
Bvicii
7f625e780d feat: 更新技能识别模型,采用更全面的数据集和使用focal loss训练 (#13498)
refactor:用新的数据集和loss function训练技能识别模型
2025-08-05 17:57:24 +08:00
uye
8d3e0e2231 fix: 傀影卡历史馈赠
fix #13511
2025-08-05 17:56:22 +08:00
uye
110eeb98c1 feat: Unhandled exception (#13535)
* feat: Unhandled exception

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-08-05 17:24:16 +08:00
uye
6e821d02d4 fix: 部分策略无法离开诡谲断章
fix #13526
2025-08-05 17:22:36 +08:00
status102
e5f8e3cdfc fix: wpf肉鸽投资N个源石锭NumericUpDown绑定失效 2025-08-05 16:51:22 +08:00
status102
558a03d6ce refactor: rename FreeRecruit -> FreeGacha 2025-08-05 16:45:38 +08:00
uye
a2593c6d61 fix: 购买商品时因动画导致点击无效
fix #13531
2025-08-05 12:03:06 +08:00
uye
05b6a6ca07 fix: 不开线索交流可能导致技能效率判断崩溃
fix #13493
fix #13508
2025-08-05 11:25:27 +08:00
HY
3f64adc6bc chore: 繁中服「詞祭」介面主題截圖 (#13521)
* chore: 繁中服「詞祭」介面主題截圖

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-08-05 00:45:27 +08:00
github-actions[bot]
b2c06dd192 chore: Auto Update Game Resources - 2025-08-04
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16728794274

[skip changelog]
2025-08-04 16:33:29 +00:00
HY
ee6877c111 chore: 再度調整繁中服「崔林特爾梅之金·復刻」活動導航 (#13519) 2025-08-05 00:22:31 +08:00
Manicsteiner
44ef5b5ab2 fix: RoutingRefreshNode roi expand (#13515) 2025-08-04 23:55:25 +08:00
github-actions[bot]
d20212dea0 chore: Auto Templates Optimization
Triggered by 788d9293a6

[skip changelog]
2025-08-04 13:13:12 +00:00
萨拉托加
788d9293a6 fix: 去伪存真卡在灵光乍现
fix: #13510
2025-08-04 21:12:25 +08:00
SherkeyXD
1874174a70 chore: 更新CropRoi的依赖 2025-08-04 20:42:22 +08:00
Constrat
e2a6b6644b fix: update YostarEN IS3 templates
fix #13502
2025-08-04 13:41:38 +02:00
_Burnside
e8bb1a97e3 docs: fix typo (#13503) 2025-08-04 17:55:00 +08:00
Manicsteiner
e2519114b6 chore: YostarJP ocr fix (#13500) 2025-08-04 17:24:27 +08:00
github-actions[bot]
0148492916 chore: Auto Update Game Resources - 2025-08-04
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16717675999

[skip changelog]
2025-08-04 08:11:31 +00:00
uye
7845dab791 fix: 概率卡在出洞后的投钱 2025-08-04 15:36:52 +08:00
github-actions[bot]
0f83706c3f chore: Auto Update Game Resources - 2025-08-04
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16716562587

[skip changelog]
2025-08-04 07:15:49 +00:00
status102
d05aae5b1c perf: wpf Win10+Toast通知使用系统内置通知声而不是独立播放 2025-08-04 15:12:42 +08:00
github-actions[bot]
a1025fa2c7 chore: Auto Templates Optimization
Triggered by 40163dacf4

[skip changelog]
2025-08-04 07:11:13 +00:00
uye
40163dacf4 fix: 界园卡通关结算页面 2025-08-04 15:10:43 +08:00
HX3N
f20da513b7 fix: YostarKR corrected ocrReplace in IS5 StrategyChange_mode1 2025-08-04 14:08:22 +09:00
uye
041d4f9525 perf: 手动点击查看公告时获取公告更新前先显示本地公告 2025-08-04 13:03:21 +08:00
uye
6ab772238c fix: 生息演算组装数量识别失败时取消组装 2025-08-04 10:36:37 +08:00
uye
792abcd180 fix: 其他肉鸽可能点到月度小队 2025-08-04 00:29:33 +08:00
uye
ffa8b4b2d4 feat: 不忽略肉鸽的报错 2025-08-04 00:18:57 +08:00
uye
bcd709265e perf: 优化 ComboBox 搜索 2025-08-03 23:54:40 +08:00
Hao Guan
62cbeba7fc fix: clang编译警告 (#13482) 2025-08-03 22:09:49 +08:00
Hao Guan
c6e491eada feat(mac): 新增小游戏 2025-08-03 20:47:37 +08:00
uye
3ac005d75a fix: 模拟器卸载/更新注册表残留可能导致截图增强弹窗死循环 2025-08-03 20:14:43 +08:00
uye
a979b7f33e i18n: 任务出错内容翻译 2025-08-03 15:57:50 +08:00
uye
678f076f60 fix: 仓库识别概率无法识别部分物品 2025-08-03 15:15:03 +08:00
uye
8bf856505b Release v5.22.0 (#13463) 2025-08-03 14:24:13 +08:00
uye
b7933ef7f2 fix: 多余符号 2025-08-03 14:22:43 +08:00
github-actions[bot]
41432ca341 docs: Auto Update Changelogs of v5.22.0 (#13455)
* docs: Auto Generate Changelog of Release v5.22.0

* docs: cahngelog

* feat: changelog

* fix: Update CHANGELOG.md

* fix: Update CHANGELOG.md

* fix: Update CHANGELOG.md

* docs: Update CHANGELOG.md

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Status102 <102887808+status102@users.noreply.github.com>
Co-authored-by: AnnAngela <naganjue@vip.qq.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-08-03 14:18:49 +08:00
HY
5bf78a9cba i18n: zh-tw tweak translations (#13467)
i18n: zh-tw tweak
2025-08-03 13:32:01 +08:00
萨拉托加
51619da8dd fix: 催债鬼夜叉二次选择 2025-08-03 12:52:37 +08:00
AimOwO
1d6b585c07 fix: 装置“斩”识别 (#13459)
* fix: 装置“斩”识别

* fix: 装置“斩”识别 

防止误识别为“斩”业星熊

* fix: 装置“斩”识别

---------

Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-08-03 12:47:00 +08:00
HX3N
226a45b8ff fix: YostarKR removes spaces in StrategyChange_mode and NextLevel 2025-08-03 05:57:25 +09:00
github-actions[bot]
6dba614726 chore: Auto Templates Optimization
Triggered by 3ebc095d37

[skip changelog]
2025-08-02 19:03:11 +00:00
pre-commit-ci[bot]
3ebc095d37 chore: Auto update by pre-commit hooks [skip changelog] 2025-08-02 19:02:46 +00:00
Manicsteiner
3514651f75 i18n: JP edits (#13460) 2025-08-03 02:55:23 +08:00
uye
94d71b1db4 feat: 相谈室 小游戏 (#13461)
* feat: 相谈室小游戏

* feat: ui 添加小游戏入口

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-08-03 02:54:00 +08:00
uye
61b968c58f debug: hsv 影响原图 2025-08-03 02:09:22 +08:00
uye
e045adc4dc fix: 卡遇见板子 2025-08-02 23:12:08 +08:00
SherkeyXD
53b1032e24 feat: SideStory「墟」关卡导航 2025-08-02 21:46:39 +08:00
uye
b19c836e35 Release v5.22.0-beta.2 (#13454) 2025-08-02 20:34:27 +08:00
uye
107f67c3a7 docs: Update CHANGELOG.md 2025-08-02 20:33:48 +08:00
Lemon-miaow
2aa63c77e6 feat: 新增是否进行线索交流选项 (#13368)
* feat: 新增是否进行线索交流选项

* chore: Auto update by pre-commit hooks [skip changelog]

* docs: 文档添加参数

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-08-02 20:32:33 +08:00
uye
d339731987 docs: Update CHANGELOG.md 2025-08-02 20:31:40 +08:00
uye
b611b35248 fix: 无法使用连战 2025-08-02 20:24:31 +08:00
uye
aaefd75ef3 fix: 其他肉鸽的屎山爆炸了 2025-08-02 17:42:55 +08:00
uye
7aae2318f8 fix: 野鬃识别
现在应该没有其他野开头的干员吧
2025-08-02 17:17:01 +08:00
uye
906cb5624f fix: 野鬃识别 2025-08-02 17:11:46 +08:00
HY
36d44d7897 chore: 更新繁中服「崔林特爾梅之金」活動導航 (#13450)
* chore: 更新繁中服「崔林特爾梅之金」活動導航

* chore: update ZT.json

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-08-02 16:53:06 +08:00
github-actions[bot]
8cceb5ccd7 chore: Auto Update Game Resources - 2025-08-02
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16691605689

[skip changelog]
2025-08-02 08:09:30 +00:00
uye
1ba86d879c Release v5.22.0-beta.1 (#13428) 2025-08-02 12:19:57 +08:00
github-actions[bot]
cf930ef66a docs: Auto Update Changelogs of v5.22.0-beta.1 (#13451)
docs: Auto Generate Changelog of Release v5.22.0-beta.1

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-08-02 12:18:37 +08:00
Rbqwow
b1138f5b68 docs: 文~档~大~更~新,开始失败喽—— (#13410)
* fix: prettier 一定要能格式化文档✍️✍️✍️

* docs: 更新肉鸽用户文档

Co-authored-by: 萨拉托加 <151550168+Saratoga-Official@users.noreply.github.com>

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: 移除由 heroFullScreen: true 引入的 vp-hero-slide-down-button

主题组件叫 `@theme-hope/components/home/HeroSlideDownButton`
别管怎么移除的 看不到就行了)

* fix: 修复官网查看全部下载按钮动画

refer to 462bf51dce

* docs: 补充萨卡兹肉鸽点刺刷钱策略

* docs: 更新肉鸽新手教程描述

* fix: HomeActionsRelease.tsx typo

* docs: 更新难度选择按钮描述

* docs: Update integrated-strategy.md

* docs: Update integrated-strategy.md

* docs: 更新 integrated-strategy.md

---------

Co-authored-by: 萨拉托加 <151550168+Saratoga-Official@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
Co-authored-by: DavidWang19 <dwang0340@gmail.com>
2025-08-02 12:15:12 +08:00
github-actions[bot]
da7f9ffbc6 chore: Auto Update Game Resources - 2025-08-02
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16689662848

[skip changelog]
2025-08-02 04:02:33 +00:00
github-actions[bot]
5ec8bbf5a0 chore: Auto Templates Optimization
Triggered by 8ffbf4e053

[skip changelog]
2025-08-02 03:01:56 +00:00
github-actions[bot]
8ffbf4e053 chore: Auto Update Game Resources - 2025-08-02
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16689151708

[skip changelog]
2025-08-02 03:01:27 +00:00
萨拉托加
f82257d2cb fix: 祠堂口事件识别失败 2025-08-02 10:54:14 +08:00
萨拉托加
695f6425c5 fix: 调整飞来横祸EW站位 2025-08-02 10:21:41 +08:00
萨拉托加
57f76ccb20 fix: 调整往事暗哑离域检查EW站位 2025-08-02 10:13:32 +08:00
uye
f100a7ba81 fix: 拾取关卡掉落后找不到节点时放弃 2025-08-02 09:44:33 +08:00
uye
fbf683480b chore: 调整安全屋颜色范围 2025-08-02 09:34:35 +08:00
uye
d79bf3724b fix: 祠堂口事件识别失败 2025-08-02 09:18:08 +08:00
Constrat
cd2d1c448c chore: update YostarEN OR navigation 2025-08-01 19:01:09 +02:00
HX3N
819014983c fix: YostarKR 海神的信者 ocr edit
yostar updated translation
2025-08-02 01:38:30 +09:00
uye
579e34bd50 fix: 夕娥忆 关卡名识别错误 2025-08-01 23:51:23 +08:00
uye
77ed38127e fix: 重复报关卡难度 2025-08-01 23:51:23 +08:00
uye
65311bbd6c fix: 禳解事件识别错误 2025-08-01 23:51:23 +08:00
uye
da16cc95ad chore: 调整颜色阈值 2025-08-01 23:51:23 +08:00
uye
22842034ae chore: 添加白色部分识别 2025-08-01 23:51:23 +08:00
uye
ffa6724397 debug: 调整边框粗细 2025-08-01 23:51:23 +08:00
pre-commit-ci[bot]
7b66511566 chore: Auto update by pre-commit hooks [skip changelog] 2025-08-01 23:51:23 +08:00
Weiyou Wang
2ca5c83542 fix: JieGarden roguelike stage templates 2025-08-01 23:51:23 +08:00
萨拉托加
26703b0014 feat: 界园肉鸽补充战斗逻辑 (#13433)
* feat: 补充界园三层战斗逻辑

* chore: Auto update by pre-commit hooks [skip changelog]

* feat: 添加斩业星熊,遥招募分数

* feat: 补充界园四层战斗逻辑

* chore: Auto update by pre-commit hooks [skip changelog]

* feat: 补充界园五层战斗逻辑

* feat: 补充界园剩余战斗逻辑

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-08-01 23:50:48 +08:00
uye
4b6222b118 docs: useRaw 仅当 withoutDet 为 true 时生效 2025-08-01 23:27:58 +08:00
uye
7b765d8fdc docs: 更新文档与 maa_tasks_schema 2025-08-01 21:24:37 +08:00
pre-commit-ci[bot]
ec974f8648 chore: Auto update by pre-commit hooks [skip changelog] 2025-08-01 13:05:14 +00:00
uye
c79856b81e perf: 优化界园层名识别 2025-08-01 21:02:51 +08:00
uye
22eb038a9e feat: PipelineAnalyzer 支持使用灰度图匹配文字 2025-08-01 21:02:19 +08:00
Weiyou Wang
7b40c11df4 fix: 修复层名识别问题 -- "云瓦亭" -> "云(瓦)?亭" 2025-08-01 21:54:11 +10:00
uye
64ac7f5d64 debug: 低于阈值 0.2 的 hsv 也保存一下 2025-08-01 16:57:04 +08:00
uye
aa8f02aa3e fix: 拥有时光之末战斗失败后无法跳过动画 2025-08-01 16:54:13 +08:00
github-actions[bot]
e27566deb5 chore: Auto Update Game Resources - 2025-08-01
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16670365761

[skip changelog]
2025-08-01 08:33:17 +00:00
uye
53a4e125ca chore: 调整返回主界面点击位置 2025-08-01 15:42:30 +08:00
uye
fbece132b0 fix: 战斗失败没进结算识别 2025-08-01 15:42:09 +08:00
uye
dd1328f2c1 fix: 汝吾门 识别 2025-08-01 14:49:45 +08:00
HX3N
7b841fca84 fix: YostarKR 黍 ocr edit
garbage text after 黍 when skin is applied
2025-08-01 06:33:11 +09:00
HX3N
dd3233ff34 i18n: KR dehardcode string names and tweak translations
follow 167ac2d2d5
2025-08-01 05:20:58 +09:00
github-actions[bot]
d2c159590d chore: Auto Templates Optimization
Triggered by c85849651f

[skip changelog]
2025-07-31 18:05:00 +00:00
uye
c85849651f chore: 更新截图 2025-08-01 02:04:20 +08:00
uye
dba8f4f3c4 chore: 怎么jb有个0.6的阈值 2025-08-01 01:23:47 +08:00
uye
ee64c2051b chore: 不期而遇失败时尝试放弃 2025-08-01 01:21:07 +08:00
uye
0ed14899f9 chore: 在事件中卡死时尝试放弃 2025-08-01 01:13:52 +08:00
uye
5452ed2a96 perf: 优化多层事件逻辑 2025-08-01 00:29:05 +08:00
Constrat
718026c513 i18n: dehardcode string names
follows b0a53cd5b0
2025-07-31 18:28:05 +02:00
萨拉托加
c2dab28d51 fix: 鲍老板连锁去掉引号 2025-08-01 00:17:02 +08:00
Constrat
1bd11a988c fix: remove leading digits in IS encounters for YostarEN
事件名识别错误(傀影)肉鸽
Fixes #13425
2025-07-31 18:00:36 +02:00
Constrat
e3d708f4a9 fix: i18n english key 2025-07-31 17:30:21 +02:00
uye
9b8c1b4e1e chore: 删除 999 2025-07-31 23:26:19 +08:00
uye
97b3f9af38 chore: 彻底卡住时记录截图后尝试放弃 2025-07-31 23:26:18 +08:00
铃语
a04760272b perf: 优化水月肉鸽招募&傀影战斗 (#13344)
* perf: 优化傀影肉鸽招募&战斗

* perf: 优化水月肉鸽招募

* 恢复鸿雪抓取并降低分数,降低假日威龙陈和蕾缪安分数

* 恢复鸿雪抓取并降低分数,降低假日威龙陈和肥鸭分数

* perf: 恢复黑并降低分数

---------

Co-authored-by: 萨拉托加 <151550168+Saratoga-Official@users.noreply.github.com>
2025-07-31 23:05:35 +08:00
github-actions[bot]
64c349b75f chore: Auto Templates Optimization
Triggered by 7e8cc2d137

[skip changelog]
2025-07-31 15:02:09 +00:00
uye
7e8cc2d137 feat: 增加 hp 识别标志 2025-07-31 23:01:35 +08:00
uye
084bc5a6cd chore: 地镇事件选择 2025-07-31 22:49:59 +08:00
uye
fa90157c36 docs: Update CHANGELOG.md 2025-07-31 19:34:18 +08:00
github-actions[bot]
948ad064e3 chore: Auto Templates Optimization
Triggered by fd71f70d22

[skip changelog]
2025-07-31 11:32:58 +00:00
pre-commit-ci[bot]
fd71f70d22 chore: Auto update by pre-commit hooks [skip changelog] 2025-07-31 11:32:35 +00:00
status102
38bf8af185 feat: wpf支持作业版本限制 2025-07-31 19:29:17 +08:00
github-actions[bot]
6c07625302 chore: Auto Update Game Resources - 2025-07-31
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16647720698

[skip changelog]
2025-07-31 11:28:48 +00:00
萨拉托加
2526f1465f feat: 界园肉鸽补充事件选择逻辑 (#13400)
* feat: 界园肉鸽补充事件选择逻辑

补充遗漏的安全角 狭路相逢 命运所指
鲍老板连锁改成跑路
去掉重复的岔路事件

* feat: 修改催债事件逻辑

* fix: 峥嵘战功识别

* feat: 同心事件逻辑

* chore: Auto update by pre-commit hooks [skip changelog]

* feat: wiki上可查的事件逻辑

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: 偏安三选项的情况

* fix: 烛堂孤钓不同选项的情况

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-07-31 19:27:45 +08:00
travellerse
299990833f fix: 对掉落信息进行排序 与ToolTip保持一致 (#13404)
* fix: 对掉落信息进行排序 与ToolTip保持一致

* fix: 在 wpf 里对掉落信息进行排序
2025-07-31 19:27:29 +08:00
uye
a60d6732f0 perf: 肉鸽节点识别 (#13427)
* perf: 节点统一 hsv

* perf: 普通战斗 hsv

* fix: 部分节点得分过低

* chore: 肉鸽节点不使用 colorWithClose

* chore: 调整安全屋模板

* perf: 优化绿色系识别
2025-07-31 19:21:20 +08:00
uye
b0a53cd5b0 chore: 调整翻译 2025-07-31 18:55:16 +08:00
uye
2fb58192a9 chore: 删除多余注释 2025-07-31 18:52:29 +08:00
uye
2fa1b2158c feat: 添加一键轮换说明 2025-07-31 18:51:08 +08:00
uye
4705cd7078 feat: 统一 TooltipBlock 位置 2025-07-31 18:34:53 +08:00
uye
643f2070c4 feat: 烧水分队不存在时自动替换为当前分队 2025-07-31 15:38:17 +08:00
uye
8b6da9b8bf style: 格式化 2025-07-31 15:37:38 +08:00
uye
d9788dba84 feat: 刷开局模式禁用源石锭达到上限时停止
fix #13420
2025-07-31 15:37:15 +08:00
uye
167ac2d2d5 perf: 优化成就排序与描述 2025-07-31 15:04:24 +08:00
Constrat
a2e8d82562 chore(tools): update ignore templates 2025-07-31 00:48:44 +02:00
uye
3538ab525c fix: ComboBox 的光标颜色不会随主题色变化 2025-07-30 17:45:16 +08:00
uye
810008d84b feat: 调整界面显示效果 2025-07-30 17:16:21 +08:00
uye
59aae8a055 chore: 强制替换 adb 改为使用本地 adb 2025-07-30 16:02:26 +08:00
uye
386264b689 feat: 完整显示注入 maa 的 dll 的路径 2025-07-30 15:51:51 +08:00
uye
fa0f3317f2 feat: 填写错误安装路径时重新弹窗提示 2025-07-30 14:52:56 +08:00
status102
e8798391d4 fix: wpf自动战斗干员模组选择默认值错误 2025-07-30 14:02:33 +08:00
uye
fbdba4a2c6 fix: 修复任务过程中修改剩余理智后导致关卡无法连续执行的问题
fix #13411
2025-07-30 13:27:42 +08:00
uye
4e10ff5a38 fix: 掌灯与引烛 事件识别 2025-07-30 13:20:33 +08:00
uye
85fe148d92 feat: 肉鸽使用助战新增需先填写开局干员的提示 2025-07-30 11:33:45 +08:00
uye
8ee8fc9e6b chore: 删除无用函数 2025-07-30 11:33:45 +08:00
Constrat
65941ee574 fix: typo for BattleStage Sarkaz EN 2025-07-29 18:01:56 +02:00
status102
8ca03b5dd7 fix: 肉鸽通关难度成就解锁判定错误 2025-07-29 22:23:43 +08:00
Constrat
00c9b053b1 docs: update IS for EN 2025-07-29 11:38:43 +02:00
萨拉托加
613da05a40 fix: 狭路相逢善恶同道识别 (#13383) 2025-07-29 11:38:39 +08:00
Weiyou Wang
3cb5318aa4 fix: 修复放弃招募任务链;避战识别不到得偿所愿 (#13395)
* fix: 修复放弃招募任务链

* fix: 怎么还有大小写问题啊

* fix: 划不到点刺

* fix: 肉鸽地图识别加入对界园得偿所愿节点的支持

---------

Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-07-29 11:35:18 +08:00
Constrat
acf81e46e5 fix: clang style 2025-07-28 21:57:56 +02:00
uye
e6efc49ddc fix: 无法选中 坚不可摧随心所欲 分队 2025-07-29 01:33:29 +08:00
uye
0078564a06 fix: 死循环 2025-07-29 01:02:59 +08:00
uye
b5c7bde5ac perf: 优化界面显示效果 2025-07-29 00:51:36 +08:00
uye
b8b3f57790 Release v5.21.2 (#13384) 2025-07-28 23:35:24 +08:00
uye
ee73e7609c docs: Update CHANGELOG.md 2025-07-28 23:34:05 +08:00
uye
5ce0a7ea4e docs: 更新文档 2025-07-28 21:50:28 +08:00
uye
a07d3cc7fc chore: 调整等级判断范围 2025-07-28 20:41:05 +08:00
status102
10f2268b1e chore: 加点注释 2025-07-28 20:01:17 +08:00
status102
0c96e22845 perf: 肉鸽满级检查CheckLevelMax增加isAscii=true 2025-07-28 20:01:16 +08:00
uye
17ca363515 feat: mumu 截图增强弹窗增加新版路径提示 2025-07-28 19:40:31 +08:00
uye
76816c4f8e chore: 调整 versionType
[skip changelog]
2025-07-28 18:35:52 +08:00
uye
db114a17b1 fix: 检测更新失败!!!!! 2025-07-28 18:29:02 +08:00
Hao Guan
1b14ff8d9a fix(mac): 修复默认客户端选项 2025-07-28 17:52:19 +08:00
uye
b84ba22c8f chore: 调整透明度笔刷 2025-07-28 17:29:00 +08:00
uye
8ca3df6d5c chore: 连接地址删除按钮居右 2025-07-28 17:28:46 +08:00
uye
bf6be133c5 fix: 字符串写错了 2025-07-28 16:25:49 +08:00
Weiyou Wang
8fcf9e13f7 fix: use HSVCount on JieGarden@Roguelike@StageEmergencyDps (#13380)
* fix: use HSVCount on JieGarden@Roguelike@StageEmergencyDps

* fix: hue 范围应该是0-179?

* fix: use recommended hsv range

* refactor: MaskRangeTool

* fix: 再用一个更好的色彩范围

* fix: 我听学姐的,把白色剔出激活范围

* fix: 只需要这一个就够了
2025-07-28 16:14:08 +08:00
github-actions[bot]
3caa2f8d7c chore: Auto Update Game Resources - 2025-07-28
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16563759329

[skip changelog]
2025-07-28 08:12:03 +00:00
uye
7937bbcb21 fix: 截图时间过长可能卡在进入下一层后 2025-07-28 15:49:34 +08:00
uye
aeb8ad36a7 chore: 访问 api 时如果本地不存在对应文件则不使用 etag 2025-07-28 14:57:35 +08:00
uye
604879eac1 chore: 日志压缩包打包 cache 文件夹 2025-07-28 14:47:36 +08:00
status102
7419ed762f ci: 文件未上传完成/成功正则追加 2025-07-28 11:29:50 +08:00
status102
c0cc7d119f perf: 自动编队干员属性要求未满足的提示输出等级上调至Error / Warning 2025-07-28 11:01:54 +08:00
萨拉托加
4d615dafd4 fix: 老戏骨非EW开局站位
fix #13376
2025-07-28 10:32:45 +08:00
uye
12fd336f8a feat: 修改文件被占用的解决方案 2025-07-28 01:55:32 +08:00
uye
983a511329 chore: 截图测试漏提示了 2025-07-28 00:15:29 +08:00
uye
3b5ebf8f24 Release v5.21.1 (#13371) 2025-07-27 23:28:37 +08:00
uye
f41174fd43 docs: Update CHANGELOG.md 2025-07-27 23:27:45 +08:00
uye
587c980621 docs: Update CHANGELOG.md 2025-07-27 23:21:46 +08:00
status102
78812d47f2 fix: 移除肉鸽开局选择分队后不应出现的地图检测 2025-07-27 23:16:11 +08:00
uye
b8c4f73da2 fix: 不知道为啥有人会开开局,修修看 2025-07-27 23:03:33 +08:00
uye
48412e2c92 chore: macos uuid 2025-07-27 22:45:41 +08:00
uye
4a68fac639 fix: 奇妙的模拟器卡启动 2025-07-27 22:11:55 +08:00
uye
4739feb8ff feat: 支持 mumu emulator-xxxx 格式地址关闭模拟器 2025-07-27 22:11:55 +08:00
uye
2eed3b87d4 Release v5.21.0 (#13359) 2025-07-27 16:28:39 +08:00
github-actions[bot]
e1caa6ebe8 docs: Auto Update Changelogs of v5.21.0 (#13363)
* docs: Auto Generate Changelog of Release v5.21.0

* docs: changelog

* docs: changelog

* docs: Update CHANGELOG.md

* docs: changelog

* docs: Update CHANGELOG.md

* docs: 米奇妙妙翻译

* docs: Update CHANGELOG.md

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
Co-authored-by: SherkeyXD <57581480+SherkeyXD@users.noreply.github.com>
2025-07-27 16:27:28 +08:00
uye
7ca1ed1d4e chore: 全用动态资源 2025-07-27 16:13:08 +08:00
uye
658e141dd5 perf: 公招识别显示使用动态资源 2025-07-27 15:49:41 +08:00
pre-commit-ci[bot]
62bd414ed7 chore: Auto update by pre-commit hooks [skip changelog] 2025-07-27 06:57:32 +00:00
uye
bbe771dc1b fix: 开局招募 2025-07-27 14:54:58 +08:00
uye
68094ee2d9 fix: 商店刷新 2025-07-27 14:49:58 +08:00
uye
2884cdb808 fix: 切换语言时选择材料更新 2025-07-27 12:14:48 +08:00
uye
6c405305b9 feat: 优化主界面显示效果 2025-07-27 11:53:11 +08:00
uye
99befd7582 docs: 更新文档 2025-07-27 11:43:08 +08:00
status102
45eb731d30 perf: 更新日志界面Background前置 2025-07-27 11:39:14 +08:00
status102
37057885b9 perf: 简化长期剿灭任务名 2025-07-27 11:17:27 +08:00
status102
cc21ce7b9b fix: 移除未使用的AnnihilationWarning 2025-07-27 10:58:30 +08:00
status102
2472363b05 fix: 加回来删掉的提示 2025-07-27 10:58:30 +08:00
uye
3169d5826f chore: 关闭自定义剿灭时默认当期剿灭 2025-07-27 10:57:01 +08:00
uye
e14dcc4f48 feat: 添加自定义剿灭关卡勾选框 2025-07-27 10:55:09 +08:00
status102
467b32a324 perf: wpf剿灭关卡选择 2025-07-27 10:45:52 +08:00
status102
f6b019bbff chore: import 2025-07-27 10:18:29 +08:00
status102
b3310992db fix: 肉鸽开局招募状态
漏提交了
2025-07-27 10:14:09 +08:00
github-actions[bot]
5a0c35d4e7 chore: Auto Templates Optimization
Triggered by 950952e16c

[skip changelog]
2025-07-27 01:26:10 +00:00
status102
950952e16c fix: 界园肉鸽结算 2025-07-27 09:25:39 +08:00
uye
53f4cd9ead fix: 事件名错误 2025-07-27 09:19:33 +08:00
Drest
7c2e440b4e feat: 适配长期剿灭 (#13241)
Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: momomochi987 <as99us301@gmail.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
2025-07-27 01:28:28 +01:00
pre-commit-ci[bot]
f799924d9b chore: Auto update by pre-commit hooks [skip changelog] 2025-07-26 18:28:44 +00:00
uye
72acbd0ecf fix: 卡招募 卡电弧 2025-07-27 02:26:26 +08:00
uye
dd26bd55ea fix: 投钱 2025-07-27 01:52:09 +08:00
github-actions[bot]
bb5d155b08 chore: Auto Update Game Resources - 2025-07-26
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16542026013

[skip changelog]
2025-07-26 17:06:25 +00:00
pre-commit-ci[bot]
a7dbfad774 chore: Auto update by pre-commit hooks [skip changelog] 2025-07-27 01:01:39 +08:00
uye
fbc16dc868 chore: 替换 JieGarden StageEncounterOptionUnknown模板图 2025-07-27 01:01:39 +08:00
uye
a93cbdcab6 fix: StageEncounterOptionUnknown 点到源石锭 2025-07-27 01:01:39 +08:00
Weiyou Wang
fe5d34c360 fix: 换用strategyChange 2025-07-27 01:01:39 +08:00
uye
ee7ca9cd22 feat: 进出洞 2025-07-27 01:01:39 +08:00
uye
1380ae172f fix: 饕餮廊事件识别错误 2025-07-27 01:01:39 +08:00
Weiyou Wang
671d72c5bc fix: 我就不明白了,为什么之前主题没有暴露出来问题? 2025-07-27 01:01:39 +08:00
Weiyou Wang
23b06335d7 fix: 我的问题 2025-07-27 01:01:39 +08:00
Weiyou Wang
7981c87b0c fix: 尝试修复卡进场 2025-07-27 01:01:39 +08:00
uye
77a7dbf6c0 chore: 护鸭金刚 选项 2025-07-27 01:01:39 +08:00
uye
676716494d Revert "feat: 界园屏蔽进二层"
This reverts commit 73ebf6f532a3634fd210d1b5b859255b36d6e35d.
2025-07-27 01:01:39 +08:00
uye
36ceaa34e8 chore: 多余的 ocrReplace 2025-07-27 01:01:39 +08:00
uye
7b1e14214a feat: ocr 任务暴露灰度阈值接口 2025-07-27 01:01:39 +08:00
uye
5a480f80e1 fix: 血量识别 2025-07-27 01:01:39 +08:00
Weiyou Wang
0ddf11c357 fix: 尝试修复 investment_with_more_score 2025-07-27 01:01:39 +08:00
uye
d39e342b3b feat: 添加选项 fallback 2025-07-27 01:01:39 +08:00
uye
14479cbee8 fix: 怎么多了个票卷生命值位置都变了 2025-07-27 01:01:39 +08:00
uye
7b00ccc9d3 feat: ui 添加刷等级入口 2025-07-27 01:01:39 +08:00
uye
549f5d19b5 fix: 无法点击树洞 2025-07-27 01:01:39 +08:00
uye
6d45acf7fb fix: 事件选择 2025-07-27 01:01:39 +08:00
uye
2b9dd49634 ci: 怎么报错了
[skip changelog]
2025-07-27 01:01:39 +08:00
uye
38cfee1437 feat: 界园屏蔽进二层 2025-07-27 01:01:39 +08:00
uye
86c00934d8 perf: 优化肉鸽难度选择逻辑 2025-07-27 01:01:39 +08:00
uye
0c1edc9626 feat: 增加快速刷钱时路线全是战斗的回调 2025-07-27 01:01:39 +08:00
uye
f49687fc1c fix: 卡退出战斗 2025-07-27 01:01:39 +08:00
uye
711ce7179d fix: 卡招募(? 2025-07-27 01:01:39 +08:00
uye
f161d855a4 chore: 防止没进 StrategyChange 的情况 2025-07-27 01:01:39 +08:00
uye
cd73d929fd fix: 截图保存报错 2025-07-27 01:01:39 +08:00
pre-commit-ci[bot]
c18dfa0335 chore: Auto update by pre-commit hooks [skip changelog] 2025-07-27 01:01:39 +08:00
Weiyou Wang
2fbf3cc669 fix: 修修补补 2025-07-27 01:01:39 +08:00
Weiyou Wang
b4c8a6e1fb feat: 先复制一下之前的导航代码,能跑就行;以后再重构 2025-07-27 01:01:39 +08:00
Weiyou Wang
0f5ff16afe feat: 补充相关任务链 2025-07-27 01:01:39 +08:00
Weiyou Wang
8f215d1f5f feat: fast investment for JieGarden 2025-07-27 01:01:39 +08:00
Weiyou Wang
6cf152a151 feat: update map 2025-07-27 01:01:39 +08:00
Weiyou Wang
c0846a26cc fix: 修复换层后 StrategyChange 功能 2025-07-27 01:01:39 +08:00
Weiyou Wang
9b61fd611e fix: 修复换层识别 roi 2025-07-27 01:01:39 +08:00
Weiyou Wang
1c10a7b1ff feat: node templates 2025-07-27 01:01:39 +08:00
Weiyou Wang
0a7d51dcfb feat: skip recruitment 2025-07-27 01:01:39 +08:00
Weiyou Wang
fd91aebd42 feat: add new routing strategy -- FastInvestment_JieGarden 2025-07-27 01:01:39 +08:00
Weiyou Wang
37e1477948 refactor: polish code 2025-07-27 01:01:39 +08:00
status102
f443ce6580 perf: 肉鸽指定干员开局招募进入干员选择页状态监测追加首次进入的指导的监测 2025-07-27 00:08:36 +08:00
uye
4a9f39137c fix: 无法连接主站时无法通过备站更新
fix #13355
2025-07-26 23:57:29 +08:00
github-actions[bot]
903d7140f1 chore: Auto Update Game Resources - 2025-07-26
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16535361549

[skip changelog]
2025-07-26 02:59:25 +00:00
status102
f3448ff13c refactor: 肉鸽局内外招募流程拆分 (#13342)
* rft: 界园主题初始实现

* perf: 优化core_char, 移除反复擦写

* perf: 简化任务链, 移除RecruitMain的StartExplore前缀

* rft: 其余肉鸽适配

* fix: 修改不稳定生效的任务计数联动

* fix: 开局干员招募未点进
2025-07-26 10:29:40 +08:00
status102
86aced1930 feat: 界园肉鸽开始探索CD任务ocr追加 2025-07-25 23:35:49 +08:00
status102
9e9005099c fix: 肉鸽招募任务计数未能正确归0
助战招募可能不流经

fix #13320

Roguelike@RecruitWithoutButton
2025-07-25 23:35:30 +08:00
uye
55f03641aa fix: uuid 与 version 返回错误格式时崩溃
fix #13351
2025-07-25 21:20:29 +08:00
Sakurapainting
ed5a5327f9 feat: 禁用弹出成就气泡 (#13345)
* feat: 新增禁用自动弹出成就气泡勾选框设置

* feat: 适配jp, kr, trad-cn 语言(#13315)

* fix: suggested changes

* feat: 新增“成就气泡弹出后一段时间消失”设置勾选框

* feat: 适配本地化语言en jp kr trad-cn

* i18n: EN

* fix: rebase

* feat: 禁用弹出气泡时不等待解锁延迟

* feat: 调整键名、布局

---------

Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-07-25 17:59:44 +08:00
uye
2eb5f55f9f feat: 添加开机自启与系统通知相关注册表提示 2025-07-25 15:39:41 +08:00
uye
546e02f713 feat: 调整更新提示 2025-07-25 15:12:11 +08:00
uye
0a60709ea1 style: format 2025-07-25 14:29:19 +08:00
uye
523d2d0de3 chore: 仓库识别全局缓存,去除开方运算 2025-07-25 10:23:18 +08:00
uye
8732cbc131 feat: 扩大公告高度,更容易滑到底(了吗?)
[skip changelog]
2025-07-25 00:50:15 +08:00
uye
6e59f0cc83 feat: 扩大公告宽度,更容易滑到底(了吗?) 2025-07-25 00:46:36 +08:00
黄京
d90ed6d198 fix: YostarJP rogue OCR tweak for Mushikazu no Taki (#13346) 2025-07-24 23:01:30 +08:00
uye
2c997233f4 feat: 公招识别结果根据当前潜能排序 2025-07-24 22:12:58 +08:00
uye
86203e1292 fix: 公招识别按钮超出界面范围 2025-07-24 19:59:19 +08:00
uye
845ca36f5b refactor: 重构仓库识别逻辑,大幅提高识别速度 2025-07-24 18:26:26 +08:00
status102
663a5beeae chore: style
[skip changelog]
2025-07-24 16:21:15 +08:00
status102
e926beb206 fix: SA1136, SA1133 file header 2025-07-24 16:21:15 +08:00
status102
edda79aa6d perf: PerformanceUseGpu 读取替换 2025-07-24 16:21:14 +08:00
status102
e712053603 chore: SA1122 Use string.Empty for empty strings 2025-07-24 16:21:14 +08:00
uye
98e0bb6d1d fix: 分支条件判断错误 2025-07-24 16:14:59 +08:00
Sakurapainting
ff553f7c36 feat: 成就通知自动关闭选项
代替右键清空

link to #13343, #13323, #13345
2025-07-24 11:27:10 +08:00
SherkeyXD
91d6cdb099 ci: add ghtoken for codeql delete cache 2025-07-24 09:33:08 +08:00
uye
9a20625f07 fix: 仓库识别 x万 识别
糊屎
2025-07-24 02:39:13 +08:00
uye
8d19836739 feat: 调整界面描述 2025-07-23 19:37:31 +08:00
uye
05fddebb9c fix: 嵌套翻译 2025-07-23 19:07:42 +08:00
uye
30f582e908 feat: 公招结果支持彩色显示
fix #12458
2025-07-23 18:42:27 +08:00
uye
3d026d1b59 fix: 公开招募前三个槽均未招募时不会查看第四个槽
fix #12766
2025-07-23 16:34:14 +08:00
status102
0b4db32b53 i18n: wpf干员统一使用指定字符串资源 (#13333)
* i18n: wpf`干员`统一使用指定字符串资源

* i18n: EN

* i18n: JP

* i18n: KR

---------

Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
2025-07-23 09:23:46 +08:00
github-actions[bot]
4e65ce5635 chore: Auto Templates Optimization
Triggered by 5586c00385

[skip changelog]
2025-07-22 18:52:44 +00:00
uye
5586c00385 fix: 勾选框状态错误显示 2025-07-23 01:14:57 +08:00
HY
937e3777f4 chore: 更新繁中服部分幹員 ocr + 補充截圖 (#13338)
* chore: 更新繁中服部分幹員 ocr + 補充截圖

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-07-22 23:15:36 +08:00
HY
21a06e9011 chore: 繁中服「追跡日落以西」活動導航 (#13336) 2025-07-22 23:14:46 +08:00
Constrat
7f905d4e61 ci: delete stale cache for codeql (#13335) 2025-07-22 14:16:07 +02:00
github-actions[bot]
e85813902d chore: Auto Update Game Resources - 2025-07-22
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16439905362

[skip changelog]
2025-07-22 09:11:34 +00:00
status102
bc15d09557 chore: vs code jsonc 2025-07-22 16:51:45 +08:00
status102
4703656bf8 fix: 移除 investment_enter_second_floor 支持 2025-07-22 16:19:55 +08:00
status102
0508d56c78 perf: wpf不再允许通过Gui直接启用允许使用不推荐的GPU选项 2025-07-22 16:16:58 +08:00
uye
885ddc7b39 feat: 标题栏显示版本改为 ui 版本 2025-07-22 14:04:53 +08:00
MistEO
5c5867c2c0 chore: make GUI UserAgent simple 2025-07-22 10:16:10 +08:00
uye
6747c35e8b style: 格式化
[skip changelog]
2025-07-21 23:02:13 +08:00
uye
dbdb98a514 chore: warning CS8625: Cannot convert null literal to non-nullable reference type.
[skip changelog]
2025-07-21 22:58:30 +08:00
uye
af9507e373 chore: warning CS8602: Dereference of a possibly null reference.
[skip changelog]
2025-07-21 22:58:07 +08:00
uye
a36060125e chore: warning CS8601: Possible null reference assignment.
[skip changelog]
2025-07-21 22:56:46 +08:00
uye
1081d3e6e8 chore: warning CS8604: Possible null reference argument for parameter 'name' in 'bool TaskQueueViewModel.IsStageOpen(string name)'.
[skip changelog]
2025-07-21 22:53:50 +08:00
uye
03842af13d chore: warning CS8618: Non-nullable field '_connectedAddress' must contain a non-null value when exiting constructor. Consider adding the 'required' modifier or declaring the field as nullable.
[skip changelog]
2025-07-21 22:51:30 +08:00
uye
4f518b6e52 chore: warning CS8604: Possible null reference argument for parameter 'name' in 'bool TaskQueueViewModel.IsStageOpen(string name)'.
[skip changelog]
2025-07-21 22:50:51 +08:00
uye
e7a273e9c8 perf: 优化客户端切换逻辑,官服B服切换无需重载 2025-07-21 22:41:53 +08:00
uye
e4bee97168 feat: 调整 gpu 提示 2025-07-21 20:30:10 +08:00
travellerse
782371d2ca perf: 添加自动编队选项 忽略干员属性要求 (#13250)
* perf: 添加自动编队选项 支持模组不满足时选择默认模组

* refactor: 修改“模组不满足时选择默认模组”为“跳过未满足的干员属性要求”

* rft: 忽略干员属性要求

* i18n: KR

* i18n: EN

---------

Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2025-07-21 20:16:07 +08:00
Manicsteiner
96b1c05ca0 fix(ci): fix AppImage build toolkit (#13324) 2025-07-21 13:49:21 +02:00
status102
46bb00b8e9 perf: range::copy替换 2025-07-21 19:07:04 +08:00
uye
6f38008240 feat: 置顶按钮鼠标悬浮背景色 2025-07-21 16:18:59 +08:00
github-actions[bot]
51fe97b5ac chore: Auto Templates Optimization
Triggered by 3be1dda845

[skip changelog]
2025-07-21 07:27:17 +00:00
uye
3be1dda845 fix: 萨卡兹肉鸽结算页识别错误 2025-07-21 15:26:51 +08:00
HX3N
b703b95048 fix: YostarKR InfrastReward ocrReplace
prevent max trust and trust gain mixing
2025-07-21 14:27:45 +09:00
uye
2fea17d261 refactor: 替换表合并使用 insert,保证顺序并提升可读性 2025-07-21 12:47:19 +08:00
status102
c21d15dde6 fix: 移除MaaCore的StartUp任务的client_type空值支持 (#13318)
* fix: 移除MaaCore的StartUp任务的client_type空值支持

* i18n: KR

---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
2025-07-21 11:03:35 +08:00
status102
2f48781396 fix: 使用理智药时恢复理智Ocr包含意外字符
fix #13316

180 o成 1.80 了
2025-07-21 10:55:27 +08:00
uye
4f775a04fd chore: 添加 gpu 日志 2025-07-21 01:14:08 +08:00
uye
699273b08a chore: 添加 Tencent EdgeOne 备用 CDN 2025-07-21 00:18:38 +08:00
status102
460253d5d3 fix: wpf TaskApi加载cache时缓存文件不存在 2025-07-21 00:15:05 +08:00
uye
9ee0aabf7b feat: 查看公告按钮添加检查时禁用 2025-07-20 22:45:47 +08:00
uye
f5301595cc feat: 调整模拟器分辨率不支持的描述 2025-07-20 22:24:09 +08:00
uye
86accdee86 feat: 移除肉鸽默认分队与默认职业组 2025-07-20 20:46:10 +08:00
Constrat
9a5b5fdc8d fix: missing OR-5 in main repository 2025-07-20 13:38:50 +02:00
status102
60630a8435 chore: 肉鸽加点注释 2025-07-20 10:25:11 +08:00
status102
ce088d8ee4 perf: MirrocCdk复制按钮接缝美化 2025-07-20 10:06:37 +08:00
status102
065bd3dde0 chore: 简中繁中截图耗时过长提示增加截图增强提醒 (#13309)
* chore: 简中繁中截图耗时过长提示增加截图增强提醒

* i18n: try

* i18n: JP translate

* i18n: EN

* i18n: missing EN translations

* i18n: KR

---------

Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
2025-07-20 09:33:13 +08:00
uye
410c81c36c perf: 优化资源损坏弹窗描述,提供解决方案 2025-07-19 23:06:13 +08:00
Constrat
1bd416dcce docs: EN issue simplification 2025-07-19 12:30:12 +02:00
status102
517886234e chore: CN issue模板简化及Bot优化 (#13297)
* ci: 未阅读须知issue将添加low-quality-report并不再锁定

* chore: 简化CN issue模板
2025-07-19 15:54:31 +08:00
uye
7208f1b352 fix: 水月肉鸽卡商店刷新 2025-07-19 13:24:35 +08:00
uye
ab85561833 perf: 雷电注册表优先使用原版路径 2025-07-19 12:54:24 +08:00
uye
1c6ec1b47e chore: 添加请求耗时记录 2025-07-19 12:29:02 +08:00
uye
257d1c02b0 feat: cdk 边框圆角 2025-07-19 10:50:54 +08:00
uye
036be03459 feat: 新增是否启动客户端勾选框 2025-07-19 10:48:53 +08:00
status102
4974ab6535 refactor: 长草任务序列化重构已完成部分合并 (#13275)
* refactor: 长草任务序列化重构已完成部分打样

* perf: 计时

* perf: is int
2025-07-19 10:08:00 +08:00
uye
c3f1068edf fix: 更新日志与公告滚动条过于贴近窗口边缘
fix #13295
2025-07-19 09:52:48 +08:00
MistEO
6a4ade5093 Release v5.20.0 (#13290) 2025-07-19 00:26:34 +08:00
github-actions[bot]
0ef1501a53 docs: Auto Update Changelogs of v5.20.0 (#13291)
* docs: Auto Generate Changelog of Release v5.20.0

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

* feat: changelog

* feat: 更新 CHANGELOG.md

* fix: 更新 CHANGELOG.md

* docs: changelog

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: MistEO <mistereo@hotmail.com>
Co-authored-by: AnnAngela <naganjue@vip.qq.com>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
2025-07-19 00:26:21 +08:00
uye
ae744d05c8 feat: PreSelectThemeSwipeToTheRight 添加 reduceOtherTimes 2025-07-19 00:15:51 +08:00
github-actions[bot]
be8eaa57c7 chore: Auto Update Game Resources - 2025-07-18
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16375174287

[skip changelog]
2025-07-18 16:10:33 +00:00
uye
1f7d83e5c4 feat: PreSelectThemeSwipeToLeft #self 2025-07-19 00:08:06 +08:00
uye
7b7875fa24 feat: PreSelectThemeSwipeToLeft 2025-07-19 00:05:50 +08:00
Lemon-miaow
00fa73551c fix: 肉鸽导航 (#13293) 2025-07-18 23:51:21 +08:00
uye
144ab609c5 feat: 临时屏蔽界园中除投资外的策略选项 2025-07-18 23:20:31 +08:00
MistEO
55f6620e0f chore: 整理一下刚糊的ua 2025-07-18 23:11:49 +08:00
MistEO
f6de7f4298 feat: Wpf UserAgent with UiVersion 2025-07-18 23:03:09 +08:00
status102
6a706c6f8a fix: 烧水仅精二在萨米主题被短路启动 2025-07-18 19:59:22 +08:00
status102
4ffc987f07 fix: 切换肉鸽主题时, 烧水奖励选择丢失 2025-07-18 19:21:12 +08:00
Constrat
7abc4086b0 fix. YostarEN OR navigation fix 2025-07-18 12:23:32 +02:00
Constrat
fb241c5cb9 chore: yostaren prepare leizi for alter 2025-07-18 11:59:43 +02:00
uye
28d9cf2a52 Release v5.20.0-beta.3 (#13274) 2025-07-18 17:35:28 +08:00
uye
b4479a2e4f feat: 添加 idle 状态切换记录 2025-07-18 17:32:54 +08:00
uye
02e5c3c9b7 fix: RunningState 无法记录日志 2025-07-18 17:32:54 +08:00
github-actions[bot]
ce9e0cfd04 chore: Auto Update Game Resources - 2025-07-18
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16367222337

[skip changelog]
2025-07-18 09:32:17 +00:00
MistEO
b42d7d7d17 docs: Update CHANGELOG.md 2025-07-18 17:21:52 +08:00
uye
3273f7ec7a docs: 更新肉鸽文档 2025-07-18 17:03:54 +08:00
github-actions[bot]
991474debd docs: Auto Update Changelogs of v5.20.0-beta.3 (#13283)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: MistEO <mistereo@hotmail.com>
2025-07-18 16:55:05 +08:00
github-actions[bot]
cde48162ea chore: Auto Update Game Resources - 2025-07-18
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16366041667

[skip changelog]
2025-07-18 08:33:00 +00:00
uye
a63e637b55 fix: 手动改时间或睡眠跨日后关卡列表与提示未更新 2025-07-18 16:21:23 +08:00
uye
95d2eb374d chore: 界园肉鸽没有二希望开(?)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-07-18 16:09:33 +08:00
Manicsteiner
d1cedf57ad chore: YostarJP ocr edits (#13276) 2025-07-18 15:38:23 +08:00
Loong
e0641d165d chore: bump maa-cli to 0.5.7 (#13278) 2025-07-18 15:32:26 +08:00
status102
2d88e43139 perf: 优化加载顺序, 简化StageManager变量 (#13277) 2025-07-18 13:53:07 +08:00
uye
265aca3724 fix: v5.20.0-beta.2.d037 重启后概率闪退 2025-07-18 12:21:13 +08:00
status102
864f824d7b refactor: 肉鸽烧水参数rename
漏了漏了.jpg
2025-07-18 10:49:16 +08:00
status102
ea247333d0 refactor: 肉鸽开局奖励选择 2025-07-18 10:22:41 +08:00
status102
6f29ca0d8f perf: 肉鸽任务参数初始化简化 2025-07-18 10:22:41 +08:00
status102
83dd7b5914 fix: 刷理智代理倍率移除1000适配 2025-07-18 10:22:19 +08:00
Constrat
3a763fb12b fix: YostarEN OR navigation 2025-07-17 19:48:32 +02:00
github-actions[bot]
d0eedc7faf chore: Auto Update Game Resources - 2025-07-17
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16351416825

[skip changelog]
2025-07-17 17:08:30 +00:00
status102
b01cfaf9c4 refactor: TaskSettingVisibilityInfo.Current -> Instance 2025-07-17 23:41:10 +08:00
uye
f4864c7e5e style: format
[skip changelog]
2025-07-17 22:01:42 +08:00
Constrat
05387bf915 fix: YostarEN Eye for an Eye Sarkaz Encounter 2025-07-17 15:56:40 +02:00
HX3N
b3a3d88b1d fix: YostarKR 以血还血 ocr tweak
prevent mixing 以血还血 and 魂灵见闻:以血还血
2025-07-17 22:43:48 +09:00
SherkeyXD
fec780e3d8 fix: 尝试修复点击过头导致选到月度小队 2025-07-17 20:35:03 +08:00
SherkeyXD
ab92d12108 chore: 不期而遇子事件可读性优化 2025-07-17 20:24:06 +08:00
Constrat
8cfe4fd626 fix: yostaren sarkaz encouter ocr tweaks 2025-07-17 14:05:54 +02:00
uye
fb188b51a2 feat: 肉鸽支持多级事件选择 2025-07-17 20:00:27 +08:00
HX3N
0ec9573bef chore: YostarKR OR ocr edits 2025-07-17 18:20:50 +09:00
uye
404d11aad4 perf: 先筛选未进驻再清空队列
fix #13263
2025-07-17 16:57:16 +08:00
uye
4c4b24e573 fix: 缺 dll 和 resource 的时候没弹喜报 2025-07-17 16:11:34 +08:00
uye
f8077d6084 chore: 优化日志输出 2025-07-17 16:11:33 +08:00
github-actions[bot]
9b9dc35580 chore: Auto Update Game Resources - 2025-07-17
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16338983667

[skip changelog]
2025-07-17 07:31:00 +00:00
uye
927def4ed3 fix: 勾选「反转主任务右键单击效果」时,半选主任务在重启后无法还原选中状态 2025-07-17 12:45:47 +08:00
uye
0d5d03d580 fix: 最小化会在桌角留下一个小窗口 2025-07-17 12:20:24 +08:00
萨拉托加
f0219dc7a6 perf: 调整干员罗比菈塔在肉鸽使用的技能 2025-07-17 12:13:48 +08:00
uye
a538ed2291 fix: 勾选启动后直接最小化后无法拖动窗口 2025-07-17 12:09:30 +08:00
DavidWang19
54cf5ae7d6 perf: 界园肉鸽中停止招募锡人 2025-07-17 04:12:44 +01:00
DavidWang19
2b7f5f5e60 fix: 更新关卡ocr替换 2025-07-17 03:32:29 +01:00
萨拉托加
913aad2d6b feat: 界园肉鸽部分关卡自动战斗逻辑 (#13219) 2025-07-17 03:19:41 +01:00
Lemon-miaow
7078f1b8a1 fix: 肉鸽导航无法选择傀影肉鸽 (#13255) 2025-07-17 03:13:23 +01:00
github-actions[bot]
f2b34b29a3 chore: Auto Templates Optimization
Triggered by 29d66dc202

[skip changelog]
2025-07-17 01:58:10 +00:00
DavidWang19
29d66dc202 fix: 修复在得偿所愿或其他位置选择投钱后卡住的问题 2025-07-17 02:47:27 +01:00
DavidWang19
c901ba43c8 fix: 修复检测不到next的问题 2025-07-17 01:51:23 +01:00
github-actions[bot]
0273f1a940 chore: Auto Templates Optimization
Triggered by c52d6d66ce

[skip changelog]
2025-07-17 00:31:48 +00:00
DavidWang19
c52d6d66ce perf: 优化界园不期而遇默认逻辑 2025-07-17 01:31:17 +01:00
DavidWang19
e35512bd9d perf: 优化指点迷津节点task的复用 2025-07-17 01:25:29 +01:00
status102
64bcc201ee chore: 长草任务当前选中index 2025-07-17 08:10:27 +08:00
status102
319e384239 feat: 新Config任务参数读写, 界面刷新, 任务添改base 2025-07-17 08:10:26 +08:00
status102
1a41b53a49 feat: 新的添加任务 2025-07-17 08:10:26 +08:00
status102
08997048e0 chore: 重构部分预载 2025-07-17 08:10:26 +08:00
status102
210fb23e57 fix: typo 2025-07-17 08:10:05 +08:00
DavidWang19
4e2afb23e2 fix: 调整指点迷津节点阈值 2025-07-17 00:26:59 +01:00
Hao Guan
9e9fa712ef feat(mac): 添加界园入口 2025-07-17 03:41:20 +08:00
github-actions[bot]
6819e05642 chore: Auto Update Game Resources - 2025-07-16
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16328097180

[skip changelog]
2025-07-16 19:07:51 +00:00
MistEO
9559659d15 Release v5.20.0-beta.2 (#13251)
本次发版只进界园肉鸽问题修复,保证刷钱可用
新功能下次再进
2025-07-17 01:24:35 +08:00
DavidWang19
a8704bb862 docs: 更新changelog 2025-07-16 18:21:56 +01:00
DavidWang19
e00b601f12 fix: 去掉界园没有的刷2希望开局 2025-07-16 18:18:37 +01:00
github-actions[bot]
c0516089db docs: Auto Update Changelogs of v5.20.0-beta.2 (#13253)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: SherkeyXD <57581480+SherkeyXD@users.noreply.github.com>
2025-07-17 00:23:49 +08:00
SherkeyXD
8a751e4a2e feat: 刷开局wpf仅显示当前主题可用选项 2025-07-17 00:02:31 +08:00
SherkeyXD
6821899c84 chore: 刷开局保证传给core的只有本主题可用内容 2025-07-17 00:02:31 +08:00
pre-commit-ci[bot]
dd08f96419 chore: Auto update by pre-commit hooks [skip changelog] 2025-07-17 00:02:31 +08:00
SherkeyXD
53a7deff9a feat: 界园肉鸽烧水支持票券 2025-07-17 00:02:31 +08:00
Rbqwow
74bb69b69d docs: 修复 readme logo
谁偷偷升依赖了?!
2025-07-16 23:02:29 +08:00
SherkeyXD
f5a747527e fix: 修复wpf主题检测错误 2025-07-16 22:53:49 +08:00
SherkeyXD
5aa369cdad chore: 刷开局精二仅为水月和萨米显示 2025-07-16 22:36:38 +08:00
SherkeyXD
5bc90917a6 chore: 移除未被使用的wpf文本 2025-07-16 22:21:24 +08:00
DavidWang19
232367afca chore: 删除界园多余的模板图和task 2025-07-16 14:59:16 +01:00
DavidWang19
87dd61b269 fix: 修复界园主题选择问题 2025-07-16 14:47:37 +01:00
Constrat
81e9bfa848 i18n: EN IS5 squads 2025-07-16 15:43:59 +02:00
uye
627ffed461 fix: 卡得偿所愿 2025-07-16 21:39:18 +08:00
github-actions[bot]
6721a575e7 chore: Auto Templates Optimization
Triggered by 13c7d43920

[skip changelog]
2025-07-16 13:16:27 +00:00
DavidWang19
13c7d43920 fix: 更新退出事件模板图 2025-07-16 14:14:32 +01:00
DavidWang19
dbd9f16627 docs: 还漏了两个 2025-07-16 13:55:46 +01:00
status102
7037991d56 chore: style
[skip changelog]
2025-07-16 20:11:37 +08:00
SherkeyXD
45465d8ad2 docs: 还漏了一个 2025-07-16 20:07:31 +08:00
SherkeyXD
aa07356b07 docs: 还有一只.png 2025-07-16 20:05:14 +08:00
SherkeyXD
e0b2b580b7 docs: 有猪.jpg 2025-07-16 19:52:13 +08:00
MistEO
35b060bb7a Release v5.20.0-beta.1 (#13217) 2025-07-16 19:49:03 +08:00
status102
d267bbc213 docs: changelog 2025-07-16 19:47:09 +08:00
SherkeyXD
bb7a03e1e9 docs: update changelog 2025-07-16 19:40:54 +08:00
github-actions[bot]
46c6392b82 docs: Auto Update Changelogs of v5.20.0-beta.1 (#13244)
* docs: Auto Generate Changelog of Release v5.20.0-beta.1

* Update CHANGELOG.md

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: MistEO <mistereo@hotmail.com>
2025-07-16 19:25:33 +08:00
HYY
3e374232f2 feat: 适配部分已知的不期而遇 (#13233)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: SherkeyXD <57581480+SherkeyXD@users.noreply.github.com>
2025-07-16 19:21:31 +08:00
status102
59b6a4050a fix: 刷理智界面设计器error 2025-07-16 18:20:19 +08:00
萨拉托加
116b953085 feat: 界园肉鸽二层作战逻辑 2025-07-16 17:30:36 +08:00
status102
3c85e0b745 refactor: 启动时成就打包 (#13221) 2025-07-16 17:27:43 +08:00
status102
008b194cee perf: 干员因模组不可选中时, 加个输出 (#13230)
* perf: 干员因模组不可选中时, 加个输出

临时措施,总感觉还要改

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-07-16 17:08:29 +08:00
uye
4e1d5982b1 chore: 调整肉鸽日志颜色 2025-07-16 16:18:36 +08:00
uye
d222a6df83 chore: 调整投资描述 2025-07-16 15:48:02 +08:00
SherkeyXD
7f3cac14bc rft: 移动所有主题的模板图 2025-07-16 15:34:35 +08:00
SherkeyXD
ef600c09c9 rft: 移动遗漏的肉鸽模板图 2025-07-16 15:34:35 +08:00
github-actions[bot]
688d036b34 chore: Auto Templates Optimization
Triggered by aa948748e9

[skip changelog]
2025-07-16 07:31:13 +00:00
uye
aa948748e9 fix: 新版肉鸽商店刷新 2025-07-16 15:30:20 +08:00
status102
40981a8063 refactor(wpf): 基建任务枚举引用路径统一, 修复设计器error 2025-07-16 15:18:32 +08:00
MistEO
f3c491c01b ci(fix): gh pages deploy condition 2025-07-16 15:13:45 +08:00
status102
b5753af639 fix: 移除ClientType未选择, 统一变更为官服 (#13220)
* fix: 移除ClientType未选择, 统一变更为官服

* chore: ver
2025-07-16 15:10:43 +08:00
SherkeyXD
4d780df455 chore(deps): bump dependencies (#13121) 2025-07-16 14:58:35 +08:00
HX3N
c71fd90868 i18n: KR JieGarden translation 2025-07-16 14:54:51 +09:00
github-actions[bot]
0db63172c6 chore: Auto Update Game Resources - 2025-07-16
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16309292348

[skip changelog]
2025-07-16 03:01:13 +00:00
DavidWang19
295782cfb8 feat: 初步适配界园肉鸽并初步实现存钱 (#13183)
* feat: 初步适配界园肉鸽并初步实现存钱

---------

Co-authored-by: 晓丶梦丶仁 <74444214+Daydreamer114@users.noreply.github.com>
Co-authored-by: SherkeyXD <57581480+SherkeyXD@users.noreply.github.com>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
Co-authored-by: 不留 <weinibuliu@outlook.com>
Co-authored-by: HYY <95246895+HYY1116@users.noreply.github.com>
Co-authored-by: 萨拉托加 <151550168+Saratoga-Official@users.noreply.github.com>
2025-07-16 03:20:33 +01:00
Huaxi Pan
ccc1dd65cc perf: 改进水月肉鸽干员部署逻辑 (#12671)
* feat: 更新水月肉鸽中维什戴尔的使用逻辑

* feat: 基本更新了维什戴尔在水月肉鸽中的使用逻辑

* fix: 修复recruitment 中蕾缪安划分错误

* feat: 优化了大君遗脉中开局漏怪的问题

* feat: 优化了精酿杀手关卡中开局漏怪的问题

* feat: 优化了瞻前顾后关卡中地面干员的位置

* feat: 优化了机械之灾中常态阻挡数不足的问题

* feat: 优化在铳与秩序关卡中维什戴尔容易被炮手炸死的问题

* feat: 删除了在"好梦在何方.json"中的对于蕾缪安的冗余逻辑, 将维什戴尔的放置时机后置避免开局漏怪

* perf: 修改高台C招募优先级

* feat: 后置"共生"中维什戴尔的放置时机, 避免开局漏怪

* feat: 补充了维什戴尔在"病症"中的使用逻辑

* feat: 优化了"机械之灾"中特殊情况下无常态阻挡的问题

* feat: 优化了"互助"关卡中部署在某些位置会导致MAA无法开启技能的问题

* feat: 前置在"瞻前顾后"中维什戴尔的部署时机, 避免盾前堆怪

* feat: 补充维什戴尔在"地下天途中的使用逻辑"

* feat: 补充维什戴尔在"回溯"中的使用逻辑

* fix: 修复了维什戴尔在"巢穴"中部署位置错误的问题

* feat: 优化了"海窟沙暴"中开局容易漏怪的问题

* feat: 删去海窟沙暴中的冗余语句, 再解决一下开局漏怪的问题

* feat: 优化了"分离与统一"中干员部署在某些位置导致无法开启技能的问题

* feat: 更新"大群所向"中的部署逻辑, 调整伊内丝的使用方式

* feat: 优化"大群所向"中输出时间不足的问题

---------

Co-authored-by: 萨拉托加 <151550168+Saratoga-Official@users.noreply.github.com>
2025-07-16 09:56:07 +08:00
MistEO
a541da064a ci: deploy website to GitHub Pages (#13207) 2025-07-15 17:39:03 +08:00
github-actions[bot]
a2de7ac376 chore: Auto Templates Optimization
Triggered by 8cff328e92

[skip changelog]
2025-07-15 09:34:47 +00:00
github-actions[bot]
8cff328e92 chore: Auto Update Game Resources - 2025-07-15
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16289549499

[skip changelog]
2025-07-15 09:34:17 +00:00
uye
7c2072ee1f style: 格式化
[skip changelog]
2025-07-15 17:14:42 +08:00
uye
8052b16ca1 fix: ComboBox 剪贴板异常 2025-07-15 16:56:48 +08:00
uye
10765dfddb chore: 调整肉鸽日志颜色 2025-07-15 11:56:31 +08:00
uye
13fc438a62 fix: 公告及更新日志背景颜色异常 2025-07-15 10:55:12 +08:00
github-actions[bot]
0b7f8186ed chore: Auto Update Game Resources - 2025-07-14
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16276743684

[skip changelog]
2025-07-14 20:08:40 +00:00
uye
e57df86a00 Release v5.19.0-beta.1 (#13204) 2025-07-15 01:45:34 +08:00
uye
878100ef1b docs: 更新 CHANGELOG.md 2025-07-15 01:37:13 +08:00
uye
64d92dc3b3 Release v5.18.0-beta.1 (#13200) 2025-07-15 01:07:48 +08:00
github-actions[bot]
ec5c0afa29 docs: Auto Update Changelogs of v5.18.0-beta.1 (#13201)
docs: Auto Generate Changelog of Release v5.18.0-beta.1

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-07-15 01:03:24 +08:00
Lemon-miaow
2b0109127f feat: 优化会客室线索处理逻辑 (#13160)
* feat: 优化会客室线索处理逻辑

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-07-15 00:57:05 +08:00
uye
462bf51dce feat: 官网添加非当前电脑构架提示 2025-07-14 22:20:58 +08:00
uye
bf0943066a chore: 抽离 ToolTip 创建方法,统一 ToolTip 格式 2025-07-14 18:41:24 +08:00
uye
0153486afb chore: 日志栏使用 TooltipBlock 2025-07-14 17:51:57 +08:00
uye
c8e8b3949e chore: TooltipBlock 支持显示 svg 2025-07-14 16:54:20 +08:00
uye
6eda663bcf fix: TooltipBlock 无法使用 binding 2025-07-14 16:32:49 +08:00
HX3N
ef0864c084 chore: YostarKR SS@Store@CheckUnlimited.png 2025-07-14 10:50:51 +09:00
Constrat
12b8f46bd8 fix: optimize templates run
[skip changelog]
2025-07-13 16:14:08 +02:00
Constrat
ab0c9eb5bd chore: manual resource updater 2025-07-13 16:09:08 +02:00
status102
d2ff015c1c fix: 肉鸽, 生息演算 calcBinding枚举修复 2025-07-13 21:53:55 +08:00
Constrat
5bb12ce6e8 ci: manual optimize templates 2025-07-13 12:59:55 +02:00
Constrat
5135028df4 chore: YostarEN SS@Store@CheckUnlimited.png 2025-07-13 12:59:17 +02:00
Manicsteiner
1728a2bd8f chore: YostarJP SS_Store_CheckUnlimited (#13192)
* chore: YostarJP SS_Store_CheckUnlimited

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-07-13 18:59:06 +08:00
Constrat
263f6edd05 fix: style in json
[skip changelog]
2025-07-13 12:48:40 +02:00
eneen
c4fd6449fc perf: 添加萨卡兹肉鸽 机动队 溃乱魔典 盲盒广场 关卡策略 (#12636) 2025-07-13 17:46:42 +08:00
uye
5fa5b97399 fix: 商店功能错误购买商品
fix #13191
2025-07-13 17:40:23 +08:00
uye
b6896898ec chore: 移除导航 filters 2025-07-13 16:53:44 +08:00
uye
6bde9b97af fix: 小工具-公招识别 手动触发时不会改变显示状态 2025-07-13 15:19:58 +08:00
uye
ecf0d4e732 chore: 添加缺失的翻译与文档更新 2025-07-13 15:03:18 +08:00
uye
b1fc706a6a chore: 统一颜色 2025-07-13 14:21:35 +08:00
uye
24718ec243 chore: 使用自定义悬浮窗样式 2025-07-13 14:21:22 +08:00
nekosu
c876874cf5 feat: 支持MaaPipelineSupport插件 (#13189) 2025-07-13 14:11:07 +08:00
status102
a3cdc98031 fix: 移除Roguelike@GetDrop2中重复的Roguelike@DropsFlag任务 (#13180)
link to 2ed2376763
2025-07-13 12:37:27 +08:00
uye
cc995da6af chore: 使用 svg 代替 >,避免字体影响 2025-07-13 10:57:18 +08:00
uye
a41d4f7885 chore: 添加设计时预览 2025-07-13 00:07:52 +08:00
uye
a6e90ac65e feat: 添加悬浮窗标识符 2025-07-13 00:00:16 +08:00
uye
59e31663c4 feat: 添加任务及基建设施日志翻译 2025-07-12 22:44:25 +08:00
uye
bf759da599 chore: 日志栏 InitialShowDelay 改为 200,避免误触 2025-07-12 21:55:23 +08:00
uye
49753de8b8 feat: 新增公招星级悬浮提示 2025-07-12 21:51:06 +08:00
uye
763e5605cf feat: 新增通过 string 直接构造 Tooltip 方法 2025-07-12 21:50:32 +08:00
uye
7555119b03 feat: cdk 添加复制按钮 2025-07-12 19:49:04 +08:00
uye
8b5a60d79e chore: 使用 UsedImplicitly 2025-07-12 19:49:03 +08:00
Constrat
bb329afea0 style: clang
[skip changelog]
2025-07-12 13:38:47 +02:00
uye
62984d1026 feat: 新增资源仓库超链接 2025-07-12 19:06:35 +08:00
uye
034ecff647 feat: 为截图测试日志添加 Tooltip 展示所有截图方式耗时 2025-07-12 18:56:08 +08:00
HX3N
58b8e167ca chore: YostarKR BattleQuickFormationModulePage 2025-07-12 19:47:02 +09:00
Constrat
653fed53bb chore: YostarEN BattleQuickFormationModulePage 2025-07-12 12:40:44 +02:00
Manicsteiner
8e05cdaecb chore: YostarJP tasks edits (#13187) 2025-07-12 18:32:22 +08:00
uye
1e8d8ce91a chore: 优化掉落显示 2025-07-12 17:37:28 +08:00
status102
3f310ecede fix: 肉鸽界面设计器error (#13185) 2025-07-12 13:38:09 +08:00
status102
f14bf295c7 fix: typo & const ref 2025-07-12 12:39:57 +08:00
status102
7a8586a6d7 chore: style 2025-07-12 12:36:20 +08:00
status102
8acf9ececb refactor: 生息演算任务参数枚举 2025-07-12 10:09:08 +08:00
uye
4ea3900941 fix: 修复 ExpiringStatus 无法用于日志输出的问题 2025-07-12 00:54:54 +08:00
uye
ca81ddc4d9 chore: tooltip 顶部居中 2025-07-12 00:31:30 +08:00
status102
5a55b4d4dc fix: 理智药使用量ocr错误
fix #13132
2025-07-12 00:10:31 +08:00
travellerse
4e3c75b17b feat: 支持编队添加干员时选择模组 (#12811)
* feat: 支持编队添加干员时选择模组

* chore: Auto update by pre-commit hooks [skip changelog]

* feat: 更新模组编号和本地化字符串以支持新模组

* fix: 统一使用激活时的模组字符图像,将识别阈值下降至0.8以识别未激活时的模组字符

* perf: 省略不必要的参数

* perf: 修改模组默认值为`-1: 不修改`

* fix: 修复不使用模组时的点击区域, 使用模板图替换

* fix: roi

* chore: Auto update by pre-commit hooks [skip changelog]

* perf: 优化部分文本

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: 选择模组失败时反选干员

* fix: 选择模组失败时继续检查同组其他干员

* perf: 过个Rgb

Co-authored-by: status102<102887808+status102@users.noreply.github.com>

* chore: 不过灰度

* fix: 添加模板图片以匹配y模组字母的两种形式

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-07-11 23:56:37 +08:00
uye
0478306149 feat: 日志栏新增 ToolTip 提示 2025-07-11 23:31:05 +08:00
uye
3b40e07088 chore: 调整成就描述 2025-07-11 23:30:01 +08:00
uye
e38e8cf01a perf: 优化物品图显示缓存 2025-07-11 23:05:06 +08:00
uye
b0462076ea fix: 修复模板匹配遇到 inf 与 nan 时返回 0 的错误结果 2025-07-11 23:05:06 +08:00
github-actions[bot]
53e5c9b53d chore: Auto Update Game Resources - 2025-07-11
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16217034977

[skip changelog]
2025-07-11 09:46:55 +00:00
Constrat
f19d4631b0 chore: YostarEN OR Navigation 2025-07-11 11:43:20 +02:00
HX3N
96f8d25e47 chore: YostarKR OR navigation (#13179) 2025-07-11 11:43:03 +02:00
github-actions[bot]
e3f01f83da chore: Auto Update Game Resources - 2025-07-11
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16215141064

[skip changelog]
2025-07-11 08:10:18 +00:00
status102
ff18028781 chore: style 2025-07-11 15:44:19 +08:00
github-actions[bot]
9c0c4e6da0 chore: Auto Templates Optimization
Triggered by cfc7bfd02e

[skip changelog]
2025-07-11 07:42:34 +00:00
uye
cfc7bfd02e fix: 无法匹配活动商店部分商品 2025-07-11 15:42:05 +08:00
uye
ce96cef6ec fix: 外服训练室技能名可能被部分替换成干员名 2025-07-11 11:13:29 +08:00
status102
c3c69c7e1f rft: 肉鸽模式参数枚举 2025-07-11 10:33:16 +08:00
status102
7dd977f525 chore: file header 2025-07-11 10:20:09 +08:00
status102
7fb2d0686e fix: import 2025-07-11 10:17:06 +08:00
status102
8c8be278ea chore: 新Config长草任务存储已完成部分预载 2025-07-11 09:20:16 +08:00
status102
f4b71bd0be refactor: 新Config结构修改
部分迁移自 #12315
2025-07-11 09:09:51 +08:00
Lemon-miaow
d8515b15a2 fix: 更新肉鸽商店刷新按钮模板 (#13172)
* fix: 小家具

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-07-10 15:52:26 +01:00
uye
049f244a95 feat: 新增返回 bgr byte[] 数据接口,大幅降低 peep 性能占用 2025-07-10 21:35:43 +08:00
status102
0dc6af17a3 perf: 肉鸽参数显示简化, 开局干员空时不显示使用助战 2025-07-10 17:42:01 +08:00
uye
078ce0860d chore: 调整提示 2025-07-10 00:52:45 +08:00
晓丶梦丶仁
184bdd3dd1 fix: 一叶扁舟 choices
fix #13165
2025-07-10 00:28:23 +08:00
晓丶梦丶仁
5e165319e5 fix: JP 似是而非 OCR 2025-07-10 00:05:44 +08:00
SherkeyXD
47357b2baa chore: no overflow 2025-07-09 20:33:46 +08:00
晓丶梦丶仁
f5301faafb fix: 魂灵见闻:善恶同道 OCR
fix #13166
2025-07-09 18:55:18 +08:00
Constrat
f1d05cd70e fix: EN training room OCR 2025-07-09 11:47:20 +02:00
uye
edca2ea538 chore: 勾选手动填写实例号后查询一次实例 2025-07-09 17:35:37 +08:00
uye
6778ad4f6e fix: 获取雷电 pid 失败 2025-07-09 17:29:25 +08:00
uye
eb096e257c ci: ubuntu build 2025-07-09 16:49:56 +08:00
uye
6df743041f feat: 新增雷电专版注册表自动检测,新增雷电端口自动检测 2025-07-09 16:26:49 +08:00
uye
38cf01b66e chore: 避免使用 async void 2025-07-09 15:25:15 +08:00
uye
4cb6744e01 chore: 省略默认参数 2025-07-09 12:52:42 +08:00
uye
9ee3520634 chore: 优化窗口显示
fix #13161
2025-07-09 12:49:39 +08:00
uye
b16942cb2e chore: 调整成就描述 2025-07-09 09:20:52 +08:00
Constrat
72d1956643 fix: EN not enough space for SSS selection 2025-07-08 21:31:26 +02:00
uye
8293bcf978 chore: 调整 ocrReplace
[skip changelog]
2025-07-08 22:39:14 +08:00
uye
c6e1e039bb feat: fetch 请求增加 If-Modified-Since 2025-07-08 21:54:43 +08:00
uye
bc998e4902 chore: 调整 ocrReplace
[skip changelog]
2025-07-08 21:25:03 +08:00
github-actions[bot]
9bbde2199f chore: Auto Update Game Resources - 2025-07-08
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16142758372

[skip changelog]
2025-07-08 12:08:10 +00:00
Constrat
9c991631f0 fix: EN InfrastTrainingOperatorAndSkill adaptation 2025-07-08 13:53:36 +02:00
uye
52f534cf43 chore: 调整 ocrReplace
[skip changelog]
2025-07-08 18:02:10 +08:00
uye
270cfc19bc chore: 调整 ocrReplace 2025-07-08 17:55:03 +08:00
uye
9bed2f4bcc perf: 训练室继续专精使用特征匹配识别技能 2025-07-08 17:39:59 +08:00
uye
e3736bb4e4 chore: 添加 FeatureMatch schema 2025-07-08 17:39:59 +08:00
github-actions[bot]
4a8ace53cc chore: Auto Update Game Resources - 2025-07-08
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16138144763

[skip changelog]
2025-07-08 08:33:18 +00:00
github-actions[bot]
d0374037fa chore: Auto Update Game Resources - 2025-07-08
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16133813290

[skip changelog]
2025-07-08 04:16:27 +00:00
github-actions[bot]
4850da4acb chore: Auto Templates Optimization
Triggered by ba161b98eb

[skip changelog]
2025-07-08 03:00:12 +00:00
github-actions[bot]
ba161b98eb chore: Auto Update Game Resources - 2025-07-08
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16132825324

[skip changelog]
2025-07-08 02:59:47 +00:00
uye
d1ff5c2400 fix: 训练室技能名识别 2025-07-08 00:45:29 +08:00
uye
442d7d5b70 chore: 米奇妙妙 ocr 2025-07-08 00:41:01 +08:00
uye
29f93616ff chore: 调整描述 2025-07-07 19:41:33 +08:00
Loong
aa7b5aeb77 chore: bump maa-cli to 0.5.6 (#13150) 2025-07-07 11:41:08 +08:00
uye
ec4f3f98f5 chore: 添加日志记录 2025-07-07 09:44:34 +08:00
uye
38ca800031 chore: 设置剪切板前先清空 2025-07-06 22:45:52 +08:00
uye
650a48b8a5 fix: 高版本检测到低版本更新时错误提示无更新包 2025-07-06 12:46:03 +08:00
uye
b16231698b chore: response.Log 添加 etag 日志 2025-07-06 00:20:37 +08:00
uye
13bef6c4b6 fix: 无法继续专精 2025-07-05 21:05:16 +08:00
uye
f6b0ca7754 perf: 优化热更逻辑 2025-07-05 12:48:07 +08:00
uye
f4489f4afb chore: 添加模拟器路径与附加命令的提示 2025-07-05 10:30:30 +08:00
uye
209da3da03 Release v5.18.3 (#13130) 2025-07-05 09:50:47 +08:00
uye
773a26fb1b docs: Update CHANGELOG.md 2025-07-05 09:50:17 +08:00
uye
bf2d6dcb5f fix: 公招刷新 2025-07-05 09:47:13 +08:00
uye
b5adf5b949 Release v5.18.2 (#13107) 2025-07-04 23:47:31 +08:00
uye
cd4b28cc59 chore: 漏了个 _mainTaskTypes 2025-07-04 23:36:42 +08:00
github-actions[bot]
ff2fc2e888 docs: Auto Update Changelogs of v5.18.2 (#13113)
* docs: Auto Generate Changelog of Release v5.18.2

* Update CHANGELOG.md

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-07-04 23:35:04 +08:00
uye
f7f9d709b5 fix: 当首选关卡为剿灭时,后续备选关卡和剩余理智出现问题时不会报错 2025-07-04 23:31:24 +08:00
uye
a63bd7ffbf chore: 调整单击托盘图标动作,符合常规软件行为 2025-07-04 22:17:27 +08:00
uye
401cd76c2d fix: 修复因重定向导致 ETag 缓存与原始地址不符的问题 2025-07-04 19:18:52 +08:00
uye
4cef1b1a24 fix: 未勾选自动确认 3 星且有对应倾向 3 星 tag 时不会刷新 2025-07-04 18:30:23 +08:00
github-actions[bot]
7775e3889d chore: Auto Update Game Resources - 2025-07-03
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16057199753

[skip changelog]
2025-07-03 17:46:49 +00:00
Constrat
1f132c7adc fix: YostarEN & YostarJP HS rerun navigation 2025-07-03 19:30:27 +02:00
vonnoq
af9eab239d fix: 繁中服無法識別荒蕪拉普蘭德 (#13125) 2025-07-03 19:15:13 +02:00
github-actions[bot]
43a5802652 chore: Auto Update Game Resources - 2025-07-03
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16056500208

[skip changelog]
2025-07-03 17:07:37 +00:00
uye
23743558ad fix: 存在更新时问题反馈提示显示不全
fix fafd1970be (commitcomment-161341748)
2025-07-03 23:29:55 +08:00
github-actions[bot]
cd6bd95445 chore: Auto Update Game Resources - 2025-07-03
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16053207061

[skip changelog]
2025-07-03 14:30:33 +00:00
HX3N
5ecec67bf2 fix: YostarKR HS rerun navigation (#13124)
* fix: YostarKR HS rerun navigation

* chore: add stages
2025-07-03 16:15:56 +02:00
SherkeyXD
e8bcf55546 chore: remove TaskTransitionVisualizer 2025-07-03 19:17:25 +08:00
uye
83bc2649a0 chore: 调整命名空间 2025-07-03 19:17:01 +08:00
github-actions[bot]
6102d7bf43 chore: Auto Update Game Resources - 2025-07-03
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/16043883983

[skip changelog]
2025-07-03 07:08:58 +00:00
uye
c1b9a158a0 fix: typo
[skip changelog]
2025-07-03 12:18:13 +08:00
uye
a79980daf2 fix: 规避 WPF 剪贴板卡顿,修复剪切不清除文本的问题。支持 (Rich)TextBox 复制/剪切/粘贴 和 DataGrid 复制 2025-07-03 12:03:02 +08:00
晓丶梦丶仁
b7d8577023 fix: Mumu5.0 MumuExtra
mumu5.0 正式版似乎在根目录中留了一个 shell\sdk\xxxx.dll,部分用户反应这个 dll 无法连接模拟器,删除后可用;于是检测路径时优先检测 Mumu5.0 的路径,若不存在再向下兼容
2025-07-03 00:22:21 +08:00
uye
874db89c8a fix: 不知道为啥有时候肉鸽难度识别最后会多个0,ui打个补丁 2025-07-02 21:59:13 +08:00
SherkeyXD
f41356f683 fix: no unsigned subtraction 2025-07-02 19:33:17 +08:00
SherkeyXD
c285d53404 chore: use SecureZeroMemory for safety 2025-07-02 19:24:09 +08:00
鬼影233
b82081769f fix: 调整 YoStarEN 大荒城公招、抽卡的截图以修复识别失败的问题 (#13117)
* fix: 调整 YoStarEN 大荒城公招、抽卡的截图以修复识别失败的问题
2025-07-02 13:05:37 +02:00
github-actions[bot]
89969d2101 chore: Auto Templates Optimization
Triggered by 73f53e1f9c

[skip changelog]
2025-07-01 15:07:20 +00:00
pre-commit-ci[bot]
73f53e1f9c chore: Auto update by pre-commit hooks [skip changelog] 2025-07-01 15:06:19 +00:00
HY
5aff0583f7 chore: 更新繁中服線索與部分截圖 (#13094)
* chore: 更新線索圖片

* chore: 更新其他圖片

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: 用更高的 DPI 再用一次截圖

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-07-01 17:03:09 +02:00
github-actions[bot]
a4efe0aa3c chore: Auto Update Game Resources - 2025-07-01
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15997555493

[skip changelog]
2025-07-01 11:06:59 +00:00
github-actions[bot]
313e46153f chore: Auto Update Game Resources - 2025-07-01
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15992790429

[skip changelog]
2025-07-01 07:30:41 +00:00
github-actions[bot]
e76e21d986 chore: Auto Update Game Resources - 2025-06-30
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15981481318

[skip changelog]
2025-06-30 19:06:28 +00:00
github-actions[bot]
0d19298f4b chore: Auto Update Game Resources - 2025-06-30
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15976645788

[skip changelog]
2025-06-30 15:08:04 +00:00
晓丶梦丶仁
4bc67b33f5 feat: wpfgui 添加第三备选关卡 (stage4) (#13106) 2025-06-30 22:41:02 +08:00
晓丶梦丶仁
5ee2b96938 fix: KR SS@Store@Purchase OCR
[skip changelog]
2025-06-30 19:26:22 +08:00
晓丶梦丶仁
f6ee7f6ab4 fix: KR SS@Store@Purchase OCR 2025-06-30 19:25:16 +08:00
晓丶梦丶仁
4f3300fa17 fix: JP SS@Store@Purchase OCR 2025-06-30 19:15:55 +08:00
zhangweijian97
db9a402bd8 docs: 更新Linux开发环境配置教程 加入 Mac 开发建议 2025-06-30 14:02:59 +08:00
dantmnf
6ce5c5ca7d feat: warn about known problematic injected dlls 2025-06-30 11:50:31 +08:00
github-actions[bot]
8805d1a3f1 chore: Auto Update Game Resources - 2025-06-28
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15947736529

[skip changelog]
2025-06-28 20:07:41 +00:00
Constrat
d2bc88896c fix: wrong dossoles for global
[skip changelog]
2025-06-28 00:27:17 +02:00
Constrat
3e56b73283 chore: SSS#7 Dossoles global 2025-06-28 00:25:22 +02:00
HY
dc2754bf39 chore: 繁中服_周年月卡領取 &「揭幕者們」活動導航 (#13092)
* chore: 周年月卡領取

* chore: 「揭幕者們」活動導航
2025-06-27 23:13:52 +08:00
github-actions[bot]
9f9f0270a8 chore: Auto Update Game Resources - 2025-06-27
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15919471111

[skip changelog]
2025-06-27 06:11:07 +00:00
github-actions[bot]
a0dbca0816 chore: Auto Update Game Resources - 2025-06-27
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15918939109

[skip changelog]
2025-06-27 05:31:12 +00:00
status102
323d991308 fix: Toast遮挡右侧界面
fix #13088
2025-06-27 10:57:36 +08:00
Sherkey Asher
94f58586b7 ci: add codeql for security check 2025-06-27 09:26:25 +08:00
SherkeyXD
9c05d6e18b feat: 优化 CropRoi 使用体验 2025-06-26 17:38:39 +08:00
uye
fdeae7b28f chore: 资源日期使用本地时间显示 2025-06-25 22:57:37 +08:00
uye
399eb27360 chore: 删除错误提示
[skip changelog][skip ci]
2025-06-25 20:16:04 +08:00
status102
39a8e0c766 chore: 引航者试炼#5 TN-1 ~ TN-4地图view[1] & 干员部署修复 2025-06-25 20:05:41 +08:00
status102
e098c55223 ci: 禁止更新时重判 2025-06-25 20:03:31 +08:00
uye
bf80696a80 chore: 调整关卡选择中的剿灭显示 2025-06-25 19:55:32 +08:00
status102
bc560cf9af perf: SSReopen使用XX-OpenOpt代替SideStoryReopen导航 (#13078) 2025-06-25 19:16:09 +08:00
status102
e73635339d Revert "chore: 引航者试炼#5 TN-1 ~ TN-3地图views[1]修复"
This reverts commit ae38ad904b.
2025-06-25 12:02:46 +08:00
uye
d341d95372 chore: 显示错误 2025-06-25 00:43:04 +08:00
uye
e1ff78240e feat: 新增资源更新进度显示 2025-06-24 23:46:09 +08:00
status102
ae38ad904b chore: 引航者试炼#5 TN-1 ~ TN-3地图views[1]修复 2025-06-24 23:23:37 +08:00
status102
3f07bfc52d chore: meojson update to v4.4.1 & remove json5 (#13079) 2025-06-24 19:59:32 +08:00
status102
a1c11bdb32 chore: remove json5 2025-06-24 19:34:20 +08:00
status102
4a4b3fae3b chore: meojson update to v4.4.1 2025-06-24 19:33:30 +08:00
Constrat
5e435f2cd7 fix: txwy failed dataload 2025-06-24 13:11:43 +02:00
github-actions[bot]
eac28232a9 chore: Auto Update Game Resources - 2025-06-24
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15846236823

[skip changelog]
2025-06-24 09:10:39 +00:00
status102
6af04f4232 perf: 减少运行中Task修改 2025-06-24 16:55:43 +08:00
status102
96c007274d fix: 肉鸽结算Ocr 非数字替换 2025-06-24 16:55:42 +08:00
uye
fd4bdb6f4a fix: 写的什么jb导航 2025-06-24 16:29:43 +08:00
Constrat
be18f7304b style: fix clang 2025-06-23 23:45:21 +02:00
status102
eebcf78aaf fix: 肉鸽结算Ocr bin threshold 2025-06-23 23:03:53 +08:00
status102
1328545320 rft: 肉鸽callback中Int类型限定 2025-06-23 23:01:37 +08:00
Constrat
303c7bca17 feat: YostarEN Dahuang City theme 2025-06-23 14:54:10 +02:00
萨拉托加
56875aec85 feat: 肉鸽更新干员招募逻辑 (#13071)
* feat: 肉鸽更新干员招募逻辑

* feat: 肉鸽更新干员招募逻辑

* feat: 肉鸽更新干员招募逻辑
2025-06-23 19:02:43 +08:00
Lemon-miaow
1e3afd8c12 i18n: 用户文档基建换班添加队列轮换说明 (#13064)
* i18n: 用户文档基建换班添加队列轮换说明

* chore: Auto update by pre-commit hooks [skip changelog]

* i18n: 同步客户端文本

* i18n: JP texts edit

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
2025-06-23 16:57:32 +08:00
uye
c1fcf95a49 fix: 难度识别出非数字时崩溃
#13069
2025-06-23 14:57:57 +08:00
Hao Guan
02964cd38e fix(mac): Mirror酱更新检测 2025-06-23 11:50:25 +08:00
Hao Guan
ff3a06cf71 feat(mac): 显示剩余理智 2025-06-23 11:49:48 +08:00
HY
17c98f18e4 chore: 繁中服「荒原安保派駐」定向導能元件 (#13057)
* chore: 繁中服「荒原安保派駐」定向導能元件

* chore: 搬移保全作業
2025-06-22 16:30:42 +02:00
status102
0f25adfd83 Release v5.18.1 (#13048) 2025-06-22 18:56:46 +08:00
Lemon-miaow
5dcfd8ce2a docs: 用户文档基建换班添加队列轮换说明 (#13058) 2025-06-22 16:34:37 +08:00
github-actions[bot]
cd3b0d9e08 docs: Auto Update Changelogs of v5.18.1 (#13050)
* docs: Auto Generate Changelog of Release v5.18.1

* docs: ahcneglog

* 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>
2025-06-22 16:14:48 +08:00
Manicsteiner
e0724ed92c chore: YostarJP infrast training room and IS4 squad (#13053) 2025-06-21 17:54:22 +02:00
status102
cf7c8e66bb fix: YoStarEN StageDrops-TimesRec roi 2025-06-21 23:29:06 +08:00
Constrat
cafb520b29 fix: YostarEN Sarkaz DLC2 2025-06-21 12:42:38 +02:00
github-actions[bot]
2e21799cc8 chore: Auto Templates Optimization
Triggered by 911f910990

[skip changelog]
2025-06-21 10:22:05 +00:00
MistEO
911f910990 chore: 更换 Mirrorc logo 2025-06-21 18:20:56 +08:00
uye
0b91daba21 perf: 自动替换连接地址中的中文冒号与空格 2025-06-21 12:32:19 +08:00
uye
eed13a6869 fix: 全选删除作业代码时底部连接不换回作业站链接
fix #13036
2025-06-21 10:30:06 +08:00
status102
b5798a8096 fix: 中断时刷理智, 基建任务参数无法修改 2025-06-21 10:15:44 +08:00
status102
b30f2eadc1 chore: 理智药加个输出 2025-06-21 10:15:44 +08:00
status102
14a3455ee8 fix: StageQueue战斗次数统计 2025-06-21 10:15:24 +08:00
HX3N
3e06cece23 chore: YostarKR IS4 dlc2 (#13047)
* chore: YostarKR IS4 dlc2 ocr

* i18n: is4 dlc squad

* chore: RoguelikeCustom-HijackSquad

* chore: 消失
2025-06-21 09:44:12 +08:00
HX3N
264a27e82b fix: skip blank stages in KR replacement on ResoureUpdater (#13045)
* fix: skip blank stages in KR replacement on ResoureUpdater

* docs: simple commenting

---------

Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2025-06-20 21:53:56 +02:00
Constrat
32a627d980 fix: YostarEN ocr for new IS 2025-06-20 21:40:13 +02:00
github-actions[bot]
17c93f91d4 chore: Auto Update Game Resources - 2025-06-20
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15784413397

[skip changelog]
2025-06-20 17:29:51 +00:00
Manicsteiner
70e6261a98 chore: YostarJP Dahuang city theme and ocr edits (#13044) 2025-06-20 17:46:18 +02:00
HX3N
bd8a2ee886 chore: YostarKR DahuangCity theme (#13043) 2025-06-20 17:46:05 +02:00
SherkeyXD
5af96ea1ce fix: 防止卡在傀影肉鸽剧作家手稿界面 2025-06-20 23:40:04 +08:00
github-actions[bot]
09432c2247 chore: Auto Update Game Resources - 2025-06-20
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15781231814

[skip changelog]
2025-06-20 14:30:31 +00:00
uye
d85c049ee3 fix: YoStarKR tasks ocrReplace 2025-06-20 22:07:26 +08:00
github-actions[bot]
40ae3a2866 chore: Auto Update Game Resources - 2025-06-20
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15773971592

[skip changelog]
2025-06-20 07:45:31 +00:00
Sherkey Asher
12fa8eba2c fix: 保证SSReopen不多刷 (#13029)
* fix: 保证SSReopen不多刷

* fix: 移除无用

---------

Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
2025-06-20 15:08:28 +08:00
status102
8476d5bebe fix: StageQueue关闭理智药界面后delay 2025-06-20 15:00:32 +08:00
uye
4f9dcbbd42 chore: 调整 ssreopen 识别 2025-06-19 20:48:20 +08:00
uye
2db6c4a459 fix: 更新后第一次启动读取 SemVersion 失败
fix #13021
2025-06-19 20:40:53 +08:00
github-actions[bot]
7c3ac7066e chore: Auto Update Game Resources - 2025-06-19
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15756353451

[skip changelog]
2025-06-19 11:07:40 +00:00
github-actions[bot]
3355bf13b3 chore: Auto Update Game Resources - 2025-06-19
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15753670086

[skip changelog]
2025-06-19 08:49:36 +00:00
uye
f2fabb392e Release v5.18.0 (#13007) 2025-06-19 16:11:42 +08:00
status102
e209727448 fix: 成就view遮挡设置按钮 2025-06-19 16:08:06 +08:00
uye
27762ce24d docs: Update CHANGELOG.md 2025-06-19 16:06:43 +08:00
uye
335bf74e89 docs: Update CHANGELOG.md 2025-06-19 16:03:43 +08:00
uye
fece54bfb4 chore: 调整 margin 2025-06-19 15:52:11 +08:00
github-actions[bot]
7994bc2384 docs: Auto Update Changelogs of v5.18.0 (#13008)
* docs: Auto Generate Changelog of Release v5.18.0

* docs: chagnelog

* docs: ahcenglog

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
2025-06-19 15:01:10 +08:00
status102
a10e3be350 perf: 自动战斗作业点赞按钮禁用前置 2025-06-19 13:30:44 +08:00
github-actions[bot]
7af5574bf9 chore: Auto Update Game Resources - 2025-06-18
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15742563268

[skip changelog]
2025-06-18 20:09:25 +00:00
status102
9cf913dc3a perf: 不许成就遮挡设置 (#13012)
* perf: 不许成就遮挡设置

* perf: 套个scroll
2025-06-18 16:36:23 +08:00
dantmnf
14360ed869 fix: improper ifstream usage in adblite
https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues/12199#issuecomment-2974975943
2025-06-18 16:32:54 +08:00
github-actions[bot]
02156ebb0c chore: Auto Update Game Resources - 2025-06-17
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15701766376

[skip changelog]
2025-06-17 08:11:33 +00:00
status102
a16e399ae1 perf: 公告内容变动检查 2025-06-17 15:49:47 +08:00
status102
7a658d4712 fix: Log宏不检查log rotate 2025-06-17 15:48:43 +08:00
uye
0b6c1ef843 chore: 窗口允许最大化 2025-06-17 10:10:24 +08:00
Lucien Shaw
54ed65fb9d i18n: 补全本地化文本中一处设置的完整引导路径 (#12997)
* i18n: 补全中文文本中一处设置的完整引导路径

补全RetryOnDisconnectedEmulatorPathEmptyError对应文本中,模拟器路径设置的完整引导路径

* i18n: 补全英文文本中一处设置的完整引导路径

补全RetryOnDisconnectedEmulatorPathEmptyError对应文本中,模拟器路径设置的完整引导路径

* i18n: 补全繁体中文文本中一处设置的完整引导路径

补全RetryOnDisconnectedEmulatorPathEmptyError对应文本中,模拟器路径设置的完整引导路径

* i18n: 补全日文文本中一处设置的完整引导路径

补全RetryOnDisconnectedEmulatorPathEmptyError对应文本中,模拟器路径设置的完整引导路径

* i18n: 补全韩文文本中一处设置的完整引导路径

补全RetryOnDisconnectedEmulatorPathEmptyError对应文本中,模拟器路径设置的完整引导路径
2025-06-17 09:42:11 +08:00
Sherkey Asher
3289bbabb8 feat: 傀影肉鸽添加难度选择 (#12897)
* feat: 傀影肉鸽添加难度选择

* feat: 肉鸽难度选择不再显示不支持的选项
2025-06-17 09:28:34 +08:00
dependabot[bot]
219ec7278a ci: bump softprops/action-gh-release from 2.2.2 to 2.3.2 in /.github/workflows in the github-actions group (#13004) 2025-06-16 16:07:28 +00:00
Constrat
2b7b020b51 ci: fix my username? 2025-06-16 17:48:51 +02:00
晓丶梦丶仁
28a768a8f5 fix: IS1 投资策略 2025-06-16 16:14:18 +08:00
status102
66d2614d82 refactor(wpf): asst任务状态 (#12985)
* rft(wpf): asst任务状态监控

* rft: 迁移刷理智, 基建任务状态
2025-06-16 11:07:43 +08:00
status102
2b5857a955 i18n: 更正 指定材料 的提示 (#12977)
* i18n: 更正 指定材料 的提示

* i18n: KR tweak translation

---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
2025-06-16 11:07:29 +08:00
uye
4de3bf3fef feat: 翻译引用
fix #12996
2025-06-15 18:54:11 +08:00
uye
852a7da8eb feat: 更新繁中翻译 2025-06-15 18:04:50 +08:00
uye
7bc25bc952 chore: Load 时替换翻译引用 2025-06-15 18:01:45 +08:00
uye
268ee6ba0f feat: LocalizationHelper 支持 GetFormattedString 2025-06-15 15:49:53 +08:00
uye
117cbb4561 fix: Miss.Christine 识别错误 2025-06-15 13:16:16 +08:00
uye
7b550516cc fix: 恢复进度失败
fix #12992
2025-06-15 13:16:16 +08:00
Lucien Shaw
eec8880bd5 fix: 基建高级设置中部分元素未正确隐藏 (#12988)
当基建模式设置为“队列轮换”时,高级设置中的“不将已进驻的干员放入宿舍”项旁的提示图标未正确隐藏
2025-06-15 13:05:24 +08:00
uye
69ae0eaa1b fix: 不计算理智回复成就 2025-06-14 23:12:44 +08:00
status102
4c4b2e8510 refactor: 迁移理智, 战斗次数, 代理倍率, 关卡理智缓存 (#12986)
rft: 迁移理智, 战斗次数, 代理倍率, 关卡理智缓存
2025-06-14 16:26:21 +08:00
Lucien Shaw
649ca6452e i18n: 更正英文本地化文本中的两处错误 (#12987)
* i18n: 更正英文本地化文本中训练室提示文本的标点问题

在逗号后添加了缺失的空格;
将逗号连接的两个独立分句改为分号。
原句:"...Training Room,this will..." 改为 "...Training Room; this will..."

* i18n: 更正英文本地化文本中有关特别标记干员的语法问题

「Favourite」 operators maybe cannot be recognized中,maybe cannot be ... 并非常见语法,改为may not be.
2025-06-14 12:22:25 +08:00
status102
fe13df4806 fix: 仅主刷理智任务激活指定次数未消耗殆尽警告 2025-06-14 11:31:08 +08:00
status102
46f7ee6e33 perf: OF-1德克萨斯使用2技能
fix #12971
2025-06-14 09:45:09 +08:00
Constrat
948f38b2ac perf: remove duplicate templates from JP 2025-06-13 18:42:12 +02:00
晓丶梦丶仁
ac9a339d47 ci: issue-checkbox-checker 跳过已经折叠的 issue 2025-06-14 00:24:35 +08:00
晓丶梦丶仁
371f4e814a ci: issue-checkbox-checker.yml 2025-06-14 00:18:34 +08:00
晓丶梦丶仁
e8e9d7a38a fix: KR EP navigation 2025-06-13 23:55:40 +08:00
uye
907947a02e chore: 读取mumu新版注册表路径 2025-06-13 22:19:00 +08:00
Constrat
b40a18f591 feat: YostarEN gaming theme + JP optimization 2025-06-13 15:46:03 +02:00
Constrat
007b04eaf0 chore(tools): update ignore templates 2025-06-13 15:44:00 +02:00
status102
09a4931ba1 chore: 刷理智任务手动填写关卡名增加空关卡名对应关卡提示 2025-06-13 21:27:43 +08:00
uye
0da24487c9 feat: mumu 5.0 路径自动检测 2025-06-13 21:04:49 +08:00
Constrat
7ff2bbdbbf style: fix clang 2025-06-13 14:20:26 +02:00
status102
13ef0ca3fe perf: 自动编队跳过空干员职业组 2025-06-13 15:54:56 +08:00
status102
801afef4e5 fix: 自动战斗干员编队时, 若连续错误Ocr贴边干员名为_会导致跳过该职业 2025-06-13 15:54:47 +08:00
github-actions[bot]
124df0612c chore: Auto Update Game Resources - 2025-06-12
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15616777606

[skip changelog]
2025-06-12 17:07:38 +00:00
Manicsteiner
f2eb22be4c chore: YostarJP Gaming theme (#12970) 2025-06-13 00:48:00 +08:00
HX3N
256feb33c7 chore: YostarKR Poly Vision Museum Theme
EnterInfrastGaming, OperBoxEnterGaming and  TaskGaming work well even without adding templates
2025-06-13 00:58:40 +09:00
status102
5b39e69317 perf: 减少预期外的error日志 2025-06-12 20:21:49 +08:00
github-actions[bot]
87ed43301c chore: Auto Update Game Resources - 2025-06-12
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15606390837

[skip changelog]
2025-06-12 09:09:08 +00:00
HY
3c628e95dd fix: 繁中服 肉鴿助戰可能招募失敗 (#12966) 2025-06-12 10:57:32 +02:00
github-actions[bot]
21a40cc685 chore: Auto Update Game Resources - 2025-06-12
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15603966383

[skip changelog]
2025-06-12 07:08:36 +00:00
uye
cbe1c991cc fix: 成就 id 错误 2025-06-12 02:57:15 +08:00
github-actions[bot]
f68d1dd308 chore: Auto Templates Optimization
Triggered by bbe22ea5a2

[skip changelog]
2025-06-11 14:46:27 +00:00
HX3N
bbe22ea5a2 chore: YostarKR ocr fix and update Infrast templates
Changed the Training template because the mastery symbol prevented recognition when training finished.
ocr fix for EP update.
2025-06-11 23:28:10 +09:00
dependabot[bot]
8d29464ed3 ci: bump actions/github-script from 6 to 7 in /.github/workflows in the github-actions group (#12946)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-06-11 21:29:35 +08:00
HX3N
c97c525d74 fix: UseReaminingSanityStageTip (#12959) 2025-06-11 08:21:24 +08:00
uye
c6536af73d fix: 午夜 0 点没算 0 点 2025-06-11 01:03:44 +08:00
uye
a903486c71 fix: 使用 Mirror 源的时候也显示了强制使用 Github 的TooltipBlock 2025-06-11 01:02:45 +08:00
uye
725a178708 Release v5.18.0-beta.1 (#12956)
sb gh 炸了()
2025-06-11 00:34:11 +08:00
uye
12cbc7d47b ci: Update ci.yml 2025-06-11 00:31:31 +08:00
uye
620c63c6b0 Release v5.18.0-beta.1 (#12954) 2025-06-11 00:11:29 +08:00
github-actions[bot]
bcd61de277 docs: Auto Update Changelogs of v5.18.0-beta.1 (#12955)
* docs: Auto Generate Changelog of Release v5.18.0-beta.1

* docs: Update CHANGELOG.md

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-06-11 00:07:08 +08:00
uye
53cb5cc3e8 chore: 多余文件描述 2025-06-10 23:59:07 +08:00
soundofautmn
839835fcba chore: 统一更新copyright 2025-06-10 23:56:27 +08:00
soundofautmn
466cd719d7 chore: 统一copyright 2025-06-10 23:56:23 +08:00
soundofautmn
ee9a44b957 chore: 修正注释warning
warning SA1512: Single-line comments should not be followed by blank line
2025-06-10 23:56:21 +08:00
uye
1b2df5ff5d feat: 成就系统 (#12823)
* feat: 成就系统

* chore: 调整时间

* feat: 追溯同类成就

* chore: 调整弹窗显示

* feat: 增加解锁条件

* feat: 使用静态类替代硬编码 id

* feat: 刷理智类成就实现

* chore: 抽离 CheckProgressUnlock

* chore: 加个保底

* feat: 手动停止

* chore: 修改描述

* feat: 成就列表(待翻译)

* i18n: english

* chore: 调整排序

* chore: 使用 DynamicResource 替代硬编码颜色,取消选中高亮

* feat: 可露希尔代理程序正常运转中(1000次刷理智)

* feat: 第一次启动软件

* feat: 使用理智药

* chore: 右键图标的停止也改成ManualStop

* feat: Growl 延迟到窗口显示时弹出

* chore: 默认 WindowState 为 null

* perf: 弹窗居中,虚拟化StackPanel

* chore: 定时执行

* chore: 解锁时间显示改为本地时间

* chore: 已完成的成就不显示进度条

* chore: 统一格式

* feat: 临期理智药

* chore: 你进行了一次能将大道磨灭的代理任务

* debug: 忘了删

* feat: 使用 MirrorChyan 更新 / 输入错误 cdk

* chore: 调整设置顺序

* chore: 截图测试显示在应用中心

* chore: 调整 AchievementListWindow 绑定

* chore: summary

* fix: 卡启动

* feat: 恢复进度后保存文件

* feat(#12823): 新增成就 (#12840)

* feat: 真正的抽卡

* feat: 窥屏

* feat: 喜报

* feat: 不速之客

* feat: 自定义达人

* feat: 火星人

* feat: 严重错讠

* feat: 这也能点?

---------

Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>

* chore: 火星人

* feat: 勋章颜色

* feat: 成就图标

* feat: 问题反馈

* feat: 成就等级

* feat: 急急国王

* feat: 自动战斗

* i18n: 打个框先

* i18n: KR translation

* feat: 公招

* i18n: 翻译

* chore: 隐藏吉吉国王

* feat: 借助战

* chore: 测试版

* feat: 作弊

* chore: 优化显示效果

* chore: 忽略返回值

* feat: 或许我应该换一份作业?

* feat: 平均截图速度

* feat: 验证成就合法性,新增 CustomData 字段

* chore: 调整延迟时间过长为隐藏成就

* feat: 今日宜抽卡

* feat: 分组

* feat: 彩色!

* chore: 忘加[JsonIgnore]了

* feat: 彩色!

* chore: 这玩意啥时候混进来了

* feat: 网络折磨人

* chore: 调整描述

* chore: httpService unused

* chore: debug 模式点一次触发

* feat: 新增成就 new 提示,仅本次关闭前生效

* chore: 隐藏未解锁的隐藏成就

* feat: 挂机

* feat: 一天启动 3 次任务

* chore: lock 时重置进度

* feat: 肉鸽相关成就

* chore: 调整放弃次数

* feat: 作业点赞

* feat: 立刻停止任务

* fix: RoguelikeRetreat

* chore: 不存非法成就

* feat: 代理指挥出现错误

* fix: 次数填错了

* feat: 新增 CustomData 类辅助函数,添加时长类成就

* chore: 调整 rare 逻辑

* chore: 注释

* chore: 调整成就分类

* chore: 调整描述

* i18n: 打个框

* fix: wpf binding error

* feat: 肉鸽通关难度

* perf: 解锁和锁定全成就时禁止保存

* chore: 调整成就显示

* chore: 调整 LinearGradientBrush

* feat: 新增肉鸽 n4

* i18n: fully Claude Sonnet 4 EN translation

* i18n: 繁中翻译

* i18n: KR translation

* i18n: JP translation

* feat: JsonDataHelper 支持自定义文件夹

* feat: 自定义备份路径

* chore: 哦这该死的 xaml designer

* fix: 避免设计时生成不必要的data文件夹

* feat: 触发牛牛时按钮位置移动

* Revert "fix: 避免设计时生成不必要的data文件夹"

This reverts commit 2ac878dbbd.

* fix: 不许save, 给你抽出来

* Reapply "fix: 避免设计时生成不必要的data文件夹"

This reverts commit 76985896cb.

* chore: 调整显示顺序

* feat: 添加搜索

---------

Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: Lemon-miaow <61692393+Lemon-miaow@users.noreply.github.com>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
2025-06-10 23:40:25 +08:00
status102
3db8613a43 chore: wpf各种提示 (#12930)
* chore: 给喜欢指定参数不看说明的加个提示

* chore: 给代理倍率加个?

* fix: 减重繁中

* chore: KR tweak translation

* i18n: EN dot symbol

* feat: 带提示控件使用 TooltipBlock

* chore: 调整无序列表显示

* chore: 调整显示效果

* perf: 简化自定干员提示

* fix: TooltipText 内容错误

* chore: 调整 TooltipBlock 默认 Margin

* chore: 重置 TextBox InitialShowDelay 默认行为

* chore: 修改描述

* chore: 修改自动战斗描述

* perf: 优化控件布局

* feat: 新增强制Github下载描述

* chore: 调整绑定

---------

Co-authored-by: HX3N <scarlet7518@gmail.com>
Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-06-10 23:33:35 +08:00
status102
499564694c perf: 刷理智增加未耗尽战斗次数提示输出 2025-06-10 22:04:47 +08:00
HY
88eb57d63d fix: 繁中服 傀影肉鴿 卡在通關劇情 (#12952)
* fix: 繁中服 傀影肉鴿 卡在通關劇情

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-06-10 19:56:06 +08:00
HY
4aeeac2e65 chore: update txwy for update infrast training room (#12953) 2025-06-10 19:52:59 +08:00
uye
ce2031704f perf: 移除解决方案名
Signed-off-by: status102 <102887808+status102@users.noreply.github.com>
2025-06-10 15:02:38 +08:00
uye
f2558002f0 perf: 移除解决方案名
Signed-off-by: status102 <102887808+status102@users.noreply.github.com>
2025-06-10 15:01:06 +08:00
status102
99958533ef fix: rect width & height = 0 2025-06-10 14:54:22 +08:00
status102
b6e6080f36 fix: StageDrops-Item warning 2025-06-10 14:52:52 +08:00
status102
96df05800c fix: 未进入战斗期间检测技能使用 2025-06-10 09:10:29 +08:00
HX3N
625db77e00 chore: update KR for update infrast training room
ref 673b1b082f
2025-06-10 09:46:59 +09:00
github-actions[bot]
96d9cad344 chore: Auto Templates Optimization
Triggered by 12f165e08d

[skip changelog]
2025-06-10 00:28:00 +00:00
HX3N
12f165e08d fix: YostarKR changed EnterInfrastSami due to low recognition score 2025-06-10 09:27:02 +09:00
Constrat
d96143eab2 style: fix clang 2025-06-09 23:17:48 +02:00
Constrat
673b1b082f chore: update EN for update infrast training room 2025-06-09 21:42:29 +02:00
status102
3a15195178 fix: 还原外服的StageDrops-TimesRec 2025-06-09 22:57:23 +08:00
uye
59c632f628 fix: 代理次数 2025-06-09 22:53:51 +08:00
ABA2396
1d54b13f6d Merge tag 'v5.17.2' into dev
v5.17.2
2025-06-09 11:02:25 +00:00
uye
2e9408efa9 Release v5.17.2 (#12943) 2025-06-09 19:01:50 +08:00
status102
02ec0426f0 Release v5.17.2 (#12941)
fix: non ota package remove old resource
2025-06-09 17:47:54 +08:00
status102
5bc4a68a71 fix: non ota package remove old resource 2025-06-09 17:31:13 +08:00
Hao Guan
3682278967 fix(mac): 编译兼容Swift 6.0 2025-06-09 17:07:19 +08:00
Hao Guan
ff40ff6e91 fix(mac): 资源更新改进 2025-06-09 16:48:14 +08:00
uye
f329411768 docs: 高分辨率滑动修复文档 2025-06-09 16:15:13 +08:00
uye
7988229cba fix: 高分辨率下无法进入特定关卡(虽然修了但还是不建议用 2k 4k 2025-06-09 15:44:42 +08:00
uye
67eb0aa7ca style: 多余的空格
[skip changelog][skip ci]
2025-06-09 14:25:17 +08:00
uye
cd25bb9fa9 perf: 优化导航逻辑
link to #10691
2025-06-09 14:23:11 +08:00
status102
503029581a rft: 基建技能专精状态分析 2025-06-09 09:21:50 +08:00
Constrat
5b3d638048 fix: EPChapterToEP for EN 2025-06-08 19:26:07 +02:00
Constrat
edf4905733 perf: remove unneccesary InfrastTrainingTime from EN 2025-06-08 17:37:34 +02:00
Constrat
09de23dd26 style: clang format 2025-06-08 17:07:07 +02:00
status102
b96bcc2e2b perf: 合并Tooltip 2025-06-08 21:53:53 +08:00
status102
14d740afe3 fix: 使用传入的httpService代替全局引用 2025-06-08 21:50:28 +08:00
status102
7ac4fc6ccc feat: wpf TooltipBlock文本为空时, 不显示Tooltip文本框 2025-06-08 21:42:54 +08:00
status102
af3e4b144f fix: 刷理智掉落识别-代理倍率roi 2025-06-08 15:33:07 +08:00
uye
5aed8be27e chore: 调整依赖库安装脚本输出 2025-06-08 14:16:25 +08:00
status102
27516baf54 fix: 基建训练室技能专精剩余时间Ocr错误 2025-06-08 14:04:58 +08:00
status102
2609f159ab fix: 基建专精干员名及技能Ocr使用原图以提高ocr成功率 2025-06-08 13:59:43 +08:00
status102
d06535bf92 perf: 肉鸽战斗使用费用、击杀数缓存, 优化性能占用 2025-06-08 09:45:02 +08:00
github-actions[bot]
bb930cd341 chore: Auto Templates Optimization
Triggered by c27a03623b

[skip changelog]
2025-06-07 20:38:13 +00:00
Constrat
c27a03623b perf: use text ocr instead of template for battlequick 2025-06-07 22:37:45 +02:00
uye
33f850b0f7 chore: 怎么真有人看到 [Y] 确认 是用鼠标去点而不是输入 Y 回车 2025-06-08 00:06:29 +08:00
uye
8a2a93c543 fix: Roguelike@RecruitWithoutButton 2025-06-07 22:48:41 +08:00
uye
235f83acfb fix: 在招募干员的过程中闪退导致死循环 2025-06-07 22:46:09 +08:00
uye
ab36ae88d6 docs: 调整描述 2025-06-07 21:20:28 +08:00
status102
56c95f6891 fix: 刷理智战斗后掉落识别代理倍率次数中文关键词使用原图, 以避免阈值过滤造成的边缘细节丢失
fix #12910
2025-06-07 17:26:53 +08:00
uye
21435c8850 fix: microseconds -> milliseconds 2025-06-07 16:28:03 +08:00
uye
93a5392028 docs: 调整镜像下载失败描述 2025-06-07 16:13:39 +08:00
status102
7464b5fce3 perf: wpf属性监听简化 (#12725)
* perf: 绑定合并

* perf: 循环依赖检查

* perf: 循环依赖检查
2025-06-07 10:43:17 +08:00
github-actions[bot]
521ec62b4d chore: Auto Templates Optimization
Triggered by 4fa9639802

[skip changelog]
2025-06-06 20:36:33 +00:00
HX3N
4fa9639802 fix: YostarKR add ReceptionMessageBoard and update templates
Reception is not recognized by the existing templates. Probably Office and Training as well.
2025-06-07 05:35:25 +09:00
uye
eef39ba079 Release v5.17.1 (#12902)
@HX3N for ref
- #12901 
- #12895

---- 
- [x] JP new base
- [x] EN new base
- [x] KR new base
- [x] SSS#7 json
- [x] SSS#7 JP
- [x] SSS#7 EN
- [x] SSS#7 KR
2025-06-07 00:34:57 +08:00
uye
dcf816118f docs: Update CHANGELOG.md 2025-06-07 00:20:36 +08:00
github-actions[bot]
1056ad043c docs: Auto Update Changelogs of v5.17.1 (#12920)
* docs: Auto Generate Changelog of Release v5.17.1

* docs: changelog

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: 晓丶梦丶仁 <74444214+Daydreamer114@users.noreply.github.com>
2025-06-07 00:07:35 +08:00
Manicsteiner
3864b54b0f fix: YostarJP Infrast mini (#12919) 2025-06-06 23:39:10 +08:00
Lemon-miaow
dd21ff29db chore: feature-request增加陷阱选项 改进en-bug-report标题 (#12917)
* chore: cn-feature-request

* chore: en-feature-request

* chore: 呃呃怎么写description里了

* ci: issue-checkbox-checker

---------

Co-authored-by: 晓丶梦丶仁 <74444214+Daydreamer114@users.noreply.github.com>
2025-06-06 23:11:12 +08:00
ksharperd
daaf9dc02e docs: update connection doc to reflect latest change. (#12689)
* docs: update connection doc to reflect latest change.

* doc: address pr feedback.
2025-06-06 19:14:07 +08:00
HX3N
89d16721df fix: YostarKR infrast mini (#12915) 2025-06-06 18:37:55 +09:00
github-actions[bot]
90b752fb81 chore: Auto Templates Optimization
Triggered by 8d6b16b200

[skip changelog]
2025-06-06 09:00:56 +00:00
Constrat
8d6b16b200 fix: revert ROI from e71e817577 2025-06-06 11:00:20 +02:00
Constrat
fd0dafcbd2 fix: update mini templates after base update (#12912)
* fix: update mini templates after base update

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-06-06 16:19:12 +08:00
HX3N
8141c9f197 chore: YostarKR SSS#7 and Infrast update (#12913)
* chore: YostarKR SSS#7 Buffchoose

* chore: YostartKR Infrast ui update
2025-06-06 16:18:20 +08:00
github-actions[bot]
58450ea856 chore: Auto Update Game Resources - 2025-06-06
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15484600517

[skip changelog]
2025-06-06 06:50:34 +00:00
uye
4a22870377 feat: 远程控制协议增加“轮询间隔”参数
fix #12904
2025-06-06 13:44:58 +08:00
status102
75f4c8d01e perf: 自动战斗编队固定优先编入所有干员, 且按照作业顺序 2025-06-06 13:24:55 +08:00
status102
5a235f92d0 revert 532acde4c3 2025-06-06 13:13:45 +08:00
status102
dfa722d6a9 Revert "fix: 漏了.jpg"
This reverts commit 532acde4c3.

Revert "fix: wpf更新完不重启"

This reverts commit 12c70a0fda.
2025-06-06 13:09:03 +08:00
status102
532acde4c3 fix: 漏了.jpg
[skip changelog]
2025-06-06 13:02:20 +08:00
uye
b4cdd15901 fix: 更新后不重启 2025-06-06 12:59:58 +08:00
status102
12c70a0fda fix: wpf更新完不重启 2025-06-06 12:55:57 +08:00
Constrat
916ad56431 fix: remove unneccesary EnterInfrastSiege for EN
(use default CN)
2025-06-06 03:23:24 +02:00
Constrat
bea6f015a4 feat: Global SSS#7 + EN buffchoose 2025-06-05 22:07:12 +02:00
github-actions[bot]
f616d89f5c chore: Auto Templates Optimization
Triggered by 63502600aa

[skip changelog]
2025-06-05 19:08:22 +00:00
Constrat
63502600aa feat: EN base no beta (#12901) 2025-06-05 20:17:06 +02:00
Manicsteiner
b56ed10424 chore: YostarJP Infrast edits (#12895) 2025-06-05 19:05:21 +02:00
AnnAngela
6b0ba2afed doc: Update CHANGELOG.md 2025-06-05 23:29:49 +08:00
AnnAngela
bd779697b7 doc: 这合的也太快了 2025-06-05 23:28:25 +08:00
uye
094f76f5e5 Release v5.17.0 (#12878) 2025-06-05 23:20:22 +08:00
github-actions[bot]
e7601b1fb7 docs: Auto Update Changelogs of v5.17.0 (#12893)
* docs: Auto Generate Changelog of Release v5.17.0

* docs: Update CHANGELOG.md

* docs: changelog

* docs: changelog

* 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>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
Co-authored-by: SherkeyXD <57581480+SherkeyXD@users.noreply.github.com>
2025-06-05 23:18:12 +08:00
uye
9b2c051758 chore: 调整 tasks 移动逻辑 2025-06-05 21:59:36 +08:00
status102
59ec169a9d fix: WebStages加载临时补救 2025-06-05 21:36:28 +08:00
status102
59dd27f209 fix: 补回遗漏的WebStages移动的path 2025-06-05 21:10:39 +08:00
status102
505823afbb fix: 补回遗漏的WebStages移动 2025-06-05 20:29:49 +08:00
uye
6f98f3600d feat: 日志压缩包打包 cache/resource 2025-06-05 20:17:38 +08:00
github-actions[bot]
950532604e chore: Auto Update Game Resources - 2025-06-05
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15466687154

[skip changelog]
2025-06-05 12:13:09 +00:00
status102
2d20c4e465 chore: 红丝绒 地图 2025-06-05 20:11:04 +08:00
status102
2e63cbfb56 chore: blank 2025-06-05 20:09:51 +08:00
status102
a78d875434 perf: 使用系统回收站替代强制删除 2025-06-05 20:02:08 +08:00
pre-commit-ci[bot]
3acbf33046 chore: Auto update by pre-commit hooks [skip changelog] 2025-06-05 11:35:15 +00:00
SherkeyXD
cd560f1ae1 feat: SideStory「红丝绒」 2025-06-05 19:32:56 +08:00
github-actions[bot]
baf25450ed chore: Auto Update Game Resources - 2025-06-05
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15465822477

[skip changelog]
2025-06-05 11:27:49 +00:00
status102
6965c7190a chore: MirrorChyan更新支持判断完整包 2025-06-05 19:08:33 +08:00
uye
ff3d416664 fix: 基建又双叒叕改了 2025-06-05 17:50:52 +08:00
status102
2bb47a5c55 chore: MirrorChyan更新支持判断完整包 2025-06-05 17:40:50 +08:00
status102
943f2bdea3 perf: 允许无OTA包更新 2025-06-05 17:40:10 +08:00
uye
b91bc9dfe8 chore: MirrorChyan更新支持判断完整包 2025-06-05 17:28:41 +08:00
status102
8f096c4aa6 fix: 自动更新无ota包时, 残留旧版本文件 2025-06-05 17:15:32 +08:00
uye
8e5709fa90 debug: IsDebugVersion 2025-06-05 17:11:22 +08:00
uye
6e68b488d0 feat: 跨10版本的情况下不提供自动更新 2025-06-05 17:05:51 +08:00
github-actions[bot]
34a1e8266b chore: Auto Update Game Resources - 2025-06-05
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15462342471

[skip changelog]
2025-06-05 08:32:47 +00:00
status102
b814961559 fix: Toast死锁 2025-06-05 16:02:07 +08:00
github-actions[bot]
87642f513d docs: Auto Update Changelogs of v5.17.0-beta.2 (#12886)
* docs: Auto Generate Changelog of Release v5.17.0-beta.2

* docs: changelog

* docs: Update CHANGELOG.md

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-06-05 14:09:21 +08:00
uye
586c87233f style: 格式化 2025-06-05 14:03:54 +08:00
pre-commit-ci[bot]
1d7832c152 chore: Auto update by pre-commit hooks [skip changelog] 2025-06-05 05:02:19 +00:00
uye
78a81f34c3 feat: 清理 map 中的 png 类型截图 2025-06-05 13:00:06 +08:00
github-actions[bot]
0a8f78858f chore: Auto Update Game Resources - 2025-06-05
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15458489390

[skip changelog]
2025-06-05 04:32:51 +00:00
github-actions[bot]
2c3d0fd8ec chore: Auto Templates Optimization
Triggered by 79174381b3

[skip changelog]
2025-06-05 03:05:33 +00:00
github-actions[bot]
79174381b3 chore: Auto Update Game Resources - 2025-06-05
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15457330597

[skip changelog]
2025-06-05 02:57:20 +00:00
晓丶梦丶仁
bb8a890194 ci: 折叠 checkboxes 改为正则匹配 2025-06-05 01:57:33 +08:00
晓丶梦丶仁
c609433c8f docs: issue-checkbox-checker 文档 2025-06-05 01:12:50 +08:00
晓丶梦丶仁
b1c9102a8f ci: 优化未读检查、增加 checkboxes 折叠 2025-06-05 01:06:42 +08:00
晓丶梦丶仁
ee66844d9c fix: RA2 Swipe Save 2025-06-05 00:10:33 +08:00
status102
eca2e41c99 feat: 自动战斗费用击杀数缓存, 减少性能消耗 (#12879)
测试条件:待部署1,无技能检测,单个部署等击杀数,不开GPU加速

一场`1-7`的score情况:
- 击杀数未变化
  - 1.0 (1128: 30.87%)
  - 0.99 (2519: 68.94%)
  - 0.98 (5: 0.14%)
  - 0.97 (2: 0.055%)
  - 0.95~0.96 未出现
- 击杀变化
  - 0.94 (1)
  - 0.93 (2)
  - 0.92 (1)
  - 0.86 (1)
  - ...
[asst.log](https://github.com/user-attachments/files/20582872/asst.log)

有缓存:CPU 15~17%

![image](https://github.com/user-attachments/assets/0aa62313-4418-4837-ba0d-c3768aeab04a)


无缓存:CPU 48~52%

![image](https://github.com/user-attachments/assets/b71b838d-089d-4aa0-9e78-23c7d65c52cf)
2025-06-04 22:05:30 +08:00
status102
70fc130f4a refactor: 干员识别存储 (#12881) 2025-06-04 22:04:38 +08:00
status102
68d7f4ab41 fix: 外服使用 AUTO模式 代理倍率等待战斗结束时间过长 2025-06-04 19:05:22 +08:00
status102
45765a3932 perf: 旧config移除简化 2025-06-04 18:37:28 +08:00
status102
4de88035be chore: 提高可读性 2025-06-04 18:37:28 +08:00
status102
e1fea2032a chore: mumu内测路径注释 2025-06-04 18:37:23 +08:00
晓丶梦丶仁
a0ef939648 fix: RA2 swipe save 2025-06-04 16:30:31 +08:00
uye
9ea2c8c8e5 fix: 放弃与驮兽同行,等谁想加识别了再改回来) 2025-06-04 15:15:39 +08:00
status102
4285132852 perf: 击杀数识别RegionOcr使用原图优化 2025-06-04 09:58:50 +08:00
status102
9c79a8d09c feat: 自动战斗费用击杀数缓存, 减少性能消耗 2025-06-04 09:56:49 +08:00
晓丶梦丶仁
fcf026104c chore: MuMuExtras 5.0+ (#12876) 2025-06-04 00:09:15 +08:00
Lemon-miaow
7baad81b84 chore: 移除因勾选"我未仔细阅读"的自动回复 增加文档描述 (#12875)
* chore: 移除自动回复

* docs: 添加issue-not-reading-checker的描述
2025-06-03 22:10:31 +08:00
status102
f72b834d12 fix: 绿票商店跳过赤金及家具灵茧
fix #12872
2025-06-03 20:23:17 +08:00
status102
2c8efbbcb9 fix: 修复feature match sence内无特征点时的死循环问题
c8516a7264
2025-06-03 20:23:17 +08:00
status102
d20b539f06 chore: 特征匹配调试绘制 2025-06-03 20:23:16 +08:00
uye
66d7659e9a fix: 界面窗口标题滚动失效
fix #12854
2025-06-03 20:11:15 +08:00
MistEO
8995b04a22 chore: add mirrorchyan url source (#12869)
* chore: add mirrorchyan url source

* perf: wpf link

* Apply suggestions from code review

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

* fix: link

* fix: 吐司通知转义

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-06-03 19:52:36 +08:00
HY
4d74da147a fix: 繁中服 薩卡茲肉鴿 月度小隊無法開始探索 (#12871)
* fix: 繁中服 薩卡茲肉鴿 月度小隊無法開始探索

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-06-03 12:29:35 +02:00
HY
4a6f357b73 chore: 繁中服「泰拉飯」活動導航 +「滋味」主題 (#12870)
* chore: 繁中服「泰拉飯」活動導航

* chore: 「滋味」主題截圖

* chore: Auto update by pre-commit hooks [skip changelog]

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-06-03 12:29:11 +02:00
晓丶梦丶仁
e2a9ed7bb0 fix: EN IS4 Squad Name 2025-06-03 18:25:07 +08:00
status102
ecd1153238 chore: warning 2025-06-03 17:56:03 +08:00
status102
2f5d5774be refactor: 持有费用缓存判定拆分 2025-06-03 17:56:03 +08:00
github-actions[bot]
8752da1c06 chore: Auto Update Game Resources - 2025-06-03
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15412469181

[skip changelog]
2025-06-03 08:33:07 +00:00
status102
a6de3f83ba perf: 特征匹配ASST_DEBUG增加匹配点位绘制 2025-06-03 14:07:21 +08:00
Lemon-miaow
4f2e9c6409 chore: 增加“我未仔细阅读”陷阱选项 (#12864)
* chore: 增加“我未仔细阅读”陷阱选项

* chore: 改进文本

* chore: typo

* chore: 拆分选项

* chore: 改进文本

* chore: ci

* chore: 改进文本

* ci: lock_reason

---------

Co-authored-by: 晓丶梦丶仁 <74444214+Daydreamer114@users.noreply.github.com>
2025-06-03 12:18:20 +08:00
status102
09bbf1a2ed refactor: LogDebug, LogTrace, LogInfo, LogWarn, LogError补上scope输出 (#12855) 2025-06-02 21:23:53 +08:00
github-actions[bot]
25ecadf0d5 chore: Auto Update Game Resources - 2025-06-01
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15376777571

[skip changelog]
2025-06-01 15:44:50 +00:00
Constrat
ca2dfda207 chore: YostarEN EP navigation 2025-06-01 17:33:24 +02:00
status102
6e3f402dec style: Logger可读性优化 2025-06-01 22:50:33 +08:00
status102
7944608267 perf: Log.debug是否写入判断优化 2025-06-01 21:59:36 +08:00
HX3N
1663df1263 chore: YostarKR EP navigation (#12852) 2025-06-01 20:16:21 +08:00
github-actions[bot]
3fbc8655de chore: Auto Update Game Resources - 2025-06-01
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15374283831

[skip changelog]
2025-06-01 11:06:31 +00:00
Manicsteiner
81bc7a3a39 chore: YostarJP EP navigation and i18n changes (#12849) 2025-06-01 11:36:07 +02:00
uye
1d530522b0 chore: using ToastNotification 2025-06-01 16:16:02 +08:00
status102
a33535e073 fix: 7e9806e697 2025-06-01 14:43:57 +08:00
MistEO
7e9806e697 fix: findHomography should have at least 4 points, 优化性能
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
2025-06-01 14:38:28 +08:00
status102
b814c76135 feat: FeatureMatcher muplti results
link to MaaXYZ/MaaFramework#645

Co-authored-by: MistEO <mistereo@hotmail.com>
2025-06-01 14:32:37 +08:00
status102
4b9098769e Revert "feat: 不允许通过吐司通知启动应用"
This reverts commit ad54d797d1.
2025-06-01 14:04:57 +08:00
status102
f8725f5cd2 perf: 阻止WinRT下Toast主体点击时的启动行为 2025-06-01 14:04:14 +08:00
uye
ad54d797d1 feat: 不允许通过吐司通知启动应用 2025-06-01 13:51:16 +08:00
uye
8fe23adba0 fix: WMI 无效类报错
fix #12844
2025-06-01 11:27:38 +08:00
status102
21fa83b749 docs: 连战次数 -> 代理倍率; 指定次数 描述优化 (#12835)
* docs: `指定次数` & `代理倍率` 描述优化

* chore: Auto update by pre-commit hooks [skip changelog]

* docs: format

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-06-01 08:52:14 +08:00
status102
5458ae642a perf: 刷理智任务每次开始行动时的文本优化 2025-05-31 23:56:38 +08:00
status102
df7cdf6608 perf: 自动战斗使用战斗列表执行单作业时, 增加一条警告; 追加部分提示的i18n (#12832) 2025-05-31 23:04:46 +08:00
晓丶梦丶仁
d25ac0990f feat: RA store (#12833)
* feat: RA store

* feat: 生息演算商店接入刷点数

* fix: 停止方式
2025-05-31 18:13:14 +08:00
status102
498736ec22 fix: Telegram外部通知请求日志uri调整
fix#11983

咋uri给明文token, 怪哎
2025-05-30 19:42:07 +08:00
status102
d42944e3b5 refactor(wpf): HttpService日志中uri统一使用UriPartial限制 2025-05-30 19:42:07 +08:00
HY
1ab6f93358 fix: 繁中服薩卡茲肉鴿 ocr (#12829) 2025-05-30 12:26:32 +02:00
status102
3f3262a82b i18n: wpf CN 修改描述连战次数 -> 代理倍率 (#12827)
i18n: wpf 修改描述`连战次数` -> `代理倍率`
2025-05-30 17:22:34 +08:00
status102
75464abd73 chore: 生成时清理template, tasks, global缓存 2025-05-30 15:15:51 +08:00
status102
a017fe9a9f fix: wpf任务状态并发修改 2025-05-30 10:59:46 +08:00
status102
3cfc853d10 fix: 非部署动作时, 动作前等待结束后不必要的部署区更新可能触发暂停识别, 导致动作滞后 2025-05-29 22:15:23 +08:00
status102
b516bbf7fd perf: 肉鸽投资达限时, 增加输出提示 (#12818) 2025-05-29 22:04:46 +08:00
uye
2b7ea316d1 feat: 新增 JsonDataHelper,抽离 gui.json 中巨大的 data 类型数据到 data 文件夹中 (#12795) 2025-05-29 21:40:27 +08:00
status102
a59219ea66 refactor: 迁移肉鸽任务部分回调 2025-05-29 10:36:29 +08:00
status102
4fec94f580 chore: else if替换独立if
[skip changelog]
2025-05-29 10:26:10 +08:00
status102
d50c4a4f82 feat: template重复检查 2025-05-28 23:41:51 +08:00
uye
ca65482ca8 Release v5.17.0-beta.1 (#12812)
This reverts commit 38b0742a4a.
2025-05-28 23:41:02 +08:00
uye
4bac9f6c71 Revert "chore: 还原 RA/Fire.json"
This reverts commit 38b0742a4a.
2025-05-28 23:39:07 +08:00
uye
332f890b11 Release v5.17.0-beta.1 (#12785) 2025-05-28 22:43:31 +08:00
uye
38a7f78dd7 docs: Update CHANGELOG.md 2025-05-28 22:43:10 +08:00
uye
38b0742a4a chore: 还原 RA/Fire.json 2025-05-28 22:35:50 +08:00
github-actions[bot]
03a966d66d docs: Auto Update Changelogs of v5.17.0-beta.1 (#12809)
* docs: Auto Generate Changelog of Release v5.17.0-beta.1

* 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>
2025-05-28 19:27:15 +08:00
HY
e1d81e40cb feat: 繁中服 薩卡茲肉鴿 (#12800)
* feat: 更新薩卡茲肉鴿的相關內容

* chore: 補充截圖

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: 小修一點目前有遇到的 OCR 錯誤

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: 繼續補充截圖 + 調整未開放分隊的名稱

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: 最後一張圖片了

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: 再修一點 ocr 問題

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-05-27 17:50:18 +02:00
github-actions[bot]
ef1da986b5 chore: Auto Update Game Resources - 2025-05-27
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15275374794

[skip changelog]
2025-05-27 12:34:37 +00:00
AnnAngela
8b144fe4de fix: 我面前站不下这许多人
```
     %~fI        - 将 %I 扩展到一个完全合格的路径名
     %~dI        - 仅将 %I 扩展到一个驱动器号
     %~pI        - 仅将 %I 扩展到一个路径
     %~nI        - 仅将 %I 扩展到一个文件名
     %~xI        - 仅将 %I 扩展到一个文件扩展名
```
2025-05-27 17:03:57 +08:00
晓丶梦丶仁
db18965bff fix: KR 驮兽旅行家 OCR 2025-05-27 15:08:38 +08:00
status102
59ba947489 Merge tag 'v5.16.10' into dev
v5.16.10
2025-05-26 10:50:30 +00:00
status102
d0abdde209 Release v5.16.10 (#12793) 2025-05-26 18:49:55 +08:00
status102
81c27e1a0a docs: changelog 2025-05-26 18:49:39 +08:00
status102
d7d438e067 fix: BattleQuickFormationOCR in EN 2025-05-26 17:13:13 +08:00
Manicsteiner
bc9afbd20c chore: YostarJP FormationOCR params (#12783) 2025-05-26 17:13:13 +08:00
status102
b9032ccf2e perf: Sync OperBoxNameOCR roi to EN 2025-05-26 17:13:12 +08:00
status102
5bab8053b2 fix: OperBox Roi for EN 2025-05-26 17:13:12 +08:00
status102
b1e064a5db Revert "fix: OperBox Roi for EN"
This reverts commit 4abecee9c7.
2025-05-26 17:13:12 +08:00
Constrat
8eb09c9992 fix: clang
[skip changelog]
2025-05-26 17:13:11 +08:00
status102
1f583c3cbe fix: OperBox Roi for EN 2025-05-26 17:13:11 +08:00
status102
99ea5dc070 fix: 自动编队添加自定义干员时, 点击位置错误 2025-05-26 17:13:11 +08:00
status102
07d2decb11 fix: OperBox ROI 更正
fix #12770
2025-05-26 17:13:10 +08:00
status102
e23c362cf3 refactor: 干员名识别封装 2025-05-26 17:13:10 +08:00
Constrat
4c9a19b81a i18n: EN tweak 2025-05-26 17:13:10 +08:00
github-actions[bot]
17fe445d50 chore: Auto Update Game Resources - 2025-05-22
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15192605330

[skip changelog]
2025-05-26 17:13:09 +08:00
uye
87bbd07ecf feat: 更新识别工具逻辑与显示效果 (#12791)
* feat: 仓库识别持久化储存

* feat: 干员识别数据支持启动时显示

* fix: 小工具初始化

* perf: 干员识别使用 VirtualizingWrapPanel,加快加载速度

* perf: 掉落识别使用 VirtualizingWrapPanel,加快加载速度

* feat: 逐项滚动
2025-05-26 16:48:24 +08:00
uye
1803f77325 chore: 重启函数添加 CallerMemberName,UntilIdleAsync 添加消抖 2025-05-26 14:38:38 +08:00
Manicsteiner
4b6c7319bd chore: YostarJP roguelike ocr edit (#12789) 2025-05-25 16:55:25 +02:00
HX3N
1c49ccaf23 fix: global templates are not loaded (#12787) 2025-05-25 15:49:31 +08:00
Loong
15d921e21d chore: bump maa-cli to 0.5.5 (#12664) 2025-05-25 10:13:25 +08:00
Sherkey Asher
515f8b2c5f feat: 模板图允许从子文件夹加载 (#12717)
* rft: 重构模板图位置

* rft: remove all Fire@Reclamation files

* feat: 支持从子文件夹加载模板

* chore: Auto update by pre-commit hooks [skip changelog]

* docs: 更新模板加载逻辑文档

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-05-24 23:00:18 +08:00
status102
295a6f8753 chore(WpfGui): 防止缓存的任务文件被意外覆盖 2025-05-24 15:46:54 +08:00
status102
3799d6cfd0 fix: BattleQuickFormationOCR in EN 2025-05-24 10:43:22 +08:00
Manicsteiner
13e69e09e9 chore: YostarJP FormationOCR params (#12783) 2025-05-23 20:47:19 +02:00
uye
c58f525155 chore: 调整技能识别保存截图的阈值 2025-05-23 21:52:36 +08:00
uye
f96e41da1d feat: 截图测试可以在自动检测的情况下使用 2025-05-23 20:11:50 +08:00
status102
6a697a7142 perf: Sync OperBoxNameOCR roi to EN 2025-05-23 18:18:11 +08:00
status102
023499b2ba fix: OperBox Roi for EN 2025-05-23 18:18:11 +08:00
status102
c921eafe48 Revert "fix: OperBox Roi for EN"
This reverts commit 4abecee9c7.
2025-05-23 18:18:10 +08:00
Constrat
3c547ebc7a fix: clang
[skip changelog]
2025-05-23 10:32:13 +02:00
status102
4abecee9c7 fix: OperBox Roi for EN 2025-05-23 16:15:08 +08:00
status102
c9d4a1bbac fix: 自动编队添加自定义干员时, 点击位置错误 2025-05-23 15:26:24 +08:00
status102
efe817d45a fix: OperBox ROI 更正
fix #12770
2025-05-23 15:26:15 +08:00
status102
1679cea5c5 refactor: 干员名识别封装 2025-05-23 15:17:55 +08:00
status102
75012b2252 feat: 自动战斗费用识别缓存, 减少性能消耗 (#12765)
* feat: 自动战斗费用识别缓存

* refactor: 返回值格式

* chore: 改个名字

* chore: rename

* fix: 改名改着改着改错了

* fix: var init

* perf: 简化返回值

* fix: template

* fix: platform
2025-05-23 09:02:00 +08:00
Constrat
bc6059b33c i18n: EN tweak 2025-05-22 21:01:27 +02:00
github-actions[bot]
a7f78b5650 chore: Auto Update Game Resources - 2025-05-22
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15192605330

[skip changelog]
2025-05-22 17:07:02 +00:00
status102
1d7efcd07b rft: TooltipBlock封装 (#12773)
* rft: TooltipBlock封装

* fix: TooltipText 绑定失败

* rft: 自动战斗提示替换

---------

Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-05-22 17:53:22 +08:00
status102
ec6c219673 Release v5.16.9 (#12771) 2025-05-22 17:23:24 +08:00
github-actions[bot]
7a86355a96 chore: Auto Update Game Resources - 2025-05-22
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15182548981

[skip changelog]
2025-05-22 09:08:30 +00:00
github-actions[bot]
ac4a1c6b4b chore: Auto Update Game Resources - 2025-05-22
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15181422645

[skip changelog]
2025-05-22 08:10:08 +00:00
github-actions[bot]
025c7fa72b chore: Auto Update Game Resources - 2025-05-22
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15180975779

[skip changelog]
2025-05-22 07:44:49 +00:00
github-actions[bot]
937ce54362 docs: Auto Update Changelogs of v5.16.9 (#12772)
docs: Auto Generate Changelog of Release v5.16.9

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-05-22 14:23:10 +08:00
status102
7a86697006 perf: 账号切换查找账号最大滑动次数增加到20 2025-05-22 11:01:18 +08:00
status102
4bf790ab3e fix: 理智药使用计数超过实际用量 2025-05-22 11:00:36 +08:00
Lemon-miaow
63fc00a077 feat: 为Copilot添加土司通知 (#12764)
feat: Copilot土司通知
2025-05-22 09:40:52 +08:00
Constrat
549e244605 ci:: remove stale update_resources logic from version script 2025-05-21 22:52:17 +02:00
github-actions[bot]
99d5cf63f8 chore: Auto Update Game Resources - 2025-05-21
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15171563568

[skip changelog]
2025-05-21 20:08:23 +00:00
status102
604ab8f603 docs: 特征匹配detector遗漏 2025-05-21 11:44:47 +08:00
uye
6840318470 Release v5.16.8 (#12756) 2025-05-21 11:32:27 +08:00
uye
b6a9c5e671 docs: Update CHANGELOG.md 2025-05-21 11:31:38 +08:00
uye
27f471fa07 feat: 别再把 maa 放在 Program Files 里了 2025-05-21 11:28:10 +08:00
github-actions[bot]
f3686ebbd3 docs: Auto Update Changelogs of v5.16.8 (#12757)
* docs: Auto Generate Changelog of Release v5.16.8

* docs: cahgnelgo

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
2025-05-21 11:22:52 +08:00
status102
aa0eaea4dd fix: 自动编队干员Ocr左侧内缩过度 2025-05-21 11:08:49 +08:00
status102
566ff62cb0 fix: RegionOcr阈值过滤膨胀后超出原roi 2025-05-21 11:06:37 +08:00
status102
739110255b fix: 自动编队roi溢出闪退 2025-05-21 09:57:47 +08:00
status102
f6c6fca5ca chore: 修复roi超限
@Lemon-miaow
2025-05-21 09:42:32 +08:00
uye
cb9eae7bed chore: 更新 version.json
[skip changelog]
2025-05-21 01:31:15 +08:00
uye
913c4b1f8a chore: 更新 version.json
[skip changelog]
2025-05-21 01:29:52 +08:00
uye
4fe35cbb81 Release v5.16.7 (#12753) 2025-05-21 01:11:44 +08:00
github-actions[bot]
b9eea18342 docs: Auto Update Changelogs of v5.16.7 (#12754)
* docs: Auto Generate Changelog of Release v5.16.7

* docs: ahcneglog

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
2025-05-21 01:10:33 +08:00
uye
0552f8690b chore: 同一格式 2025-05-21 01:10:07 +08:00
pre-commit-ci[bot]
f06657867a chore: Auto update by pre-commit hooks [skip changelog] 2025-05-20 16:48:00 +00:00
status102
0ab8bf1b7a fix: 使用理智药后状态未能更新 2025-05-21 00:44:32 +08:00
status102
b259f13202 fix: 使用理智药超限后减少后无法确认使用理智药 2025-05-21 00:30:01 +08:00
status102
4d554f413e fix: 使用理智药后状态未能更新 2025-05-21 00:30:00 +08:00
uye
01d187a943 chore: 自动战斗循环 BattleStartPre retry 3次 2025-05-21 00:24:09 +08:00
SherkeyXD
e898eee450 chore: task schema update 2025-05-21 00:03:05 +08:00
status102
aeed5b4fa0 chore: 调整战斗列表说明 2025-05-20 20:17:51 +08:00
status102
162908dfdf perf: wpf版本不一致仅允许DebugVersion 2025-05-20 20:17:34 +08:00
uye
ee97a4528f perf: 地图截图改用 jpeg 2025-05-20 20:06:05 +08:00
uye
0228156cde perf: 地图截图使用 360p 保存坐标点,节省储存空间 2025-05-20 19:37:54 +08:00
uye
04a95fb27b chore: 怎么又忘了把 isDebug 还原
[skip changelog]
2025-05-20 18:44:44 +08:00
uye
b5d372ab52 chore: 调整界面提示 2025-05-20 18:44:01 +08:00
uye
32986f40c8 chore: 选择 Mirror酱 更新渠道更新软件版本但未填写 cdk 时 Fallback 至海外源 2025-05-20 17:30:38 +08:00
uye
e4aa0b7a11 perf: 优化 Placeholder 提示 2025-05-20 16:55:19 +08:00
uye
c7cd335a2e chore: 移除 debug
[skip changelog]
2025-05-20 16:24:57 +08:00
uye
81a98638b0 perf: 优化检查更新逻辑 2025-05-20 16:24:15 +08:00
Hao Guan
c92502aed1 fix(mac): 修复Mirror酱资源更新问题 2025-05-20 15:30:25 +08:00
status102
49d4dc78b1 perf: 自动战斗编队优化干员识别, 修复roi未包含完整干员名 (#12740)
* perf: 自动战斗编队优化干员识别

* chore: Auto update by pre-commit hooks [skip changelog]

* perf: task

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-05-20 14:31:35 +08:00
晓丶梦丶仁
9d85c3c3b4 Release v5.16.6 (#12745) 2025-05-20 13:23:57 +08:00
github-actions[bot]
d96c26471b docs: Auto Update Changelogs of v5.16.6 (#12746)
* docs: Auto Generate Changelog of Release v5.16.6

* 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>
2025-05-20 10:12:06 +08:00
uye
bdc3630b7a feat: 显示资源关卡全开放剩余时间 2025-05-19 01:01:14 +08:00
status102
f76db36364 fix: mac platform 2025-05-18 23:36:54 +08:00
status102
7f4a95280c fix: 自动战斗编队时重复选中同一干员 2025-05-18 20:57:34 +08:00
status102
711041f190 perf: 自动战斗编队时增加干员组名输出 2025-05-18 19:56:25 +08:00
status102
21086dcf68 fix: 部分情况下刷理智连战使用AUTO模式时, 吃理智药溢出理智 2025-05-18 19:56:03 +08:00
uye
2c3b6ac50a feat: 更新解决方案 2025-05-18 19:54:40 +08:00
晓丶梦丶仁
743c51a4b5 fix: 开始行动 点击过快 2025-05-18 18:58:14 +08:00
github-actions[bot]
61ce039b12 chore: Auto Update Game Resources - 2025-05-18
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15095131924

[skip changelog]
2025-05-18 10:45:40 +00:00
晓丶梦丶仁
f6788e6029 fix: 开始行动 ocr replace 2025-05-18 18:42:09 +08:00
uye
a7ed964cb0 fix: 延迟停止按钮叠加显示 2025-05-18 17:40:28 +08:00
Constrat
a91fc84942 fix: formatting ci prettier and clang
[skip changelog]
2025-05-18 11:21:02 +02:00
萨拉托加
66ef1f0836 fix: ocr fix (#12736)
* fix: ocr fix

* fix: 还原
2025-05-18 15:24:21 +08:00
uye
f0a3bbf16a chore: 修改 not in deploy plan 提示 2025-05-18 15:05:39 +08:00
uye
529fedd95e chore: point_states 改用 unordered_map 2025-05-18 14:06:20 +08:00
uye
434932d39a fix: ci format 2025-05-18 13:35:33 +08:00
uye
6601c6621c chore: 调整截图保存逻辑 2025-05-18 12:23:26 +08:00
筱竹聽雨
7a65be5fa5 chore: 尚蜀夜市招募黑名单添加新约能天使 (#12734)
chore:优化黑名单

将新约能天使加入黑名单
2025-05-18 08:37:21 +08:00
github-actions[bot]
0ca0de9663 chore: Auto Update Game Resources - 2025-05-17
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15085694756

[skip changelog]
2025-05-17 13:31:06 +00:00
status102
c69ce8ca7a perf: 黄票绿票商店使用特征匹配 2025-05-17 21:21:40 +08:00
status102
9bccb24654 chore: 黄绿票商店任务整理 2025-05-17 21:11:25 +08:00
status102
0d4ffca813 fix: 指定战斗次数后剩余次数小于连战次数时,可能修改到非指定连战次数 2025-05-17 20:03:22 +08:00
晓丶梦丶仁
b13e4d022b Revert "perf: 黄票绿票商店使用特征匹配 (#12718)"
This reverts commit 57888f783e.
2025-05-17 18:54:29 +08:00
晓丶梦丶仁
110847e005 fix: IS4 竣工仪式 2025-05-17 15:13:46 +08:00
Manicsteiner
772424e920 chore: YostarJP ocr fix (#12729) 2025-05-17 11:34:49 +08:00
status102
57888f783e perf: 黄票绿票商店使用特征匹配 (#12718)
* perf: 黄票绿票商店使用特征匹配

* fix: task
2025-05-16 23:52:45 +08:00
Constrat
f4ee5356d1 fix: SSSBuffChoose for YostarEN 2025-05-16 11:42:54 +02:00
Loong
035fdaa6ca chore: find OpenCV features2d and xfeatures2d components (#12714) 2025-05-16 10:17:45 +01:00
status102
2d4c556bc6 perf: 简化基建任务自定义配置路径Readonly 2025-05-16 16:13:46 +08:00
status102
58a3157bb3 fix: FeatureMatch任务无法读取roi 2025-05-16 13:37:40 +08:00
status102
848ebeb747 feat: ProcessTask支持特征匹配 (#12701)
* feat: ProcessTask支持特征匹配

* chore: test

* fix: test

* docs: task文档
2025-05-16 13:13:48 +08:00
uye
989ba7ee52 chore: 矢量突破开始行动 2025-05-16 01:45:09 +08:00
vonnoq
53e3ec8273 fix: 繁中服悖論模擬 (#12711)
* fix: 繁中服悖論模擬

繁中服悖論模擬UI更新

* fix: 繁中服悖論模擬

繁中服悖論模擬UI更新
2025-05-16 00:39:26 +08:00
MistEO
dbc1f1f6da chore: ota.maa.plus -> api.maa.plus 2025-05-15 23:19:13 +08:00
github-actions[bot]
0d57e73bb4 chore: Auto Update Game Resources - 2025-05-15
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15043371741

[skip changelog]
2025-05-15 11:07:01 +00:00
github-actions[bot]
cf4553fa0a chore: Auto Templates Optimization
Triggered by 0af71a9f32

[skip changelog]
2025-05-15 10:08:39 +00:00
Constrat
0af71a9f32 fix: remove cachie from optimize templates
what's the issue?
2025-05-15 12:07:08 +02:00
pre-commit-ci[bot]
6ab3b6cc56 chore: Auto update by pre-commit hooks [skip changelog] 2025-05-15 18:04:31 +08:00
Constrat
ec1de48e42 fix: update-resources.yml removal from res-update-game 2025-05-15 12:01:30 +02:00
github-actions[bot]
87e43d91f0 chore: Auto Update Game Resources - 2025-05-15
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15041077348

[skip changelog]
2025-05-15 09:09:57 +00:00
uye
6104d0602b refactor: 重构干员识别
fix #12703
2025-05-15 14:17:53 +08:00
github-actions[bot]
f04b9a6409 chore: Auto Update Game Resources - 2025-05-15
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15037893648

[skip changelog]
2025-05-15 06:10:32 +00:00
github-actions[bot]
4fbb831c44 chore: Auto Update Game Resources - 2025-05-15
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/15037365361

[skip changelog]
2025-05-15 05:30:34 +00:00
uye
9301ea44b1 chore: 调整 prts 颜色 2025-05-15 00:24:05 +08:00
uye
7e7beabb35 chore: 添加几个专精 ocrReplace 2025-05-14 23:39:13 +08:00
uye
eb5803fef7 Release v5.16.5 (#12688) 2025-05-14 23:22:28 +08:00
github-actions[bot]
24f2cb5cbf docs: Auto Update Changelogs of v5.16.5 (#12698)
* docs: Auto Generate Changelog of Release v5.16.5

* docs: changelog

* docs: Update CHANGELOG.md

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
Co-authored-by: 晓丶梦丶仁 <74444214+Daydreamer114@users.noreply.github.com>
2025-05-14 23:21:53 +08:00
uye
fb8f3b78ad fix: 凹开局干员直升精二选项显示时机错误 2025-05-14 22:25:27 +08:00
status102
abcaf2ee06 perf: 肉鸽不期而遇退出检测加个重试 2025-05-14 20:37:46 +08:00
萨拉托加
03188824f7 Revert "feat: 在肉鸽招募中增加m3作为群奶 (#12353)"
This reverts commit 76a007501a.
2025-05-14 16:54:48 +08:00
status102
340e2798a0 docs: 任务流color_scales注释优化 2025-05-14 16:18:02 +08:00
status102
f9d468f557 perf: 指定类型 2025-05-14 16:15:09 +08:00
status102
e71eb3985d fix: 连战次数乘号匹配失败 2025-05-14 15:55:33 +08:00
uye
5adb76e377 feat: 调整连战输出 2025-05-14 15:06:18 +08:00
Hao Guan
be0ff90b8a feat(mac): 新增基建配置 2025-05-14 13:57:25 +08:00
晓丶梦丶仁
cd723f2210 perf: store loading 2025-05-14 11:29:21 +08:00
晓丶梦丶仁
93ab1cc811 fix: yellow ticket items 2025-05-14 10:25:51 +08:00
uye
92421d464c chore: 简化代码 2025-05-14 10:18:02 +08:00
Loong
260ab6e839 ci: don't check github link (#12667)
* ci: don't check github link

* ci: remove cache

* chore: readd cache

---------

Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
2025-05-13 16:39:44 +02:00
status102
7e3e43e81a fix: ocrTask text 2025-05-13 21:43:07 +08:00
status102
3b3056a65f chore: 提示补全 2025-05-13 19:56:45 +08:00
status102
5aa1d74b96 chore: NumberReplace 2025-05-13 19:56:44 +08:00
status102
b9f196c3a1 feat: 特征匹配 (#10966)
* feat: 特征匹配

* chore: 测试内容

* refactor: 根据最新版本重新迁移, 移除多模板

* chore: Auto update by pre-commit hooks [skip changelog]

* chore: 测试移除

* fix: platform

* chore: docs

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-05-13 18:24:16 +08:00
MistEO
c7a8191e03 chore: 再次调整官网细节 2025-05-13 14:27:32 +08:00
MistEO
3a87307bda chore: 调整官网标题 2025-05-13 14:21:05 +08:00
晓丶梦丶仁
f0ff035546 Revert "fix: github change string to int (#12574)"
This reverts commit 539e2b48b2.
2025-05-13 13:23:05 +08:00
晓丶梦丶仁
81504417c7 fix: Store@UnderfundedOCR 2025-05-13 11:37:09 +08:00
晓丶梦丶仁
771c3e53b7 i18n: 绿票、黄票、活动商店 (#12674)
* i18n: en

* i18n: temp

* i18n: jp

* chore: YostarJP buy items

* fix: template task

* fix: en

* i18n: kr

* i18n: tw

---------

Co-authored-by: Manicsteiner <Manicsteiner@outlook.com>
2025-05-13 11:35:54 +08:00
晓丶梦丶仁
5cc7861d5c fix: store underfunded ocr full match 2025-05-13 00:46:51 +08:00
status102
61f25c94e5 fix: 再铲一屎 2025-05-13 00:03:02 +08:00
github-actions[bot]
8da46bf991 chore: Auto Update Game Resources - 2025-05-12
https://github.com/MaaAssistantArknights/MaaAssistantArknights/actions/runs/14973978510

[skip changelog]
2025-05-12 13:49:04 +00:00
晓丶梦丶仁
26f421418e feat: 绿票、黄票、活动商店 (#12586)
* feat: 绿票、黄票商店

* i18n: EN fix

* feat: 活动商店

* perf: baseTask

* perf: 非代币关联性模板

* chore: Auto update by pre-commit hooks [skip changelog]

* perf: baseTask

* chore: sub

* chore: 修改截图

* chore: Auto update by pre-commit hooks [skip changelog]

* fix: 第一页买完之后无法进行活动商店购买

* fix: 买完皮肤、干员之后的 swipe

* chore: 修改描述

* perf: 购买商品确认next优化

* perf: 模板图复用

* chore: Auto update by pre-commit hooks [skip changelog]

* perf: 合并部分task

* fix: 代币不足

* fix: 代币不足 ocr

---------

Co-authored-by: Constrat <56174894+Constrat@users.noreply.github.com>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
2025-05-12 21:45:19 +08:00
uye
82dbe28b5e fix: cache 移动逻辑 2025-05-12 19:42:53 +08:00
status102
cc7c740921 fix: 这回应该铲完了
[skip changelog]
2025-05-12 19:09:00 +08:00
status102
4396c71802 fix: ubuntu unused 2025-05-12 18:59:23 +08:00
status102
351529d4cf fix: 铲屎包了个try
[skip changelog]
2025-05-12 18:49:24 +08:00
status102
eeeca5aa0f fix: 铲屎 2025-05-12 18:44:47 +08:00
uye
37c712637c fix: 修复了屎遇上手动覆盖文件的大聪明爆炸的问题 2025-05-12 18:40:51 +08:00
status102
3c995514a6 chore: mark 2025-05-12 17:37:09 +08:00
uye
5038576b75 chore: 调整 UI 与 Core 版本不一致的解决方案提示 2025-05-12 17:17:15 +08:00
uye
43952444bb chore: 点击任意职业回正列表 2025-05-12 15:49:14 +08:00
uye
1848caf82a refactor: 基建先进行技能识别并返回列表首位,再清空选择
fix #12659
2025-05-12 13:36:01 +08:00
6512 changed files with 693662 additions and 88816 deletions

2
.clangd Normal file
View File

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

View File

@@ -0,0 +1,26 @@
FROM mcr.microsoft.com/devcontainers/base:ubuntu
USER vscode
ENV PATH="/home/vscode/.local/bin:${PATH}"
ARG PYTHON_VERSION=3.12.11
ARG NODEJS_VERSION=24
# Install and setup mise and uv
RUN curl https://mise.run | sh
RUN curl -LsSf https://astral.sh/uv/install.sh | sh
# Activate mise
RUN echo 'eval "$(mise activate bash)"' >> ~/.bashrc
# Setup Python and Node.js
RUN mise use -g node@$NODEJS_VERSION
RUN uv python install $PYTHON_VERSION
# Create and activate venv
RUN uv venv --clear ~/.venv/maa
RUN echo "source ~/.venv/maa/bin/activate" >> ~/.bashrc
# Install tools
RUN uv tool install prek

View File

@@ -0,0 +1,48 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/javascript-node
{
"name": "MAA Docs Env (Light)",
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
// "image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"build": {
"dockerfile": "Dockerfile"
},
// Features to add to the dev container. More info: https://containers.dev/features.
// "features": {},
// Use 'forwardPorts' to make a list of ports inside the container available locally.
"forwardPorts": [3001],
// Use 'postCreateCommand' to run commands after the container is created.
"postCreateCommand": "bash .devcontainer/0/post-create.sh",
// Configure tool-specific properties.
"customizations": {
"vscode": {
"extensions": [
"nekosu.maa-support",
"esbenp.prettier-vscode",
"DavidAnson.vscode-markdownlint",
"yzhang.markdown-all-in-one",
"vue.volar",
"mkxml.vscode-filesize"
],
"settings": {
// Color theme
"workbench.colorTheme": "Default Dark Modern",
// Editor formatting
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode",
// Performance optimizations
"search.exclude": {
"**/node_modules": true,
"**/3rdparty": true
}
}
}
}
// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
// "remoteUser": "root"
}

View File

@@ -0,0 +1,19 @@
#!/bin/bash
WORKSPACE=$(pwd)
echo "===================="
cd "$WORKSPACE"
echo "Setting up git safe.directory..."
git config --global --add safe.directory "$WORKSPACE"
git submodule foreach --recursive 'git config --global --add safe.directory "$toplevel/$path"'
echo "===================="
cd "$WORKSPACE"
echo "Updating submodules..."
git submodule update --init --recursive
echo "===================="
cd "$WORKSPACE"/docs
echo "Installing node modules..."
npm install -g pnpm
pnpm install --frozen-lockfile

View File

@@ -0,0 +1,52 @@
FROM mcr.microsoft.com/devcontainers/base:ubuntu
USER vscode
ENV PATH="/home/vscode/.local/bin:${PATH}"
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 \
&& sudo apt install -y \
cmake \
fish \
&& sudo rm -rf /var/lib/apt/lists/*
# Initialize fish
RUN fish -c exit
# Install and setup mise and uv
RUN curl https://mise.run | sh
RUN curl -LsSf https://astral.sh/uv/install.sh | sh
# Activate mise
RUN echo 'eval "$(mise activate bash)"' >> ~/.bashrc
RUN echo 'mise activate fish | source' >> ~/.config/fish/config.fish
# Setup Python and Node.js
RUN mise use -g node@$NODEJS_VERSION
RUN uv python install $PYTHON_VERSION
# Create and activate venv
RUN uv venv --clear ~/.venv/maa
RUN echo "source ~/.venv/maa/bin/activate" >> ~/.bashrc
RUN echo "source ~/.venv/maa/bin/activate.fish" >> ~/.config/fish/config.fish
# Install tools
RUN uv tool install prek
RUN uv tool install ruff

View File

@@ -0,0 +1,78 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/javascript-node
{
"name": "MAA Core Env (Full)",
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
// "image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"build": {
"dockerfile": "Dockerfile"
},
// Features to add to the dev container. More info: https://containers.dev/features.
// "features": {},
// Use 'forwardPorts' to make a list of ports inside the container available locally.
"forwardPorts": [3001],
// Use 'postCreateCommand' to run commands after the container is created.
"postCreateCommand": "bash .devcontainer/1/post-create.sh",
// Configure tool-specific properties.
"customizations": {
"vscode": {
"extensions": [
"nekosu.maa-support",
"ms-vscode.cmake-tools",
"xaver.clang-format",
"llvm-vs-code-extensions.vscode-clangd",
"ms-python.python",
"charliermarsh.ruff",
"esbenp.prettier-vscode",
"DavidAnson.vscode-markdownlint",
"yzhang.markdown-all-in-one",
"vue.volar",
"mkxml.vscode-filesize"
],
"settings": {
// Color theme
"workbench.colorTheme": "Default Dark Modern",
// Editor formatting
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode",
// Language-specific formatting
"[python]": {
"editor.defaultFormatter": "charliermarsh.ruff",
"editor.codeActionsOnSave": {
"source.organizeImports": "explicit"
}
},
"[cpp]": {
"editor.defaultFormatter": "xaver.clang-format"
},
"[c]": {
"editor.defaultFormatter": "xaver.clang-format"
},
// Python runtime
"python.terminal.launchArgs": ["-u"],
"python.defaultInterpreterPath": "/home/vscode/.venv/maa/bin/python",
"python.terminal.activateEnvironment": false,
// CMake settings
"cmake.configureOnOpen": false,
// Performance optimizations
"search.exclude": {
"**/node_modules": true,
"**/build": true,
"**/install": true,
"**/MaaDeps": true,
"**/3rdparty": true
}
}
}
}
// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
// "remoteUser": "root"
}

View File

@@ -0,0 +1,45 @@
#!/bin/bash
WORKSPACE=$(pwd)
echo "===================="
cd "$WORKSPACE"
echo "Setting up git safe.directory..."
git config --global --add safe.directory "$WORKSPACE"
git submodule foreach --recursive 'git config --global --add safe.directory "$toplevel/$path"'
echo "===================="
cd "$WORKSPACE"
echo "Updating submodules..."
git submodule update --init --recursive
echo "===================="
cd "$WORKSPACE"/docs
echo "Installing node modules..."
npm install -g pnpm
pnpm install --frozen-lockfile
echo "===================="
cd "$WORKSPACE"
echo "Installing Python dependencies..."
# Install Python dependencies from all tools
for req_file in tools/*/requirements.txt; do
if [ -f "$req_file" ]; then
echo "Installing from $req_file"
uv pip install -r "$req_file"
fi
done
for req_file in tools/*/requirements-dev.txt; do
if [ -f "$req_file" ]; then
echo "Installing from $req_file"
uv pip install -r "$req_file"
fi
done
echo "===================="
cd "$WORKSPACE"
echo "Installing MaaDeps..."
python tools/maadeps-download.py
# Link clang-format & clangd to /usr/local/bin for easy access
sudo ln -s $WORKSPACE/src/MaaUtils/MaaDeps/x-tools/llvm/bin/clang-format /usr/local/bin/clang-format
sudo ln -s $WORKSPACE/src/MaaUtils/MaaDeps/x-tools/llvm/bin/clangd /usr/local/bin/clangd

View File

@@ -1,13 +1,13 @@
{
"image": "mcr.microsoft.com/devcontainers/cpp:ubuntu-22.04",
"features": {
"ghcr.io/devcontainers/features/python:1": {},
"ghcr.io/devcontainers/features/sshd:1": {}
},
"postCreateCommand": "sudo sh -ce 'apt update && apt install g++-12 -y && echo export CC=gcc-12 CXX=g++-12 >> /etc/profile.d/set-compiler.sh'",
"name": "Plain Env (Nothing Installed)",
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"postCreateCommand": "bash .devcontainer/post-create.sh",
"customizations": {
"vscode": {
"extensions": ["llvm-vs-code-extensions.vscode-clangd", "DavidAnson.vscode-markdownlint"]
"settings": {
// Color theme
"workbench.colorTheme": "Default Dark Modern"
}
}
}
}

View File

@@ -0,0 +1,13 @@
#!/bin/bash
WORKSPACE=$(pwd)
echo "===================="
cd "$WORKSPACE"
echo "Setting up git safe.directory..."
git config --global --add safe.directory "$WORKSPACE"
git submodule foreach --recursive 'git config --global --add safe.directory "$toplevel/$path"'
echo "===================="
cd "$WORKSPACE"
echo "Updating submodules..."
git submodule update --init --recursive

View File

@@ -46,9 +46,13 @@ e3d63894b28b2ef5e2405e144a32a6981de5e1b2
# refactor: divide tasks.json into multiple jsons
dce6e317c8e56836662b64ac4b3d1a69b4ff4dd8
# c# 统一使用文件范围限定的 namespace
76252d42e3febae1aef396e8ee5482fa46d565c6
# usage: add "[blame ignore]" to the commit message
# This file is managed by an automated workflow
# Do not add, remove or modify lines below this comment
# as they are automatically appended
# --------------------------------------------------- #
f7772bc814c52f9a5e65af02404cf54b70fe0a32
ca9807ce099e5cae133293df8dfcd2b56b0e06bd

2
.gitattributes vendored
View File

@@ -10,3 +10,5 @@
*.md text eol=lf
*.yml text eol=lf
*.yaml text eol=lf
*.sh text eol=lf

View File

@@ -1 +1 @@
272d71fa2938f945832f86232532b86a9e5406b8
1944164d9c47549d71c3b25987e9299404cc16f3

View File

@@ -5,16 +5,18 @@ body:
- type: checkboxes
id: checks
attributes:
label: 请确认自己完成了下列要求之后再进行勾选,若未完成但勾选将被直接关闭 Issue
label: 请确认自己完成了下列必选项之后再进行勾选,若未完成必选项或勾选了"我未仔细阅读"选项将视为自愿接受被直接关闭 Issue
options:
- label: 我理解 Issue 是用于反馈和解决问题的,而非吐槽评论区,将尽可能提供更多信息帮助问题解决
required: true
required: false
- label: 我未仔细阅读这些内容,只是一键已读[所有内容](/MaaAssistantArknights/MaaAssistantArknights/issues),并相信这不会影响问题的处理
required: false
- label: 我填写了简短且清晰明确的标题,以便开发者在翻阅 Issue 列表时能快速确定大致问题。而不是“一个建议”、“卡住了”等
required: true
- label: 我使用的是当前更新版本的最新版,且已查看版本发布至今的 [更新内容](https://github.com/MaaAssistantArknights/MaaAssistantArknights/commits/dev/) [Pull Requests](https://github.com/MaaAssistantArknights/MaaAssistantArknights/pulls) 中尚未发布的更新内容并未提及该 Bug 已被修复的情况
required: true
- label: 我已检查了[常见问题](https://maa.plus/docs/zh-cn/manual/faq.html)[公告](/MaaAssistantArknights/MaaAssistantArknights/issues/7732)[活跃议题](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues)[已关闭议题](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues?q=is%3Aissue%20state%3Aclosed)确认我的问题未被提及
required: true
required: false
- label: 我使用的是当前更新版本的最新版, 并已查看版本发布至今的 [更新内容](https://github.com/MaaAssistantArknights/MaaAssistantArknights/commits/dev/), [Pull Requests](https://github.com/MaaAssistantArknights/MaaAssistantArknights/pulls) 中尚未发布的更新内容并未提及该 Bug 已被修复的情况
required: false
- label: 我已检查了 [常见问题](https://docs.maa.plus/zh-cn/manual/faq.html), [公告](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues/7732), [活跃议题](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues), [已关闭议题](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues?q=is%3Aissue%20state%3Aclosed) 确认我的问题未被提及
required: false
- type: textarea
id: describe
attributes:
@@ -39,11 +41,9 @@ body:
attributes:
label: 日志和配置文件
description: |
**请在 MAA -> 设置 -> 问题反馈中找到生成日志压缩包按钮,点击并上传压缩包**
**请直接将完整的文件拖拽进来,而非自己裁切或复制的片段;若文件体积过大可压缩后再上传**
如果你在使用 MacBook请点击屏幕左上角的“文件”点击“打开日志文件夹”
**请在 MAA -> 设置 -> 问题反馈中找到生成日志压缩包按钮,点击并上传压缩包**
**若待上传压缩包大于 25MB请转而上传该压缩包同日期文件夹中的若干小压缩包**
若正在使用 macOS请点击屏幕左上角的“文件”点击“打开日志文件夹”
placeholder: |
请确认上传文件前已关闭 MAA
validations:
@@ -53,8 +53,8 @@ body:
attributes:
label: 配置信息
description: |
请说明操作系统及版本、模拟器品牌、模拟器分辨率、DPI、帧率
若正在使用 MuMu 12 或雷电 9请说明截图增强是否开启
请说明操作系统及版本、模拟器品牌、模拟器分辨率、DPI、帧率
若正在使用 MuMu 或雷电 9请说明截图增强是否开启
最后请说明 GPU 加速推理是否开启,若开启请提供 GPU 型号。
validations:
required: true
@@ -63,11 +63,9 @@ body:
attributes:
label: 截图或录屏
description: |
`debug` 目录下按功能分类的文件夹内,有一些自动截图的错误图片,若有相关的,请一并打包上传
可上传屏幕截图或录制以帮助解释你的问题,包括但不限于 MAA 软件截图、游戏画面截图
若是**识别相关问题**,请尽可能提供模拟器自带的截图工具截取的无遮挡的**原图**(或通过 adb 截取原图)
用其他的工具如QQ/微信截取的图片包含窗口边框且长宽比、分辨率不固定不利于我们排除bug
可上传屏幕截图或录制以帮助解释你的问题,包括但不限于 MAA 软件截图、游戏画面截图
若是**识别相关问题**,请尽可能提供模拟器自带的截图工具截取的无遮挡的**原图**(或通过 adb 截取原图)
用其他的工具如QQ/微信截取的图片包含窗口边框且长宽比、分辨率不固定不利于我们排除bug
若文件体积过大可压缩后再上传
validations:
required: false

View File

@@ -5,16 +5,18 @@ body:
- type: checkboxes
id: checks
attributes:
label: 在提问之前...
label: 请确认自己完成了下列必选项之后再进行勾选,若未完成必选项或勾选了"我未仔细阅读"选项将视为自愿接受被直接关闭 Issue
options:
- label: 我填写了简短且清晰明确的标题,以便开发者在翻阅 Issue 列表时能快速确定大致问题。而不是“一个建议”、“卡住了”等
required: true
- label: 我基本确定这是一个新功能/建议,而不是遇到了 Bug不确定的话请附上日志
required: true
- label: 使用的是当前更新版本的最新版,且已查看版本发布至今的 [更新内容](https://github.com/MaaAssistantArknights/MaaAssistantArknights/commits/dev/) 和 [Pull Requests](https://github.com/MaaAssistantArknights/MaaAssistantArknights/pulls) 中尚未发布的更新内容,确认我的建议未被提及
required: true
- label: 已检查了 [公告](/MaaAssistantArknights/MaaAssistantArknights/issues/7732)、[活跃议题](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues)、[已关闭议题](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues?q=is%3Aissue%20state%3Aclosed),确认我的建议未被提及
required: true
required: false
- label: 未仔细阅读这些内容,只是一键已读[所有内容](/MaaAssistantArknights/MaaAssistantArknights/issues),并相信这不会影响问题的处理
required: false
- label: 填写了简短且清晰明确的标题,以便开发者在翻阅 Issue 列表时能快速确定大致问题。而不是“一个建议”、“卡住了”等
required: false
- label: 我使用的是当前更新版本的最新版, 并已查看版本发布至今的 [更新内容](https://github.com/MaaAssistantArknights/MaaAssistantArknights/commits/dev/), [Pull Requests](https://github.com/MaaAssistantArknights/MaaAssistantArknights/pulls) 中尚未发布的更新内容,确认我的建议未被提及
required: false
- label: 我已检查了 [常见问题](https://docs.maa.plus/zh-cn/manual/faq.html), [公告](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues/7732), [活跃议题](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues), [已关闭议题](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues?q=is%3Aissue%20state%3Aclosed) 确认我的建议未被提及
required: false
- type: textarea
id: describe
attributes:

View File

@@ -8,15 +8,17 @@ body:
label: 在提问之前...
options:
- label: 我理解 Issue 是用于反馈和解决问题的,而非吐槽评论区,将尽可能提供更多信息帮助问题解决
required: true
required: false
- label: 我填写了简短且清晰明确的标题,以便开发者在翻阅 Issue 列表时能快速确定大致问题。而不是“一个建议”、“卡住了”等
required: true
required: false
- label: 我已检查了[公告](/MaaAssistantArknights/MaaAssistantArknights/issues/7732)、[活跃议题](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues)、[已关闭议题](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues?q=is%3Aissue%20state%3Aclosed),确认我的问题未被提及
required: true
required: false
- label: 我未仔细阅读这些内容,只是一键已读[所有内容](/MaaAssistantArknights/MaaAssistantArknights/issues),并相信这不会影响问题的处理
required: false
- label: 我正在使用最新的 MAA 公测版本和最新的官版雷电 9 模拟器
required: true
required: false
- label: 我已参考文档确定安装路径、实例编号填写正确,并确认在关闭截图增强模式后问题消失
required: true
required: false
- label: 我未开启高帧率,且模拟器帧数设置为 60
required: false
- type: textarea

View File

@@ -8,16 +8,18 @@ body:
label: 在提问之前...
options:
- label: 我理解 Issue 是用于反馈和解决问题的,而非吐槽评论区,将尽可能提供更多信息帮助问题解决
required: true
required: false
- label: 我填写了简短且清晰明确的标题,以便开发者在翻阅 Issue 列表时能快速确定大致问题。而不是“一个建议”、“卡住了”等
required: true
required: false
- label: 我已检查了[公告](/MaaAssistantArknights/MaaAssistantArknights/issues/7732)、[活跃议题](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues)、[已关闭议题](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues?q=is%3Aissue%20state%3Aclosed),确认我的问题未被提及
required: true
required: false
- label: 我未仔细阅读这些内容,只是一键已读[所有内容](/MaaAssistantArknights/MaaAssistantArknights/issues),并相信这不会影响问题的处理
required: false
- label: 我正在使用最新的 MAA 公测版本和最新的官版或方舟专版 MuMu 模拟器
required: true
required: false
- label: 我已参考文档确定安装路径、实例编号、屏幕编号填写正确,并确认在关闭截图增强模式后问题消失
required: true
- label: 我未开启后台保活,模拟器帧数为 60显存使用策略为“画面表现更好”
required: false
- label: 我未开启动态帧率及后台保活,模拟器帧数为 60显存使用策略为“画面表现更好”
required: false
- type: textarea
id: describe

View File

@@ -1,24 +1,23 @@
name: Bug Report (in English)
description: >-
Recognition errors, operation abnormalities,
connection errors, etc.
description: Recognition errors, operation abnormalities, connection errors, etc.
labels: ["bug"]
body:
- type: checkboxes
id: checks
attributes:
label: Before raising the issue...
description: |
Please ensure that you have completed the requirements before checking the box.
Issues with the checkbox checked but not completed will be directly closed.
label: |
Please ensure that you have completed the required items before checking the boxes.
Issues with incomplete required items or with the 'I did not read carefully' option checked will be considered voluntary acceptance of direct closure.
options:
- label: I understand that Issues are for feedback and problem solving, not trolling the comments section, and will provide as much information as possible to help solve the problem.
required: true
- label: I filled in a short, clear title so that developers could quickly identify the general problem when going through the issue list. Instead of "Some suggestions", "Stuck", etc.
required: true
- label: I am using the latest version of the current update version and have reviewed both the [Unreleased changes](https://github.com/MaaAssistantArknights/MaaAssistantArknights/commits/dev/) and there is no mention of the bug being fixed.
- label: I am using the latest version of the current update version, and have reviewed the [update content](https://github.com/MaaAssistantArknights/MaaAssistantArknights/commits/dev/) released to date, [Pull Requests](https://github.com/MaaAssistantArknights/MaaAssistantArknights/pulls) unreleased update content and there is no mention of the bug being fixed.
required: true
- label: I have reviewed the [FAQs](https://maa.plus/docs/en-us/manual/faq.html), [Announcement](/MaaAssistantArknights/MaaAssistantArknights/issues/7732), [Open Issue](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues), [Closed Issue](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues?q=is%3Aissue%20state%3Aclosed) to ensure that my issue/bug has not been mentioned.
- label: I have checked all the options without carefully reading the content and believe this will not affect issue resolution.
required: false
- label: I have reviewed the [FAQs](https://docs.maa.plus/en-us/manual/faq.html), [Announcement](/MaaAssistantArknights/MaaAssistantArknights/issues/7732), [Open Issues](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues), [Closed Issues](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues?q=is%3Aissue%20state%3Aclosed) to ensure that my issue has not been mentioned.
required: true
- type: textarea
id: describe
@@ -43,12 +42,10 @@ body:
id: logs
attributes:
label: Log and config files
description: >-
**Please locate the Generate Support Payload button under MAA Settings -> Issue Report, click the button, and upload the generated zip file**
**Please drag and drop the full file in, not your own cuttings or copies; compress it before uploading if too large.**
If you are using MacBook, please click the "File" option in the top-left corner of the screen, then click "Open Log Folder".
description: |
**Please locate the Generate Support Payload button under MAA Settings -> Issue Report, click the button, and upload the generated zip file**
**If the archive to upload is larger than 25MB, please upload smaller archives from the same date folder instead.**
If you are using macOS, please click the "File" option in the top-left corner of the screen, then click "Open Log Folder".
placeholder: |
Please confirm that MAA is not running before uploading files.
validations:
@@ -58,8 +55,8 @@ body:
attributes:
label: Configuration information
description: |
Please specify the operating system and version, emulator brand, emulator resolution, DPI, and frame rate;
If you are using MuMu 12 or LDPlayer 9, please specify whether Screenshot Enhancement is enabled;
Please specify the operating system and version, emulator brand, emulator resolution, DPI, and frame rate.
If you are using MuMu or LDPlayer 9, please specify whether Screenshot Enhancement is enabled.
Finally, please specify whether GPU accelerated inference is enabled, and if so, provide the GPU model.
validations:
required: true
@@ -67,31 +64,23 @@ body:
id: screenshots
attributes:
label: Screenshots or recordings
description: >-
In the `debug` directory, within the functionally categorized folders,
there are some error images captured automatically.
If related to this issue, please upload them together.
description: |
If available, upload screenshots and recordings to help explain your problem,
including but not limited to screenshots of MAA software,
screenshots of game screens.
screenshots of game screens.
If the problem is **recognition related**, please help by providing
the **original image** taken by the emulator's own screenshot tool
(or via adb).
(or via adb).
Screenshots taken with other tools may contain the frames of the window/emulator
and their aspect ratio and resolution are inconsistent,
which makes it harder for us to debug.
If the file siz is too large, you may compress it before uploading.
which makes it harder for us to debug.
If the file size is too large, you may compress it before uploading.
validations:
required: false
- type: textarea
id: others
attributes:
label: Anthing else?
label: Anything else?
description: |
Anything that will give us more insight into the problem you are having.
validations:

View File

@@ -5,21 +5,19 @@ body:
- type: checkboxes
id: checks
attributes:
label: Before raising the issue...
label: |
Please ensure that you have completed the required items before checking the boxes.
Issues with incomplete required items or with the 'I did not read carefully' option checked will be considered voluntary acceptance of direct closure.
options:
- label: |
I filled in a short, clear title so that developers could quickly identify the general problem when going through the issue list.
Instead of "Some suggestions", "Stuck", etc.
- label: I'm probably sure this is a new feature/suggestion and not a bug encountered (please attach logs if you're not sure).
required: true
- label: |
I'm probably sure this is a new feature/suggestion and not a bug encountered (please attach logs if you're not sure).
- label: I filled in a short, clear title so that developers could quickly identify the general problem when going through the issue list. Instead of "Some suggestions", "Stuck", etc.
required: true
- label: |
I am using the latest version of the current update version and have reviewed both the [Unreleased changes](https://github.com/MaaAssistantArknights/MaaAssistantArknights/commits/dev/) and the [Pull requests](https://github.com/MaaAssistantArknights/MaaAssistantArknights/pulls),
but there is no mention of this feature/suggestion being added.
- label: I am using the latest version of the current update version, and have reviewed the [update content](https://github.com/MaaAssistantArknights/MaaAssistantArknights/commits/dev/) released to date, [Pull Requests](https://github.com/MaaAssistantArknights/MaaAssistantArknights/pulls) unreleased update content and there is no mention of this feature/suggestion being added.
required: true
- label: |
I have reviewed the [Announcement](/MaaAssistantArknights/MaaAssistantArknights/issues/7732), [Open Issue](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues), [Closed Issue](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues?q=is%3Aissue%20state%3Aclosed) to ensure that my feature/suggestion has not been mentioned.
- label: I have checked all the options without carefully reading the content and believe this will not affect issue resolution.
required: false
- label: I have reviewed the [FAQs](https://docs.maa.plus/en-us/manual/faq.html), [Announcement](/MaaAssistantArknights/MaaAssistantArknights/issues/7732), [Open Issues](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues), [Closed Issues](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues?q=is%3Aissue%20state%3Aclosed) to ensure that my feature/suggestion has not been mentioned.
required: true
- type: textarea
id: describe

View File

@@ -7,8 +7,9 @@ updates:
commit-message:
prefix: ci
assignees:
- constrat
- AnnAngela
- Constrat
- lucienshawls
groups:
github-actions:
patterns:

View File

@@ -252,7 +252,7 @@ labels:
# `module: fight`
- name: fight
content: "module: fight"
regexes: "刷图|理智|剿灭|刷.{0,6}材料|关卡选择|战斗|作战|[戰戦][鬥闘]|[Ff]ight|[Bb]attle|[Aa]nihilation"
regexes: "刷图|理智|剿灭|刷.{0,6}材料|关卡选择|战斗|作战|[戰戦][鬥闘]|[Ff]ight|[Bb]attle|[Aa]nihilation"
skip-if:
- skip all
- skip module
@@ -335,7 +335,7 @@ labels:
# `MacGui`
- name: MacGui
content: "client: MacGui"
regexes: '/mac(?:book|os|\s*(?:操作系统|系统|电脑|版))|playcover/i'
regexes: '(?:[Mm][Aa][Cc](?:[Bb][Oo][Oo][Kk]|[Oo][Ss]|\s*(?:操作系统|系统|电脑|版|[Gg][Uu][Ii]))|[Pp][Ll][Aa][Yy][Cc][Oo][Vv][Ee][Rr]|[Mm][Aa][Cc]\s+[Gg][Uu][Ii])'
skip-if:
- skip all
- skip client
@@ -552,7 +552,7 @@ comments:
Your log did not upload successfully, please re-upload it."
mode: add
- name: Upload failed
regexes: "^[^`]*(`[^`]+`[^`]*)*\\[Uploading[^\\]]*…\\]\\(\\)"
regexes: "^[^`]*(`[^`]+`[^`]*)*(\\[Uploading[^\\]]*…\\]\\(\\)|<!-- Failed to upload|<!-- Uploading)"
content: "你有一些文件没有上传成功,请重新上传。\n\n\
You have some files that did not upload successfully, please re-upload them."
mode: add

46
.github/pr_cache_remover.ps1 vendored Normal file
View File

@@ -0,0 +1,46 @@
$totalClearedSize = 0
$cacheList = gh cache list --json id,ref,sizeInBytes | ConvertFrom-Json
$branchSet = @{}
git ls-remote --heads origin | ForEach-Object {
if ($_ -match 'refs/heads/(.+)$') { $branchSet[$matches[1]] = $true }
}
foreach ($cache in $cacheList) {
$shouldDelete = $false
if ($cache.ref -match "refs/pull/(\d+)/merge") {
$prNumber = $matches[1]
Write-Host "PR #${prNumber}: " -NoNewline
try {
$prStatus = (gh pr view $prNumber --json state | ConvertFrom-Json).state
Write-Host "$prStatus" -NoNewline
$shouldDelete = $prStatus -in @("MERGED", "CLOSED")
}
catch {
Write-Host "NOT FOUND" -NoNewline
$shouldDelete = $true
}
}
elseif ($cache.ref -match "refs/heads/(.+)" -and $matches[1] -ne "dev") {
$branchName = $matches[1]
$exists = $branchSet.ContainsKey($branchName)
Write-Host "Branch '$branchName': $(if ($exists) { 'EXISTS' } else { 'DELETED' })" -NoNewline
$shouldDelete = -not $exists
}
else {
continue
}
if ($shouldDelete) {
Write-Host " -> DELETING"
gh cache delete $cache.id
$totalClearedSize += $cache.sizeInBytes
}
else {
Write-Host ""
}
}
Write-Output "Cleared size: $("{0:N2}" -f ($totalClearedSize / 1MB)) MB"

76
.github/stale_cache_cleanup.ps1 vendored Normal file
View File

@@ -0,0 +1,76 @@
$totalClearedSize = 0
$cacheList = gh cache list --json id,key,ref,sizeInBytes,createdAt | ConvertFrom-Json
# List of keys to process
$keyPatterns = @(
"Windows-x64-nuget",
"Windows-x64-maadeps",
"Windows-arm64-nuget",
"Windows-arm64-maadeps",
"macOS-x64-maadeps",
"macOS-arm64-maadeps",
"Linux-x64-maadeps",
"Linux-arm64-maadeps",
"Smoke-testing",
"prek-v1|Linux|X64"
)
# Filter caches matching any of our key patterns
$matchingCaches = $cacheList | Where-Object {
$cache = $_
($keyPatterns | Where-Object { $cache.key -like "*$_*" }).Count -gt 0
}
# Get unique branch references from the matching caches
$branches = $matchingCaches | Select-Object -Property ref -Unique | ForEach-Object { $_.ref }
Write-Output "Found caches across $($branches.Count) branches"
foreach ($branch in $branches) {
# Extract branch name from ref for display
$branchName = $branch -replace "refs/heads/", ""
if ($branch -match "refs/pull/(\d+)/merge") {
$branchName = "PR #$($matches[1])"
}
Write-Output "Processing caches for branch: $branchName"
# Filter for current branch caches
$branchCaches = $matchingCaches | Where-Object { $_.ref -eq $branch }
foreach ($pattern in $keyPatterns) {
Write-Output " Processing $branchName branch caches for pattern: $pattern"
# Filter for caches matching the current key pattern within branch
$patternCaches = $branchCaches | Where-Object { $_.key -like "*$pattern*" }
if (-not $patternCaches) {
Write-Output " No $branchName branch caches found for pattern: $pattern"
continue
}
# Sort by creation time (newest first)
$sortedCaches = $patternCaches | Sort-Object -Property createdAt -Descending
# Keep the first one (latest) and delete the rest
$latestCache = $sortedCaches[0]
Write-Output " Keeping latest cache for $branchName/${pattern}: '$($latestCache.key)' (ID: $($latestCache.id))"
# Delete all except the latest one
for ($i = 1; $i -lt $sortedCaches.Count; $i++) {
$cache = $sortedCaches[$i]
$cacheId = $cache.id
$cacheKey = $cache.key
Write-Output " Deleting cache for $branchName/${pattern}: '$cacheKey' (ID: $cacheId)"
gh cache delete $cacheId
$totalClearedSize += $cache.sizeInBytes
}
}
Write-Output ""
}
$formattedSize = "{0:N2}" -f ($totalClearedSize / 1MB)
Write-Output "Total cleared size: $formattedSize MB"

60
.github/stale_cache_dev.ps1 vendored Normal file
View File

@@ -0,0 +1,60 @@
$totalClearedSize = 0
$cacheList = gh cache list --json id,key,ref,sizeInBytes,createdAt | ConvertFrom-Json
# Filter for dev branch caches only
$devCaches = $cacheList | Where-Object { $_.ref -eq "refs/heads/dev" }
if (-not $devCaches) {
Write-Output "No caches found for dev branch."
exit
}
# List of keys to process
$keyPatterns = @(
"Windows-x64-nuget",
"Windows-x64-maadeps",
"Windows-arm64-nuget",
"Windows-arm64-maadeps",
"macOS-x64-maadeps",
"macOS-arm64-maadeps",
"Linux-x64-maadeps",
"Linux-arm64-maadeps",
"Smoke-testing",
"prek-v1|Linux|X64"
)
foreach ($pattern in $keyPatterns) {
Write-Output "Processing dev branch caches for pattern: $pattern"
# Filter for caches matching the current key pattern within dev branch
$matchingCaches = $devCaches | Where-Object { $_.key -like "*$pattern*" }
if (-not $matchingCaches) {
Write-Output " No dev branch caches found for pattern: $pattern"
continue
}
# Sort by creation time (newest first)
$sortedCaches = $matchingCaches | Sort-Object -Property createdAt -Descending
# Keep the first one (latest) and delete the rest
$latestCache = $sortedCaches[0]
Write-Output " Keeping latest dev branch cache: '$($latestCache.key)' (ID: $($latestCache.id))"
# Delete all except the latest one
for ($i = 1; $i -lt $sortedCaches.Count; $i++) {
$cache = $sortedCaches[$i]
$cacheId = $cache.id
$cacheKey = $cache.key
Write-Output " Deleting dev branch cache: '$cacheKey' (ID: $cacheId)"
gh cache delete $cacheId
$totalClearedSize += $cache.sizeInBytes
}
Write-Output ""
}
$formattedSize = "{0:N2}" -f ($totalClearedSize / 1MB)
Write-Output "Total cleared size: $formattedSize MB"

View File

@@ -1,38 +0,0 @@
$totalClearedSize = 0
$cacheList = gh cache list --json id,ref,sizeInBytes | ConvertFrom-Json
$prCaches = $cacheList | Where-Object { $_.ref -like "*merge*" }
if (-not $prCaches) {
Write-Output "No PR caches found."
exit
}
foreach ($cache in $prCaches) {
$cacheId = $cache.id
$cacheRef = $cache.ref
$cacheSizeInBytes = $cache.sizeInBytes
if ($cacheRef -match "refs/pull/(\d+)/merge") {
$prNumber = $matches[1]
Write-Host "PR #${prNumber}: " -NoNewline
$prStatus = gh pr view $prNumber --json state | ConvertFrom-Json
Write-Host $prStatus.state -NoNewline
if ($prStatus.state -eq "MERGED" -or $prStatus.state -eq "CLOSED") {
Write-Host " -> DELETING"
gh cache delete $cacheId
$totalClearedSize += $cacheSizeInBytes
}
else {
Write-Host ""
}
}
}
$formattedSize = "{0:N2}" -f ($totalClearedSize / 1MB)
Write-Output "Cleared size: $formattedSize MB"

View File

@@ -1,4 +1,4 @@
name: Git Blame Ignore
name: Blame Ignore Update
on:
schedule:
@@ -7,18 +7,20 @@ on:
jobs:
blame-ignore:
name: Update Git Blame Ignore Revs
if: github.repository_owner == 'MaaAssistantArknights'
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
fetch-depth: 0
persist-credentials: false # Needed to bypass protection rules in Push changes
- name: Check blame
id: check_changes
continue-on-error: true
run: |
LAST_CHECKED_COMMIT=$(cat .github/.last-blame-ignore-commit 2>/dev/null || git rev-list --max-parents=0 HEAD)
@@ -26,7 +28,7 @@ jobs:
git diff --quiet .git-blame-ignore-revs
- name: Commit and Push changes
- name: Commit changes
if: ${{ steps.check_changes.outcome == 'failure' }}
run: |
git config user.name "github-actions[bot]"

View File

@@ -1,4 +1,4 @@
name: Delete Cache
name: Cache Cleanup
on:
pull_request:
@@ -11,13 +11,14 @@ on:
jobs:
cache-delete:
name: Delete PR Cache
# Run only on organization branches with PRs
if: github.event_name == 'workflow_dispatch' ||
github.event.pull_request.head.repo.full_name ==
github.event.pull_request.base.repo.full_name
runs-on: ubuntu-latest
steps:
- name: Delete cache on PR merged
- name: Delete PR cache
run: |
if [ "${{ github.event_name }}" == "workflow_dispatch" ]; then
PR_NUMBER=${{ github.event.inputs.pr_number }}

View File

@@ -1,85 +1,80 @@
name: ci
name: Release Pipeline
on:
push:
tags:
- "v*"
branches-ignore:
- "master"
paths:
- "3rdparty/include/**"
- "include/**"
- "src/**"
- "cmake/**"
- "CMakeLists.txt"
- "MAA.sln"
- ".github/workflows/ci.yml"
- "!**/*.md"
pull_request:
branches:
- "dev"
paths:
- ".github/workflows/ci.yml"
- "3rdparty/include/**"
- "include/**"
- "src/**"
- "cmake/**"
- "CMakeLists.txt"
- "MAA.sln"
- "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"
- "!**/*.md"
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
group: ${{ github.workflow }}-${{ github.event.pull_request.head.repo.full_name || github.repository }}-${{ github.head_ref || github.ref_name }}${{ github.ref == 'refs/heads/dev' && format('-{0}', github.sha) || '' }}
cancel-in-progress: true
jobs:
meta:
# Prevent duplicate runs on organization branches with PRs
if: github.event_name != 'pull_request' ||
github.event.pull_request.head.repo.full_name !=
github.event.pull_request.base.repo.full_name
name: Gather Meta Information
runs-on: ubuntu-latest
outputs:
tag: ${{ steps.set_tag.outputs.tag }}
prerelease: ${{ steps.set_pre.outputs.prerelease }}
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
path: temp
show-progress: false
- name: Fetch history
if: ${{ !startsWith(github.ref, 'refs/pull/') }}
- name: Show concurrency group
run: |
git init
cp $GITHUB_WORKSPACE/temp/.git/config ./.git
rm -rf $GITHUB_WORKSPACE/temp
# git config remote.origin.fetch '+refs/*:refs/*'
git fetch --filter=tree:0 # --update-head-ok
git reset --hard origin/$(git branch --show-current) || true
git checkout ${{ github.ref_name }}
echo "Concurrency Group: ${{ github.workflow }}-${{ github.event.pull_request.head.repo.full_name || github.repository }}-${{ github.head_ref || github.ref_name }}${{ github.ref == 'refs/heads/dev' && format('-{0}', github.sha) || '' }}"
- name: Checkout repository
uses: actions/checkout@v6
with:
fetch-depth: 0
show-progress: false
- name: Set tag
id: set_tag
run: |
${{ startsWith(github.ref, 'refs/pull/') && 'cd temp' || '' }}
echo tag=$(git describe --tags --match "v*" ${{ github.ref }} || git rev-parse --short HEAD) | tee -a $GITHUB_OUTPUT
exit ${PIPESTATUS[0]}
if [[ "${{ github.ref }}" == refs/tags/v* ]]; then
# For tag pushes, use the tag name
tag="${{ github.ref_name }}"
else
# For PRs and branch pushes, use git describe or fallback
tag=$(git describe --tags --match "v*" HEAD 2>/dev/null || echo "v0.0.1-$(git rev-parse --short HEAD)")
fi
echo "tag=${tag}" | tee -a $GITHUB_OUTPUT
- name: Judge pre-release
- name: Check if it is a pre-release
id: set_pre
if: ${{ startsWith(github.ref, 'refs/tags/v') }}
if: startsWith(github.ref, 'refs/tags/v')
run: |
if [[ '${{ steps.set_tag.outputs.tag }}' =~ ^v[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo prerelease=false | tee -a $GITHUB_OUTPUT
echo "prerelease=false" | tee -a $GITHUB_OUTPUT
else
echo prerelease=true | tee -a $GITHUB_OUTPUT
echo "prerelease=true" | tee -a $GITHUB_OUTPUT
fi
- name: Generate changelog
if: ${{ startsWith(github.ref, 'refs/tags/v') }}
- name: Finalize changelog
if: startsWith(github.ref, 'refs/tags/v')
run: |
this_tag=${{ steps.set_tag.outputs.tag }}
if [[ '${{ steps.set_pre.outputs.prerelease }}' != 'false' ]]; then
@@ -90,82 +85,87 @@ jobs:
echo >> CHANGELOG.md
echo "**Full Changelog**: [$last_tag -> $this_tag](https://github.com/MaaAssistantArknights/MaaAssistantArknights/compare/${last_tag}...${this_tag})" >> CHANGELOG.md
echo >> CHANGELOG.md
echo "[已有 Mirror酱 CDK前往 Mirror酱 高速下载](https://mirrorchyan.com/zh/projects?rid=MAA)" >> CHANGELOG.md
echo "[已有 Mirror酱 CDK前往 Mirror酱 高速下载](https://mirrorchyan.com/zh/projects?rid=MAA&source=maagh-release)" >> CHANGELOG.md
- name: Upload changelog to Github
uses: actions/upload-artifact@v4
if: ${{ startsWith(github.ref, 'refs/tags/v') }}
- name: Upload changelog to GitHub
uses: actions/upload-artifact@v6
if: startsWith(github.ref, 'refs/tags/v')
with:
name: changelog
path: CHANGELOG.md
windows:
# Prevent duplicate runs on organization branches with PRs
if: github.event_name != 'pull_request' ||
github.event.pull_request.head.repo.full_name !=
github.event.pull_request.base.repo.full_name
name: Build for Windows
needs: meta
strategy:
matrix:
include:
- msbuild_target: x64
lowercase_target: x64
- msbuild_target: ARM64
lowercase_target: arm64
env:
MAABUILDER_TARGET_PLATFORM: ${{ matrix.msbuild_target }}
arch: [arm64, x64]
fail-fast: false
runs-on: windows-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Checkout repository
uses: actions/checkout@v6
with:
show-progress: false
- name: Fetch submodules
run: |
git submodule update --init --depth 1 src/MaaUtils
git submodule update --init --depth 1 3rdparty/EmulatorExtras
- name: Cache .nuke/temp, ~/.nuget/packages
id: cache-nuget
uses: actions/cache@v4
with:
path: |
.nuke/temp
~/.nuget/packages
key: ${{ runner.os }}-${{ matrix.msbuild_target }}-${{ hashFiles('**/global.json', '**/*.csproj') }}
- name: Restore dependencies
if: steps.cache-nuget.outputs.cache-hit != 'true'
run: dotnet restore
- name: Cache MaaDeps
id: cache-maadeps
uses: actions/cache@v4
uses: actions/cache@v5
continue-on-error: true
with:
path: |
./MaaDeps
key: ${{ runner.os }}-${{ matrix.lowercase_target }}-maadeps-${{ hashFiles('./maadeps-download.py') }}
./src/MaaUtils/MaaDeps
key: ${{ runner.os }}-${{ matrix.arch }}-maadeps-${{ hashFiles('tools/maadeps-download.py') }}
- name: Bootstrap MaaDeps
if: steps.cache-maadeps.outputs.cache-hit != 'true'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
python3 maadeps-download.py ${{ matrix.lowercase_target }}-windows
python3 tools/maadeps-download.py ${{ matrix.arch }}-windows
- name: Create fake event file
shell: bash
run: cp -v "$GITHUB_EVENT_PATH" ./event.json
- name: Merge Event Data with Inputs
if: startsWith(github.ref, 'refs/tags/v')
shell: bash
- name: Configure, build and install
run: |
cat "$GITHUB_EVENT_PATH" | jq '. + { "inputs": {"ReleaseSimulation": "${{ needs.meta.outputs.tag }}"} }' | tee ./event.json
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: Taggify Version
- 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: Copy MaaWin32ControlUnit
if: matrix.arch == 'x64'
run: |
cp MaaFramework-temp/bin/*Win32ControlUnit* install/
- name: Cache .nuke/temp, ~/.nuget/packages
id: cache-nuget
uses: actions/cache@v5
continue-on-error: true
with:
path: |
.nuke/temp
~/.nuget/packages
key: ${{ runner.os }}-${{ matrix.arch }}-nuget-${{ hashFiles('**/*.csproj') }}
- name: Restore dependencies
if: steps.cache-nuget.outputs.cache-hit != 'true'
run: dotnet restore src/MaaWpfGui/MaaWpfGui.csproj
- name: Taggify version for csproj
run: |
$csprojPath = "src/MaaWpfGui/MaaWpfGui.csproj"
$csprojPath = Resolve-Path -Path $csprojPath
@@ -182,101 +182,99 @@ jobs:
$node.FileVersion = $match
$node.AssemblyVersion = $match
$csproj.Save($csprojPath)
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Build
- name: Publish WPF GUI
continue-on-error: true
run: |
$env:GITHUB_WORKFLOW = 'dev-build-win' # pretend this is a dev-build-win workflow
$env:GITHUB_EVENT_PATH = "$pwd\\event.json"
$env:GITHUB_REF = "refs/heads/not_master"
$env:MAA_BUILDER_MAA_VERSION = '${{ needs.meta.outputs.tag }}'
./build.cmd DevBuild
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
dotnet publish src/MaaWpfGui/MaaWpfGui.csproj -c Release -p:Platform=${{ matrix.arch == 'arm64' && 'ARM64' || 'x64' }} -o install
- name: Cleanup checksum file
- name: Collect PDB files
run: |
rm -vf ./artifacts/checksum.json
shell: bash
cp build/bin/RelWithDebInfo/*.pdb install/
Compress-Archive -Path install/*.pdb -DestinationPath install/MAAComponent-DebugSymbol-${{ needs.meta.outputs.tag }}-win-${{ matrix.arch }}.zip
continue-on-error: true
- name: Upload MAA to Github
uses: actions/upload-artifact@v4
- name: Upload PDB files
uses: actions/upload-artifact@v6
with:
name: MAA-win-${{ matrix.lowercase_target }}
path: artifacts
name: MAAComponent-DebugSymbol-win-${{ matrix.arch }}
path: install/MAAComponent-DebugSymbol-${{ needs.meta.outputs.tag }}-win-${{ matrix.arch }}.zip
- name: Organize install files
shell: bash
run: |
rm -rf install/MAAComponent-DebugSymbol-*.zip
rm -rf install/*.pdb
rm -rf install/msvc-debug
rm -rf install/*.h
cp tools/DependencySetup_依赖库安装.bat install
- name: Zip files
run: |
cd install
Compress-Archive -Destination MAA-${{ needs.meta.outputs.tag }}-win-${{ matrix.arch }}.zip -Path ./*
- name: Upload MAA to GitHub
uses: actions/upload-artifact@v6
with:
name: MAA-win-${{ matrix.arch }}
path: install/MAA-*.zip
ubuntu:
# Prevent duplicate runs on organization branches with PRs
if: github.event_name != 'pull_request' ||
github.event.pull_request.head.repo.full_name !=
github.event.pull_request.base.repo.full_name
name: Build for Ubuntu
needs: meta
runs-on: ubuntu-22.04
runs-on: ubuntu-latest
strategy:
matrix:
arch: [aarch64, x86_64]
permissions:
actions: write
fail-fast: false
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Checkout repository
uses: actions/checkout@v6
with:
show-progress: false
- name: Fetch submodules
run: |
git submodule update --init --depth 1 src/MaaUtils
git submodule update --init --depth 1 3rdparty/EmulatorExtras
git submodule update --init --depth 1 src/maa-cli
- name: Install cross compile toolchains
if: ${{ matrix.arch != 'x86_64' }}
run: |
sudo apt-get update
sudo apt-get install g++-12-aarch64-linux-gnu g++-12-aarch64-linux-gnu
- name: Cache MaaDeps
id: cache-maadeps
uses: actions/cache@v5
continue-on-error: true
with:
path: ./src/MaaUtils/MaaDeps
key: ${{ runner.os }}-${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-maadeps-${{ hashFiles('tools/maadeps-download.py') }}
# Caching not necessary on ubuntu runner
- name: Bootstrap MaaDeps
if: steps.cache-maadeps.outputs.cache-hit != 'true'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
python3 maadeps-download.py ${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-linux
python3 tools/maadeps-download.py ${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-linux
- name: Build MAA
- name: Configure, build and install
run: |
mkdir -p build
cmake -B build \
-DCMAKE_COMPILE_WARNING_AS_ERROR=ON \
-DMAADEPS_TRIPLET='maa-${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-linux' \
-DINSTALL_THIRD_LIBS=ON \
-DINSTALL_RESOURCE=ON \
-DINSTALL_PYTHON=ON \
-DMAA_VERSION='${{ needs.meta.outputs.tag }}'
cmake --build build --parallel $(nproc --all)
mkdir -p install
cmake --install build --prefix install
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:
CC: ${{ matrix.arch == 'x86_64' && 'gcc-12' || 'aarch64-linux-gnu-gcc-12' }}
CXX: ${{ matrix.arch == 'x86_64' && 'g++-12' || 'aarch64-linux-gnu-g++-12' }}
CMAKE_COLOR_DIAGNOSTICS: ON
CLICOLOR_FORCE: 1
CXXFLAGS: | # workaround for gcc bugs
-Wno-error=restrict -Wno-error=array-bounds -Wno-error=stringop-overread -Wno-error=missing-field-initializers
- name: Setup Cross Compile Toolchains for CLI
- name: Setup cross compile toolchains for CLI
uses: ./src/maa-cli/.github/actions/setup
with:
os: ubuntu-latest
target_arch: ${{ matrix.arch }}
- name: Build CLI
run: |
cargo build --release --locked --package maa-cli --features vendored-openssl
cargo build --release --locked --package maa-cli --features git2/vendored-openssl
cp -v target/$CARGO_BUILD_TARGET/release/maa $GITHUB_WORKSPACE/install/maa
cargo build --release --locked --package maa-cli --no-default-features \
--features git2,vendored-openssl
--features git2,git2/vendored-openssl
cp -v target/$CARGO_BUILD_TARGET/release/maa $GITHUB_WORKSPACE/appimage-maa
working-directory: src/maa-cli
@@ -308,7 +306,7 @@ jobs:
ln -sv usr/share/maa/maa Maa.AppDir/AppRun
mkdir -pv Maa.AppDir/usr/share/metainfo/
cp -v tools/AppImage/io.github.maaassistantarknights.maaassistantarknights.metainfo.xml Maa.AppDir/usr/share/metainfo/
wget "https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage"
wget "https://github.com/AppImage/appimagetool/releases/download/continuous/appimagetool-x86_64.AppImage"
# appimagetool with embedded runtime does not support cross build, till AppImage/appimagetool 7a10b8
wget "https://github.com/AppImage/type2-runtime/releases/download/old/runtime-fuse3-${{ matrix.arch }}"
chmod a+x appimagetool-x86_64.AppImage
@@ -322,8 +320,8 @@ jobs:
cd install
tar czvf $GITHUB_WORKSPACE/release/MAA-${{ needs.meta.outputs.tag }}-linux-${{ matrix.arch }}.tar.gz .
- name: Upload MAA to Github
uses: actions/upload-artifact@v4
- name: Upload MAA to GitHub
uses: actions/upload-artifact@v6
with:
name: MAA-linux-${{ matrix.arch }}
path: |
@@ -331,64 +329,65 @@ jobs:
release/*.tar.gz
macOS-Core:
# Prevent duplicate runs on organization branches with PRs
if: github.event_name != 'pull_request' ||
github.event.pull_request.head.repo.full_name !=
github.event.pull_request.base.repo.full_name
name: Build Core for macOS
needs: meta
runs-on: macos-14
runs-on: macos-26
strategy:
matrix:
arch: [arm64, x86_64]
fail-fast: false
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Checkout repository
uses: actions/checkout@v6
with:
show-progress: false
- name: Install Dependencies
- name: Fetch submodules
run: |
brew install ninja
git submodule update --init --depth 1 src/MaaUtils
# ninja 1.13.1 is already installed and up-to-date.
# - name: Install dependencies
# run: |
# brew install ninja
- name: Cache MaaDeps
id: cache-maadeps
uses: actions/cache@v5
continue-on-error: true
with:
path: ./src/MaaUtils/MaaDeps
key: ${{ runner.os }}-${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-maadeps-${{ hashFiles('tools/maadeps-download.py') }}
# Caching not necessary on macOS runner
- name: Bootstrap MaaDeps
run: |
[[ ${{ matrix.arch }} = "arm64" ]] && triplet="arm64-osx" || triplet="x64-osx"
python3 maadeps-download.py ${triplet}
python3 tools/maadeps-download.py ${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-osx
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Configure MaaCore
- name: Configure, build and install
run: |
cmake -B build -GNinja -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES='${{ matrix.arch }}' -DMAA_VERSION='${{ needs.meta.outputs.tag }}'
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: Build MaaCore
run: |
cmake --build build
cmake --install build --prefix install
- name: Upload MAA to Github
uses: actions/upload-artifact@v4
- name: Upload MAA to GitHub
uses: actions/upload-artifact@v6
with:
name: MAACore-macos-${{ matrix.arch }}
path: "install/*.dylib"
macOS-GUI:
# Prevent duplicate runs on organization branches with PRs
if: github.event_name != 'pull_request' ||
github.event.pull_request.head.repo.full_name !=
github.event.pull_request.base.repo.full_name
name: Build GUI for macOS
needs: [meta, macOS-Core]
runs-on: macos-14
runs-on: macos-26
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Checkout repository
uses: actions/checkout@v6
with:
show-progress: false
- name: Install Dependencies
- name: Install dependencies
if: startsWith(github.ref, 'refs/tags/v')
run: |
brew install graphicsmagick imagemagick
@@ -398,47 +397,47 @@ jobs:
run: |
git submodule update --init --depth 1 src/MaaMacGui
- name: Download Arm64 MAA from Github
uses: actions/download-artifact@v4
- name: Download MAA (arm64) from GitHub
uses: actions/download-artifact@v7
with:
name: MAACore-macos-arm64
path: install-arm64
- name: Download x64 MAA from Github
uses: actions/download-artifact@v4
- name: Download MAA (x64) from GitHub
uses: actions/download-artifact@v7
with:
name: MAACore-macos-x86_64
path: install-x86_64
- name: Install Developer ID Certificate
- name: Install Developer ID certificate
if: startsWith(github.ref, 'refs/tags/v')
uses: apple-actions/import-codesign-certs@v5
uses: apple-actions/import-codesign-certs@v6
with:
p12-file-base64: ${{ secrets.HGUANDL_SIGN_CERT_P12 }}
p12-password: ${{ secrets.HGUANDL_SIGN_CERT_PASSWD }}
- name: Download Provisioning Profiles
- name: Download provisioning profiles
if: startsWith(github.ref, 'refs/tags/v')
uses: apple-actions/download-provisioning-profiles@v4
uses: apple-actions/download-provisioning-profiles@v5
with:
bundle-id: "com.hguandl.MeoAsstMac"
issuer-id: ${{ secrets.HGUANDL_APPSTORE_ISSUER }}
api-key-id: ${{ secrets.HGUANDL_APPSTORE_KEYID }}
api-private-key: ${{ secrets.HGUANDL_APPSTORE_KEY }}
- name: Setup Xcode Toolchain
if: true
- name: Setup Xcode toolchain
if: false
run: |
sudo xcode-select -s /Applications/Xcode_16.1.app/Contents/Developer
- name: Build Universal Binaries
- name: Build universal binaries
run: |
mkdir build
for LIB_NAME in $(ls install-arm64); do
lipo -create install-arm64/$LIB_NAME install-x86_64/$LIB_NAME -output build/$LIB_NAME
done
- name: Archive Runtime Files
- name: Archive runtime files
run: |
mkdir runtime && cd runtime
name='MAA-${{ needs.meta.outputs.tag }}-macos-runtime-universal'
@@ -450,8 +449,8 @@ jobs:
cd .. || exit 1
zip -yrX9 "$name.zip" "$name"
- name: Upload MAA runtime to Github
uses: actions/upload-artifact@v4
- name: Upload MAA runtime to GitHub
uses: actions/upload-artifact@v6
with:
name: MAA-macos-runtime-universal
path: runtime/MAA-${{ needs.meta.outputs.tag }}-macos-runtime-universal.zip
@@ -459,12 +458,13 @@ jobs:
- name: Build XCFramework
run: |
xcodebuild -create-xcframework -library libMaaCore.dylib -headers ../include -output MaaCore.xcframework
xcodebuild -create-xcframework -library libMaaUtils.dylib -output MaaUtils.xcframework
xcodebuild -create-xcframework -library libfastdeploy_ppocr.dylib -output fastdeploy_ppocr.xcframework
xcodebuild -create-xcframework -library libonnxruntime.*.dylib -output ONNXRuntime.xcframework
xcodebuild -create-xcframework -library libopencv*.dylib -output OpenCV.xcframework
working-directory: build
- name: Setup GUI Version
- name: Setup GUI version
run: |
RELEASE_COUNT=$(git ls-remote --tags origin | grep refs/tags/v | awk 'END{print NR}')
echo 'MARKETING_VERSION = ${{ needs.meta.outputs.tag }}' | tee src/MaaMacGui/Version.xcconfig
@@ -485,20 +485,20 @@ jobs:
xcodebuild -exportArchive -archivePath MAA.xcarchive -exportOptionsPlist ExportOptions.plist -exportPath Export
working-directory: src/MaaMacGui
- name: Create Disk Image
- name: Create disk image
if: startsWith(github.ref, 'refs/tags/v')
run: |
create-dmg Export/MAA.app
mv MAA*.dmg MAA.dmg
working-directory: src/MaaMacGui
- name: Archive Debug Symbols
- name: Archive debug symbols
if: startsWith(github.ref, 'refs/tags/v')
run: |
ditto -c -k --keepParent MAA.app.dSYM MAA.app.dSYM.zip
working-directory: src/MaaMacGui/MAA.xcarchive/dSYMs
- name: Place Packages
- name: Place packages
if: startsWith(github.ref, 'refs/tags/v')
run: |
GIT_TAG=${{ needs.meta.outputs.tag }}
@@ -508,7 +508,7 @@ jobs:
mv src/MaaMacGui/MAA.dmg release/${APP_DMG}
mv src/MaaMacGui/MAA.xcarchive/dSYMs/MAA.app.dSYM.zip release/${APP_SYM}
- name: Notarize Image
- name: Notarize image
if: startsWith(github.ref, 'refs/tags/v')
uses: nick-fields/retry@v3
with:
@@ -524,34 +524,31 @@ jobs:
APPSTORE_KEY: ${{ secrets.HGUANDL_APPSTORE_KEY }}
ISSUER_ID: ${{ secrets.HGUANDL_APPSTORE_ISSUER }}
- name: Attach Notarization Tickets
- name: Attach notarization tickets
if: startsWith(github.ref, 'refs/tags/v')
run: |
dmg="MAA-${{ needs.meta.outputs.tag }}-macos-universal.dmg"
xcrun stapler staple ${dmg}
working-directory: release
- name: Upload MAA to Github
uses: actions/upload-artifact@v4
- name: Upload MAA to GitHub
uses: actions/upload-artifact@v6
with:
name: MAA-macos-universal
path: ${{ startsWith(github.ref, 'refs/tags/v') && 'release/MAA*' || 'src/MaaMacGui/MAA.xcarchive/**' }}
release:
# Prevent duplicate runs on organization branches with PRs
if: (github.event_name != 'pull_request' ||
github.event.pull_request.head.repo.full_name !=
github.event.pull_request.base.repo.full_name) && startsWith(github.ref, 'refs/tags/v')
name: Publish Release
if: startsWith(github.ref, 'refs/tags/v')
needs: [meta, windows, ubuntu, macOS-Core, macOS-GUI]
runs-on: ubuntu-latest
steps:
- name: Download MAA from Github
uses: actions/download-artifact@v4
- name: Download MAA from GitHub
uses: actions/download-artifact@v7
with:
path: assets
- name: Cleanup files
- name: Clean up files
run: |
mv -vf assets/changelog/* .
rm -rf assets/MAACore-macos-*
@@ -559,23 +556,35 @@ jobs:
# find . -type f | xargs mv -fvt .
find . -type f | while read f; do mv -fvt . $f; done
- name: Release to Github
uses: softprops/action-gh-release@v2
- name: Publish release to GitHub
uses: softprops/action-gh-release@v2.5.0
with:
body_path: CHANGELOG.md
files: |
assets/*
prerelease: ${{ needs.meta.outputs.prerelease != 'false' }}
- name: Trigger MirrorChyan
- name: Trigger release distribution workflows
run: |
gh workflow run --repo $GITHUB_REPOSITORY mirrorchyan
gh workflow run --repo $GITHUB_REPOSITORY mirrorchyan_release_note
gh workflow run --repo $GITHUB_REPOSITORY release-package-distribution.yml \
-f release_tag="${{ needs.meta.outputs.tag }}" \
-f mirrorchyan=true \
-f winget=${{ needs.meta.outputs.prerelease == 'false' }}
gh workflow run --repo $GITHUB_REPOSITORY mirrorchyan_release_note.yml
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Trigger secondary workflows # ref: https://docs.github.com/en/actions/using-workflows/triggering-a-workflow#triggering-a-workflow-from-a-workflow
- name: Trigger OTA release workflow # ref: https://docs.github.com/en/actions/using-workflows/triggering-a-workflow#triggering-a-workflow-from-a-workflow
run: |
gh workflow run --repo $GITHUB_REPOSITORY release-ota
gh workflow run --repo $GITHUB_REPOSITORY release-ota.yml
env:
GH_TOKEN: ${{ secrets.MISTEOWORKFLOW }}
- name: Create issue on failure
if: failure()
uses: actions-cool/issues-helper@v3
with:
actions: "create-issue"
title: "Errors occured during release ${{ needs.meta.outputs.tag }}"
body: |
${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}

View File

@@ -1,99 +0,0 @@
name: gen-changelog
on:
pull_request:
types:
- opened
- reopened
- ready_for_review
workflow_dispatch:
jobs:
gen:
# startsWith 表达式不区分大小写
if: github.event.pull_request.draft == false && startsWith(github.event.pull_request.title, 'Release v')
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0
show-progress: false
- name: Extract tag name
id: extract_tag
env:
PR_BODY: ${{ format('{0}/{1}', runner.temp, 'output' ) }}
run: |
tag_name=$(echo "${{ github.event.pull_request.title }}" | sed -E 's/(Release|release)//' | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')
echo "tag_name=$tag_name" >> $GITHUB_OUTPUT
pr_title="docs: Auto Update Changelogs of "$tag_name
echo "pr_title=$pr_title" >> $GITHUB_OUTPUT
latest_stable_tag=$(git tag -l 'v*' | grep -v '-' | sort -V | tail -n 1) # 上一个 stable 版本
newest_tag=$(git describe --tags --match "v*" --abbrev=0) # 最新版本
echo "latest_stable_tag=$latest_stable_tag" >> $GITHUB_OUTPUT
echo "newest_tag=$newest_tag" >> $GITHUB_OUTPUT
if [[ $tag_name == *-* ]]; then # 判断新版本是否为 beta 版本
latest=$newest_tag # 若是,则将 latest 参数设置为最新版本
else
latest=$latest_stable_tag # 若否,则设置为上一个 stable 版本
fi
echo "latest=$latest" >> $GITHUB_OUTPUT
cat $GITHUB_OUTPUT
echo '======='
echo 'Target RP: ${{ github.event.pull_request.html_url }}' >> $PR_BODY
echo '' >> $PR_BODY
echo '<details><summary>Debug info</summary>' >> $PR_BODY
echo '' >> $PR_BODY
echo '```' >> $PR_BODY
sed 's/=/: /1' $GITHUB_OUTPUT >> $PR_BODY
echo '```' >> $PR_BODY
echo '' >> $PR_BODY
echo '</details>' >> $PR_BODY
cat $PR_BODY
- name: Generate Changelog
run: |
git switch dev
python3 tools/ChangelogGenerator/changelog_generator.py --tag "${{ steps.extract_tag.outputs.tag_name }}" --latest "${{ steps.extract_tag.outputs.latest }}"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Add files to git
run: |
git status
git config user.name "$GITHUB_ACTOR"
git config user.email "$GITHUB_ACTOR@users.noreply.github.com"
git add .
commit_msg="docs: Auto Generate Changelog of Release ""${{ steps.extract_tag.outputs.tag_name }}"
git commit -m "$commit_msg"
- name: Create PR
uses: peter-evans/create-pull-request@v7
with:
sign-commits: true
token: ${{ secrets.GITHUB_TOKEN }}
title: ${{ steps.extract_tag.outputs.pr_title }}
body-path: ${{ format('{0}/{1}', runner.temp, 'output' ) }}
base: "dev"
branch: "changelog"
delete-branch: true
reviewers: |
AnnAngela
assignees: |
AnnAngela
- name: Add reviewers to release PR
uses: kentaro-m/auto-assign-action@v2.0.0
with:
configuration-path: ".github/release_reviewers.yaml"

View File

@@ -0,0 +1,153 @@
name: Issue Review
on:
issues:
types: [opened]
jobs:
check-then-close-or-fold:
name: Review and Modify Issues
runs-on: ubuntu-latest
permissions:
issues: write
steps:
- name: Check for duplicate issues in last hour
id: duplicate-check
uses: actions/github-script@v8
with:
script: |
const oneHourAgo = new Date(Date.now() - 60 * 60 * 1000);
const currentIssueCreatedAt = new Date(context.payload.issue.created_at);
const issueAuthor = context.payload.issue.user.login;
// 重新获取该用户最近的 issues
const { data: userIssues } = await github.rest.issues.listForRepo({
owner: context.repo.owner,
repo: context.repo.repo,
creator: issueAuthor,
state: 'all',
since: oneHourAgo.toISOString(),
per_page: 30
});
// 过滤出1小时内创建的其他 issues排除当前 issue
const recentIssues = userIssues.filter(issue => {
const issueCreatedAt = new Date(issue.created_at);
return issue.number !== context.issue.number &&
issueCreatedAt >= oneHourAgo &&
issueCreatedAt < currentIssueCreatedAt;
});
if (recentIssues.length > 0) {
// 给当前 issue 添加标签
await github.rest.issues.addLabels({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
labels: ['rapid-submission']
});
// 给1小时内的其他 issues 也添加标签
for (const issue of recentIssues) {
try {
await github.rest.issues.addLabels({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: issue.number,
labels: ['rapid-submission']
});
console.log(`Added rapid-submission label to issue #${issue.number}`);
} catch (error) {
console.log(`Failed to add label to issue #${issue.number}: ${error.message}`);
}
}
}
- name: Check for issue checkboxes
id: unread-checkbox-check
uses: actions/github-script@v8
with:
script: |
// 找不到###就算了
if (!/###([^#]+)###/.test(context.payload.issue.body)) {
return false;
}
var checkList = /###([^#]+)###/.exec(context.payload.issue.body)[1];
const UnreadRegexCn = /- \[x\]\s*.*?我.*未仔细阅读/i;
const UnreadRegexCn_ = /- \[ \]\s*.*?我.*未仔细阅读/i;
if (/- \[(x| )\]\s*.*?[\u4e00-\u9fa5]+/i.test(checkList)) { // 中英区分
if (UnreadRegexCn.test(checkList)) {
return true;
}
checkList = checkList.replace(UnreadRegexCn_, "");
return /- \[ \]\s*.*?[\u4e00-\u9fa5]+/i.test(checkList);
}
const texts = [
'I have checked all the options without carefully reading the content and believe this will not affect issue resolution.'];
return texts.some(text => new RegExp(`- \\[x\\]\\s*${text}`).test(context.payload.issue.body));
- name: Close low-quality issue
if: steps.unread-checkbox-check.outputs.result == 'true'
uses: actions/github-script@v8
with:
script: |
await github.rest.issues.update({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
state: 'closed',
state_reason: 'not_planned'
});
await github.rest.issues.addLabels({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
labels: ['low-quality-report']
});
await github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
body: '因为未阅读模板提示并正确提交,触发了自动关闭规则\n\nBecause the template prompt was not read and submitted correctly, the automatic closing rule was triggered'
});
- name: Fold checkboxes
if: steps.unread-checkbox-check.outputs.result == 'false'
uses: actions/github-script@v8
with:
script: |
const originalBody = context.payload.issue.body;
if (originalBody.includes('<details><summary>Checkboxes</summary>\n\n')) {
return;
}
const checkboxSectionRegex_cn_bug = /([\s\S]*?)(### 问题描述\n\n)/;
const checkboxSectionRegex_cn_feat = /([\s\S]*?)(### 说说你遇到的问题?\n\n)/;
const checkboxSectionRegex_en_bug = /([\s\S]*?)(### Description\n\n)/;
const checkboxSectionRegex_en_feat = /([\s\S]*?)(### The problems you have encountered?\n\n)/;
const foldedBody_cn_bug = originalBody.replace(
checkboxSectionRegex_cn_bug,
`<details><summary>Checkboxes</summary>\n\n$1\n\n</details>\n\n$2`
);
const foldedBody_cn_feat = foldedBody_cn_bug.replace(
checkboxSectionRegex_cn_feat,
`<details><summary>Checkboxes</summary>\n\n$1\n\n</details>\n\n$2`
);
const foldedBody_en_bug = foldedBody_cn_feat.replace(
checkboxSectionRegex_en_bug,
`<details><summary>Checkboxes</summary>\n\n$1\n\n</details>\n\n$2`
);
const foldedBody = foldedBody_en_bug.replace(
checkboxSectionRegex_en_feat,
`<details><summary>Checkboxes</summary>\n\n$1\n\n</details>\n\n$2`
);
await github.rest.issues.update({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
body: foldedBody
});

View File

@@ -1,4 +1,4 @@
name: "Issue Checker"
name: Issue Triage
on:
issues:
@@ -15,9 +15,11 @@ permissions:
jobs:
triage:
name: Triage Issues and PRs
runs-on: ubuntu-latest
steps:
- uses: MaaAssistantArknights/issue-checker@v1.14
- name: Label issues and PRs Automatically
uses: MaaAssistantArknights/issue-checker@v1.14
with:
repo-token: "${{ secrets.GITHUB_TOKEN }}"
configuration-path: .github/issue-checker.yml

View File

@@ -1,4 +1,4 @@
name: Check Dead Links
name: Markdown Link Check
on:
schedule:
@@ -7,22 +7,22 @@ on:
branches:
- dev
paths:
- "**/*.md"
- "docs/**"
- ".github/workflows/markdown-checker.yml"
- "docs/**"
- "**/*.md"
pull_request:
branches:
- dev
paths:
- "**/*.md"
- "docs/**"
- ".github/workflows/markdown-checker.yml"
- "docs/**"
- "**/*.md"
workflow_dispatch:
jobs:
check-links:
if: github.repository_owner == 'MaaAssistantArknights' && github.event.head_commit.author.email != '41898282+github-actions[bot]@users.noreply.github.com'
name: Check Dead Links
if: github.repository_owner == 'MaaAssistantArknights' && github.event.head_commit.author.email != '41898282+github-actions[bot]@users.noreply.github.com'
runs-on: ubuntu-latest
permissions:
pull-requests: write
@@ -30,32 +30,28 @@ jobs:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
steps:
- name: Check out code
uses: actions/checkout@v4
- name: Checkout repository
uses: actions/checkout@v6
with:
show-progress: false
- name: Cache Primes
id: cache-primes
uses: actions/cache@v4
- name: Cache lychee responses
uses: actions/cache@v5
continue-on-error: true
with:
path: .lycheecache
key: lychee-cache
- name: Check dead links
- name: Check dead internal links
uses: lycheeverse/lychee-action@v2
with:
# 仅检查内部链接和 Github 相关链接
# 仅检查内部链接,排除所有外部链接
args: >
--verbose --no-progress
--cache --max-cache-age 1d --cache-exclude-status '429, 500..599'
--exclude 'https?://.*'
--include 'https?://github\.com/.*'
--include 'https?://raw\.githubusercontent\.com/.*'
--include 'https?://user-images\.githubusercontent\.com/.*'
--exclude-path 'docs/zh-tw/manual/introduction/introduction_old.md'
--exclude-path 'docs/ja-jp/manual/introduction/introduction_old.md'
--exclude 'files/MAA_Runtime_Fix_Pwsh.ps1$'
-- './docs/**/*.md' './README.md'
- name: Comment (only for PR)

View File

@@ -1,71 +0,0 @@
name: mirrorchyan
on:
workflow_dispatch:
jobs:
mirrorchyan:
runs-on: macos-latest
steps:
- name: Upload MAA win x64
uses: MirrorChyan/uploading-action@v1
if: always()
with:
filetype: latest-release
filename: "*MAA-*-win-x64.zip"
mirrorchyan_rid: MAA
github_token: ${{ secrets.GITHUB_TOKEN }}
owner: ${{ github.repository_owner }}
repo: ${{ github.event.repository.name }}
upload_token: ${{ secrets.MirrorChyanUploadToken }}
os: win
arch: x64
- name: Upload MAA win arm64
uses: MirrorChyan/uploading-action@v1
if: always()
with:
filetype: latest-release
filename: "*MAA-*-win-arm64.zip"
mirrorchyan_rid: MAA
github_token: ${{ secrets.GITHUB_TOKEN }}
owner: ${{ github.repository_owner }}
repo: ${{ github.event.repository.name }}
upload_token: ${{ secrets.MirrorChyanUploadToken }}
os: win
arch: arm64
- name: Upload MAA macos arm64
uses: MirrorChyan/uploading-action@v1
if: always()
with:
filetype: latest-release
filename: "MAA-*-macos-universal.dmg"
extra_zip: true
mirrorchyan_rid: MAA
github_token: ${{ secrets.GITHUB_TOKEN }}
owner: ${{ github.repository_owner }}
repo: ${{ github.event.repository.name }}
upload_token: ${{ secrets.MirrorChyanUploadToken }}
os: macos
arch: arm64
- name: Upload MAA macos x64
uses: MirrorChyan/uploading-action@v1
if: always()
with:
filetype: latest-release
filename: "MAA-*-macos-universal.dmg"
extra_zip: true
mirrorchyan_rid: MAA
github_token: ${{ secrets.GITHUB_TOKEN }}
owner: ${{ github.repository_owner }}
repo: ${{ github.event.repository.name }}
upload_token: ${{ secrets.MirrorChyanUploadToken }}
os: macos
arch: x64

View File

@@ -1,5 +1,4 @@
name: mirrorchyan_release_note
name: Release Note Distribution
on:
workflow_dispatch:
release:
@@ -7,10 +6,11 @@ on:
jobs:
mirrorchyan:
name: Upload to MirrorChyan
runs-on: macos-latest
steps:
- name: Release Note for MAA
- name: Upload release notes to MirrorChyan
uses: MirrorChyan/release-note-action@v1
with:
mirrorchyan_rid: MAA

View File

@@ -1,14 +1,12 @@
name: Optimize PNG Templates
name: PNG Image Optimization
on:
push:
branches:
- "dev"
paths:
- "resource/**/*.png"
- "docs/.vuepress/public/images/**"
- "website/apps/web/public/**"
- "website/apps/web/src/assets/links/**"
- "resource/**/*.png"
workflow_dispatch:
inputs:
commit_message:
@@ -18,19 +16,21 @@ on:
jobs:
optimize-png:
name: Optimize PNG Images
# Skip workflow to prevent double consecutive runs
# Skip workflow on PR merges
if: github.repository_owner == 'MaaAssistantArknights' && ${{ github.event.head_commit.author.email != '41898282+github-actions[bot]@users.noreply.github.com' }}
if: github.repository_owner == 'MaaAssistantArknights' && github.event.head_commit.author.email != '41898282+github-actions[bot]@users.noreply.github.com'
runs-on: ubuntu-latest
steps:
- name: Check for direct push
# Skip workflow on PR merges
- name: Check if it is a direct push
id: check_push
run: |
if [[ "${{ github.event_name }}" != "workflow_dispatch" ]]; then
pr_merge_status=$(curl -s -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
"https://api.github.com/repos/${{ github.repository }}/commits/${{ github.event.after }}/pulls" | xargs)
pr_count=$(curl -s -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
"https://api.github.com/repos/${{ github.repository }}/commits/${{ github.event.after }}/pulls" \
| jq 'length')
if [[ "$pr_merge_status" == "[ ]" ]]; then
if [[ "$pr_count" == "0" ]]; then
echo "Direct push detected. Proceeding..."
echo "is_pr=False" >> $GITHUB_OUTPUT
else
@@ -44,27 +44,29 @@ jobs:
- name: Checkout repository
if: steps.check_push.outputs.is_pr != 'True'
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
show-progress: false
persist-credentials: false
- name: Setup python
if: steps.check_push.outputs.is_pr != 'True'
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: "3.11"
- name: Cache Python packages
id: cache_python
if: steps.check_push.outputs.is_pr != 'True' && always()
uses: actions/cache@v4
with:
path: ${{ env.pythonLocation }}/lib/python3.11/site-packages
key: ${{ runner.os }}-pip-optimize-templates-${{ hashFiles('./tools/OptimizeTemplates/requirements.txt') }}
# - name: Cache Python packages
# id: cache_python
# if: steps.check_push.outputs.is_pr != 'True' && always()
# uses: actions/cache@v4
# continue-on-error: true
# with:
# path: ${{ env.pythonLocation }}/lib/python3.11/site-packages
# key: ${{ runner.os }}-pip-optimize-templates-${{ hashFiles('./tools/OptimizeTemplates/requirements.txt') }}
- name: Install dependencies
if: steps.check_push.outputs.is_pr != 'True' && steps.cache_python.outputs.cache-hit != 'true'
# if: steps.check_push.outputs.is_pr != 'True' && steps.cache_python.outputs.cache-hit != 'true'
if: steps.check_push.outputs.is_pr != 'True'
run: |
pip install -r tools/OptimizeTemplates/requirements.txt
@@ -74,7 +76,7 @@ jobs:
with:
crate: oxipng
- name: Run optimize_templates
- name: Optimize png images
if: steps.check_push.outputs.is_pr != 'True'
run: |
python3 tools/OptimizeTemplates/optimize_templates.py
@@ -101,7 +103,7 @@ jobs:
fi
- name: Push changes
if: steps.check_push.outputs.is_pr != 'True' && steps.commit_changes.outputs.have_commits == 'True'
if: steps.check_push.outputs.is_pr != 'True' && steps.commit_changes.outputs.have_commits == 'True' && github.repository_owner == 'MaaAssistantArknights'
uses: ad-m/github-push-action@master
with:
github_token: ${{ secrets.MAA_RESOURCE_SYNC }}

View File

@@ -1,4 +1,4 @@
name: Auto Tag Release PR
name: Release Version Tagging
on:
pull_request:
@@ -9,27 +9,29 @@ on:
workflow_dispatch:
inputs:
tag:
description: "Name of the tag to create for the release"
type: string
required: true
jobs:
auto_tag_release:
name: Tag Release
if: github.event.pull_request.merged == true && (startsWith(github.event.pull_request.title, 'Release v') || startsWith(github.event.pull_request.title, 'release v')) || github.event_name == 'workflow_dispatch'
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Checkout repository
uses: actions/checkout@v6
with:
fetch-depth: 0
token: ${{ secrets.MAARELEASE_RELEASE }}
- name: Git config
- name: Configure git
run: |
git config user.name "$GITHUB_ACTOR"
git config user.email "$GITHUB_ACTOR@users.noreply.github.com"
- name: Extract tag name
- name: Determine tag name
id: extract_tag
run: |
if ${{ github.event_name != 'workflow_dispatch' }}; then
@@ -39,12 +41,12 @@ jobs:
echo "tag_name=${{ inputs.tag }}" >> $GITHUB_OUTPUT
fi
- name: Create release tag and push
- name: Create and push release tag
run: |
git tag -a "${{ steps.extract_tag.outputs.tag_name }}" -m "${{ steps.extract_tag.outputs.tag_name }}" -f
git push origin "${{ steps.extract_tag.outputs.tag_name }}"
- name: Merge into dev and push
- name: Merge tag into dev and push
run: |
git switch dev
git merge "${{ steps.extract_tag.outputs.tag_name }}"

View File

@@ -1,4 +1,4 @@
name: PR Checker
name: PR Commit Check
on:
pull_request_target:
@@ -6,11 +6,12 @@ on:
jobs:
check_commit_name_in_pr:
name: Check Commits in PR
if: ${{ !github.event.pull_request.merged && github.base_ref != 'master' }}
runs-on: ubuntu-latest
steps:
- name: Cleanup Previous Comment
uses: actions/github-script@v7
- name: Clean up previous comment
uses: actions/github-script@v8
with:
script: |
const { data: comments } = await github.rest.issues.listComments({
@@ -27,8 +28,8 @@ jobs:
comment_id: previousComment.id
});
}
- name: Check Commits
uses: actions/github-script@v7
- name: Check commits
uses: actions/github-script@v8
with:
script: |
const { data: commits } = await github.rest.pulls.listCommits({

View File

@@ -0,0 +1,36 @@
name: Scheduled Pre-commit
on:
schedule:
# 每天 UTC 21:00 运行(北京时间 5:00
- cron: "0 21 * * *"
workflow_dispatch: # 允许手动触发
jobs:
pre-commit:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 0
show-progress: false
- name: Setup and run Prek
uses: j178/prek-action@v1
id: pre-commit
continue-on-error: true
with:
extra-args: '--all-files'
- name: Commit and push changes
if: steps.pre-commit.outcome == 'failure' && github.repository_owner == 'MaaAssistantArknights'
uses: actions-js/push@master
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
message: "chore: Auto update by pre-commit hooks
https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}
[skip changelog]"
branch: ${{ github.ref }}

View File

@@ -1,4 +1,4 @@
name: release-nightly-ota
name: Release Pipeline (Nightly OTA)
on:
schedule:
@@ -26,21 +26,21 @@ on:
jobs:
build-win-nightly:
name: Build Nightly for Windows
if: github.repository_owner == 'MaaAssistantArknights'
runs-on: windows-latest
strategy:
matrix:
msbuild_target: [x64]
arch: [x64]
fail-fast: false
env:
MAABUILDER_TARGET_PLATFORM: ${{ matrix.msbuild_target }}
outputs:
tag: ${{ steps.set_tag.outputs.tag }}
pre_version: ${{ steps.set_tag.outputs.pre_version }}
main_tag_name: ${{ steps.push_main_tag.outputs.main_tag_name }}
changelog: ${{ steps.read_changelog.outputs.content }}
steps:
- uses: actions/checkout@v4
- name: Checkout repository
uses: actions/checkout@v6
with:
# repository: 'MaaAssistantArknights/MaaAssistantArknights'
#ref: ${{ inputs.ref }}
@@ -53,6 +53,7 @@ jobs:
- name: Fetch submodules
run: |
git submodule update --init --depth 1 src/MaaUtils
git submodule update --init --depth 1 3rdparty/EmulatorExtras
- name: Checkout ref (if provided)
@@ -140,7 +141,7 @@ jobs:
gh run watch ${{ github.run_id }}
- name: Generate Changelog
- name: Generate changelog
id: generate_changelog
run: |
python3 tools/ChangelogGenerator/changelog_generator.py --latest "${{ steps.set_tag.outputs.latest_tag }}" --tag "${{ steps.set_tag.outputs.tag }}"
@@ -162,41 +163,64 @@ jobs:
gh run watch ${{ github.run_id }}
- name: Read Changelog to variable
- name: Read changelog to variable
id: read_changelog
uses: juliangruber/read-file-action@v1
with:
path: ./changelog_notag.md
- name: Cache .nuke/temp, ~/.nuget/packages
id: cache-nuget
uses: actions/cache@v4
with:
path: |
.nuke/temp
~/.nuget/packages
key: ${{ runner.os }}-${{ matrix.msbuild_target }}-${{ hashFiles('**/global.json', '**/*.csproj') }}
- name: Restore dependencies
if: steps.cache-nuget.outputs.cache-hit != 'true'
run: dotnet restore
- name: Cache MaaDeps
id: cache-maadeps
uses: actions/cache@v4
uses: actions/cache@v5
continue-on-error: true
with:
path: |
./MaaDeps
key: ${{ runner.os }}-${{ matrix.msbuild_target }}-maadeps-${{ hashFiles('./maadeps-download.py') }}
./src/MaaUtils/MaaDeps
key: ${{ runner.os }}-${{ matrix.arch }}-maadeps-${{ hashFiles('tools/maadeps-download.py') }}
- name: Bootstrap MaaDeps
if: steps.cache-maadeps.outputs.cache-hit != 'true'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
python3 maadeps-download.py ${{ matrix.msbuild_target }}-windows
python3 tools/maadeps-download.py ${{ matrix.arch }}-windows
- name: Taggify Version
- name: Configure, build and install
run: |
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: 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: Copy MaaWin32ControlUnit
if: matrix.arch == 'x64'
run: |
cp MaaFramework-temp/bin/*Win32ControlUnit* install/
- name: Cache .nuke/temp, ~/.nuget/packages
id: cache-nuget
uses: actions/cache@v5
continue-on-error: true
with:
path: |
.nuke/temp
~/.nuget/packages
key: ${{ runner.os }}-${{ matrix.arch }}-nuget-${{ hashFiles('**/*.csproj') }}
- name: Restore dependencies
if: steps.cache-nuget.outputs.cache-hit != 'true'
run: dotnet restore src/MaaWpfGui/MaaWpfGui.csproj
- name: Taggify version for csproj
run: |
$csprojPath = "src/MaaWpfGui/MaaWpfGui.csproj"
$csprojPath = Resolve-Path -Path $csprojPath
@@ -206,8 +230,6 @@ jobs:
} else {
$match = "0.0.1"
}
echo "Tag value: $tag"
echo "Version value: $match"
[xml]$csproj = Get-Content -Path $csprojPath
$node = $csproj.Project.PropertyGroup | where {$_.ApplicationVersion -ne $null}
$node.InformationalVersion = $tag
@@ -215,25 +237,38 @@ jobs:
$node.FileVersion = $match
$node.AssemblyVersion = $match
$csproj.Save($csprojPath)
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Run './build.cmd DevBuild'
- name: Publish WPF GUI
run: |
$env:GITHUB_WORKFLOW = 'dev-build-win' # pretend this is a dev-build-win workflow
$env:MAA_BUILDER_MAA_VERSION = "${{ steps.set_tag.outputs.tag }}"
echo "tag: " $env:MAA_BUILDER_MAA_VERSION
dotnet publish src/MaaWpfGui/MaaWpfGui.csproj -c Release -p:Platform=${{ matrix.arch == 'arm64' && 'ARM64' || 'x64' }} -o install
./build.cmd DevBuild
env:
Reason: "Build nightly version"
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Collect PDB files
run: |
cp build/bin/RelWithDebInfo/*.pdb install/
Compress-Archive -Path install/*.pdb -DestinationPath install/MAAComponent-DebugSymbol-${{ steps.set_tag.outputs.tag }}-win-${{ matrix.arch }}.zip
continue-on-error: true
- name: Upload MAA to Github
uses: actions/upload-artifact@v4
- name: Upload PDB files
uses: actions/upload-artifact@v6
with:
name: MAA-win-${{ matrix.msbuild_target }}
path: artifacts
name: MAAComponent-DebugSymbol-win-${{ matrix.arch }}
path: install/MAAComponent-DebugSymbol-${{ steps.set_tag.outputs.tag }}-win-${{ matrix.arch }}.zip
- name: Organize install files
shell: bash
run: |
rm -rf install/MAAComponent-DebugSymbol-*.zip
rm -rf install/*.pdb
rm -rf install/msvc-debug
rm -rf install/*.h
cp tools/DependencySetup_依赖库安装.bat install
- name: Upload MAA to GitHub
uses: actions/upload-artifact@v6
with:
name: MAA-win-${{ matrix.arch }}
path: install
- name: Push tag to main repo
id: push_main_tag
@@ -247,12 +282,13 @@ jobs:
echo "main_tag_name=$main_tag_name" >> $env:GITHUB_OUTPUT
push-tag:
name: Push Tag to MaaRelease
if: github.repository_owner == 'MaaAssistantArknights'
needs: build-win-nightly
runs-on: ubuntu-latest
steps:
- name: Fetch MaaRelease
uses: actions/checkout@v4
- name: Checkout MaaRelease
uses: actions/checkout@v6
with:
repository: ${{ format('{0}/{1}', github.repository_owner, 'MaaRelease') }}
fetch-depth: 0
@@ -270,6 +306,7 @@ jobs:
git push --tags origin HEAD:refs/tags/${{ needs.build-win-nightly.outputs.tag }}
make-ota:
name: Build and Upload Nightly OTA for Windows
if: github.repository_owner == 'MaaAssistantArknights'
needs: [build-win-nightly, push-tag]
strategy:
@@ -277,29 +314,38 @@ jobs:
target: [x64]
runs-on: ubuntu-latest
steps:
- name: Echo tag version
- name: Show tag version
run: |
echo ${{ needs.build-win-nightly.outputs.tag }}
- name: Checkout code
uses: actions/checkout@v4
- name: Checkout repository
uses: actions/checkout@v6
with:
path: MaaAssistantArknights
token: ${{ secrets.MAARELEASE_RELEASE }}
show-progress: false
- name: Download MAA from Github
uses: actions/download-artifact@v4
- name: Download MAA from GitHub
uses: actions/download-artifact@v7
with:
name: MAA-win-${{ matrix.target }}
path: ${{ format('{0}/{1}', 'build-ota', needs.build-win-nightly.outputs.tag) }}
- name: Fetch release info
- name: Fetch release information
run: |
mkdir -pv build-ota && cd build-ota
gh release list --repo 'MaaAssistantArknights/MaaAssistantArknights' --limit ${{ inputs.limit_maa }} | tee ./release_maa.txt
gh release list --repo "${{ github.repository_owner }}/MaaRelease" --limit ${{ inputs.limit_maarelease }} | tee ./release_mr.txt
# Convert inputs to integers
limit_maa=${{ inputs.limit_maa || 10 }}
limit_maa=${limit_maa%.*}
echo "Parsed limit_maa: $limit_maa"
limit_maarelease=${{ inputs.limit_maarelease || 10 }}
limit_maarelease=${limit_maarelease%.*}
echo "Parsed limit_maarelease: $limit_maarelease"
gh release list --repo 'MaaAssistantArknights/MaaAssistantArknights' --limit $limit_maa | tee ./release_maa.txt
gh release list --repo "${{ github.repository_owner }}/MaaRelease" --limit $limit_maarelease | tee ./release_mr.txt
echo ${{ needs.build-win-nightly.outputs.tag }} > ./config
cat ./release_maa.txt | awk '{ print $1 }' > ./tags_maa.txt
@@ -319,8 +365,7 @@ jobs:
cd build-ota
pushd ${{ needs.build-win-nightly.outputs.tag }}
zip -d *.zip '*.lib' '*.pdb' '*.exp' '*.config' '*.xml'
mv *.zip MAA-${{ env.release_tag }}-win-${{ matrix.target }}.zip
zip -r MAA-${{ env.release_tag }}-win-${{ matrix.target }}.zip ./*
popd
$GITHUB_WORKSPACE/MaaAssistantArknights/tools/OTAPacker/build.sh 'MaaAssistantArknights/MaaAssistantArknights' ./config ${{ matrix.target }} "${{ github.repository_owner }}/MaaRelease"

View File

@@ -1,4 +1,4 @@
name: release-ota
name: Release Pipeline (OTA)
on:
release:
@@ -9,12 +9,12 @@ on:
limit:
description: Number of releases to fetch from MaaAssistantArknights, 2 at least
required: false
default: "31"
default: 31
type: number
limit_2:
description: Number of releases to fetch from MaaRelease
required: false
default: "30"
default: 30
type: number
env:
@@ -22,10 +22,11 @@ env:
jobs:
create-tag:
name: Create OTA Release Tag in MaaRelease
runs-on: ubuntu-latest
steps:
- name: Fetch MaaRelease
uses: actions/checkout@v4
- name: Checkout MaaRelease
uses: actions/checkout@v6
with:
show-progress: false
repository: ${{ format('{0}/{1}', github.repository_owner, 'MaaRelease') }}
@@ -33,7 +34,7 @@ jobs:
fetch-depth: 0
token: ${{ secrets.MAARELEASE_RELEASE }}
- name: Fetch release info
- name: Fetch release information
id: fetchReleaseInfo
run: |
mkdir -pv build-ota && cd build-ota
@@ -76,7 +77,7 @@ jobs:
PUSH_REMOTE: https://github-actions[bot]:${{ secrets.MAARELEASE_RELEASE }}@github.com/${{ github.repository_owner }}/MaaRelease
- name: Upload release config to GitHub
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v6
with:
name: MaaReleaseConfig
path: ./build-ota/config
@@ -86,6 +87,7 @@ jobs:
release_tag: ${{ steps.fetchReleaseInfo.outputs.release_tag }}
make-ota:
name: Build and Upload OTA for Windows
needs: create-tag
runs-on: ubuntu-latest
strategy:
@@ -94,10 +96,13 @@ jobs:
- x64
steps:
- name: Download release config
uses: actions/download-artifact@v4
uses: actions/download-artifact@v7
with:
name: MaaReleaseConfig
path: ./MaaReleaseConfig
- name: Fetch MaaRelease
uses: actions/checkout@v4
- name: Checkout MaaRelease
uses: actions/checkout@v6
with:
show-progress: false
repository: ${{ format('{0}/{1}', github.repository_owner, 'MaaRelease') }}
@@ -105,8 +110,8 @@ jobs:
fetch-depth: 0
token: ${{ secrets.MAARELEASE_RELEASE }}
- name: Checkout code
uses: actions/checkout@v4
- name: Checkout repository
uses: actions/checkout@v6
with:
show-progress: false
path: MaaAssistantArknights
@@ -134,11 +139,21 @@ jobs:
prerelease: ${{ fromJSON(needs.create-tag.outputs.prerelease) }}
overwrite: true
- name: Create issue on failure
if: failure()
uses: actions-cool/issues-helper@v3
with:
actions: "create-issue"
title: "Failed to make OTA release for Windows"
body: |
${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
make-ota-mac:
name: Build and Upload OTA for macOS
needs: create-tag
runs-on: macos-14
steps:
- name: Fetch release info
- name: Fetch release information
run: gh release list --repo 'MaaAssistantArknights/MaaAssistantArknights' --limit ${{ inputs.limit || 31 }} | tee ./release_maa.txt
- name: Download release packages
@@ -154,7 +169,7 @@ jobs:
run: |
gh release download --repo 'sparkle-project/Sparkle' --clobber -O - -p 'Sparkle-*.tar.xz' | tar xf -
- name: Generate Update Packages
- name: Generate update packages
run: |
if [ $(head -n 1 release_maa.txt | awk '{ print $2 }') = 'Pre-release' ]; then
echo ${{ secrets.SPARKLE_PRIV_KEY }} | ./bin/generate_appcast --channel beta --ed-key-file - ./packages
@@ -162,7 +177,7 @@ jobs:
echo ${{ secrets.SPARKLE_PRIV_KEY }} | ./bin/generate_appcast --ed-key-file - ./packages
fi
- name: Cleanup files
- name: Clean up files
run: |
find ./packages -type f ! \( -name 'MAA-${{ needs.create-tag.outputs.release_tag }}-macos-universal.dmg' -o -name '*.delta' -o -name '*.xml' \) -print -delete
@@ -177,7 +192,17 @@ jobs:
prerelease: ${{ fromJSON(needs.create-tag.outputs.prerelease) }}
overwrite: true
- name: Create issue on failure
if: failure()
uses: actions-cool/issues-helper@v3
with:
actions: "create-issue"
title: "Failed to make OTA release for macOS"
body: |
${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
release:
name: Publish to Release Mirrors
needs:
- make-ota
- make-ota-mac

View File

@@ -0,0 +1,154 @@
name: Release Package Distribution
on:
workflow_dispatch:
inputs:
release_tag:
description: "Release Tag (empty for latest)"
type: string
required: false
default: ""
mirrorchyan:
description: "Upload to MirrorChyan"
type: boolean
required: false
default: true
winget:
description: "Upload to WinGet"
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' }}
jobs:
meta:
name: Define Release Tag
if: ${{ github.repository_owner == 'MaaAssistantArknights' }}
runs-on: ubuntu-latest
outputs:
RELEASE_TAG: ${{ steps.define_release_tag.outputs.RELEASE_TAG }}
steps:
- name: Get latest release tag
id: get_latest
if: ${{ env.RELEASE_TAG_RAW == 'latest' }}
uses: pozetroninc/github-action-get-latest-release@master
with:
owner: ${{ github.repository_owner }}
repo: ${{ github.event.repository.name }}
token: ${{ secrets.GITHUB_TOKEN }}
excludes: "draft"
- name: Define release tag
id: define_release_tag
run: |
if [ "${{ env.RELEASE_TAG_RAW }}" == "latest" ]; then
echo "RELEASE_TAG=${{ steps.get_latest.outputs.release }}" >> $GITHUB_OUTPUT
else
echo "RELEASE_TAG=${{ env.RELEASE_TAG_RAW }}" >> $GITHUB_OUTPUT
fi
mirrorchyan:
name: Upload to MirrorChyan
needs: meta
if: ${{ github.event.inputs.mirrorchyan == 'true' }}
runs-on: ubuntu-latest
continue-on-error: true
strategy:
fail-fast: false
matrix:
include:
- os: win
arch: x64
filename: "*MAA-*-win-x64.zip"
extra_zip: false
- os: win
arch: arm64
filename: "*MAA-*-win-arm64.zip"
extra_zip: false
- os: macos
arch: arm64
filename: "MAA-*-macos-universal.dmg"
extra_zip: true
- os: macos
arch: x64
filename: "MAA-*-macos-universal.dmg"
extra_zip: true
env:
RELEASE_TAG: ${{ needs.meta.outputs.RELEASE_TAG }}
steps:
- name: Upload MAA ${{ matrix.os }} ${{ matrix.arch }}
uses: MirrorChyan/uploading-action@v1
continue-on-error: true
with:
filetype: latest-release
filename: ${{ matrix.filename }}
extra_zip: ${{ matrix.extra_zip }}
tag: ${{ env.RELEASE_TAG }}
mirrorchyan_rid: MAA
github_token: ${{ secrets.GITHUB_TOKEN }}
owner: ${{ github.repository_owner }}
repo: ${{ github.event.repository.name }}
upload_token: ${{ secrets.MirrorChyanUploadToken }}
os: ${{ matrix.os }}
arch: ${{ matrix.arch }}
winget:
name: Upload to WinGet
needs: meta
if: ${{ github.event.inputs.winget == 'true' }}
runs-on: windows-latest
continue-on-error: true
env:
RELEASE_TAG: ${{ needs.meta.outputs.RELEASE_TAG }}
steps:
- name: Upload MAA to WinGet
uses: vedantmgoyal9/winget-releaser@main
with:
identifier: MaaAssistantArknights.MaaAssistantArknights
version: ""
installers-regex: "-win-"
max-versions-to-keep: 0
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

@@ -0,0 +1,111 @@
name: Release Preparation
on:
pull_request:
types:
- opened
- reopened
- ready_for_review
workflow_dispatch:
jobs:
generate-changelog:
name: Generate Changelog
# startsWith 表达式不区分大小写
if: github.event.pull_request.draft == false && startsWith(github.event.pull_request.title, 'Release v')
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v6
with:
fetch-depth: 0
show-progress: false
- name: Extract release information
id: extract_tag
env:
PR_BODY: ${{ format('{0}/{1}', runner.temp, 'output' ) }}
run: |
tag_name=$(echo "${{ github.event.pull_request.title }}" | sed -E 's/(Release|release)//' | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')
echo "tag_name=$tag_name" >> $GITHUB_OUTPUT
pr_title="docs: Auto Update Changelogs of "$tag_name
echo "pr_title=$pr_title" >> $GITHUB_OUTPUT
latest_stable_tag=$(git tag -l 'v*' | grep -v '-' | sort -V | tail -n 1) # 上一个 stable 版本
newest_tag=$(git describe --tags --match "v*" --abbrev=0) # 最新版本
echo "latest_stable_tag=$latest_stable_tag" >> $GITHUB_OUTPUT
echo "newest_tag=$newest_tag" >> $GITHUB_OUTPUT
if [[ $tag_name == *-* ]]; then # 判断新版本是否为 beta 版本
latest=$newest_tag # 若是,则将 latest 参数设置为最新版本
else
latest=$latest_stable_tag # 若否,则设置为上一个 stable 版本
fi
echo "latest=$latest" >> $GITHUB_OUTPUT
cat $GITHUB_OUTPUT
echo '======='
echo 'Target PR: ${{ github.event.pull_request.html_url }}' >> $PR_BODY
echo '' >> $PR_BODY
echo '<details><summary>Debug information</summary>' >> $PR_BODY
echo '' >> $PR_BODY
echo '```' >> $PR_BODY
sed 's/=/: /1' $GITHUB_OUTPUT >> $PR_BODY
echo '```' >> $PR_BODY
echo '' >> $PR_BODY
echo '</details>' >> $PR_BODY
cat $PR_BODY
- name: Generate changelog
run: |
git switch dev
python3 tools/ChangelogGenerator/changelog_generator.py --tag "${{ steps.extract_tag.outputs.tag_name }}" --latest "${{ steps.extract_tag.outputs.latest }}"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Commit changes
run: |
git status
git config user.name "$GITHUB_ACTOR"
git config user.email "$GITHUB_ACTOR@users.noreply.github.com"
git add .
commit_msg="docs: Auto Generate Changelog of Release ""${{ steps.extract_tag.outputs.tag_name }}"
git commit -m "$commit_msg"
- name: Create changelog PR
uses: peter-evans/create-pull-request@v8
with:
sign-commits: true
token: ${{ secrets.GITHUB_TOKEN }}
title: ${{ steps.extract_tag.outputs.pr_title }}
body-path: ${{ format('{0}/{1}', runner.temp, 'output' ) }}
base: "dev"
branch: "changelog"
delete-branch: true
reviewers: |
AnnAngela
assignees: |
AnnAngela
- name: Assign reviewers to release PR
uses: kentaro-m/auto-assign-action@v2.0.1
with:
configuration-path: ".github/release_reviewers.yaml"
update-submodules:
name: Update Submodules
if: github.event.pull_request.draft == false && startsWith(github.event.pull_request.title, 'Release v')
runs-on: ubuntu-latest
steps:
- name: Trigger submodule update workflow
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
gh workflow run --repo $GITHUB_REPOSITORY update-submodules.yml

View File

@@ -1,4 +1,4 @@
name: res-update-game
name: Game Resource Update
on:
schedule:
@@ -12,11 +12,12 @@ on:
jobs:
clone-resources-official:
name: Download Official Resources
if: github.repository_owner == 'MaaAssistantArknights'
runs-on: ubuntu-latest
steps:
- name: Clone ArknightsGameResource for Official
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
show-progress: false
repository: yuanyan3060/ArknightsGameResource
@@ -35,19 +36,20 @@ jobs:
/gamedata/excel/roguelike_topic_table.json
/gamedata/excel/activity_table.json
- name: Upload Official
uses: actions/upload-artifact@v4
- name: Upload Official resources
uses: actions/upload-artifact@v6
with:
name: official
path: ./Official
compression-level: 0
clone-resources-overseas:
name: Download Overseas Resources
if: github.repository_owner == 'MaaAssistantArknights'
runs-on: ubuntu-latest
steps:
- name: Clone ArknightsGameResource_Yostar for Overseas
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
show-progress: false
repository: ArknightsAssets/ArknightsGamedata
@@ -77,25 +79,25 @@ jobs:
/kr/gamedata/excel/roguelike_topic_table.json
/kr/gamedata/excel/activity_table.json
- name: Upload Official
uses: actions/upload-artifact@v4
- name: Upload Overseas resources
uses: actions/upload-artifact@v6
with:
name: overseas
path: ./Overseas
compression-level: 0
clone-resources-txwy:
name: Download Taiwan Resources
if: github.repository_owner == 'MaaAssistantArknights'
runs-on: ubuntu-latest
steps:
- name: Clone arknights-toolbox-update for Taiwan
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
show-progress: false
repository: arkntools/arknights-toolbox-update
ref: data-tw
repository: arkntools/arknights-data-tw-for-maa
ref: main
path: ./excel
token: ${{ secrets.ARKNTOOLS_MAA_RESOURCE_UPDATER}}
- name: Download stages.json from Penguin Stats
run: |
@@ -105,34 +107,45 @@ jobs:
parameters=("CN" "US" "JP" "KR")
pids=()
for param in "${parameters[@]}"; do
{
if curl -s -o "stages_${param}.json" "${baseUrl}${param}"; then
if curl -f -s -o "stages_${param}.json" "${baseUrl}${param}"; then
echo "Successfully fetched data for ${param}"
else
echo "Failed to fetch data for ${param}" >&2
exit 1
fi
} &
pids+=($!)
done
wait
- name: Upload Official
uses: actions/upload-artifact@v4
failed=0
for pid in "${pids[@]}"; do
if ! wait "$pid"; then
failed=1
fi
done
if [ $failed -ne 0 ]; then
echo "One or more downloads failed" >&2
exit 1
fi
- name: Upload Taiwan resources
uses: actions/upload-artifact@v6
with:
name: txwy
path: ./excel
compression-level: 0
update-game-resources:
# In case of rate limitations on the runners/instances, add dependency, by removing the comment
# needs: [clone-resources-official, clone-resources-overseas, clone-resources-txwy]
name: Update Game Resources
if: github.repository_owner == 'MaaAssistantArknights'
runs-on: windows-latest
runs-on: macos-latest
steps:
- name: Checkout MAA
uses: actions/checkout@v4
- name: Checkout repository
uses: actions/checkout@v6
with:
# TL;DR https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues/9872#issuecomment-2251378371
# actions/checkout uses ${{ secrets.GITHUB_TOKEN }} by default, meaning all steps will inherit it
@@ -140,118 +153,93 @@ jobs:
show-progress: false
fetch-depth: 3
- name: Restore ResourceUpdater.exe from cache
id: cache-resupd
uses: actions/cache/restore@v4
- name: Restore ResourceUpdater from cache
id: resupd-cache
uses: actions/cache/restore@v5
continue-on-error: true
with:
key: Resource-updater-${{ hashFiles('./tools/ResourceUpdater/main.cpp') }}
key: ResourceUpdater-${{ runner.os }}-${{ hashFiles('tools/ResourceUpdater/main.cpp') }}
path: |
./tools/ResourceUpdater/x64/Release/opencv_world4_maa.dll
./tools/ResourceUpdater/x64/Release/ResourceUpdater.exe
./tools/ResourceUpdater/libopencv_world4.4.11.0.dylib
./tools/ResourceUpdater/res_updater
- name: Fetch submodules
if: steps.resupd-cache.outputs.cache-hit != 'true'
run: |
git submodule update --init --depth 1 src/MaaUtils
- name: Cache MaaDeps
if: steps.cache-resupd.outputs.cache-hit != 'true'
id: cache-maadeps
uses: actions/cache@v4
if: steps.resupd-cache.outputs.cache-hit != 'true'
id: maadeps-cache
uses: actions/cache@v5
continue-on-error: true
with:
path: |
./MaaDeps
key: ${{ runner.os }}-x64-maadeps-${{ hashFiles('./maadeps-download.py') }}
./src/MaaUtils/MaaDeps
key: ${{ runner.os }}-arm64-maadeps-${{ hashFiles('tools/maadeps-download.py') }}
- name: Bootstrap MaaDeps
if: steps.cache-resupd.outputs.cache-hit != 'true' && steps.cache-maadeps.outputs.cache-hit != 'true'
if: steps.resupd-cache.outputs.cache-hit != 'true' && steps.maadeps-cache.outputs.cache-hit != 'true'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
python3 maadeps-download.py x64-windows
python3 tools/maadeps-download.py arm64-osx
- name: Add msbuild to PATH
if: steps.cache-resupd.outputs.cache-hit != 'true'
uses: microsoft/setup-msbuild@v2
- name: Build Resource Updater
if: steps.cache-resupd.outputs.cache-hit != 'true'
- name: Config, Build & Install ResourceUpdater
if: steps.resupd-cache.outputs.cache-hit != 'true'
run: |
MSBUILD tools/ResourceUpdater/ResourceUpdater.vcxproj /t:rebuild /p:Configuration="Release" /p:Platform="x64" /p:BuildProjectReferences=false /m
cd tools/ResourceUpdater
cmake --preset macos-arm64
cmake --build --preset macos-arm64 --parallel $(sysctl -n hw.logicalcpu)
cmake --install build --config Release
- name: Save ResourceUpdater.exe to cache
if: always() && steps.cache-resupd.outputs.cache-hit != 'true'
uses: actions/cache/save@v4
- name: Save ResourceUpdater to cache
if: always() && steps.resupd-cache.outputs.cache-hit != 'true'
uses: actions/cache/save@v5
continue-on-error: true
with:
key: Resource-updater-${{ hashFiles('./tools/ResourceUpdater/main.cpp') }}
key: ResourceUpdater-${{ runner.os }}-${{ hashFiles('tools/ResourceUpdater/main.cpp') }}
path: |
./tools/ResourceUpdater/x64/Release/opencv_world4_maa.dll
./tools/ResourceUpdater/x64/Release/ResourceUpdater.exe
./tools/ResourceUpdater/libopencv_world4.4.11.0.dylib
./tools/ResourceUpdater/res_updater
- name: Wait for resource cloning
uses: yogeshlonkar/wait-for-jobs@v0
with:
ignore-skipped: 'false'
jobs: |
Download Official Resources
Download Overseas Resources
Download Taiwan Resources
ttl: 15
- name: Download txwy
id: download-txwy
uses: actions/download-artifact@v4.1.8
continue-on-error: true
uses: actions/download-artifact@v7
with:
name: txwy
path: ./tools/ResourceUpdater/x64/Release/Overseas/tw/gamedata/excel
- name: Delay txwy
if: steps.download-txwy.outcome == 'failure'
run: |
Start-Sleep -s 20
- name: Re-download txwy
if: steps.download-txwy.outcome == 'failure'
uses: actions/download-artifact@v4.1.8
with:
name: txwy
path: ./tools/ResourceUpdater/x64/Release/Overseas/tw/gamedata/excel
path: ./tools/ResourceUpdater/Overseas/tw/gamedata/excel
- name: Download Overseas
id: download-overseas
uses: actions/download-artifact@v4.1.8
continue-on-error: true
uses: actions/download-artifact@v7
with:
name: overseas
path: ./tools/ResourceUpdater/x64/Release/Overseas
- name: Delay Overseas
if: steps.download-overseas.outcome == 'failure'
run: |
Start-Sleep -s 20
- name: Re-download Overseas
if: steps.download-overseas.outcome == 'failure'
uses: actions/download-artifact@v4.1.8
with:
name: overseas
path: ./tools/ResourceUpdater/x64/Release/Overseas
path: ./tools/ResourceUpdater/Overseas
- name: Download Official
id: download-official
uses: actions/download-artifact@v4.1.8
continue-on-error: true
uses: actions/download-artifact@v7
with:
name: official
path: ./tools/ResourceUpdater/x64/Release/Official
path: ./tools/ResourceUpdater/Official
- name: Delay Official
if: steps.download-official.outcome == 'failure'
- name: Update resources
run: |
Start-Sleep -s 20
./tools/ResourceUpdater/res_updater
- name: Re-download Official
if: steps.download-official.outcome == 'failure'
uses: actions/download-artifact@v4.1.8
with:
name: official
path: ./tools/ResourceUpdater/x64/Release/Official
- name: Run Resource Updater
run: |
./tools/ResourceUpdater/x64/Release/ResourceUpdater.exe
- name: Task Sorting
- name: Sort tasks
id: task_sorting
run: |
python3 tools/TaskSorter/TaskSorter.py
Write-Output "gitdiff=$(git diff --name-only --diff-filter=ACM 2>$null | Select-String -Pattern '\.json$' -List)" >> $env:GITHUB_OUTPUT
echo "gitdiff=$(echo $(git diff --name-only --diff-filter=ACM 2>/dev/null | grep '\.json$'))" >> $GITHUB_OUTPUT
- name: Run prettier
uses: Nerixyz/actionsx-prettier@v3-adj
@@ -260,18 +248,20 @@ jobs:
- name: Update version.json date if necessary
id: update_version
run: pwsh tools/ResourceUpdater/version.ps1
run: |
sh ./tools/ResourceUpdater/version.sh
- name: Setup python
if: steps.update_version.outputs.contains_png == 'True'
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: "3.11"
- name: Cache Python packages
- name: Cache python packages
if: always() && steps.update_version.outputs.contains_png == 'True'
id: cache_python
uses: actions/cache@v4
uses: actions/cache@v5
continue-on-error: true
with:
path: ${{ env.pythonLocation }}/Lib/site-packages
key: ${{ runner.os }}-pip-optimize-templates-${{ hashFiles('./tools/OptimizeTemplates/requirements.txt') }}
@@ -287,12 +277,12 @@ jobs:
with:
crate: oxipng
- name: Run optimize_templates
- 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: Add files to git
- name: Commit changes
if: steps.update_version.outputs.changes == 'True'
id: add_files
run: |
@@ -300,19 +290,19 @@ jobs:
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
git add .
$commit_msg = "${{ github.event.inputs.commit_message }}"
if ([string]::IsNullOrWhiteSpace($commit_msg)) {
$commit_msg = "chore: Auto Update Game Resources - $(Get-Date -Format 'yyyy-MM-dd')"
} else {
$commit_msg = $commit_msg.Trim()
}
commit_msg="${{ github.event.inputs.commit_message }}"
if [ -z "$commit_msg" ]; then
commit_msg="chore: Auto Update Game Resources - $(date '+%Y-%m-%d')"
else
commit_msg=$(echo "$commit_msg" | xargs) # Trim whitespace
fi
$run_url = "https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}"
run_url="https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}"
git commit -m "$commit_msg" -m "$run_url" -m "[skip changelog]"
if ($LASTEXITCODE -eq 0) {
Write-Output "have_commits=True" >> $env:GITHUB_OUTPUT
}
if [ $? -eq 0 ]; then
echo "have_commits=True" >> $GITHUB_OUTPUT
fi
git pull origin ${{ github.ref_name }} --rebase
@@ -323,26 +313,56 @@ jobs:
branch: ${{ github.ref }}
github_token: ${{ secrets.MAA_RESOURCE_SYNC }}
- name: Update OTA resource
if: steps.update_version.outputs.update_resources == 'True'
env:
GH_TOKEN: ${{ secrets.MISTEOWORKFLOW }}
run: |
gh workflow --repo MaaAssistantArknights/MaaRelease run update-resource.yml
# - name: Delete cache
# if: always()
# - name: Update OTA resource
# if: steps.update_version.outputs.update_resources == 'True'
# env:
# GH_TOKEN: ${{ github.token }}
# GH_TOKEN: ${{ secrets.MISTEOWORKFLOW }}
# run: |
# echo "Deleting the cache..."
# gh cache delete
# gh workflow --repo MaaAssistantArknights/MaaRelease run update-resource.yml
- name: Add cancelled status
if: steps.update_version.outputs.changes != 'True' || steps.add_files.outputs.have_commits != 'True'
uses: andymckay/cancel-action@0.5
# - name: Release # ref: https://docs.github.com/en/actions/using-workflows/triggering-a-workflow#triggering-a-workflow-from-a-workflow
# if: steps.add_files.outputs.have_commits == 'True'
# run: |
# gh workflow run release-nightly-ota -f release_body="Auto Release of Resource Updates"
# - name: Release # ref: https://docs.github.com/en/actions/using-workflows/triggering-a-workflow#triggering-a-workflow-from-a-workflow
# if: steps.add_files.outputs.have_commits == 'True'
# run: |
# gh workflow run release-nightly-ota.yml -f release_body="Auto Release of Resource Updates"
- name: Upsert failure comment (single active)
if: failure() && github.ref == 'refs/heads/dev'
run: |
run_url="${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}"
latest_id=$(gh api --paginate repos/${{ github.repository }}/issues/14493/comments | jq -r '.[] | select(.user.login=="github-actions[bot]") | .id' | tail -n 1)
if [ -n "$latest_id" ]; then
body=$(gh api repos/${{ github.repository }}/issues/comments/$latest_id --jq '.body')
if echo "$body" | grep -q '/actions/runs/'; then
# Count existing run URLs
count=$(echo "$body" | grep -o 'https://github.com/[^[:space:]]*' | wc -l)
# Collapse existing content
old_content=$(echo "$body" | sed 's|https://github.com/[^[:space:]]*|<details>\n<summary>⚠️ Previous failures ('"$count"')</summary>\n\n###### &\n\n</details>|g')
new_body="$run_url
@MistEO @ABA2396 @Constrat
$old_content"
gh api repos/${{ github.repository }}/issues/comments/$latest_id -X PATCH -f body="$new_body" || echo "Patch failed"
exit 0
fi
fi
# Create new failure comment if none suitable
gh issue comment 14493 -R ${{ github.repository }} --body "$run_url
@MistEO @ABA2396 @Constrat"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Minimize failure comment on success/cancelled
if: ${{ !failure() && github.ref == 'refs/heads/dev' }}
run: |
latest_node=$(gh api --paginate repos/${{ github.repository }}/issues/14493/comments | jq -r '.[] | select(.user.login=="github-actions[bot]") | .node_id' | tail -n 1)
if [ -n "$latest_node" ]; then
gh api graphql -f query='mutation { minimizeComment(input: {subjectId: "'"$latest_node"'", classifier: OUTDATED}) { minimizedComment { isMinimized } } }' || true
fi
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

View File

@@ -1,121 +1,127 @@
name: smoke-testing
name: Smoke Test
permissions:
contents: read
on:
push:
branches:
- "dev"
paths:
- ".github/workflows/smoke-testing.yml"
- "3rdparty/include/**"
- "cmake/**"
- "CMakeLists.txt"
- "include/**"
- "resource/**"
- "src/Cpp/**"
- "src/MaaCore/**"
- "src/SyncRes/**"
- "MAA.sln"
- "resource/**"
- "tools/maadeps-download.py"
- "tools/SmokeTesting/**"
- "!**/*.md"
pull_request:
paths:
- ".github/workflows/smoke-testing.yml"
- "3rdparty/include/**"
- "cmake/**"
- "CMakeLists.txt"
- "include/**"
- "resource/**"
- "src/Cpp/**"
- "src/MaaCore/**"
- "src/SyncRes/**"
- "MAA.sln"
- "resource/**"
- "tools/maadeps-download.py"
- "tools/SmokeTesting/**"
- "!**/*.md"
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
group: ${{ github.workflow }}-${{ github.event.pull_request.head.repo.full_name || github.repository }}-${{ github.head_ref || github.ref_name }}${{ github.ref == 'refs/heads/dev' && format('-{0}', github.sha) || '' }}
cancel-in-progress: true
jobs:
smoke-testing:
# Prevent duplicate runs on organization branches with PRs
if: github.event_name != 'pull_request' ||
github.event.pull_request.head.repo.full_name !=
github.event.pull_request.base.repo.full_name
runs-on: windows-latest
name: Run Smoke Test
runs-on: macos-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Checkout repository
uses: actions/checkout@v6
with:
show-progress: false
- name: Generate cache key
id: cache_key
continue-on-error: true
run: |
Write-Output "key=Smoke-testing-${{ hashFiles('src/Cpp/**', 'src/MaaCore/**', 'src/SyncRes/**', '3rdparty/include/**', 'include/**', 'MAA.sln') }}" >> $env:GITHUB_OUTPUT
echo "key=Smoke-testing-${{ hashFiles('src/Cpp/**', 'src/MaaCore/**', '3rdparty/include/**', 'include/**', 'cmake/**', 'CMakeLists.txt', 'tools/maadeps-download.py', 'tools/linux-toolchain-download.py') }}" >> $GITHUB_OUTPUT
- name: Restore cache smoke-testing
id: cache-exe
uses: actions/cache/restore@v4
- name: Restore cache for Smoke Test
if: ${{ steps.cache_key.outputs.key != '' }}
id: smoke-cache
uses: actions/cache/restore@v5
continue-on-error: true
with:
key: ${{ steps.cache_key.outputs.key }}
path: |
./x64/Debug/Sample.exe
./x64/Debug/fastdeploy_ppocr.dll
./x64/Debug/MaaCore.dll
./x64/Debug/onnxruntime_maa.dll
./x64/Debug/opencv_world4d_maa.dll
./install/libfastdeploy_ppocr.dylib
./install/libMaaCore.dylib
./install/libMaaUtils.dylib
./install/libonnxruntime.1.19.2.dylib
./install/libopencv_world4.4.11.0.dylib
./install/smoke_test
- name: Fetch submodules
if: steps.cache-exe.outputs.cache-hit != 'true'
if: steps.smoke-cache.outputs.cache-hit != 'true'
run: |
git submodule update --init --depth 1 3rdparty/EmulatorExtras
git submodule update --init --depth 1 src/MaaUtils
- name: Cache MaaDeps
if: steps.cache-exe.outputs.cache-hit != 'true'
id: cache-maadeps
uses: actions/cache@v4
if: steps.smoke-cache.outputs.cache-hit != 'true'
id: maadeps-cache
uses: actions/cache@v5
continue-on-error: true
with:
path: |
./MaaDeps
key: ${{ runner.os }}-x64-maadeps-${{ hashFiles('./maadeps-download.py') }}
path: ./src/MaaUtils/MaaDeps
key: ${{ runner.os }}-arm64-maadeps-${{ hashFiles('tools/maadeps-download.py') }}
- name: Bootstrap MaaDeps
if: steps.cache-exe.outputs.cache-hit != 'true' && steps.cache-maadeps.outputs.cache-hit != 'true'
if: steps.smoke-cache.outputs.cache-hit != 'true' && steps.maadeps-cache.outputs.cache-hit != 'true'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
python3 maadeps-download.py x64-windows
python3 tools/maadeps-download.py arm64-osx
- name: Add msbuild to PATH
if: steps.cache-exe.outputs.cache-hit != 'true'
uses: microsoft/setup-msbuild@v2
with:
msbuild-architecture: x64
- name: Build MaaSample
if: steps.cache-exe.outputs.cache-hit != 'true'
- name: Configure, build and install
if: steps.smoke-cache.outputs.cache-hit != 'true'
run: |
MSBUILD src/Cpp/MaaSample.slnf -t:restore,build -p:Configuration="Debug" -p:Platform="x64" -m
cmake -B build --preset smoke-test
cmake --build build --preset smoke-test --parallel $(sysctl -n hw.logicalcpu)
cmake --install build --config Debug
- name: Copy resource to build directory
if: steps.cache-exe.outputs.cache-hit == 'true'
- name: Make link to Smoke Test cache
if: steps.smoke-cache.outputs.cache-hit == 'true'
run: |
(robocopy "resource" "x64/Debug/resource" /E /XD "Arknights-Tile-Pos" /MT:4 > $null);
if ($LASTEXITCODE -lt 2) { $global:LASTEXITCODE = $null }
(robocopy "resource/Arknights-Tile-Pos" "x64/Debug/resource/Arknights-Tile-Pos" "overview.json" > $null);
if ($LASTEXITCODE -lt 2) { $global:LASTEXITCODE= $null }
ln -s "$(pwd)/resource" install/resource
- name: Run tests
run: |
pwsh tools/SmokeTesting/run_tests.ps1
sh ./tools/SmokeTesting/run_tests.sh
- name: Save cache smoke-testing (only in dev)
if: steps.cache-exe.outputs.cache-hit != 'true' && github.ref == 'refs/heads/dev'
uses: actions/cache/save@v4
- name: Save cache for Smoke Test (only in dev)
if: steps.smoke-cache.outputs.cache-hit != 'true' && github.ref == 'refs/heads/dev'
uses: actions/cache/save@v5
continue-on-error: true
with:
key: ${{ steps.cache_key.outputs.key }}
path: |
./x64/Debug/Sample.exe
./x64/Debug/fastdeploy_ppocr.dll
./x64/Debug/MaaCore.dll
./x64/Debug/onnxruntime_maa.dll
./x64/Debug/opencv_world4d_maa.dll
./install/libfastdeploy_ppocr.dylib
./install/libMaaCore.dylib
./install/libMaaUtils.dylib
./install/libonnxruntime.1.19.2.dylib
./install/libopencv_world4.4.11.0.dylib
./install/smoke_test
- name: Upload logs
if: always()
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v6
with:
name: logs
path: ./x64/Debug/debug
path: ./install/debug

View File

@@ -1,4 +1,4 @@
name: "Inactive Issues Closer"
name: Issue Staleness Management
on:
schedule:
@@ -11,6 +11,7 @@ env: # config
jobs:
stale:
name: Handle Stale Issues
if: github.repository_owner == 'MaaAssistantArknights'
runs-on: ubuntu-latest
permissions:
@@ -20,8 +21,8 @@ jobs:
pull-requests: none
contents: none
steps:
- name: Close inactive issues
uses: actions/stale@v9
- name: Handle stale issues
uses: actions/stale@v10
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-stale: ${{ env.daysBeforeStale }}

View File

@@ -1,33 +1,34 @@
name: sync-resource
name: Resource Sync
on:
push:
branches:
- dev
paths:
- "resource/**"
- ".github/workflows/sync-resource.yml"
- "resource/**"
workflow_dispatch:
jobs:
sync-resource:
name: Sync Resource to MaaResource
if: github.repository_owner == 'MaaAssistantArknights'
runs-on: ubuntu-latest
steps:
- name: Checkout MaaAssistantArknights
uses: actions/checkout@v4
- name: Checkout repository
uses: actions/checkout@v6
with:
show-progress: false
- name: Setup Git
- name: Configure git
run: |
git config --global user.name 'github-actions[bot]'
git config --global user.email 'github-actions[bot]@users.noreply.github.com'
git show -s
- name: Checkout MaaResource
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
repository: MaaAssistantArknights/MaaResource
show-progress: false
@@ -49,4 +50,3 @@ jobs:
git status
git commit -m "$commit_msg" || exit 0
git push

33
.github/workflows/update-submodules.yml vendored Normal file
View File

@@ -0,0 +1,33 @@
name: Submodule Update
on:
schedule:
- cron: "50 21 * * *" # Runs daily at 21:50 UTC (before `Release Pipeline (Nightly OTA)`)
workflow_dispatch:
jobs:
update-submodules:
name: Update Submodules
runs-on: ubuntu-latest
if: github.repository_owner == 'MaaAssistantArknights'
steps:
- name: Checkout repository
uses: actions/checkout@v6
with:
submodules: true
- name: Update submodules
run: |
git submodule update --remote src/MaaMacGui
git submodule update --remote src/maa-cli
- name: Commit and push changes
uses: actions-js/push@master
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
message: "feat: Update Submodules MaaMacGui, maa-cli
https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}
[skip changelog]"
branch: ${{ github.ref }}

View File

@@ -1,4 +1,4 @@
name: MaaWebsite Workflow
name: Documentation Site
on:
push:
@@ -8,100 +8,68 @@ on:
paths:
- ".github/workflows/website-workflow.yml"
- "docs/**"
- "website/**"
pull_request:
paths:
- ".github/workflows/website-workflow.yml"
- "docs/**"
- "website/**"
workflow_dispatch:
inputs:
deploy-to-prod-env:
description: "Deploy to production environment"
deploy-to-prod:
description: "Deploy to prod"
default: false
required: true
type: boolean
concurrency:
group: "pages"
cancel-in-progress: false
permissions:
# required for peaceiris/actions-gh-pages
contents: write
jobs:
build:
timeout-minutes: 20
name: Build and Deploy
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- name: Check out code
uses: actions/checkout@v4
- name: Checkout repository
uses: actions/checkout@v6
with:
show-progress: false
- name: Install pnpm
uses: pnpm/action-setup@v4
with:
version: 9
package_json_file: "./docs/package.json"
run_install: false
- name: Setup Node.js environment
uses: actions/setup-node@v4
- name: Setup node.js environment
uses: actions/setup-node@v6
with:
node-version: 22
node-version: 24
cache: pnpm
cache-dependency-path: "./docs/pnpm-lock.yaml"
- name: Install dependencies
- name: Install node modules
run: pnpm install --frozen-lockfile
working-directory: "./website"
working-directory: "./docs"
- name: Build
run: pnpm run build
working-directory: "./website"
working-directory: "./docs"
- name: Upload artifact to GitHub
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v6
with:
name: dist
path: "./website/dist"
path: "./docs/.vuepress/dist"
publish:
runs-on: ubuntu-latest
needs: build
if: github.event_name != 'pull_request'
steps:
- name: Download website artifacts
uses: actions/download-artifact@v4
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v4
if: github.repository_owner == 'MaaAssistantArknights' && (inputs.deploy-to-prod == true || github.ref == 'refs/heads/master')
with:
name: dist
- name: Set deployment environment
id: set-deployment-env
run: |
if [[ "${{ github.event_name }}" != "workflow_dispatch" && "${{ github.ref }}" == "refs/heads/master" ]] || [[ "${{ github.event.inputs.deploy-to-prod-env }}" == "true" ]]; then
echo "AZURE_TARGET_ENV=prod" >> $GITHUB_ENV
else
echo "AZURE_TARGET_ENV=dev" >> $GITHUB_ENV
fi
- name: Show environment
run: echo ${{ env.AZURE_TARGET_ENV }}
- name: Deploy to Azure (prod)
id: deploy-prod
uses: Azure/static-web-apps-deploy@v1
if: env.AZURE_TARGET_ENV == 'prod'
with:
azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_MAA_WEBSITE }}
repo_token: ${{ secrets.GITHUB_TOKEN }}
action: "upload"
app_location: "."
api_location: ""
skip_app_build: true
skip_api_build: true
- name: Deploy to Azure (dev)
id: deploy-dev
uses: Azure/static-web-apps-deploy@v1
if: env.AZURE_TARGET_ENV == 'dev'
with:
azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_MAA_WEBSITE }}
repo_token: ${{ secrets.GITHUB_TOKEN }}
action: "upload"
deployment_environment: dev
app_location: "."
api_location: ""
skip_app_build: true
skip_api_build: true
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: "./docs/.vuepress/dist"
publish_branch: gh-pages

26
.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 文件
@@ -451,12 +450,14 @@ tools/RoguelikeRecruitmentTool/output
# CF 活动关卡(异格夜刀),手动改的地图
/resource/Arknights-Tile-Pos/act24side_09-activities-act24side-level_act24side_09.json
/src/MaaWpfGui/FodyWeavers.xml
*.lnk
# 链接检查缓存
.lycheecache
# MaaDeps
/MaaDeps/*
MaaDeps
src/MaaUtils/*
# ResourceUpdater workflow
/original/*
@@ -467,3 +468,16 @@ Thumbs.db
# macOS Finder Shit
.DS_Store
# MaaSupportExtension config
/config/maa_pi_config.json
# build & install
build
install
# pnpm cache
.pnpm-store
# CMake user presets
CMakeUserPresets.json

3
.gitmodules vendored
View File

@@ -10,3 +10,6 @@
[submodule "3rdparty/EmulatorExtras"]
path = 3rdparty/EmulatorExtras
url = https://github.com/MaaXYZ/EmulatorExtras.git
[submodule "src/MaaUtils"]
path = src/MaaUtils
url = https://github.com/MaaXYZ/MaaUtils

View File

@@ -1,127 +0,0 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "Build Schema",
"$ref": "#/definitions/build",
"definitions": {
"build": {
"type": "object",
"properties": {
"Continue": {
"type": "boolean",
"description": "Indicates to continue a previously failed build attempt"
},
"Help": {
"type": "boolean",
"description": "Shows the help text for this build assembly"
},
"Host": {
"type": "string",
"description": "Host for execution. Default is 'automatic'",
"enum": [
"AppVeyor",
"AzurePipelines",
"Bamboo",
"Bitbucket",
"Bitrise",
"GitHubActions",
"GitLab",
"Jenkins",
"Rider",
"SpaceAutomation",
"TeamCity",
"Terminal",
"TravisCI",
"VisualStudio",
"VSCode"
]
},
"NoLogo": {
"type": "boolean",
"description": "Disables displaying the NUKE logo"
},
"Partition": {
"type": "string",
"description": "Partition to use on CI"
},
"Plan": {
"type": "boolean",
"description": "Shows the execution plan (HTML)"
},
"Profile": {
"type": "array",
"description": "Defines the profiles to load",
"items": {
"type": "string"
}
},
"Root": {
"type": "string",
"description": "Root directory during build execution"
},
"Skip": {
"type": "array",
"description": "List of targets to be skipped. Empty list skips all dependencies",
"items": {
"type": "string",
"enum": [
"Default",
"DevBuild",
"DevBuildDefault",
"DevBuildReleaseSimulation",
"ReleaseMaa",
"SetMaaChangeLog",
"SetPackageBundled",
"SetVersion",
"UseClean",
"UseCommitVersion",
"UseMaaChangeLog",
"UseMaaDevBundle",
"UseMaaRelease",
"UsePublishArtifact",
"UsePublishRelease",
"UseRsVersion",
"UseTagVersion",
"WithCompileCoreRelease",
"WithCompileWpfRelease",
"WithSyncRes"
]
}
},
"Target": {
"type": "array",
"description": "List of targets to be invoked. Default is '{default_target}'",
"items": {
"type": "string",
"enum": [
"Default",
"DevBuild",
"DevBuildDefault",
"DevBuildReleaseSimulation",
"ReleaseMaa",
"SetMaaChangeLog",
"SetPackageBundled",
"SetVersion",
"UseClean",
"UseCommitVersion",
"UseMaaChangeLog",
"UseMaaDevBundle",
"UseMaaRelease",
"UsePublishArtifact",
"UsePublishRelease",
"UseRsVersion",
"UseTagVersion",
"WithCompileCoreRelease",
"WithCompileWpfRelease",
"WithSyncRes"
]
}
},
"Verbosity": {
"type": "string",
"description": "Logging verbosity during build execution. Default is 'Normal'",
"enum": ["Minimal", "Normal", "Quiet", "Verbose"]
}
}
}
}
}

View File

@@ -1,4 +0,0 @@
{
"$schema": "./build.schema.json",
"Solution": "tools/MaaBuilder.sln"
}

View File

@@ -1,32 +1,45 @@
default_install_hook_types: [pre-commit, prepare-commit-msg]
ci:
autofix_commit_msg: "chore: Auto update by pre-commit hooks [skip changelog]"
autofix_prs: true
repos:
- repo: https://github.com/shssoichiro/oxipng
rev: v9.1.4
rev: v10.0.0
hooks:
- id: oxipng
name: PNG Image Compression
args: ["-q", "-o", "2", "-s", "--ng"]
- repo: https://github.com/pre-commit/mirrors-clang-format
rev: v20.1.0
rev: v21.1.8
hooks:
- id: clang-format
name: Clang-Format (MaaCore)
files: ^src/MaaCore/.*
args: ["--assume-filename", ".clang-format"]
- repo: https://github.com/rbubley/mirrors-prettier
rev: v3.5.3
rev: v3.7.4
hooks:
- id: prettier
files: ^((\.github/ISSUE_TEMPLATE|docs|resource|src|tools|website)/.*|\.pre-commit-config\.yaml|package-definition\.json)
name: Prettier (Config Files)
files: ^((\.github/ISSUE_TEMPLATE|resource|src|tools)/.*|\.pre-commit-config\.yaml|package-definition\.json)
types_or:
- yaml
- json
- id: prettier
name: Prettier (Documentation)
files: ^docs/.*
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.14.10
hooks:
- id: ruff-format
name: Ruff format (Python)
- repo: https://github.com/DavidAnson/markdownlint-cli2
rev: v0.17.2
rev: v0.18.1
hooks:
- id: markdownlint-cli2
name: MarkdownLint (Documentation)
files: ^docs/.*|^README\.md$
types:
- markdown
args: ["--fix", "--config", "docs/.markdownlint.yaml", "#**/node_modules"]
args: ["--fix", "--config", "docs/.markdownlint.yaml"]

View File

@@ -1,12 +1,9 @@
**/node_modules/
**/pnpm-lock.yaml
MaaDeps/
3rdparty/
src/maa-cli
src/MaaMacGui
website/
docs/
src/MaaUtils
resource/Arknights-Tile-Pos/
tools/OptimizeTemplates/optimize_templates.json

View File

@@ -12,6 +12,12 @@
"parser": "yaml",
"tabWidth": 2
}
},
{
"files": ["**/*.md"],
"options": {
"tabWidth": 2
}
}
]
}

View File

@@ -2,7 +2,8 @@
"json.schemas": [
{
"fileMatch": [
"resource/tasks.json"
"resource/tasks/**/*.json",
"resource/global/**/resource/tasks/**/*.json",
],
"url": "./docs/maa_tasks_schema.json"
}
@@ -11,5 +12,9 @@
"MaaDeps/vcpkg/buildtrees": true,
"MaaDeps/vcpkg/packages": true
},
"C_Cpp.exclusionPolicy": "checkFilesAndFolders"
"files.associations": {
"**/resource/tasks/**/*.json": "jsonc"
},
"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, +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, -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,717 +0,0 @@
// IWYU pragma: private, include <meojson/json.hpp>
#pragma once
#include <initializer_list>
#include <optional>
#include <ostream>
#include <string>
#include <tuple>
#include <vector>
#include "exception.hpp"
#include "utils.hpp"
namespace json
{
template <typename string_t>
class basic_array
{
friend class basic_value<string_t>;
friend class basic_object<string_t>;
public:
using raw_array = std::vector<basic_value<string_t>>;
using value_type = typename raw_array::value_type;
using iterator = typename raw_array::iterator;
using const_iterator = typename raw_array::const_iterator;
using reverse_iterator = typename raw_array::reverse_iterator;
using const_reverse_iterator = typename raw_array::const_reverse_iterator;
using char_t = typename string_t::value_type;
public:
basic_array() = default;
basic_array(const basic_array<string_t>& rhs) = default;
basic_array(basic_array<string_t>&& rhs) noexcept = default;
basic_array(std::initializer_list<value_type> init_list);
basic_array(typename raw_array::size_type size);
// explicit basic_array(const basic_value<string_t>& val);
// explicit basic_array(basic_value<string_t>&& val);
template <
typename collection_t,
std::enable_if_t<
_utils::is_collection<collection_t>
&& std::is_constructible_v<value_type, _utils::range_value_t<collection_t>>,
bool> = true>
basic_array(collection_t arr)
: _array_data(std::make_move_iterator(arr.begin()), std::make_move_iterator(arr.end()))
{
}
template <
typename fixed_array_t,
std::enable_if_t<_utils::is_fixed_array<fixed_array_t>, bool> = true>
basic_array(const fixed_array_t& arr)
: _array_data(arr.begin(), arr.end())
{
}
template <
typename jsonization_t,
std::enable_if_t<_utils::has_to_json_in_member<jsonization_t>::value, bool> = true>
basic_array(const jsonization_t& value)
: basic_array(value.to_json())
{
}
template <
typename jsonization_t,
std::enable_if_t<_utils::has_to_json_in_templ_spec<jsonization_t>::value, bool> = true>
basic_array(const jsonization_t& value)
: basic_array(ext::jsonization<jsonization_t>().to_json(value))
{
}
template <typename... elem_ts>
basic_array(const std::tuple<elem_ts...>& tup)
{
foreach_tuple(tup, std::make_index_sequence<std::tuple_size_v<std::tuple<elem_ts...>>>());
}
template <typename first_t, typename second_t>
basic_array(std::pair<first_t, second_t> pair)
: _array_data({ std::move(pair.first), std::move(pair.second) })
{
}
~basic_array() noexcept = default;
bool empty() const noexcept { return _array_data.empty(); }
size_t size() const noexcept { return _array_data.size(); }
bool contains(size_t pos) const { return pos < _array_data.size(); }
bool exists(size_t pos) const { return contains(pos); }
const basic_value<string_t>& at(size_t pos) const;
string_t dumps(std::optional<size_t> indent = std::nullopt) const
{
return indent ? format(*indent) : to_string();
}
string_t to_string() const;
string_t format(size_t indent = 4) const { return format(indent, 0); }
template <typename value_t>
bool all() const;
template <typename value_t, template <typename...> typename collection_t = std::vector>
collection_t<value_t> as_collection() const;
template <
typename value_t,
size_t Size,
template <typename, size_t> typename fixed_array_t = std::array>
fixed_array_t<value_t, Size> as_fixed_array() const;
template <typename... elem_ts>
std::tuple<elem_ts...> as_tuple() const;
template <typename first_t, typename second_t>
std::pair<first_t, second_t> as_pair() const;
// Usage: get(key_1, key_2, ..., default_value);
template <typename... key_then_default_value_t>
auto get(key_then_default_value_t&&... keys_then_default_value) const;
template <typename value_t = basic_value<string_t>>
std::optional<value_t> find(size_t pos) const;
template <typename... args_t>
decltype(auto) emplace_back(args_t&&... args);
template <typename... args_t>
decltype(auto) push_back(args_t&&... args);
void clear() noexcept;
bool erase(size_t pos);
bool erase(iterator iter);
iterator begin() noexcept;
iterator end() noexcept;
const_iterator begin() const noexcept;
const_iterator end() const noexcept;
const_iterator cbegin() const noexcept;
const_iterator cend() const noexcept;
reverse_iterator rbegin() noexcept;
reverse_iterator rend() noexcept;
const_reverse_iterator rbegin() const noexcept;
const_reverse_iterator rend() const noexcept;
const_reverse_iterator crbegin() const noexcept;
const_reverse_iterator crend() const noexcept;
const basic_value<string_t>& operator[](size_t pos) const;
basic_value<string_t>& operator[](size_t pos);
basic_array<string_t> operator+(const basic_array<string_t>& rhs) const&;
basic_array<string_t> operator+(basic_array<string_t>&& rhs) const&;
basic_array<string_t> operator+(const basic_array<string_t>& rhs) &&;
basic_array<string_t> operator+(basic_array<string_t>&& rhs) &&;
basic_array<string_t>& operator+=(const basic_array<string_t>& rhs);
basic_array<string_t>& operator+=(basic_array<string_t>&& rhs);
basic_array<string_t>& operator=(const basic_array<string_t>&) = default;
basic_array<string_t>& operator=(basic_array<string_t>&&) noexcept = default;
template <
typename value_t,
std::enable_if_t<std::is_convertible_v<value_t, basic_array<string_t>>, bool> = true>
basic_array<string_t>& operator=(value_t rhs)
{
return *this = basic_array<string_t>(std::move(rhs));
}
bool operator==(const basic_array<string_t>& rhs) const;
bool operator!=(const basic_array<string_t>& rhs) const { return !(*this == rhs); }
template <
typename value_t,
template <typename...> typename collection_t = std::vector,
std::enable_if_t<_utils::is_collection<collection_t<value_t>>, bool> = true>
explicit operator collection_t<value_t>() const
{
return as_collection<value_t, collection_t>();
}
template <
typename value_t,
size_t Size,
template <typename, size_t> typename fixed_array_t = std::array,
std::enable_if_t<_utils::is_fixed_array<fixed_array_t<value_t, Size>>, bool> = true>
explicit operator fixed_array_t<value_t, Size>() const
{
return as_fixed_array<value_t, Size, fixed_array_t>();
}
template <typename... elem_ts>
explicit operator std::tuple<elem_ts...>() const
{
return as_tuple<elem_ts...>();
}
template <typename elem1_t, typename elem2_t>
explicit operator std::pair<elem1_t, elem2_t>() const
{
return as_pair<elem1_t, elem2_t>();
}
template <
typename jsonization_t,
std::enable_if_t<_utils::has_from_json_in_member<jsonization_t, string_t>::value, bool> =
true>
explicit operator jsonization_t() const
{
jsonization_t dst {};
if (!dst.from_json(*this)) {
throw exception("Wrong JSON");
}
return dst;
}
template <
typename jsonization_t,
std::enable_if_t<
_utils::has_from_json_in_templ_spec<jsonization_t, string_t>::value,
bool> = true>
explicit operator jsonization_t() const
{
jsonization_t dst {};
if (!ext::jsonization<jsonization_t>().from_json(*this, dst)) {
throw exception("Wrong JSON");
}
return dst;
}
private:
template <typename... key_then_default_value_t, size_t... keys_indexes_t>
auto
get(std::tuple<key_then_default_value_t...> keys_then_default_value,
std::index_sequence<keys_indexes_t...>) const;
template <typename value_t, typename... rest_keys_t>
auto get_helper(const value_t& default_value, size_t pos, rest_keys_t&&... rest) const;
template <typename value_t>
auto get_helper(const value_t& default_value, size_t pos) const;
template <typename tuple_t>
tuple_t as_tuple_templ() const;
template <size_t index, typename tuple_t>
void set_tuple(tuple_t& tup) const;
template <typename Tuple, std::size_t... Is>
void foreach_tuple(const Tuple& t, std::index_sequence<Is...>)
{
(_array_data.emplace_back(std::get<Is>(t)), ...);
}
string_t format(size_t indent, size_t indent_times) const;
private:
raw_array _array_data;
};
template <typename string_t>
inline basic_array<string_t>::basic_array(std::initializer_list<value_type> init_list)
: _array_data(init_list)
{
}
template <typename string_t>
inline basic_array<string_t>::basic_array(typename raw_array::size_type size)
: _array_data(size)
{
}
// template <typename string_t>
// inline basic_array<string_t>::basic_array(const basic_value<string_t>& val) :
// basic_array<string_t>(val.as_array())
//{}
//
// template <typename string_t>
// inline basic_array<string_t>::basic_array(basic_value<string_t>&& val)
// : basic_array<string_t>(std::move(val.as_array()))
//{}
template <typename string_t>
inline void basic_array<string_t>::clear() noexcept
{
_array_data.clear();
}
template <typename string_t>
inline bool basic_array<string_t>::erase(size_t pos)
{
return erase(_array_data.begin() + pos);
}
template <typename string_t>
inline bool basic_array<string_t>::erase(iterator iter)
{
return _array_data.erase(iter) != _array_data.end();
}
template <typename string_t>
template <typename... args_t>
inline decltype(auto) basic_array<string_t>::emplace_back(args_t&&... args)
{
static_assert(
std::is_constructible_v<value_type, args_t...>,
"Parameter can't be used to construct a raw_array::value_type");
return _array_data.emplace_back(std::forward<args_t>(args)...);
}
template <typename string_t>
template <typename... args_t>
inline decltype(auto) basic_array<string_t>::push_back(args_t&&... args)
{
return emplace_back(std::forward<args_t>(args)...);
}
template <typename string_t>
inline const basic_value<string_t>& basic_array<string_t>::at(size_t pos) const
{
return _array_data.at(pos);
}
template <typename string_t>
inline string_t basic_array<string_t>::to_string() const
{
string_t str { '[' };
for (auto iter = _array_data.cbegin(); iter != _array_data.cend();) {
str += iter->to_string();
if (++iter != _array_data.cend()) {
str += ',';
}
}
str += char_t(']');
return str;
}
template <typename string_t>
inline string_t basic_array<string_t>::format(size_t indent, size_t indent_times) const
{
const string_t tail_indent(indent * indent_times, ' ');
const string_t body_indent(indent * (indent_times + 1), ' ');
string_t str { '[', '\n' };
for (auto iter = _array_data.cbegin(); iter != _array_data.cend();) {
str += body_indent + iter->format(indent, indent_times + 1);
if (++iter != _array_data.cend()) {
str += ',';
}
str += '\n';
}
str += tail_indent + char_t(']');
return str;
}
template <typename string_t>
template <typename value_t>
inline bool basic_array<string_t>::all() const
{
for (const auto& elem : _array_data) {
if (!elem.template is<value_t>()) {
return false;
}
}
return true;
}
namespace _as_collection_helper
{
template <typename T>
class has_emplace_back
{
template <typename U>
static auto test(int) -> decltype(std::declval<U>().emplace_back(), std::true_type());
template <typename U>
static std::false_type test(...);
public:
static constexpr bool value = decltype(test<T>(0))::value;
};
}
template <typename string_t>
template <typename value_t, template <typename...> typename collection_t>
inline collection_t<value_t> basic_array<string_t>::as_collection() const
{
collection_t<value_t> result;
if constexpr (_as_collection_helper::has_emplace_back<collection_t<value_t>>::value) {
for (const auto& elem : _array_data) {
result.emplace_back(elem.template as<value_t>());
}
}
else {
for (const auto& elem : _array_data) {
result.emplace(elem.template as<value_t>());
}
}
return result;
}
template <typename string_t>
template <typename value_t, size_t Size, template <typename, size_t> typename fixed_array_t>
inline fixed_array_t<value_t, Size> basic_array<string_t>::as_fixed_array() const
{
if (size() != Size) {
throw exception("Wrong array size");
}
fixed_array_t<value_t, Size> result;
for (size_t i = 0; i < Size; ++i) {
result.at(i) = _array_data.at(i).template as<value_t>();
}
return result;
}
template <typename string_t>
template <size_t index, typename tuple_t>
inline void basic_array<string_t>::set_tuple(tuple_t& tup) const
{
using elem_t = std::tuple_element_t<index, tuple_t>;
if constexpr (index > 0) {
set_tuple<index - 1>(tup);
}
std::get<index>(tup) = static_cast<elem_t>(at(index));
}
template <typename string_t>
template <typename tuple_t>
inline tuple_t basic_array<string_t>::as_tuple_templ() const
{
constexpr size_t tuple_size = std::tuple_size_v<tuple_t>;
if (size() != tuple_size) {
throw exception("Wrong array size");
}
tuple_t result;
set_tuple<tuple_size - 1>(result);
return result;
}
template <typename string_t>
template <typename... elem_ts>
inline std::tuple<elem_ts...> basic_array<string_t>::as_tuple() const
{
return as_tuple_templ<std::tuple<elem_ts...>>();
}
template <typename string_t>
template <typename first_t, typename second_t>
inline std::pair<first_t, second_t> basic_array<string_t>::as_pair() const
{
return as_tuple_templ<std::pair<first_t, second_t>>();
}
template <typename string_t>
template <typename... key_then_default_value_t>
inline auto basic_array<string_t>::get(key_then_default_value_t&&... keys_then_default_value) const
{
return get(
std::forward_as_tuple(keys_then_default_value...),
std::make_index_sequence<sizeof...(keys_then_default_value) - 1> {});
}
template <typename string_t>
template <typename... key_then_default_value_t, size_t... keys_indexes_t>
inline auto basic_array<string_t>::get(
std::tuple<key_then_default_value_t...> keys_then_default_value,
std::index_sequence<keys_indexes_t...>) const
{
constexpr unsigned long default_value_index = sizeof...(key_then_default_value_t) - 1;
return get_helper(
std::get<default_value_index>(keys_then_default_value),
std::get<keys_indexes_t>(keys_then_default_value)...);
}
template <typename string_t>
template <typename value_t, typename... rest_keys_t>
inline auto basic_array<string_t>::get_helper(
const value_t& default_value,
size_t pos,
rest_keys_t&&... rest) const
{
constexpr bool is_json = std::is_same_v<basic_value<string_t>, value_t>
|| std::is_same_v<basic_array<string_t>, value_t>
|| std::is_same_v<basic_object<string_t>, value_t>;
constexpr bool is_string = std::is_constructible_v<string_t, value_t> && !is_json;
if (!contains(pos)) {
if constexpr (is_string) {
return string_t(default_value);
}
else {
return value_t(default_value);
}
}
return at(pos).get_helper(default_value, std::forward<rest_keys_t>(rest)...);
}
template <typename string_t>
template <typename value_t>
inline auto basic_array<string_t>::get_helper(const value_t& default_value, size_t pos) const
{
constexpr bool is_json = std::is_same_v<basic_value<string_t>, value_t>
|| std::is_same_v<basic_array<string_t>, value_t>
|| std::is_same_v<basic_object<string_t>, value_t>;
constexpr bool is_string = std::is_constructible_v<string_t, value_t> && !is_json;
if (!contains(pos)) {
if constexpr (is_string) {
return string_t(default_value);
}
else {
return value_t(default_value);
}
}
auto val = _array_data.at(pos);
if (val.template is<value_t>()) {
if constexpr (is_string) {
return val.template as<string_t>();
}
else {
return val.template as<value_t>();
}
}
else {
if constexpr (is_string) {
return string_t(default_value);
}
else {
return value_t(default_value);
}
}
}
template <typename string_t>
template <typename value_t>
inline std::optional<value_t> basic_array<string_t>::find(size_t pos) const
{
if (!contains(pos)) {
return std::nullopt;
}
const auto& val = _array_data.at(pos);
return val.template is<value_t>() ? std::optional<value_t>(val.template as<value_t>())
: std::nullopt;
}
template <typename string_t>
inline typename basic_array<string_t>::iterator basic_array<string_t>::begin() noexcept
{
return _array_data.begin();
}
template <typename string_t>
inline typename basic_array<string_t>::iterator basic_array<string_t>::end() noexcept
{
return _array_data.end();
}
template <typename string_t>
inline typename basic_array<string_t>::const_iterator basic_array<string_t>::begin() const noexcept
{
return _array_data.begin();
}
template <typename string_t>
inline typename basic_array<string_t>::const_iterator basic_array<string_t>::end() const noexcept
{
return _array_data.end();
}
template <typename string_t>
inline typename basic_array<string_t>::const_iterator basic_array<string_t>::cbegin() const noexcept
{
return _array_data.cbegin();
}
template <typename string_t>
inline typename basic_array<string_t>::const_iterator basic_array<string_t>::cend() const noexcept
{
return _array_data.cend();
}
template <typename string_t>
inline typename basic_array<string_t>::reverse_iterator basic_array<string_t>::rbegin() noexcept
{
return _array_data.rbegin();
}
template <typename string_t>
inline typename basic_array<string_t>::reverse_iterator basic_array<string_t>::rend() noexcept
{
return _array_data.rend();
}
template <typename string_t>
inline typename basic_array<string_t>::const_reverse_iterator
basic_array<string_t>::rbegin() const noexcept
{
return _array_data.rbegin();
}
template <typename string_t>
inline typename basic_array<string_t>::const_reverse_iterator
basic_array<string_t>::rend() const noexcept
{
return _array_data.rend();
}
template <typename string_t>
inline typename basic_array<string_t>::const_reverse_iterator
basic_array<string_t>::crbegin() const noexcept
{
return _array_data.crbegin();
}
template <typename string_t>
inline typename basic_array<string_t>::const_reverse_iterator
basic_array<string_t>::crend() const noexcept
{
return _array_data.crend();
}
template <typename string_t>
inline basic_value<string_t>& basic_array<string_t>::operator[](size_t pos)
{
return _array_data[pos];
}
template <typename string_t>
inline const basic_value<string_t>& basic_array<string_t>::operator[](size_t pos) const
{
return _array_data[pos];
}
template <typename string_t>
inline basic_array<string_t>
basic_array<string_t>::operator+(const basic_array<string_t>& rhs) const&
{
basic_array<string_t> temp = *this;
temp._array_data.insert(_array_data.end(), rhs.begin(), rhs.end());
return temp;
}
template <typename string_t>
inline basic_array<string_t> basic_array<string_t>::operator+(basic_array<string_t>&& rhs) const&
{
basic_array<string_t> temp = *this;
temp._array_data.insert(
_array_data.end(),
std::make_move_iterator(rhs.begin()),
std::make_move_iterator(rhs.end()));
return temp;
}
template <typename string_t>
inline basic_array<string_t> basic_array<string_t>::operator+(const basic_array<string_t>& rhs) &&
{
_array_data.insert(_array_data.end(), rhs.begin(), rhs.end());
return std::move(*this);
}
template <typename string_t>
inline basic_array<string_t> basic_array<string_t>::operator+(basic_array<string_t>&& rhs) &&
{
_array_data.insert(
_array_data.end(),
std::make_move_iterator(rhs.begin()),
std::make_move_iterator(rhs.end()));
return std::move(*this);
}
template <typename string_t>
inline basic_array<string_t>& basic_array<string_t>::operator+=(const basic_array<string_t>& rhs)
{
_array_data.insert(_array_data.end(), rhs.begin(), rhs.end());
return *this;
}
template <typename string_t>
inline basic_array<string_t>& basic_array<string_t>::operator+=(basic_array<string_t>&& rhs)
{
_array_data.insert(
_array_data.end(),
std::make_move_iterator(rhs.begin()),
std::make_move_iterator(rhs.end()));
return *this;
}
template <typename string_t>
inline bool basic_array<string_t>::operator==(const basic_array<string_t>& rhs) const
{
return _array_data == rhs._array_data;
}
template <
typename ostream_t,
typename string_t,
typename std_ostream_t = std::basic_ostream<
typename string_t::value_type,
std::char_traits<typename string_t::value_type>>,
typename enable_t = std::enable_if_t<
std::is_same_v<std_ostream_t, ostream_t> || std::is_base_of_v<std_ostream_t, ostream_t>>>
ostream_t& operator<<(ostream_t& out, const basic_array<string_t>& arr)
{
out << arr.format();
return out;
}
} // namespace json

View File

@@ -1,35 +0,0 @@
// IWYU pragma: private, include <meojson/json.hpp>
#pragma once
#include <exception>
#include <string>
namespace json
{
class exception : public std::exception
{
public:
exception() = default;
exception(const std::string& msg)
: _what(msg)
{
}
exception(const exception&) = default;
exception& operator=(const exception&) = default;
exception(exception&&) = default;
exception& operator=(exception&&) = default;
virtual ~exception() noexcept override = default;
virtual const char* what() const noexcept override
{
return _what.empty() ? "Unknown exception" : _what.c_str();
}
protected:
std::string _what;
};
}

View File

@@ -1,534 +0,0 @@
// IWYU pragma: private, include <meojson/json.hpp>
#pragma once
#include <initializer_list>
#include <map>
#include <optional>
#include <ostream>
#include <string>
#include <tuple>
#include "exception.hpp"
#include "utils.hpp"
namespace json
{
template <typename string_t>
class basic_object
{
friend class basic_value<string_t>;
friend class basic_array<string_t>;
public:
using raw_object = std::map<string_t, basic_value<string_t>>;
using key_type = typename raw_object::key_type;
using mapped_type = typename raw_object::mapped_type;
using value_type = typename raw_object::value_type;
using iterator = typename raw_object::iterator;
using const_iterator = typename raw_object::const_iterator;
using char_t = typename string_t::value_type;
public:
basic_object() = default;
basic_object(const basic_object<string_t>& rhs) = default;
basic_object(basic_object<string_t>&& rhs) noexcept = default;
basic_object(std::initializer_list<value_type> init_list);
// explicit basic_object(const basic_value<string_t>& val);
// explicit basic_object(basic_value<string_t>&& val);
template <
typename map_t,
std::enable_if_t<
_utils::is_map<map_t>
&& std::is_constructible_v<value_type, _utils::range_value_t<map_t>>,
bool> = true>
basic_object(map_t map)
: _object_data(std::make_move_iterator(map.begin()), std::make_move_iterator(map.end()))
{
}
template <
typename jsonization_t,
std::enable_if_t<_utils::has_to_json_in_member<jsonization_t>::value, bool> = true>
basic_object(const jsonization_t& value)
: basic_object(value.to_json())
{
}
template <
typename jsonization_t,
std::enable_if_t<_utils::has_to_json_in_templ_spec<jsonization_t>::value, bool> = true>
basic_object(const jsonization_t& value)
: basic_object(ext::jsonization<jsonization_t>().to_json(value))
{
}
~basic_object() = default;
bool empty() const noexcept { return _object_data.empty(); }
size_t size() const noexcept { return _object_data.size(); }
bool contains(const string_t& key) const;
bool exists(const string_t& key) const { return contains(key); }
const basic_value<string_t>& at(const string_t& key) const;
string_t dumps(std::optional<size_t> indent = std::nullopt) const
{
return indent ? format(*indent) : to_string();
}
string_t to_string() const;
string_t format(size_t indent = 4) const { return format(indent, 0); }
template <typename value_t>
bool all() const;
template <typename value_t, template <typename...> typename map_t = std::map>
map_t<string_t, value_t> as_map() const;
// Usage: get(key_1, key_2, ..., default_value);
template <typename... key_then_default_value_t>
auto get(key_then_default_value_t&&... keys_then_default_value) const;
template <typename value_t = basic_value<string_t>>
std::optional<value_t> find(const string_t& key) const;
template <typename... args_t>
decltype(auto) emplace(args_t&&... args);
template <typename... args_t>
decltype(auto) insert(args_t&&... args);
void clear() noexcept;
bool erase(const string_t& key);
bool erase(iterator iter);
iterator begin() noexcept;
iterator end() noexcept;
const_iterator begin() const noexcept;
const_iterator end() const noexcept;
const_iterator cbegin() const noexcept;
const_iterator cend() const noexcept;
basic_value<string_t>& operator[](const string_t& key);
basic_value<string_t>& operator[](string_t&& key);
basic_object<string_t> operator|(const basic_object<string_t>& rhs) const&;
basic_object<string_t> operator|(basic_object<string_t>&& rhs) const&;
basic_object<string_t> operator|(const basic_object<string_t>& rhs) &&;
basic_object<string_t> operator|(basic_object<string_t>&& rhs) &&;
basic_object<string_t>& operator|=(const basic_object<string_t>& rhs);
basic_object<string_t>& operator|=(basic_object<string_t>&& rhs);
basic_object<string_t>& operator=(const basic_object<string_t>&) = default;
basic_object<string_t>& operator=(basic_object<string_t>&&) = default;
template <
typename value_t,
std::enable_if_t<std::is_convertible_v<value_t, basic_object<string_t>>, bool> = true>
basic_object<string_t>& operator=(value_t rhs)
{
return *this = basic_object<string_t>(std::move(rhs));
}
bool operator==(const basic_object<string_t>& rhs) const;
bool operator!=(const basic_object<string_t>& rhs) const { return !(*this == rhs); }
template <
typename value_t,
template <typename...> typename map_t = std::map,
std::enable_if_t<_utils::is_map<map_t<string_t, value_t>>, bool> = true>
explicit operator map_t<string_t, value_t>() const
{
return as_map<value_t, map_t>();
}
template <
typename jsonization_t,
std::enable_if_t<_utils::has_from_json_in_member<jsonization_t, string_t>::value, bool> =
true>
explicit operator jsonization_t() const
{
jsonization_t dst {};
if (!dst.from_json(*this)) {
throw exception("Wrong JSON");
}
return dst;
}
template <
typename jsonization_t,
std::enable_if_t<
_utils::has_from_json_in_templ_spec<jsonization_t, string_t>::value,
bool> = true>
explicit operator jsonization_t() const
{
jsonization_t dst {};
if (!ext::jsonization<jsonization_t>().from_json(*this, dst)) {
throw exception("Wrong JSON");
}
return dst;
}
private:
template <typename... key_then_default_value_t, size_t... keys_indexes_t>
auto
get(std::tuple<key_then_default_value_t...> keys_then_default_value,
std::index_sequence<keys_indexes_t...>) const;
template <typename value_t, typename... rest_keys_t>
auto get_helper(const value_t& default_value, const string_t& key, rest_keys_t&&... rest) const;
template <typename value_t>
auto get_helper(const value_t& default_value, const string_t& key) const;
string_t format(size_t indent, size_t indent_times) const;
private:
raw_object _object_data;
};
template <typename string_t>
inline basic_object<string_t>::basic_object(std::initializer_list<value_type> init_list)
: _object_data(
std::make_move_iterator(init_list.begin()),
std::make_move_iterator(init_list.end()))
{
}
// template <typename string_t>
// inline basic_object<string_t>::basic_object(const basic_value<string_t>& val) :
// basic_object<string_t>(val.as_object())
//{}
//
// template <typename string_t>
// inline basic_object<string_t>::basic_object(basic_value<string_t>&& val)
// : basic_object<string_t>(std::move(val.as_object()))
//{}
template <typename string_t>
inline bool basic_object<string_t>::contains(const string_t& key) const
{
return _object_data.find(key) != _object_data.cend();
}
template <typename string_t>
inline const basic_value<string_t>& basic_object<string_t>::at(const string_t& key) const
{
return _object_data.at(key);
}
template <typename string_t>
inline void basic_object<string_t>::clear() noexcept
{
_object_data.clear();
}
template <typename string_t>
inline bool basic_object<string_t>::erase(const string_t& key)
{
return _object_data.erase(key) > 0 ? true : false;
}
template <typename string_t>
inline bool basic_object<string_t>::erase(iterator iter)
{
return _object_data.erase(iter) != _object_data.end();
}
template <typename string_t>
template <typename... args_t>
inline decltype(auto) basic_object<string_t>::emplace(args_t&&... args)
{
static_assert(
std::is_constructible_v<value_type, args_t...>,
"Parameter can't be used to construct a raw_object::value_type");
return _object_data.insert_or_assign(std::forward<args_t>(args)...);
}
template <typename string_t>
template <typename... args_t>
inline decltype(auto) basic_object<string_t>::insert(args_t&&... args)
{
return emplace(std::forward<args_t>(args)...);
}
template <typename string_t>
inline string_t basic_object<string_t>::to_string() const
{
string_t str { '{' };
for (auto iter = _object_data.cbegin(); iter != _object_data.cend();) {
const auto& [key, val] = *iter;
str +=
char_t('"') + _utils::unescape_string(key) + string_t { '\"', ':' } + val.to_string();
if (++iter != _object_data.cend()) {
str += ',';
}
}
str += char_t('}');
return str;
}
template <typename string_t>
inline string_t basic_object<string_t>::format(size_t indent, size_t indent_times) const
{
const string_t tail_indent(indent * indent_times, ' ');
const string_t body_indent(indent * (indent_times + 1), ' ');
string_t str { '{', '\n' };
for (auto iter = _object_data.cbegin(); iter != _object_data.cend();) {
const auto& [key, val] = *iter;
str += body_indent + char_t('"') + _utils::unescape_string(key)
+ string_t { '\"', ':', ' ' } + val.format(indent, indent_times + 1);
if (++iter != _object_data.cend()) {
str += ',';
}
str += '\n';
}
str += tail_indent + char_t('}');
return str;
}
template <typename string_t>
template <typename value_t>
inline bool basic_object<string_t>::all() const
{
for (const auto& [_, val] : _object_data) {
if (!val.template is<value_t>()) {
return false;
}
}
return true;
}
template <typename string_t>
template <typename value_t, template <typename...> typename map_t>
inline map_t<string_t, value_t> basic_object<string_t>::as_map() const
{
map_t<string_t, value_t> result;
for (const auto& [key, val] : _object_data) {
result.emplace(key, val.template as<value_t>());
}
return result;
}
template <typename string_t>
template <typename... key_then_default_value_t>
inline auto basic_object<string_t>::get(key_then_default_value_t&&... keys_then_default_value) const
{
return get(
std::forward_as_tuple(keys_then_default_value...),
std::make_index_sequence<sizeof...(keys_then_default_value) - 1> {});
}
template <typename string_t>
template <typename... key_then_default_value_t, size_t... keys_indexes_t>
inline auto basic_object<string_t>::get(
std::tuple<key_then_default_value_t...> keys_then_default_value,
std::index_sequence<keys_indexes_t...>) const
{
constexpr unsigned long default_value_index = sizeof...(key_then_default_value_t) - 1;
return get_helper(
std::get<default_value_index>(keys_then_default_value),
std::get<keys_indexes_t>(keys_then_default_value)...);
}
template <typename string_t>
template <typename value_t, typename... rest_keys_t>
inline auto basic_object<string_t>::get_helper(
const value_t& default_value,
const string_t& key,
rest_keys_t&&... rest) const
{
constexpr bool is_json = std::is_same_v<basic_value<string_t>, value_t>
|| std::is_same_v<basic_array<string_t>, value_t>
|| std::is_same_v<basic_object<string_t>, value_t>;
constexpr bool is_string = std::is_constructible_v<string_t, value_t> && !is_json;
if (!contains(key)) {
if constexpr (is_string) {
return string_t(default_value);
}
else {
return value_t(default_value);
}
}
return at(key).get_helper(default_value, std::forward<rest_keys_t>(rest)...);
}
template <typename string_t>
template <typename value_t>
inline auto
basic_object<string_t>::get_helper(const value_t& default_value, const string_t& key) const
{
constexpr bool is_json = std::is_same_v<basic_value<string_t>, value_t>
|| std::is_same_v<basic_array<string_t>, value_t>
|| std::is_same_v<basic_object<string_t>, value_t>;
constexpr bool is_string = std::is_constructible_v<string_t, value_t> && !is_json;
if (!contains(key)) {
if constexpr (is_string) {
return string_t(default_value);
}
else {
return value_t(default_value);
}
}
auto val = _object_data.at(key);
if (val.template is<value_t>()) {
if constexpr (is_string) {
return val.template as<string_t>();
}
else {
return val.template as<value_t>();
}
}
else {
if constexpr (is_string) {
return string_t(default_value);
}
else {
return value_t(default_value);
}
}
}
template <typename string_t>
template <typename value_t>
inline std::optional<value_t> basic_object<string_t>::find(const string_t& key) const
{
auto iter = _object_data.find(key);
if (iter == _object_data.end()) {
return std::nullopt;
}
const auto& val = iter->second;
return val.template is<value_t>() ? std::optional<value_t>(val.template as<value_t>())
: std::nullopt;
}
template <typename string_t>
inline typename basic_object<string_t>::iterator basic_object<string_t>::begin() noexcept
{
return _object_data.begin();
}
template <typename string_t>
inline typename basic_object<string_t>::iterator basic_object<string_t>::end() noexcept
{
return _object_data.end();
}
template <typename string_t>
inline typename basic_object<string_t>::const_iterator
basic_object<string_t>::begin() const noexcept
{
return _object_data.begin();
}
template <typename string_t>
inline typename basic_object<string_t>::const_iterator basic_object<string_t>::end() const noexcept
{
return _object_data.end();
}
template <typename string_t>
inline typename basic_object<string_t>::const_iterator
basic_object<string_t>::cbegin() const noexcept
{
return _object_data.cbegin();
}
template <typename string_t>
inline typename basic_object<string_t>::const_iterator basic_object<string_t>::cend() const noexcept
{
return _object_data.cend();
}
template <typename string_t>
inline basic_value<string_t>& basic_object<string_t>::operator[](const string_t& key)
{
return _object_data[key];
}
template <typename string_t>
inline basic_value<string_t>& basic_object<string_t>::operator[](string_t&& key)
{
return _object_data[std::move(key)];
}
template <typename string_t>
inline basic_object<string_t>
basic_object<string_t>::operator|(const basic_object<string_t>& rhs) const&
{
basic_object<string_t> temp = *this;
temp._object_data.insert(rhs.begin(), rhs.end());
return temp;
}
template <typename string_t>
inline basic_object<string_t> basic_object<string_t>::operator|(basic_object<string_t>&& rhs) const&
{
basic_object<string_t> temp = *this;
// temp._object_data.merge(std::move(rhs._object_data));
temp._object_data.insert(
std::make_move_iterator(rhs.begin()),
std::make_move_iterator(rhs.end()));
return temp;
}
template <typename string_t>
inline basic_object<string_t>
basic_object<string_t>::operator|(const basic_object<string_t>& rhs) &&
{
_object_data.insert(rhs.begin(), rhs.end());
return std::move(*this);
}
template <typename string_t>
inline basic_object<string_t> basic_object<string_t>::operator|(basic_object<string_t>&& rhs) &&
{
//_object_data.merge(std::move(rhs._object_data));
_object_data.insert(std::make_move_iterator(rhs.begin()), std::make_move_iterator(rhs.end()));
return std::move(*this);
}
template <typename string_t>
inline basic_object<string_t>& basic_object<string_t>::operator|=(const basic_object<string_t>& rhs)
{
_object_data.insert(rhs.begin(), rhs.end());
return *this;
}
template <typename string_t>
inline basic_object<string_t>& basic_object<string_t>::operator|=(basic_object<string_t>&& rhs)
{
_object_data.insert(std::make_move_iterator(rhs.begin()), std::make_move_iterator(rhs.end()));
return *this;
}
template <typename string_t>
inline bool basic_object<string_t>::operator==(const basic_object<string_t>& rhs) const
{
return _object_data == rhs._object_data;
}
template <
typename ostream_t,
typename string_t,
typename std_ostream_t = std::basic_ostream<
typename string_t::value_type,
std::char_traits<typename string_t::value_type>>,
typename enable_t = std::enable_if_t<
std::is_same_v<std_ostream_t, ostream_t> || std::is_base_of_v<std_ostream_t, ostream_t>>>
ostream_t& operator<<(ostream_t& out, const basic_object<string_t>& obj)
{
out << obj.format();
return out;
}
} // namespace json

View File

@@ -1,207 +0,0 @@
// IWYU pragma: private, include <meojson/json.hpp>
#pragma once
#include <type_traits>
#include "types.hpp"
#include "utils.hpp"
namespace json
{
namespace _serialization_helper
{
template <typename in_t, typename serializer_t>
class is_serializable
{
template <typename U>
static auto test(int)
-> decltype(std::declval<serializer_t>()(std::declval<U>()), std::true_type());
template <typename U>
static std::false_type test(...);
public:
static constexpr bool value = decltype(test<in_t>(0))::value;
};
struct empty_serializer
{
// sample:
// json::value operator()(const type_1&) const { return ...; }
// json::value operator()(const type_2&) const { return ...; }
// json::value operator()(const type_3&) const { return ...; }
};
template <typename T>
void unable_to_serialize()
{
static_assert(
!sizeof(T),
"Unable to serialize T. "
#ifdef _MSC_VER
"See T below: " __FUNCSIG__
#else
// "See T below: " __PRETTY_FUNCTION__
#endif
);
}
}
namespace _serialization_helper
{
template <typename out_t, typename deserializer_t, typename string_t = default_string_t>
class is_deserializable
{
template <typename U>
static auto test(int)
-> decltype(std::declval<deserializer_t>()(std::declval<basic_value<string_t>>(), std::declval<U&>()), std::true_type());
template <typename U>
static std::false_type test(...);
public:
static constexpr bool value = decltype(test<out_t>(0))::value;
};
struct empty_deserializer
{
// sample:
// bool operator()(const json::value&, type_1&) const { return ...; }
// bool operator()(const json::value&, type_2&) const { return ...; }
// bool operator()(const json::value&, type_3&) const { return ...; }
};
template <typename T>
void unable_to_deserialize()
{
static_assert(
!sizeof(T),
"Unable to deserialize T. "
#ifdef _MSC_VER
"See T below: " __FUNCSIG__
#else
// "See T below: " __PRETTY_FUNCTION__
#endif
);
}
}
template <
typename in_t,
typename serializer_t = _serialization_helper::empty_serializer,
typename string_t = default_string_t>
basic_value<string_t> serialize(in_t&& in, const serializer_t& serializer = {})
{
if constexpr (_serialization_helper::is_serializable<in_t, serializer_t>::value) {
return serializer(std::forward<in_t>(in));
}
else if constexpr (
_utils::is_collection<std::decay_t<in_t>> || _utils::is_fixed_array<std::decay_t<in_t>>) {
basic_array<string_t> arr;
for (auto&& elem : in) {
using elem_t = decltype(elem);
auto j_elem =
serialize<elem_t, serializer_t, string_t>(std::forward<elem_t>(elem), serializer);
arr.emplace_back(std::move(j_elem));
}
return arr;
}
else if constexpr (_utils::is_map<std::decay_t<in_t>>) {
basic_object<string_t> obj;
for (auto&& [key, elem] : in) {
using key_t = decltype(key);
using elem_t = decltype(elem);
auto j_elem =
serialize<elem_t, serializer_t, string_t>(std::forward<elem_t>(elem), serializer);
obj.emplace(std::forward<key_t>(key), std::move(j_elem));
}
return obj;
}
else if constexpr (std::is_constructible_v<basic_value<string_t>, in_t>) {
return basic_value<string_t>(std::forward<in_t>(in));
}
else {
_serialization_helper::unable_to_serialize<in_t>();
}
}
template <
typename out_t,
typename deserializer_t = _serialization_helper::empty_deserializer,
typename string_t = default_string_t>
bool deserialize(
const basic_value<string_t>& in,
out_t& out,
const deserializer_t& deserializer = {})
{
if constexpr (_serialization_helper::is_deserializable<out_t, deserializer_t>::value) {
return deserializer(in, out);
}
else if constexpr (_utils::is_collection<std::decay_t<out_t>>) {
if (!in.is_array()) {
return false;
}
for (auto&& j_elem : in.as_array()) {
using elem_t = typename out_t::value_type;
elem_t elem {};
if (!deserialize<elem_t, deserializer_t, string_t>(j_elem, elem, deserializer)) {
return false;
}
if constexpr (_as_collection_helper::has_emplace_back<out_t>::value) {
out.emplace_back(std::move(elem));
}
else {
out.emplace(std::move(elem));
}
}
return true;
}
else if constexpr (_utils::is_fixed_array<std::decay_t<out_t>>) {
if (!in.is_array()) {
return false;
}
auto&& in_as_arr = in.as_array();
constexpr size_t out_size = _utils::fixed_array_size<out_t>;
if (in_as_arr.size() != out_size) {
return false;
}
for (size_t i = 0; i < out_size; ++i) {
auto&& j_elem = in_as_arr.at(i);
using elem_t = typename out_t::value_type;
elem_t elem {};
if (!deserialize<elem_t, deserializer_t, string_t>(j_elem, elem, deserializer)) {
return false;
}
out.at(i) = std::move(elem);
}
return true;
}
else if constexpr (_utils::is_map<std::decay_t<out_t>>) {
if (!in.is_object()) {
return false;
}
for (auto&& [key, j_elem] : in.as_object()) {
using elem_t = typename out_t::mapped_type;
elem_t elem {};
if (!deserialize<elem_t, deserializer_t, string_t>(j_elem, elem, deserializer)) {
return false;
}
out.emplace(std::forward<decltype(key)>(key), std::move(elem));
}
return true;
}
else if constexpr (std::is_constructible_v<out_t, basic_value<string_t>>) {
out = out_t(in);
return true;
}
else {
_serialization_helper::unable_to_deserialize<out_t>();
}
}
} // namespace json

View File

@@ -1,7 +0,0 @@
// IWYU pragma: private, include <meojson/json.hpp>
#pragma once
#include "array.hpp"
#include "object.hpp"
#include "value.hpp"

View File

@@ -1,331 +0,0 @@
// IWYU pragma: private, include <meojson/json.hpp>
#pragma once
#include <iomanip>
#include <limits>
#include <sstream>
#include <string>
#include <type_traits>
#include <utility>
#include <variant>
namespace json
{
template <typename string_t>
class basic_value;
template <typename string_t>
class basic_array;
template <typename string_t>
class basic_object;
using default_string_t = std::string;
using value = basic_value<default_string_t>;
using array = basic_array<default_string_t>;
using object = basic_object<default_string_t>;
using wvalue = basic_value<std::wstring>;
using warray = basic_array<std::wstring>;
using wobject = basic_object<std::wstring>;
}
namespace json::ext
{
template <typename T>
class jsonization
{
public:
// json::value to_json(const T&) const;
// bool check_json(const json::value&) const;
// bool from_json(const json::value&, T&) const;
};
}
namespace json::_utils
{
template <typename T>
using iterator_t = decltype(std::declval<T&>().begin());
template <typename T>
using remove_cvref_t = std::remove_cv_t<std::remove_reference_t<T>>;
template <typename T>
using iter_value_t = typename std::iterator_traits<remove_cvref_t<T>>::value_type;
template <typename R>
using range_value_t = iter_value_t<iterator_t<R>>;
template <typename T, typename = void>
constexpr bool is_string = false;
template <typename T>
constexpr bool is_string<T, std::void_t<typename T::traits_type>> =
std::is_same_v<typename T::traits_type, std::char_traits<typename T::value_type>>;
template <typename T, typename = void>
constexpr bool is_container = false;
template <typename T>
constexpr bool is_container<T, std::void_t<typename T::value_type, range_value_t<T>>> =
std::is_same_v<typename T::value_type, range_value_t<T>> && !is_string<T>;
template <typename T, typename = void>
constexpr bool is_map = false;
template <typename T>
constexpr bool is_map<T, std::void_t<typename T::key_type, typename T::mapped_type>> =
is_container<T>;
template <typename T, typename = void>
constexpr bool is_fixed_array = false;
template <template <typename, size_t> typename arr_t, typename value_t, size_t size>
constexpr bool is_fixed_array<arr_t<value_t, size>> = true;
template <typename T, typename = std::enable_if_t<is_fixed_array<T>>>
constexpr size_t fixed_array_size = 0;
template <template <typename, size_t> typename arr_t, typename value_t, size_t size>
constexpr size_t fixed_array_size<arr_t<value_t, size>> = size;
template <typename T, typename = void>
constexpr bool is_collection = false;
template <typename T>
constexpr bool is_collection<T> = is_container<T> && !is_map<T> && !is_fixed_array<T>;
template <typename T>
constexpr bool is_variant = false;
template <typename... args_t>
constexpr bool is_variant<std::variant<args_t...>> = true;
template <typename T>
constexpr bool is_tuple = false;
template <typename... args_t>
constexpr bool is_tuple<std::tuple<args_t...>> = true;
template <typename T>
constexpr bool is_pair = false;
template <typename... args_t>
constexpr bool is_pair<std::pair<args_t...>> = true;
template <typename T>
class has_to_json_in_member
{
template <typename U>
static auto test(int) -> decltype(std::declval<U>().to_json(), std::true_type());
template <typename U>
static std::false_type test(...);
public:
static constexpr bool value = decltype(test<T>(0))::value;
};
template <typename T>
class has_to_json_in_templ_spec
{
template <typename U>
static auto test(int)
-> decltype(std::declval<ext::jsonization<U>>().to_json(std::declval<U>()), std::true_type());
template <typename U>
static std::false_type test(...);
public:
static constexpr bool value = decltype(test<T>(0))::value;
};
template <typename T, typename string_t>
class has_check_json_in_member
{
template <typename U>
static auto test(int)
-> decltype(std::declval<U>().check_json(std::declval<json::basic_value<string_t>>()), std::true_type());
template <typename U>
static std::false_type test(...);
public:
static constexpr bool value = decltype(test<T>(0))::value;
};
template <typename T, typename string_t>
class has_check_json_in_templ_spec
{
template <typename U>
static auto test(int)
-> decltype(std::declval<ext::jsonization<U>>().check_json(std::declval<json::basic_value<string_t>>()), std::true_type());
template <typename U>
static std::false_type test(...);
public:
static constexpr bool value = decltype(test<T>(0))::value;
};
template <typename T, typename string_t>
class has_from_json_in_member
{
template <typename U>
static auto test(int)
-> decltype(std::declval<U>().from_json(std::declval<json::basic_value<string_t>>()), std::true_type());
template <typename U>
static std::false_type test(...);
public:
static constexpr bool value = decltype(test<T>(0))::value;
};
template <typename T, typename string_t>
class has_from_json_in_templ_spec
{
template <typename U>
static auto test(int)
-> decltype(std::declval<ext::jsonization<U>>().from_json(std::declval<json::basic_value<string_t>>(), std::declval<U&>()), std::true_type());
template <typename U>
static std::false_type test(...);
public:
static constexpr bool value = decltype(test<T>(0))::value;
};
template <typename string_t>
inline constexpr string_t unescape_string(const string_t& str)
{
using char_t = typename string_t::value_type;
string_t result {};
auto cur = str.cbegin();
auto end = str.cend();
auto no_escape_beg = cur;
char_t escape = 0;
for (; cur != end; ++cur) {
switch (*cur) {
case '"':
escape = '"';
break;
case '\\':
escape = '\\';
break;
case '\b':
escape = 'b';
break;
case '\f':
escape = 'f';
break;
case '\n':
escape = 'n';
break;
case '\r':
escape = 'r';
break;
case '\t':
escape = 't';
break;
default:
break;
}
if (escape) {
result += string_t(no_escape_beg, cur) + char_t('\\') + escape;
no_escape_beg = cur + 1;
escape = 0;
}
}
result += string_t(no_escape_beg, cur);
return result;
}
template <typename string_t>
inline constexpr string_t true_string()
{
return { 't', 'r', 'u', 'e' };
}
template <typename string_t>
inline constexpr string_t false_string()
{
return { 'f', 'a', 'l', 's', 'e' };
}
template <typename string_t>
inline constexpr string_t null_string()
{
return { 'n', 'u', 'l', 'l' };
}
template <typename string_t, typename any_t>
inline string_t to_basic_string(any_t&& arg)
{
#ifdef MEOJSON_KEEP_FLOATING_PRECISION
using real_type = std::remove_reference_t<any_t>;
if constexpr (std::is_floating_point_v<real_type>) {
if constexpr (std::is_same_v<string_t, std::string>) {
std::ostringstream oss;
oss << std::setprecision(std::numeric_limits<real_type>::max_digits10) << arg;
return oss.str();
}
else if constexpr (std::is_same_v<string_t, std::wstring>) {
std::wostringstream oss;
oss << std::setprecision(std::numeric_limits<real_type>::max_digits10) << arg;
return oss.str();
}
}
#endif
if constexpr (std::is_same_v<string_t, std::string>) {
return std::to_string(std::forward<any_t>(arg));
}
else if constexpr (std::is_same_v<string_t, std::wstring>) {
return std::to_wstring(std::forward<any_t>(arg));
}
else {
static_assert(!sizeof(any_t), "Unsupported type");
}
}
template <std::size_t id, typename string_t, typename variant_t>
inline bool _serialize_variant_impl(basic_value<string_t>& val, variant_t&& var)
{
if (var.index() != id) {
return false;
}
val = basic_value<string_t>(std::get<id>(std::forward<variant_t>(var)));
return true;
}
template <typename string_t, typename variant_t, std::size_t... ids>
inline basic_value<string_t> serialize_variant(variant_t&& var, std::index_sequence<ids...>)
{
basic_value<string_t> val;
(_serialize_variant_impl<ids>(val, std::forward<variant_t>(var)) || ...);
return val;
}
template <std::size_t id, typename string_t, typename variant_t>
inline bool _deserialize_variant_impl(const basic_value<string_t>& val, variant_t& var)
{
using alt_t = std::variant_alternative_t<id, variant_t>;
if (!val.template is<alt_t>()) {
return false;
}
var = val.template as<alt_t>();
return true;
}
template <typename string_t, typename variant_t, std::size_t... ids>
inline variant_t deserialize_variant(const basic_value<string_t>& val, std::index_sequence<ids...>)
{
variant_t var;
(_deserialize_variant_impl<ids>(val, var) || ...);
return var;
}
template <typename string_t, typename variant_t, std::size_t... ids>
inline bool detect_variant(const basic_value<string_t>& val, std::index_sequence<ids...>)
{
return (val.template is<std::variant_alternative_t<ids, variant_t>>() || ...);
}
template <typename string_t, typename tuple_t, std::size_t... ids>
inline bool detect_tuple(const basic_value<string_t>& val, std::index_sequence<ids...>)
{
return val.is_array() && val.as_array().size() == std::tuple_size_v<tuple_t>
&& (val.at(ids).template is<std::tuple_element_t<ids, tuple_t>>() || ...);
}
} // namespace json::_utils

File diff suppressed because it is too large Load Diff

View File

@@ -1,10 +0,0 @@
#pragma once
// IWYU pragma: begin_exports
#include "common/serialization.hpp"
#include "common/types.hpp"
#include "parser/parser.hpp"
#include "reflection/jsonization.hpp"
// IWYU pragma: end_exports

View File

@@ -1,8 +0,0 @@
#pragma once
// IWYU pragma: begin_exports
#include "common/types.hpp"
#include "parser5/parser5.hpp"
// IWYU pragma: end_exports

View File

@@ -1,139 +0,0 @@
// IWYU pragma: private, include <meojson/json.hpp>
#pragma once
#if __cplusplus >= 202002L || (defined(_MSVC_LANG) && _MSVC_LANG >= 202002L)
#include <bit>
namespace json::_bitops
{
using std::countl_one;
using std::countl_zero;
using std::countr_one;
using std::countr_zero;
inline constexpr bool is_little_endian()
{
return std::endian::native == std::endian::little;
}
}
#else
#include <cstdint>
namespace json::_bitops
{
#if defined(__GNUC__) || defined(__clang__)
inline constexpr int countl_zero(uint32_t x)
{
if constexpr (sizeof(uint32_t) == sizeof(unsigned int)) {
return x == 0 ? 32 : __builtin_clz(x);
}
if constexpr (sizeof(uint32_t) == sizeof(unsigned long)) {
return x == 0 ? 32 : __builtin_clzl(x);
}
return x == 0 ? 32 : __builtin_clzll(x);
}
inline constexpr int countr_zero(uint32_t x)
{
if constexpr (sizeof(uint32_t) == sizeof(unsigned int)) {
return x == 0 ? 32 : __builtin_ctz(x);
}
if constexpr (sizeof(uint32_t) == sizeof(unsigned long)) {
return x == 0 ? 32 : __builtin_ctzl(x);
}
return x == 0 ? 32 : __builtin_ctzll(x);
}
inline constexpr int countl_zero(uint64_t x)
{
return x == 0 ? 64 : __builtin_clzll(x);
}
inline constexpr int countr_zero(uint64_t x)
{
return x == 0 ? 64 : __builtin_ctzll(x);
}
#elif defined(_MSC_VER)
#ifdef __AVX2__
// lzcnt intrinsics is not constexpr
inline int countl_zero(uint32_t x)
{
return __lzcnt(x);
}
inline int countr_zero(uint32_t x)
{
return _tzcnt_u32(x);
}
inline int countl_zero(uint64_t x)
{
return (int)__lzcnt64(x);
}
inline int countr_zero(uint64_t x)
{
return (int)_tzcnt_u64(x);
}
#else
inline constexpr int countl_zero(uint32_t x)
{
unsigned long index = 0;
return _BitScanReverse(&index, x) ? 31 - index : 32;
}
inline constexpr int countr_zero(uint32_t x)
{
unsigned long index = 0;
return _BitScanForward(&index, x) ? index : 32;
}
inline constexpr int countl_zero(uint64_t x)
{
unsigned long index = 0;
return _BitScanReverse64(&index, x) ? 63 - index : 64;
}
inline constexpr int countr_zero(uint64_t x)
{
unsigned long index = 0;
return _BitScanForward64(&index, x) ? index : 64;
}
#endif // __AVX2__
#else // compiler
#error "bring your own bit counting implementation"
#endif
inline int countl_one(uint32_t x)
{
return countl_zero(~x);
}
inline int countr_one(uint32_t x)
{
return countr_zero(~x);
}
inline int countl_one(uint64_t x)
{
return countl_zero(~x);
}
inline int countr_one(uint64_t x)
{
return countr_zero(~x);
}
// no constexpr endian awareness before C++20
inline bool is_little_endian()
{
union
{
uint32_t u32;
uint8_t u8;
} u = { 0x01020304 };
return u.u8 == 4;
}
} // namespace json::_bitops
#endif // C++20

View File

@@ -1,161 +0,0 @@
// IWYU pragma: private, include <meojson/json.hpp>
#pragma once
#include <cstdint>
#include <cstring>
#include <type_traits>
#include "bitops.hpp"
#if defined(__GNUC__) || defined(__clang__)
#define __packed_bytes_strong_inline __attribute__((always_inline))
#elif defined(_MSC_VER)
#define __packed_bytes_strong_inline __forceinline
#else
#define __packed_bytes_strong_inline inline
#endif
namespace json::_packed_bytes
{
struct packed_bytes_trait_none
{
static constexpr bool available = false;
};
template <size_t N>
struct packed_bytes
{
using traits = packed_bytes_trait_none;
};
}
#ifndef MEOJSON_DISABLE_PACKED_BYTES
#if defined(__SSE2__) || defined(_M_X64) || (defined(_M_IX86_FP) && _M_IX86_FP)
#include "packed_bytes_x86.hpp"
#elif defined(__ARM_NEON) || defined(_M_ARM) || defined(_M_ARM64)
#include "packed_bytes_arm.hpp"
#endif
#endif
namespace json::_packed_bytes
{
struct packed_bytes_trait_uint64
{
static constexpr bool available = sizeof(void*) >= 8;
static constexpr auto step = 8;
using value_type = uint64_t;
__packed_bytes_strong_inline static value_type load_unaligned(const void* ptr)
{
value_type result;
memcpy((void*)&result, ptr, 8);
return result;
}
__packed_bytes_strong_inline static value_type less(value_type x, uint8_t n)
{
return (((x)-UINT64_C(0x0101010101010101) * (n)) & ~(x)&UINT64_C(0x8080808080808080));
}
__packed_bytes_strong_inline static value_type is_zero_memberwise(value_type v)
{
return (((v)-UINT64_C(0x0101010101010101)) & ~(v)&UINT64_C(0x8080808080808080));
}
__packed_bytes_strong_inline static bool is_all_zero(value_type v) { return v == UINT64_C(0); }
__packed_bytes_strong_inline static value_type equal(value_type x, uint8_t n)
{
return is_zero_memberwise((x) ^ (UINT64_C(0x0101010101010101) * (n)));
}
__packed_bytes_strong_inline static value_type bitwise_or(value_type a, value_type b)
{
return a | b;
}
__packed_bytes_strong_inline static size_t first_nonzero_byte(value_type x)
{
if (_bitops::is_little_endian()) {
return _bitops::countr_zero(x) / 8;
}
else {
return _bitops::countl_zero(x) / 8;
}
}
};
struct packed_bytes_trait_uint32
{
static constexpr bool available = true;
static constexpr auto step = 4;
using value_type = uint32_t;
__packed_bytes_strong_inline static value_type load_unaligned(const void* ptr)
{
value_type result;
memcpy((void*)&result, ptr, 4);
return result;
}
__packed_bytes_strong_inline static value_type less(value_type x, uint8_t n)
{
return (((x) - ~UINT32_C(0) / 255 * (n)) & ~(x) & ~UINT32_C(0) / 255 * 128);
}
__packed_bytes_strong_inline static value_type is_zero_memberwise(value_type v)
{
return (((v)-UINT32_C(0x01010101)) & ~(v)&UINT32_C(0x80808080));
;
}
__packed_bytes_strong_inline static bool is_all_zero(value_type v) { return v == UINT32_C(0); }
__packed_bytes_strong_inline static value_type equal(value_type x, uint8_t n)
{
return is_zero_memberwise((x) ^ (~UINT32_C(0) / 255 * (n)));
}
__packed_bytes_strong_inline static value_type bitwise_or(value_type a, value_type b)
{
return a | b;
}
__packed_bytes_strong_inline static size_t first_nonzero_byte(value_type x)
{
if (_bitops::is_little_endian()) {
return _bitops::countr_zero(x) / 8;
}
else {
return _bitops::countl_zero(x) / 8;
}
}
};
template <>
struct packed_bytes<8>
{
using traits = packed_bytes_trait_uint64;
};
template <>
struct packed_bytes<4>
{
using traits = packed_bytes_trait_uint32;
};
template <size_t N>
using packed_bytes_trait = typename packed_bytes<N>::traits;
using packed_bytes_trait_max = std::conditional_t<
packed_bytes_trait<32>::available,
packed_bytes_trait<32>,
std::conditional_t<
packed_bytes_trait<16>::available,
packed_bytes_trait<16>,
std::conditional_t<
packed_bytes_trait<8>::available,
packed_bytes_trait<8>,
packed_bytes_trait<4>>>>;
} // namespace json::_packed_bytes

View File

@@ -1,79 +0,0 @@
// IWYU pragma: private, include <meojson/json.hpp>
#pragma once
// current NEON implementation doesn't outperform 64-bit scalar implementation
#ifdef MEOJSON_ENABLE_NEON
#include "packed_bytes.hpp"
#include <arm_neon.h>
#if defined(__aarch64__) || defined(__arm64__) || defined(_M_ARM64)
#define __packed_bytes_trait_arm64
#endif
namespace json::_packed_bytes
{
struct packed_bytes_trait_neon
{
static constexpr bool available = true;
static constexpr auto step = 16;
using value_type = uint8x16_t;
__packed_bytes_strong_inline static value_type load_unaligned(const void* ptr)
{
return vld1q_u8((uint8_t*)ptr);
}
__packed_bytes_strong_inline static value_type less(value_type x, uint8_t n)
{
auto bcast = vdupq_n_u8(n);
auto is_less = vcltq_u8(x, bcast);
return is_less;
}
__packed_bytes_strong_inline static value_type equal(value_type x, uint8_t n)
{
return vceqq_u8(x, vdupq_n_u8(n));
}
__packed_bytes_strong_inline static value_type equal(value_type x, value_type y)
{
return vceqq_u8(x, y);
}
__packed_bytes_strong_inline static value_type bitwise_or(value_type a, value_type b)
{
return vorrq_u8(a, b);
}
__packed_bytes_strong_inline static bool is_all_zero(value_type x)
{
#ifdef __packed_bytes_trait_arm64
return vmaxvq_u8(x) == 0;
#else
auto fold64 = vorr_u64(
vget_high_u64(vreinterpretq_u8_u64(x), 0),
vget_low_u64(vreinterpretq_u8_u64(x), 1));
auto fold32 = vget_lane_u32(vreinterpret_u64_u32(fold64), 0)
| vget_lane_u32(vreinterpret_u64_u32(fold64), 1);
return fold32 == 0;
#endif
}
__packed_bytes_strong_inline static size_t first_nonzero_byte(value_type x)
{
// https://community.arm.com/arm-community-blogs/b/infrastructure-solutions-blog/posts/porting-x86-vector-bitmask-optimizations-to-arm-neon
auto cmp = equal(x, 0);
auto res = vshrn_n_u16(cmp, 4);
auto mask64 = vget_lane_u64(vreinterpret_u64_u8(res), 0);
return _bitops::countr_one(mask64) >> 2;
}
};
template <>
struct packed_bytes<16>
{
using traits = packed_bytes_trait_neon;
};
}
#endif

View File

@@ -1,140 +0,0 @@
// IWYU pragma: private, include <meojson/json.hpp>
#pragma once
#include "packed_bytes.hpp"
#include <emmintrin.h>
#if defined(__SSE4_1__) || defined(__AVX2__) || defined(_MSC_VER)
// MSVC enables all SSE4.1 intrinsics by default
#include <smmintrin.h>
#endif
namespace json::_packed_bytes
{
struct packed_bytes_trait_sse
{
static constexpr bool available = true;
static constexpr auto step = 16;
using value_type = __m128i;
__packed_bytes_strong_inline static value_type load_unaligned(const void* ptr)
{
return _mm_loadu_si128(reinterpret_cast<const __m128i*>(ptr));
}
__packed_bytes_strong_inline static value_type less(value_type x, uint8_t n)
{
auto bcast = _mm_set1_epi8(static_cast<char>(n));
auto all1 = _mm_set1_epi8(-1);
auto max_with_n = _mm_max_epu8(x, bcast);
auto is_greater_or_equal = _mm_cmpeq_epi8(max_with_n, x);
auto is_less = _mm_andnot_si128(is_greater_or_equal, all1);
return is_less;
}
__packed_bytes_strong_inline static value_type equal(value_type x, uint8_t n)
{
return _mm_cmpeq_epi8(x, _mm_set1_epi8(static_cast<char>(n)));
}
__packed_bytes_strong_inline static value_type equal(value_type x, value_type y)
{
return _mm_cmpeq_epi8(x, y);
}
__packed_bytes_strong_inline static value_type bitwise_or(value_type a, value_type b)
{
return _mm_or_si128(a, b);
}
__packed_bytes_strong_inline static bool is_all_zero(value_type x)
{
#if defined(__SSE4_1__) || defined(__AVX2__) || defined(_MSC_VER)
// SSE4.1 path
return !!_mm_testz_si128(x, x);
#else
// SSE2 path
auto cmp = _mm_cmpeq_epi8(x, _mm_set1_epi8(0));
auto mask = (uint16_t)_mm_movemask_epi8(cmp);
return mask == UINT16_C(0xFFFF);
#endif
}
__packed_bytes_strong_inline static size_t first_nonzero_byte(value_type x)
{
auto cmp = _mm_cmpeq_epi8(x, _mm_set1_epi8(0));
auto mask = (uint16_t)_mm_movemask_epi8(cmp);
return _bitops::countr_one((uint32_t)mask);
}
};
template <>
struct packed_bytes<16>
{
using traits = packed_bytes_trait_sse;
};
}
#ifdef __AVX2__
#include <immintrin.h>
namespace json::_packed_bytes
{
struct packed_bytes_trait_avx2
{
static constexpr bool available = true;
static constexpr auto step = 32;
using value_type = __m256i;
__packed_bytes_strong_inline static value_type load_unaligned(const void* ptr)
{
return _mm256_loadu_si256(reinterpret_cast<const __m256i*>(ptr));
}
__packed_bytes_strong_inline static value_type less(value_type x, uint8_t n)
{
auto bcast = _mm256_set1_epi8(static_cast<char>(n));
auto all1 = _mm256_set1_epi8(-1);
auto max_with_n = _mm256_max_epu8(x, bcast);
auto is_greater_or_equal = _mm256_cmpeq_epi8(max_with_n, x);
auto is_less = _mm256_andnot_si256(is_greater_or_equal, all1);
return is_less;
}
__packed_bytes_strong_inline static value_type equal(value_type x, uint8_t n)
{
return _mm256_cmpeq_epi8(x, _mm256_set1_epi8(static_cast<char>(n)));
}
__packed_bytes_strong_inline static value_type equal(value_type x, value_type y)
{
return _mm256_cmpeq_epi8(x, y);
}
__packed_bytes_strong_inline static value_type bitwise_or(value_type a, value_type b)
{
return _mm256_or_si256(a, b);
}
__packed_bytes_strong_inline static bool is_all_zero(value_type x)
{
return (bool)_mm256_testz_si256(x, x);
}
__packed_bytes_strong_inline static size_t first_nonzero_byte(value_type x)
{
auto cmp = _mm256_cmpeq_epi8(x, _mm256_set1_epi8(0));
auto mask = (uint32_t)_mm256_movemask_epi8(cmp);
// AVX512 alternative: _mm_cmpeq_epi8_mask
return _bitops::countr_one(mask);
}
};
template <>
struct packed_bytes<32>
{
using traits = packed_bytes_trait_avx2;
};
}
#endif

View File

@@ -1,763 +0,0 @@
// IWYU pragma: private, include <meojson/json.hpp>
#pragma once
#include <cctype>
#include <fstream>
#include <optional>
#include <ostream>
#include <string>
#include <tuple>
#include "../common/types.hpp"
#include "packed_bytes.hpp"
namespace json
{
// ****************************
// * parser declare *
// ****************************
template <
typename string_t = default_string_t,
typename parsing_t = void,
typename accel_traits = _packed_bytes::packed_bytes_trait_max>
class parser
{
public:
using parsing_iter_t = typename parsing_t::const_iterator;
public:
~parser() noexcept = default;
static std::optional<basic_value<string_t>> parse(const parsing_t& content);
private:
parser(parsing_iter_t cbegin, parsing_iter_t cend) noexcept
: _cur(cbegin)
, _end(cend)
{
;
}
std::optional<basic_value<string_t>> parse();
basic_value<string_t> parse_value();
basic_value<string_t> parse_null();
basic_value<string_t> parse_boolean();
basic_value<string_t> parse_number();
// parse and return a basic_value<string_t> whose type is value_type::string
basic_value<string_t> parse_string();
basic_value<string_t> parse_array();
basic_value<string_t> parse_object();
// parse and return a string_t
std::optional<string_t> parse_stdstring();
bool skip_string_literal_with_accel();
bool skip_whitespace() noexcept;
bool skip_digit();
bool skip_unicode_escape(uint16_t& pair_high, string_t& result);
private:
parsing_iter_t _cur;
parsing_iter_t _end;
};
// ***************************
// * utils declare *
// ***************************
template <typename parsing_t>
auto parse(const parsing_t& content);
template <typename char_t>
auto parse(char_t* content);
template <
typename istream_t,
typename = std::enable_if_t<
std::is_base_of_v<std::basic_istream<typename istream_t::char_type>, istream_t>>>
auto parse(istream_t& istream, bool check_bom);
template <typename ifstream_t = std::ifstream, typename path_t = void>
auto open(const path_t& path, bool check_bom = false);
namespace literals
{
value operator""_json(const char* str, size_t len);
wvalue operator""_json(const wchar_t* str, size_t len);
value operator""_jvalue(const char* str, size_t len);
wvalue operator""_jvalue(const wchar_t* str, size_t len);
array operator""_jarray(const char* str, size_t len);
warray operator""_jarray(const wchar_t* str, size_t len);
object operator""_jobject(const char* str, size_t len);
wobject operator""_jobject(const wchar_t* str, size_t len);
}
template <typename string_t = default_string_t>
const basic_value<string_t> invalid_value();
// *************************
// * parser impl *
// *************************
template <typename string_t, typename parsing_t, typename accel_traits>
inline std::optional<basic_value<string_t>>
parser<string_t, parsing_t, accel_traits>::parse(const parsing_t& content)
{
return parser<string_t, parsing_t, accel_traits>(content.cbegin(), content.cend()).parse();
}
template <typename string_t, typename parsing_t, typename accel_traits>
inline std::optional<basic_value<string_t>> parser<string_t, parsing_t, accel_traits>::parse()
{
if (!skip_whitespace()) {
return std::nullopt;
}
basic_value<string_t> result_value;
switch (*_cur) {
case '[':
result_value = parse_array();
break;
case '{':
result_value = parse_object();
break;
default: // A JSON payload should be an basic_object or basic_array
return std::nullopt;
}
if (!result_value.valid()) {
return std::nullopt;
}
// After the parsing is complete, there should be no more content other than
// spaces behind
if (skip_whitespace()) {
return std::nullopt;
}
return result_value;
}
template <typename string_t, typename parsing_t, typename accel_traits>
inline basic_value<string_t> parser<string_t, parsing_t, accel_traits>::parse_value()
{
switch (*_cur) {
case 'n':
return parse_null();
case 't':
case 'f':
return parse_boolean();
case '-':
case '0':
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
case '8':
case '9':
return parse_number();
case '"':
return parse_string();
case '[':
return parse_array();
case '{':
return parse_object();
default:
return invalid_value<string_t>();
}
}
template <typename string_t, typename parsing_t, typename accel_traits>
inline basic_value<string_t> parser<string_t, parsing_t, accel_traits>::parse_null()
{
for (const auto& ch : _utils::null_string<string_t>()) {
if (_cur != _end && *_cur == ch) {
++_cur;
}
else {
return invalid_value<string_t>();
}
}
return basic_value<string_t>();
}
template <typename string_t, typename parsing_t, typename accel_traits>
inline basic_value<string_t> parser<string_t, parsing_t, accel_traits>::parse_boolean()
{
switch (*_cur) {
case 't':
for (const auto& ch : _utils::true_string<string_t>()) {
if (_cur != _end && *_cur == ch) {
++_cur;
}
else {
return invalid_value<string_t>();
}
}
return true;
case 'f':
for (const auto& ch : _utils::false_string<string_t>()) {
if (_cur != _end && *_cur == ch) {
++_cur;
}
else {
return invalid_value<string_t>();
}
}
return false;
default:
return invalid_value<string_t>();
}
}
template <typename string_t, typename parsing_t, typename accel_traits>
inline basic_value<string_t> parser<string_t, parsing_t, accel_traits>::parse_number()
{
const auto first = _cur;
if (*_cur == '-') {
++_cur;
}
// numbers cannot have leading zeroes
if (_cur != _end && *_cur == '0' && _cur + 1 != _end && std::isdigit(*(_cur + 1))) {
return invalid_value<string_t>();
}
if (!skip_digit()) {
return invalid_value<string_t>();
}
if (*_cur == '.') {
++_cur;
if (!skip_digit()) {
return invalid_value<string_t>();
}
}
if (*_cur == 'e' || *_cur == 'E') {
if (++_cur == _end) {
return invalid_value<string_t>();
}
if (*_cur == '+' || *_cur == '-') {
++_cur;
}
if (!skip_digit()) {
return invalid_value<string_t>();
}
}
return basic_value<string_t>(basic_value<string_t>::value_type::number, string_t(first, _cur));
}
template <typename string_t, typename parsing_t, typename accel_traits>
inline basic_value<string_t> parser<string_t, parsing_t, accel_traits>::parse_string()
{
auto string_opt = parse_stdstring();
if (!string_opt) {
return invalid_value<string_t>();
}
return basic_value<string_t>(
basic_value<string_t>::value_type::string,
std::move(string_opt).value());
}
template <typename string_t, typename parsing_t, typename accel_traits>
inline basic_value<string_t> parser<string_t, parsing_t, accel_traits>::parse_array()
{
if (*_cur == '[') {
++_cur;
}
else {
return invalid_value<string_t>();
}
if (!skip_whitespace()) {
return invalid_value<string_t>();
}
else if (*_cur == ']') {
++_cur;
// empty basic_array
return basic_array<string_t>();
}
typename basic_array<string_t>::raw_array result;
while (true) {
if (!skip_whitespace()) {
return invalid_value<string_t>();
}
basic_value<string_t> val = parse_value();
if (!val.valid() || !skip_whitespace()) {
return invalid_value<string_t>();
}
result.emplace_back(std::move(val));
if (*_cur == ',') {
++_cur;
}
else {
break;
}
}
if (skip_whitespace() && *_cur == ']') {
++_cur;
}
else {
return invalid_value<string_t>();
}
return basic_array<string_t>(std::move(result));
}
template <typename string_t, typename parsing_t, typename accel_traits>
inline basic_value<string_t> parser<string_t, parsing_t, accel_traits>::parse_object()
{
if (*_cur == '{') {
++_cur;
}
else {
return invalid_value<string_t>();
}
if (!skip_whitespace()) {
return invalid_value<string_t>();
}
else if (*_cur == '}') {
++_cur;
// empty basic_object
return basic_object<string_t>();
}
typename basic_object<string_t>::raw_object result;
while (true) {
if (!skip_whitespace()) {
return invalid_value<string_t>();
}
auto key_opt = parse_stdstring();
if (key_opt && skip_whitespace() && *_cur == ':') {
++_cur;
}
else {
return invalid_value<string_t>();
}
if (!skip_whitespace()) {
return invalid_value<string_t>();
}
basic_value<string_t> val = parse_value();
if (!val.valid() || !skip_whitespace()) {
return invalid_value<string_t>();
}
auto emplaced = result.emplace(std::move(*key_opt), std::move(val)).second;
if (!emplaced) {
return invalid_value<string_t>();
}
if (*_cur == ',') {
++_cur;
}
else {
break;
}
}
if (skip_whitespace() && *_cur == '}') {
++_cur;
}
else {
return invalid_value<string_t>();
}
return basic_object<string_t>(std::move(result));
}
template <typename string_t, typename parsing_t, typename accel_traits>
inline std::optional<string_t> parser<string_t, parsing_t, accel_traits>::parse_stdstring()
{
if (*_cur == '"') {
++_cur;
}
else {
return std::nullopt;
}
string_t result;
auto no_escape_beg = _cur;
uint16_t pair_high = 0;
while (_cur != _end) {
if constexpr (sizeof(*_cur) == 1 && accel_traits::available) {
if (!skip_string_literal_with_accel()) {
return std::nullopt;
}
}
switch (*_cur) {
case '\t':
case '\r':
case '\n':
return std::nullopt;
case '\\': {
result += string_t(no_escape_beg, _cur++);
if (_cur == _end) {
return std::nullopt;
}
if (pair_high && *_cur != 'u') {
return std::nullopt;
}
switch (*_cur) {
case '"':
result.push_back('"');
break;
case '\\':
result.push_back('\\');
break;
case '/':
result.push_back('/');
break;
case 'b':
result.push_back('\b');
break;
case 'f':
result.push_back('\f');
break;
case 'n':
result.push_back('\n');
break;
case 'r':
result.push_back('\r');
break;
case 't':
result.push_back('\t');
break;
case 'u':
if (!skip_unicode_escape(pair_high, result)) {
return std::nullopt;
}
break;
default:
// Illegal backslash escape
return std::nullopt;
}
no_escape_beg = ++_cur;
break;
}
case '"': {
if (pair_high) {
return std::nullopt;
}
result += string_t(no_escape_beg, _cur++);
return result;
}
default:
if (pair_high) {
return std::nullopt;
}
++_cur;
break;
}
}
return std::nullopt;
}
template <typename string_t, typename parsing_t, typename accel_traits>
inline bool parser<string_t, parsing_t, accel_traits>::skip_unicode_escape(
uint16_t& pair_high,
string_t& result)
{
uint16_t cp = 0;
for (int i = 0; i < 4; ++i) {
if (++_cur == _end) {
return false;
}
if (!std::isxdigit(static_cast<unsigned char>(*_cur))) {
return false;
}
cp <<= 4;
if ('0' <= *_cur && *_cur <= '9') {
cp |= *_cur - '0';
}
else if ('a' <= *_cur && *_cur <= 'f') {
cp |= *_cur - 'a' + 10;
}
else if ('A' <= *_cur && *_cur <= 'F') {
cp |= *_cur - 'A' + 10;
}
else {
return false;
}
}
uint32_t ext_cp = cp;
uint16_t hi_cp = 0, lo_cp = 0;
if (0xD800 <= cp && cp <= 0xDBFF) {
if (pair_high) {
return false;
}
pair_high = cp;
return true;
}
if (0xDC00 <= cp && cp <= 0xDFFF) {
if (!pair_high) {
return false;
}
ext_cp = (((pair_high - 0xD800) << 10) | (cp - 0xDC00)) + 0x10000;
hi_cp = pair_high;
lo_cp = cp;
pair_high = 0;
}
if constexpr (std::is_same_v<typename string_t::value_type, char>) {
// utf8
if (ext_cp <= 0x7F) {
result.push_back(static_cast<char>(ext_cp));
}
else if (ext_cp <= 0x7FF) {
result.push_back(static_cast<char>(((ext_cp >> 6) & 0b00011111) | 0b11000000u));
result.push_back(static_cast<char>((ext_cp & 0b00111111) | 0b10000000u));
}
else if (ext_cp <= 0xFFFF) {
result.push_back(static_cast<char>(((ext_cp >> 12) & 0b00001111) | 0b11100000u));
result.push_back(static_cast<char>(((ext_cp >> 6) & 0b00111111) | 0b10000000u));
result.push_back(static_cast<char>((ext_cp & 0b00111111) | 0b10000000u));
}
else {
result.push_back(static_cast<char>(((ext_cp >> 18) & 0b00000111) | 0b11110000u));
result.push_back(static_cast<char>(((ext_cp >> 12) & 0b00111111) | 0b10000000u));
result.push_back(static_cast<char>(((ext_cp >> 6) & 0b00111111) | 0b10000000u));
result.push_back(static_cast<char>((ext_cp & 0b00111111) | 0b10000000u));
}
}
else if constexpr (std::is_same_v<typename string_t::value_type, wchar_t>) {
if constexpr (sizeof(wchar_t) == 4) {
result.push_back(static_cast<wchar_t>(ext_cp));
}
else if constexpr (sizeof(wchar_t) == 2) {
if (ext_cp <= 0xFFFF) {
result.push_back(static_cast<wchar_t>(ext_cp));
}
else {
result.push_back(static_cast<wchar_t>(hi_cp));
result.push_back(static_cast<wchar_t>(lo_cp));
}
}
else {
static_assert(!sizeof(typename string_t::value_type), "Unsupported wchar");
}
}
else {
static_assert(!sizeof(typename string_t::value_type), "Unsupported type");
}
return true;
}
template <typename string_t, typename parsing_t, typename accel_traits>
inline bool parser<string_t, parsing_t, accel_traits>::skip_string_literal_with_accel()
{
if constexpr (sizeof(*_cur) != 1) {
return false;
}
while (_end - _cur >= accel_traits::step) {
auto pack = accel_traits::load_unaligned(&(*_cur));
auto result = accel_traits::less(pack, 32);
result =
accel_traits::bitwise_or(result, accel_traits::equal(pack, static_cast<uint8_t>('"')));
result =
accel_traits::bitwise_or(result, accel_traits::equal(pack, static_cast<uint8_t>('\\')));
if (accel_traits::is_all_zero(result)) {
_cur += accel_traits::step;
}
else {
auto index = accel_traits::first_nonzero_byte(result);
_cur += index;
break;
}
}
return _cur != _end;
}
template <typename string_t, typename parsing_t, typename accel_traits>
inline bool parser<string_t, parsing_t, accel_traits>::skip_whitespace() noexcept
{
while (_cur != _end) {
switch (*_cur) {
case ' ':
case '\t':
case '\r':
case '\n':
++_cur;
break;
case '\0':
return false;
default:
return true;
}
}
return false;
}
template <typename string_t, typename parsing_t, typename accel_traits>
inline bool parser<string_t, parsing_t, accel_traits>::skip_digit()
{
// At least one digit
if (_cur != _end && std::isdigit(*_cur)) {
++_cur;
}
else {
return false;
}
while (_cur != _end && std::isdigit(*_cur)) {
++_cur;
}
if (_cur != _end) {
return true;
}
else {
return false;
}
}
// *************************
// * utils impl *
// *************************
template <typename parsing_t>
auto parse(const parsing_t& content)
{
using string_t = std::basic_string<typename parsing_t::value_type>;
return parser<string_t, parsing_t>::parse(content);
}
template <typename char_t>
auto parse(char_t* content)
{
return parse(std::basic_string_view<std::decay_t<char_t>> { content });
}
template <typename istream_t, typename _>
auto parse(istream_t& ifs, bool check_bom)
{
using string_t = std::basic_string<typename istream_t::char_type>;
ifs.seekg(0, std::ios::end);
auto file_size = ifs.tellg();
ifs.seekg(0, std::ios::beg);
string_t str(file_size, '\0');
ifs.read(str.data(), file_size);
if (check_bom) {
using uchar = unsigned char;
static constexpr uchar Bom_0 = 0xEF;
static constexpr uchar Bom_1 = 0xBB;
static constexpr uchar Bom_2 = 0xBF;
if (str.size() >= 3 && static_cast<uchar>(str.at(0)) == Bom_0
&& static_cast<uchar>(str.at(1)) == Bom_1 && static_cast<uchar>(str.at(2)) == Bom_2) {
str.assign(str.begin() + 3, str.end());
}
}
return parse(str);
}
template <typename ifstream_t, typename path_t>
auto open(const path_t& filepath, bool check_bom)
{
using char_t = typename ifstream_t::char_type;
using string_t = std::basic_string<char_t>;
using json_t = json::basic_value<string_t>;
using return_t = std::optional<json_t>;
ifstream_t ifs(filepath, std::ios::in);
if (!ifs.is_open()) {
return return_t(std::nullopt);
}
auto opt = parse(ifs, check_bom);
ifs.close();
return opt;
}
namespace literals
{
inline value operator""_json(const char* str, size_t len)
{
return operator""_jvalue(str, len);
}
inline wvalue operator""_json(const wchar_t* str, size_t len)
{
return operator""_jvalue(str, len);
}
inline value operator""_jvalue(const char* str, size_t len)
{
return parse(std::string_view(str, len)).value_or(value());
}
inline wvalue operator""_jvalue(const wchar_t* str, size_t len)
{
return parse(std::wstring_view(str, len)).value_or(wvalue());
}
inline array operator""_jarray(const char* str, size_t len)
{
auto val = parse(std::string_view(str, len)).value_or(value());
return val.is_array() ? val.as_array() : array();
}
inline warray operator""_jarray(const wchar_t* str, size_t len)
{
auto val = parse(std::wstring_view(str, len)).value_or(wvalue());
return val.is_array() ? val.as_array() : warray();
}
inline object operator""_jobject(const char* str, size_t len)
{
auto val = parse(std::string_view(str, len)).value_or(value());
return val.is_object() ? val.as_object() : object();
}
inline wobject operator""_jobject(const wchar_t* str, size_t len)
{
auto val = parse(std::wstring_view(str, len)).value_or(wvalue());
return val.is_object() ? val.as_object() : wobject();
}
} // namespace literals
template <typename string_t>
const basic_value<string_t> invalid_value()
{
return basic_value<string_t>(
basic_value<string_t>::value_type::invalid,
typename basic_value<string_t>::var_t());
}
} // namespace json

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@@ -1,473 +0,0 @@
// IWYU pragma: private, include <meojson/json.hpp>
#pragma once
#include <string>
#include <type_traits>
#include "../common/types.hpp"
namespace json::_jsonization_helper
{
struct next_is_optional_t
{
};
struct va_arg_end
{
};
struct dumper
{
template <typename var_t, typename... rest_t>
json::value _to_json(const char* key, const var_t& var, rest_t&&... rest) const
{
json::value result = _to_json(std::forward<rest_t>(rest)...);
result.emplace(key, var);
return result;
}
template <typename... rest_t>
json::value _to_json(const char*, next_is_optional_t, rest_t&&... rest) const
{
return _to_json(std::forward<rest_t>(rest)...);
}
json::value _to_json(va_arg_end) const { return {}; }
};
struct checker
{
template <typename var_t, typename... rest_t>
bool _check_json(
const json::value& in,
std::string& error_key,
const char* key,
const var_t&,
rest_t&&... rest) const
{
auto opt = in.find(key);
if (!opt || !opt->is<var_t>()) {
error_key = key;
return false;
}
return _check_json(in, error_key, std::forward<rest_t>(rest)...);
}
template <typename var_t, typename... rest_t>
bool _check_json(
const json::value& in,
std::string& error_key,
const char*,
next_is_optional_t,
const char* key,
const var_t&,
rest_t&&... rest) const
{
auto opt = in.find(key);
if (opt) {
if (!opt->is<var_t>()) {
error_key = key;
return false;
}
} // next_is_optional_t, ignore key not found
return _check_json(in, error_key, std::forward<rest_t>(rest)...);
}
bool _check_json(const json::value&, std::string&, va_arg_end) const { return true; }
};
struct loader
{
template <typename var_t, typename... rest_t>
bool _from_json(
const json::value& in,
std::string& error_key,
const char* key,
var_t& var,
rest_t&&... rest) const
{
auto opt = in.find(key);
if (!opt || !opt->is<var_t>()) {
error_key = key;
return false;
}
var = std::move(opt)->as<var_t>();
return _from_json(in, error_key, std::forward<rest_t>(rest)...);
}
template <typename var_t, typename... rest_t>
bool _from_json(
const json::value& in,
std::string& error_key,
const char*,
next_is_optional_t,
const char* key,
var_t& var,
rest_t&&... rest) const
{
auto opt = in.find(key);
if (opt) {
if (!opt->is<var_t>()) {
error_key = key;
return false;
}
var = std::move(opt)->as<var_t>();
} // next_is_optional_t, ignore key not found
return _from_json(in, error_key, std::forward<rest_t>(rest)...);
}
bool _from_json(const json::value&, std::string&, va_arg_end) const { return true; }
};
} // namespace json::_jsonization_helper
#if defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wgnu-zero-variadic-macro-arguments"
#endif
namespace json::_private_macro
{
#define _MEOJSON_STRINGIZE(arg) _MEOJSON_STRINGIZE1(arg)
#define _MEOJSON_STRINGIZE1(arg) _MEOJSON_STRINGIZE2(arg)
#define _MEOJSON_STRINGIZE2(arg) #arg
#define _MEOJSON_CONCATENATE(arg1, arg2) _MEOJSON_CONCATENATE1(arg1, arg2)
#define _MEOJSON_CONCATENATE1(arg1, arg2) _MEOJSON_CONCATENATE2(arg1, arg2)
#define _MEOJSON_CONCATENATE2(arg1, arg2) arg1##arg2
#define _MEOJSON_EXPAND(x) x
#define _MEOJSON_FOR_EACH_0(pred, ...)
#define _MEOJSON_FOR_EACH_1(pred, x, ...) pred(x)
#define _MEOJSON_FOR_EACH_2(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_1(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_3(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_2(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_4(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_3(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_5(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_4(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_6(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_5(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_7(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_6(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_8(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_7(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_9(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_8(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_10(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_9(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_11(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_10(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_12(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_11(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_13(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_12(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_14(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_13(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_15(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_14(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_16(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_15(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_17(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_16(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_18(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_17(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_19(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_18(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_20(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_19(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_21(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_20(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_22(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_21(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_23(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_22(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_24(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_23(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_25(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_24(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_26(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_25(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_27(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_26(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_28(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_27(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_29(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_28(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_30(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_29(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_31(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_30(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_32(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_31(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_33(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_32(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_34(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_33(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_35(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_34(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_36(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_35(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_37(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_36(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_38(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_37(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_39(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_38(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_40(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_39(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_41(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_40(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_42(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_41(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_43(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_42(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_44(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_43(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_45(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_44(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_46(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_45(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_47(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_46(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_48(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_47(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_49(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_48(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_50(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_49(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_51(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_50(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_52(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_51(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_53(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_52(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_54(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_53(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_55(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_54(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_56(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_55(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_57(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_56(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_58(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_57(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_59(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_58(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_60(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_59(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_61(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_60(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_62(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_61(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_63(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_62(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH_64(pred, x, ...) \
pred(x) _MEOJSON_EXPAND(_MEOJSON_FOR_EACH_63(pred, __VA_ARGS__))
#define _MEOJSON_ARG_COUNT(...) \
_MEOJSON_EXPAND(_MEOJSON_ARG_COUNT1( \
0, \
##__VA_ARGS__, \
64, \
63, \
62, \
61, \
60, \
59, \
58, \
57, \
56, \
55, \
54, \
53, \
52, \
51, \
50, \
49, \
48, \
47, \
46, \
45, \
44, \
43, \
42, \
41, \
40, \
39, \
38, \
37, \
36, \
35, \
34, \
33, \
32, \
31, \
30, \
29, \
28, \
27, \
26, \
25, \
24, \
23, \
22, \
21, \
20, \
19, \
18, \
17, \
16, \
15, \
14, \
13, \
12, \
11, \
10, \
9, \
8, \
7, \
6, \
5, \
4, \
3, \
2, \
1, \
0))
#define _MEOJSON_ARG_COUNT1( \
_0, \
_1, \
_2, \
_3, \
_4, \
_5, \
_6, \
_7, \
_8, \
_9, \
_10, \
_11, \
_12, \
_13, \
_14, \
_15, \
_16, \
_17, \
_18, \
_19, \
_20, \
_21, \
_22, \
_23, \
_24, \
_25, \
_26, \
_27, \
_28, \
_29, \
_30, \
_31, \
_32, \
_33, \
_34, \
_35, \
_36, \
_37, \
_38, \
_39, \
_40, \
_41, \
_42, \
_43, \
_44, \
_45, \
_46, \
_47, \
_48, \
_49, \
_50, \
_51, \
_52, \
_53, \
_54, \
_55, \
_56, \
_57, \
_58, \
_59, \
_60, \
_61, \
_62, \
_63, \
_64, \
N, \
...) \
N
#define _MEOJSON_FOR_EACH_(N, pred, ...) \
_MEOJSON_EXPAND(_MEOJSON_CONCATENATE(_MEOJSON_FOR_EACH_, N)(pred, __VA_ARGS__))
#define _MEOJSON_FOR_EACH(pred, ...) \
_MEOJSON_EXPAND( \
_MEOJSON_FOR_EACH_(_MEOJSON_EXPAND(_MEOJSON_ARG_COUNT(__VA_ARGS__)), pred, __VA_ARGS__))
#define _MEOJSON_VARNAME(x) _MEOJSON_CONCATENATE(_meojson_jsonization_, x)
#define _MEOJSON_KEY_VALUE(x) _MEOJSON_STRINGIZE(x), x,
} // namespace json::_private_macro
#define MEO_TOJSON(...) \
json::value to_json() const \
{ \
return json::_jsonization_helper::dumper()._to_json( \
_MEOJSON_EXPAND(_MEOJSON_FOR_EACH(_MEOJSON_KEY_VALUE, __VA_ARGS__)) \
json::_jsonization_helper::va_arg_end {}); \
}
#define MEO_CHECKJSON(...) \
bool check_json(const json::value& _MEOJSON_VARNAME(in)) const \
{ \
std::string _MEOJSON_VARNAME(error_key); \
return check_json(_MEOJSON_VARNAME(in), _MEOJSON_VARNAME(error_key)); \
} \
bool check_json( \
const json::value& _MEOJSON_VARNAME(in), \
std::string& _MEOJSON_VARNAME(error_key)) const \
{ \
return json::_jsonization_helper::checker()._check_json( \
_MEOJSON_VARNAME(in), \
_MEOJSON_VARNAME(error_key), \
_MEOJSON_EXPAND(_MEOJSON_FOR_EACH(_MEOJSON_KEY_VALUE, __VA_ARGS__)) \
json::_jsonization_helper::va_arg_end {}); \
}
#define MEO_FROMJSON(...) \
bool from_json(const json::value& _MEOJSON_VARNAME(in)) \
{ \
std::string _MEOJSON_VARNAME(error_key); \
return from_json(_MEOJSON_VARNAME(in), _MEOJSON_VARNAME(error_key)); \
} \
bool from_json( \
const json::value& _MEOJSON_VARNAME(in), \
std::string& _MEOJSON_VARNAME(error_key)) \
{ \
return json::_jsonization_helper::loader()._from_json( \
_MEOJSON_VARNAME(in), \
_MEOJSON_VARNAME(error_key), \
_MEOJSON_EXPAND(_MEOJSON_FOR_EACH(_MEOJSON_KEY_VALUE, __VA_ARGS__)) \
json::_jsonization_helper::va_arg_end {}); \
}
#define MEO_JSONIZATION(...) \
_MEOJSON_EXPAND(MEO_TOJSON(__VA_ARGS__)) \
_MEOJSON_EXPAND(MEO_CHECKJSON(__VA_ARGS__)) \
_MEOJSON_EXPAND(MEO_FROMJSON(__VA_ARGS__))
#define MEO_OPT json::_jsonization_helper::next_is_optional_t {},
#if defined(__clang__)
#pragma clang diagnostic pop // -Wgnu-zero-variadic-macro-arguments
#endif

View File

@@ -1,108 +1,317 @@
## v5.16.4
## v6.3.4
### 修复 | Fix
### 拉电线不知天地为何物 | Highlight
* 修复台服基建干员列表回正错误 (#12652) @status102
本次版本更新真的是千呼万唤始出来,也恰逢新年版本和 PC 端的发布,我们在这个版本提供了对 PC 端的初步支持,也合并了 SideStory 「辞岁行」 的数据。
## v5.16.3
#### Windows 端一键长草任务配置重构
在这个版本,我们优化了自适应调整连战次数功能,每次开始前均调整为可用的最大次数,避免了理智溢出的风险.
本次更新我们对 Windows 端 「一键长草」 任务配置进行了重构,解决了一些痛点。
> 典型流程示例:
> 当前20理智, 上限150, 关卡消耗21理智 (6连战需126理智)
>
> 情况1: 有2瓶80理智药, 设置吃2瓶, 吃完两瓶理智药超出上限 (20 + 160 = 180) → 先吃一瓶 (20 + 80 = 100) 并调整次数为4连战 (4 × 21 = 84), 完成后再吃一瓶并消耗完剩下的理智
> 情况2: 有2瓶80理智药, 设置只吃1瓶吃1瓶 (+80) 达到吃药上限,关闭窗口触发调整 → 自动调整为4连战
> 情况3: 有1瓶80理智药, 自动吃掉1瓶 (+80) 无药可吃触发调整 → 自动调整为4连战
现在牛牛支持添加多个重复类型任务,并支持重命名。现在你可以通过 「一键长草」 任务左下角的加号按钮添加多个同类型任务,并可以通过拖拽任务来调整任务执行顺序,以及右键点击任务右侧的齿轮图标重命名和删除任务,这样你就可以更灵活地管理任务。
并且指定次数将联动连战次数
牛牛也新增了理智作战任务的周计划设置,可按星期数(如星期三、星期二、星期五等)设置任务是否执行。这样你就可以结合上面提到的添加任务,<u>在理智作战任务前添加另一个理智作战任务,并将其设置为仅打当期剿灭、仅在星期一运行</u>,更多用法等你探索~
> 示例: 假设当前 100 理智, 关卡消耗 6 理智
>
> 旧版本: 指定次数设为 3, 连战次数设为 5, 将作战 5 * 3 = 15 次, 消耗 15 x 6 = 90 理智
> 新版本: 指定次数设为 10, 连战次数设为 4, 将作战 4 * floor(10 / 4) = 8 次, 消耗 8 x 6 = 48 理智
> 新版本: 指定次数设为 10, 连战次数设为 AUTO, 将作战 6 * floor(10 / 6) + (10 % 6) = 10 次, 消耗 10 x 6 = 60 理智
另外,在牛牛执行一键长草流程时,各个任务的勾选框会根据其运行状态以不同颜色进行区分,直观反馈任务被跳过、已完成、运行中或执行失败等状态。
如果您遇到任何意外行为,请通过【设置】→【问题反馈】生成日志并提交给我们~
注:由于牛牛现已支持 「理智作战」 周计划并可添加多个同类型任务,本次更新**移除了原有 「剿灭作战」 任务失败后自动尝试下一个已开放的备选逻辑**,如有需要请参照上方的示例添加对应任务。
#### PC 端初步支持
本次更新,牛牛已支持控制 PC 端明日方舟了~不过有以下限制:
* 由于 Windows 的限制PC 端在被控制时**不可以处于最小化窗口状态**,否则游戏画面不会被渲染,也就无法被牛牛识别;
* 由于 Win32 API 和某反作弊软件的限制,牛牛在控制 PC 端时**必须要直接控制鼠标(不能模拟点击)**,期间不建议你使用鼠标。
另外由于维护人手有限PC 端的适配可能长期处于不稳定状态,部分功能可能出现异常或暂时无法使用。
我们非常欢迎社区开发者协助适配并提交改进,共同完善对 PC 端的支持。
#### 其他方面
* 我们继续对界园肉鸽进行适配,包括 DLC 2 的更新支持;
* 我们优化了自动编队的识别,现在支持对作业要求的精英化、等级和模组的识别,如果发现你的干员不满足要求将会有对应提示;
* 相应的,干员识别功能也支持显示精英化和等级了。
----
In this version, we've optimized the adaptive Serie count adjustment feature. Before each operation, the system will now automatically adjust to the maximum available Serie count, eliminating the risk of sanity overflow.
#### Restructuring of *Farming* Configuration for Windows
> Typical workflow examples:
> Current sanity: 20, Max sanity: 150, Stage cost: 21 sanity (6-Serie requires 126 sanity)
>
> Case 1: Having 2×80 sanity potions, set to consume 2 potions. Full consumption would exceed max sanity (20 + 160 = 180) → First consume one potion (20 + 80 = 100) and adjust to 4-Serie (4 × 21 = 84). After completion, consume the second potion and expend remaining sanity.
> Case 2: Having 2×80 sanity potions, set to consume only 1 potion (+80) reaches consumption limit. Closing window triggers adjustment → Automatically adjusts to 4-Serie.
> Case 3: Having 1×80 sanity potion, auto-consume 1 potion (+80). With no remaining potions, triggers adjustment → Automatically adjusts to 4-Serie.
In this update, we have restructured the *Farming* configuration for Windows, addressing several pain points.
Additionally, specified operation count will now coordinate with Serie count:
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.
> Example: Current 100 sanity, stage cost 6 sanity
>
> Old version: Specified count set to 3, Serie count set to 5 → Would complete 5 * 3 = 15 operations, consuming 15 x 6 = 90 sanity.
> New version: Specified count set to 10, Serie count set to 4 → Will complete 4 * floor(10 / 4) = 8 operations, consuming 8 x 6 = 48 sanity.
> New version: Specified count set to 10, Serie count set to AUTO → Will complete 6 * floor(10 / 6) + (10 % 6) = 10 operations, consuming 10 x 6 = 60 sanity.
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!
If you encounter any unexpected behavior, please generate logs via [Settings] → [Issue Report] and submit them to us~
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.
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.
#### Preliminary PC Client Support (**[CN ONLY]**)
In this update, MAA now supports controlling the PC client of Arknights.
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.
We warmly welcome community developers to assist with adaptation and submit improvements to collectively enhance PC client support.
#### Other Updates
* 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.
----
以下是详细内容: Changelog below:
以下是详细内容:
### 新增 | New
* 添加萨卡兹肉鸽劳作的清晨关卡策略 (#12626) @1286587265 @Daydreamer114 @Saratoga-Official
* 指定次数联动连战, 修复连战导致指定次数失效, Auto模式不再溢出理智 (#12592) @status102 @ABA2396 @Constrat
* 添加 自定义 webhook 功能 (#12602) @KagurazakaIris @ABA2396
* 肉鸽适配新干员 (#12599) @Saratoga-Official
* Mac AUTO连续作战 @hguandl
* 更新 333 搓玉一天三换排班表 (#12604) @E022-23093
* 更新 243 极限效率一天四换排班表20250507 修订) (#12598) @bodayw
### 改进 | Improved
* 日志压缩包压缩等级提升 (#12622) @BxFS
* 基建使用切换职业栏返回列表最左侧 (#12594) @ABA2396
## v6.3.4
### 修复 | Fix
* 切换账号失败 @Daydreamer114
* 模拟器路径选择功能弹窗异常 @ABA2396
* 截图增强显示错误 @ABA2396
* 无法进入活动 @ABA2396
* 刷理智结束后卡在“理智药选择”界面 @ABA2396
### 文档 | Docs
* 连战次数文档更新 @status102
* 更正保全派驻协议文档中的拼写错误 (#12578) @lucienshawls
* 更正主文档和中文文档中的两处错别字 (#12577) @lucienshawls
* 沟槽的 yj 怎么有倒计时的时候击杀数图标都不一样 @ABA2396
### 其他 | Other
* 调整提示颜色 @ABA2396
* 开始战斗前闪退无限循环识别,关卡名检查放宽至一分钟 (#12580) @ABA2396
* 肉鸽招募 练度不够干员的 priority 可能为正 @Daydreamer114
* 战斗次数识别错误缓解 @status102
* 关闭连战列表点击 @status102
* 关闭连战列表 @status102
* 移除肉鸽难度hard code (#12587) @status102
* 连战次数修复, 减少hard code @status102
* 补上之前漏改的 tasks 路径修改 @ABA2396
* 连战减少不必要的次数调整 @status102
* 战斗次数识别错误处理 @status102
* 关卡理智识别流程通用化 @status102
* 减少一次不必要的连战次数变更 @status102
* 移除过旧的任务参数 @status102
* 优化提示 @ABA2396
* 连战新增 -1 表示禁用切换 @ABA2396
* 修改连接失败提示描述 @ABA2396
* YostarKR BattleStartPre add ocrReplace pattern @HX3N
* YostarJP ocr edits (#12607) @Manicsteiner
* HttpService调整, Post函数追加 (#12605) @status102
* 好像提示了也没人看 @ABA2396
* 加点常用的进来 @status102
* 调整超时提醒输出 @ABA2396
* 理智识别 @status102
* Reapply "feat:实现自适应调整连战次数 (#12555)" @Yoak3n @ABA2396
* 调整 BattleKillsFlag height @ABA2396
## v6.3.3
### 新增 | New
* 适配 maafw 新 Win32 触控方式 (#15755) @MistEO
* PC 提示新增分辨率要求 @ABA2396
* PC 端忽略启动客户端设置 @SherkeyXD
### 改进 | Improved
* 被禁用的关卡错误进入关卡名二次识别 @status102
* 长草任务序列化接口重构拆分 (#15773) @status102
* 开始唤醒支持战斗中识别 @status102
* 自动编队无干员等级、技能等级要求时跳过识别 @status102
* 悖论和保全作业解析后自动切换作业类型 @status102
* 优化击杀数模板图 @ABA2396
### 修复 | Fix
* 修复游戏内快捷编队在矢量突破 S2 不会自动重置回技能选择界面 (#15802) @status102
* 刷理智关卡名识别错误替换 @status102
* 超出范围的 Rect 使用 {0, 0, 0, 0} 代替原样返回x, y为负值时 width 和 height 改正错误 (#15695) @status102
* 修复自定义基建计划在迁移时基建计划选择转换错误 @status102
* 小工具-公招识别 3~5 星设置时间配置读取错误 @status102
* IS6 EN yostar decided to finally fix the tongbaos releasing an official translation + resource updater copper-ability @Constrat
* EN Operator OCR roi fixes + skadi alter simplification @Constrat
* IS6 EN encounter regex post ROI increase @Constrat
* touch screen support for version updated page (#15747) @undefined-moe
* invert dice refresh with invest system priority in IS3 (#15740) @Constrat
* IS6 EN tongbao regex @Constrat
* YostarEN GO navigation fix @Constrat
* IS6 EN encounter regex @Constrat
* YostarJP ocr fix (#15793) @Manicsteiner
### 其他 | Other
* YostarKR SSS#9 SSSBuffChoose @HX3N
* updates to Resource Updater and clangd (#15758) @Constrat @soundofautumn
## v6.3.2
### 新增 | New
* 睡眠休眠前增加倒计时弹窗 @ABA2396
* 生息演算支援道具名称改为全字匹配 @ABA2396
### 改进 | Improved
* 干员识别按照 稀有度->精英化->等级->潜能->Id 排序 @ABA2396
* 优化识别工具中列表小于 5 时的显示效果 @ABA2396
* optimize templates @Constrat
* increase score for AddOperatorTradeAggressive EN @Constrat
### 修复 | Fix
* 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
* 删除一些过时内容 (#15700) @JasonHuang79
### 其他 | Other
* 增加 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

@@ -1,194 +1,62 @@
cmake_minimum_required(VERSION 3.21)
project(MaaAssistantArknights)
cmake_minimum_required(VERSION 3.28)
if (NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE "Release" CACHE STRING "Choose the type of build." FORCE)
endif ()
project(MAA)
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake")
option(BUILD_TEST "build a demo" OFF)
option(BUILD_WPF_GUI "build MaaWpfGui" ${WIN32})
option(BUILD_DEBUG_DEMO "build debug demo" OFF)
option(BUILD_XCFRAMEWORK "build xcframework for macOS app" OFF)
option(BUILD_UNIVERSAL "build both arm64 and x86_64 on macOS" OFF)
option(BUILD_SMOKE_TEST "build smoke_test" OFF)
option(INSTALL_PYTHON "install python ffi" OFF)
option(INSTALL_RESOURCE "install resource" OFF)
option(INSTALL_DEVEL "install development files" OFF)
option(INSTALL_FLATTEN "do not use bin lib include directory" ON)
option(INSTALL_THIRD_LIBS "install third party libraries" ON)
option(USE_MAADEPS "use third-party libraries built by MaaDeps" ON)
option(USE_RANGE_V3 "use range-v3" OFF)
option(WITH_EMULATOR_EXTRAS "build with emulator extras" ${WIN32})
option(WITH_THRIFT "build with thrift" OFF)
option(WITH_ASST_DEBUG "build with ASST_DEBUG defined" OFF)
include(${PROJECT_SOURCE_DIR}/cmake/utils.cmake)
include(${PROJECT_SOURCE_DIR}/cmake/thrift-gen.cmake)
if(USE_MAADEPS)
include(${PROJECT_SOURCE_DIR}/MaaDeps/maadeps.cmake)
endif()
add_library(header_only_libraries INTERFACE)
target_include_directories(header_only_libraries INTERFACE 3rdparty/include 3rdparty/EmulatorExtras)
file(GLOB_RECURSE maa_src src/MaaCore/*.cpp)
add_library(MaaCore SHARED ${maa_src})
if (MSVC)
target_compile_options(MaaCore PRIVATE "/utf-8")
target_compile_options(MaaCore PRIVATE "/MP")
target_compile_options(MaaCore PRIVATE "/W4;/WX")
target_compile_options(MaaCore PRIVATE "/wd4127") # conditional expression is constant
target_compile_options(MaaCore PRIVATE "/Wv:19.35.32217") # disable warning introduced after this version
set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>DLL")
else ()
target_compile_options(MaaCore PRIVATE "-Wall;-Wextra;-Wpedantic")
# LLVM clang 16 will failed with `error: no member named 'join' in namespace 'std::ranges::views'`, but Apple clang 16 won't
# value defined in https://cmake.org/cmake/help/latest/variable/CMAKE_LANG_COMPILER_ID.html
if ((CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang" AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 16)
OR (CMAKE_CXX_COMPILER_ID MATCHES "Clang" AND (NOT CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang") AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 17))
target_compile_options(MaaCore PRIVATE "-fexperimental-library")
endif ()
endif ()
if (WIN32)
#注意相比VS版本缺少了 -D_CONSOLE -D_WINDLL 两项
target_compile_definitions(MaaCore PRIVATE ASST_DLL_EXPORTS _UNICODE UNICODE)
endif ()
target_include_directories(MaaCore PUBLIC include PRIVATE src/MaaCore)
set(MaaCore_PUBLIC_HEADERS include/AsstCaller.h include/AsstPort.h)
target_sources(MaaCore PUBLIC ${MaaCore_PUBLIC_HEADERS})
set_target_properties(MaaCore PROPERTIES
CXX_STANDARD 20
CXX_STANDARD_REQUIRED ON
PUBLIC_HEADER "${MaaCore_PUBLIC_HEADERS}"
)
if(APPLE)
set_target_properties(MaaCore PROPERTIES INSTALL_RPATH "@loader_path/")
elseif(UNIX)
set_target_properties(MaaCore PROPERTIES INSTALL_RPATH "$ORIGIN/")
endif()
if (BUILD_TEST)
add_executable(test src/Cpp/main.cpp)
set_target_properties(test PROPERTIES
CXX_STANDARD 20
CXX_STANDARD_REQUIRED ON
)
target_link_libraries(test MaaCore)
endif (BUILD_TEST)
find_package(OpenCV REQUIRED COMPONENTS core imgproc imgcodecs videoio)
find_package(ZLIB REQUIRED)
find_package(cpr CONFIG REQUIRED)
list(APPEND maa_libs ${OpenCV_LIBS} ZLIB::ZLIB cpr::cpr header_only_libraries)
if(USE_MAADEPS)
find_package(asio REQUIRED)
list(APPEND maa_libs asio::asio)
endif()
find_package(onnxruntime CONFIG REQUIRED) # provided by onnxruntime>=1.16
list(APPEND maa_libs onnxruntime::onnxruntime)
if(DEFINED fastdeploy_SOURCE_DIR)
# TODO: FetchContent github.com/MaaAssistantArknights/FastDeploy
if(NOT DEFINED fastdeploy_BINARY_DIR)
set(fastdeploy_BINARY_DIR ${CMAKE_BINARY_DIR}/fastdeploy)
endif()
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
add_subdirectory(${fastdeploy_SOURCE_DIR} ${fastdeploy_BINARY_DIR} EXCLUDE_FROM_ALL SYSTEM)
if(NOT DEFINED fastdeploy_INCLUDE_DIRS)
set(fastdeploy_INCLUDE_DIRS ${fastdeploy_SOURCE_DIR})
endif()
target_include_directories(MaaCore SYSTEM PRIVATE ${fastdeploy_INCLUDE_DIRS})
get_target_property(fastdeploy_type fastdeploy_ppocr TYPE)
if(fastdeploy_type STREQUAL "SHARED_LIBRARY")
install(TARGETS fastdeploy_ppocr)
endif()
else()
find_package(fastdeploy_ppocr REQUIRED)
endif()
list(APPEND maa_libs fastdeploy_ppocr)
target_link_libraries(MaaCore ${maa_libs})
if(WITH_EMULATOR_EXTRAS AND NOT EXISTS ${PROJECT_SOURCE_DIR}/3rdparty/EmulatorExtras/Mumu)
message(WARNING "EmulatorExtras not found, please run `git submodule update --init 3rdparty/EmulatorExtras`")
set(WITH_EMULATOR_EXTRAS OFF)
endif()
target_compile_definitions(MaaCore PRIVATE ASST_WITH_EMULATOR_EXTRAS=$<BOOL:${WITH_EMULATOR_EXTRAS}>)
if(WITH_THRIFT)
find_package(Thrift CONFIG REQUIRED)
add_subdirectory(src/MaaThriftController)
target_link_libraries(MaaCore MaaThriftController)
endif(WITH_THRIFT)
if (WITH_ASST_DEBUG)
target_compile_definitions(MaaCore PRIVATE ASST_DEBUG)
endif ()
if(WIN32)
target_link_libraries(MaaCore ws2_32)
endif()
if (USE_RANGE_V3)
target_compile_definitions(MaaCore PRIVATE ASST_USE_RANGES_RANGE_V3)
find_package(range-v3 REQUIRED)
target_link_libraries(MaaCore range-v3::range-v3)
endif ()
if(INSTALL_DEVEL)
set(MaaCore_install_extra_args PUBLIC_HEADER DESTINATION devel/include ARCHIVE DESTINATION devel/lib)
endif()
option(WITH_HASH_VERSION "generate version from git hash" OFF)
option(BUILD_RESOURCE_UPDATER "build resource updater tool" OFF)
if(INSTALL_FLATTEN)
set(RPATH_LIBRARY_INSTALL_DIR .)
set(MaaCore_install_flatten_args RUNTIME DESTINATION . LIBRARY DESTINATION . PUBLIC_HEADER DESTINATION .)
endif()
install(TARGETS MaaCore ${MaaCore_install_flatten_args} ${MaaCore_install_extra_args})
include(src/MaaUtils/MaaUtils.cmake)
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake/modules")
include(${PROJECT_SOURCE_DIR}/cmake/config.cmake)
include(${PROJECT_SOURCE_DIR}/cmake/utils.cmake)
if(INSTALL_THIRD_LIBS AND USE_MAADEPS)
maadeps_install()
if(APPLE)
include(${PROJECT_SOURCE_DIR}/cmake/macos.cmake)
endif()
if (INSTALL_PYTHON)
add_library(HeaderOnlyLibraries INTERFACE)
target_include_directories(HeaderOnlyLibraries INTERFACE 3rdparty/include)
add_subdirectory(src/MaaCore)
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)
install(DIRECTORY src/Python DESTINATION .)
endif (INSTALL_PYTHON)
if (INSTALL_RESOURCE)
endif()
if(INSTALL_RESOURCE)
install(DIRECTORY resource DESTINATION .)
endif (INSTALL_RESOURCE)
endif()
if(BUILD_DEBUG_DEMO OR BUILD_SMOKE_TEST)
add_subdirectory(src/Cpp)
endif()
if (APPLE)
include(${PROJECT_SOURCE_DIR}/cmake/macos.cmake)
endif (APPLE)
# define MAA_VERSION from git
if (NOT DEFINED MAA_VERSION)
find_package(Git)
endif ()
if (NOT DEFINED MAA_VERSION AND GIT_FOUND)
execute_process(
COMMAND "${GIT_EXECUTABLE}" rev-parse HEAD
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
RESULT_VARIABLE result
OUTPUT_VARIABLE output
ERROR_VARIABLE err
OUTPUT_STRIP_TRAILING_WHITESPACE
)
if (result EQUAL 0)
set(MAA_VERSION "${output}")
else ()
message(WARNING "git rev-parse returning ${result}, output:\n${err}")
endif ()
endif ()
if (NOT MAA_VERSION)
set(MAA_VERSION "DEBUG VERSION")
endif ()
message(STATUS "MAA_VERSION=${MAA_VERSION}")
add_compile_definitions(MAA_VERSION="${MAA_VERSION}")
if(BUILD_RESOURCE_UPDATER)
add_subdirectory(tools/ResourceUpdater)
endif()

403
CMakePresets.json Normal file
View File

@@ -0,0 +1,403 @@
{
"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",
"BUILD_RESOURCE_UPDATER": "ON",
"INSTALL_RESOURCE": "OFF",
"INSTALL_PYTHON": "OFF"
},
"condition": {
"type": "equals",
"lhs": "${hostSystemName}",
"rhs": "Windows"
}
},
{
"name": "windows-clang-base",
"hidden": true,
"generator": "Ninja Multi-Config",
"binaryDir": "${sourceDir}/build",
"$comment": [
"NOT for building — only for generating compile_commands.json for clangd / VS Code",
"run from 'x64 Native Tools Command Prompt for VS' or ensure clang-cl is in PATH",
"to build, use the Visual Studio presets (windows-x64, windows-arm64)"
],
"condition": {
"type": "equals",
"lhs": "${hostSystemName}",
"rhs": "Windows"
},
"cacheVariables": {
"CMAKE_C_COMPILER": "clang-cl",
"CMAKE_CXX_COMPILER": "clang-cl",
"CMAKE_C_COMPILER_TARGET": "x86_64-pc-windows-msvc",
"CMAKE_CXX_COMPILER_TARGET": "x86_64-pc-windows-msvc",
"CMAKE_EXPORT_COMPILE_COMMANDS": "ON",
"BUILD_WPF_GUI": "OFF",
"BUILD_DEBUG_DEMO": "ON",
"BUILD_RESOURCE_UPDATER": "ON",
"INSTALL_RESOURCE": "OFF",
"INSTALL_PYTHON": "OFF"
}
},
{
"name": "windows-x64-clang",
"inherits": "windows-clang-base",
"displayName": "Windows x64 (clang-cl)",
"cacheVariables": {
"MAADEPS_TRIPLET": "maa-x64-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

@@ -1,77 +0,0 @@
@echo off
chcp 65001
setlocal enabledelayedexpansion
:: 定义ANSI颜色代码
for /f %%a in ('echo prompt $E^| cmd') do set "ESC=%%a"
set "RESET=%ESC%[0m"
set "GREEN=%ESC%[32m"
set "RED=%ESC%[31m"
set "YELLOW=%ESC%[33m"
set "BLUE=%ESC%[34m"
set "CYAN=%ESC%[36m"
set "WHITE=%ESC%[37m"
set "BOLD=%ESC%[1m"
:: 初始化错误标志
set "ErrorOccurred=0"
openfiles >nul 2>&1
if %errorlevel% neq 0 (
echo %YELLOW%正在获取管理员权限...%RESET%
echo %YELLOW%Obtaining administrator privileges...%RESET%
powershell -Command "Start-Process cmd.exe -ArgumentList '/c %~dpnx0' -Verb RunAs"
exit /b
)
echo.
echo %BLUE%========================================%RESET%
echo %BOLD%%CYAN%正在安装 Microsoft Visual C++ Redistributable%RESET%
echo %BOLD%%CYAN%Installing Microsoft Visual C++ Redistributable%RESET%
echo %BLUE%========================================%RESET%
echo.
winget install "Microsoft.VCRedist.2015+.x64" --override "/repair /passive /norestart" --uninstall-previous --accept-package-agreements --force
if %errorlevel% neq 0 (
echo.
echo %BOLD%%RED%错误: Microsoft.VCRedist.2015+.x64 安装失败%RESET%
echo %BOLD%%RED%Error: Microsoft.VCRedist.2015+.x64 installation failed%RESET%
set "ErrorOccurred=1"
)
echo.
echo %BLUE%========================================%RESET%
echo %BOLD%%CYAN%正在安装 .NET Desktop Runtime 8.0%RESET%
echo %BOLD%%CYAN%Installing .NET Desktop Runtime 8.0%RESET%
echo %BLUE%========================================%RESET%
echo.
winget install "Microsoft.DotNet.DesktopRuntime.8" --override "/repair /passive /norestart" --uninstall-previous --accept-package-agreements --force
if %errorlevel% neq 0 (
echo.
echo %BOLD%%RED%错误: Microsoft.DotNet.DesktopRuntime.8 安装失败%RESET%
echo %BOLD%%RED%Error: Microsoft.DotNet.DesktopRuntime.8 installation failed%RESET%
set "ErrorOccurred=1"
)
echo.
if %ErrorOccurred% equ 0 (
echo %BOLD%%GREEN%运行库修复完成,请重启电脑后再次尝试运行 MAA。%RESET%
echo %BOLD%%GREEN%The runtime library repair is complete. Please restart your computer and try running MAA again.%RESET%
) else (
echo %RED%========================================%RESET%
echo %BOLD%%RED%运行库修复过程中出现错误%RESET%
echo %BOLD%%RED%Errors occurred during runtime library repair%RESET%
echo.
echo %YELLOW%您可以尝试手动下载并安装以下组件:%RESET%
echo %YELLOW%You can try to manually download and install the following components:%RESET%
echo.
echo %WHITE%Microsoft Visual C++ Redistributable:%RESET%
echo %CYAN%https://aka.ms/vs/17/release/vc_redist.x64.exe%RESET%
echo.
echo %WHITE%.NET Desktop Runtime 8.0:%RESET%
echo %CYAN%https://aka.ms/dotnet/8.0/windowsdesktop-runtime-win-x64.exe%RESET%
echo %RED%========================================%RESET%
)
pause

View File

@@ -1,15 +0,0 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:Boolean x:Key="/Default/UserDictionary/Words/=Arknights/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Bilibili/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Infrast/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=oper/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=opers/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Pallas/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Pormpt/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Rougelike/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=templ/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=thres/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Todays/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=txwy/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=vuvm/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=XYAZ/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>

106
MAA.sln
View File

@@ -1,106 +0,0 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.2.32616.157
MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MaaWpfGui", "src\MaaWpfGui\MaaWpfGui.csproj", "{FFDC8F49-8EAF-45BE-B0A8-7EF0DB9875A2}"
ProjectSection(ProjectDependencies) = postProject
{362D1E30-F5AE-4279-9985-65C27B3BA300} = {362D1E30-F5AE-4279-9985-65C27B3BA300}
{F860C043-4D86-41B6-A97E-4A75C9A6C4EC} = {F860C043-4D86-41B6-A97E-4A75C9A6C4EC}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MaaCore", "src\MaaCore\MaaCore.vcxproj", "{362D1E30-F5AE-4279-9985-65C27B3BA300}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MaaThriftController", "src\MaaThriftController\MaaThriftController.vcxproj", "{8238EDB1-19BF-4E3B-AF5B-016120D59D7B}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{11F02235-5785-408B-9651-8A4B41FF36F4}"
ProjectSection(SolutionItems) = preProject
.editorconfig = .editorconfig
EndProjectSection
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SyncRes", "src\SyncRes\SyncRes.csproj", "{F860C043-4D86-41B6-A97E-4A75C9A6C4EC}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Sample", "src\Cpp\MaaSample.vcxproj", "{63B4F1A2-291C-4C85-91E1-A1F6DAE30D64}"
ProjectSection(ProjectDependencies) = postProject
{362D1E30-F5AE-4279-9985-65C27B3BA300} = {362D1E30-F5AE-4279-9985-65C27B3BA300}
{F860C043-4D86-41B6-A97E-4A75C9A6C4EC} = {F860C043-4D86-41B6-A97E-4A75C9A6C4EC}
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|ARM64 = Debug|ARM64
Debug|x64 = Debug|x64
Release|ARM64 = Release|ARM64
Release|x64 = Release|x64
RelWithDebInfo|ARM64 = RelWithDebInfo|ARM64
RelWithDebInfo|x64 = RelWithDebInfo|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{FFDC8F49-8EAF-45BE-B0A8-7EF0DB9875A2}.Debug|ARM64.ActiveCfg = Debug|ARM64
{FFDC8F49-8EAF-45BE-B0A8-7EF0DB9875A2}.Debug|ARM64.Build.0 = Debug|ARM64
{FFDC8F49-8EAF-45BE-B0A8-7EF0DB9875A2}.Debug|x64.ActiveCfg = Debug|x64
{FFDC8F49-8EAF-45BE-B0A8-7EF0DB9875A2}.Debug|x64.Build.0 = Debug|x64
{FFDC8F49-8EAF-45BE-B0A8-7EF0DB9875A2}.Release|ARM64.ActiveCfg = Release|ARM64
{FFDC8F49-8EAF-45BE-B0A8-7EF0DB9875A2}.Release|ARM64.Build.0 = Release|ARM64
{FFDC8F49-8EAF-45BE-B0A8-7EF0DB9875A2}.Release|x64.ActiveCfg = Release|x64
{FFDC8F49-8EAF-45BE-B0A8-7EF0DB9875A2}.Release|x64.Build.0 = Release|x64
{FFDC8F49-8EAF-45BE-B0A8-7EF0DB9875A2}.RelWithDebInfo|ARM64.ActiveCfg = RelWithDebInfo|ARM64
{FFDC8F49-8EAF-45BE-B0A8-7EF0DB9875A2}.RelWithDebInfo|ARM64.Build.0 = RelWithDebInfo|ARM64
{FFDC8F49-8EAF-45BE-B0A8-7EF0DB9875A2}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
{FFDC8F49-8EAF-45BE-B0A8-7EF0DB9875A2}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64
{362D1E30-F5AE-4279-9985-65C27B3BA300}.Debug|ARM64.ActiveCfg = Debug|ARM64
{362D1E30-F5AE-4279-9985-65C27B3BA300}.Debug|ARM64.Build.0 = Debug|ARM64
{362D1E30-F5AE-4279-9985-65C27B3BA300}.Debug|x64.ActiveCfg = Debug|x64
{362D1E30-F5AE-4279-9985-65C27B3BA300}.Debug|x64.Build.0 = Debug|x64
{362D1E30-F5AE-4279-9985-65C27B3BA300}.Release|ARM64.ActiveCfg = Release|ARM64
{362D1E30-F5AE-4279-9985-65C27B3BA300}.Release|ARM64.Build.0 = Release|ARM64
{362D1E30-F5AE-4279-9985-65C27B3BA300}.Release|x64.ActiveCfg = Release|x64
{362D1E30-F5AE-4279-9985-65C27B3BA300}.Release|x64.Build.0 = Release|x64
{362D1E30-F5AE-4279-9985-65C27B3BA300}.RelWithDebInfo|ARM64.ActiveCfg = RelWithDebInfo|ARM64
{362D1E30-F5AE-4279-9985-65C27B3BA300}.RelWithDebInfo|ARM64.Build.0 = RelWithDebInfo|ARM64
{362D1E30-F5AE-4279-9985-65C27B3BA300}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
{362D1E30-F5AE-4279-9985-65C27B3BA300}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64
{8238EDB1-19BF-4E3B-AF5B-016120D59D7B}.Debug|ARM64.ActiveCfg = Debug|ARM64
{8238EDB1-19BF-4E3B-AF5B-016120D59D7B}.Debug|ARM64.Build.0 = Debug|ARM64
{8238EDB1-19BF-4E3B-AF5B-016120D59D7B}.Debug|x64.ActiveCfg = Debug|x64
{8238EDB1-19BF-4E3B-AF5B-016120D59D7B}.Debug|x64.Build.0 = Debug|x64
{8238EDB1-19BF-4E3B-AF5B-016120D59D7B}.Release|ARM64.ActiveCfg = Release|ARM64
{8238EDB1-19BF-4E3B-AF5B-016120D59D7B}.Release|ARM64.Build.0 = Release|ARM64
{8238EDB1-19BF-4E3B-AF5B-016120D59D7B}.Release|x64.ActiveCfg = Release|x64
{8238EDB1-19BF-4E3B-AF5B-016120D59D7B}.Release|x64.Build.0 = Release|x64
{8238EDB1-19BF-4E3B-AF5B-016120D59D7B}.RelWithDebInfo|ARM64.ActiveCfg = RelWithDebInfo|ARM64
{8238EDB1-19BF-4E3B-AF5B-016120D59D7B}.RelWithDebInfo|ARM64.Build.0 = RelWithDebInfo|ARM64
{8238EDB1-19BF-4E3B-AF5B-016120D59D7B}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
{8238EDB1-19BF-4E3B-AF5B-016120D59D7B}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64
{F860C043-4D86-41B6-A97E-4A75C9A6C4EC}.Debug|ARM64.ActiveCfg = Debug|ARM64
{F860C043-4D86-41B6-A97E-4A75C9A6C4EC}.Debug|ARM64.Build.0 = Debug|ARM64
{F860C043-4D86-41B6-A97E-4A75C9A6C4EC}.Debug|x64.ActiveCfg = Debug|x64
{F860C043-4D86-41B6-A97E-4A75C9A6C4EC}.Debug|x64.Build.0 = Debug|x64
{F860C043-4D86-41B6-A97E-4A75C9A6C4EC}.Release|ARM64.ActiveCfg = Release|ARM64
{F860C043-4D86-41B6-A97E-4A75C9A6C4EC}.Release|ARM64.Build.0 = Release|ARM64
{F860C043-4D86-41B6-A97E-4A75C9A6C4EC}.Release|x64.ActiveCfg = Release|x64
{F860C043-4D86-41B6-A97E-4A75C9A6C4EC}.Release|x64.Build.0 = Release|x64
{F860C043-4D86-41B6-A97E-4A75C9A6C4EC}.RelWithDebInfo|ARM64.ActiveCfg = RelWithDebInfo|ARM64
{F860C043-4D86-41B6-A97E-4A75C9A6C4EC}.RelWithDebInfo|ARM64.Build.0 = RelWithDebInfo|ARM64
{F860C043-4D86-41B6-A97E-4A75C9A6C4EC}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
{F860C043-4D86-41B6-A97E-4A75C9A6C4EC}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64
{63B4F1A2-291C-4C85-91E1-A1F6DAE30D64}.Debug|ARM64.ActiveCfg = Debug|ARM64
{63B4F1A2-291C-4C85-91E1-A1F6DAE30D64}.Debug|ARM64.Build.0 = Debug|ARM64
{63B4F1A2-291C-4C85-91E1-A1F6DAE30D64}.Debug|x64.ActiveCfg = Debug|x64
{63B4F1A2-291C-4C85-91E1-A1F6DAE30D64}.Debug|x64.Build.0 = Debug|x64
{63B4F1A2-291C-4C85-91E1-A1F6DAE30D64}.Release|ARM64.ActiveCfg = Release|ARM64
{63B4F1A2-291C-4C85-91E1-A1F6DAE30D64}.Release|ARM64.Build.0 = Release|ARM64
{63B4F1A2-291C-4C85-91E1-A1F6DAE30D64}.Release|x64.ActiveCfg = Release|x64
{63B4F1A2-291C-4C85-91E1-A1F6DAE30D64}.Release|x64.Build.0 = Release|x64
{63B4F1A2-291C-4C85-91E1-A1F6DAE30D64}.RelWithDebInfo|ARM64.ActiveCfg = RelWithDebInfo|ARM64
{63B4F1A2-291C-4C85-91E1-A1F6DAE30D64}.RelWithDebInfo|ARM64.Build.0 = RelWithDebInfo|ARM64
{63B4F1A2-291C-4C85-91E1-A1F6DAE30D64}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64
{63B4F1A2-291C-4C85-91E1-A1F6DAE30D64}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {4F2C0E4B-4FE9-47C6-A878-6BD2FAD8B9B2}
EndGlobalSection
EndGlobal

View File

@@ -1,170 +0,0 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=EN/@EntryIndexedValue">EN</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=KR/@EntryIndexedValue">KR</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=JP/@EntryIndexedValue">JP</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=GUI/@EntryIndexedValue">GUI</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=SWMINIMIZE/@EntryIndexedValue">SWMINIMIZE</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=AP/@EntryIndexedValue">AP</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=AP_002D/@EntryIndexedValue">AP-</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=CA/@EntryIndexedValue">CA</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=CA_002D/@EntryIndexedValue">CA-</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=CE/@EntryIndexedValue">CE</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=CE_002D/@EntryIndexedValue">CE-</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=EN/@EntryIndexedValue">EN</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=IS/@EntryIndexedValue">IS</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=JP/@EntryIndexedValue">JP</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=KR/@EntryIndexedValue">KR</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=LD/@EntryIndexedValue">LD</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=LS/@EntryIndexedValue">LS</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=LS_002D/@EntryIndexedValue">LS-</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=PR_002DA/@EntryIndexedValue">PR-A</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=PR_002DA_002D/@EntryIndexedValue">PR-A-</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=PR_002DB/@EntryIndexedValue">PR-B</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=PR_002DB_002D/@EntryIndexedValue">PR-B-</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=PR_002DC/@EntryIndexedValue">PR-C</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=PR_002DC_002D/@EntryIndexedValue">PR-C-</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=PR_002DD/@EntryIndexedValue">PR-D</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=PR_002DD_002D/@EntryIndexedValue">PR-D-</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=SK/@EntryIndexedValue">SK</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=SK_002D/@EntryIndexedValue">SK-</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=SSS/@EntryIndexedValue">SSS</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=WSA/@EntryIndexedValue">WSA</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/Abbreviations/=XYAZ/@EntryIndexedValue">XYAZ</s:String>
<s:Boolean x:Key="/Default/GrammarAndSpelling/GrammarChecking/Exceptions/=Github/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/GrammarAndSpelling/GrammarChecking/Exceptions/=_4E00_9375_8F2A/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/GrammarAndSpelling/GrammarChecking/Exceptions/=_591C_95F4_6A21_5F0F/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=acast/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=acfend/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=acguad/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=acpion/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=acspec/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=acsupo/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=advapi/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Aero/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Affero/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=aguard/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=amedic/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=amiya/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=apionr/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=arget/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Arknights/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=arkplanner/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=asnipe/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=autofill/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Bilibili/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Bluestacks/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=bsconsole/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=ccast/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=cdfend/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=cguard/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Chayn/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Chyan/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=cmedic/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Collapsal/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=cpione/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=csnipe/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=cspec/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=csuppo/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=ctrler/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=desp/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=dnplayer/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Ehem/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=esource/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Eyjafjalla/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Favourite/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=filetime/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=findstr/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=FLASHW/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=FLASHWINFO/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=foldartal/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Foldartals/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=framerate/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=furni/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Gacha/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Gavial/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Grandet/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Hotkey/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=hwnd/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Infrast/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Inited/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=iter/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=jsend/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=ldconsole/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=ldplayer/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=LD_0027s/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=leidian/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Lolicon/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=lpwndpl/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=ls_005B_0022sub/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=luestacks/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=maatouch/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=MAA_0027s/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=memuc/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Minitouch/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=mirrorc/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Mirrorchyan/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Mizuki/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Mumu/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Nemu/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Netease/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=netstat/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Nonfriend/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=notstationed/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=objstr/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=oper/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=opers/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Originite/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Originium/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=originiums/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Orundum/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Orundums/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=o_FF9Fv_FF9F/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Pallas/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=pidl/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Pormpt/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=powrprof/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=ppidl/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Prts/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=pwfi/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=qmsg/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Raidian/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=rcast/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=rdfend/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=removelist/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=rguard/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=rmean/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=rmedic/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Roguelike/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=rsnipe/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Sami/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Sarkaz/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Screencap/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=sctp/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=serilog/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Showminimized/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Shownormal/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Skland/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=specialaccess/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=spid/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=SSS/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=STGM/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Stormeye/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=strlen/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Stylet/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=subtask/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Suppressions/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Surtr/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=SWMINIMIZE/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=taskchain/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Todays/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=txwy/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=ucrtbase/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=vmonitor/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Webhook/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=XYAZ/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Yahei/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=yituliu/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Yostar/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=_0020_0020_0020wp_002ELength_0020/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=_0020_003D_0020stri/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>

View File

@@ -4,7 +4,7 @@
<img alt="LOGO" src="./docs/.vuepress/public/images/maa-logo_512x512.png" width="256" height="256" />
# MaaAssistantArknights
# MAA
<br>
<div>
@@ -21,11 +21,14 @@
<img alt="stars" src="https://img.shields.io/github/stars/MaaAssistantArknights/MaaAssistantArknights?style=social">
<img alt="GitHub all releases" src="https://img.shields.io/github/downloads/MaaAssistantArknights/MaaAssistantArknights/total?style=social">
</div>
<div>
<a href="https://deepwiki.com/MaaAssistantArknights/MaaAssistantArknights"><img src="https://deepwiki.com/badge.svg" alt="Ask DeepWiki"></a>
</div>
<br>
<!-- markdownlint-restore -->
[简体中文](https://maa.plus/docs/zh-cn/) | [繁體中文](https://maa.plus/docs/zh-tw/) | [English](https://maa.plus/docs/en-us/) | [日本語](https://maa.plus/docs/ja-jp/) | [한국어](https://maa.plus/docs/ko-kr/)
[简体中文](https://docs.maa.plus/zh-cn/) | [繁體中文](https://docs.maa.plus/zh-tw/) | [English](https://docs.maa.plus/en-us/) | [日本語](https://docs.maa.plus/ja-jp/) | [한국어](https://docs.maa.plus/ko-kr/)
MAA 的意思是 MAA Assistant Arknights
@@ -39,12 +42,12 @@ MAA 的意思是 MAA Assistant Arknights
## 下载与安装
请阅读 [文档](https://maa.plus/docs/zh-cn/manual/newbie.html) 后前往 [官网](https://maa.plus) 或 [Releases](https://github.com/MaaAssistantArknights/MaaAssistantArknights/releases) 下载,并参考 [新手上路](https://maa.plus/docs/zh-cn/manual/newbie.html) 进行安装。
请阅读 [文档](https://docs.maa.plus/zh-cn/manual/newbie.html) 后前往 [官网](https://maa.plus) 或 [Releases](https://github.com/MaaAssistantArknights/MaaAssistantArknights/releases) 下载,并参考 [新手上路](https://docs.maa.plus/zh-cn/manual/newbie.html) 进行安装。
## 亮点功能
- 理智,掉落识别及上传 [企鹅物流](https://penguin-stats.cn/)[一图流](https://ark.yituliu.cn/)
- 智能基建换班,自动计算干员效率,单设施内最优解;同时也支持 [自定义排班](https://maa.plus/docs/zh-cn/protocol/base-scheduling-schema.html)
- 理智作战,掉落识别及上传 [企鹅物流](https://penguin-stats.cn/)[一图流](https://ark.yituliu.cn/)
- 智能基建换班,自动计算干员效率,单设施内最优解;同时也支持 [自定义排班](https://docs.maa.plus/zh-cn/protocol/base-scheduling-schema.html)
- 自动公招,可选使用加急许可,一次全部刷完!公招数据自动上传 [企鹅物流](https://penguin-stats.cn/result/stage/recruit/recruit)[一图流](https://ark.yituliu.cn/survey/maarecruitdata)
- 支持手动识别公招界面,方便对高星公招做出选择 ~~(你的这个高资回费出的是推王呢还是推王呢)~~
- 支持识别干员列表,统计已有和未有干员及潜能,并在公招识别显示
@@ -83,48 +86,36 @@ MAA 的意思是 MAA Assistant Arknights
### 功能介绍
请参阅 [用户手册](https://maa.plus/docs/zh-cn/manual/)。
请参阅 [用户手册](https://docs.maa.plus/zh-cn/manual/)。
### 外服支持
目前国际服(美服)、日服、韩服、繁中服的绝大部分功能均已支持。但由于外服用户较少及项目人手不足,很多功能并没有进行全面的测试,所以请自行体验。
若您遇到了 Bug或对某个功能有强需求欢迎在 [Issues](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues) 和 [讨论区](https://github.com/MaaAssistantArknights/MaaAssistantArknights/discussions) 催更;或加入我们一起建设 MAA请参阅 [外服适配教程](https://maa.plus/docs/zh-cn/develop/overseas-client-adaptation.html)
若您遇到了 Bug或对某个功能有强需求欢迎在 [Issues](https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues) 和 [讨论区](https://github.com/MaaAssistantArknights/MaaAssistantArknights/discussions) 催更;或加入我们一起建设 MAA请参阅 [外服适配教程](https://docs.maa.plus/zh-cn/develop/overseas-client-adaptation.html)
### CLI 支持
MAA 支持命令行界面CLI操作支持 LinuxmacOS 和 Windows可用于自动化脚本或在无图形界面的服务器上使用。请参阅 [CLI 使用指南](https://maa.plus/docs/zh-cn/manual/cli/)
MAA 支持命令行界面CLI操作支持 LinuxmacOS 和 Windows可用于自动化脚本或在无图形界面的服务器上使用。请参阅 [CLI 使用指南](https://docs.maa.plus/zh-cn/manual/cli/)
## 加入我们
### 主要关联项目
**目前项目组非常缺前端大佬,若您有相关经验,欢迎加入我们!**
- 全新框架:[MaaFramework](https://github.com/MaaXYZ/MaaFramework)
- [作业站](https://prts.plus) 前端:[maa-copilot-frontend](https://github.com/MaaAssistantArknights/maa-copilot-frontend)
- [作业站](https://prts.plus) 后端:[MaaBackendCenter](https://github.com/MaaAssistantArknights/MaaBackendCenter)
- [官网](https://maa.plus)[前端](website)
- [作业站](https://prts.plus) 前端:[zoot-plus-frontend](https://github.com/ZOOT-Plus/zoot-plus-frontend)
- [作业站](https://prts.plus) 后端:[ZootPlusBackend](https://github.com/ZOOT-Plus/ZootPlusBackend)
- [官网](https://maa.plus)[前端](https://github.com/MaaAssistantArknights/maa-website)
- 深度学习:[MaaAI](https://github.com/MaaAssistantArknights/MaaAI)
### 多语言 (i18n)
MAA 支持多国语言,并使用 Weblate 进行本地化管理。如果您通晓多门语言,欢迎前往 [MAA Weblate](https://weblate.maa-org.net) 帮助我们进行翻译。
MAA 以中文(简体)为第一语言,翻译词条均以中文(简体)为准。
[![Weblate](https://weblate.maa-org.net/widget/maa/wpf-gui/multi-auto.svg)](https://weblate.maa-org.net/engage/maa/)
### 参与开发
#### Windows
请参阅 [开发指南](https://docs.maa.plus/zh-cn/develop/development.html)。
请参阅 [开始开发](https://maa.plus/docs/zh-cn/develop/development.html)。
#### Linux | macOS
请参阅 [Linux 编译教程](https://maa.plus/docs/zh-cn/develop/linux-tutorial.html)。
#### API
### API
- [C 接口](include/AsstCaller.h)[集成示例](src/Cpp/main.cpp)
- [Python 接口](src/Python/asst/asst.py)[集成示例](src/Python/sample.py)
@@ -135,22 +126,18 @@ MAA 以中文(简体)为第一语言,翻译词条均以中文(简体)
- [Rust 接口](src/Rust/src/maa_sys)[HTTP 接口](src/Rust)
- [TypeScript 接口](https://github.com/MaaAssistantArknights/MaaX/tree/main/packages/main/coreLoader)
- [Woolang 接口](src/Woolang/maa.wo)[集成示例](src/Woolang/demo.wo)
- [集成文档](https://maa.plus/docs/zh-cn/protocol/integration.html)
- [回调消息协议](https://maa.plus/docs/zh-cn/protocol/callback-schema.html)
- [任务流程协议](https://maa.plus/docs/zh-cn/protocol/task-schema.html)
- [自动抄作业协议](https://maa.plus/docs/zh-cn/protocol/copilot-schema.html)
- [集成文档](https://docs.maa.plus/zh-cn/protocol/integration.html)
- [回调消息协议](https://docs.maa.plus/zh-cn/protocol/callback-schema.html)
- [任务流程协议](https://docs.maa.plus/zh-cn/protocol/task-schema.html)
- [自动抄作业协议](https://docs.maa.plus/zh-cn/protocol/copilot-schema.html)
#### 外服适配
### 外服适配
请参阅 [外服适配教程](https://maa.plus/docs/zh-cn/develop/overseas-client-adaptation.html),对于国服已支持的功能,绝大部分的外服适配工作仅需要截图 + 简单的 JSON 修改即可。
请参阅 [外服适配教程](https://docs.maa.plus/zh-cn/develop/overseas-client-adaptation.html),对于国服已支持的功能,绝大部分的外服适配工作仅需要截图 + 简单的 JSON 修改即可。
#### 想参与开发,但不太会用 GitHub?
### Issue bot
[GitHub Pull Request 流程简述](https://maa.plus/docs/zh-cn/develop/development.html#github-pull-request-流程简述)
#### Issue bot
请参阅 [Issue Bot 使用方法](https://maa.plus/docs/zh-cn/develop/issue-bot-usage.html)
请参阅 [Issue Bot 使用方法](https://docs.maa.plus/zh-cn/develop/issue-bot-usage.html)
## 致谢
@@ -202,7 +189,7 @@ MAA 以中文(简体)为第一语言,翻译词条均以中文(简体)
## 广告
用户交流 QQ 群:[MAA 使用 & 粥游交流 QQ 群](https://ota.maa.plus/MaaAssistantArknights/api/qqgroup/index.html)
用户交流 QQ 群:[MAA 使用 & 粥游交流 QQ 群](https://api.maa.plus/MaaAssistantArknights/api/qqgroup/index.html)
Discord 服务器: [邀请链接](https://discord.gg/23DfZ9uA4V)
用户交流 TG 群:[Telegram 群](https://t.me/+Mgc2Zngr-hs3ZjU1)
自动战斗 JSON 作业分享:[prts.plus](https://prts.plus)

View File

@@ -2,11 +2,11 @@
## 受支持的版本 / Supported Versions
我们仅对 v4 和 v5 两个大版本的最新稳定版提供安全支持,如有安全问题,我们将会尽可能快地发布新的稳定版解决。
我们仅对 v6 的最新稳定版提供安全支持,如有安全问题,我们将会尽可能快地发布新的稳定版解决。
内测版、公测版仅供测试,我们不会对其提供安全支持。
We only provide security support for the latest Stable Release versions of v4 and v5. If there are security issues, we will release a new stable version as soon as possible to solve them.
We only provide security support for the latest Stable Release versions of v6. If there are security issues, we will release a new stable version as soon as possible to solve them.
The Nightly Release version and the Beta Release version are for testing only, and we will not provide security support for them.

View File

@@ -1,7 +0,0 @@
:; set -eo pipefail
:; SCRIPT_DIR=$(cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd)
:; ${SCRIPT_DIR}/build.sh "$@"
:; exit $?
@ECHO OFF
powershell -ExecutionPolicy ByPass -NoProfile -File "%~dp0build.ps1" %*

View File

@@ -1,69 +0,0 @@
[CmdletBinding()]
Param(
[Parameter(Position=0,Mandatory=$false,ValueFromRemainingArguments=$true)]
[string[]]$BuildArguments
)
Write-Output "PowerShell $($PSVersionTable.PSEdition) version $($PSVersionTable.PSVersion)"
Set-StrictMode -Version 2.0; $ErrorActionPreference = "Stop"; $ConfirmPreference = "None"; trap { Write-Error $_ -ErrorAction Continue; exit 1 }
$PSScriptRoot = Split-Path $MyInvocation.MyCommand.Path -Parent
###########################################################################
# CONFIGURATION
###########################################################################
$BuildProjectFile = "$PSScriptRoot\tools\MaaBuilder\MaaBuilder.csproj"
$TempDirectory = "$PSScriptRoot\\.nuke\temp"
$DotNetGlobalFile = "$PSScriptRoot\\global.json"
$DotNetInstallUrl = "https://dot.net/v1/dotnet-install.ps1"
$DotNetChannel = "Current"
$env:DOTNET_SKIP_FIRST_TIME_EXPERIENCE = 1
$env:DOTNET_CLI_TELEMETRY_OPTOUT = 1
$env:DOTNET_MULTILEVEL_LOOKUP = 0
###########################################################################
# EXECUTION
###########################################################################
function ExecSafe([scriptblock] $cmd) {
& $cmd
if ($LASTEXITCODE) { exit $LASTEXITCODE }
}
# If dotnet CLI is installed globally and it matches requested version, use for execution
if ($null -ne (Get-Command "dotnet" -ErrorAction SilentlyContinue) -and `
$(dotnet --version) -and $LASTEXITCODE -eq 0) {
$env:DOTNET_EXE = (Get-Command "dotnet").Path
}
else {
# Download install script
$DotNetInstallFile = "$TempDirectory\dotnet-install.ps1"
New-Item -ItemType Directory -Path $TempDirectory -Force | Out-Null
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
(New-Object System.Net.WebClient).DownloadFile($DotNetInstallUrl, $DotNetInstallFile)
# If global.json exists, load expected version
if (Test-Path $DotNetGlobalFile) {
$DotNetGlobal = $(Get-Content $DotNetGlobalFile | Out-String | ConvertFrom-Json)
if ($DotNetGlobal.PSObject.Properties["sdk"] -and $DotNetGlobal.sdk.PSObject.Properties["version"]) {
$DotNetVersion = $DotNetGlobal.sdk.version
}
}
# Install by channel or version
$DotNetDirectory = "$TempDirectory\dotnet-win"
if (!(Test-Path variable:DotNetVersion)) {
ExecSafe { & powershell $DotNetInstallFile -InstallDir $DotNetDirectory -Channel $DotNetChannel -NoPath }
} else {
ExecSafe { & powershell $DotNetInstallFile -InstallDir $DotNetDirectory -Version $DotNetVersion -NoPath }
}
$env:DOTNET_EXE = "$DotNetDirectory\dotnet.exe"
}
Write-Output "Microsoft (R) .NET SDK version $(& $env:DOTNET_EXE --version)"
ExecSafe { & $env:DOTNET_EXE build $BuildProjectFile /nodeReuse:false /p:UseSharedCompilation=false -nologo -clp:NoSummary --verbosity quiet }
ExecSafe { & $env:DOTNET_EXE run --project $BuildProjectFile --no-build -- $BuildArguments }

View File

@@ -1,62 +0,0 @@
#!/usr/bin/env bash
bash --version 2>&1 | head -n 1
set -eo pipefail
SCRIPT_DIR=$(cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd)
###########################################################################
# CONFIGURATION
###########################################################################
BUILD_PROJECT_FILE="$SCRIPT_DIR/tools/MaaBuilder/MaaBuilder.csproj"
TEMP_DIRECTORY="$SCRIPT_DIR//.nuke/temp"
DOTNET_GLOBAL_FILE="$SCRIPT_DIR//global.json"
DOTNET_INSTALL_URL="https://dot.net/v1/dotnet-install.sh"
DOTNET_CHANNEL="Current"
export DOTNET_CLI_TELEMETRY_OPTOUT=1
export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
export DOTNET_MULTILEVEL_LOOKUP=0
###########################################################################
# EXECUTION
###########################################################################
function FirstJsonValue {
perl -nle 'print $1 if m{"'"$1"'": "([^"]+)",?}' <<< "${@:2}"
}
# If dotnet CLI is installed globally and it matches requested version, use for execution
if [ -x "$(command -v dotnet)" ] && dotnet --version &>/dev/null; then
export DOTNET_EXE="$(command -v dotnet)"
else
# Download install script
DOTNET_INSTALL_FILE="$TEMP_DIRECTORY/dotnet-install.sh"
mkdir -p "$TEMP_DIRECTORY"
curl -Lsfo "$DOTNET_INSTALL_FILE" "$DOTNET_INSTALL_URL"
chmod +x "$DOTNET_INSTALL_FILE"
# If global.json exists, load expected version
if [[ -f "$DOTNET_GLOBAL_FILE" ]]; then
DOTNET_VERSION=$(FirstJsonValue "version" "$(cat "$DOTNET_GLOBAL_FILE")")
if [[ "$DOTNET_VERSION" == "" ]]; then
unset DOTNET_VERSION
fi
fi
# Install by channel or version
DOTNET_DIRECTORY="$TEMP_DIRECTORY/dotnet-unix"
if [[ -z ${DOTNET_VERSION+x} ]]; then
"$DOTNET_INSTALL_FILE" --install-dir "$DOTNET_DIRECTORY" --channel "$DOTNET_CHANNEL" --no-path
else
"$DOTNET_INSTALL_FILE" --install-dir "$DOTNET_DIRECTORY" --version "$DOTNET_VERSION" --no-path
fi
export DOTNET_EXE="$DOTNET_DIRECTORY/dotnet"
fi
echo "Microsoft (R) .NET SDK version $("$DOTNET_EXE" --version)"
"$DOTNET_EXE" build "$BUILD_PROJECT_FILE" /nodeReuse:false /p:UseSharedCompilation=false -nologo -clp:NoSummary --verbosity quiet
"$DOTNET_EXE" run --project "$BUILD_PROJECT_FILE" --no-build -- "$@"

2
cmake/config.cmake Normal file
View File

@@ -0,0 +1,2 @@
set(debug_comp_defs "_DEBUG;ASST_DEBUG")
add_compile_definitions("$<$<CONFIG:Debug>:${debug_comp_defs}>")

View File

@@ -1,30 +1,81 @@
if (BUILD_XCFRAMEWORK)
add_custom_command(OUTPUT MaaCore.xcframework
COMMAND rm -rf MaaCore.xcframework
COMMAND xcodebuild -create-xcframework -library libMaaCore.dylib -headers ${PROJECT_SOURCE_DIR}/include -output MaaCore.xcframework
set(XCFRAMEWORK_DIR "${CMAKE_BINARY_DIR}/xcframework")
file(MAKE_DIRECTORY ${XCFRAMEWORK_DIR})
# Macro to find a unique library file
macro(find_unique_library lib_name glob_pattern output_var)
file(GLOB _libs CONFIGURE_DEPENDS "${MAADEPS_DIR}/runtime/${MAADEPS_TRIPLET}/${glob_pattern}")
if(_libs)
list(LENGTH _libs _cnt)
if(_cnt EQUAL 1)
list(GET _libs 0 ${output_var})
message(STATUS "Found ${lib_name}: ${${output_var}}")
else()
message(FATAL_ERROR "Ambiguous ${lib_name} dylibs: ${_libs}")
endif()
else()
message(FATAL_ERROR "${lib_name} library not found in ${MAADEPS_DIR}/runtime/${MAADEPS_TRIPLET}/")
endif()
endmacro()
add_custom_command(OUTPUT ${XCFRAMEWORK_DIR}/MaaCore.xcframework
COMMAND ${CMAKE_COMMAND} -E rm -rf "${XCFRAMEWORK_DIR}/MaaCore.xcframework"
COMMAND xcodebuild -create-xcframework
-library $<TARGET_FILE:MaaCore>
-headers ${PROJECT_SOURCE_DIR}/include
-output MaaCore.xcframework
DEPENDS MaaCore
WORKING_DIRECTORY ${XCFRAMEWORK_DIR}
COMMENT "Generating MaaCore.xcframework"
)
add_custom_command(OUTPUT ${XCFRAMEWORK_DIR}/MaaUtils.xcframework
COMMAND ${CMAKE_COMMAND} -E rm -rf "${XCFRAMEWORK_DIR}/MaaUtils.xcframework"
COMMAND xcodebuild -create-xcframework
-library $<TARGET_FILE:MaaUtils>
-output MaaUtils.xcframework
DEPENDS MaaUtils
WORKING_DIRECTORY ${XCFRAMEWORK_DIR}
COMMENT "Generating MaaUtils.xcframework"
)
add_custom_command(OUTPUT OpenCV.xcframework
COMMAND rm -rf OpenCV.xcframework
COMMAND xcodebuild -create-xcframework -library "${PROJECT_SOURCE_DIR}/MaaDeps/runtime/${MAADEPS_TRIPLET}/libopencv_world4.408.dylib" -output OpenCV.xcframework
find_unique_library("OpenCV" "libopencv_world*.dylib" OPENCV_LIB)
add_custom_command(OUTPUT ${XCFRAMEWORK_DIR}/OpenCV.xcframework
COMMAND ${CMAKE_COMMAND} -E rm -rf "${XCFRAMEWORK_DIR}/OpenCV.xcframework"
COMMAND xcodebuild -create-xcframework
-library "${OPENCV_LIB}"
-output OpenCV.xcframework
WORKING_DIRECTORY ${XCFRAMEWORK_DIR}
COMMENT "Generating OpenCV.xcframework"
)
add_custom_command(OUTPUT ONNXRuntime.xcframework
COMMAND rm -rf ONNXRuntime.xcframework
COMMAND xcodebuild -create-xcframework -library "${PROJECT_SOURCE_DIR}/MaaDeps/runtime/${MAADEPS_TRIPLET}/libonnxruntime.1.18.0.dylib" -output ONNXRuntime.xcframework
find_unique_library("ONNXRuntime" "libonnxruntime*.dylib" ONNXRUNTIME_LIB)
add_custom_command(OUTPUT ${XCFRAMEWORK_DIR}/ONNXRuntime.xcframework
COMMAND ${CMAKE_COMMAND} -E rm -rf "${XCFRAMEWORK_DIR}/ONNXRuntime.xcframework"
COMMAND xcodebuild -create-xcframework
-library "${ONNXRUNTIME_LIB}"
-output ONNXRuntime.xcframework
WORKING_DIRECTORY ${XCFRAMEWORK_DIR}
COMMENT "Generating ONNXRuntime.xcframework"
)
add_custom_command(OUTPUT fastdeploy_ppocr.xcframework
COMMAND rm -rf fastdeploy_ppocr.xcframework
COMMAND xcodebuild -create-xcframework -library "${PROJECT_SOURCE_DIR}/MaaDeps/runtime/${MAADEPS_TRIPLET}/libfastdeploy_ppocr.dylib" -output fastdeploy_ppocr.xcframework
add_custom_command(OUTPUT ${XCFRAMEWORK_DIR}/fastdeploy_ppocr.xcframework
COMMAND ${CMAKE_COMMAND} -E rm -rf "${XCFRAMEWORK_DIR}/fastdeploy_ppocr.xcframework"
COMMAND xcodebuild -create-xcframework
-library "${MAADEPS_DIR}/runtime/${MAADEPS_TRIPLET}/libfastdeploy_ppocr.dylib"
-output fastdeploy_ppocr.xcframework
WORKING_DIRECTORY ${XCFRAMEWORK_DIR}
COMMENT "Generating fastdeploy_ppocr.xcframework"
)
add_custom_target(MaaXCFramework ALL
DEPENDS MaaCore MaaCore.xcframework OpenCV.xcframework ONNXRuntime.xcframework fastdeploy_ppocr.xcframework
DEPENDS
MaaCore
${XCFRAMEWORK_DIR}/MaaCore.xcframework
MaaUtils
${XCFRAMEWORK_DIR}/MaaUtils.xcframework
${XCFRAMEWORK_DIR}/OpenCV.xcframework
${XCFRAMEWORK_DIR}/ONNXRuntime.xcframework
${XCFRAMEWORK_DIR}/fastdeploy_ppocr.xcframework
)
endif (BUILD_XCFRAMEWORK)
target_compile_options(MaaCore PRIVATE
-Wno-deprecated-declarations
-Wno-gnu-zero-variadic-macro-arguments)

View File

@@ -1,54 +0,0 @@
set(OPENCV_URL_PREFIX "https://github.com/MaaAssistantArknights/build-opencv/releases/download")
set(OPENCV_TAG "4.5.3")
set(COMPRESSED_SUFFIX ".tar.gz")
if(WIN32)
set(OPENCV_FILENAME "OpenCV-Windows")
set(OPENCV_CHECKSUM "bf736b243bbdaa020f139e4dfa1e4f15633f4ce7a8ad885524645e660de47a8b")
elseif(APPLE)
if (CURRENT_OSX_ARCH STREQUAL "arm64")
set(OPENCV_FILENAME "OpenCV-macOS-arm64")
set(OPENCV_CHECKSUM "31beb633c033dd4ee789ffa50911c29c9580860f9a91f334f03d8aa9c85e9700")
else()
set(OPENCV_FILENAME "OpenCV-macOS-x86_64")
set(OPENCV_CHECKSUM "249c5c97cc52257b68d35acf499b1cf1037f5e6f3b40752f82ad5abe7884bea9")
endif()
else(UNIX)
set(OPENCV_FILENAME "OpenCV-Linux")
set(OPENCV_CHECKSUM "edc4138456189c9e8bdf29114ad2be8ec152e8e31087d98e633f6cda59b141ea")
endif(WIN32)
set(OPENCV_URL ${OPENCV_URL_PREFIX}/${OPENCV_TAG}/${OPENCV_FILENAME}${COMPRESSED_SUFFIX})
if(OPENCV_DIRECTORY)
set(OpenCV_DIR ${OPENCV_DIRECTORY})
find_package(OpenCV REQUIRED PATHS ${OpenCV_DIR})
include_directories(${OpenCV_INCLUDE_DIRS})
list(APPEND DEPEND_LIBS ${OpenCV_LIBS})
else()
download_and_decompress(${OPENCV_URL}
${CMAKE_CURRENT_BINARY_DIR}/${OPENCV_FILENAME}${COMPRESSED_SUFFIX}
${OPENCV_CHECKSUM}
${THIRD_PARTY_PATH}/install/)
set(OPENCV_FILENAME opencv)
set(OpenCV_DIR ${THIRD_PARTY_PATH}/install/${OPENCV_FILENAME})
set(OPENCV_DIRECTORY ${OpenCV_DIR})
if (WIN32)
set(OpenCV_DIR ${OpenCV_DIR}/lib)
endif()
find_package(OpenCV REQUIRED PATHS ${OpenCV_DIR} NO_DEFAULT_PATH)
include_directories(${OpenCV_INCLUDE_DIRS})
list(APPEND DEPEND_LIBS ${OpenCV_LIBS})
endif(OPENCV_DIRECTORY)
if (INSTALL_THIRD_LIBS)
if (OpenCV_SHARED)
install(DIRECTORY ${OpenCV_INSTALL_PATH}/lib/
DESTINATION .
USE_SOURCE_PERMISSIONS PATTERN "cmake" EXCLUDE)
endif (OpenCV_SHARED)
endif (INSTALL_THIRD_LIBS)

View File

@@ -1,44 +0,0 @@
macro(GENERATE_THRIFT_LIB LIB_NAME FILENAME OUTPUTDIR SOURCES)
file(MAKE_DIRECTORY ${OUTPUTDIR})
detect_host_triplet(HOST_TRIPLET)
if (CMAKE_CROSSCOMPILING)
if (CMAKE_HOST_WIN32)
set(_host_executable_suffix ".exe")
else()
set(_host_executable_suffix "")
endif()
else()
set(_host_executable_suffix ${CMAKE_EXECUTABLE_SUFFIX})
endif()
if(EXISTS ${PROJECT_SOURCE_DIR}/MaaDeps/vcpkg/installed/maa-${HOST_TRIPLET}/tools/thrift/thrift${_host_executable_suffix})
set(THRIFT_COMPILER ${PROJECT_SOURCE_DIR}/MaaDeps/vcpkg/installed/maa-${HOST_TRIPLET}/tools/thrift/thrift${_host_executable_suffix})
else()
find_program(THRIFT_COMPILER thrift)
endif()
if(NOT THRIFT_COMPILER)
message(FATAL_ERROR "Thrift compiler not found")
endif()
get_filename_component(THRIFT_IDL_NAME ${FILENAME} NAME_WE)
set(THRIFT_IDL_TARGET "${LIB_NAME}_${THRIFT_IDL_NAME}_idl")
set("${THRIFT_IDL_NAME}-gen-cpp"
${OUTPUTDIR}/${THRIFT_IDL_NAME}.cpp
${OUTPUTDIR}/${THRIFT_IDL_NAME}.h
${OUTPUTDIR}/${THRIFT_IDL_NAME}_types.cpp
${OUTPUTDIR}/${THRIFT_IDL_NAME}_types.h)
add_custom_command(OUTPUT ${${THRIFT_IDL_NAME}-gen-cpp}
DEPENDS ${FILENAME}
COMMAND ${THRIFT_COMPILER} --gen cpp:no_skeleton -out ${OUTPUTDIR} ${FILENAME}
VERBATIM)
add_custom_target(${THRIFT_IDL_TARGET} DEPENDS ${${THRIFT_IDL_NAME}-gen-cpp})
add_library(${LIB_NAME} STATIC ${${THRIFT_IDL_NAME}-gen-cpp})
add_dependencies(${LIB_NAME} ${THRIFT_IDL_TARGET})
set_target_properties(${LIB_NAME} PROPERTIES POSITION_INDEPENDENT_CODE ON)
target_link_libraries(${LIB_NAME} PUBLIC thrift::thrift)
target_include_directories(${LIB_NAME} PUBLIC ${OUTPUTDIR})
set(${SOURCES} ${${SOURCES}} ${GENERATED_SOURCES} PARENT_SCOPE)
endmacro(GENERATE_THRIFT_LIB)
if (WITH_THRIFT)
add_compile_definitions(WITH_THRIFT)
endif (WITH_THRIFT)

View File

@@ -1,50 +1,26 @@
function(download_and_decompress url filename sha256_checksum decompress_dir)
if(EXISTS ${filename})
file(SHA256 ${filename} CHECKSUM_VARIABLE)
endif()
if(NOT EXISTS ${filename} OR NOT CHECKSUM_VARIABLE STREQUAL sha256_checksum)
message("Downloading file from ${url} to ${filename} ...")
file(DOWNLOAD ${url} "${filename}.tmp" SHOW_PROGRESS EXPECTED_HASH SHA256=${sha256_checksum})
file(RENAME "${filename}.tmp" ${filename})
endif()
if(NOT EXISTS ${decompress_dir})
file(MAKE_DIRECTORY ${decompress_dir})
endif()
message("Decompress file ${filename} ...")
execute_process(COMMAND ${CMAKE_COMMAND} -E tar -xf ${filename} WORKING_DIRECTORY ${decompress_dir})
# 创建资源目录链接的函数
function(create_resource_link TARGET_NAME OUTPUT_DIR)
if(WIN32)
# Windows 使用 mklink /J 创建目录链接(不需要管理员权限)
add_custom_command(
TARGET ${TARGET_NAME}
POST_BUILD
COMMAND ${CMAKE_COMMAND} -E echo "Creating resource directory link for ${TARGET_NAME}..."
COMMAND ${CMAKE_COMMAND} -E remove_directory "${OUTPUT_DIR}/resource"
COMMAND cmd /c "mklink /J \"${OUTPUT_DIR}/resource\" \"${PROJECT_SOURCE_DIR}/resource\""
COMMAND ${CMAKE_COMMAND} -E echo "Resource directory link created successfully"
COMMENT "Creating junction for resource directory for ${TARGET_NAME}"
)
else()
# UNIX/Linux/macOS 使用符号链接
add_custom_command(
TARGET ${TARGET_NAME}
POST_BUILD
COMMAND ${CMAKE_COMMAND} -E echo "Creating resource directory link for ${TARGET_NAME}..."
COMMAND ${CMAKE_COMMAND} -E remove "${OUTPUT_DIR}/resource"
COMMAND ${CMAKE_COMMAND} -E create_symlink "${PROJECT_SOURCE_DIR}/resource" "${OUTPUT_DIR}/resource"
COMMAND ${CMAKE_COMMAND} -E echo "Resource directory link created successfully"
COMMENT "Creating symlink for resource directory for ${TARGET_NAME}"
)
endif()
endfunction()
function(get_osx_architecture)
if (CMAKE_OSX_ARCHITECTURES STREQUAL "arm64")
set(CURRENT_OSX_ARCH "arm64" PARENT_SCOPE)
elseif(CMAKE_OSX_ARCHITECTURES STREQUAL "x86_64")
set(CURRENT_OSX_ARCH "x86_64" PARENT_SCOPE)
else()
set(CURRENT_OSX_ARCH ${CMAKE_HOST_SYSTEM_PROCESSOR} PARENT_SCOPE)
endif()
endfunction()
function(detect_host_triplet outvar)
string(TOLOWER "${CMAKE_HOST_SYSTEM_NAME}" host_triplet_system)
string(TOLOWER "${CMAKE_HOST_SYSTEM_PROCESSOR}" host_triplet_arch)
if(host_triplet_system STREQUAL "darwin")
set(host_triplet_system "osx")
endif()
message("host_triplet_system: ${host_triplet_system}")
message("host_triplet_arch: ${host_triplet_arch}")
if(host_triplet_arch MATCHES "(amd64|x86_64)")
set(host_triplet_arch "x64")
elseif(host_triplet_arch MATCHES "i[3456]86")
set(host_triplet_arch "x86")
elseif(host_triplet_arch MATCHES "(aarch64|armv8l|arm64)")
set(host_triplet_arch "arm64")
else()
message(FATAL_ERROR "Unrecognized CMAKE_HOST_SYSTEM_PROCESSOR: ${CMAKE_HOST_SYSTEM_PROCESSOR}")
endif()
set(${outvar} "${host_triplet_arch}-${host_triplet_system}" PARENT_SCOPE)
endfunction()
if (APPLE)
set(CMAKE_OSX_DEPLOYMENT_TARGET 12.0)
get_osx_architecture()
endif (APPLE)

View File

@@ -224,3 +224,38 @@ MD052: true
MD053:
# Ignored definitions
ignored_definitions: ["//"]
# MD054/link-image-style - Link and image style
MD054:
# Allow autolinks
autolink: true
# Allow collapsed reference links and images
collapsed: true
# Allow full reference links and images
full: true
# Allow inline links and images
inline: true
# Allow shortcut reference links and images
shortcut: true
# Allow URLs as inline links
url_inline: true
# MD055/table-pipe-style - Table pipe style
MD055:
# Table pipe style
style: "consistent"
# MD056/table-column-count - Table column count
MD056: true
# MD057 - Table column count inconsistencies with table header column count
# (Not documented in official rules list - MD057 appears to be missing or deprecated)
# MD058/blanks-around-tables - Tables should be surrounded by blank lines
MD058: true
# MD059/descriptive-link-text - Link text should be descriptive
MD059:
false
# Prohibited link texts
#prohibited_texts: ["click here", "here", "link", "more"]

1
docs/.prettierignore Normal file
View File

@@ -0,0 +1 @@
**/pnpm-lock.yaml

40
docs/.prettierrc.cjs Normal file
View File

@@ -0,0 +1,40 @@
module.exports = {
printWidth: 120,
tabWidth: 2,
useTabs: false,
bracketSpacing: true,
bracketSameLine: false,
endOfLine: 'auto',
semi: false,
singleQuote: true,
trailingComma: 'all',
arrowParens: 'always',
overrides: [
{
files: ['**/*.*css'],
options: {
singleQuote: false,
},
},
{
files: ['**/*.yml', '**/*.yaml'],
options: {
parser: 'yaml',
singleQuote: false,
},
},
{
files: ['**/*.json'],
options: {
tabWidth: 4,
},
},
{
files: ['**/*.md'],
options: {
embeddedLanguageFormatting: 'off',
},
},
],
}

View File

@@ -1,12 +1,21 @@
import { defineClientConfig } from "vuepress/client";
import Image1 from "../components/Image1.vue";
import Image2 from "../components/Image2.vue";
import Image4 from "../components/Image4.vue";
import { defineClientConfig } from 'vuepress/client'
import { getAsciiArt } from './plugins/asciiArt'
import AsciiArt from './components/AsciiArt.vue'
import ImageGrid from './components/ImageGrid.vue'
import Redirect from './components/Redirect.vue'
import './styles/index.scss'
export default defineClientConfig({
enhance: ({ app }) => {
app.component("Image1", Image1);
app.component("Image2", Image2);
app.component("Image4", Image4);
app.component('AsciiArt', AsciiArt)
app.component('ImageGrid', ImageGrid)
app.component('Redirect', Redirect)
// 输出一个随机的字符画
const asciiArtData = getAsciiArt(undefined, 'auto', 'console')
console.log('%c' + asciiArtData.text, 'white-space: pre;')
},
});
})

View File

@@ -0,0 +1,106 @@
<template>
<div ref="asciiArtWrapperElement" class="ascii-art-wrapper">
<pre ref="asciiArtContentElement" class="ascii-art-content">{{ asciiArtText }}</pre>
</div>
</template>
<script setup lang="ts">
import { ref, onMounted, onBeforeUnmount } from 'vue'
import { getAsciiArt, ThemeType, AsciiArtScope } from '../plugins/asciiArt'
// -------- Props --------
interface AsciiArtProps {
name?: string
theme?: ThemeType
scope?: AsciiArtScope
}
const props = defineProps<AsciiArtProps>()
// -------- Refs --------
const asciiArtWrapperElement = ref<HTMLElement>()
const asciiArtContentElement = ref<HTMLElement>()
// -------- Data --------
let asciiArtNameInUse = props.name
const asciiArtText = ref('')
let layoutObserver: ResizeObserver
let themeObserver: MutationObserver
let isScaleUpLocked = false
let lastScaleRatio = 1
function refreshAsciiArt() {
const asciiArtData = getAsciiArt(asciiArtNameInUse, props.theme, props.scope)
asciiArtNameInUse = asciiArtData.name
asciiArtText.value = asciiArtData.text
}
function scaleAsciiArt() {
if (!asciiArtWrapperElement.value || !asciiArtContentElement.value) return
// 原始高度和宽度无视scale
const contentWidth = asciiArtContentElement.value.scrollWidth
const contentHeight = asciiArtContentElement.value.scrollHeight
if (contentWidth === 0 || contentHeight === 0) return
const targetWidth = asciiArtWrapperElement.value.clientWidth
const targetHeight = window.innerHeight
const scaleRatio = Math.min(targetWidth / contentWidth, targetHeight / contentHeight)
// 锁定状态不允许放大
if (scaleRatio > lastScaleRatio && isScaleUpLocked) return
lastScaleRatio = scaleRatio
isScaleUpLocked = true
asciiArtContentElement.value.style.transform = `scale(${scaleRatio})`
asciiArtWrapperElement.value.style.height = `${contentHeight * scaleRatio}px`
}
function forceScaleAsciiArt() {
isScaleUpLocked = false
scaleAsciiArt()
}
onMounted(() => {
if (!asciiArtWrapperElement.value || !asciiArtContentElement.value) return
layoutObserver = new ResizeObserver(scaleAsciiArt)
layoutObserver.observe(asciiArtContentElement.value)
layoutObserver.observe(asciiArtWrapperElement.value)
themeObserver = new MutationObserver(refreshAsciiArt)
themeObserver.observe(document.documentElement, { attributes: true, attributeFilter: ['data-theme'] })
window.addEventListener('resize', forceScaleAsciiArt)
refreshAsciiArt()
})
onBeforeUnmount(() => {
if (layoutObserver) {
layoutObserver.disconnect()
}
if (themeObserver) {
themeObserver.disconnect()
}
window.removeEventListener('resize', forceScaleAsciiArt)
})
</script>
<style scoped>
.ascii-art-wrapper {
display: flex;
justify-content: center;
align-items: flex-start;
}
.ascii-art-content {
display: block;
white-space: pre;
margin: 0 auto;
transform-origin: top;
line-height: 1;
font-family: 'JetBrains Mono', monospace;
}
</style>

View File

@@ -0,0 +1,72 @@
<template>
<CardGrid>
<ImageCard v-for="(item, index) of displayImageList" :key="index" :image="item" />
</CardGrid>
</template>
<script lang="ts">
import { PropType, defineComponent, computed, ref, onMounted, onUnmounted } from 'vue'
import { withBase } from 'vuepress/client'
export default defineComponent({
name: 'ImageCardGrid',
props: {
imageList: {
type: Array as PropType<Array<{ light: string; dark: string } | string>>,
required: true,
},
},
setup(props) {
const isDarkMode = ref(false)
let observer: MutationObserver | null = null
let mediaQuery: MediaQueryList | null = null
const updateDarkMode = () => {
if (typeof window !== 'undefined') {
const html = document.documentElement
isDarkMode.value =
html.classList.contains('dark') ||
html.getAttribute('data-theme') === 'dark' ||
window.matchMedia('(prefers-color-scheme: dark)').matches
}
}
onMounted(() => {
updateDarkMode()
if (typeof window !== 'undefined') {
// 监听DOM变化主题切换通常会改变class或data-theme属性
observer = new MutationObserver(updateDarkMode)
observer.observe(document.documentElement, {
attributes: true,
attributeFilter: ['class', 'data-theme'],
})
// 监听系统主题变化
mediaQuery = window.matchMedia('(prefers-color-scheme: dark)')
mediaQuery.addEventListener('change', updateDarkMode)
}
})
onUnmounted(() => {
if (observer) {
observer.disconnect()
}
if (mediaQuery) {
mediaQuery.removeEventListener('change', updateDarkMode)
}
})
const displayImageList = computed(() => {
return props.imageList.map((item) => {
const src = typeof item === 'string' ? item : isDarkMode.value ? item.dark : item.light
return withBase(src)
})
})
return {
displayImageList,
}
},
})
</script>

View File

@@ -1,52 +0,0 @@
import type { VNode } from "vue";
import { defineComponent, h } from "vue";
import NavbarDropdown from "@theme-hope/modules/navbar/components/NavbarDropdown";
import { I18nIcon } from "@theme-hope/modules/navbar/components/icons/index";
import { useNavbarLanguageDropdown } from "@theme-hope/modules/navbar/composables/index";
export default defineComponent({
name: "LanguageDropdown",
setup() {
const dropdown = useNavbarLanguageDropdown();
const filteredDropdown = () => {
if (!dropdown.value) return null;
const filteredConfig = { ...dropdown.value };
if (filteredConfig.children) {
filteredConfig.children = filteredConfig.children.filter(item => item.link !== '/');
}
return filteredConfig;
};
//console.log("OldLanguageDropdown", dropdown.value);
//console.log("NewLanguageDropdown", filteredDropdown());
return (): VNode | null =>
dropdown.value
? h(
"div",
{ class: "vp-nav-item" },
h(
NavbarDropdown,
{ config: filteredDropdown() },
{
title: () =>
h(I18nIcon, {
"aria-label": filteredDropdown()?.ariaLabel,
style: {
width: "1rem",
height: "1rem",
verticalAlign: "middle",
},
}),
},
),
)
: null;
},
});

View File

@@ -0,0 +1,25 @@
<template />
<script setup lang="ts">
import { onMounted } from 'vue'
import { useRouter, useRoute } from 'vuepress/client'
interface Props {
to?: string
}
const props = defineProps<Props>()
const route = useRoute()
const router = useRouter()
function resolvePath(to: string) {
const target = new URL(to, 'http://example.com' + route.path) // 使用一个虚拟的基础 URL
return target.pathname
}
onMounted(() => {
if (!props.to) return
const targetPath = resolvePath(props.to)
router.replace(targetPath)
})
</script>

View File

@@ -1,92 +1,46 @@
import { defineUserConfig } from "vuepress";
import { getDirname, path } from "vuepress/utils";
import { viteBundler } from "@vuepress/bundler-vite";
import { googleAnalyticsPlugin } from "@vuepress/plugin-google-analytics";
import Theme from "./theme";
import { viteBundler } from '@vuepress/bundler-vite'
import { defineUserConfig } from 'vuepress'
import { googleAnalyticsPlugin } from '@vuepress/plugin-google-analytics'
import { plumeTheme } from 'vuepress-theme-plume'
const __dirname = getDirname(import.meta.url);
import { genSiteLocales } from './navigation/genLocales'
import DocSearchConfig from './plugins/search'
const isProd = process.env.NODE_ENV === 'production'
export default defineUserConfig({
base: "/docs/",
lang: "zh-CN",
title: "MaaAssistantArknights",
description: "MAA",
base: '/',
lang: 'zh-CN',
title: 'MAA 文档站',
description: 'MAA —「明日方舟」小助手',
host: '0.0.0.0',
port: 3001,
locales: {
"/": {
lang: " ",
title: " ",
description: " ",
},
"/zh-cn/": {
lang: "zh-cn",
description: "文档",
},
"/zh-tw/": {
lang: "zh-tw",
description: "文件",
},
"/en-us/": {
lang: "en-us",
description: "Documentation",
},
"/ja-jp/": {
lang: "ja-jp",
description: "ドキュメンテーション",
},
"/ko-kr/": {
lang: "ko-kr",
description: "선적 서류 비치",
},
},
markdown: {
headers: {
level: [2, 3, 4, 5],
},
},
theme: Theme,
alias: {
"@theme-hope/modules/navbar/components/LanguageDropdown": path.resolve(
__dirname,
"./components/LanguageDropdown.ts",
),
},
plugins: [
googleAnalyticsPlugin({
id: "G-FJQDKG394Z",
}),
],
locales: genSiteLocales(),
head: [
["link", { rel: "preconnect", href: "https://fonts.googleapis.com" }],
['link', { rel: 'preconnect', href: 'https://fonts.googleapis.com' }],
['link', { rel: 'preconnect', href: 'https://fonts.gstatic.com', crossorigin: '' }],
[
"link",
{ rel: "preconnect", href: "https://fonts.gstatic.com", crossorigin: "" },
],
[
"link",
'link',
{
href: "https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@100..900&display=swap",
rel: "stylesheet",
href: 'https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@100..900&display=swap',
rel: 'stylesheet',
},
],
[
"link",
'link',
{
href: "https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@200..900&display=swap",
rel: "stylesheet",
href: 'https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@200..900&display=swap',
rel: 'stylesheet',
},
],
[
"link",
'link',
{
href: "https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,100..800;1,100..800&display=swap",
rel: "stylesheet",
href: 'https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,100..800;1,100..800&display=swap',
rel: 'stylesheet',
},
],
],
@@ -95,4 +49,62 @@ export default defineUserConfig({
viteOptions: {},
vuePluginOptions: {},
}),
});
shouldPrefetch: false,
theme: plumeTheme({
hostname: 'https://docs.maa.plus',
docsRepo: 'MaaAssistantArknights/MaaAssistantArknights',
docsDir: '/docs',
docsBranch: 'dev',
editLink: true,
lastUpdated: false,
contributors: false,
changelog: false,
cache: 'filesystem',
search: DocSearchConfig,
codeHighlighter: {
themes: { light: 'snazzy-light', dark: 'night-owl' },
},
markdown: {
annotation: true,
image: {
lazyload: true,
mark: true,
size: true,
},
icon: { provider: 'iconify' },
plot: true,
field: true,
bilibili: true,
},
watermark: false,
comment: {
provider: 'Giscus',
repo: 'MaaAssistantArknights/maa-website',
repoId: 'R_kgDOHY7Gyg',
category: 'Comments',
categoryId: 'DIC_kwDOHY7Gys4CgoVH',
mapping: 'pathname',
strict: false,
lazyLoading: true,
},
//replaceAssets: isProd ? "https://cdn.maa.plus" : false,
}),
plugins: [
googleAnalyticsPlugin({
id: 'G-FJQDKG394Z',
}),
],
})

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