Files
MaaAssistantArknights/docs/zh-tw/protocol/copilot-schema.md
HY 63e87aaabf docs: 繁中文件大更新 (#15480)
* docs: readme

* docs: develop_ci-tutorial, development

* docs: develop_documentation-guidelines

* docs: develop_issue-bot-usage

* docs: develop_linux-tutorial, overseas-client-adaptation

* docs: develop_README, pr-tutorial

* docs: develop_vsc-ext-tutorial

* docs: manual_README, newbie

* docs: manual_faq

* docs: manual_connection

* docs: manual_cli_config

* docs: manual_cli_faq, install

* docs: manual_cli_README, usage

* docs: develop_development

* docs: manual_device_README, macos

* docs: manual_device_linux

* docs: manual_device_windows

* docs: manual_device_android

* docs: manual_introduction README, reclamation-algorithm, recruit, rewards, startup, tools

* docs: manual_introduction_others

* docs: manual_introduction_credit

* docs: manual_introduction_infrastructure

* docs: manual_introduction_combat

* docs: manual_introduction_copilot

* docs: manual_introduction_integrated-strategy

* docs: protocol_base-scheduling-schema, README, sss-schema

* docs: protocol_remote-control-schema

* docs: protocol_callback-schema

* docs: protocol_copilot-schema

* docs: protocol_task-schema

* chore: update xmal

* chore: 調整部分內容

* chore: 再次調整 README 跟 develop 資料夾下的所有文件內容

* chore: 調整 protocol 資料夾內的文件內容

* chore: 調整 manual 資料夾內的零散文件內容

* chore: 調整 cil 與 device 資料夾內的文件內容

* chore: 調整 introduction 資料夾內的文件內容

* chore: update xaml

* chore: 再......再改一點什麼......

* chore: 補圖

* chore: 更改連結

* chore: 再改一點奇怪的東西
2026-01-21 00:14:24 +08:00

177 lines
10 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
order: 3
icon: ph:sword-bold
---
# 戰鬥流程協定
`resource/copilot/*.json` 的使用方法及各欄位說明
::: tip
請注意json 檔案不支援註解。文件中的註解僅供說明參考,請勿直接複製使用。
:::
## 完整欄位一覽
```json
{
"stage_name": "暴君", // 關卡名稱必填。關卡中文名稱、code、stageId、levelId 等,只要能保證唯一均可。
"opers": [
// 指定幹員
{
"name": "重岳", // 幹員名稱
"skill": 3, // 技能序號。選填,預設為 1取值範圍 [1, 3]
"skill_usage": 2, // 技能用法。選填,預設為 0
// 0 - 不自動使用(依賴 "actions" 欄位)
// 1 - 好了就用,有多少次用多少次(例如幹員 棘刺 3 技能、桃金娘 1 技能等)
// 2 - 使用 X 次(例如幹員 山 2 技能用 1 次、重岳 3 技能用 5 次,透過 "skill_times" 欄位設定)
// 3 - 自動判斷使用時機(畫餅.jpg
// 如果是全自動的技能,填 0
"skill_times": 5, // 技能使用次數。選填,預設為 1
"requirements": {
// 練度要求。保留介面,暫未實作。選填,預設為空
"elite": 2, // 精英化等級。選填,預設為 0, 不要求精英化等級
"level": 90, // 幹員等級。選填,預設為 0
"skill_level": 10, // 技能等級。選填,預設為 0
"module": 1, // 模組編號。選填,預設為 0
"module_level": 3, // 模組等級,選填,預設為 0
"potential": 1 // 潛能要求。選填,預設為 0
}
}
],
"groups": [
{
"name": "任意正常群奶", // 群組名稱,必填
// 自己隨便取名字,與下面 deploy 中的 name 對應起來就行
"opers": [
// 幹員任選其一,無序,會優先選練度高的,用法同上述 opers 欄位
{
"name": "夜鶯",
"skill": 3,
"skill_usage": 2 // 若是指定時刻,不同的幹員技能 CD 可能不同,請留意
},
{
"name": "白面鴞",
"skill": 2,
"skill_usage": 2
}
]
}
],
"actions": [
// 戰鬥中的操作。有序,執行完前一個才會去執行下一個。必填
{
"type": "部署", // 操作類型,選填,預設為 "Deploy"
// "Deploy" | "Skill" | "Retreat" | "SpeedUp" | "BulletTime" | "SkillUsage" | "Output" | "SkillDaemon" | "MoveCamera" | "ResetStopwatch"
// "部署" | "技能" | "撤退" | "二倍速" | "子彈時間" | "技能用法" | "列印" | "擺完掛機" | "移動鏡頭" | "重置全域計時器"
// 中英文皆可,效果相同
// 若為 "部署", 當費用不夠時,會一直等待到費用夠(除非 timeout
// 若為 "技能", 當技能 CD 沒轉好時,一直等待到技能 CD 好(除非 timeout
// "二倍速" 是可切換的,即使用一次變成二倍速,再次使用又變回一倍速
// "子彈時間" 即點擊任意幹員後的 1/5 速度,再進行任意 action 會恢復正常速度
// "name" 或 "location" 必填一項,即點哪個幹員進入子彈時間,戰場上的幹員或待部署區的幹員均可(會自動判斷)
// 若下一個動作是 "技能" / "撤退",需要填與下一個動作相同的 "name" 或 "location"
// 若下一個動作是 "部署",隨便填誰(但最好不要填待部署的那個人,頭像被點了會影響辨識)
// "列印" 介面不顯示這條步驟,僅用於輸出 doc 裡的內容(用來做字幕之類的)
// "擺完掛機" 僅使用 "好了就用" 的技能,其他什麼都不做,直到戰鬥結束
// "移動鏡頭" 用於「引航者試煉」模式,還需要填寫 distance 欄位
// "重置全域計時器" 重置全域計時器請參考「time_elapsed」條件
// 目前下面五個條件是且的關係,即 &&
"kills": 0, // 擊殺數條件,如果沒達到就一直等待。選填,預設為 0直接執行
"costs": 50, // 費用條件,如果沒達到就一直等待。選填,預設為 0直接執行
// 費用受潛能等影響,可能並不完全正確,僅適合對時間軸要求不嚴格的戰鬥。
// 否則請使用下面的 cost_changes
// 另外僅在費用是兩位數的時候辨識得比較準,三位數的費用可能會辨識錯,不推薦使用
"cost_changes": 5, // 費用變化量條件,如果沒達到就一直等待。選填,預設為 0直接執行
// 注意是從開始執行本 action 開始計算的(即前一個 action 結束時的費用作為基準)
// 支援負數,即費用變少了(例如「孑」等吸費幹員使得費用變少了)
// 另外僅在費用是兩位數的時候辨識得比較準,三位數的費用可能會辨識錯,不推薦使用
"cooling": 2, // CD 中幹員數量條件,如果沒達到就一直等待。選填,預設為 -1不辨識
"time_elapsed": 1000, // 以毫秒為單位全域計時條件,如果沒達到就一直等待。選填,預設為 0直接執行
// 注意是從上一次執行 type:ResetStopwatch 的 action 開始計算的
// 使用前必須執行過 type:ResetStopwatch 的 action 重置計時器,不然會卡住
// TODO: 其他條件
// TODO: "condition_type": 0, // 執行條件間的關係,選填,預設為 0
// // 0 - 且; 1 - 或
"name": "棘刺", // 幹員名稱 或 群組名稱, type 為 "部署" 時必填,為 "技能" | "撤退" 時選填
"location": [
5,
5
], // 部署幹員的位置。
// type 為 "部署" 時必填。
// type 為 "技能" | "撤退" 時選填,
// "技能":僅推薦場地上自動的裝置等,不填寫 name並使用 location 開啟技能。正常部署的幹員推薦使用 name 開啟技能
// "撤退":僅推薦有多個同名召喚物時,不填寫 name, 並使用 location 進行撤退。正常部署的幹員推薦 name 進行撤退
// 座標資訊可在 [https://map.ark-nights.com/areas](https://map.ark-nights.com/areas) 中查看在設定中將「座標展示」選為「MAA」即為 MAA 使用的座標
"direction": "左", // 部署幹員的幹員朝向。 type 為 "部署" 時必填
// "Left" | "Right" | "Up" | "Down" | "None"
// "左" | "右" | "上" | "下" | "無"
// 中英文皆可,效果相同
"skip_if_not_ready": false, // 僅在 type 為 "技能" 時有效, 允許在技能不可用時跳過目前行動,主要用於關閉未打完的彈藥技能。選填,預設為 false
"skill_usage": 1, // 修改技能用法。當 type 為 "技能用法" 時必填
// 舉例:剛下桃金娘需要她幫忙打幾個怪,不能自動開技能,中後期平穩了需要她自動開技能
// 則可以在對應時刻設定為 1
"skill_times": 5, // 技能使用次數。選填,預設為 1
"pre_delay": 0, // 前置延時。選填,預設為 0, 單位毫秒
// 目前 action 的所有條件參數全部滿足後開始計時,計時結束後執行 type 對應動作
"post_delay": 0, // 後置延時。選填,預設為 0, 單位毫秒
// 目前 action 的 type 對應動作執行完成後開始計時,計時結束後開始下一個 action
//
// "timeout": 999999999, // 保留欄位,暫未實作。
// 超時時間。當 type 為 "部署" | "技能" 時選填。預設 INT_MAX, 單位毫秒
// 等待超時則放棄目前動作, 轉而執行下一個動作
"distance": [
4.5,
0
], // type 為 "移動鏡頭" 時必填
// [ x 移動格子數y 移動格子數 ],可為小數,可為負
// x 值為正時代表鏡頭右移y 值為正時代表鏡頭上移
// 例:"distance": [-1, 1]"location": [5, 6],實際會部署在 [6, 7]
"doc": "下棘刺了!", // 描述,選填。會顯示在介面上,沒有實際作用
"doc_color": "orange" // 描述文字的顏色,選填,預設灰色。會顯示在介面上,沒有實際作用。
},
// 舉例 1
{
"name": "任意正常群奶",
"location": [
5,
6
],
"direction": "右"
},
// 舉例 2
{
"name": "史爾特爾",
"location": [
4,
5
],
"direction": "左",
"doc": "你史爾特爾奶奶來啦!",
"doc_color": "red"
},
// 舉例 3
{
"type": "二倍速"
}
],
"minimum_required": "v4.0", // 最低要求 MAA 版本號,必填。
"doc": {
// 描述,選填。
"title": "低練度高成功率作業",
"title_color": "dark",
"details": "對練度要求很低balabala……", // 建議在這裡寫上你的名字!(作者名稱)、參考的影片攻略連結等
"details_color": "dark"
},
"difficulty": 0 // 作業對應難度,選填,預設值為 0。
// 0: 預設,未設定
// 1: 支援普通難度
// 2: 支援突襲難度
// 3: 支援普通、突襲難度
}
```
## 舉例
[OF-1](https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/master/resource/copilot/OF-1_credit_fight.json)