Merge pull request #1849 from wallsman/dev

docs: japanese text fixed and added
This commit is contained in:
zzyyyl
2022-09-16 13:09:28 +08:00
committed by GitHub
2 changed files with 687 additions and 177 deletions

View File

@@ -0,0 +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` と同じ
"動作中に変更はできません" と記載されていないフィールドはランタイム中に変更することができます. そうでなければ、タスクの実行中にこれらの変更は無視される.

View File

@@ -1,240 +1,510 @@
# インテグレーション
## コールバック図式
## API
### `AsstAppendTask`
#### Prototype
### Prototype
```c++
TaskId ASSTAPI AsstAppendTask(AsstHandle handle, const char* type, const char* params);
typedef void(ASST_CALL* AsstCallback)(int msg, const char* details, void* custom_arg);
```
#### Description
### 概要
タスクの追加
- `int msg`
The message type
#### Return Value
```c++
enum class AsstMsg
{
/* Global Info */
InternalError = 0, // Internal error
InitFailed, // Initialization failure
ConnectionInfo, // Connection info
AllTasksCompleted, // すべてのタスクが完了したかどうか
/* TaskChain Info */
TaskChainError = 10000, // 一連のタスク 実行/認識のエラー
TaskChainStart, // 一連のタスク開始
TaskChainCompleted, // 一連のタスク完了
TaskChainExtraInfo, // 一連のタスクの追加情報
/* SubTask Info */
SubTaskError = 20000, // サブタスク 実行/認識におけるエラー
SubTaskStart, // サブタスク 実行
SubTaskCompleted, // サブタスク 完了
SubTaskExtraInfo // サブタスクの追加情報
};
```
- `TaskId`
以下の構成で、タスクの追加に成功した場合のタスクID;
タスクの追加に失敗した場合は0。
- `const char* details`
メッセージの詳細, JSON. 詳細: [Field Description](#field-description)
- `void* custom_arg`
呼び出し元のカスタム引数には、 `AsstCreateEx` インターフェースの `custom_arg` 引数が渡される。C ライクな言語では、`this` ポインタを一緒に渡すことができる。
#### Parameter Description
### Field Description
- `AsstHandle handle`
Instance handle
- `const char* type`
Task type
- `const char* params`
Task parameters in JSON
#### InternalError
##### List of Task Types
Todo
- `StartUp`
Start-up
#### InitFailed
```jsonc
// 対応するタスクのパラメータ
{
"enable": bool, // このタスクを有効にするかどうか、オプション、デフォルトは true
"client_type": string, // クライアントバージョン, オプション, デフォルトは空白
// オプション: "Official" | "Bilibili"
"start_game_enabled": bool // クライアントを自動的に起動するかどうか, オプション, デフォルトはfalse
"what": string, // Error タイプ
"why": string, // Error 理由
"details": object // Error 詳細
}
```
- `Fight`
Operation
### ConnectionInfo
```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ポイント回復するまで、使用確認画面で待ち、すぐに純正源石を使用することができます。
"what": string, // Info タイプ
"why": string, // Info 理由
"uuid": string, // UUID (接続に失敗した場合は空白)
"details": {
"adb": string, // AsstConnect インターフェースの adb_path 引数
"address": string, // AsstConnect インターフェースの address 引数
"config": string // AsstConnect インターフェースの config 引数
}
}
```
- `Recruit`
公開求人
#### 多用される `What` フィルドの値
- `ConnectFailed`
接続失敗.
- `Connected`
接続。現段階では `uuid` フィールドが空であることに注意してください (次のステップで取得されます)
- `UuidGot`
UUID の取得.
- `UnsupportedResolution`
この解像度はサポートされていません.
- `ResolutionError`
解像度を取得できない.
- `Reconnecting`
切断 (adb/emulator クラッシュ), 再接続開始
- `Reconnected`
切断 (adb/emulator クラッシュ), 再接続成功
- `Disconnect`
切断 (adb/emulator クラッシュ), 再接続失敗
- `ScreencapFailed`
画面取得失敗 (adb/emulator クラッシュ), 再接続失敗
#### AllTasksCompleted
```jsonc
// 対応するタスクのパラメータ
{
"enable": bool, // このタスクを有効にするかどうか, オプション, デフォルトは true
"refresh": bool, // ★3 タグの場合更新, オプション, デフォルトは false
"select": [ // タグレベルのクリック, 必須
"taskchain": string, // 最後の一連のタスク
"uuid": string // UUID
"finished_tasks": [ // 最終動作タスクの ID
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
}
```
##### 多用される `taskchain` フィールドの値
- `StartUp`
ウェイクアップ.
- `Fight`
戦闘.
- `Mall`
購買所.
- `Recruit`
自動公開求人.
- `RecruitCalc`
公開求人結果取得.
- `Infrast`
基地施設.
- `Roguelike`
統合戦略
- `Debug`
デバッグ.
#### Information Related to TaskChain
```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 // オペレーター名, オプション. レベルに応じて自動で選択します.
"taskchain": string, // 現在の一連タスク
"taskid": int, // 現在のタスク ID
"uuid": string // UUID
}
```
- `Copilot`
自動戦闘 開発中機能
#### TaskChainExtraInfo
Todo
#### Information Related to SubTask
```jsonc
{
"enable": bool, // このタスクを有効にするかどうか, オプション, デフォルトは true
"stage_name": string, // ステージ名, JSONの `stage_name` フィールドと同じです. 動作中に変更はできません.
"filename": string, // タスクのJSONのファイル名とパス, 絶対/相対 パスのサポート. 動作中に変更はできません.
"formation": bool // "quick build" を行うかどうか, オプション, デフォルトは false. 動作中に変更はできません.
"subtask": string, // サブタスク
"class": string, // サブタスククラス
"taskchain": string, // 現在の一連のタスク
"taskid": int, // 現在のタスク ID
"details": object, // 詳細
"uuid": string // UUID
}
```
自動操縦JSONの詳細については, [自動作戦API](3.3-自動作戦API.md)を参照してください
##### 多用される `subtask` フィールドの値
- `Depot`
倉庫アイテム認識
- `ProcessTask`
```jsonc
// 対応する詳細フィールドの例
{
"task": "StartButton2", // タスク名
"action": 512,
"exec_times": 1, // 実行回数
"max_times": 999, // 最大実行回数
"algorithm": 0
}
```
- Todo Other
###### 多用される `task` フィールドの値
- `StartButton2`
開始.
- `MedicineConfirm`
理性回復剤使用確認.
- `StoneConfirm`
純正源石使用確認.
- `RecruitRefreshConfirm`
公開求人リストの更新確認.
- `RecruitConfirm`
公開求人の決定.
- `RecruitNowConfirm`
緊急招集票の使用確認.
- `ReportToPenguinStats`
ペンギン急便への報告.
- `ReportToYituliu`
Yituliu へビッグデータの報告.
- `InfrastDormDoubleConfirmButton`
基地施設での二重確認は、他のオペレーターとの競合がある場合のみ発生します.
- `Roguelike1Start`
統合戦略: 開始.
- `Roguelike1StageTraderInvestConfirm`
統合戦略: 源石錐とアイテム交換.
- `Roguelike1StageTraderInvestSystemFull`
統合戦略: 投資満額.
- `Roguelike1ExitThenAbandon`
統合戦略: 終了確認.
- `Roguelike1MissionCompletedFlag`
統合戦略: ミッション完了.
- `Roguelike1MissionFailedFlag`
統合戦略: ミッション失敗.
- `Roguelike1StageSafeHouseEnter`
統合戦略: 怪しい旅商人
- `Roguelike1StageSafeHouseEnter`
統合戦略: 安全な片隅
- `Roguelike1StageEncounterEnter`
統合戦略: 思わぬ遭遇
- `Roguelike1StageCambatDpsEnter`
統合戦略: 作戦
- `Roguelike1StageEmergencyDps`
統合戦略: 緊急作戦
- `Roguelike1StageDreadfulFoe`
統合戦略: 悪路凶敵
- `StartGameTask`
クライアントの起動に失敗 (client_type と設定ファイルの互換性なし)
- Todo Other
#### SubTaskExtraInfo
```jsonc
// 対応するタスクのパラメータ
{
"enable": bool // のタスクを有効にするかどうか, オプション, デフォルトは true
"taskchain": string, // 一連のタスク
"class": string, // サブタスクのクラス
"what": string, // Information タイプ
"details": object, // Information 詳細
"uuid": string, // UUID
}
```
### `AsstSetTaskParams`
##### 多用される `what` と `details` フィールドの値
#### Prototype
- `StageDrops`
ステージドロップインフォメーション
```c++
bool ASSTAPI AsstSetTaskParams(AsstHandle handle, TaskId id, const char* params);
```
```jsonc
// 対応する詳細フィールドの例
{
"drops": [ // dropped items
{
"itemId": "3301",
"quantity": 2,
"itemName": "技巧概要·卷1" // Skill Summary - 1 // アーツ学1
},
{
"itemId": "3302",
"quantity": 1,
"itemName": "技巧概要·卷2" // Skill Summary - 2 // アーツ学2
},
{
"itemId": "3303",
"quantity": 2,
"itemName": "技巧概要·卷3" // Skill Summary - 3 // アーツ学3
}
],
"stage": { // レベル情報
"stageCode": "CA-5",
"stageId": "wk_fly_5"
},
"stars": 3, // ステージクリア評価
"stats": [ // ドロップの統計
{
"itemId": "3301",
"itemName": "技巧概要·卷1", // アーツ学1
"quantity": 4
},
{
"itemId": "3302",
"itemName": "技巧概要·卷2", // アーツ学2
"quantity": 3
},
{
"itemId": "3303",
"itemName": "技巧概要·卷3", // アーツ学3
"quantity": 4
}
]
}
```
#### Description
- `RecruitTagsDetected`
採用タグの検出
Set task parameters
```jsonc
// 対応するフィールドの詳細
{
"tags": [
"费用回复", // DP-Recovery // COST回復
"防护", // Defense // 防御
"先锋干员", // Vanguard // 先鋒タイプ
"辅助干员", // Support // 補助タイプ
"近战位" // Melee // 近接攻撃
]
}
```
#### Return Value
- `RecruitSpecialTag`
特別な採用タグの検出
- `bool`
パラメータが正常に設定されたかどうか.
```jsonc
// 対応する詳細フィールドの例
{
"tag": "高级资深干员" // Senior operator // 上級エリート
}
```
#### Parameter Description
- `RecruitResult`
公開求人結果
- `AsstHandle handle`
Instance handle
- `TaskId task`
Task ID, `AsstAppendTask` の値を返します
- `const char* params`
JSONのタスクパラメーター, `AsstAppendTask` と同じ
"動作中に変更はできません" と記載されていないフィールドはランタイム中に変更することができます. そうでなければ、タスクの実行中にこれらの変更は無視される.
```jsonc
// 対応する詳細フィールドの例
{
"tags": [ // 全てのタグ, 5つまで
"削弱",
"减速",
"术师干员",
"辅助干员",
"近战位"
],
"level": 4, // レアリティのトータル
"result": [
{
"tags": [
"削弱" // Debuff // 弱化
],
"level": 4, // レアリティに対応するタグ
"opers": [
{
"name": "初雪", // Pramanix // プラマニクス
"level": 5 // レアリティに対応するオペレーター
},
{
"name": "陨星", // Meteorite // メテオリーテ
"level": 5
},
{
"name": "槐琥", // Waai Fu // ワイフー
"level": 5
},
{
"name": "夜烟", // Haze // ヘイズ
"level": 4
},
{
"name": "流星", // Meteor // メテオ
"level": 4
}
]
},
{
"tags": [
"减速", // Slow // 原則
"术师干员" // Caster // 術師タイプ
],
"level": 4,
"opers": [
{
"name": "夜魔", // Nightmare // ナイトメア
"level": 5
},
{
"name": "格雷伊", // Greyy // グレイ
"level": 4
}
]
},
{
"tags": [
"削弱", // Debuff // 弱化
"术师干员" // Caster // 術師タイプ
],
"level": 4,
"opers": [
{
"name": "夜烟", // Haze // ヘイズ
"level": 4
}
]
}
]
}
```
- `RecruitTagsRefreshed`
公開求人タグの更新
```jsonc
// 対応する詳細フィールドの例
{
"count": 1, // スロットが更新された回数
"refresh_limit": 3 // 更新最大回数
}
```
- `RecruitTagsSelected`
公開求人タグの選択
```jsonc
// 対応する詳細フィールドの例
{
"tags": [
"减速", // Slow // 原則
"术师干员" // Caster // 術師タイプ
]
}
```
- `RecruitSlotCompleted`
公開求人スロットの完了
- `RecruitError`
リクルート認識時のエラー
- `EnterFacility`
施設へ入る
```jsonc
// 対応する詳細フィールドの例
{
"facility": "Mfg", // 施設名
"index": 0 // 施設 ID
}
```
- `NotEnoughStaff`
オペレーター不足
```jsonc
// 対応する詳細フィールドの例
{
"facility": "Mfg", // 施設名
"index": 0 // 施設 ID
}
```
- `ProductOfFacility`
施設の生産
```jsonc
// 対応する詳細フィールドの例
{
"product": "Money", // 生産物
"facility": "Mfg", // 施設名
"index": 0 // 施設 ID
}
```
- `StageInfo`
自動戦闘ステージの情報
```jsonc
// 対応する詳細フィールドの例
{
"name": string // 施設名
}
```
- `StageInfoError`
自動戦闘ステージの情報エラー
- `PenguinId`
Penguin ID
```jsonc
// 対応する詳細フィールドの例
{
"id": string
}
```
- `DepotInfo`
倉庫のアイテムの認識結果
```jsonc
// 対応する詳細フィールドの例
"done": bool, // 認識が完了したかどうかfalse はまだ進行中かどうか(処理中のデータ)
"arkplanner": { // https://penguin-stats.cn/planner
"object": {
"items": [
{
"id": "2004",
"have": 4,
"name": "高级作战记录"
},
{
"id": "mod_unlock_token",
"have": 25,
"name": "模组数据块"
},
{
"id": "2003",
"have": 20,
"name": "中级作战记录"
}
],
"@type": "@penguin-statistics/depot"
},
"data": "{\"@type\":\"@penguin-statistics/depot\",\"items\":[{\"id\":\"2004\",\"have\":4,\"name\":\"高级作战记录\"},{\"id\":\"mod_unlock_token\",\"have\":25,\"name\":\"模组数据块\"},{\"id\":\"2003\",\"have\":20,\"name\":\"中级作战记录\"}]}"
},
"lolicon": { // https://arkn.lolicon.app/#/material
"object": {
"2004" : 4,
"mod_unlock_token": 25,
"2003": 20
},
"data": "{\"2003\":20,\"2004\": 4,\"mod_unlock_token\": 25}"
}
// 現在は ArkPlanner と Lolicon 形式のみ対応、今後対応するサイトが増える可能性あり
```
- `UnsupportedLevel`
サポートされていないレベル