MaaAssistantArknights 生息演算自动化实战:沙洲遗闻刷点与重启锚点 RA-1 / RA-4 / RA-15 完整指南
【免费下载链接】MaaAssistantArknights《明日方舟》小助手,全日常一键长草!| A one-click tool for the daily tasks of Arknights, supporting all clients.项目地址: https://gitcode.com/GitHub_Trending/ma/MaaAssistantArknights
本篇以 生息演算官方文档 为核心骨架,完整覆盖沙洲遗闻(Tales)默认模式与制造刷点数的使用条件、重启锚点(Relaunch Anchor)RA-1 / RA-4 / RA-15 三条路线的收益、干员要求与前置步骤,并结合 MaaAssistantArknights 核心库(MaaCore)源码,深入讲解生息演算任务的主题/模式参数解析、任务链派发机制与刷点插件的底层实现,帮助读者在实际使用各项模式的同时理解其参数含义与运行原理。
功能现状与适用前提
官方文档首先给出明确提示:目前生息演算的支援仍处於中期阶段,暂不推荐无人看守执行,现阶段无法保证稳定性。因此在长时间挂机前建议先小规模试跑一轮,确认设备、练度与前置步骤(配队、科技拆除等)全部满足后再放手执行。
从源码结构看,生息演算在 MaaCore 中是一个独立的 InterfaceTask,其任务类型为Reclamation,由 ReclamationTask 统一入口,内部再拆分为配置层(ReclamationConfig)与具体插件(如 ReclamationCraftTaskPlugin),这种“配置 + 插件”的架构是理解后续所有参数的基础。
主题、模式与难度:生息演算参数体系
所有生息演算模式都由 ReclamationConfig 描述。其核心字段如下:
- 主题(theme):
Tales—— 沙洲遗闻(Tales Within the Sand)RelaunchAnchor—— 重启锚点(RELAUNCH ANCHOR)Fire—— 沙洲之火(Fire Within the Sand),该主题已在游戏中下线
- 模式(mode):使用
std::variant<TalesMode, RelaunchAnchorMode>区分两套编码体系(见下表) - 难度(difficulty):对应 Roguelike 难度枚举,
0休养模式、1标准模式、2挑战模式,配置类默认值为挑战模式
模式(mode)取值表
参数解析逻辑位于 ReclamationConfig::verify_and_load_params,其中两套主题的 mode 采用完全不同的编码方式:
| 主题 | mode 值 | 含义 |
|---|---|---|
Tales(沙洲遗闻) | 0 | 无存档刷繁荣点数(ProsperityNoSave) |
Tales(沙洲遗闻) | 1 | 有存档刷繁荣点数(ProsperityInSave) |
RelaunchAnchor(重启锚点) | 16(即1 << 4) | RA-1 |
RelaunchAnchor(重启锚点) | 8(即2 << 4) | RA-15 |
RelaunchAnchor(重启锚点) | 12(即3 << 4) | RA-4 |
源码注释说明:沙洲遗闻的 mode 使用“连续值编码”,重启锚点则使用“flags 风格的显式值编码”,因此 RA-4 的整数值(12)并不等于关卡编号 4,直接按关卡号填参会导致Invalid RelaunchAnchor mode错误而任务启动失败。这是使用 JSON 参数直接驱动时最容易踩的坑。
此外,参数默认值也值得注意:theme缺省为Tales,mode缺省为0(无存档刷繁荣点数)。verify_and_load_params对非法主题、非法 mode 均会记录错误日志并返回false,任务不会执行。
一个典型的 JSON 参数示例(以重启锚点 RA-4 为例):
{ "theme": "RelaunchAnchor", "mode": 12 }沙洲遗闻有存档刷点数并指定制造道具时:
{ "theme": "Tales", "mode": 1, "tools_to_craft": ["荧光棒"], "num_craft_batches": 16, "increment_mode": 0 }任务派发流程:从参数到任务链
ReclamationTask::set_params 是参数到任务执行的桥接,阅读它可以直接看懂每个模式实际跑哪条任务链:
- 先校验并加载配置:调用
ReclamationConfig::verify_and_load_params,失败则整个任务不启动。 - Fire 主题已退役:若 theme 为
Fire,源码直接记录 “is no longer available” 日志并把子任务置为Stop,优雅停掉而不是报错。 - 仓储进入次数限制:默认对任务
RA@Store@EnterStore设置INT_MAX的 times limit;若为重启锚点模式或“无存档 + 不清仓”组合,则将该限制设为0,即不重复进入仓储流程。 - 按模式选择任务链:
- 重启锚点:根据 mode 映射出关卡字符串(RA-1 →
1,RA-4 →4,RA-15 →15),任务名为RelaunchAnchor@RA@RA{关卡}-Entry,例如RelaunchAnchor@RA@RA4-Entry。也就是说文档中“在大地图打开对应关卡、右下角出现「开启建设」时启动任务”这一步,在实现上就是进入对应关卡的 Entry 任务链后自动循环。 - 沙洲遗闻:mode 0 对应任务链
Tales@RA@ProsperityNoSave,mode 1 对应Tales@RA@ProsperityInSave。 Tales@RA@ProsperityNoSave额外支持clear_store参数:若未指定clear_store: true,则把RA@Store@EnterStore的次数限制置 0。
- 重启锚点:根据 mode 映射出关卡字符串(RA-1 →
- 插件开关分发:遍历已注册的生息演算插件,调用每个插件的
load_params,并以返回值作为set_enable的依据——参数不满足条件的插件会被自动停用。这正是下文“制造刷点数插件”只在该模式下生效的原因。
插件基类 AbstractReclamationTaskPlugin 将ReclamationConfig以共享指针注入所有生息演算插件,保证插件与任务主体读取同一份主题/模式配置。
沙洲遗闻(Tales)
预设模式(无存档刷繁荣点数)
文档给出的三条硬性前置条件,缺一即可能卡死流程:
- 需要在生息演算主界面开始任务(导航功能尚未开发),即启动任务前必须已处于生息演算主界面;
- 不能在已有存档的情况下使用(删除现有存档即可);
- 不能在生息演算的编队中有干员的情况下使用(将生息演算中的目前编队清空即可,特别是打完浪潮之后)。
这三条条件对应任务链Tales@RA@ProsperityNoSave的进入状态假设:插件流程从“主界面 + 空编队 + 无存档”这一确定状态开始识别屏幕,任何残留状态都会让模板匹配落空。
制造刷点数(有存档模式)
文档给出的四条注意事项:
- 需要在进入生息演算中能看到驻驻地(基地营地)的页面开始;
- 若未填写道具名称,则预设制造荧光棒;
- 前置条件:目前为结算后的第一天,且后续三天没有敌袭进入驻驻地;
- 如果能制造的数量刚好是 99 的倍數会卡住,在存档前可以先用掉一点,这个问题之后会再修正。
该模式由 ReclamationCraftTaskPlugin 插件承担刷点动作,它有三个专属参数(声明见 ReclamationCraftTaskPlugin.h,默认值注释亦见 ReclamationConfig.h 的参数速览注释区):
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
tools_to_craft | 字符串数组 | 荧光棒 | 要组装的支援道具名称列表,逐项 OCR 定位并制造 |
num_craft_batches | int | 16 | 支援道具组装批次数,每批组装 99 个;默认值 16 以组装荧光棒消耗至少 3000 木头为准计算得出 |
increment_mode | int | 0 | 点击加号按钮增加组装数量的方式:0为逐个点击(Click),1为长按(Hold) |
插件只在theme == Tales且mode == ProsperityInSave(1)时启用(load_params其余情况直接返回false,对应前述“插件开关分发”机制),其_run主循环把文档中的“99 倍數卡住”问题落实成了明确的批处理逻辑:
- 选道具:对每个目标道具,先通过
theme + "@RA@PIS-SelectTool"子任务在组装台界面识别道具(找不到时会向下滑动屏幕再检测),并用 OCR 任务PIS-ClickTool定位点击; - 加到上限:识别加号按钮后将组装数量增加到 99。Click 模式逐个点击差值次数;Hold 模式则识别加号按钮位置后执行一次长按,按压时长按
10ms × 数量 + 1000ms估算(见increase_craft_amount)。若 OCR 读数不足 99,会再补点一次加号确认数量不再增长,若补点后数量未变,则判定材料不足(insufficient_materials),结束当前道具的批次循环——这是“刚好是 99 的倍數会卡住”在实现侧的处理点:材料耗尽时插件靠“加不动了”来感知退出,所以文档建议在存档前手动用掉一点,避免整批卡在结算边界; - 组装或取消:组装数量为 0 时点击空白处取消组装(
CancelCraft),否则点击开始组装图标并点击“点击空白处继续”位置(PIS-Craft)领取物资; - 批次滚动:完成一批后继续下一批,直到
num_craft_batches用尽或材料不足。组装数量的读数由calc_craft_amount通过PIS-CraftAmountOcr区域 OCR 完成,若识别为灰色的 1(不可组装状态)则记为 0。
整个循环中每步之间都有 500ms 的 sleep 等待界面刷新,属于典型的“模板匹配 + OCR + 固定延时”稳健写法,也解释了为何该功能“暂不推荐无人看守”——任何界面偏移或识别失败都可能让循环停摆。
重启锚点(RelaunchAnchor)
重启锚点是生息演算中收益更高的自动化路线,三条关卡各有干员要求与收益(以下数值均直接引自官方文档,为参考值):
RA-1
- 收益参考:每把约 159 代币 + 统筹点数,单轮耗时约 2 分 10 秒
- 干员要求:无
- 前置步骤:推进主线至 RA-1 已通关状态
- 启动方式:在大地图打开 RA-1,右下角出现「开启建设」时启动任务,即可自动循环
- 注意:如果已解锁开局额外携带物品的相关科技,请将基地内会导致开局额外携带物品的设施拆除,如食品供给站、饮品供给站、大型兽栏等
- 任务流程:自动执行精耕细作、建设、交付资源、结算循环
对应源码中 mode16,派发任务链RelaunchAnchor@RA@RA1-Entry。由于不依赖任何指定干员,RA-1 是三条路线中门槛最低的一条。
RA-4
- 收益参考:每把约 417 代币 + 统筹点数,单轮耗时约 1 分 40 秒
- 干员要求:维什戴尔(可借助战)
- 前置步骤:
- 推进主线至 RA-4 已通关状态
- 解锁策略筹划经营
- 如果自己有维什戴尔,请手动打开关卡并配队一次,保证为任意 5 个费用比维什戴尔低的干员 + 维什戴尔,且维什戴尔位于六号位即最后选的人,然后确认招募,放弃本次建设并在开始建设处开始
- 如果使用助战维什戴尔,请保证维什戴尔在狙击助战首页(考虑挚友),请手动打开关卡编入任意 5 个费用比维什戴尔低的干员,六号位选择维什戴尔助战后确认招募,放弃本次建设并在开始建设处开始(保证队伍前五位有人且六号位为空)
- 启动方式:在大地图打开 RA-4,右下角出现「开启建设」时启动任务,即可自动循环
- 注意:如果已解锁开局额外携带物品的相关科技,请将基地内会导致开局额外携带物品的设施拆除,如食品供给站、饮品供给站、大型兽栏等
- 任务流程:使用筹划经营策略给予的赤金解锁区域,使用维什戴尔完成击杀 boss 任务
对应 mode12,任务链RelaunchAnchor@RA@RA4-Entry。前置配队的“六号位固定为维什戴尔、费用低于其的 5 人”是自动化循环能稳定识别配队界面的关键假设,助战时还要留意挚友占位导致的助战首页顺序变化。
RA-15
- 收益参考:每把约 500 代币 + 统筹点数,单轮耗时约 3 分钟
- 干员要求:圣聆初雪(可以借助战)
- 前置步骤:
- 推进主线至 RA-15 已通关状态
- 如果自己有圣聆初雪,请手动打开关卡并配队一次,保证为五先锋(无练度要求)+ 初雪,且初雪位于六号位即最后选的人,然后储存配队并退出关卡
- 如果使用助战圣聆初雪,请保证圣聆初雪在术士助战首页(考虑挚友)
- 启动方式:在大地图打开 RA-15,右下角出现「开启建设」时启动任务,即可自动循环
- 注意:如果已解锁开局额外携带物品的相关科技,请将基地内会导致开局额外携带物品的设施拆除,如食品供给站、饮品供给站、大型兽栏等
- 任务流程:用圣聆初雪完成 60 杀任务
对应 mode8,任务链RelaunchAnchor@RA@RA15-Entry。
三条路线对比:RA-15 单把收益最高(约 500 代币)但单轮最慢(约 3 分钟),RA-4 综合耗时与收益比最好(约 1 分 40 秒 / 417 代币),RA-1 无需指定干员适合快速上手。三条路线共享同一条通用注意事项:开局额外携带物品科技必须拆除对应设施,否则任务链中依赖“开局无额外物品”的识别步骤可能失败。
参数速查与排错
汇总生息演算任务当前支持的 JSON 参数(解析入口:ReclamationConfig.cpp 与 ReclamationTask.cpp):
| 参数 | 适用模式 | 说明 |
|---|---|---|
theme | 全部 | Tales或RelaunchAnchor,缺省Tales |
mode | 全部 | 沙洲遗闻:0/1;重启锚点:16(RA-1)/12(RA-4)/8(RA-15) |
clear_store | Talesmode 0 | 是否重复进入仓储流程,缺省为不重复 |
tools_to_craft | Talesmode 1 | 支援道具名称数组,缺省制造荧光棒 |
num_craft_batches | Talesmode 1 | 组装批次数,缺省 16,每批 99 个 |
increment_mode | Talesmode 1 | 0逐个点击 /1长按加号,缺省 0 |
排错时可按以下顺序核对:参数是否合法(查看日志中Invalid RelaunchAnchor mode/Invalid Tales mode字样)→ 前置界面是否符合文档要求(主界面 / 驻驻地页 / 大地图「开启建设」按钮可见)→ 干员与科技条件是否满足(六号位配队、开局物品科技拆除)→ 是否处于 99 倍數卡批边界(先手动消耗少量材料再存档)。
源码索引与延伸阅读
| 文件 | 作用 |
|---|---|
| 生息演算文档 | 各模式前置条件与操作步骤(本文主体依据) |
| ReclamationConfig.h | 主题/模式/难度枚举与插件参数速览注释 |
| ReclamationConfig.cpp | theme 与 mode 参数校验与编码解析 |
| ReclamationTask.cpp | 任务链选择、仓储次数限制与插件开关分发 |
| ReclamationCraftTaskPlugin.h / ReclamationCraftTaskPlugin.cpp | 沙洲遗闻制造刷点插件:批处理循环、数量 OCR 与加号点击/长按 |
| AbstractReclamationTaskPlugin.h | 生息演算插件基类,注入共享配置 |
需要再次强调文档的总提示:生息演算自动化仍处于中期开发阶段,以上各模式的收益与耗时均为文档给出的参考值,实际表现会随版本与账号状态变化;在无人看守长时挂机前,请先按本文“功能现状与适用前提”与对应模式小节完成一次人工校验。
【免费下载链接】MaaAssistantArknights《明日方舟》小助手,全日常一键长草!| A one-click tool for the daily tasks of Arknights, supporting all clients.项目地址: https://gitcode.com/GitHub_Trending/ma/MaaAssistantArknights
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考