☰
明日方舟小助手 MAA 基建换班实战:三种模式怎么选,自定义排班 JSON 一次写对
2026/10/7 2:37:39 网站建设 项目流程

明日方舟小助手 MAA 基建换班实战:三种模式怎么选,自定义排班 JSON 一次写对

【免费下载链接】MaaAssistantArknights《明日方舟》小助手,全日常一键长草!| A one-click tool for the daily tasks of Arknights, supporting all clients.项目地址: https://gitcode.com/GitHub_Trending/ma/MaaAssistantArknights

MAA(明日方舟小助手)的基建换班模块负责干员排班、心情恢复和线索管理。本文把常规、队列轮换、自定义三种模式的选择逻辑讲透,再带你写出能直接跑的自定义基建排班 JSON,参数名和 mode 的 0 / 10000 / 20000 都有源码出处。

先选模式,再谈操作:三种基建换班场景对号入座

别背参数,先对号入座。MAA 内部用mode参数区分三种模式(定义在 InfrastTask.h),你在 GUI 里切"换班模式"就是在切它:

你的现状选哪个模式为什么
不想管排班,干员池够乱常规模式(mode 0)算法自动挑效率最高的组合,含跨设施组合
已经手动排好预设队列队列轮换(mode 20000)MAA 只按"轮换"按钮,不碰干员选择
想榨干每一点效率自定义(mode 10000)用 JSON 精确指定每个房间坐谁

判断标准很简单:常规模式解决"省事",队列轮换解决"我已经排好了,懒得每次手动点轮换",自定义模式解决"算法给的答案不是我要的答案"。下文按这三条线展开。

常规模式怎么用:从心情阈值到固定换班顺序

两个核心参数:心情阈值与无人机用途

  • 基建工作心情阈值:默认0.3。换班时剩余心情低于 30% 的在岗干员会被换出,并安排进宿舍休息。调高(比如 0.5)换得更勤但频繁进出界面;调低则省动作但干员更容易在岗位上哭脸。
  • 无人机用途:可选贸易站-龙门币、制造站-经验书、制造站-赤金等。选贸易站-龙门币时有个隐藏行为:MAA 会额外识别巫恋组并优先为她们出无人机,这个动作由独立插件 DronesForShamareTaskPlugin.cpp 完成。

四个跨设施组合开关:必要干员没齐就白勾

这些开关只在常规模式下生效,缺任何一名必要干员整个组合都不会参与排班:

组合必要干员参与计算 / 冲突说明
红松骑士团焰尾(精二)、薇薇安娜(精二)、野鬃/灰毫/远牙(精二)至少一人砾参与计算;与深海猎人同时勾选时两者不会同时排班
感知信息絮雨(精二)、迷迭香(精二)、黑键(精二)夕、塑心、爱丽丝、车尔尼参与;优先度高于人间烟火
人间烟火桑葚(精二)、乌有(精二)重岳、令、夕参与计算
深海猎人歌蕾蒂娅(精二)、乌尔比安、斯卡蒂、幽灵鲨、安哲拉与红松骑士团互斥

组合的启用条件(比如要求发电站数量)定义在 AsstInfrastDef.h 的SkillsGroup::conditions里,设施不够时勾了也没用。

固定换班顺序:宿舍为什么跑两遍

常规模式的顺序由 AsstInfrastDef.h 中build_facility_plan固定编码:

(制造站巡检)→ 宿舍前置 → 发电站 → 办公室 → 控制中枢 → 制造站 → 贸易站 → 会客室 → 宿舍重排 → 加工站 → 训练室

三个容易误解的点:

  1. "换班设施"列表只是启用集合,排列顺序无效。你在设置里把制造站拖到第一位不会让它先换班,想要自定义顺序请用自定义模式。
  2. 宿舍拆成两轮是有意设计:前置轮(DormPrepare)在常规模式下只干一件事——菲亚梅塔配对(且仅当开启了心情恢复);重排轮(DormRearrange)清空全部宿舍后按心情升序安置低心情干员,剩余位置按信赖补位。先换完所有工作位、最后统一收人,才能接住本轮刚换出来的低心情干员,跨设施组合也因此能统一视角计算。
  3. 只勾贸易站不勾制造站时,会先插入一次"制造站巡检":只读取各制造站的产品类型给贸易站评分用,不进干员选择、不出无人机、不补货。

换班算法幕后:MAA 怎么决定谁上岗

效率计算链路是:技能表(InfrastConfig)+ 干员数据(BattleData)→ 枚举候选技能组合 → 逐个打分,评分逻辑在 InfrastScore.cpp。每个技能的效率表按产物(经验书、赤金、源石碎片、芯片等)分别给出数值,组合效率是技能效率的叠加,所以"芬+稀音"和单干芬是两个分。

两个补充规则:

  • 控制中枢按固定优先级选干员:制造/贸易/办公室加速、其他设施心情减免、跨设施组合联动这类同类增益不会重复占位,避免浪费中枢格子。
  • 巫恋组无人机插件:贸易站正在产龙门币且无人机用途设为龙门币时,插件会检查巫恋是否在岗,在则直接出无人机并标记"已用"。

自定义排班从 0 到 1:写出第一份能跑的 JSON

最小可用的排班文件

文件放在 MAA 的resource/custom_infrast/目录下,模式选"自定义基建配置"并指定文件名即可。最小结构只要一个 plan、一个房间:

{ "plans": [ { "rooms": { "control": [ { "operators": ["夕", "令"] } ] } } ] }

规则:rooms里没写的设施照旧走默认算法;干员名走 OCR,必须用当前客户端语言的名字(国服写中文);JSON 不支持注释,示例里带注释的版本别直接复制。

按用途分组:哪些字段你才真的需要

时间计划(period/duration):period是若干hh:mm区间,当前时间落在哪个区间就用哪个 plan;跨天要拆成["22:00","23:59"]+["00:00","06:00"]两段写。不写period则每次换班后自动切下一个 plan。设错后果:时间只做简单数值比较,写成24:00或漏写前导零(6:00)会选不中计划。duration是保留字段,目前无作用,写了也不影响。另外 core 本身不解析period,用接口集成的话这段逻辑要你自己实现。

菲亚梅塔(Fiammetta):target填目标干员(OCR 名),order选pre(整个换班前)或post(换完班后)。什么时候需要:你希望自定义排班里也保留菲亚梅塔心情互换。target 留空会直接跳过整个功能;注意pre时若无人机也是pre,无人机会先执行。

无人机(drones):room只认trading或manufacture,写别的值直接报错终止整个任务解析;index是左侧 tab 栏序号(1-5);rule是保留字段,填了也不起作用。自定义模式下设置面板里的"无人机用途"不生效,一切以 JSON 为准。

干员编组(groups+use_operator_groups):先定义命名编组,再在control/manufacture/trading房间设use_operator_groups: true,此时operators里的名字被解释为编组名。运行时按声明顺序选第一个"全员心情都过阈值"的编组,全员不齐就落到下一个编组;全部匹配失败会回调CustomInfrastRoomGroupsMatchFailed。设错后果:不开这个开关时,编组名会被当干员名去 OCR,找不到人。

房间字段(数组下标对应第几间房):

  • operators:干员名单;
  • sort:默认false,MAA 按识别结果选而不保证入房顺序;
  • skip:true时该房间跳过换人,但无人机、线索交流等操作照常;
  • autofill:true时剩余位置交给原算法;operators为空则整间房走原算法;
  • product:当前制造产物,取值Battle Record/Pure Gold/Dualchip/Originium Shard/LMD/Orundum,实际产物不符时界面弹红色提示;
  • candidates:备选干员,有谁用谁、选满为止;
  • use_operator_groups:启用编组解释。

暖机顺序乱掉的解法:sort 字段

用稀音、帕拉斯、巫恋这类依赖"入房顺序"触发暖机的组合时,sort保持默认的false会随机打乱顺序,暖机白给。设sort: true即按operators声明顺序入座。

三个典型翻车场景

  1. candidates 和 autofill 混用:candidates非空时autofill必须为false,两者语义冲突(前者是"名单内挑",后者是"算法补位"),混用属于协议不允许的组合。
  2. 忘开 sort 丢暖机:见上一节,最经典的"效率莫名下降"。
  3. ⚠️autofill 抢走后续房间的干员:补位只按单干员效率算,不看整组组合。如果补位房排在自定义房前面,很可能把下一房的主角补进来占坑。把autofill的房间放最后,或把关键干员显式写死。

队列轮换三句话讲完

  1. 前提:先在游戏内建好预设队列,MAA 只负责点"进入队列轮换"(InfrastEnterRotation任务)。
  2. 宿舍、发电站、办公室、控制中枢四类设施本模式完全不处理(rotation_skips)。
  3. 制造站、贸易站、会客室只做轮换、不换人(set_skip_shift(true)),MAA 不会打开名单重选干员。

避坑清单:跑长草前核对这 5 条

  1. ⚠️线索 10 张上限陷阱:个人线索上限 10 张(含已放入会客室的),且放入会客室的线索不计入重复判断。典型死局:板上 6 种(凑 7 种才能开线索交流)+ 手里 4 张互不重复 → 新线索收不了、一键赠送也送不出,只能等好友捞。MAA 的策略是:开不了线索交流就把板上线索全取下来,能开则一键放置。
  2. 菲亚梅塔心情恢复:默认关闭,需在基建设置开启;最多指定 3 名目标(清流、可露希尔、但书、巫恋、龙舌兰、歌蕾蒂娅六选三,不填默认前三位),换班时把当前心情最低的目标与菲亚梅塔进宿舍互换心情。巫恋、龙舌兰不推荐:自动换班很难维持她们的 007 循环,选了反而亏。
  3. 不将已进驻干员放入宿舍:开启后避免艾丽妮、逻各斯在训练室未训练时被拽进宿舍;低心情的已进驻干员先由所在设施换出再休息,逻辑更干净。
  4. 会客室优先级:按固定优先级选干员(见行者、跃跃优先);U-Official的线索倾向技能会被主动禁用。
  5. 一键赠送重复线索:国服(Official/BiliBili)2025-12-05 新增该功能,检测到按钮 MAA 会自动点击批量赠送;EN/JP/KR 预计约 6 个月后支持,TW 预计约 1 年(台服赶进度可能提前)。

相关资源

  • 官方手册·基建换班:infrastructure.md
  • 自定义排班 JSON 完整字段规范:基建排班协议
  • 换班统一调度与自定义配置解析:InfrastTask.cpp
  • 各设施子任务实现目录:src/MaaCore/Task/Infrast/
  • 组合评分实现:InfrastScore.cpp
  • 数据结构与固定换班顺序定义:AsstInfrastDef.h
  • 菲亚梅塔配对与宿舍重排:InfrastDormTask.cpp
  • 内置极限效率作业(153/243/252/333 布局):resource/custom_infrast/——对干员与练度要求极高,可参考结构、不建议直接抄
  • 社区工具:一图流排班生成器、riic 自动排班表(第三方在线工具,请自行确认可用性)

【免费下载链接】MaaAssistantArknights《明日方舟》小助手,全日常一键长草!| A one-click tool for the daily tasks of Arknights, supporting all clients.项目地址: https://gitcode.com/GitHub_Trending/ma/MaaAssistantArknights

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询