MAA 自定义基建换班怎么导入自定义基建配置并指定设施类别
MAA 自定义基建换班怎么导入自定义基建配置并指定设施类别【免费下载链接】MaaAssistantArknights《明日方舟》小助手全日常一键长草| A one-click tool for the daily tasks of Arknights, supporting all clients.项目地址: https://gitcode.com/GitHub_Trending/ma/MaaAssistantArknights如果你不想让 MAA 用默认算法自己排班或者希望换班顺序由自己决定可以启用「自定义基建配置」模式准备一份描述干员排班的 JSON 计划文件导入到 MAA 中再通过设施类别facility列表指定 MAA 这次换班要处理哪些设施。本文基于仓库内的基建换班说明、基建排班协议文档和maa-cli 配置文档覆盖图形界面导入与 maa-cli 任务文件两种路径。先确定用哪种基建换班模式MAA 的基建任务有三种模式常规模式自动计算高効率干员组合、队列轮换使用游戏内预设队列、自定义基建配置按你提供的 JSON 排班。前两种由 MAA 算法决定干员与顺序只有自定义模式能精确控制每个房间上谁、以及处理设施类别的先后。在常规模式下换班设施列表只决定 MAA 处理哪些设施类别列表顺序不生效换班顺序由算法固定为宿舍 → 发电站 → 办公室 → 控制中枢 → 制造站 → 贸易站 → 会客室 → 宿舍 → 加工站 → 训练室。需要按自定义顺序换班时必须切到自定义基建配置模式——这也是使用导入配置的前提。准备自定义基建 JSON 文件排班计划的完整字段说明在基建排班协议文档中要点如下JSON 文件不支持注释协议文档中的注释仅用于演示不能原样复制使用。干员名使用 OCR 识别必须传入对应客户端语言的干员名官服用中文、EN 服用英文名等。顶层为title作业名可选、plans计划列表。每个计划可带period换班时间段格式hh:mm缺省时每次换班结束后自动切换到下一个计划。rooms是必选项取值范围为control/manufacture/trading/power/meeting/hire/dormitory/processing。缺少某个设施时该设施退回默认算法换班不想换某个房间时给该房间加skip: true或在任务设置中取消该设施类别的勾选。房间内的可选字段operators指定干员、sort按 operators 顺序排防止暖机效果被打乱、autofill用原算法自动填充剩余位置、product当前制造产物取值Battle Record/Pure Gold/Dualchip/Originium Shard/LMD/Orundum、candidates备选干员、use_operator_groups 顶层groups干员编组。每个计划还可选配Fiammetta菲亚梅塔心情互换与drones无人机使用room取trading/manufactureindex对应左侧 tab 栏序号 1~5不填写则不使用。duration与drones.rule目前是保留字段无实际作用。MAA 文件夹下resource/custom_infrast/内置了几套理论极限效率的作业可以在界面里直接选用或当模板参考但文档明确说明其对干员及练度需求极高不推荐直接使用。也可以用文档给出的两个在线工具排班生成器、自动生成基建排班表工具生成文件。以下是一份按协议文档示例整理的最小计划已去掉注释干员名以简体中文客户端为准作为结构示例{ title: 小号的换班方案, plans: [ { name: 早班, period: [ [22:00, 23:59], [00:00, 06:00] ], rooms: { control: [ { operators: [夕, 令, 凯尔希, 阿米娅, 玛恩纳] } ], manufacture: [ { operators: [芬, 稀音, 克洛丝], sort: true }, { operators: [Castle-3], autofill: true, product: Battle Record } ] } } ] }其中sort: true用于在稀音、帕拉斯、巫恋等干员可能被打乱顺序时保留暖机效果autofill的房间若operators为空则整个房间使用原算法不为空则仅按单干员效率填充文档提示它可能与后面自定义的干员冲突谨慎使用或把 autofill 房间放到最后。在图形界面导入配置并指定设施类别打开基建任务的设置面板任务队列 - 基建换班。在模式下拉框中选择「自定义基建配置」自定义基建配置对应模式值mode 10000。选择计划文件可以从「153/243/333 布局」等内置项中选文件位于资源目录resource/custom_infrast/也可以选择user_defined并用文件选择框导入自己的 JSON仅接受*.json。内置项会锁定文件选择导入自定义文件时才由你指定路径。文件导入后界面解析出计划列表。若任何计划设置了period计划下拉框默认选中「时间轮换」界面显示时间轮换 (当前计划名)每分钟按当前时间刷新匹配的计划否则默认选中第一个计划。指定设施类别换班设施列表的勾选决定 MAA 处理哪些类别自定义模式下列表顺序生效拖拽即可调整换班顺序。与 JSON 的对应关系是rooms里写了键的设施用你的配置换班没写的设施仍走默认算法想完全不动某个房间用 JSON 里的skip或在这里取消勾选。两点约束需要注意文档提示「自定义基建配置仅有部分计划存在时间段可能会存在预期外的行为。如需设置换班时间段请保证所有计划均设置时间段否则请全部留空」此外若「基建计划」存在执行时间基建任务开始前或任务运行时不会自动切换计划仅在空闲或任务完成后切换。可选路径用 maa-cli 任务文件指定maa-cli 的自定义任务中基建子任务用type Infrast和mode 10000表示自定义模式计划文件通过filename参数给出。与图形界面不同maa-cli 不会读取基建文件也不会按其中的period自动选计划必须用[[tasks.variants]]的condition显式指定plan_index。以下是文档中「2 天 6 班」的完整示例[[tasks]] name 基建换班 (2天6班) type Infrast [tasks.params] mode 10000 facility [Trade, Reception, Mfg, Control, Power, Office, Dorm] dorm_trust_enabled true filename normal.json # 第一班第一天 4:00:00 - 12:00:00 [[tasks.variants]] params { plan_index 0 } [tasks.variants.condition] type And conditions [ # 偏移量 num_days_since_ce % divisor当天偏移量可通过 maa remainder divisor 获取 { type DayMod, divisor 2, remainder 0 }, { type Time, start 04:00:00, end 12:00:00 }, ] # 第二班第一天 12:00:00 - 20:00:00 [[tasks.variants]] params { plan_index 1 } [tasks.variants.condition] type And conditions [ { type DayMod, divisor 2, remainder 0 }, { type Time, start 12:00:00, end 20:00:00 }, ] # 第三班第一天 20:00:00 - 第二天 4:00:00 [[tasks.variants]] params { plan_index 2 } [tasks.variants.condition] type Or conditions [ { type And, conditions [ { type DayMod, divisor 2, remainder 0 }, { type Time, start 20:00:00 }, ] }, { type And, conditions [ { type DayMod, divisor 2, remainder 1 }, { type Time, end 04:00:00 }, ] }, ] # 第四班第二天 4:00:00 - 12:00:00 [[tasks.variants]] params { plan_index 3 } [tasks.variants.condition] type And conditions [ { type DayMod, divisor 2, remainder 1 }, { type Time, start 04:00:00, end 12:00:00 }, ] # 第五班第二天 12:00:00 - 20:00:00 [[tasks.variants]] params { plan_index 4 } [tasks.variants.condition] type And conditions [ { type DayMod, divisor 2, remainder 1 }, { type Time, start 12:00:00, end 20:00:00 }, ] # 第六班第二天 20:00:00 - 第三天新的第一天4:00:00 [[tasks.variants]] params { plan_index 5 } [tasks.variants.condition] type Or conditions [ { type And, conditions [ { type DayMod, divisor 2, remainder 1 }, { type Time, start 20:00:00 }, ] }, { type And, conditions [ { type DayMod, divisor 2, remainder 0 }, { type Time, end 04:00:00 }, ] }, ]该示例中facility列表就是设施类别参数列出 MAA 要处理的类别filename normal.json使用相对路径时相对于$MAA_CONFIG_DIR/infrast配置目录可用maa dir config获取。其他注意事项来自文档跨天时间段如 20:00 到次日 04:00不能直接写Time { start 20:00:00, end 04:00:00 }需要用Or组合两个条件否则第二天的 00:00:00 - 04:00:00 不会被匹配文档也建议优先通过调整排班时间避免跨天。Time条件中结束时间小于开始时间时结束时间被视为第二天的时间。时间条件可加timezone参数数字为 UTC 偏移量东八区写8或写客户端类型如Official官服时区是东四区而非东八区不指定则用本地时区。基建文件由 MaaCore 而非 maa-cli 读取所以文件必须是纯 JSON不能带 TOML/YAML 格式或注释。若多个变体同时被匹配默认使用第一个也可以把无条件变体放在最后作为默认分支。验证导入结果与换班是否生效文档给出的判断信号有这几处导入时图形界面会解析 JSON 并把title、description和各计划信息记入任务队列日志若文件损坏或结构不对会提示「自定义基建配置文件解析错误」。计划选择非时间轮换模式下每次换班完成后计划索引自动 1超出末尾回到 0并在日志中记录「自动保存为下个计划」及下一个计划的description_post描述选择索引超出计划数量时会提示「自定义基建配置选择超出索引」。运行时制造站设置了product时若识别到当前设施与作业中设置的产物不符合界面会弹出红色字样提示文档注明以后可能有更多作用。限制与不适用情况period字段由使用方实现选择逻辑core 不处理该字段用接口集成 MAA 时需要自行实现按时间段选计划的逻辑maa-cli 同样不读基建文件只能用plan_index变体。干员名是 OCR 匹配语言不对如 EN 服客户端填中文名就选不到干员。rooms未覆盖的设施退回默认算法skip的房间仍会正常执行无人机、线索交流等其他操作只是跳过换干员。内置的极限效率作业对干员与练度要求高文档明确不推荐直接照搬使用。【免费下载链接】MaaAssistantArknights《明日方舟》小助手全日常一键长草| A one-click tool for the daily tasks of Arknights, supporting all clients.项目地址: https://gitcode.com/GitHub_Trending/ma/MaaAssistantArknights创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考