ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

MaaAssistantArknights 基建换班深度解析:常规模式调度算法、跨设施组合与自定义排班协议

2026/9/13 18:39:57 拓冰建站 浏览量
MaaAssistantArknights 基建换班深度解析:常规模式调度算法、跨设施组合与自定义排班协议 MaaAssistantArknights 基建换班深度解析常规模式调度算法、跨设施组合与自定义排班协议【免费下载链接】MaaAssistantArknights《明日方舟》小助手全日常一键长草| A one-click tool for the daily tasks of Arknights, supporting all clients.项目地址: https://gitcode.com/GitHub_Trending/ma/MaaAssistantArknights本篇技术文章基于 MaaAssistantArknights 官方文档 基建换班 展开系统讲解 MAA 基建换班功能的三种工作模式常规、队列轮换、自定义基建换班涵盖自动效率计算与心情阈值换出策略、四类跨设施干员组合的启用条件、换班顺序的算法安排以及自定义排班 JSON 协议的核心字段与整合协议参数并逐一对应到仓库源码中的调度实现帮助你在实际使用与二次集成中准确理解每个配置项的底层行为。基建换班的三种工作模式MAA 的基建换班按模式划分为三条执行路径这一划分在源码 AsstInfrastDef.h 中以枚举FacilityPlanMode明确定义Default常规模式自动计算效率较高的设施内及跨设施干员组合无需手动排班对应整合协议中mode 0Custom自定义基建换班模式读取用户配置的 JSON 排班作业对应mode 10000协议格式详见 基建排班协议Rotation队列轮换模式跳过控制中枢、发电站、宿舍以及办公室其余设施不进行换班但保留使用无人机、会客室逻辑等基本操作对应mode 20000。三种模式的设施调度差异集中体现在 build_facility_plan 函数中常规模式将facility列表视为启用集合顺序与重复项不参与调度而自定义/轮换模式则严格按数组顺序执行步骤这正是下文换班顺序一节行为差异的源码依据。常规模式换班策略常规模式的核心是自动效率计算官方文档归纳的策略要点如下自动计算并选择效率较高的干员组合支持所有通用类技能、特殊技能组合及跨设施组合无需手动排班自动识别作战纪录经验书、赤金、源石碎片、晶片分别使用相应的干员组合自动按照无人机用途选择的方式使用无人机自动识别心情进度条换班时将剩余心情百分比小于基建工作心情阈值的已进驻干员换出并在宿舍补位阶段安排其进驻休息。从源码结构看这些策略由 InfrastConfig 统一承载该配置按设施名 → 技能 ID →infrast::Skill两级索引组织全部基建技能每个技能携带效率数值efficientkey 为产品名如赤金、经验书、效率正则efficient_regex支持运行时计算再叠加基础值、可能拥有该技能的干员 ID 集合operator_ids与最大可选数量max_num跨设施组合则以SkillsGroup含conditions可用条件、necessary必选技能、optional可选技能、allow_external是否允许外部干员补位的形式注册见 AsstInfrastDef.h。产品与技能的匹配识别在 InfrastProductionTask.cpp 等制造/贸易任务中完成心情换出判断则在 InfrastAbstractTask 中以m_mood_threshold阈值过滤在岗干员。无人机用途drones参数的可选值为_NotUse、Money、SyntheticJade、CombatRecord、PureGold、OriginStone、Chip默认_NotUse在mode 10000自定义模式下该字段无效由 JSON 中的drones块接管见 集成协议文档。基建工作心情阈值threshold参数默认0.3取值范围 [0, 1.0]且仅在mode 10000时只针对autofill房间生效、mode 20000时无效。跨设施组合以下跨设施干员组合可在基建设定中按需启用组合必要干员参与计算的干员备注红松骑士团焰尾精二、薇薇安娜精二、野鬃/灰毫/远牙精二至少一人砾—感知信息絮雨精二、迷迭香精二、黑键精二夕、塑心、爱丽丝、车尔尼优先度高于人间烟火人间烟火桑葚精二、乌有精二重岳、令、夕—深海猎人歌蕾蒂娅精二、乌尔比安、斯卡蒂、幽灵鲨、安哲拉—因算法原因同时勾选红松骑士团时两者不会同时参与排班这些组合在实现层面即上节所述的SkillsGroupnecessary中缺失任一必选技能则组合不可用optional按效率收益参与择优因此文档中必要干员 参与计算干员的划分与源码的必选/可选技能区分一一对应。换班顺序常规模式下换班顺序由算法统一安排宿舍 → 发电站 → 办公室 → 控制中枢 → 制造站 → 贸易站 → 会客室 → 宿舍 → 加工站 → 训练室该顺序用于支持跨设施组合与心情恢复联动。换班设施列表仅决定 MAA 处理哪些设施类别列表顺序不生效如需按自定义顺序换班请改用自定义基建换班模式。这一描述与 build_facility_plan 中常规模式分支的步骤排列完全吻合MfgInspect仅在启用贸易站而未启用制造站时插入的产物检查步→DormPrepare宿舍前置轮→Power→Office→ControlForce→Mfg→Trade→Reception→DormRearrange宿舍重排轮→Processing→Training→AssistantChange。其中步骤的语义在 FacilityStep 枚举注释 中明确DormPrepare常规模式执行菲亚梅塔配对自定义模式执行 plan 的宿舍配置轮DormRearrange清空全部宿舍后按心情升序安置低心情干员剩余位置以信赖干员补位。这也解释了为何文档强调宿舍出现两次——前置轮处理菲亚梅塔互换与菲亚梅塔留守后置轮负责把换出的低心情干员重新安置。额外说明以下细节行为均来自官方文档使用常规模式前建议完整了解巫恋组若无人机用途选择贸易站 - 龙门币会额外识别巫恋组并优先为其使用无人机。菲亚梅塔恢复目标默认关闭需在基建设定中开启启用菲亚梅塔心情恢复后生效。开启后可指定最多 3 名恢复目标清流、可露希尔、但书、巫恋、龙舌兰、歌蕾蒂娅换班开始时会将当前心情最低的目標干员与菲亚梅塔一同进驻宿舍互换心情随后仅将菲亚梅塔留在宿舍恢复心情。由于自动换班情况下难以实现巫恋、龙舌兰的 007 效果不推荐选择这两名干员。会客室赠送线索每次换班都会尝试赠送线索。官服Official, BiliBili在 2025-12-05 新增了「一键赠送重复线索」功能当检测到该按钮时MAA 会自动点击以批次赠送重复线索EN/JP/KR 预计约六个月后支援该功能TW 预计约一年后支援由于台服正在赶进度可能会更早支援。会客室干员选择按固定优先级选择干员如见行者、跃跃优先U-Official的线索倾向技能会被停用。线索上限问题若无法开启线索交流换班时会把线索板上的所有线索都取下来若能开启线索交流则使用一键放置。这是由于个人线索上限为 10 张含已放入会客室的线索且已放入会客室的线索不计入重复判断提前放入过多线索可能导致线索到达上限却既无法一键赠送、也无法继续获取新线索只能靠好友捞起来。例如线索板上已有 6 种线索需凑齐 7 种不同线索才能开启交流手里再有 4 张互不重复的线索就会收不了新线索也一键赠送不出去。宿舍防误进驻开启不将已进驻的干员放入宿舍设置项可避免艾丽妮、逻各斯等干员在训练室未训练时被进驻到宿舍低心情的已进驻干员由其所在设施换班换出后再进驻宿舍休息。控制中枢选择规则按固定优先级规则选择干员制造/贸易/办公室加速、其他设施心情减免、跨设施组合联动等同类增益不重复占位。设施类别勾选可自行选择需要 MAA 处理的设施类别默认全选。菲亚梅塔逻辑的源码实现位于 InfrastDormTask.cpprun_fiammetta_preparation在宿舍前置轮触发try_select_fiammetta_pair先在宿舍第一页中寻找心情满且可用的菲亚梅塔detect_full_mood_fiammetta再在满足未选中、可用、心情低于m_mood_threshold条件的候选中挑选目标干员随后点击两者进驻宿舍完成互换目标名单经normalize_fiammetta_targets归一化干员名 → 干员 ID并去重与文档最多 3 名恢复目标的约束对应。整合协议侧对应fiammetta_recovery_enabled是否启用关闭时换班将跳过宿舍准备步骤与fiammetta_targets恢复目标名单两个字段均仅mode 0生效。队列轮换该模式需要先在游戏内设定好预设队列MAA 会自动进行轮换。对应mode 20000从 build_facility_plan 的轮换分支可以看到Dorm、Power、Office、Control四类设施被显式跳过rotation_skips集合其余设施按用户给定的数组顺序执行但只保留基本操作如使用无人机、会客室逻辑不做完整的干员重排。自定义基建换班社区提供有可视化排班产生工具一图流团队开发的排班生成器可结合 基建排班协议文档 使用。MAA 安装目录下resource/custom_infrast/中内置了几套理论极限效率的作业该目录属于运行时数据资源包不在本源码仓库内可用作参考。由于其对干员及练度的需求极高不推荐直接使用。自定义作业的 JSON 协议支持以下关键能力字段完整说明见 base-scheduling-schema.md多计划plans一个 JSON 可包含多个计划如早班/晚班每个计划可设period时间段hh:mm格式跨天写法为拆分区间自动选用缺省则每次换班结束后切换下一计划duration为保留字段当前无作用。菲亚梅塔Fiammettaenable、target目标干员OCR 识别需传入对应客户端语言的干员名、orderpre/post默认pre。无人机dronesenable、roomtrading/manufacture、index[1, 5]对应左侧分页标签序号、orderpre/post默认prerule为保留字段。干员编组groups可为control/manufacture/trading定义命名编组房间配置中use_operator_groups: true后operators中的名称被解释为编组名按心情门槛值以及设定顺序选择编组。房间配置roomskey 取值control/manufacture/trading/power/meeting/hire/dormitory/processing缺少某设施则该设施使用默认算法换班。单房间支持skip仅跳过换干员操作无人机、线索交流等仍正常进行、operators自定义干员、sort是否按给定顺序排列防止稀音、帕拉斯、巫恋等暖机干员顺序被打乱、autofill用原算法自动填充剩余位置、candidates备选干员与autofill互斥、product预期制造产物Battle Record/Pure Gold/Dualchip/Originium Shard/LMD/Orundum与设施实际产物不符时界面会红色提示。注意JSON 档案不支援注释协议文档中的注释仅供说明参考请勿直接复制使用。这些字段在源码中对应 CustomRoomConfigskip/use_operator_groups/names/autofill/candidates/sort/product与 CustomDronesConfigindex/order结构其中CustomRoomConfig::Product枚举与协议product取值一一对应可用作字段语义的交叉验证依据。总结MAA 的基建换班功能以常规模式自动效率算法 自定义 JSON 协议 队列轮换三层设计覆盖从省心到精细的排班需求常规模式的换班顺序宿舍 → 发电站 → 办公室 → 控制中枢 → 制造站 → 贸易站 → 会客室 → 宿舍 → 加工站 → 训练室由 build_facility_plan 统一编排技能与组合数据由 InfrastConfig 从资源 JSON 加载自定义模式则把调度权交还给用户字段级行为可对照 基建排班协议 与 集成协议 逐一核对。理解上述配置项与源码结构的对应关系有助于在界面整合 MAA 或编写自定义作业排班时做出正确决策。【免费下载链接】MaaAssistantArknights《明日方舟》小助手全日常一键长草| A one-click tool for the daily tasks of Arknights, supporting all clients.项目地址: https://gitcode.com/GitHub_Trending/ma/MaaAssistantArknights创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考