拓冰建站拓冰建站
首页 / 资讯中心 / 正文

MaaAssistantArknights 领取奖励(Rewards)功能详解:自动领取每日与每周奖励的配置、协议与源码实现

MaaAssistantArknights 领取奖励Rewards功能详解自动领取每日与每周奖励的配置、协议与源码实现【免费下载链接】MaaAssistantArknights《明日方舟》小助手全日常一键长草| A one-click tool for the daily tasks of Arknights, supporting all clients.项目地址: https://gitcode.com/GitHub_Trending/ma/MaaAssistantArknightsMaaAssistantArknights下称 MAA内置的领取奖励Rewards / Award功能可在启动后自动前往游戏界面领取每日任务奖励、每周任务奖励并可选领取邮件奖励、每日免费单抽、幸运墙合成玉、限时开采许可合成玉等奖励实现全日常一键长草中的奖励回收环节。本文以官方英文文档 docs/en-us/manual/introduction/rewards.md 为核心结合核心源码 AwardTask.cpp、GUI 参数模型 AsstAwardTask.cs、集成协议文档 integration.md 以及任务链配置 tasks.json完整讲解该功能的开关项、参数含义、调用链原理与实战配置方法。功能概述一键领取日常与周常奖励原文档对Rewards功能的定位非常明确自动领取每日奖励daily rewards和每周奖励weekly rewards并支持其他奖励类型具体以设置页为准。在 MAA 中这一功能对应的任务类型为Award领取奖励它在一次运行中完成以下闭环进入游戏主界面Terminal领取每日任务Daily Task与每周任务Weekly Task的完成奖励按设置项顺带处理邮件、免费单抽、幸运墙、限时开采许可、月卡等额外奖励完成后自动返回主界面等待下一个任务如基建换班、作战等执行。从 GUI 本地化文件 en-us.xaml 中的Mission键值Collect Rewards可以看出该功能在界面上的入口通常显示为Collect Rewards / 领取奖励归属于 MAA 主界面的一键长草任务列表。GUI 中的开关项一个任务对应六类奖励在 Windows 客户端MaaWpfGui中Award任务由模型类 AsstAwardTask.cs 承载它定义了六个 JSON 序列化属性对应六类可独立开关的奖励类型GUI 属性JSON 字段默认值含义Awardawardtrue领取每日/每周任务奖励Mailmailfalse领取所有邮件奖励FreeGacharecruitfalse进行每日免费单抽Orundumorundumfalse领取幸运墙合成玉奖励Miningminingfalse领取限时开采许可合成玉奖励SpecialAccessspecialaccessfalse领取五周年赠送月卡奖励其中Award默认开启其余默认关闭——这正是原文档所说自动领取每日奖励和每周奖励对应award项以及其他奖励类型请查看设置对应其余五个开关的准确对应关系。GUI 中该任务的配置入口位于设置页的任务设置 / 领取奖励区块勾选对应复选框即可启用相应子项无需手写任何参数。协议层参数Integration 接口下的完整字段说明对于通过 集成文档 接入 MAA 的第三方调用方自建任务调度、脚本或服务端Award任务以如下 JSON 结构下发{ enable: true, award: true, mail: true, recruit: true, orundum: false, mining: true, specialaccess: false }各字段在协议文档中的权威定义如下enableboolean默认true可选是否启用该任务整体awardboolean默认true可选领取每日/每周任务奖励mailboolean默认false可选领取所有邮件奖励recruitboolean默认false可选领取限时卡池的每日免费单抽orundumboolean默认false可选领取幸运墙Lucky Drop Wall合成玉奖励miningboolean默认false可选领取限时开采许可合成玉奖励specialaccessboolean默认false可选领取五周年赠送月卡奖励。注意协议层字段recruit在 GUI 模型中对应属性名为FreeGacha每日免费单抽二者的 JSON 键均为recruit调用方按下发参数时应使用 JSON 键名。specialaccess属于周年庆等限时活动奖励仅在对应活动存在时才有实际领取对象。源码实现AwardTask 的六条子任务链核心实现位于 src/MaaCore/Task/Interface/AwardTask.cpp。AwardTask继承InterfaceTask构造函数中创建了六个ProcessTask子任务分别绑定各自的任务链起点子任务指针任务链起点对应参数award_task_ptrAwardBeginawardmail_task_ptrMailBeginmailrecruit_task_ptrRecruitingActivitiesBeginrecruitorundum_task_ptrOrundumActivitiesBeginorundummining_task_ptrMiningActivitiesBeginminingspecialaccess_task_ptrSpecialAccessActivitiesBeginspecialaccess在set_params中六个布尔参数通过params.get(award, true)这类带默认值的读取方式解析随后调用各子任务的set_enable(...)决定是否执行。源码层面的默认值与协议文档完全一致award默认true其余五个默认false。此外award_task_ptr注册了ScreenshotTaskPlugin用于在领取奖励前后截图记录状态便于排障与日志回放。从注册入口看Assistant.cpp 通过ASST_ASSISTANT_APPEND_TASK_FROM_STRING_IF_BRANCH(AwardTask)将Award任务接入 MAA 的任务类型注册表因此通过接口下发任务类型名为Award即可触发该功能。底层任务链从 AwardBegin 到 DailyTask 的流转任务链的具体流转定义在 resource/tasks/tasks.json 中。以AwardBegin为例算法为JustReturn即不依赖识别、按序执行{ algorithm: JustReturn, next: [ ReceiveAward, DailyTask, WeeklyTask, Award, AwardBeginQuickSwitchToHome#next, AwardReturnButtons#next, AwardCloseAnnos#next ] }从next列表可以看到领取日常奖励的完整处理顺序先执行ReceiveAward接收奖励再处理DailyTask每日任务与WeeklyTask每周任务随后进入通用Award流程并顺带处理快速切换回主界面QuickSwitchToHome、返回按钮ReturnButtons与公告关闭CloseAnnos等兜底分支——这也是为什么该功能在存在公告弹窗等干扰时依然能稳定跑完的原因。MailBegin的任务链则以MailReturnToHome与ReceiveMail为核心先确保从邮件界面返回主界面含快速切换与返回按钮兜底再执行ReceiveMail收取全部邮件奖励。OrundumActivitiesBegin、MiningActivitiesBegin、SpecialAccessActivitiesBegin三者的结构中均包含AwardExpandCheckFlow子任务用于展开/检查活动面板的展开流程随后进入各自的OrundumActivities、MiningActivities、SpecialAccessActivities领取流程且都带有ReturnHome与ReturnButtons的返回兜底链。多客户端资源支持从资源目录结构看MAA 针对不同服务器客户端均提供了领取奖励所需的模板资源resource/global/txwy国服、resource/global/YoStarEN国际服、resource/global/YoStarJP日服、resource/global/YoStarKR韩服下均存在Award目录其中包含Mail等子目录且 YoStar 客户端还有独立的MiningActivity模板目录。这说明每日/每周奖励领取、邮件领取、开采许可领取等流程在各服务器上均有对应的界面识别模板支撑切换客户端后该功能依然可用具体以设置页中客户端选项与对应资源为准。实战配置建议日常使用在 GUI 中保持领取每日/每周任务奖励award开启即可MAA 会在每次任务调度时自动回收日常与周常奖励若希望上线即清理邮箱可额外勾选领取所有邮件奖励mail。免费单抽勾选进行每日免费单抽recruit后MAA 会顺带消耗限时卡池的每日免费抽取机会适合长期养成的玩家。活动奖励幸运墙orundum、限时开采许可mining、周年月卡specialaccess均默认关闭属于按活动周期手动开启的选项活动结束后建议关闭以避免无效点击。接口调用方通过集成协议下发时任务类型名固定为Award参数结构见上文协议示例未显式给出的字段将采用协议默认值因此最小调用体只需{enable: true}即可领取每日/每周奖励。运行顺序Award建议放在任务列表前部执行例如先领取奖励再进入基建或作战保证后续任务开始时主界面处于干净状态MAA 的任务调度本身也会通过QuickSwitch、ReturnButtons等兜底节点确保结束后回到主界面。小结MAA 的领取奖励功能表面上只是自动领取每日奖励和每周奖励一行描述背后却是由AwardTask统一编排的六条独立任务链AwardBegin日常/周常奖励、MailBegin邮件、RecruitingActivitiesBegin免费单抽、OrundumActivitiesBegin幸运墙、MiningActivitiesBegin限时开采、SpecialAccessActivitiesBegin周年月卡配合tasks.json中的JustReturn流转与返回兜底节点以及各客户端服务器的界面模板资源构成了稳定、可配置、可扩展的奖励回收机制。无论是 GUI 用户还是集成开发者理解本文的参数表与任务链结构都能精确控制每天上线该领什么、领多少。【免费下载链接】MaaAssistantArknights《明日方舟》小助手全日常一键长草| A one-click tool for the daily tasks of Arknights, supporting all clients.项目地址: https://gitcode.com/GitHub_Trending/ma/MaaAssistantArknights创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门