style: CRLF -> LF

This commit is contained in:
zzyyyl
2022-09-14 22:49:35 +08:00
parent 13a65adfdc
commit c911eeff65
2 changed files with 376 additions and 376 deletions

View File

@@ -1,240 +1,240 @@
# インテグレーション
## API
### `AsstAppendTask`
#### Prototype
```c++
TaskId ASSTAPI AsstAppendTask(AsstHandle handle, const char* type, const char* params);
```
#### Description
タスクの追加
#### Return Value
- `TaskId`
以下の構成で、タスクの追加に成功した場合のタスクID;
タスクの追加に失敗した場合は0。
#### Parameter Description
- `AsstHandle handle`
Instance handle
- `const char* type`
Task type
- `const char* params`
Task parameters in JSON
##### List of Task Types
- `StartUp`
Start-up
```jsonc
// 対応するタスクのパラメータ
{
"enable": bool, // このタスクを有効にするかどうか、オプション、デフォルトは true
"client_type": string, // クライアントバージョン, オプション, デフォルトは空白
// オプション: "Official" | "Bilibili"
"start_game_enabled": bool // クライアントを自動的に起動するかどうか, オプション, デフォルトはfalse
}
```
- `Fight`
Operation
```jsonc
// 対応するタスクのパラメータ
{
"enable": bool, // このタスクを有効にするかどうか、オプション、デフォルトは true
"stage": string, // ステージ名, オプション, デフォルトは 現在 / 最終ステージ。 動作中の編集はサポートされていません。
// メイン章のステージがサポートされています, 例 "1-7", "S3-2", など
// いくつかの特別ステージもサポートしています, 例 "CE-6", など.(C#の組み込み例をご参照ください)
"medicine": int, // 理性回復剤の最大使用数, オプション, デフォルトは 0
"stone": int, // 純正源石の最大使用数, オプション, デフォルトは 0
"times": int, // 最大周回数, オプション, デフォルトは無限
"drops": { // ドロップ数の指定, オプション, デフォルトは指定なし
"30011": int, // Key: item ID; value: number of items. キーは resource/item_index.json に記載されています
"30062": int // OR 組み合わせ
},
/* 項目はOR演算子で結合され、いずれかの条件を満たしたときにタスクが停止する。 */
"report_to_penguin": bool, // Pengiun Stats にデータをアップロードするかどうか, オプション, デフォルトは false
"penguin_id": string, // Penguin Stats ID, オプション, デフォルトは空白. `report_to_penguin` が `true`の時のみ使用可能.
"server": string, // サーバー, オプション, デフォルトは "CN", ドロップ認識とアップロードに影響します
// 選択オプション:"CN" | "US" | "JP" | "KR"
"client_type": string, // クライアントバージョン, オプション, デフォルトは空白. ゲームがクラッシュした後、再接続するために使用します. 空白の場合この機能を無効にします。
// オプション: "Official" | "Bilibili"
"DrGrandet": bool, // 純正源石を使用する際に理性を節約します, オプション, デフォルトは false. 純正源石の使用画面でしか機能しません
// 理性が1ポイント回復するまで、使用確認画面で待ち、すぐに純正源石を使用することができます。
}
```
- `Recruit`
公開求人
```jsonc
// 対応するタスクのパラメータ
{
"enable": bool, // このタスクを有効にするかどうか, オプション, デフォルトは true
"refresh": bool, // ★3 タグの場合更新, オプション, デフォルトは false
"select": [ // タグレベルのクリック, 必須
int,
...
],
"confirm": [ // 確認するタグのレベル, 必須. 計算用に空配列を設定することも可能.
int,
...
],
"times": int, // 採用回数, オプション, デフォルトは 0. 0 にセットすることで計算だけに使用可能.
"set_time": bool, // 時刻を9時間に設定するかどうか, `times` が 0 の時のみ設定可能, オプション, デフォルトは true
"expedite": bool, // 緊急招集票の使用, オプション, デフォルトは false
"expedite_times": int, // 緊急招集票の使用回数, `expedite` が `true` の場合のみ使用可能
// オプション, デフォルトでは `times` の限界まで使用します.
"skip_robot": bool, // ロボットタグが認識されたときにスキップするかどうか, オプション, デフォルトは skip.
"recruitment_time": { // タグレベルおよび設定時間(分), オプション, デフォルトは 540 (例. 9 時間)
"3": int,
"4": int,
...
},
"report_to_penguin": bool, // Pengiun Stats にデータをアップロードするかどうか, オプション, デフォルトは false
"penguin_id": string, // Penguin Stats ID, オプション, デフォルトは空白. `report_to_penguin` が `true`の時のみ使用可能.
"report_to_yituliu": bool, // YITULIU にデータをアップロードするかどうか, オプション, デフォルトは false
"yituliu_id": string, // YITULIU user id, オプション, デフォルトは空白. `report_to_yituliu` が `true`の時のみ使用可能.
}
```
- `Infrast`
基地シフト
```jsonc
{
"enable": bool, // タスクを有効にするかどうか, オプション, デフォルトは true
"mode": int, // シフトモード, 予約, オプション. 動作中に変更はできません.
"facility": [ // シフト対象設備, 必須. 動作中の編集はサポートされていません.
string, // 施設名: "Mfg" | "Trade" | "Power" | "Control" | "Reception" | "Office" | "Dorm"
...
],
"drones": string, // ドローンの使用, オプション, デフォルトは "_NotUse"
// "_NotUse"、"Money"、"SyntheticJade"、"CombatRecord"、"PureGold"、"OriginStone"、"Chip"
"threshold": float, // 宿舎に移動させる体力のしきい値 [0, 1.0], オプション, デフォルトは 0.3
"replenish": bool, // 源石の欠片を自動で補充する, オプション, デフォルトは false
}
```
- `Visit`
フレンドの基地訪問
```jsonc
// 対応するタスクのパラメータ
{
"enable": bool // このタスクを有効にするかどうか, オプション, デフォルトは true
}
```
- `Mall`
FPの回収と自動購入
`buy_first` にあるリストリストに従った順序でアイテムを購入した後, `blacklist` の内容を無視して左から右の順番で購入します.
```jsonc
// 対応するタスクのパラメータ
{
"enable": bool, // このタスクを有効にするかどうか, オプション, デフォルトは true
"shopping": bool, // 購買所から購入するかどうか, オプション, デフォルトは false. 動作中に変更はできません.
"buy_first": [ // アイテム購入の優先度, オプション. 動作中に変更はできません.
string, // アイテム名, 例. "招聘许可" (Recruitment Permit/求人票), "龙门币" (LMD/龍門弊), その他.
...
],
"blacklist": [ // ブラックリスト, オプション. 動作中に変更はできません.
string, // アイテム名, 例. "加急许可" (Expedited Plan/緊急招集票), "家具零件" (Furniture Part/家具パーツ), その他.
...
]
}
```
- `Award`
報酬の受け取り.
```jsonc
// 対応するタスクのパラメータ
{
"enable": bool // このタスクを有効にするかどうか, オプション, デフォルトは true
}
```
- `Roguelike`
統合戦略
```jsonc
{
"enable": bool, // このタスクを有効にするかどうか, オプション, デフォルトは true
"mode": int, // モード, オプション, デフォルトは 0
// 0 - キャンドル収集, 安定した戦略で続けられるだけ続ける
// 1 - 源石錐収集, 一階層で終了します
// 2 - どちらも行う, 源石錐は投資するまで
// 3 - クリアするまで, アグレッシブに行ける階層まで続ける
"starts_count": int, // 挑戦回数, オプション, デフォルトは INT_MAX
"investments_count": int,
// 投資数, オプション, デフォルトは INT_MAX
"stop_when_investment_full": bool,
// 投資額が一杯になったら動作停止, オプション, デフォルトは false
"squad": string, // "突撃戦術分隊" などの分隊指定, オプション, デフォルトは "デフォルト"
"roles": string, // 召集組合, オプション
"core_char": string // オペレーター名, オプション. レベルに応じて自動で選択します.
}
```
- `Copilot`
自動戦闘 開発中機能
```jsonc
{
"enable": bool, // このタスクを有効にするかどうか, オプション, デフォルトは true
"stage_name": string, // ステージ名, JSONの `stage_name` フィールドと同じです. 動作中に変更はできません.
"filename": string, // タスクのJSONのファイル名とパス, 絶対/相対 パスのサポート. 動作中に変更はできません.
"formation": bool // "quick build" を行うかどうか, オプション, デフォルトは false. 動作中に変更はできません.
}
```
自動操縦JSONの詳細については, [自動作戦API](3.3-自動作戦API.md)を参照してください
- `Depot`
倉庫アイテム認識
```jsonc
// 対応するタスクのパラメータ
{
"enable": bool // このタスクを有効にするかどうか, オプション, デフォルトは true
}
```
### `AsstSetTaskParams`
#### Prototype
```c++
bool ASSTAPI AsstSetTaskParams(AsstHandle handle, TaskId id, const char* params);
```
#### Description
Set task parameters
#### Return Value
- `bool`
パラメータが正常に設定されたかどうか.
#### Parameter Description
- `AsstHandle handle`
Instance handle
- `TaskId task`
Task ID, `AsstAppendTask` の値を返します
- `const char* params`
JSONのタスクパラメーター, `AsstAppendTask` と同じ
"動作中に変更はできません" と記載されていないフィールドはランタイム中に変更することができます. そうでなければ、タスクの実行中にこれらの変更は無視される.
# インテグレーション
## API
### `AsstAppendTask`
#### Prototype
```c++
TaskId ASSTAPI AsstAppendTask(AsstHandle handle, const char* type, const char* params);
```
#### Description
タスクの追加
#### Return Value
- `TaskId`
以下の構成で、タスクの追加に成功した場合のタスクID;
タスクの追加に失敗した場合は0。
#### Parameter Description
- `AsstHandle handle`
Instance handle
- `const char* type`
Task type
- `const char* params`
Task parameters in JSON
##### List of Task Types
- `StartUp`
Start-up
```jsonc
// 対応するタスクのパラメータ
{
"enable": bool, // このタスクを有効にするかどうか、オプション、デフォルトは true
"client_type": string, // クライアントバージョン, オプション, デフォルトは空白
// オプション: "Official" | "Bilibili"
"start_game_enabled": bool // クライアントを自動的に起動するかどうか, オプション, デフォルトはfalse
}
```
- `Fight`
Operation
```jsonc
// 対応するタスクのパラメータ
{
"enable": bool, // このタスクを有効にするかどうか、オプション、デフォルトは true
"stage": string, // ステージ名, オプション, デフォルトは 現在 / 最終ステージ。 動作中の編集はサポートされていません。
// メイン章のステージがサポートされています, 例 "1-7", "S3-2", など
// いくつかの特別ステージもサポートしています, 例 "CE-6", など.(C#の組み込み例をご参照ください)
"medicine": int, // 理性回復剤の最大使用数, オプション, デフォルトは 0
"stone": int, // 純正源石の最大使用数, オプション, デフォルトは 0
"times": int, // 最大周回数, オプション, デフォルトは無限
"drops": { // ドロップ数の指定, オプション, デフォルトは指定なし
"30011": int, // Key: item ID; value: number of items. キーは resource/item_index.json に記載されています
"30062": int // OR 組み合わせ
},
/* 項目はOR演算子で結合され、いずれかの条件を満たしたときにタスクが停止する。 */
"report_to_penguin": bool, // Pengiun Stats にデータをアップロードするかどうか, オプション, デフォルトは false
"penguin_id": string, // Penguin Stats ID, オプション, デフォルトは空白. `report_to_penguin` が `true`の時のみ使用可能.
"server": string, // サーバー, オプション, デフォルトは "CN", ドロップ認識とアップロードに影響します
// 選択オプション:"CN" | "US" | "JP" | "KR"
"client_type": string, // クライアントバージョン, オプション, デフォルトは空白. ゲームがクラッシュした後、再接続するために使用します. 空白の場合この機能を無効にします。
// オプション: "Official" | "Bilibili"
"DrGrandet": bool, // 純正源石を使用する際に理性を節約します, オプション, デフォルトは false. 純正源石の使用画面でしか機能しません
// 理性が1ポイント回復するまで、使用確認画面で待ち、すぐに純正源石を使用することができます。
}
```
- `Recruit`
公開求人
```jsonc
// 対応するタスクのパラメータ
{
"enable": bool, // このタスクを有効にするかどうか, オプション, デフォルトは true
"refresh": bool, // ★3 タグの場合更新, オプション, デフォルトは false
"select": [ // タグレベルのクリック, 必須
int,
...
],
"confirm": [ // 確認するタグのレベル, 必須. 計算用に空配列を設定することも可能.
int,
...
],
"times": int, // 採用回数, オプション, デフォルトは 0. 0 にセットすることで計算だけに使用可能.
"set_time": bool, // 時刻を9時間に設定するかどうか, `times` が 0 の時のみ設定可能, オプション, デフォルトは true
"expedite": bool, // 緊急招集票の使用, オプション, デフォルトは false
"expedite_times": int, // 緊急招集票の使用回数, `expedite` が `true` の場合のみ使用可能
// オプション, デフォルトでは `times` の限界まで使用します.
"skip_robot": bool, // ロボットタグが認識されたときにスキップするかどうか, オプション, デフォルトは skip.
"recruitment_time": { // タグレベルおよび設定時間(分), オプション, デフォルトは 540 (例. 9 時間)
"3": int,
"4": int,
...
},
"report_to_penguin": bool, // Pengiun Stats にデータをアップロードするかどうか, オプション, デフォルトは false
"penguin_id": string, // Penguin Stats ID, オプション, デフォルトは空白. `report_to_penguin` が `true`の時のみ使用可能.
"report_to_yituliu": bool, // YITULIU にデータをアップロードするかどうか, オプション, デフォルトは false
"yituliu_id": string, // YITULIU user id, オプション, デフォルトは空白. `report_to_yituliu` が `true`の時のみ使用可能.
}
```
- `Infrast`
基地シフト
```jsonc
{
"enable": bool, // タスクを有効にするかどうか, オプション, デフォルトは true
"mode": int, // シフトモード, 予約, オプション. 動作中に変更はできません.
"facility": [ // シフト対象設備, 必須. 動作中の編集はサポートされていません.
string, // 施設名: "Mfg" | "Trade" | "Power" | "Control" | "Reception" | "Office" | "Dorm"
...
],
"drones": string, // ドローンの使用, オプション, デフォルトは "_NotUse"
// "_NotUse"、"Money"、"SyntheticJade"、"CombatRecord"、"PureGold"、"OriginStone"、"Chip"
"threshold": float, // 宿舎に移動させる体力のしきい値 [0, 1.0], オプション, デフォルトは 0.3
"replenish": bool, // 源石の欠片を自動で補充する, オプション, デフォルトは false
}
```
- `Visit`
フレンドの基地訪問
```jsonc
// 対応するタスクのパラメータ
{
"enable": bool // このタスクを有効にするかどうか, オプション, デフォルトは true
}
```
- `Mall`
FPの回収と自動購入
`buy_first` にあるリストリストに従った順序でアイテムを購入した後, `blacklist` の内容を無視して左から右の順番で購入します.
```jsonc
// 対応するタスクのパラメータ
{
"enable": bool, // このタスクを有効にするかどうか, オプション, デフォルトは true
"shopping": bool, // 購買所から購入するかどうか, オプション, デフォルトは false. 動作中に変更はできません.
"buy_first": [ // アイテム購入の優先度, オプション. 動作中に変更はできません.
string, // アイテム名, 例. "招聘许可" (Recruitment Permit/求人票), "龙门币" (LMD/龍門弊), その他.
...
],
"blacklist": [ // ブラックリスト, オプション. 動作中に変更はできません.
string, // アイテム名, 例. "加急许可" (Expedited Plan/緊急招集票), "家具零件" (Furniture Part/家具パーツ), その他.
...
]
}
```
- `Award`
報酬の受け取り.
```jsonc
// 対応するタスクのパラメータ
{
"enable": bool // このタスクを有効にするかどうか, オプション, デフォルトは true
}
```
- `Roguelike`
統合戦略
```jsonc
{
"enable": bool, // このタスクを有効にするかどうか, オプション, デフォルトは true
"mode": int, // モード, オプション, デフォルトは 0
// 0 - キャンドル収集, 安定した戦略で続けられるだけ続ける
// 1 - 源石錐収集, 一階層で終了します
// 2 - どちらも行う, 源石錐は投資するまで
// 3 - クリアするまで, アグレッシブに行ける階層まで続ける
"starts_count": int, // 挑戦回数, オプション, デフォルトは INT_MAX
"investments_count": int,
// 投資数, オプション, デフォルトは INT_MAX
"stop_when_investment_full": bool,
// 投資額が一杯になったら動作停止, オプション, デフォルトは false
"squad": string, // "突撃戦術分隊" などの分隊指定, オプション, デフォルトは "デフォルト"
"roles": string, // 召集組合, オプション
"core_char": string // オペレーター名, オプション. レベルに応じて自動で選択します.
}
```
- `Copilot`
自動戦闘 開発中機能
```jsonc
{
"enable": bool, // このタスクを有効にするかどうか, オプション, デフォルトは true
"stage_name": string, // ステージ名, JSONの `stage_name` フィールドと同じです. 動作中に変更はできません.
"filename": string, // タスクのJSONのファイル名とパス, 絶対/相対 パスのサポート. 動作中に変更はできません.
"formation": bool // "quick build" を行うかどうか, オプション, デフォルトは false. 動作中に変更はできません.
}
```
自動操縦JSONの詳細については, [自動作戦API](3.3-自動作戦API.md)を参照してください
- `Depot`
倉庫アイテム認識
```jsonc
// 対応するタスクのパラメータ
{
"enable": bool // このタスクを有効にするかどうか, オプション, デフォルトは true
}
```
### `AsstSetTaskParams`
#### Prototype
```c++
bool ASSTAPI AsstSetTaskParams(AsstHandle handle, TaskId id, const char* params);
```
#### Description
Set task parameters
#### Return Value
- `bool`
パラメータが正常に設定されたかどうか.
#### Parameter Description
- `AsstHandle handle`
Instance handle
- `TaskId task`
Task ID, `AsstAppendTask` の値を返します
- `const char* params`
JSONのタスクパラメーター, `AsstAppendTask` と同じ
"動作中に変更はできません" と記載されていないフィールドはランタイム中に変更することができます. そうでなければ、タスクの実行中にこれらの変更は無視される.

View File

@@ -1,136 +1,136 @@
# Copilot Schema
`resource/copilot/*.json` の使用方法とフィールドの説明.
## Overview
```jsonc
{
"stage_name": "暴君", // ステージ名, 必須. CN版のステージ名, コード, ステージID, レベルID, 他. これらは全てサポート範囲です.
"opers": [ // オペーレーターリスト
{
"name": "棘刺", // オペーレーター名CN版準拠
"skill": 3, // スキルID と範囲 [1, 3], オプション, 1 がデフォルト
"skill_usage": 0, // スキルの使用, オプション, デフォルトは 0
// 0 - `パッシブ`
// 1 - 準備次第使用 (例 ソーンズ: デストレッツァ, テンニンカ: 支援指令β)
// 2 - 準備次第使用, 一回のみ(例 マウンテン: 猛虎の構え)
// 3 - 自動判定 (未実装)
// 0 は自動発動
"requirements": { // 要件, 予約フィールド, 未実装, オプション, デフォルトは空白
"elite": 2, // 昇進要件, オプション, デフォルトは 0
"level": 90, // レベル要件, オプション, デフォルトは 0
"skill_level": 10, // スキルレベル要件, オプション, デフォルトは 0
"module": 1, // モジュール要件, オプション, デフォルトは 0
"potentiality": 1 // 潜在要件, オプション, デフォルトは 0
}
},
],
"groups": [
{
"name": "任意正常群奶", // グループ名, 必須
// `name` フィールドと `deploy` が一致していればどのような名前でも構いません
"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"
// "部署" | "技能" | "撤退" | "二倍速" | "子弹时间" | "技能用法" | "打印" | "摆完挂机"
// 英語と中国語のみサポート
// "Deploy" はコストが補充されるまで待つ(タイムアウトしない限り)
// "Skill" はスキルの準備ができるまで待つ(タイムアウトしない限り)
// "SpeedUp" は切替式, 例 使用後は2倍速になり、再度使用すると通常速度に戻ります
// "BulletTime", 予約フィールド, 未実装, 任意のオペレータをクリックした後の1/5の速度です。他の操作を進めると通常の速度に戻ります
// "Output" は、ドキュメントの内容をプリントアウト(字幕などのため)
// "SkillDaemon" は、スキルの準備ができるとスキルを使用し、終了まで何もしない
// 以下の3つのフィールドの関係は AND, 例 &&
"kills": 0, // 必要なキル数に達するまで待機, オプション, デフォルトは 0
"cost_changes": 5, // 指定された量のコストが変更されるまで待機, オプション, デフォルトは 0
// アクションが始まってから計算することに注意(直前のアクションのコストに基づく)
// コストが2桁の場合、正確に認識されます。3桁のコストでは推奨しません。
"cooling": 2, // オペレーターの CD が指定数になるまで待つ, オプション, "ignore" の場合デフォルトは -1.
// TODO: Other conditions
// TODO: "condition_type": 0, // 条件集約型, オプション, デフォルトは 0
// // 0 - AND 1 - OR
"name": "棘刺", // オペレーター/グループ名, `type` が "Deploy" の場合必須, "Skill" か "Retreat" の場合はオプション
"location": [ 5, 5 ], // 配置位置
// `type` が "Deploy" の場合必須.
// `type` が "Skill" か "Retreat" の場合はオプション,
// "Skill": マップ内設備(灯台など)の使用での推奨, name ではなく location を指定してスキルを使用することを推奨します, 通常のオペレーターがスキルを使用する場合は name を使用するだけにしてください
// "Retreat" 複数の召喚ユニットがいる場合のみ推奨, name ではなく location で退却, 通常のオペレーターは単純に name で退却してください
"direction": "左", // 配置方向, `type` が "Deploy" の場合必須
// "Left" | "Right" | "Up" | "Down" | "None"
// "左" | "右" | "上" | "下" | "无"
// 英語と中国語のみサポート
"skill_usage": 1, // スキルの使用方法を上書き, `type` が "SkillUsage" の場合必須
// 例: テンニンカは設置時にスキルを使わず攻撃し、後で自動的にスキルを使う必要があります.
// 上記例の場合 1 に設定してください
"pre_delay": 0, // 事前遅延 msミリ秒, オプション, デフォルトは 0
"rear_delay": 0, // 事後遅延 msミリ秒, オプション, デフォルトは 0
// "timeout": 999999999, // 予約フィールド, 未実装
// タイムアウト時間 msミリ秒, `type` が "Deploy" | "Skill" の場合オプション, デフォルトは INT_MAX
// タイムアウト時に次のアクションを実行する
"doc": "下棘刺了!", // 説明文, オプション, UIの表示のみで効果はありません
"doc_color": "orange" // 説明文の色, オプション, UIの表示のみで効果はありません
},
// 例 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"
},
}
```
## 実例
[Sample](../resource/copilot/test.json)
[GA-EX8 Raid](../resource/copilot/GA-EX8-raid.json)
# Copilot Schema
`resource/copilot/*.json` の使用方法とフィールドの説明.
## Overview
```jsonc
{
"stage_name": "暴君", // ステージ名, 必須. CN版のステージ名, コード, ステージID, レベルID, 他. これらは全てサポート範囲です.
"opers": [ // オペーレーターリスト
{
"name": "棘刺", // オペーレーター名CN版準拠
"skill": 3, // スキルID と範囲 [1, 3], オプション, 1 がデフォルト
"skill_usage": 0, // スキルの使用, オプション, デフォルトは 0
// 0 - `パッシブ`
// 1 - 準備次第使用 (例 ソーンズ: デストレッツァ, テンニンカ: 支援指令β)
// 2 - 準備次第使用, 一回のみ(例 マウンテン: 猛虎の構え)
// 3 - 自動判定 (未実装)
// 0 は自動発動
"requirements": { // 要件, 予約フィールド, 未実装, オプション, デフォルトは空白
"elite": 2, // 昇進要件, オプション, デフォルトは 0
"level": 90, // レベル要件, オプション, デフォルトは 0
"skill_level": 10, // スキルレベル要件, オプション, デフォルトは 0
"module": 1, // モジュール要件, オプション, デフォルトは 0
"potentiality": 1 // 潜在要件, オプション, デフォルトは 0
}
},
],
"groups": [
{
"name": "任意正常群奶", // グループ名, 必須
// `name` フィールドと `deploy` が一致していればどのような名前でも構いません
"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"
// "部署" | "技能" | "撤退" | "二倍速" | "子弹时间" | "技能用法" | "打印" | "摆完挂机"
// 英語と中国語のみサポート
// "Deploy" はコストが補充されるまで待つ(タイムアウトしない限り)
// "Skill" はスキルの準備ができるまで待つ(タイムアウトしない限り)
// "SpeedUp" は切替式, 例 使用後は2倍速になり、再度使用すると通常速度に戻ります
// "BulletTime", 予約フィールド, 未実装, 任意のオペレータをクリックした後の1/5の速度です。他の操作を進めると通常の速度に戻ります
// "Output" は、ドキュメントの内容をプリントアウト(字幕などのため)
// "SkillDaemon" は、スキルの準備ができるとスキルを使用し、終了まで何もしない
// 以下の3つのフィールドの関係は AND, 例 &&
"kills": 0, // 必要なキル数に達するまで待機, オプション, デフォルトは 0
"cost_changes": 5, // 指定された量のコストが変更されるまで待機, オプション, デフォルトは 0
// アクションが始まってから計算することに注意(直前のアクションのコストに基づく)
// コストが2桁の場合、正確に認識されます。3桁のコストでは推奨しません。
"cooling": 2, // オペレーターの CD が指定数になるまで待つ, オプション, "ignore" の場合デフォルトは -1.
// TODO: Other conditions
// TODO: "condition_type": 0, // 条件集約型, オプション, デフォルトは 0
// // 0 - AND 1 - OR
"name": "棘刺", // オペレーター/グループ名, `type` が "Deploy" の場合必須, "Skill" か "Retreat" の場合はオプション
"location": [ 5, 5 ], // 配置位置
// `type` が "Deploy" の場合必須.
// `type` が "Skill" か "Retreat" の場合はオプション,
// "Skill": マップ内設備(灯台など)の使用での推奨, name ではなく location を指定してスキルを使用することを推奨します, 通常のオペレーターがスキルを使用する場合は name を使用するだけにしてください
// "Retreat" 複数の召喚ユニットがいる場合のみ推奨, name ではなく location で退却, 通常のオペレーターは単純に name で退却してください
"direction": "左", // 配置方向, `type` が "Deploy" の場合必須
// "Left" | "Right" | "Up" | "Down" | "None"
// "左" | "右" | "上" | "下" | "无"
// 英語と中国語のみサポート
"skill_usage": 1, // スキルの使用方法を上書き, `type` が "SkillUsage" の場合必須
// 例: テンニンカは設置時にスキルを使わず攻撃し、後で自動的にスキルを使う必要があります.
// 上記例の場合 1 に設定してください
"pre_delay": 0, // 事前遅延 msミリ秒, オプション, デフォルトは 0
"rear_delay": 0, // 事後遅延 msミリ秒, オプション, デフォルトは 0
// "timeout": 999999999, // 予約フィールド, 未実装
// タイムアウト時間 msミリ秒, `type` が "Deploy" | "Skill" の場合オプション, デフォルトは INT_MAX
// タイムアウト時に次のアクションを実行する
"doc": "下棘刺了!", // 説明文, オプション, UIの表示のみで効果はありません
"doc_color": "orange" // 説明文の色, オプション, UIの表示のみで効果はありません
},
// 例 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"
},
}
```
## 実例
[Sample](../resource/copilot/test.json)
[GA-EX8 Raid](../resource/copilot/GA-EX8-raid.json)