From cf1ce8dc22bef338410ee1293eefead4c366d2e6 Mon Sep 17 00:00:00 2001 From: MistEO Date: Mon, 12 Dec 2022 23:33:02 +0800 Subject: [PATCH] =?UTF-8?q?revert:=20=E5=9B=9E=E6=BB=9AcharOCR?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../resource/PaddleCharOCR/det/version.txt | 1 + 3rdparty/resource/PaddleCharOCR/keys.txt | 95 + .../resource/PaddleCharOCR/rec/version.txt | 1 + resource/tasks.json | 18272 ++++++++-------- src/MaaCore/Common/AsstTypes.h | 1 + src/MaaCore/Config/Miscellaneous/OcrPack.h | 5 + src/MaaCore/Config/ResourceLoader.cpp | 2 +- src/MaaCore/Config/TaskData.cpp | 2 + .../Task/Fight/DrGrandetTaskPlugin.cpp | 8 +- src/MaaCore/Vision/OcrImageAnalyzer.cpp | 26 +- src/MaaCore/Vision/OcrImageAnalyzer.h | 2 + .../StageDropsImageAnalyzer.cpp | 19 +- .../StageDropsImageAnalyzer.h | 4 +- 13 files changed, 9298 insertions(+), 9140 deletions(-) create mode 100644 3rdparty/resource/PaddleCharOCR/det/version.txt create mode 100644 3rdparty/resource/PaddleCharOCR/keys.txt create mode 100644 3rdparty/resource/PaddleCharOCR/rec/version.txt rename src/MaaCore/Vision/{Miscellaneous => }/StageDropsImageAnalyzer.cpp (96%) rename src/MaaCore/Vision/{Miscellaneous => }/StageDropsImageAnalyzer.h (94%) diff --git a/3rdparty/resource/PaddleCharOCR/det/version.txt b/3rdparty/resource/PaddleCharOCR/det/version.txt new file mode 100644 index 0000000000..89a056fb9c --- /dev/null +++ b/3rdparty/resource/PaddleCharOCR/det/version.txt @@ -0,0 +1 @@ +en_PP-OCRv3_det_infer diff --git a/3rdparty/resource/PaddleCharOCR/keys.txt b/3rdparty/resource/PaddleCharOCR/keys.txt new file mode 100644 index 0000000000..7677d31b9d --- /dev/null +++ b/3rdparty/resource/PaddleCharOCR/keys.txt @@ -0,0 +1,95 @@ +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +: +; +< += +> +? +@ +A +B +C +D +E +F +G +H +I +J +K +L +M +N +O +P +Q +R +S +T +U +V +W +X +Y +Z +[ +\ +] +^ +_ +` +a +b +c +d +e +f +g +h +i +j +k +l +m +n +o +p +q +r +s +t +u +v +w +x +y +z +{ +| +} +~ +! +" +# +$ +% +& +' +( +) +* ++ +, +- +. +/ + diff --git a/3rdparty/resource/PaddleCharOCR/rec/version.txt b/3rdparty/resource/PaddleCharOCR/rec/version.txt new file mode 100644 index 0000000000..5ef569e1f8 --- /dev/null +++ b/3rdparty/resource/PaddleCharOCR/rec/version.txt @@ -0,0 +1 @@ +en_PP-OCRv3_rec_infer diff --git a/resource/tasks.json b/resource/tasks.json index 59d4cd5a14..bb6102f590 100644 --- a/resource/tasks.json +++ b/resource/tasks.json @@ -1,9120 +1,9154 @@ { - "SlowlySwipeToTheLeft": { - "algorithm": "JustReturn", - "action": "Swipe", - "postDelay": 200, - "specificRect": [ - 300, - 310, - 100, - 100 - ], - "specificRect_Doc": "滑动起点", - "rectMove": [ - 880, - 310, - 100, - 100 - ], - "rectMove_Doc": "滑动终点", - "specialParams": [ - 200, - 1, - 2, - 0 - ], - "specialParams_Doc": [ - "滑动 duration", - "额外滑动?", - "slope in (zero means smooth, 1 means linear)", - "slope out" - ], - "next": [ - "#next" - ], - "maxTimes": 50 - }, - "SlowlySwipeToTheRight": { - "algorithm": "JustReturn", - "action": "Swipe", - "postDelay": 200, - "specificRect": [ - 880, - 310, - 100, - 100 - ], - "rectMove": [ - 300, - 310, - 100, - 100 - ], - "specialParams": [ - 200, - 1, - 2, - 0 - ], - "next": [ - "#next" - ], - "maxTimes": 50 - }, - "SwipeToTheLeft": { - "algorithm": "JustReturn", - "action": "Swipe", - "postDelay": 100, - "specificRect": [ - 100, - 310, - 100, - 100 - ], - "rectMove": [ - 1080, - 310, - 100, - 100 - ], - "specialParams": [ - 150, - 0, - 1, - 1 - ], - "next": [ - "#next" - ], - "maxTimes": 20 - }, - "SwipeToTheRight": { - "algorithm": "JustReturn", - "action": "Swipe", - "postDelay": 100, - "specificRect": [ - 1080, - 310, - 100, - 100 - ], - "rectMove": [ - 100, - 310, - 200, - 100 - ], - "specialParams": [ - 150, - 0, - 1, - 1 - ], - "next": [ - "#next" - ], - "maxTimes": 20 - }, - "StageTheme": { - "action": "ClickSelf", - "roi": [ - 200, - 640, - 300, - 60 - ], - "next": [ - "#next" - ] - }, - "ClickChapter": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "text": [], - "roi": [ - 142, - 43, - 210, - 274 - ], - "next": [ - "#back", - "Stop" - ] - }, - "ClickChapter1": { - "baseTask": "ClickChapter", - "text": [ - "觉醒" - ] - }, - "ClickChapter2": { - "baseTask": "ClickChapter", - "text": [ - "幻灭" - ] - }, - "ClickChapter3": { - "baseTask": "ClickChapter", - "text": [ - "残阳" - ] - }, - "ToChapter1": { - "algorithm": "JustReturn", - "next": [ - "ClickChapter1@ClickChapter2@ClickChapter3", - "ClickChapter1@ClickChapter2", - "ClickChapter1" - ] - }, - "ToChapter2": { - "algorithm": "JustReturn", - "next": [ - "ClickChapter2@ClickChapter3", - "ClickChapter2" - ] - }, - "ToChapter3": { - "algorithm": "JustReturn", - "next": [ - "ClickChapter3" - ] - }, - "EnterEpisode": { - "Doc": "base_task", - "algorithm": "OcrDetect", - "action": "ClickRect", - "text": [], - "ocrReplace": [ - [ - " ", - "" - ], - [ - "EPIS0DE", - "EPISODE" - ] - ], - "roi": [ - 16, - 219, - 409, - 151 - ], - "specificRect": [ - 787, - 281, - 154, - 154 - ], - "next": [ - "#self", - "Stop" - ] - }, - "00@EnterEpisode": { - "text": [ - "00", - "OO", - "O0", - "0O" - ] - }, - "01@EnterEpisode": { - "text": [ - "EPISODE01" - ] - }, - "02@EnterEpisode": { - "text": [ - "EPISODE02" - ] - }, - "03@EnterEpisode": { - "text": [ - "EPISODE03" - ] - }, - "04@EnterEpisode": { - "text": [ - "EPISODE04" - ] - }, - "05@EnterEpisode": { - "text": [ - "EPISODE05" - ] - }, - "06@EnterEpisode": { - "text": [ - "EPISODE06" - ] - }, - "07@EnterEpisode": { - "text": [ - "EPISODE07" - ] - }, - "08@EnterEpisode": { - "text": [ - "EPISODE08" - ] - }, - "09@EnterEpisode": { - "text": [ - "EPISODE09" - ] - }, - "10@EnterEpisode": { - "text": [ - "EPISODE10" - ] - }, - "11@EnterEpisode": { - "text": [ - "EPISODE11" - ] - }, - "LevelOfDifficulty": { - "Doc": "base_task", - "algorithm": "OcrDetect", - "action": "ClickSelf", - "text": [ - "环境", - "PRTS" - ], - "roi": [ - 26, - 565, - 302, - 155 - ], - "sub": [ - "EnterChooseLevelOfDifficulty" - ] - }, - "EnterChooseLevelOfDifficulty": { - "action": "ClickSelf", - "roi": [ - 0, - 598, - 131, - 122 - ] - }, - "ChapterDifficultyHard": { - "baseTask": "LevelOfDifficulty", - "next": [ - "EnterChapterDifficultyHard", - "Return" - ] - }, - "ChapterDifficultyNormal": { - "baseTask": "LevelOfDifficulty", - "next": [ - "EnterChapterDifficultyNormal", - "Return" - ] - }, - "EnterChapterDifficultyHard": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "text": [ - "进入作战" - ], - "roi": [ - 861, - 570, - 330, - 145 - ] - }, - "EnterChapterDifficultyNormal": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "text": [ - "进入作战" - ], - "roi": [ - 473, - 572, - 329, - 144 - ] - }, - "SwipeLeftToEpisode": { - "Doc": "base_task", - "algorithm": "OcrDetect", - "action": "Swipe", - "text": [], - "ocrReplace": [ - [ - " ", - "" - ], - [ - "EPIS0DE", - "EPISODE" - ] - ], - "roi": [ - 16, - 219, - 409, - 151 - ], - "specificRect": [ - 790, - 310, - 10, - 10 - ], - "rectMove": [ - 1200, - 310, - 10, - 10 - ], - "specialParams": [ - 200, - 0, - 2, - 0 - ], - "maxTimes": 20, - "next": [ - "EnterEpisode", - "#self" - ], - "postDelay": 500 - }, - "11@SwipeLeftToEpisode": { - "text": [ - "EPISODE12", - "EPISODE13" - ] - }, - "10@SwipeLeftToEpisode": { - "text": [ - "EPISODE11", - "EPISODE12", - "EPISODE13" - ] - }, - "09@SwipeLeftToEpisode": { - "text": [ - "EPISODE10", - "EPISODE11", - "EPISODE12", - "EPISODE13" - ] - }, - "08@SwipeLeftToEpisode": { - "text": [ - "_SKIP_" - ] - }, - "07@SwipeLeftToEpisode": { - "text": [ - "EPISODE08" - ] - }, - "06@SwipeLeftToEpisode": { - "text": [ - "EPISODE07", - "EPISODE08" - ] - }, - "05@SwipeLeftToEpisode": { - "text": [ - "EPISODE06", - "EPISODE07", - "EPISODE08" - ] - }, - "04@SwipeLeftToEpisode": { - "text": [ - "EPISODE05", - "EPISODE06", - "EPISODE07", - "EPISODE08" - ] - }, - "03@SwipeLeftToEpisode": { - "text": [ - "_SKIP_" - ] - }, - "02@SwipeLeftToEpisode": { - "text": [ - "EPISODE03" - ] - }, - "01@SwipeLeftToEpisode": { - "text": [ - "EPISODE02", - "EPISODE03" - ] - }, - "00@SwipeLeftToEpisode": { - "text": [ - "EPISODE01", - "EPISODE02", - "EPISODE03" - ] - }, - "StageNavigationBegin": { - "algorithm": "JustReturn", - "next": [ - "ClickStageName", - "FullStageNavigation" - ] - }, - "FullStageNavigation": { - "Doc": "右滑五次,然后检测关卡并左滑", - "Doc2": "在一次关卡导航中,仅swipe五次,其余情况进exceededNext", - "baseTask": "ChapterSwipeToTheRight", - "exceededNext": [ - "ClickStageName", - "StageNavigationSlowlySwipeLeft" - ] - }, - "ClickStageName": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "fullMatch": true, - "cache": false, - "text": [], - "next": [ - "ClickedCorrectStageOrSwipe", - "#self" - ] - }, - "StageNavigationSlowlySwipeLeft": { - "baseTask": "ChapterSlowlySwipeToTheLeft", - "next": [ - "FullStageNavigation" - ], - "exceededNext": [ - "Home@ReturnTo" - ], - "maxTimes": 20 - }, - "ClickedCorrectStageOrSwipe": { - "baseTask": "StartButton1", - "action": "DoNothing", - "next": [ - "ClickedCorrectStage", - "FullStageNavigation" - ] - }, - "ClickedCorrectStage": { - "algorithm": "OcrDetect", - "action": "DoNothing", - "fullMatch": true, - "cache": false, - "text": [], - "ocrReplace": [ - [ - "OPERATION", - "" - ], - [ - " ", - "" - ] - ], - "roi": [ - 845, - 72, - 170, - 50 - ] - }, - "Episode": { - "Doc": "base_task", - "algorithm": "JustReturn", - "next": [ - "SwipeLeftToEpisode", - "EnterEpisode" - ] - }, - "Episode0": { - "baseTask": "00@Episode", - "sub": [ - "ToChapter1@StageTheme" - ] - }, - "Episode1": { - "baseTask": "01@Episode", - "sub": [ - "ToChapter1@StageTheme" - ] - }, - "Episode2": { - "baseTask": "02@Episode", - "sub": [ - "ToChapter1@StageTheme" - ] - }, - "Episode3": { - "baseTask": "03@Episode", - "sub": [ - "ToChapter1@StageTheme" - ] - }, - "Episode4": { - "baseTask": "04@Episode", - "sub": [ - "ToChapter2@StageTheme" - ] - }, - "Episode5": { - "baseTask": "05@Episode", - "sub": [ - "ToChapter2@StageTheme" - ] - }, - "Episode6": { - "baseTask": "06@Episode", - "sub": [ - "ToChapter2@StageTheme" - ] - }, - "Episode7": { - "baseTask": "07@Episode", - "sub": [ - "ToChapter2@StageTheme" - ] - }, - "Episode8": { - "baseTask": "08@Episode", - "sub": [ - "ToChapter2@StageTheme" - ] - }, - "Episode9": { - "baseTask": "09@Episode", - "sub": [ - "ToChapter3@StageTheme" - ] - }, - "Episode10": { - "baseTask": "10@Episode", - "sub": [ - "ToChapter3@StageTheme" - ] - }, - "Episode11": { - "baseTask": "11@Episode", - "sub": [ - "ToChapter3@StageTheme" - ] - }, - "1-7": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "Episode1" - ], - "next": [ - "Stage1-7", - "SwipeLeftToStage1-7", - "SwipeRightToStage1-7" - ] - }, - "ChapterSlowlySwipeToTheLeft": { - "Doc": "在上面一点滑避免点到关卡划不动", - "baseTask": "SlowlySwipeToTheLeft", - "specificRect": [ - 200, - 100, - 20, - 20 - ], - "rectMove": [ - 1000, - 100, - 20, - 20 - ] - }, - "ChapterSlowlySwipeToTheRight": { - "baseTask": "SlowlySwipeToTheRight", - "specificRect": [ - 900, - 100, - 20, - 20 - ], - "rectMove": [ - 300, - 100, - 20, - 20 - ] - }, - "ChapterSwipeToTheLeft": { - "Doc": "滑动到最左", - "baseTask": "ChapterSlowlySwipeToTheLeft", - "specialParams": [ - 150, - 0, - 0.5 - ], - "next": [ - "#self" - ], - "maxTimes": 5 - }, - "ChapterSwipeToTheRight": { - "Doc": "滑动到最右", - "baseTask": "ChapterSlowlySwipeToTheRight", - "specialParams": [ - 150, - 0, - 0.5 - ], - "next": [ - "#self" - ], - "maxTimes": 5 - }, - "SwipeToStage": { - "Doc": "活动导航左滑找关", - "baseTask": "ChapterSlowlySwipeToTheLeft", - "specialParams": [ - 150, - 1 - ], - "next": [ - "#next" - ] - }, - "SwipeLeftToStage1-7": { - "algorithm": "OcrDetect", - "baseTask": "ChapterSlowlySwipeToTheLeft", - "fullMatch": true, - "text": [ - "1-8", - "TR-10", - "1-9", - "1-10", - "1-11", - "1-12" - ], - "cache": false, - "roi": [ - 0, - 120, - 1080, - 480 - ], - "next": [ - "Stage1-7", - "SwipeLeftToStage1-7", - "SwipeRightToStage1-7" - ] - }, - "SwipeRightToStage1-7": { - "algorithm": "OcrDetect", - "baseTask": "ChapterSlowlySwipeToTheRight", - "fullMatch": true, - "text": [ - "1-1", - "1-2", - "1-3", - "1-4", - "1-5", - "TR-8", - "1-6", - "TR-9" - ], - "cache": false, - "roi": [ - 0, - 120, - 1080, - 480 - ], - "next": [ - "Stage1-7", - "SwipeRightToStage1-7", - "SwipeLeftToStage1-7" - ] - }, - "Stage1-7": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "text": [ - "1-7" - ], - "cache": false, - "roi": [ - 0, - 190, - 1080, - 60 - ] - }, - "StageEpisode": { - "action": "ClickSelf", - "roi": [ - 487, - 600, - 143, - 120 - ] - }, - "IS-10": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "IS-Open" - ], - "next": [ - "StageIS-10", - "IS-10@SwipeToStageIS" - ] - }, - "IS-9": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "IS-Open" - ], - "next": [ - "StageIS-9", - "IS-9@SwipeToStageIS" - ] - }, - "IS-8": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "IS-Open" - ], - "next": [ - "StageIS-8", - "IS-8@SwipeToStageIS" - ] - }, - "IS-Open": { - "action": "ClickSelf", - "roi": [ - 476, - 0, - 502, - 720 - ], - "next": [ - "EnterChapterIS" - ] - }, - "EnterChapterIS": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "沃尔西尼" - ], - "roi": [ - 1033, - 412, - 208, - 134 - ], - "postDelay": 4000, - "next": [ - "EnterChapterIS", - "EnterChapterIS2", - "EnterStageIS" - ] - }, - "EnterChapterIS2": { - "action": "ClickSelf", - "roi": [ - 1146, - 587, - 134, - 133 - ], - "next": [ - "EnterChapterIS2", - "EnterStageIS" - ] - }, - "EnterStageIS": { - "action": "ClickSelf", - "roi": [ - 1142, - 314, - 138, - 135 - ] - }, - "SwipeToStageIS": { - "Doc": "IS关特殊的上下滑动", - "algorithm": "JustReturn", - "action": "Swipe", - "specificRect": [ - 98, - 469, - 100, - 100 - ], - "rectMove": [ - 145, - 129, - 100, - 100 - ], - "next": [ - "#next" - ] - }, - "StageIS-10": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "IS-10" - ], - "roi": [ - 47, - 42, - 222, - 640 - ] - }, - "StageIS-9": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "IS-9" - ], - "roi": [ - 47, - 42, - 222, - 640 - ] - }, - "StageIS-8": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "IS-8" - ], - "roi": [ - 47, - 42, - 222, - 640 - ] - }, - "NL-10": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "NL-Open" - ], - "next": [ - "StageNL-10", - "NL-10@SwipeToStage" - ] - }, - "NL-9": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "NL-Open" - ], - "next": [ - "StageNL-9", - "NL-9@SwipeToStage" - ] - }, - "NL-8": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "NL-Open" - ], - "next": [ - "StageNL-8", - "NL-8@SwipeToStage" - ] - }, - "NL-Open": { - "action": "ClickSelf", - "roi": [ - 471, - 0, - 530, - 711 - ], - "next": [ - "NLChapterToNL" - ] - }, - "NLChapterToNL": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "大骑士领" - ], - "postDelay": 2000, - "roi": [ - 998, - 346, - 282, - 191 - ], - "next": [ - "NLChapterToNL", - "ChapterSwipeToTheRight" - ] - }, - "StageNL-10": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "NL-10" - ], - "roi": [ - 0, - 63, - 1280, - 577 - ] - }, - "StageNL-9": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "NL-9" - ], - "roi": [ - 0, - 63, - 1280, - 577 - ] - }, - "StageNL-8": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "NL-8" - ], - "roi": [ - 0, - 63, - 1280, - 577 - ] - }, - "GT-5": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "StageEpisode", - "StageEpisodeToGT", - "GTToGT-5", - "StageGT-5" - ] - }, - "StageEpisodeToGT": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "骑兵与猎人" - ], - "roi": [ - 0, - 41, - 372, - 627 - ] - }, - "GTToGT-5": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "进入", - "活动" - ], - "roi": [ - 993, - 439, - 287, - 168 - ] - }, - "StageGT-5": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "GT-5" - ] - }, - "OF-1": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "StageEpisode", - "StageEpisodeToOF", - "OFToOF-Chapter", - "StageOF-1" - ] - }, - "OF-F3": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "StageEpisode", - "StageEpisodeToOF", - "OFToOF-Chapter", - "OF-Chapter2", - "StageOF-F3" - ] - }, - "StageEpisodeToOF": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "火蓝之心" - ], - "roi": [ - 0, - 41, - 372, - 627 - ] - }, - "OFToOF-Chapter": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "进入", - "活动" - ], - "roi": [ - 993, - 439, - 287, - 168 - ] - }, - "OF-Chapter2": { - "action": "ClickSelf", - "cache": false, - "roi": [ - 1042, - 565, - 141, - 143 - ] - }, - "StageOF-F3": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "OF-F3", - "0F-F3" - ] - }, - "StageOF-1": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "OF-1", - "0F-1" - ] - }, - "IC-9": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "IC-Open" - ], - "next": [ - "StageIC-9", - "IC-9@SwipeToStage" - ] - }, - "IC-8": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "IC-Open" - ], - "next": [ - "StageIC-8", - "IC-8@SwipeToStage" - ] - }, - "IC-7": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "IC-Open" - ], - "next": [ - "StageIC-7", - "IC-7@SwipeToStage" - ] - }, - "IC-Open": { - "action": "ClickSelf", - "roi": [ - 471, - 0, - 530, - 711 - ], - "next": [ - "ICChapterToIC" - ] - }, - "ICChapterToIC": { - "action": "ClickSelf", - "cache": false, - "roi": [ - 1028, - 402, - 223, - 126 - ], - "postDelay": 2000, - "next": [ - "ICChapterToIC", - "ChapterSwipeToTheRight" - ] - }, - "StageIC-9": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "IC-9", - "1C-9" - ], - "roi": [ - 0, - 145, - 1280, - 332 - ] - }, - "StageIC-8": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "IC-8", - "1C-8" - ], - "roi": [ - 0, - 145, - 1280, - 332 - ] - }, - "StageIC-7": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "IC-7", - "1C-7" - ], - "roi": [ - 0, - 145, - 1280, - 332 - ] - }, - "DV-8": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "DV-Open" - ], - "next": [ - "StageDV-8", - "DV-8@SwipeToStage" - ] - }, - "DV-7": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "DV-Open" - ], - "next": [ - "StageDV-7", - "DV-7@SwipeToStage" - ] - }, - "DV-6": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "DV-Open" - ], - "next": [ - "StageDV-6", - "DV-6@SwipeToStage" - ] - }, - "DV-Open": { - "action": "ClickSelf", - "algorithm": "OcrDetect", - "text": [ - "绿野幻梦", - "活动", - "开放" - ], - "roi": [ - 0, - 500, - 500, - 150 - ], - "next": [ - "DVChapterToDV" - ] - }, - "DVChapterToDV": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "实验基地" - ], - "roi": [ - 1025, - 176, - 241, - 180 - ], - "postDelay": 2000, - "next": [ - "DVChapterToDV", - "ChapterSwipeToTheRight" - ] - }, - "StageDV-8": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "DV-8" - ], - "roi": [ - 0, - 145, - 1280, - 332 - ] - }, - "StageDV-7": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "DV-7" - ], - "roi": [ - 0, - 145, - 1280, - 332 - ] - }, - "StageDV-6": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "DV-6" - ], - "roi": [ - 0, - 145, - 1280, - 332 - ] - }, - "LE-5": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "LE-Open", - "LEChapterToLE" - ], - "next": [ - "StageLE-5", - "LE-5@SwipeToStage" - ] - }, - "LE-6": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "LE-Open", - "LEChapterToLE" - ], - "next": [ - "StageLE-6", - "LE-6@SwipeToStage" - ] - }, - "LE-7": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "LE-Open", - "LEChapterToLE" - ], - "next": [ - "StageLE-7", - "LE-7@SwipeToStage" - ] - }, - "LE-Open": { - "action": "ClickSelf", - "roi": [ - 471, - 0, - 530, - 711 - ] - }, - "LEChapterToLE": { - "algorithm": "OcrDetect", - "text": [ - "夕照大厅", - "大厅" - ], - "roi": [ - 1011, - 495, - 217, - 139 - ], - "action": "ClickSelf", - "sub": [ - "ChapterSwipeToTheRight" - ] - }, - "StageLE-5": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "LE-5" - ], - "roi": [ - 0, - 145, - 1280, - 332 - ] - }, - "StageLE-6": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "LE-6" - ], - "roi": [ - 0, - 145, - 1280, - 332 - ] - }, - "StageLE-7": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "LE-7" - ], - "roi": [ - 0, - 145, - 1280, - 332 - ] - }, - "SN-8": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "SN-Open", - "SN-Chapter2", - "StageSN-8" - ] - }, - "SN-9": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "SN-Open", - "SN-Chapter3", - "StageSN-9" - ] - }, - "SN-10": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "SN-Open", - "SN-Chapter3", - "StageSN-10" - ] - }, - "SN-Open": { - "action": "ClickSelf" - }, - "SN-Chapter2": { - "action": "ClickSelf", - "roi": [ - 163, - 418, - 197, - 125 - ], - "next": [ - "SN-Chapter2", - "ChapterSwipeToTheRight" - ] - }, - "SN-Chapter3": { - "action": "ClickSelf", - "roi": [ - 205, - 487, - 254, - 165 - ], - "next": [ - "SN-Chapter3", - "SwipeToTheLeft" - ] - }, - "StageSN-8": { - "action": "ClickSelf", - "template": "SN-8.png", - "cache": false, - "roi": [ - 296, - 93, - 171, - 195 - ] - }, - "StageSN-9": { - "action": "ClickSelf", - "template": "SN-9.png", - "cache": false, - "roi": [ - 610, - 328, - 176, - 198 - ] - }, - "StageSN-10": { - "action": "ClickSelf", - "template": "SN-10.png", - "cache": false, - "roi": [ - 678, - 220, - 173, - 200 - ] - }, - "BI-6": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "BI-Open", - "BIChapterToBI" - ], - "next": [ - "StageBI-6", - "BI-6@SwipeToStage" - ] - }, - "BI-7": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "BI-Open", - "BIChapterToBI" - ], - "next": [ - "StageBI-7", - "BI-7@SwipeToStage" - ] - }, - "BI-8": { - "algorithm": "JustReturn", - "action": "DoNothing", - "sub": [ - "BI-Open", - "BIChapterToBI" - ], - "next": [ - "StageBI-8", - "BI-8@SwipeToStage" - ] - }, - "BI-Open": { - "action": "ClickSelf", - "algorithm": "OcrDetect", - "text": [ - "风雪过境" - ], - "roi": [ - 0, - 500, - 500, - 150 - ] - }, - "BIChapterToBI": { - "action": "ClickSelf", - "roi": [ - 1000, - 250, - 280, - 150 - ], - "postDelay": 2000, - "next": [ - "BIChapterToBI", - "ChapterSwipeToTheRight" - ] - }, - "StageBI-6": { - "action": "ClickSelf", - "algorithm": "OcrDetect", - "text": [ - "B1-6", - "BI-6" - ], - "cache": false, - "roi": [ - 0, - 145, - 1280, - 332 - ] - }, - "StageBI-7": { - "action": "ClickSelf", - "algorithm": "OcrDetect", - "text": [ - "B1-7", - "BI-7" - ], - "cache": false, - "roi": [ - 0, - 145, - 1280, - 332 - ] - }, - "StageBI-8": { - "action": "ClickSelf", - "algorithm": "OcrDetect", - "text": [ - "B1-8", - "BI-8" - ], - "cache": false, - "roi": [ - 0, - 145, - 1280, - 332 - ] - }, - "ResourceStages": { - "algorithm": "JustReturn", - "sub": [ - "StageResource" - ] - }, - "CE-6": { - "baseTask": "ResourceStages", - "next": [ - "CE6@StageCE", - "CE-6@SwipeToTheLeft" - ] - }, - "LS-6": { - "baseTask": "ResourceStages", - "next": [ - "LS6@StageLS" - ] - }, - "CA-5": { - "baseTask": "ResourceStages", - "next": [ - "CA5@StageCA", - "CA-5@SwipeToTheLeft" - ] - }, - "AP-5": { - "baseTask": "ResourceStages", - "next": [ - "AP5@StageAP", - "AP-5@SwipeToTheLeft" - ] - }, - "PR-A-1": { - "baseTask": "ResourceStages", - "Doc": "医疗/重装", - "next": [ - "PR-A-1@StagePR-A", - "PR-A-1@SwipeToTheRight" - ] - }, - "PR-A-2": { - "baseTask": "ResourceStages", - "next": [ - "PR-A-2@StagePR-A", - "PR-A-2@SwipeToTheRight" - ] - }, - "PR-B-1": { - "baseTask": "ResourceStages", - "Doc": "术士/狙击", - "next": [ - "PR-B-1@StagePR-B", - "PR-B-1@SwipeToTheRight" - ] - }, - "PR-B-2": { - "baseTask": "ResourceStages", - "next": [ - "PR-B-2@StagePR-B", - "PR-B-2@SwipeToTheRight" - ] - }, - "PR-C-1": { - "baseTask": "ResourceStages", - "Doc": "先锋/辅助", - "next": [ - "PR-C-1@StagePR-C", - "PR-C-1@SwipeToTheRight" - ] - }, - "PR-C-2": { - "baseTask": "ResourceStages", - "next": [ - "PR-C-2@StagePR-C", - "PR-C-2@SwipeToTheRight" - ] - }, - "PR-D-1": { - "baseTask": "ResourceStages", - "Doc": "近卫/特种", - "next": [ - "PR-D-1@StagePR-D", - "PR-D-1@SwipeToTheRight" - ] - }, - "PR-D-2": { - "baseTask": "ResourceStages", - "next": [ - "PR-D-2@StagePR-D", - "PR-D-2@SwipeToTheRight" - ] - }, - "StageResource": { - "action": "ClickSelf", - "Doc": "进入资源关卡", - "roi": [ - 455, - 562, - 544, - 158 - ] - }, - "Stage": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "cache": false - }, - "StageEntries": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Stage", - "maskRange": [ - 1, - 255 - ], - "next": [ - "Stage" - ] - }, - "UnableToAgent": { - "roi": [ - 994, - 535, - 286, - 143 - ], - "next": [ - "Stage", - "UnableToAgent@SwipeToTheLeft" - ] - }, - "ResourceStageLevel5": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Stage", - "roi": [ - 850, - 140, - 250, - 220 - ] - }, - "ResourceStageLevel6": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Stage", - "roi": [ - 936, - 101, - 243, - 143 - ], - "next": [ - "UnableToAgent", - "Stop" - ] - }, - "ChipStageLevel1": { - "algorithm": "OcrDetect", - "baseTask": "Stage", - "text": [], - "roi": [ - 27, - 260, - 742, - 400 - ] - }, - "ChipStageLevel2": { - "algorithm": "OcrDetect", - "baseTask": "Stage", - "text": [], - "roi": [ - 472, - 0, - 793, - 502 - ] - }, - "StageCE": { - "baseTask": "StageEntries" - }, - "StageLS": { - "baseTask": "StageEntries" - }, - "StageCA": { - "baseTask": "StageEntries" - }, - "StageAP": { - "baseTask": "StageEntries" - }, - "StagePR-A": { - "baseTask": "StageEntries" - }, - "StagePR-B": { - "baseTask": "StageEntries" - }, - "StagePR-C": { - "baseTask": "StageEntries" - }, - "StagePR-D": { - "baseTask": "StageEntries" - }, - "CE5@Stage": { - "baseTask": "ResourceStageLevel5", - "template": "StageCE5.png" - }, - "CE6@Stage": { - "baseTask": "CE5@ResourceStageLevel6", - "template": "StageCE6.png" - }, - "LS5@Stage": { - "baseTask": "ResourceStageLevel5", - "template": "StageLS5.png" - }, - "LS6@Stage": { - "baseTask": "LS5@ResourceStageLevel6", - "template": "StageLS6.png" - }, - "CA5@Stage": { - "baseTask": "ResourceStageLevel5", - "template": "StageCA5.png" - }, - "AP5@Stage": { - "baseTask": "ResourceStageLevel5", - "template": "StageAP5.png" - }, - "PR-A-1@Stage": { - "baseTask": "ChipStageLevel1", - "text": [ - "PR-A-1" - ] - }, - "PR-A-2@Stage": { - "baseTask": "ChipStageLevel2", - "text": [ - "PR-A-2" - ] - }, - "PR-B-1@Stage": { - "baseTask": "ChipStageLevel1", - "text": [ - "PR-B-1" - ] - }, - "PR-B-2@Stage": { - "baseTask": "ChipStageLevel2", - "text": [ - "PR-B-2" - ] - }, - "PR-C-1@Stage": { - "baseTask": "ChipStageLevel1", - "text": [ - "PR-C-1" - ] - }, - "PR-C-2@Stage": { - "baseTask": "ChipStageLevel2", - "text": [ - "PR-C-2" - ] - }, - "PR-D-1@Stage": { - "baseTask": "ChipStageLevel1", - "text": [ - "PR-D-1" - ] - }, - "PR-D-2@Stage": { - "baseTask": "ChipStageLevel2", - "text": [ - "PR-D-2" - ] - }, - "CharsNameOcrReplace": { - "algorithm": "OcrDetect", - "text": [], - "Doc": "该任务的 ocrReplace 被所有涉及干员名的识别任务复用", - "ocrReplace": [] - }, - "StartUpThemes": { - "algorithm": "JustReturn", - "next": [ - "GameStart", - "StartToWakeUp", - "StartLoginBServer", - "StartUpConnectingFlag", - "#back", - "CloseAnnos#next", - "TodaysSupplies", - "OfflineConfirm" - ] - }, - "StartUpBegin": { - "algorithm": "JustReturn", - "action": "DoNothing", - "next": [ - "StartUp@StartUpThemes#next", - "StartUpBegin@Loading2", - "StartUp@ReturnTo", - "StartUp@EndOfAction", - "StartUp@FromStageSN" - ] - }, - "GameStart": { - "action": "ClickSelf", - "roi": [ - 550, - 600, - 200, - 120 - ], - "cache": false, - "templThreshold": 0.7, - "postDelay": 3000, - "maskRange": [ - 1, - 255 - ], - "reduceOtherTimes": [ - "StartButton1", - "StartButton2" - ], - "next": [ - "StartUpThemes#next", - "GameStart@Loading2" - ] - }, - "StartToWakeUp": { - "action": "ClickSelf", - "roi": [ - 520, - 460, - 240, - 100 - ], - "next": [ - "StartUpThemes#next", - "StartToWakeUp@Loading2" - ] - }, - "StartLoginBServer": { - "action": "ClickSelf", - "roi": [ - 400, - 350, - 500, - 150 - ], - "next": [ - "StartUpThemes#next", - "StartLoginBServer@Loading2" - ] - }, - "StartUpConnectingFlag": { - "action": "ClickSelf", - "roi": [ - 0, - 635, - 450, - 85 - ], - "next": [ - "StartUpThemes#next", - "StartUpConnectingFlag@Loading2" - ] - }, - "StartUp": { - "template": "Terminal.png", - "action": "Stop", - "roi": [ - 880, - 100, - 180, - 120 - ] - }, - "CloseAnnos": { - "algorithm": "JustReturn", - "next": [ - "CloseAnno", - "CloseAnnoTexas", - "TodaysSupplies" - ] - }, - "CloseAnno": { - "action": "ClickSelf", - "cache": false, - "roi": [ - 1100, - 0, - 180, - 200 - ], - "next": [ - "#back", - "CloseAnnos#next", - "TodaysSupplies" - ] - }, - "CloseAnnoTexas": { - "baseTask": "CloseAnno", - "roi": [ - 1125, - 24, - 138, - 139 - ] - }, - "TodaysSupplies": { - "algorithm": "OcrDetect", - "text": [ - "今日配给" - ], - "action": "ClickRect", - "specificRect": [ - 1000, - 1, - 270, - 340 - ], - "roi": [ - 500, - 50, - 300, - 150 - ], - "next": [ - "CloseAnnos#next", - "#back" - ] - }, - "Loading": { - "algorithm": "OcrDetect", - "action": "DoNothing", - "text": [ - "正在提交", - "反馈至神经" - ], - "roi": [ - 700, - 600, - 300, - 120 - ], - "next": [ - "Loading", - "#next", - "#back" - ] - }, - "Loading2": { - "Doc": "开始唤醒最后阶段的黑色正三角加载画面", - "roi": [ - 480, - 210, - 320, - 280 - ], - "next": [ - "Loading2", - "#next", - "#back" - ] - }, - "ReturnTo": { - "template": "Return.png", - "templThreshold": 0.7, - "action": "ClickSelf", - "cache": false, - "roi": [ - 0, - 0, - 180, - 80 - ], - "next": [ - "#back", - "ReturnTo", - "ReturnToConfirm", - "ReturnTo@Loading2", - "CloseAnnos#next", - "FromStageSN", - "TodaysSupplies" - ] - }, - "ReturnToConfirm": { - "template": "PopupConfirm.png", - "action": "ClickSelf", - "roi": [ - 630, - 400, - 650, - 160 - ], - "next": [ - "ReturnTo", - "#back", - "ReturnToConfirm@Loading2", - "CloseAnnos#next", - "FromStageSN", - "TodaysSupplies", - "ReturnToConfirm" - ] - }, - "OfflineConfirm": { - "action": "DoNothing", - "roi": [ - 310, - 409, - 648, - 165 - ], - "reduceOtherTimes": [ - "StartButton1", - "StartButton2" - ], - "next": [ - "OfflineConfirmImpl" - ] - }, - "OfflineConfirmImpl": { - "Doc": "防止 reduceOtherTimes 两次", - "template": "OfflineConfirm.png", - "action": "ClickSelf", - "roi": [ - 310, - 409, - 648, - 165 - ], - "next": [ - "CloseAnnos#next", - "OfflineConfirmImpl", - "StartUpThemes#next", - "TodaysSupplies" - ] - }, - "StartUp@ClickCorner": { - "ClickCorner_Doc": "点击屏幕右边,不会点到掉落物品,且不会关掉关卡选择的一块区域", - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 1000, - 120, - 270, - 10 - ], - "next": [ - "StartUp@ReturnTo", - "StartUp", - "StartUp@CloseAnnos#next", - "StartUp@FromStageSN", - "StartUp@TodaysSupplies", - "StartUp@OfflineConfirm" - ], - "onErrorNext": [ - "StartUp@RestartGameAndContinue" - ] - }, - "FromStageSN": { - "template": "StageSNReturnFlag.png", - "action": "ClickRect", - "cache": false, - "roi": [ - 284, - 509, - 242, - 141 - ], - "specificRect": [ - 20, - 20, - 135, - 35 - ], - "next": [ - "ReturnTo" - ] - }, - "Annihilation": { - "Doc": "剿灭作战,一般本周的满了也不会有人再刷的,所以只识别右上角ToDoList里的剿灭就可以了", - "template": "StageAnnihilation.png", - "templThreshold": 0.6, - "cache": false, - "action": "ClickSelf", - "roi": [ - 900, - 70, - 380, - 400 - ], - "maskRange": [ - 1, - 255 - ] - }, - "StageBegin": { - "algorithm": "JustReturn", - "action": "DoNothing", - "next": [ - "Fight@ReturnTo", - "Fight", - "Fight@CloseAnnos#next", - "Fight@FromStageSN", - "Fight@TodaysSupplies" - ] - }, - "FightBegin": { - "Docs": "Fight@前缀保证各种任务的Main可以自动寻到Fight", - "algorithm": "JustReturn", - "action": "DoNothing", - "next": [ - "Fight@UsePrts-Annihilation", - "Fight@UsePrts", - "Fight@UsePrts-StageSN", - "Fight@StartButton1", - "Fight@PRTS3", - "Fight@PRTS", - "Fight@PRTS2", - "Fight@EndOfAction" - ] - }, - "LastOrCurBattleBegin": { - "algorithm": "JustReturn", - "action": "DoNothing", - "next": [ - "Fight@GoLastBattle", - "Fight@StartButton1", - "Fight@UsePrts", - "Fight@UsePrts-StageSN", - "Fight@ReturnTo", - "Fight", - "Fight@CloseAnnos#next", - "Fight@FromStageSN", - "Fight@TodaysSupplies", - "Fight@PRTS3", - "Fight@PRTS", - "Fight@PRTS2", - "Fight@EndOfAction" - ] - }, - "UsePrts": { - "action": "ClickSelf", - "roi": [ - 1000, - 550, - 280, - 90 - ], - "cache": false, - "next": [ - "UsePrts-Annihilation", - "StartButton1" - ] - }, - "NotUsePrts": { - "action": "ClickSelf", - "roi": [ - 1000, - 550, - 280, - 90 - ], - "cache": false - }, - "UsePrts-Annihilation": { - "Doc": "剿灭的“全权委托”按钮", - "action": "ClickSelf", - "roi": [ - 877, - 532, - 183, - 123 - ], - "next": [ - "StartButton1" - ] - }, - "UsePrts-StageSN": { - "Doc": "三周年活动关卡“愚人号”代理指挥按钮", - "action": "ClickSelf", - "roi": [ - 1010, - 508, - 270, - 143 - ], - "cache": false, - "next": [ - "StartButton1" - ] - }, - "StartButton1": { - "algorithm": "OcrDetect", - "text": [ - "开始行动" - ], - "cache": false, - "preDelay": 500, - "roi": [ - 1000, - 600, - 280, - 120 - ], - "exceededNext": [ - "StageSNReturnFlag", - "Stop" - ], - "action": "ClickSelf", - "next": [ - "StartButton2", - "UseMedicine", - "UseStone", - "NoStone", - "OfflineConfirm", - "AnnihilationConfirm" - ] - }, - "AnnihilationConfirm": { - "action": "ClickSelf", - "roi": [ - 992, - 584, - 288, - 136 - ], - "next": [ - "EndOfActionAnnihilation", - "EndOfAction" - ] - }, - "StageSNFlag": { - "template": "StageSNReturnFlag.png", - "cache": false, - "roi": [ - 284, - 509, - 242, - 141 - ], - "action": "DoNothing" - }, - "StageSNReturnFlag": { - "Doc": "三周年活动关卡“愚人号”的“开始行动”界面,没有返回按钮,点一下返回后面任务出错", - "action": "ClickRect", - "cache": false, - "roi": [ - 284, - 509, - 242, - 141 - ], - "specificRect": [ - 20, - 20, - 135, - 35 - ], - "next": [ - "Stop" - ] - }, - "StartButton2": { - "action": "ClickSelf", - "postDelay": 40000, - "roi": [ - 1000, - 350, - 220, - 340 - ], - "next": [ - "PRTS", - "PRTS2", - "PRTS3", - "EndOfAction", - "StartButton2", - "PrtsErrorConfirm", - "OfflineConfirm", - "WaitAfterPRTS" - ] - }, - "PRTS": { - "action": "DoNothing", - "template": "BattleOfficiallyBegin.png", - "roi": [ - 1165, - 20, - 65, - 65 - ], - "maskRange": [ - 100, - 255 - ], - "postDelay": 5000, - "next": [ - "PRTS", - "PRTS2", - "PRTS3", - "EndOfAction", - "PrtsErrorConfirm", - "OfflineConfirm", - "WaitAfterPRTS" - ] - }, - "PRTS2": { - "baseTask": "PRTS", - "algorithm": "OcrDetect", - "text": [ - "接管" - ], - "roi": [ - 324, - 579, - 219, - 141 - ] - }, - "PRTS3": { - "baseTask": "PRTS", - "algorithm": "OcrDetect", - "text": [ - "角色" - ], - "roi": [ - 900, - 500, - 380, - 150 - ] - }, - "WaitAfterPRTS": { - "algorithm": "JustReturn", - "action": "DoNothing", - "next": [ - "PRTS", - "PRTS2", - "PRTS3", - "EndOfAction", - "WaitAfterPRTS@Loading", - "WaitAfterPRTS@Loading2", - "ClickCornerAfterPRTS_1" - ] - }, - "ClickCornerAfterPRTS": { - "Doc": "base_task", - "ClickCorner_Doc": "点击屏幕右边,不会点到掉落物品,且不会关掉关卡选择的一块区域", - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 1000, - 120, - 270, - 10 - ], - "postDelay": 3000, - "next": [ - "EndOfAction", - "StartButton1", - "StartButton2", - "UseMedicine", - "UseStone", - "NoStone", - "WaitAfterPRTS@Loading", - "WaitAfterPRTS@Loading2", - "StartUpThemes#next" - ] - }, - "ClickCornerAfterPRTS_1": { - "baseTask": "ClickCornerAfterPRTS", - "next": [ - "ClickCornerAfterPRTS#next", - "ClickCornerAfterPRTS_2" - ] - }, - "ClickCornerAfterPRTS_2": { - "baseTask": "ClickCornerAfterPRTS", - "onErrorNext": [ - "RestartGameAndContinue" - ] - }, - "EndOfAction": { - "Doc": "本任务注册了插件 StageDropsTaskPlugin", - "roi": [ - 0, - 290, - 70, - 60 - ], - "reduceOtherTimes": [ - "FightMissionFailed" - ], - "next": [ - "ClickCorner" - ] - }, - "EndOfActionThenStop": { - "baseTask": "EndOfAction", - "template": "EndOfAction.png", - "reduceOtherTimes": [], - "preDelay": 5000, - "next": [ - "ClickCornerThenStop" - ] - }, - "FightMissionFailedThenStop": { - "baseTask": "FightMissionFailedAndStop", - "preDelay": 5000, - "next": [ - "EndOfActionThenStop" - ] - }, - "EndOfActionAnnihilation": { - "algorithm": "OcrDetect", - "Doc": "本任务注册了插件 StageDropsTaskPlugin", - "text": [ - "行动结束" - ], - "roi": [ - 0, - 118, - 409, - 194 - ], - "action": "DoNothing", - "next": [ - "ClickCorner" - ] - }, - "StageDrops": { - "algorithm": "JustReturn", - "preDelay": 5000 - }, - "ClickCorner": { - "ClickCorner_Doc": "点击屏幕右边,不会点到掉落物品,且不会关掉关卡选择的一块区域", - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 1000, - 120, - 270, - 10 - ], - "next": [ - "StartButton1", - "StartButton2", - "UseMedicine", - "UseStone", - "NoStone", - "EndOfAction" - ], - "onErrorNext": [ - "RestartGameAndContinue" - ] - }, - "ClickCornerThenStop": { - "baseTask": "ClickCorner", - "next": [] - }, - "UseMedicine": { - "action": "DoNothing", - "templThreshold": 0.7, - "roi": [ - 580, - 50, - 400, - 100 - ], - "next": [ - "MedicineConfirm" - ] - }, - "MedicineConfirm": { - "action": "ClickSelf", - "maxTimes": 0, - "roi": [ - 1000, - 500, - 200, - 150 - ], - "reduceOtherTimes": [ - "StartButton1" - ], - "exceededNext": [ - "CloseStonePage" - ], - "next": [ - "StartButton1", - "OfflineConfirm" - ] - }, - "UseStone": { - "action": "DoNothing", - "roi": [ - 600, - 130, - 420, - 420 - ], - "next": [ - "StoneConfirm" - ] - }, - "DrGrandetUseOriginiums": { - "algorithm": "OcrDetect", - "text": [], - "roi": [ - 50, - 376, - 230, - 40 - ], - "preDelay": 3000, - "preDelay_Doc": "提前多少毫秒再次识别,单位毫秒", - "postDelay": 355000, - "postDelay_Doc": "大于多少毫秒才碎石,否则等待,单位毫秒" - }, - "StoneConfirm": { - "template": "MedicineConfirm.png", - "action": "ClickSelf", - "maxTimes": 0, - "roi": [ - 1000, - 500, - 200, - 150 - ], - "reduceOtherTimes": [ - "StartButton1" - ], - "exceededNext": [ - "CloseStonePage" - ], - "next": [ - "StartButton1", - "OfflineConfirm" - ] - }, - "NoStone": { - "action": "DoNothing", - "roi": [ - 800, - 250, - 350, - 250 - ], - "next": [ - "CloseStonePage" - ] - }, - "CloseStonePage": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 0, - 200, - 300, - 400 - ], - "next": [ - "StageSNReturnFlag", - "Stop" - ] - }, - "PrtsErrorConfirm": { - "roi": [ - 0, - 120, - 1280, - 480 - ], - "action": "DoNothing", - "next": [ - "AbandonAction", - "OfflineConfirmAfterBattle" - ] - }, - "OfflineConfirmAfterBattle": { - "template": "PopupConfirm.png", - "action": "ClickSelf", - "roi": [ - 630, - 400, - 650, - 160 - ], - "next": [ - "PRTS", - "PRTS2", - "PRTS3", - "PrtsErrorConfirm", - "OfflineConfirm", - "StartUpThemes#next", - "OfflineConfirmAfterBattle" - ] - }, - "AbandonAction": { - "action": "ClickSelf", - "reduceOtherTimes": [ - "StartButton1", - "StartButton2" - ], - "roi": [ - 0, - 400, - 650, - 230 - ], - "next": [ - "FightMissionFailed", - "EndOfAction", - "OfflineConfirm", - "StartUpThemes#next", - "StartButton1" - ] - }, - "FightMissionFailed": { - "algorithm": "OcrDetect", - "text": [ - "任务失败" - ], - "action": "ClickSelf", - "roi": [ - 36, - 226, - 482, - 269 - ], - "next": [ - "EndOfAction", - "OfflineConfirm", - "StartUpThemes#next", - "StartButton1" - ], - "maxTimes": 3, - "maxTimesDoc": "这是失败次数的限制,超过此限制会停止任务,但每成功一次 EndOfAction 会减少一次失败次数", - "exceededNext": [ - "FightMissionFailedAndStop" - ], - "onErrorNext": [ - "ClickCornerAfterPRTS_1" - ] - }, - "FightMissionFailedAndStop": { - "algorithm": "OcrDetect", - "text": [ - "任务失败" - ], - "action": "ClickSelf", - "roi": [ - 36, - 226, - 482, - 269 - ] - }, - "RestartGameAndContinue": { - "Doc": "base_task", - "algorithm": "JustReturn", - "action": "DoNothing", - "postDelay": 5000, - "next": [ - "StartUpThemes#next", - "RestartGameAndContinue@Loading2", - "ReturnTo", - "FromStageSN" - ] - }, - "Fight": { - "template": "Terminal.png", - "action": "ClickSelf", - "roi": [ - 880, - 100, - 180, - 120 - ], - "exceededNext": [ - "Fight@TodaysSupplies", - "Fight@CloseAnnos#next", - "Stop" - ], - "next": [ - "Fight@GoLastBattle", - "Fight", - "Fight@CloseAnnos#next", - "Fight@TodaysSupplies", - "Stop" - ], - "postDelay": 3000 - }, - "GoLastBattle": { - "algorithm": "OcrDetect", - "text": [ - "前往上一次作战", - "前往", - "作战" - ], - "roi": [ - 916, - 479, - 249, - 127 - ], - "action": "ClickSelf", - "next": [ - "UsePrts-Annihilation", - "UsePrts", - "UsePrts-StageSN", - "StartButton1" - ] - }, - "RecruitBegin": { - "algorithm": "JustReturn", - "action": "DoNothing", - "next": [ - "RecruitFlag", - "Recruit", - "Recruit@ReturnTo", - "Recruit@CloseAnnos#next", - "Recruit@FromStageSN", - "Recruit@TodaysSupplies" - ] - }, - "Recruit": { - "template": "Recruit.png", - "action": "ClickSelf", - "roi": [ - 900, - 450, - 200, - 150 - ], - "maskRange": [ - 1, - 255 - ], - "next": [ - "RecruitBegin@Loading", - "RecruitBegin" - ] - }, - "RecruitFinish": { - "action": "ClickSelf", - "templThreshold": 0.7, - "cache": false, - "roi": [ - 0, - 300, - 1280, - 420 - ], - "next": [ - "RecruitFinish@Loading", - "RecruitFinish", - "Recruit", - "RecruitSkip", - "RecruitSkipWithoutButton" - ] - }, - "RecruitSkip": { - "action": "ClickSelf", - "roi": [ - 1100, - 0, - 180, - 150 - ], - "next": [ - "RecruitSkip", - "RecruitSkipWithoutButton" - ] - }, - "RecruitSkipWithoutButton": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 1180, - 15, - 85, - 60 - ], - "next": [ - "RecruitFinish", - "RecruitFlag", - "RecruitSkip", - "Recruit", - "RecruitSkipWithoutButton" - ] - }, - "StartRecruit": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "postDelay": 500, - "text": [ - "开始招" - ], - "roi": [ - 0, - 300, - 1280, - 420 - ] - }, - "RecruitFlag": { - "algorithm": "OcrDetect", - "text": [ - "公开招募" - ], - "roi": [ - 50, - 100, - 230, - 100 - ], - "action": "Stop" - }, - "RecruitNow": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "postDelay": 500, - "cache": false, - "text": [ - "立即招" - ], - "roi": [ - 0, - 300, - 1280, - 420 - ], - "next": [ - "RecruitNowConfirm" - ] - }, - "RecruitNowConfirm": { - "action": "ClickSelf", - "roi": [ - 640, - 450, - 640, - 150 - ], - "next": [ - "RecruitFlag", - "RecruitNowConfirm" - ] - }, - "ActivitiesBegin": { - "algorithm": "JustReturn", - "action": "DoNothing", - "next": [ - "ReturnToActivities", - "MiningActivities", - "RecruitingActivities" - ] - }, - "ReturnToActivities": { - "template": "Return.png", - "templThreshold": 0.7, - "action": "ClickSelf", - "roi": [ - 0, - 0, - 180, - 80 - ], - "next": [ - "ReturnToActivities", - "MiningActivities", - "RecruitingActivities", - "Stop" - ] - }, - "MiningActivities": { - "algorithm": "OcrDetect", - "text": [ - "限时开采", - "开采" - ], - "action": "ClickSelf", - "roi": [ - 0, - 20, - 302, - 302 - ], - "next": [ - "MiningActivityDigging", - "MiningActivitiesReturn" - ] - }, - "MiningActivityDigging": { - "action": "ClickSelf", - "roi": [ - 901, - 469, - 334, - 182 - ], - "next": [ - "MiningActivityDigging", - "MiningActivityDiggingEnd", - "MiningActivitiesReturn" - ] - }, - "MiningActivityDiggingEnd": { - "action": "ClickSelf", - "roi": [ - 559, - 563, - 160, - 157 - ], - "next": [ - "MiningActivitiesReturn" - ] - }, - "MiningActivitiesReturn": { - "template": "CloseAnno.png", - "action": "ClickSelf", - "roi": [ - 1146, - 0, - 134, - 162 - ], - "next": [ - "RecruitingActivities", - "MiningActivitiesReturn", - "Stop" - ] - }, - "RecruitingActivities": { - "algorithm": "OcrDetect", - "text": [ - "赠送", - "次" - ], - "action": "ClickSelf", - "roi": [ - 1148, - 416, - 132, - 138 - ], - "next": [ - "RecruitingActivitiesConfirm", - "RecruitingActivities" - ] - }, - "RecruitingActivitiesConfirm": { - "action": "DoNothing", - "algorithm": "OcrDetect", - "text": [ - "赠送", - "次", - "小时" - ], - "roi": [ - 729, - 515, - 303, - 135 - ], - "next": [ - "RecruitingActivitiesRecruit", - "RecruitingActivitiesConfirm" - ] - }, - "RecruitingActivitiesRecruit": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "text": [ - "寻访一次", - "寻访" - ], - "roi": [ - 770, - 577, - 267, - 143 - ], - "next": [ - "RecruitingActivitiesRecruitNowConfirm" - ] - }, - "RecruitingActivitiesRecruitNowConfirm": { - "action": "ClickSelf", - "template": "RecruitNowConfirm.png", - "roi": [ - 586, - 399, - 694, - 192 - ], - "next": [ - "RecruitingActivitiesRecruitSkip", - "RecruitingActivitiesRecruitNowConfirm", - "RecruitingActivitiesRecruitSkipWithoutButton" - ] - }, - "RecruitingActivitiesRecruitSkip": { - "action": "ClickSelf", - "template": "RecruitSkip.png", - "roi": [ - 1100, - 0, - 180, - 150 - ], - "next": [ - "RecruitingActivitiesRecruitSkip", - "RecruitingActivitiesRecruitSkipWithoutButton" - ] - }, - "RecruitingActivitiesRecruitSkipWithoutButton": { - "action": "ClickRect", - "algorithm": "JustReturn", - "specificRect": [ - 1180, - 15, - 85, - 60 - ], - "next": [ - "RecruitingActivitiesRecruitEnd", - "RecruitingActivitiesRecruitSkip", - "RecruitingActivitiesRecruitSkipWithoutButton" - ] - }, - "RecruitingActivitiesRecruitEnd": { - "algorithm": "OcrDetect", - "action": "DoNothing", - "text": [ - "寻访一次", - "寻访" - ], - "roi": [ - 770, - 577, - 267, - 143 - ], - "next": [ - "Stop" - ] - }, - "AwardBegin": { - "algorithm": "JustReturn", - "action": "DoNothing", - "next": [ - "Award@ReturnTo", - "Award", - "ReceiveAward", - "DailyTask", - "WeeklyTask", - "Award@CloseAnnos#next", - "Award@FromStageSN", - "Award@TodaysSupplies" - ] - }, - "Award": { - "template": "Task.png", - "action": "ClickSelf", - "roi": [ - 700, - 530, - 130, - 130 - ], - "next": [ - "ReceiveAward", - "DailyTask", - "WeeklyTask", - "Award", - "Award@CloseAnnos#next", - "Award@TodaysSupplies" - ] - }, - "ReceiveAward": { - "action": "ClickSelf", - "roi": [ - 950, - 50, - 330, - 150 - ], - "next": [ - "CloseTaskAward" - ] - }, - "CloseTaskAward": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 600, - 600, - 60, - 60 - ], - "next": [ - "CloseTaskAwardDouble" - ] - }, - "CloseTaskAwardDouble": { - "Doc": "有时候奖励出的太慢了,所以这里多点一次", - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 600, - 600, - 60, - 60 - ], - "next": [ - "WeeklyTask", - "AwardFinished", - "CloseTaskAwardDouble" - ], - "maxTimes": 10 - }, - "AwardFinished": { - "action": "Stop", - "roi": [ - 400, - 0, - 880, - 100 - ], - "maskRange": [ - 1, - 255 - ] - }, - "DailyTask": { - "action": "ClickSelf", - "cache": false, - "roi": [ - 400, - 0, - 880, - 100 - ], - "next": [ - "ReceiveAward", - "WeeklyTask" - ] - }, - "WeeklyTask": { - "action": "ClickSelf", - "cache": false, - "roi": [ - 400, - 0, - 880, - 100 - ], - "next": [ - "ReceiveAward", - "Stop" - ] - }, - "VisitBegin": { - "algorithm": "JustReturn", - "action": "DoNothing", - "next": [ - "Visit", - "FriendsList", - "StartToVisit", - "VisitNext", - "VisitNextBlack", - "Visit@ReturnTo", - "Visit@CloseAnnos#next", - "Visit@FromStageSN", - "Visit@TodaysSupplies" - ] - }, - "Visit": { - "template": "Friends.png", - "templThreshold": 0.7, - "action": "ClickSelf", - "roi": [ - 250, - 500, - 200, - 150 - ], - "next": [ - "FriendsList", - "Visit", - "Visit@CloseAnnos#next", - "Visit@TodaysSupplies" - ] - }, - "FriendsList": { - "action": "ClickSelf", - "roi": [ - 0, - 150, - 250, - 150 - ], - "next": [ - "StartToVisit", - "NoFriends" - ] - }, - "NoFriends": { - "algorithm": "OcrDetect", - "text": [ - "暂无好友" - ], - "roi": [ - 650, - 100, - 300, - 150 - ], - "action": "DoNothing", - "next": [ - "Home@ReturnTo" - ] - }, - "StartToVisit": { - "action": "ClickSelf", - "cache": false, - "templThreshold": 0.75, - "roi": [ - 900, - 0, - 200, - 720 - ], - "next": [ - "VisitNext", - "VisitNextBlack", - "VisitNextOcr" - ] - }, - "VisitNext": { - "action": "ClickSelf", - "roi": [ - 1080, - 570, - 195, - 130 - ], - "next": [ - "VisitLimited", - "VisitNext", - "VisitNextBlack", - "VisitNextOcr" - ] - }, - "VisitNextOcr": { - "algorithm": "OcrDetect", - "text": [ - "访问下位" - ], - "action": "ClickSelf", - "roi": [ - 1080, - 570, - 195, - 130 - ], - "next": [ - "VisitLimited", - "VisitNext", - "VisitNextBlack", - "VisitNextOcr" - ] - }, - "MallBegin": { - "algorithm": "JustReturn", - "action": "DoNothing", - "next": [ - "Mall@ReturnTo", - "Mall", - "Mall@CloseAnnos#next", - "Mall@FromStageSN", - "Mall@TodaysSupplies" - ] - }, - "Mall": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "text": [ - "中心" - ], - "roi": [ - 740, - 440, - 200, - 100 - ], - "next": [ - "CreditStoreOcr", - "Mall", - "Mall@CloseAnnos#next", - "Mall@TodaysSupplies" - ] - }, - "CreditStoreOcr": { - "algorithm": "OcrDetect", - "text": [ - "信用交易所" - ], - "roi": [ - 1000, - 0, - 280, - 300 - ], - "action": "ClickSelf", - "next": [ - "CollectCredit", - "CreditStoreFailed", - "Stop" - ] - }, - "CreditStoreFailed": { - "action": "DoNothing", - "roi": [ - 0, - 45, - 216, - 124 - ], - "next": [ - "CreditStoreOcr" - ] - }, - "CollectCredit": { - "action": "ClickSelf", - "roi": [ - 900, - 0, - 250, - 100 - ], - "next": [ - "CollectCredit", - "CloseCollectCredit" - ], - "postDelay": 2000 - }, - "CloseCollectCredit": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 1000, - 1, - 270, - 340 - ], - "next": [ - "CrisisPopup", - "Stop" - ] - }, - "CrisisPopup": { - "action": "ClickRect", - "roi": [ - 450, - 130, - 400, - 100 - ], - "specificRect": [ - 20, - 20, - 135, - 35 - ] - }, - "VisitLimited": { - "algorithm": "OcrDetect", - "text": [ - "今日参与", - "已达上限" - ], - "action": "DoNothing", - "roi": [ - 900, - 50, - 375, - 140 - ], - "next": [ - "Home@ReturnTo" - ] - }, - "VisitNextBlack": { - "action": "DoNothing", - "roi": [ - 1080, - 570, - 195, - 130 - ], - "next": [ - "Home@ReturnTo" - ] - }, - "Home": { - "template": "Terminal.png", - "action": "Stop", - "roi": [ - 880, - 100, - 180, - 120 - ] - }, - "CreditShop-Commodities": { - "template": "CreditPoint.png", - "rectMove": [ - -60, - -180, - 220, - 220 - ] - }, - "CreditShop-SoldOut": { - "template": "SoldOut.png" - }, - "CreditShop-BuyIt": { - "template": "BuyIt.png", - "action": "ClickSelf", - "roi": [ - 800, - 500, - 250, - 150 - ], - "next": [ - "CreditShop-Bought", - "CreditShop-BuyIt@Loading", - "CreditShop-NoMoney" - ] - }, - "CreditShop-Bought": { - "templThreshold": 0.7, - "action": "ClickSelf", - "roi": [ - 544, - 0, - 210, - 201 - ], - "next": [ - "CreditShop-Bought", - "Stop" - ] - }, - "CreditShop-NoMoney": { - "algorithm": "OcrDetect", - "cache": false, - "text": [ - "信用不足", - "无法购买" - ], - "roi": [ - 940, - 60, - 339, - 110 - ] - }, - "CreditShop-CreditOcr": { - "algorithm": "OcrDetect", - "text": [], - "roi": [ - 1147, - 26, - 57, - 27 - ] - }, - "CreditShop-ProductName": { - "algorithm": "OcrDetect", - "text": [], - "ocrReplace": [], - "roi": [ - 0, - -30, - 220, - 70 - ] - }, - "Stop": { - "algorithm": "JustReturn", - "action": "Stop" - }, - "RecruitTimerDecrement": { - "Doc": "two buttons that adjust recruit timer", - "roi": [ - 350, - 250, - 370, - 100 - ] - }, - "RecruitTags": { - "algorithm": "OcrDetect", - "fullMatch": true, - "text": [], - "roi": [ - 375, - 360, - 480, - 120 - ], - "ocrReplace": [] - }, - "RecruitRefresh": { - "action": "ClickSelf", - "roi": [ - 850, - 340, - 220, - 170 - ], - "next": [ - "RecruitRefreshConfirm" - ] - }, - "RecruitNoRefresh": { - "action": "DoNothing", - "roi": [ - 850, - 340, - 220, - 170 - ] - }, - "RecruitRefreshConfirm": { - "template": "PopupConfirm.png", - "action": "ClickSelf", - "roi": [ - 630, - 400, - 650, - 160 - ], - "preDelay": 500, - "postDelay": 500, - "next": [ - "RecruitRefreshConfirm@Loading", - "SleepThenStop" - ] - }, - "SleepThenStop": { - "algorithm": "JustReturn", - "action": "DoNothing", - "postDelay": 2000 - }, - "RecruitTimerH": { - "Doc": "识别公招小时数", - "algorithm": "OcrDetect", - "withoutDet": true, - "roi": [ - 410, - 195, - 85, - 60 - ], - "text": [ - "01", - "02", - "03", - "04", - "05", - "06", - "07", - "08", - "09" - ] - }, - "RecruitTimerM": { - "Doc": "识别公招分钟数", - "algorithm": "OcrDetect", - "withoutDet": true, - "roi": [ - 575, - 195, - 85, - 60 - ], - "text": [ - "00", - "10", - "20", - "30", - "40", - "50" - ] - }, - "RecruitConfirm": { - "action": "ClickSelf", - "roi": [ - 860, - 540, - 230, - 80 - ], - "next": [ - "RecruitConfirm@Loading", - "RecruitFlag" - ] - }, - "InfrastBegin": { - "algorithm": "JustReturn", - "action": "DoNothing", - "next": [ - "Infrast", - "InfrastEnteredFlag", - "InfrastNotification", - "Infrast@ReturnTo", - "Infrast@CloseAnnos#next", - "Infrast@FromStageSN", - "Infrast@TodaysSupplies", - "Infrast@OfflineConfirm" - ] - }, - "Infrast@ReturnTo": { - "template": "Return.png", - "next": [ - "Infrast", - "InfrastNotification", - "InfrastEnteredFlag", - "Infrast@ReturnTo", - "Infrast@ReturnToConfirm", - "Infrast@CloseAnnos#next", - "Infrast@FromStageSN", - "Infrast@TodaysSupplies", - "Infrast@OfflineConfirm" - ] - }, - "Infrast@ReturnToConfirm": { - "template": "PopupConfirm.png", - "next": [ - "Infrast", - "InfrastNotification", - "InfrastEnteredFlag", - "Infrast@ReturnTo", - "Infrast@CloseAnnos#next", - "Infrast@FromStageSN", - "Infrast@TodaysSupplies", - "Infrast@ReturnToConfirm", - "Infrast@OfflineConfirm" - ] - }, - "Infrast@CloseAnno": { - "template": "CloseAnno.png", - "next": [ - "Infrast", - "InfrastNotification", - "InfrastEnteredFlag", - "Infrast@ReturnTo", - "Infrast@CloseAnnos#next", - "Infrast@FromStageSN", - "Infrast@TodaysSupplies", - "Infrast@OfflineConfirm" - ] - }, - "Infrast@CloseAnnoTexas": { - "template": "CloseAnnoTexas.png", - "next": [ - "Infrast", - "InfrastNotification", - "InfrastEnteredFlag", - "Infrast@ReturnTo", - "Infrast@CloseAnnos#next", - "Infrast@FromStageSN", - "Infrast@TodaysSupplies", - "Infrast@OfflineConfirm" - ] - }, - "Return": { - "action": "ClickSelf", - "templThreshold": 0.7, - "postDelay": 2000, - "cache": false, - "roi": [ - 0, - 0, - 180, - 80 - ] - }, - "Infrast": { - "template": "EnterInfrast.png", - "roi": [ - 900, - 540, - 160, - 160 - ], - "action": "ClickSelf", - "next": [ - "InfrastEnteredFlag", - "Infrast", - "Infrast@CloseAnnos#next", - "Infrast@TodaysSupplies", - "Infrast@OfflineConfirm" - ], - "postDelay": 5000 - }, - "InfrastEnteredFlag": { - "template": "InfrastOverview.png", - "action": "DoNothing", - "roi": [ - 0, - 100, - 300, - 150 - ], - "next": [ - "InfrastNotification", - "Stop" - ] - }, - "InfrastNotification": { - "roi": [ - 1100, - 0, - 180, - 300 - ], - "cache": false, - "action": "ClickSelf", - "next": [ - "InfrastReward", - "InfrastExitReward" - ] - }, - "InfrastReward": { - "algorithm": "OcrDetect", - "text": [ - "可收获", - "订单交付", - "员信赖" - ], - "action": "ClickSelf", - "roi": [ - 0, - 600, - 800, - 118 - ], - "cache": false, - "next": [ - "InfrastReward", - "InfrastExitReward" - ] - }, - "InfrastExitReward": { - "Doc": "干员疲劳、线索收集 是不能一键收获的,所以要先退出一键收获的界面,这里点击的是控制中枢左侧那一片空白的区域", - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 250, - 100, - 380, - 140 - ], - "next": [ - "Stop" - ] - }, - "DroneAssistMfg": { - "action": "ClickSelf", - "roi": [ - 1180, - 500, - 100, - 100 - ], - "maxTimes": 1, - "Doc": "不同于贸易站,制造站的无人机是一次性全用掉的,所以只执行一次就够了", - "next": [ - "DroneMax", - "DroneConfirm", - "DroneCancel" - ] - }, - "DroneAssistTrade": { - "action": "ClickSelf", - "cache": false, - "roi": [ - 250, - 430, - 460, - 120 - ], - "next": [ - "DroneMax", - "DroneConfirm", - "DroneCancel" - ] - }, - "DroneMax": { - "action": "ClickSelf", - "roi": [ - 900, - 300, - 120, - 80 - ], - "next": [ - "DroneConfirm", - "DroneCancel" - ] - }, - "DroneConfirm": { - "action": "ClickSelf", - "postDelay": 3500, - "cache": false, - "roi": [ - 778, - 501, - 377, - 165 - ], - "next": [ - "DroneConfirm@Loading", - "DeliverableOrder", - "DroneAssist-Trade-Stop", - "DroneAssistMfg" - ] - }, - "DroneCancel": { - "action": "ClickSelf", - "cache": false, - "roi": [ - 85, - 498, - 452, - 162 - ] - }, - "DeliverableOrder": { - "action": "ClickSelf", - "roi": [ - 250, - 300, - 230, - 250 - ], - "next": [ - "DeliverableOrder", - "DroneAssistTrade" - ], - "postDelay": 2000 - }, - "DroneAssist-Trade-Stop": { - "Doc": "如果找到了“无人机加速”按钮,却没有找到订单交付:说明上一次无人机没有把一个订单加速完成,也说明没有更多的无人机了,所以直接stop", - "template": "DroneAssistTrade.png", - "action": "Stop" - }, - "ReplenishToMax": { - "action": "ClickSelf", - "roi": [ - 882, - 128, - 165, - 149 - ], - "postDelay": 1000, - "next": [ - "ReplenishToMaxConfirm", - "Stop" - ] - }, - "ReplenishToMaxConfirm": { - "action": "ClickSelf", - "roi": [ - 854, - 504, - 192, - 187 - ], - "postDelay": 1000, - "next": [ - "ReplenishToMaxConfirm@Loading", - "Stop" - ] - }, - "ShamareThumbnail": { - "algorithm": "JustReturn", - "action": "DoNothing", - "next": [ - "ShamareThumbnail1", - "ShamareThumbnail2", - "ShamareThumbnail3" - ] - }, - "ShamareThumbnail1": { - "action": "DoNothing", - "templThreshold": 0.9, - "cache": false, - "roi": [ - 240, - 550, - 380, - 170 - ] - }, - "ShamareThumbnail2": { - "action": "DoNothing", - "templThreshold": 0.9, - "cache": false, - "roi": [ - 240, - 550, - 380, - 170 - ] - }, - "ShamareThumbnail3": { - "action": "DoNothing", - "templThreshold": 0.9, - "cache": false, - "roi": [ - 240, - 550, - 380, - 170 - ] - }, - "InfrastSkillsUpper": { - "template": "empty.png", - "roi": [ - 400, - 280, - 880, - 80 - ] - }, - "InfrastSkillsLower": { - "template": "empty.png", - "roi": [ - 400, - 560, - 880, - 80 - ] - }, - "InfrastOperNameOcr": { - "algorithm": "OcrDetect", - "text": [], - "rectMove_Doc": "基于笑脸的位置移动", - "rectMove": [ - 0, - 20, - 113, - 22 - ] - }, - "InfrastOperFacilityOcr": { - "algorithm": "OcrDetect", - "text": [], - "rectMove_Doc": "基于笑脸的位置移动", - "rectMove": [ - 14, - -209, - 40, - 22 - ] - }, - "InfrastOperFaceHash": { - "algorithm": "Hash", - "hash": [], - "threshold": 40, - "rectMove_Doc": "基于笑脸的位置移动", - "rectMove": [ - 0, - -185, - 113, - 90 - ] - }, - "InfrastSmileyOnRest": { - "template": "SmileyOnRest.png", - "maskRange": [ - 100, - 255 - ], - "templThreshold": 0.8 - }, - "InfrastSmileyOnWork": { - "template": "SmileyOnWork.png", - "maskRange": [ - 100, - 255 - ], - "templThreshold": 0.8 - }, - "InfrastSmileyOnDistract": { - "template": "SmileyOnDistract.png", - "maskRange": [ - 100, - 255 - ], - "templThreshold": 0.8 - }, - "InfrastSkills": { - "template": "empty.png", - "templThreshold": 0.85, - "specialParams": [ - 95 - ], - "specialParams_Doc": "用于做灰度图平均值", - "rectMove_Doc": "基于笑脸的位置移动", - "rectMove": [ - -8, - -42, - 82, - 40 - ], - "maskRange": [ - 1, - 255 - ] - }, - "SleepAfterOperListQuickSwipe": { - "algorithm": "JustReturn", - "postDelay": 1000 - }, - "InfrastOperMoodProgressBar": { - "template": "empty.png", - "templThreshold_Doc": "这里的templThreshold,作为进度条最小灰度阈值使用", - "templThreshold": 160, - "specialParams": [ - 20 - ], - "specialParams_Doc": "作为进度条相邻点最大变化阈值使用", - "rectMove_Doc": "基于笑脸的位置移动", - "rectMove": [ - 21, - 8, - 85, - 4 - ] - }, - "InfrastMfg": { - "template": "Manufacturing.png", - "templThreshold": 0.9, - "maskRange": [ - 1, - 255 - ], - "roi": [ - 0, - 200, - 820, - 520 - ] - }, - "InfrastMfgMini": { - "template": "ManufacturingMini.png", - "templThreshold": 0.9, - "roi": [ - 0, - 240, - 640, - 400 - ], - "maskRange": [ - 1, - 255 - ] - }, - "InfrastTrade": { - "template": "Trade.png", - "templThreshold": 0.9, - "maskRange": [ - 1, - 255 - ], - "roi": [ - 0, - 200, - 820, - 520 - ] - }, - "InfrastTradeMini": { - "template": "TradeMini.png", - "templThreshold": 0.9, - "roi": [ - 0, - 240, - 640, - 400 - ], - "maskRange": [ - 1, - 255 - ] - }, - "InfrastPower": { - "template": "Power.png", - "maskRange": [ - 1, - 255 - ], - "roi": [ - 0, - 200, - 820, - 520 - ], - "templThreshold": 0.95 - }, - "InfrastPowerMini": { - "template": "PowerMini.png", - "roi": [ - 0, - 240, - 640, - 400 - ], - "maskRange": [ - 1, - 255 - ], - "templThreshold": 0.95 - }, - "InfrastDorm": { - "template": "Dorm.png", - "maskRange": [ - 1, - 255 - ], - "roi": [ - 400, - 220, - 880, - 500 - ], - "templThreshold": 0.95 - }, - "InfrastDormMini": { - "template": "DormMini.png", - "maskRange": [ - 1, - 255 - ], - "roi": [ - 620, - 240, - 360, - 480 - ], - "templThreshold": 0.95 - }, - "InfrastOffice": { - "template": "Office.png", - "maskRange": [ - 1, - 255 - ], - "roi": [ - 880, - 330, - 400, - 160 - ], - "templThreshold": 0.95 - }, - "InfrastOfficeMini": { - "template": "OfficeMini.png", - "maskRange": [ - 1, - 255 - ], - "roi": [ - 980, - 320, - 300, - 160 - ], - "templThreshold": 0.95 - }, - "InfrastReception": { - "template": "Reception.png", - "maskRange": [ - 1, - 255 - ], - "roi": [ - 880, - 120, - 400, - 160 - ], - "templThreshold": 0.95 - }, - "InfrastReceptionMini": { - "template": "ReceptionMini.png", - "maskRange": [ - 1, - 255 - ], - "roi": [ - 980, - 180, - 300, - 140 - ], - "templThreshold": 0.95 - }, - "InfrastControl": { - "template": "ControlCenter.png", - "maskRange": [ - 1, - 255 - ], - "roi": [ - 400, - 0, - 880, - 300 - ], - "templThreshold": 0.95 - }, - "InfrastControlMini": { - "template": "ControlCenterMini.png", - "maskRange": [ - 1, - 255 - ], - "roi": [ - 620, - 80, - 360, - 230 - ], - "templThreshold": 0.95 - }, - "InfrastStationedInfo": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [ - "进驻信息" - ], - "roi": [ - 0, - 0, - 150, - 720 - ], - "postDelay": 1000, - "next": [ - "InfrastEnterOperList" - ] - }, - "InfrastEnterOperList": { - "algorithm": "OcrDetect", - "cache": false, - "action": "ClickSelf", - "text": [ - "心情", - "休息中", - "工作中", - "进驻" - ], - "roi": [ - 800, - 0, - 480, - 650 - ], - "postDelay": 1000 - }, - "InfrastClearButton": { - "action": "ClickSelf", - "cache": false, - "roi": [ - 370, - 592, - 275, - 128 - ], - "postDelay": 1000 - }, - "InfrastSortByTrustButton": { - "action": "ClickSelf", - "cache": false, - "roi": [ - 1000, - 0, - 100, - 70 - ], - "next": [ - "InfrastSortByTrustButtonClickAgain" - ] - }, - "InfrastSortByTrustButtonClickAgain": { - "action": "ClickSelf", - "cache": false, - "roi": [ - 1000, - 0, - 100, - 70 - ], - "postDelay": 1000 - }, - "InfrastFilterMenuNotStationed": { - "action": "ClickSelf", - "template": "InfrastFilterMenu.png", - "cache": false, - "roi": [ - 1050, - 0, - 230, - 100 - ], - "next": [ - "InfrastFilterMenuNotStationedButton", - "InfrastFilterMenuNotStationedButtonAlreadyClicked" - ], - "postDelay": 1000 - }, - "InfrastFilterMenuNotStationedButton": { - "action": "ClickSelf", - "templThreshold": 0.85, - "cache": false, - "roi": [ - 300, - 300, - 250, - 150 - ], - "postDelay": 1000, - "next": [ - "InfrastFilterMenuConfirmButton" - ] - }, - "InfrastFilterMenuNotStationedButtonAlreadyClicked": { - "action": "DoNothing", - "cache": false, - "roi": [ - 300, - 300, - 250, - 150 - ], - "next": [ - "InfrastFilterMenuConfirmButton" - ] - }, - "InfrastFilterMenuCancelNotStationed": { - "action": "ClickSelf", - "template": "InfrastFilterMenu.png", - "cache": false, - "roi": [ - 1050, - 0, - 230, - 100 - ], - "next": [ - "InfrastFilterMenuCancelNotStationedButtonAlreadyClicked", - "InfrastFilterMenuCancelNotStationedButton" - ], - "postDelay": 1000 - }, - "InfrastFilterMenuCancelNotStationedButton": { - "action": "DoNothing", - "template": "InfrastFilterMenuNotStationedButton.png", - "templThreshold": 0.85, - "cache": false, - "roi": [ - 300, - 300, - 250, - 150 - ], - "postDelay": 1000, - "next": [ - "InfrastFilterMenuConfirmButton" - ] - }, - "InfrastFilterMenuCancelNotStationedButtonAlreadyClicked": { - "action": "ClickSelf", - "template": "InfrastFilterMenuNotStationedButtonAlreadyClicked.png", - "cache": false, - "roi": [ - 300, - 300, - 250, - 150 - ], - "next": [ - "InfrastFilterMenuConfirmButton" - ] - }, - "InfrastFilterMenuConfirmButton": { - "action": "ClickSelf", - "cache": false, - "roi": [ - 870, - 528, - 152, - 50 - ], - "postDelay": 1000 - }, - "InfrastConfirmButton": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 1105, - 655, - 150, - 40 - ], - "postDelay": 500, - "next": [ - "InfrastConfirmButtonWait", - "Stop" - ] - }, - "InfrastConfirmButtonWait": { - "algorithm": "OcrDetect", - "text": [ - "正在提交", - "反馈至神经" - ], - "roi": [ - 700, - 640, - 300, - 80 - ], - "postDelay": 500, - "next": [ - "InfrastConfirmButtonWait", - "Stop" - ] - }, - "InfrastBottomLeftTab": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 0, - 540, - 520, - 180 - ], - "preDelay": 1000, - "postDelay": 2000 - }, - "InfrastDormConfirmButton": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 1105, - 655, - 150, - 40 - ], - "postDelay": 500, - "next": [ - "InfrastDormConfirmButtonWait", - "InfrastDormDoubleConfirmButton", - "Stop" - ] - }, - "InfrastDormConfirmButtonWait": { - "algorithm": "OcrDetect", - "text": [ - "正在提交", - "反馈至神经" - ], - "roi": [ - 700, - 640, - 300, - 80 - ], - "postDelay": 500, - "next": [ - "InfrastDormConfirmButtonWait", - "InfrastDormDoubleConfirmButton", - "Stop" - ] - }, - "InfrastDormDoubleConfirmButton": { - "template": "DormConfirm.png", - "action": "ClickSelf", - "roi": [ - 630, - 620, - 650, - 100 - ], - "postDelay": 500, - "next": [ - "InfrastDormConfirmButtonWait", - "InfrastDormDoubleConfirmButton", - "Stop" - ] - }, - "InfrastEnterFacility": { - "algorithm": "JustReturn", - "postDelay": 2000 - }, - "InfrastFacilityListTabMfg": { - "template": "FacilityListTabMfg.png", - "roi": [ - 0, - 0, - 250, - 720 - ], - "maskRange": [ - 1, - 255 - ], - "preDelay": 1000, - "postDelay": 1000 - }, - "InfrastFacilityListTabTrade": { - "template": "FacilityListTabTrade.png", - "roi": [ - 0, - 0, - 250, - 720 - ], - "maskRange": [ - 1, - 255 - ], - "preDelay": 1000, - "postDelay": 1000 - }, - "InfrastOperLockedMfg": { - "template": "OperLockedMfg.png", - "roi": [ - 200, - 500, - 430, - 220 - ] - }, - "InfrastOperLockedTrade": { - "template": "OperLockedTrade.png", - "roi": [ - 200, - 500, - 430, - 220 - ] - }, - "InfrastFlagCombatRecord": { - "template": "InfrastMfgDogFoodFlag.png", - "roi": [ - 1000, - 0, - 280, - 720 - ] - }, - "InfrastFlagPureGold": { - "template": "InfrastMfgPureGoldFlag.png", - "roi": [ - 1000, - 0, - 280, - 720 - ] - }, - "InfrastFlagOriginStone": { - "template": "InfrastMfgOriginStoneFlag.png", - "roi": [ - 1000, - 0, - 280, - 720 - ] - }, - "InfrastFlagChip": { - "template": "InfrastMfgChipFlag.png", - "roi": [ - 1000, - 0, - 280, - 720 - ] - }, - "InfrastFlagMoney": { - "template": "InfrastTradeMoneyFlag.png", - "roi": [ - 900, - 500, - 380, - 220 - ] - }, - "InfrastFlagSyntheticJade": { - "template": "InfrastTradeSyntheticJadeFlag.png", - "roi": [ - 900, - 500, - 380, - 220 - ] - }, - "InfrastAddOperatorMfgGentle": { - "template": "AddOperatorMfgGentle.png", - "templThreshold": 0.8, - "roi": [ - 200, - 500, - 500, - 220 - ], - "postDelay": 1500 - }, - "InfrastAddOperatorMfgAggressive": { - "template": "AddOperatorMfgAggressive.png", - "templThreshold": 0.8, - "roi": [ - 200, - 500, - 500, - 100 - ], - "rectMove": [ - 5, - 50, - 80, - 80 - ], - "postDelay": 1500 - }, - "InfrastAddOperatorTradeGentle": { - "template": "AddOperatorTradeGentle.png", - "templThreshold": 0.8, - "roi": [ - 200, - 500, - 500, - 220 - ], - "postDelay": 1500 - }, - "InfrastAddOperatorTradeAggressive": { - "template": "AddOperatorTradeAggressive.png", - "templThreshold": 0.8, - "roi": [ - 200, - 500, - 500, - 100 - ], - "rectMove": [ - 5, - 50, - 80, - 80 - ], - "postDelay": 1500 - }, - "InfrastAddOperatorReceptionGentle": { - "template": "AddOperatorReceptionGentle.png", - "templThreshold": 0.8, - "roi": [ - 0, - 0, - 300, - 720 - ], - "postDelay": 1500 - }, - "InfrastAddOperatorReceptionAggressive": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 30, - 200, - 200, - 300 - ], - "postDelay": 1500 - }, - "InfrastOperSelected": { - "template": "empty.png", - "templThreshold": 8000, - "templThreshold_Doc": "这个任务中作为符合range的像素点数量阈值", - "maskRange": [ - 95, - 105 - ], - "rectMove": [ - 0, - -230, - 74, - 283 - ] - }, - "InfrastOperOnShift": { - "template": "OnShift.png", - "templThreshold": 0.8, - "rectMove": [ - 0, - -95, - 70, - 50 - ] - }, - "InfrastClueVacancyNo1": { - "template": "ClueVacancyNo1.png", - "cache": false, - "templThreshold": 0.75, - "roi": [ - 0, - 100, - 500, - 250 - ], - "postDelay": 500 - }, - "InfrastClueVacancyNo2": { - "template": "ClueVacancyNo2.png", - "cache": false, - "templThreshold": 0.75, - "roi": [ - 200, - 200, - 500, - 250 - ], - "postDelay": 500 - }, - "InfrastClueVacancyNo3": { - "template": "ClueVacancyNo3.png", - "cache": false, - "templThreshold": 0.75, - "roi": [ - 400, - 100, - 500, - 250 - ], - "postDelay": 500 - }, - "InfrastClueVacancyNo4": { - "template": "ClueVacancyNo4.png", - "cache": false, - "templThreshold": 0.75, - "roi": [ - 650, - 150, - 500, - 250 - ], - "postDelay": 500 - }, - "InfrastClueVacancyNo5": { - "template": "ClueVacancyNo5.png", - "cache": false, - "templThreshold": 0.75, - "roi": [ - 300, - 420, - 500, - 250 - ], - "postDelay": 500 - }, - "InfrastClueVacancyNo6": { - "template": "ClueVacancyNo6.png", - "cache": false, - "templThreshold": 0.75, - "roi": [ - 500, - 350, - 500, - 250 - ], - "postDelay": 500 - }, - "InfrastClueVacancyNo7": { - "template": "ClueVacancyNo7.png", - "cache": false, - "templThreshold": 0.75, - "roi": [ - 50, - 350, - 500, - 250 - ], - "postDelay": 500 - }, - "InfrastClue": { - "template": "Clue.png", - "maskRange": [ - 1, - 255 - ], - "roi": [ - 800, - 0, - 480, - 720 - ] - }, - "InfrastClueSelfMaybeFull": { - "Doc": "有一种情况是,自己的线索满了,但是却没有new的标记", - "roi": [ - 1110, - 89, - 170, - 177 - ], - "action": "ClickSelf", - "next": [ - "InfrastClueSelfFull", - "CloseCluePage" - ] - }, - "InfrastClueSelfFull": { - "algorithm": "OcrDetect", - "text": [ - "已达线索上限", - "无法获取新的线索", - "上限", - "无法" - ], - "roi": [ - 286, - 550, - 366, - 130 - ], - "next": [ - "CloseCluePageThenSendClue" - ] - }, - "BackToReceptionMain": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 280, - 96, - 130, - 32 - ], - "postDelay": 2000 - }, - "CloseCluePageThenSendClue": { - "template": "CloseCluePage.png", - "action": "ClickSelf", - "roi": [ - 930, - 50, - 120, - 120 - ], - "next": [ - "CloseCluePageThenSendClue", - "SendClues" - ] - }, - "InfrastClueSelfNew": { - "template": "ClueNew.png", - "action": "ClickSelf", - "roi": [ - 1150, - 100, - 130, - 80 - ], - "rectMove": [ - -45, - 15, - 60, - 60 - ], - "next": [ - "GetSelfClue" - ] - }, - "GetSelfClue": { - "template": "GetClue1.png", - "action": "ClickSelf", - "roi": [ - 680, - 540, - 250, - 80 - ], - "next": [ - "InfrastClueFriendNew", - "InfrastClueSelfFull", - "CloseCluePage", - "ReceptionFlag" - ] - }, - "InfrastClueFriendNew": { - "template": "ClueNew.png", - "action": "ClickSelf", - "roi": [ - 1150, - 220, - 130, - 80 - ], - "rectMove": [ - -45, - 15, - 60, - 60 - ], - "next": [ - "GetFriendClue" - ] - }, - "GetFriendClue": { - "template": "GetClue2.png", - "action": "ClickSelf", - "roi": [ - 800, - 600, - 480, - 120 - ], - "next": [ - "InfrastClueSelfMaybeFull", - "ReceptionFlag" - ] - }, - "CloseCluePage": { - "template": "CloseCluePage.png", - "action": "ClickSelf", - "roi": [ - 930, - 50, - 120, - 120 - ], - "next": [ - "CloseCluePage", - "SendClueFlag", - "InfrastClueFriendNew", - "ReceptionFlag" - ] - }, - "SendClueFlag": { - "action": "DoNothing", - "Doc": "这里识别的是自己的线索的new:如果获取完自己的线索、再获取完好友送的线索,自己的线索new还亮着,则说明自己的线索没获取成功,即线索满了", - "next": [ - "SendClues" - ], - "roi": [ - 1150, - 100, - 130, - 80 - ], - "template": "ClueNew.png" - }, - "UnlockClues": { - "template": "UnlockClues.png", - "action": "ClickSelf", - "cache": false, - "templThreshold": 0.9, - "roi": [ - 200, - 600, - 700, - 120 - ], - "postDelay": 5000, - "next": [ - "UnlockCluesIsFake", - "InfrastBottomLeftTab" - ] - }, - "UnlockCluesIsFake": { - "Doc": "点了一次解锁了还在这个界面,说明是识别错了", - "cache": false, - "template": "UnlockClues.png", - "action": "ClickSelf", - "templThreshold": 0.9, - "roi": [ - 200, - 600, - 700, - 120 - ] - }, - "ReceptionFlag": { - "action": "DoNothing", - "roi": [ - 350, - 0, - 200, - 100 - ] - }, - "EndOfClueExchangeBegin": { - "algorithm": "JustReturn", - "action": "DoNothing", - "postDelay": 1000, - "next": [ - "EndOfClueExchange", - "ReceptionFlag" - ] - }, - "EndOfClueExchange": { - "cache": false, - "templThreshold": 0.7, - "roi": [ - 0, - 0, - 400, - 200 - ], - "next": [ - "EndOfClueExchangeClose" - ] - }, - "EndOfClueExchangeClose": { - "template": "Return.png", - "templThreshold": 0.7, - "action": "ClickSelf", - "roi": [ - 0, - 0, - 180, - 80 - ], - "next": [ - "ReceptionFlag" - ], - "postDelay": 3000 - }, - "SendClues": { - "action": "ClickSelf", - "roi": [ - 1157, - 346, - 84, - 81 - ], - "maskRange": [ - 1, - 255 - ], - "postDelay": 1000, - "next": [ - "SelectClue", - "CloseSendClue" - ] - }, - "SelectClue": { - "action": "ClickSelf", - "roi": [ - 2, - 133, - 418, - 196 - ], - "maskRange": [ - 1, - 255 - ], - "maxTimes": 3, - "exceededNext": [ - "CloseSendClue" - ], - "next": [ - "ClueGiveTo1st", - "ClueGiveTo2nd", - "ClueGiveTo3rd", - "ClueGiveTo4th", - "ClueGiveToNextPage", - "ClueGiveTo1stConfirm" - ] - }, - "ClueGiveTo1st": { - "template": "ClusCanBeSent.png", - "action": "DoNothing", - "cache": false, - "maskRange": [ - 1, - 255 - ], - "roi": [ - 830, - 70, - 320, - 100 - ], - "next": [ - "ClueGiveTo1stConfirm" - ] - }, - "ClueGiveTo1stConfirm": { - "template": "SendClueConfirm.png", - "action": "ClickSelf", - "roi": [ - 1150, - 50, - 100, - 160 - ], - "next": [ - "ClueGiveTo1stConfirm@Loading", - "SelectClue", - "CloseSendClue" - ] - }, - "ClueGiveTo2nd": { - "template": "ClusCanBeSent.png", - "action": "DoNothing", - "cache": false, - "maskRange": [ - 1, - 255 - ], - "roi": [ - 830, - 220, - 320, - 100 - ], - "next": [ - "ClueGiveTo2ndConfirm" - ] - }, - "ClueGiveTo2ndConfirm": { - "template": "SendClueConfirm.png", - "action": "ClickSelf", - "roi": [ - 1150, - 200, - 100, - 160 - ], - "next": [ - "ClueGiveTo2ndConfirm@Loading", - "SelectClue", - "CloseSendClue" - ] - }, - "ClueGiveTo3rd": { - "template": "ClusCanBeSent.png", - "action": "DoNothing", - "cache": false, - "maskRange": [ - 1, - 255 - ], - "roi": [ - 830, - 370, - 320, - 100 - ], - "next": [ - "ClueGiveTo3rdConfirm" - ] - }, - "ClueGiveTo3rdConfirm": { - "template": "SendClueConfirm.png", - "action": "ClickSelf", - "roi": [ - 1150, - 350, - 100, - 160 - ], - "next": [ - "ClueGiveTo3rdConfirm@Loading", - "SelectClue", - "CloseSendClue" - ] - }, - "ClueGiveTo4th": { - "template": "ClusCanBeSent.png", - "action": "DoNothing", - "cache": false, - "maskRange": [ - 1, - 255 - ], - "roi": [ - 830, - 520, - 320, - 100 - ], - "next": [ - "ClueGiveTo4thConfirm" - ] - }, - "ClueGiveTo4thConfirm": { - "template": "SendClueConfirm.png", - "action": "ClickSelf", - "roi": [ - 1150, - 500, - 100, - 160 - ], - "next": [ - "ClueGiveTo4thConfirm@Loading", - "SelectClue", - "CloseSendClue" - ] - }, - "CloseSendClue": { - "action": "ClickSelf", - "roi": [ - 1225, - 16, - 41, - 41 - ], - "next": [ - "InfrastClueSelfNew", - "InfrastClueFriendNew", - "ReceptionFlag" - ] - }, - "ClueGiveToNextPage": { - "action": "ClickSelf", - "templThreshold": 0.95, - "roi": [ - 1184, - 655, - 50, - 48 - ], - "maskRange": [ - 1, - 255 - ], - "next": [ - "ClueGiveTo1st", - "ClueGiveTo2nd", - "ClueGiveTo3rd", - "ClueGiveTo4th", - "ClueGiveToNextPage", - "ClueGiveTo1stConfirm" - ] - }, - "InfrastOperListTabSkillUnClicked": { - "action": "ClickSelf", - "roi": [ - 818, - 0, - 128, - 115 - ], - "templThreshold": 0.7, - "postDelay": 1500 - }, - "InfrastOperListTabWorkStatusUnClicked": { - "action": "ClickSelf", - "roi": [ - 719, - 0, - 158, - 119 - ], - "templThreshold": 0.7, - "postDelay": 1500 - }, - "InfrastOperListTabMoodDoubleClick": { - "action": "ClickSelf", - "roi": [ - 900, - 0, - 131, - 117 - ], - "templThreshold": 0.7, - "maxTimes": 2, - "next": [ - "InfrastOperListTabMoodDoubleClick" - ] - }, - "InfrastOperListTabMoodDoubleClickWhenUnclicked": { - "action": "ClickSelf", - "roi": [ - 900, - 0, - 131, - 117 - ], - "templThreshold": 0.7, - "next": [ - "InfrastOperListTabMoodClick" - ] - }, - "InfrastOperListTabMoodClick": { - "template": "InfrastOperListTabMoodDoubleClick.png", - "action": "ClickSelf", - "roi": [ - 900, - 0, - 131, - 117 - ], - "templThreshold": 0.7 - }, - "BattleStageName": { - "algorithm": "OcrDetect", - "cache": false, - "text": [], - "ocrReplace": [ - [ - "旋涡", - "漩涡" - ] - ], - "roi": [ - 250, - 435, - 800, - 100 - ] - }, - "BattleSupportUnitFormation": { - "action": "ClickSelf", - "roi": [ - 995, - 248, - 244, - 167 - ], - "next": [ - "BattleSupportUnitFormationSelect", - "BattleSupportUnitFormation" - ] - }, - "BattleSupportUnitFormationSelect": { - "action": "ClickSelf", - "roi": [ - 115, - 595, - 1165, - 75 - ], - "next": [ - "BattleSupportUnitFormationSelect", - "Stop" - ] - }, - "BattleQuickFormation": { - "action": "ClickSelf", - "roi": [ - 816, - 0, - 404, - 149 - ], - "postDelay": 1000, - "next": [ - "BattleQuickFormationClear", - "BattleQuickFormation" - ] - }, - "BattleQuickFormationClear": { - "action": "ClickSelf", - "roi": [ - 334, - 605, - 286, - 115 - ], - "postDelay": 500, - "next": [ - "BattleQuickFormationExpandRole", - "Stop" - ] - }, - "BattleQuickFormationExpandRole": { - "action": "ClickSelf", - "roi": [ - 1152, - 0, - 128, - 138 - ], - "postDelay": 500 - }, - "BattleQuickFormationRole": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "roi": [ - 1155, - 41, - 125, - 679 - ], - "templThreshold": 0.7, - "maskRange": [ - 100, - 255 - ], - "postDelay": 500 - }, - "BattleQuickFormationRole-All": { - "baseTask": "BattleQuickFormationRole", - "roi": [ - 1163, - 0, - 117, - 133 - ] - }, - "BattleQuickFormationRole-Pioneer": { - "baseTask": "BattleQuickFormationRole" - }, - "BattleQuickFormationRole-Warrior": { - "baseTask": "BattleQuickFormationRole" - }, - "BattleQuickFormationRole-Tank": { - "baseTask": "BattleQuickFormationRole" - }, - "BattleQuickFormationRole-Caster": { - "baseTask": "BattleQuickFormationRole" - }, - "BattleQuickFormationRole-Medic": { - "baseTask": "BattleQuickFormationRole" - }, - "BattleQuickFormationRole-Sniper": { - "baseTask": "BattleQuickFormationRole" - }, - "BattleQuickFormationRole-Special": { - "baseTask": "BattleQuickFormationRole" - }, - "BattleQuickFormationRole-Support": { - "baseTask": "BattleQuickFormationRole" - }, - "BattleQuickFormation-OperNameFlag": { - "templThreshold": 0.92, - "roi": [ - 370, - 250, - 715, - 420 - ] - }, - "BattleQuickFormation-OperNameFlag-SpecialFocus": { - "templThreshold": 0.8, - "roi": [ - 370, - 250, - 715, - 420 - ], - "maskRange": [ - 1, - 250 - ] - }, - "BattleQuickFormationOCR": { - "algorithm": "OcrDetect", - "fullMatch": true, - "text": [], - "roi": [ - 20, - -8, - 107, - 20 - ], - "postDelay": 100 - }, - "BattleQuickFormationSkill1": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 15, - 385, - 80, - 100 - ] - }, - "BattleQuickFormationSkill2": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 15, - 560, - 80, - 30 - ] - }, - "BattleQuickFormationSkill3": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 15, - 710, - 80, - 10 - ] - }, - "BattleQuickFormationConfirm": { - "action": "ClickSelf", - "roi": [ - 880, - 608, - 400, - 112 - ], - "postDelay": 1000 - }, - "BattleStartPre": { - "algorithm": "OcrDetect", - "text": [ - "开始行动", - "开始突袭" - ], - "cache": false, - "roi": [ - 1000, - 600, - 280, - 120 - ], - "action": "ClickSelf", - "postDelay": 1000 - }, - "BattleStart": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "roi": [ - 989, - 318, - 232, - 374 - ], - "postDelay": 3000, - "next": [ - "BattleOfficiallyBegin", - "SkipThePreBattlePlot", - "Stop" - ] - }, - "SkipThePreBattlePlot": { - "action": "ClickSelf", - "roi": [ - 1096, - 0, - 182, - 131 - ], - "next": [ - "SkipThePreBattlePlotConfirm", - "SkipThePreBattlePlot" - ], - "maskRange": [ - 100, - 255 - ] - }, - "SkipThePreBattlePlotConfirm": { - "action": "ClickSelf", - "roi": [ - 721, - 390, - 149, - 144 - ], - "maskRange": [ - 100, - 255 - ] - }, - "BattleStartNormal": { - "baseTask": "BattleStart" - }, - "BattleStartRaid": { - "baseTask": "BattleStart" - }, - "BattleStartExercise": { - "baseTask": "BattleStart" - }, - "BattleStartSimulation": { - "action": "ClickSelf", - "roi": [ - 417, - 567, - 444, - 153 - ], - "postDelay": 2000 - }, - "BattleOperName": { - "algorithm": "OcrDetect", - "text": [], - "fullMatch": true, - "roi": [ - 0, - 182, - 160, - 30 - ] - }, - "BattleOfficiallyBegin": { - "action": "DoNothing", - "roi": [ - 1165, - 20, - 65, - 65 - ], - "maskRange": [ - 100, - 255 - ], - "templThreshold": 0.9 - }, - "BattleSpeedUp": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 1070, - 20, - 60, - 60 - ] - }, - "BattlePause": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 1170, - 20, - 60, - 60 - ], - "postDelay": 100 - }, - "BattleCancelSelection": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 150, - 0, - 1000, - 60 - ], - "postDelay": 500 - }, - "BattleAvatarData": { - "template": "empty.png", - "templThreshold": 0.6 - }, - "DiceAvatarMatch": { - "template": "empty.png", - "templThreshold": 0.8 - }, - "BattleKillsFlag": { - "roi": [ - 150, - 0, - 600, - 60 - ], - "maskRange": [ - 1, - 255 - ], - "templThreshold": 0.6 - }, - "BattleKills": { - "algorithm": "OcrDetect", - "text": [], - "roi": [ - 50, - 0, - 100, - 40 - ] - }, - "BattleCostData": { - "algorithm": "OcrDetect", - "text": [], - "roi": [ - 1196, - 494, - 83, - 44 - ] - }, - "BattleAutoSkillFlag": { - "template": "BattleSkillReady.png", - "cache": false, - "rectMove": [ - -40, - -150, - 80, - 100 - ], - "maskRange": [ - 1, - 255 - ] - }, - "BattleSkillReadyOnClick": { - "roi": [ - 748, - 414, - 210, - 118 - ], - "templThreshold": 0.7, - "cache": false, - "action": "ClickSelf", - "rectMove": [ - 0, - -110, - 90, - 90 - ], - "postDelay": 300 - }, - "BattleSkillStopOnClick": { - "roi": [ - 748, - 414, - 210, - 118 - ], - "templThreshold": 0.7, - "cache": false, - "action": "ClickSelf", - "rectMove": [ - 0, - -110, - 90, - 90 - ], - "postDelay": 300 - }, - "BattleUseOper": { - "algorithm": "JustReturn", - "preDelay": 100, - "postDelay": 200, - "Doc": "pre 是从点击干员,到干员信息弹出来等待的时间;post 是干员上场,到设置朝向之间等待的时间" - }, - "BattleSwipeOper": { - "algorithm": "JustReturn", - "preDelay": 400, - "postDelay": 150, - "Doc": "pre 是将干员滑动到场上的 duration 系数;post 是设置干员朝向滑动的 duration", - "specialParams": [ - 400, - 2, - 0 - ], - "specialParamsDoc": [ - "设置朝向时的滑动距离", - "滑动初速度(平均速度是固定的,初速度快末速度慢相当于一直减速)", - "滑动末速度" - ] - }, - "BattleOpersFlag": { - "templThreshold": 0.85, - "roi": [ - 0, - 588, - 1280, - 18 - ], - "maskRange": [ - 1, - 255 - ] - }, - "BattleOperClickRange": { - "template": "empty.png", - "rectMove": [ - -45, - 6, - 75, - 120 - ] - }, - "BattleOperAvailable": { - "template": "empty.png", - "specialParams": [ - 100 - ], - "specialParams_Doc": "用于做V通道平均值阈值", - "rectMove": [ - 0, - 0, - 10, - 10 - ] - }, - "BattleOperCooling": { - "template": "empty.png", - "specialParams": [ - 1500 - ], - "specialParams_Doc": "这个任务中作为符合range的像素点数量阈值", - "rectMove": [ - -45, - 6, - 75, - 120 - ], - "maskRange_Doc": "拿来做H通道的范围", - "maskRange": [ - 0, - 10 - ], - "specificRect_Doc": "拿来做S、V通道的范围", - "specificRect": [ - 200, - 255, - 0, - 100 - ] - }, - "BattleOperRoleRange": { - "template": "empty.png", - "rectMove": [ - -41, - 6, - 31, - 25 - ] - }, - "BattleOperRoleCaster": { - "templThreshold": 0.75 - }, - "BattleOperRoleMedic": { - "templThreshold": 0.75 - }, - "BattleOperRolePioneer": { - "templThreshold": 0.75 - }, - "BattleOperRoleSniper": { - "templThreshold": 0.75 - }, - "BattleOperRoleSpecial": { - "templThreshold": 0.75 - }, - "BattleOperRoleSupport": { - "templThreshold": 0.75 - }, - "BattleOperRoleTank": { - "templThreshold": 0.75 - }, - "BattleOperRoleWarrior": { - "templThreshold": 0.75 - }, - "BattleOperRoleDrone": { - "templThreshold": 0.75 - }, - "BattleOperCostRange": { - "algorithm": "Hash", - "hash": [], - "rectMove": [ - -10, - 12, - 30, - 17 - ] - }, - "BattleOperCostChannelH": { - "algorithm": "Hash", - "hash": [], - "maskRange": [ - 0, - 255 - ] - }, - "BattleOperCostChannelS": { - "algorithm": "Hash", - "hash": [], - "maskRange": [ - 0, - 50 - ] - }, - "BattleOperCostChannelV": { - "algorithm": "Hash", - "hash": [], - "maskRange": [ - 80, - 255 - ] - }, - "BattleOperCost0": { - "algorithm": "Hash", - "hash": [ - "1ff83ffc3c3e780e700ee007e007e007e007e007e007f00f780e7c1e3ffc1ff8" - ] - }, - "BattleOperCost1": { - "algorithm": "Hash", - "hash": [ - "00ff03ff1fff7fffffffff3f003f003f003f003f003f003f003f003f003f003f" - ] - }, - "BattleOperCost2": { - "algorithm": "Hash", - "hash": [ - "3ffe7ffefc3ff81fe01f001f001f003e007e01fc07f81fe03fc07e00ffffffff" - ] - }, - "BattleOperCost3": { - "algorithm": "Hash", - "hash": [ - "3ffe7ffffc3ff81fe01f001f03fe07fc07fe003f001fe01fe01ff83fffff7ffe", - "07f01ffe700e700700070007000c0078003c000700070007e007700e1e7e0ff0" - ] - }, - "BattleOperCost4": { - "algorithm": "Hash", - "hash": [ - "007c00fc01fc03fc03fc0fbc1f3c3f3c7e3cfc3cffffffffffff003c003c003c" - ] - }, - "BattleOperCost5": { - "algorithm": "Hash", - "hash": [ - "3ffe7c007c0078007ff87ffe7ffe7c3f781f0007e007f81ffc1fffff7ffe3ffc", - "3ffe38003800780070007ff87ffe703e000f000fc00ff81ffc3f7ffe3ffc07e0" - ] - }, - "BattleOperCost6": { - "algorithm": "Hash", - "hash": [ - "03c003800f001f003e003ff87ffc7c3ef00ee00fe007e00ff00e7c3e3ffc1ff8" - ] - }, - "BattleOperCost7": { - "algorithm": "Hash", - "hash": [ - "ffffffff003e007e007c00f800f801f001f003c003c00f801f001f003e003e00" - ] - }, - "BattleOperCost8": { - "algorithm": "Hash", - "hash": [ - "3ffc7ffe7c3e700e700e7c7e7ffc3ffc7ffefefef00fe00ff00ff03ffffe7ffe" - ] - }, - "BattleOperCost9": { - "algorithm": "Hash", - "hash": [ - "3ffc7ffe7c3ff00ff007f007f00ffc0f7fff3ffe1ffe00fc01f803f00ff00fc0" - ] - }, - "BattleHpFlag": { - "roi": [ - 400, - 0, - 650, - 60 - ], - "rectMove": [ - 40, - 0, - 100, - 35 - ] - }, - "BattleHpFlag2": { - "roi": [ - 400, - 0, - 650, - 60 - ], - "rectMove": [ - 40, - 0, - 100, - 35 - ] - }, - "BattleHpChannelH": { - "algorithm": "Hash", - "hash": [], - "maskRange": [ - 0, - 1 - ] - }, - "BattleHpChannelS": { - "algorithm": "Hash", - "hash": [], - "maskRange": [ - 120, - 150 - ] - }, - "BattleHpChannelV": { - "algorithm": "Hash", - "hash": [], - "maskRange": [ - 170, - 255 - ] - }, - "BattleHp0": { - "algorithm": "Hash", - "hash": [ - "03e007fc3c0638066003400140014001c001400140016003600338061e1c07f8" - ] - }, - "BattleHp1": { - "algorithm": "Hash", - "hash": [ - "003f01ff1ffffe0f000700070007000700070007000700070007000700070007" - ] - }, - "BattleHp2": { - "algorithm": "Hash", - "hash": [ - "07e03c3c2007c0030003000300030007001c003800e003c004003800f800ffff" - ] - }, - "BattleHp3": { - "algorithm": "Hash", - "hash": [ - "0ff07e78700ee00700070006000e03f80078000e000700078007e00e703e1ff8" - ] - }, - "BattleHp4": { - "algorithm": "Hash", - "hash": [ - "0010003c007c007c01dc039c061c0c1c381c301c783effff001c001c001c001c" - ] - }, - "BattleHp5": { - "algorithm": "Hash", - "hash": [ - "1ff87ffe7000600060006000fff0f038e00e0006000700078007e00e703e1ff0" - ] - }, - "BattleHp6": { - "algorithm": "Hash", - "hash": [ - "018002000e000c0010003fe07808f004c006800380018003c007e006300c1ff0" - ] - }, - "BattleHp7": { - "algorithm": "Hash", - "hash": [ - "7fffffff00070006000e003800380070004001c0018003800e000e001c001000" - ] - }, - "BattleHp8": { - "algorithm": "Hash", - "hash": [ - "0ff01038600ee006e006600670081ff01c7860068007800180018007600e1ff8" - ] - }, - "BattleHp9": { - "algorithm": "Hash", - "hash": [ - "07e01e78700e6006e007e007e0076006700e1ffe011800700060008001800700" - ] - }, - "BattleSkillReady": { - "roi": [ - 0, - 0, - 1280, - 580 - ], - "maskRange": [ - 1, - 255 - ], - "rectMove": [ - 0, - 100, - 40, - 40 - ] - }, - "BattleUseSkillJustClick": { - "algorithm": "JustReturn", - "postDelay": 100, - "action": "ClickRect", - "specificRect": [ - 850, - 390, - 50, - 40 - ] - }, - "BattleOperRetreat": { - "Doc": "这个按钮图标在不同关卡及位置中是有畸变的,模板匹配结果很不准,不建议用这个Task", - "roi": [ - 554, - 146, - 119, - 118 - ], - "templThreshold": 0.7, - "cache": false, - "action": "ClickSelf", - "maskRange": [ - 100, - 255 - ], - "postDelay": 300 - }, - "BattleOperRetreatJustClick": { - "algorithm": "JustReturn", - "preDelay": 200, - "postDelay": 300, - "action": "ClickRect", - "specificRect": [ - 580, - 190, - 40, - 30 - ] - }, - "StageDrops-StageName": { - "algorithm": "OcrDetect", - "action": "DoNothing", - "text": [], - "ocrReplace": [ - [ - "—", - "-" - ], - [ - "^.+-EX-?\\d+$", - "_INVALID_" - ], - [ - "^.+-S-?\\d+$", - "_INVALID_" - ], - [ - "^.+-MO-?\\d+$", - "_INVALID_" - ] - ], - "roi": [ - 140, - 60, - 200, - 55 - ] - }, - "StageDrops-BaseLine": { - "template": "empty.png", - "roi": [ - 0, - 636, - 1280, - 2 - ], - "templThreshold": 17, - "templThreshold_Doc": "这里用来作为基线间距阈值", - "specialParams": [ - 100 - ], - "specialParams_Doc": "基线长度阈值(不小于100)", - "maskRange": [ - 70, - 255 - ], - "rectMove": [ - 181, - 40, - 25, - 0 - ], - "rectMove_Doc": "作为hsv阈值使用" - }, - "StageDrops-Item": { - "template": "empty.png", - "templThreshold": 0.65, - "roi": [ - 0, - -130, - 138, - 130 - ], - "maskRange": [ - 1, - 255 - ] - }, - "StageDrops-DropType-ExpAndLMB": { - "roi": [ - 0, - 2, - 0, - 25 - ], - "Doc": "roi 只用到了 y 和 height" - }, - "StageDrops-DropType-Normal": { - "roi": [ - 0, - 2, - 0, - 25 - ], - "Doc": "roi 只用到了 y 和 height" - }, - "StageDrops-DropType-Extra": { - "roi": [ - 0, - 2, - 0, - 25 - ], - "Doc": "roi 只用到了 y 和 height" - }, - "StageDrops-DropType-Furniture": { - "roi": [ - 0, - 2, - 0, - 25 - ], - "Doc": "roi 只用到了 y 和 height" - }, - "StageDrops-DropType-Special": { - "roi": [ - 0, - 2, - 0, - 25 - ], - "Doc": "roi 只用到了 y 和 height" - }, - "StageDrops-DropType-Sanity": { - "roi": [ - 0, - 2, - 0, - 25 - ], - "Doc": "roi 只用到了 y 和 height" - }, - "StageDrops-DropType-Reward": { - "roi": [ - 0, - 2, - 0, - 25 - ], - "Doc": "roi 只用到了 y 和 height" - }, - "StageDrops-Quantity": { - "template": "empty.png", - "templThreshold": 3, - "templThreshold_Doc": "这里用来作为字间距阈值", - "roi": [ - 62, - 90, - 43, - 22 - ], - "maskRange": [ - 150, - 255 - ] - }, - "NumberOcrReplace": { - "algorithm": "OcrDetect", - "text": [], - "ocrReplace": [ - [ - "o", - "0" - ], - [ - "O", - "0" - ], - [ - "I", - "1" - ], - [ - "l", - "1" - ], - [ - "芳", - "万" - ], - [ - "方", - "万" - ], - [ - "萬", - "万" - ], - [ - "만", - "万" - ], - [ - "億", - "亿" - ], - [ - "억", - "亿" - ] - ] - }, - "StageDrops-Difficulty-Tough": { - "templThreshold": 0.7, - "roi": [ - 0, - 0, - 220, - 220 - ] - }, - "StageDrops-Difficulty-Normal": { - "templThreshold": 0.7, - "roi": [ - 0, - 0, - 220, - 220 - ] - }, - "StageDrops-Difficulty-Normal2": { - "templThreshold": 0.7, - "roi": [ - 0, - 0, - 220, - 220 - ] - }, - "StageDrops-Stars-3": { - "templThreshold": 0.8, - "roi": [ - 50, - 270, - 250, - 100 - ] - }, - "StageDrops-Stars-2": { - "templThreshold": 0.8, - "roi": [ - 50, - 270, - 250, - 100 - ] - }, - "DepotMatchData": { - "template": "empty.png", - "templThreshold": 0.6, - "roi": [ - 0, - 0, - 1060, - 596 - ], - "roi_Doc": "作为截图的缩放尺寸使用", - "maskRange": [ - 1, - 255 - ] - }, - "DepotBaseRect": { - "template": "empty.png", - "roi": [ - 0, - 90, - 219, - 150 - ] - }, - "DepotQuantity": { - "template": "empty.png", - "templThreshold": 5, - "templThreshold_Doc": "这里用来作为字间距阈值", - "specialParams": [ - 120 - ], - "specialParams_Doc": "背景色亮度值上限", - "roi": [ - 36, - 69, - 47, - 20 - ], - "maskRange_Doc": "拿来做H通道的范围", - "maskRange": [ - 0, - 180 - ], - "specificRect_Doc": "拿来做S、V通道的范围", - "specificRect": [ - 0, - 35, - 125, - 255 - ] - }, - "DepotBegin": { - "algorithm": "JustReturn", - "action": "DoNothing", - "next": [ - "DepotEnter", - "DepotMaterialTab", - "DepotMaterialTabClicked" - ] - }, - "DepotEnter": { - "action": "ClickSelf", - "roi": [ - 1109, - 560, - 171, - 160 - ], - "next": [ - "DepotMaterialTab" - ] - }, - "DepotMaterialTab": { - "action": "ClickSelf", - "roi": [ - 1026, - 0, - 254, - 138 - ], - "next": [ - "DepotMaterialTabClicked" - ] - }, - "DepotMaterialTabClicked": { - "action": "DoNothing", - "roi": [ - 1026, - 0, - 254, - 138 - ] - }, - "InfrastOperListSlowlySwipeToTheRight": { - "baseTask": "SlowlySwipeToTheRight", - "specificRect": [ - 1000, - 350, - 20, - 20 - ], - "rectMove": [ - 400, - 350, - 20, - 20 - ] - }, - "InfrastOperListSwipeToTheLeft": { - "baseTask": "SwipeToTheLeft", - "specificRect": [ - 400, - 350, - 20, - 20 - ], - "rectMove": [ - 1150, - 350, - 20, - 20 - ] - }, - "BattleFormationOperListSlowlySwipeToTheRight": { - "baseTask": "SlowlySwipeToTheRight", - "specificRect": [ - 1100, - 350, - 20, - 20 - ], - "rectMove": [ - 400, - 350, - 20, - 20 - ] - }, - "Roguelike@Abandon": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "roi": [ - 1076, - 243, - 177, - 179 - ], - "next": [ - "Roguelike@AbandonConfirm", - "Roguelike@Abandon" - ] - }, - "Roguelike@AbandonConfirm": { - "action": "ClickSelf", - "roi": [ - 720, - 413, - 249, - 168 - ], - "next": [ - "Roguelike@MissionFailedFlag2", - "Roguelike@StartExplore" - ] - }, - "Roguelike@Begin": { - "algorithm": "JustReturn", - "next": [ - "Roguelike@ChooseDifficulty", - "Roguelike@StartExplore", - "Roguelike@NextLevel#next", - "Roguelike@GetDrops#next", - "Roguelike@NextLevel", - "Roguelike@ExitThenAbandon", - "Roguelike@Abandon", - "Roguelike@TodoEnter", - "Roguelike@Continue", - "Roguelike@ReturnTo", - "Roguelike@ReturnToConfirm", - "Roguelike@StartUpThemes#next", - "Roguelike@FromStageSN" - ] - }, - "Roguelike@ChooseDifficulty": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "roi": [ - 1061, - 373, - 208, - 71 - ], - "next": [ - "Roguelike@StartExplore" - ] - }, - "Roguelike@ChooseOper": { - "Doc": "本任务注册了插件 RoguelikeRecruitTaskPlugin", - "algorithm": "JustReturn", - "action": "DoNothing" - }, - "Roguelike@ChooseOperConfirm": { - "action": "ClickSelf", - "cache": false, - "roi": [ - 1016, - 602, - 264, - 118 - ], - "next": [ - "Roguelike@RecruitSkip", - "Roguelike@TraderRandomShopping", - "Roguelike@StageEncounterGiveUpRecruitConfirm", - "Roguelike@ChooseOperConfirm", - "Roguelike@RecruitWithoutButton" - ] - }, - "Roguelike@ChooseOperFlag": { - "template": "Roguelike@ChooseOperConfirm.png", - "action": "DoNothing", - "roi": [ - 1016, - 602, - 264, - 118 - ], - "next": [ - "Roguelike@RecruitCloseGuide", - "Roguelike@ChooseOper" - ] - }, - "Roguelike@ClickToDrops": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 600, - 600, - 50, - 50 - ], - "postDelay": 500, - "next": [ - "Roguelike@NextLevel#next", - "Roguelike@ChooseOperFlag", - "Roguelike@StageEncounterSpecialClose", - "Roguelike@TraderRandomShopping", - "Roguelike@StageTraderLeave", - "Roguelike@DropsFlag", - "Roguelike@StartUpThemes#next", - "Roguelike@ClickToDrops" - ] - }, - "Roguelike@ClickToStartPoint": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 600, - 600, - 50, - 50 - ], - "postDelay": 1000, - "next": [ - "Roguelike@StartExplore", - "Roguelike@NextLevel#next", - "Roguelike@GamePass", - "Roguelike@TodoEnter", - "Roguelike@Continue", - "Roguelike@ReturnTo", - "Roguelike@ReturnToConfirm", - "Roguelike@StartUpThemes#next", - "Roguelike@ClickToStartPoint" - ] - }, - "Roguelike@CloseCollection": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 569, - 400, - 140, - 139 - ] - }, - "Roguelike@Continue": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 1032, - 487, - 248, - 215 - ], - "postDelay": 500, - "next": [ - "Roguelike@MissionFailedFlag2", - "Roguelike@ExitThenAbandon" - ] - }, - "Roguelike@DialogSkip": { - "Doc": "月度小队,跳过对话", - "action": "ClickSelf", - "roi": [ - 1106, - 0, - 174, - 139 - ], - "next": [ - "Roguelike@DialogSkip", - "Roguelike@DialogSkipConfirm" - ] - }, - "Roguelike@DialogSkipConfirm": { - "action": "ClickSelf", - "roi": [ - 725, - 409, - 249, - 169 - ] - }, - "Roguelike@DropsFlag": { - "roi": [ - 875, - 601, - 152, - 119 - ] - }, - "Roguelike@EnterAfterRecruit": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "roi": [ - 1078, - 234, - 202, - 239 - ], - "postDelay": 3000, - "next": [ - "Roguelike@NextLevel#next" - ] - }, - "Roguelike@ExitThenAbandon": { - "action": "ClickSelf", - "cache": false, - "roi": [ - 0, - 0, - 320, - 160 - ] - }, - "Roguelike@FormationConfirm": { - "action": "ClickSelf", - "roi": [ - 1015, - 601, - 265, - 119 - ], - "next": [ - "Roguelike@StartAction" - ] - }, - "Roguelike@FromIntegratedStrategies": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "text": [ - "进入主题" - ], - "roi": [ - 1006, - 445, - 246, - 157 - ], - "next": [ - "Roguelike@FromIntegratedStrategies", - "Roguelike@Begin" - ] - }, - "Roguelike@GamePass": { - "Doc": "base_task", - "template": "empty.png", - "cache": false, - "roi": [ - 400, - 0, - 500, - 300 - ], - "next": [ - "Roguelike@ClickToStartPoint" - ] - }, - "Roguelike@GamePassSkip1": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "roi": [ - 1090, - 0, - 190, - 144 - ], - "next": [ - "Roguelike@GamePassSkip1Confirm" - ] - }, - "Roguelike@GamePassSkip1Confirm": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "roi": [ - 715, - 282, - 171, - 155 - ] - }, - "Roguelike@GamePassSkip2": { - "action": "ClickSelf", - "roi": [ - 1109, - 0, - 171, - 138 - ], - "next": [ - "Roguelike@GamePassTheEndConfirm", - "Roguelike@GamePass", - "Roguelike@ClickToStartPoint" - ] - }, - "Roguelike@GamePassTheEndConfirm": { - "action": "ClickSelf", - "roi": [ - 554, - 512, - 177, - 161 - ], - "next": [ - "Roguelike@GamePass" - ] - }, - "Roguelike@GetDrop": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 0, - 471, - 1280, - 157 - ], - "templThreshold": 0.85, - "postDelay": 1000 - }, - "Roguelike@GetDrop1": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Roguelike@GetDrop", - "Doc2": "源石锭,绿色的“拿走”按钮", - "next": [ - "Roguelike@DropsFlag", - "Roguelike@ChooseOperFlag" - ] - }, - "Roguelike@GetDrop2": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Roguelike@GetDrop", - "Doc2": "希望,黄色的“拿走”按钮", - "next": [ - "Roguelike@DropsFlag", - "Roguelike@ChooseOperFlag", - "Roguelike@ClickToDrops" - ] - }, - "Roguelike@GetDrop3": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Roguelike@GetDrop", - "Doc2": "未知的剧目,黄色的“翻开”按钮", - "next": [ - "Roguelike@ChooseOperFlag", - "Roguelike@ClickToDrops" - ] - }, - "Roguelike@GetDropCompleted": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickRect", - "specificRect": [ - 600, - 600, - 50, - 50 - ], - "roi": [ - 488, - 206, - 302, - 289 - ], - "postDelay": 3000, - "next": [ - "Roguelike@GetDrops#next", - "Roguelike@ChooseOperFlag", - "Roguelike@ClickToDrops" - ] - }, - "Roguelike@GetDropLeave": { - "Doc": "base_task", - "Doc2": "不要了,走了(", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 0, - 218, - 1280, - 296 - ], - "next": [ - "Roguelike@GetDropLeaveConfirm", - "Roguelike@DropsFlag", - "Roguelike@ChooseOperFlag" - ] - }, - "Roguelike@GetDropLeaveConfirm": { - "action": "ClickSelf", - "cache": false, - "roi": [ - 0, - 484, - 1280, - 138 - ], - "next": [ - "Roguelike@DropsFlag" - ] - }, - "Roguelike@GetDropRecruit": { - "Doc": "base_task", - "Doc2": "招募券,白色的“招募”按钮", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 0, - 471, - 1280, - 157 - ], - "postDelay": 1000, - "next": [ - "Roguelike@ChooseOperFlag", - "Roguelike@GetDrops#next", - "Roguelike@GetDropCompleted", - "Roguelike@GetDropLeave" - ] - }, - "Roguelike@GetDropSelect": { - "Doc": "base_task", - "Doc2": "“选择”按钮,有可能是招募二选一,也有收藏品二选一", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 0, - 471, - 1280, - 157 - ], - "postDelay": 2000, - "next": [ - "Roguelike@GetDropSelectRecruit", - "Roguelike@GetDropSelectReward", - "Roguelike@ChooseOperFlag", - "Roguelike@GetDropCompleted", - "Roguelike@GetDropSelect" - ] - }, - "Roguelike@GetDropSelectRecruit": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 0, - 420, - 1280, - 175 - ], - "postDelay": 1000, - "templThreshold": 0.85, - "next": [ - "Roguelike@ChooseOperFlag", - "Roguelike@GetDropSelectRecruit" - ] - }, - "Roguelike@GetDropSelectReward": { - "Doc": "base_task", - "template": "empty.png", - "cache": false, - "action": "ClickSelf", - "roi": [ - 0, - 420, - 1280, - 175 - ], - "postDelay": 1000, - "next": [ - "Roguelike@GetDropSelectReward", - "Roguelike@ChooseOperFlag", - "Roguelike@ClickToDrops" - ] - }, - "Roguelike@GetDrops": { - "Doc": "base_sharp_task", - "algorithm": "JustReturn" - }, - "Roguelike@InBattleFlag": { - "template": "BattleOfficiallyBegin.png", - "roi": [ - 1165, - 20, - 65, - 65 - ], - "maskRange": [ - 100, - 255 - ], - "action": "DoNothing", - "postDelay": 5000, - "next": [ - "Roguelike@InBattleFlag", - "Roguelike@MissionCompletedFlag", - "Roguelike@MissionFailedFlag", - "Roguelike@MissionFailedFlag2" - ] - }, - "Roguelike@InitalDrop": { - "Doc": "base_task", - "Doc2": "古堡观光(简单模式)初始会有一个免费道具,点确认。月度小队也有,再多几次", - "template": "empty.png", - "action": "ClickSelf", - "roi": [ - 569, - 583, - 141, - 137 - ], - "next": [ - "Roguelike@SquadDefault", - "Roguelike@InitalDrop" - ] - }, - "Roguelike@IntegratedStrategies": { - "action": "ClickSelf", - "roi": [ - 963, - 599, - 148, - 121 - ], - "next": [ - "Roguelike@IntegratedStrategies", - "Roguelike@FromIntegratedStrategies" - ] - }, - "Roguelike@LastReward": { - "Doc": "base_task", - "Doc2": "你的上一次探索突破了至少两层困难,这一次可以获得更多支援——热水壶", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 174, - 151, - 935, - 533 - ], - "next": [ - "Roguelike@LastRewardConfirm" - ] - }, - "Roguelike@LastReward2": { - "Doc": "base_task", - "Doc2": "你的上一次探索突破了至少两层困难,这一次可以获得更多支援—— 5 源石锭", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 174, - 151, - 935, - 533 - ], - "next": [ - "Roguelike@LastRewardConfirm" - ] - }, - "Roguelike@LastReward3": { - "Doc": "base_task", - "Doc2": "你的上一次探索突破了至少两层困难,这一次可以获得更多支援—— 3 目标生命", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 174, - 151, - 935, - 533 - ], - "next": [ - "Roguelike@LastRewardConfirm" - ] - }, - "Roguelike@LastRewardConfirm": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 174, - 151, - 935, - 533 - ], - "next": [ - "Roguelike@RolesDefault", - "Roguelike@CloseCollection" - ] - }, - "Roguelike@LastRewardRand": { - "Doc": "base_task", - "Doc2": "你的上一次探索突破了至少两层困难,这一次可以获得更多支援—— 问号", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 174, - 151, - 935, - 533 - ], - "next": [ - "Roguelike@LastRewardConfirm" - ] - }, - "Roguelike@MissionCompletedFlag": { - "roi": [ - 0, - 0, - 148, - 143 - ], - "next": [ - "Roguelike@ClickToDrops" - ] - }, - "Roguelike@MissionFailedFlag": { - "Doc": "base_task", - "template": "empty.png", - "roi": [ - 504, - 163, - 480, - 267 - ], - "next": [ - "Roguelike@NextLevel#next", - "Roguelike@ClickToStartPoint" - ] - }, - "Roguelike@MissionFailedFlag2": { - "Doc": "base_task", - "template": "empty.png", - "cache": false, - "roi": [ - 473, - 0, - 351, - 194 - ], - "next": [ - "Roguelike@ClickToStartPoint" - ] - }, - "Roguelike@NextLevel": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "text": [], - "roi": [ - 522, - 431, - 245, - 144 - ] - }, - "Roguelike@QuickFormation": { - "Doc": "本任务注册了插件 RoguelikeFormationTaskPlugin", - "action": "ClickSelf", - "roi": [ - 817, - 0, - 402, - 146 - ], - "next": [ - "Roguelike@FormationConfirm" - ], - "postDelay": 2000 - }, - "Roguelike@RecruitCloseGuide": { - "action": "ClickSelf", - "roi": [ - 56, - 41, - 194, - 134 - ], - "next": [ - "Roguelike@ChooseOperFlag" - ] - }, - "Roguelike@RecruitMain": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "templThreshold": 0.6, - "cache": false, - "roi": [ - 190, - 470, - 300, - 154 - ], - "next": [ - "Roguelike@ChooseOperFlag", - "Roguelike@RecruitCloseGuide" - ], - "postDelay": 1000 - }, - "Roguelike@RecruitOther": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Roguelike@RecruitMain", - "roi": [ - 190, - 470, - 900, - 154 - ] - }, - "Roguelike@RecruitSkip": { - "template": "RecruitSkip.png", - "action": "ClickSelf", - "roi": [ - 1100, - 0, - 180, - 150 - ], - "next": [ - "Roguelike@RecruitSkip", - "Roguelike@RecruitOther", - "Roguelike@TraderRandomShopping", - "Roguelike@StageTraderLeave", - "Roguelike@DropsFlag", - "Roguelike@ChooseOperFlag", - "Roguelike@RecruitWithoutButton" - ] - }, - "Roguelike@RecruitWithoutButton": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 1180, - 15, - 85, - 60 - ] - }, - "Roguelike@ReturnTo": { - "template": "Return.png", - "next": [ - "Roguelike@ChooseDifficulty", - "Roguelike@StartExplore", - "Roguelike@ExitThenAbandon", - "Roguelike@Abandon", - "Roguelike", - "Roguelike@ReturnTo", - "Roguelike@ReturnToConfirm", - "Roguelike@CloseAnnos#next", - "Roguelike@FromStageSN" - ] - }, - "Roguelike@RolesConfirm": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 0, - 153, - 1280, - 529 - ], - "next": [ - "Roguelike@RecruitMain" - ] - }, - "Roguelike@RolesDefault": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 601, - 153, - 363, - 529 - ], - "next": [ - "Roguelike@RolesConfirm" - ] - }, - "Roguelike@SquadConfirm": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 0, - 483, - 1280, - 200 - ] - }, - "Roguelike@SquadDefault": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 0, - 153, - 1280, - 532 - ], - "next": [ - "Roguelike@SquadConfirm" - ] - }, - "Roguelike@Stage": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 0, - 53, - 1280, - 554 - ] - }, - "Roguelike@StageBoons": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Roguelike@Stage", - "Doc2": "古堡馈赠(随机奖励)", - "next": [ - "Roguelike@StageEncounterEnter", - "Roguelike@NextLevel#next" - ] - }, - "Roguelike@StageCambatDps": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Roguelike@Stage", - "Doc2": "普通作战", - "next_Doc": "普通作战和紧急作战的图比较像,有时候会识别错,这里的next把两个开始的按钮都放进来,提高容错", - "next": [ - "Roguelike@StageCambatDpsEnter", - "Roguelike@StageEmergencyDpsEnter", - "Roguelike@NextLevel#next" - ] - }, - "Roguelike@StageCambatDpsEnter": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Roguelike@StageEnterBattle" - }, - "Roguelike@StageDreadfulFoe": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Roguelike@Stage", - "Doc2": "险路恶敌(boss关卡)", - "next_Doc": "普通作战和紧急作战的图比较像,有时候会识别错,这里的next把两个开始的按钮都放进来,提高容错", - "next": [ - "Roguelike@StageDreadfulFoeEnter", - "Roguelike@StageEmergencyDpsEnter", - "Roguelike@StageCambatDpsEnter", - "Roguelike@NextLevel#next" - ] - }, - "Roguelike@StageDreadfulFoeEnter": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Roguelike@StageEnterBattle" - }, - "Roguelike@StageEmergencyDps": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Roguelike@Stage", - "Doc2": "紧急作战", - "next_Doc": "普通作战和紧急作战的图比较像,有时候会识别错,这里的next把两个开始的按钮都放进来,提高容错", - "next": [ - "Roguelike@StageEmergencyDpsEnter", - "Roguelike@StageCambatDpsEnter", - "Roguelike@NextLevel#next" - ] - }, - "Roguelike@StageEmergencyDpsEnter": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Roguelike@StageEnterBattle" - }, - "Roguelike@StageEncounter": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Roguelike@Stage", - "Doc2": "不期而遇(随机奖励)", - "next": [ - "Roguelike@StageEncounterEnter", - "Roguelike@NextLevel#next" - ] - }, - "Roguelike@StageEncounterClickToLeave": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 600, - 600, - 50, - 50 - ], - "next": [ - "Roguelike@StageEncounterOptions#next", - "Roguelike@StageEncounterClickToLeave" - ] - }, - "Roguelike@StageEncounterEnter": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Roguelike@StageEnter", - "next": [ - "Roguelike@StageEncounterEnter", - "Roguelike@StageEncounterOptions#next", - "Roguelike@StageEncounterClickToLeave" - ] - }, - "Roguelike@StageEncounterGiveUpRecruitConfirm": { - "action": "ClickSelf", - "roi": [ - 613, - 410, - 424, - 171 - ], - "next": [ - "Roguelike@TraderRandomShopping", - "Roguelike@StageTraderLeave", - "Roguelike@DropsFlag", - "Roguelike@ClickToDrops" - ] - }, - "Roguelike@StageEncounterLeaveConfirm": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 1069, - 0, - 211, - 700 - ], - "postDelay": 1000, - "next": [ - "Roguelike@StageEncounterOptions#next", - "Roguelike@StageEncounterSpecialClose", - "Roguelike@StageCambatDpsEnter", - "Roguelike@StageEmergencyDpsEnter", - "Roguelike@ClickToDrops" - ] - }, - "Roguelike@StageEncounterOption": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 1100, - 0, - 180, - 700 - ], - "preDelay": 500, - "next": [ - "Roguelike@StageEncounterLeaveConfirm", - "Roguelike@StageEncounterOptions#next" - ] - }, - "Roguelike@StageEncounterOptionFree": { - "baseTask": "Roguelike@StageEncounterOption", - "Doc": "base_task", - "template": "empty.png", - "next": [ - "Roguelike@StageEncounterLeaveConfirm", - "Roguelike@StageEncounterOptionLeave", - "Roguelike@StageEncounterOptionUnknown", - "Roguelike@StageEncounterOptions#next" - ] - }, - "Roguelike@StageEncounterOptionLeave": { - "baseTask": "Roguelike@StageEncounterOption", - "Doc": "base_task", - "template": "empty.png", - "next": [ - "Roguelike@StageEncounterLeaveConfirm", - "Roguelike@StageEncounterOptionFree", - "Roguelike@StageEncounterOptionUnknown", - "Roguelike@StageEncounterOptions#next" - ] - }, - "Roguelike@StageEncounterOptionUnknown": { - "baseTask": "Roguelike@StageEncounterOption", - "Doc": "base_task", - "template": "empty.png" - }, - "Roguelike@StageEncounterOptionWonderland": { - "baseTask": "Roguelike@StageEncounterOption", - "Doc": "base_task", - "template": "empty.png" - }, - "Roguelike@StageEncounterOptions": { - "algorithm": "JustReturn" - }, - "Roguelike@StageEncounterSpecialClose": { - "Doc": "base_task", - "Doc2": "关掉“大锁”", - "template": "empty.png", - "action": "ClickSelf", - "roi": [ - 570, - 400, - 140, - 138 - ], - "next": [ - "Roguelike@StageEncounterSpecialClose", - "Roguelike@ClickToDrops" - ] - }, - "Roguelike@StageEnter": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 1035, - 370, - 226, - 225 - ] - }, - "Roguelike@StageEnterBattle": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Roguelike@StageEnter", - "next": [ - "Roguelike@QuickFormation" - ] - }, - "Roguelike@StageSafeHouse": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Roguelike@Stage", - "Doc2": "安全的角落", - "next": [ - "Roguelike@StageSafeHouseEnter", - "Roguelike@NextLevel#next" - ] - }, - "Roguelike@StageSafeHouseEnter": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Roguelike@StageEnter", - "next": [ - "Roguelike@StageSafeHouseEnter", - "Roguelike@StageEncounterOptions#next", - "Roguelike@StageEncounterClickToLeave" - ] - }, - "Roguelike@StageTrader": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Roguelike@Stage", - "Doc2": "诡意行商(交易所)", - "next": [ - "Roguelike@StageTraderEnter", - "Roguelike@NextLevel#next" - ] - }, - "Roguelike@StageTraderEnter": { - "Doc": "base_task", - "template": "empty.png", - "baseTask": "Roguelike@StageEnter", - "postDelay": 3000, - "next": [ - "Roguelike@StageTraderEnter", - "Roguelike@StageTraderInvestSystem", - "Roguelike@TraderRandomShopping", - "Roguelike@StageTraderLeave" - ] - }, - "Roguelike@StageTraderInvestCancel": { - "action": "ClickSelf", - "roi": [ - 507, - 418, - 242, - 149 - ], - "exceededNext": [ - "Roguelike@ExitThenAbandon" - ], - "next": [ - "Roguelike@StageTraderInvestSystemLeave" - ] - }, - "Roguelike@StageTraderInvestConfirm": { - "action": "ClickSelf", - "roi": [ - 852, - 422, - 278, - 144 - ], - "postDelay": 500, - "next": [ - "Roguelike@StageTraderInvestSystemError", - "Roguelike@StageTraderInvestSystemFull", - "Roguelike@StageTraderInvestConfirm", - "Roguelike@StageTraderInvestCancel" - ] - }, - "Roguelike@StageTraderInvestSystem": { - "templThreshold": 0.75, - "action": "ClickSelf", - "roi": [ - 365, - 51, - 276, - 216 - ], - "exceededNext": [ - "Roguelike@TraderRandomShopping", - "Roguelike@StageTraderLeave" - ], - "next": [ - "Roguelike@StageTraderInvestSystemEnter", - "Roguelike@TraderRandomShopping", - "Roguelike@StageTraderLeave" - ] - }, - "Roguelike@StageTraderInvestSystemEnter": { - "action": "ClickSelf", - "roi": [ - 417, - 228, - 502, - 247 - ], - "next": [ - "Roguelike@StageTraderInvestSystemError", - "Roguelike@StageTraderInvestConfirm", - "Roguelike@StageTraderInvestCancel" - ] - }, - "Roguelike@StageTraderInvestSystemError": { - "action": "ClickSelf", - "cache": false, - "roi": [ - 508, - 204, - 235, - 240 - ], - "next": [ - "Roguelike@StageTraderInvestCancel" - ] - }, - "Roguelike@StageTraderInvestSystemFull": { - "algorithm": "OcrDetect", - "cache": false, - "reduceOtherTimes": [ - "Roguelike@StageTraderInvestConfirm" - ], - "text": [ - "当前储备余额已达上限", - "当前", - "上限" - ], - "roi": [ - 982, - 28, - 298, - 289 - ], - "next": [ - "Roguelike@StageTraderInvestCancel" - ] - }, - "Roguelike@StageTraderInvestSystemLeave": { - "action": "ClickSelf", - "roi": [ - 682, - 420, - 245, - 143 - ], - "next": [ - "Roguelike@TraderRandomShopping", - "Roguelike@StageTraderLeave" - ] - }, - "Roguelike@StageTraderLeave": { - "action": "ClickSelf", - "cache": false, - "roi": [ - 1046, - 443, - 234, - 204 - ], - "next": [ - "Roguelike@StageTraderLeaveConfirm", - "Roguelike@StageTraderLeave" - ] - }, - "Roguelike@StageTraderLeaveConfirm": { - "action": "ClickSelf", - "cache": false, - "roi": [ - 985, - 447, - 295, - 203 - ], - "next": [ - "Roguelike@NextLevel#next" - ] - }, - "Roguelike@StartAction": { - "Doc": "本任务注册了插件 RoguelikeSkillSelectionTaskPlugin、RoguelikeBattleTaskPlugin", - "action": "ClickSelf", - "preDelay": 500, - "roi": [ - 905, - 593, - 375, - 127 - ], - "next": [ - "Roguelike@InBattleFlag", - "Roguelike@MissionCompletedFlag", - "Roguelike@MissionFailedFlag", - "Roguelike@MissionFailedFlag2", - "Roguelike@GamePassSkip1", - "Roguelike@GamePassTheEndConfirm", - "Roguelike@GamePass", - "Roguelike@StartAction@Loading", - "Roguelike@StartAction@Loading2" - ] - }, - "Roguelike@StartExplore": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 1026, - 470, - 254, - 248 - ], - "postDelay": 2000, - "next": [ - "Roguelike@SquadDefault", - "Roguelike@InitalDrop", - "Roguelike@StartExplore" - ] - }, - "Roguelike@TodoEnter": { - "Doc": "base_task", - "template": "empty.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 908, - 54, - 372, - 500 - ], - "maskRange": [ - 1, - 255 - ], - "next": [ - "Roguelike@TodoEnter", - "Roguelike@Begin" - ] - }, - "Roguelike@TraderRandomShopping": { - "Doc": "该任务注册了 RoguelikeShoppingTaskPlugin,若是点完了仍在当前界面,说明没啥要买的,直接离开商店(next 里的 PhantomStageTraderLeave)", - "action": "ClickSelf", - "templThreshold": 0.7, - "cache": false, - "roi": [ - 480, - 240, - 750, - 280 - ], - "rectMove": [ - -40, - -100, - 20, - 60 - ], - "next": [ - "Roguelike@TraderRandomShoppingConfirm", - "Roguelike@TraderRandomShoppingCancel", - "Roguelike@ChooseOperFlag", - "Roguelike@StageTraderLeave", - "Roguelike@StageTraderLeaveConfirm" - ], - "maskRange": [ - 1, - 255 - ] - }, - "Roguelike@TraderRandomShoppingCancel": { - "template": "Roguelike@StageTraderInvestCancel.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 350, - 350, - 500, - 250 - ], - "next": [ - "Roguelike@StageTraderLeave" - ] - }, - "Roguelike@TraderRandomShoppingConfirm": { - "action": "ClickSelf", - "cache": false, - "roi": [ - 872, - 425, - 221, - 136 - ], - "next": [ - "Roguelike@TraderRandomShopping", - "Roguelike@ChooseOperFlag", - "Roguelike@StageTraderLeave" - ] - }, - "Phantom@Roguelike@Abandon": {}, - "Phantom@Roguelike@ChooseDifficulty": {}, - "Phantom@Roguelike@ChooseOper": { - "next": [ - "Phantom@Roguelike@ChooseOperConfirm" - ] - }, - "Phantom@Roguelike@CloseCollection": { - "next": [ - "Phantom@Roguelike@LastReward", - "Phantom@Roguelike@LastReward2", - "Phantom@Roguelike@LastReward3", - "Phantom@Roguelike@LastRewardRand", - "Phantom@Roguelike@RolesDefault" - ] - }, - "Phantom@Roguelike@Continue": {}, - "Phantom@Roguelike@DialogSkipConfirm": { - "template": "Roguelike@DialogSkipConfirm.png", - "next": [ - "Phantom@Roguelike@DialogSkip", - "Phantom@Roguelike@NextLevel#next" - ] - }, - "Phantom@Roguelike@DropsFlag": { - "template": "Roguelike@DropsFlag.png", - "next": [ - "Phantom@Roguelike@GetDrops#next", - "Phantom@Roguelike@GetDropCompleted", - "Phantom@Roguelike@GetDropLeave", - "Phantom@Roguelike@NextLevel#next", - "Phantom@Roguelike@StageEncounterOptions#next", - "Phantom@Roguelike@StageEncounterSpecialClose", - "Phantom@Roguelike@EnterAfterRecruit", - "Phantom@Roguelike@StageTraderLeave", - "Phantom@Roguelike@DialogSkip" - ] - }, - "Phantom@Roguelike@EnterAfterRecruit": {}, - "Phantom@Roguelike@ExitThenAbandon": { - "template": "Roguelike@ExitThenAbandon.png", - "next": [ - "Phantom@Roguelike@ExitThenAbandon", - "Phantom@Roguelike@Abandon" - ] - }, - "Phantom@Roguelike@GamePass": {}, - "Phantom@Roguelike@GamePassSkip1": {}, - "Phantom@Roguelike@GamePassSkip1Confirm": { - "next": [ - "Phantom@Roguelike@GamePassSkip2", - "Phantom@Roguelike@GamePassTheEndConfirm", - "Phantom@Roguelike@GamePass" - ] - }, - "Phantom@Roguelike@GetDrop1": {}, - "Phantom@Roguelike@GetDrop2": {}, - "Phantom@Roguelike@GetDrop3": {}, - "Phantom@Roguelike@GetDropCompleted": {}, - "Phantom@Roguelike@GetDropLeave": {}, - "Phantom@Roguelike@GetDropRecruit": {}, - "Phantom@Roguelike@GetDropSelect": {}, - "Phantom@Roguelike@GetDropSelectRecruit": { - "template": "Phantom@Roguelike@GetDropRecruit.png" - }, - "Phantom@Roguelike@GetDropSelectReward": {}, - "Phantom@Roguelike@GetDrops": { - "next": [ - "Phantom@Roguelike@GetDrop1", - "Phantom@Roguelike@GetDrop2", - "Phantom@Roguelike@GetDrop3", - "Phantom@Roguelike@GetDropSelect", - "Phantom@Roguelike@GetDropRecruit" - ] - }, - "Phantom@Roguelike@InitalDrop": {}, - "Phantom@Roguelike@LastReward": {}, - "Phantom@Roguelike@LastReward2": {}, - "Phantom@Roguelike@LastReward3": {}, - "Phantom@Roguelike@LastRewardConfirm": {}, - "Phantom@Roguelike@LastRewardRand": {}, - "Phantom@Roguelike@MissionFailedFlag": {}, - "Phantom@Roguelike@MissionFailedFlag2": {}, - "Phantom@Roguelike@NextLevel": { - "text": [ - "迷雾歧途", - "落阳庭院", - "故土残躯", - "噩梦之始", - "血月长廊", - "渴欲大厅" - ], - "next": [ - "Phantom@Roguelike@StageTrader", - "Phantom@Roguelike@StageSafeHouse", - "Phantom@Roguelike@StageEncounter", - "Phantom@Roguelike@StageBoons", - "Phantom@Roguelike@StageCambatDps", - "Phantom@Roguelike@StageEmergencyDps", - "Phantom@Roguelike@StageDreadfulFoe" - ] - }, - "Phantom@Roguelike@RecruitMain": { - "template": "Phantom@Roguelike@Recruit.png" - }, - "Phantom@Roguelike@RecruitOther": { - "template": "Phantom@Roguelike@Recruit.png" - }, - "Phantom@Roguelike@RecruitWithoutButton": { - "next": [ - "Phantom@Roguelike@RecruitOther", - "Phantom@Roguelike@EnterAfterRecruit", - "Phantom@Roguelike@TraderRandomShopping", - "Phantom@Roguelike@StageTraderLeave", - "Phantom@Roguelike@DropsFlag", - "Phantom@Roguelike@ChooseOperFlag", - "Phantom@Roguelike@RecruitWithoutButton" - ] - }, - "Phantom@Roguelike@RolesConfirm": { - "template": "Phantom@Roguelike@LastRewardConfirm" - }, - "Phantom@Roguelike@RolesDefault": {}, - "Phantom@Roguelike@SquadConfirm": { - "template": "Phantom@Roguelike@LastRewardConfirm.png", - "next": [ - "Phantom@Roguelike@LastReward", - "Phantom@Roguelike@LastReward2", - "Phantom@Roguelike@LastReward3", - "Phantom@Roguelike@LastRewardRand", - "Phantom@Roguelike@RolesDefault", - "Phantom@Roguelike@CloseCollection", - "Phantom@Roguelike@DialogSkip", - "Phantom@Roguelike@NextLevel#next" - ] - }, - "Phantom@Roguelike@SquadDefault": {}, - "Phantom@Roguelike@StageBoons": { - "templThreshold": 0.85 - }, - "Phantom@Roguelike@StageCambatDps": {}, - "Phantom@Roguelike@StageCambatDpsEnter": {}, - "Phantom@Roguelike@StageDreadfulFoe": {}, - "Phantom@Roguelike@StageDreadfulFoeEnter": {}, - "Phantom@Roguelike@StageEmergencyDps": {}, - "Phantom@Roguelike@StageEmergencyDpsEnter": {}, - "Phantom@Roguelike@StageEncounter": { - "templThreshold": 0.85 - }, - "Phantom@Roguelike@StageEncounterEnter": {}, - "Phantom@Roguelike@StageEncounterLeaveConfirm": {}, - "Phantom@Roguelike@StageEncounterOptionFree": {}, - "Phantom@Roguelike@StageEncounterOptionLeave": {}, - "Phantom@Roguelike@StageEncounterOptionUnknown": { - "templThreshold": 0.85 - }, - "Phantom@Roguelike@StageEncounterOptions": { - "next": [ - "Phantom@Roguelike@StageEncounterOptionFree", - "Phantom@Roguelike@StageEncounterOptionLeave", - "Phantom@Roguelike@StageEncounterOptionUnknown", - "Phantom@Roguelike@ChooseOperFlag", - "Phantom@Roguelike@StageEmergencyDpsEnter", - "Phantom@Roguelike@StageCambatDpsEnter" - ] - }, - "Phantom@Roguelike@StageEncounterSpecialClose": {}, - "Phantom@Roguelike@StageSafeHouse": { - "templThreshold": 0.85 - }, - "Phantom@Roguelike@StageSafeHouseEnter": {}, - "Phantom@Roguelike@StageTrader": { - "templThreshold": 0.85 - }, - "Phantom@Roguelike@StageTraderEnter": {}, - "Phantom@Roguelike@StageTraderLeaveConfirm": { - "template": "Roguelike@StageTraderLeaveConfirm.png", - "exceededNext": [ - "Phantom@Roguelike@ExitThenAbandon" - ] - }, - "Phantom@Roguelike@StartExplore": {}, - "Phantom@Roguelike@TodoEnter": {}, - "Mizuki@Roguelike@Abandon": {}, - "Mizuki@Roguelike@ChooseDifficulty": {}, - "Mizuki@Roguelike@ChooseOper": { - "next": [ - "Mizuki@Roguelike@CloseCollectionContinue", - "Mizuki@Roguelike@CloseCollectionClose", - "Mizuki@Roguelike@ChooseOperConfirm" - ] - }, - "Mizuki@Roguelike@CloseCollection": { - "next": [ - "Mizuki@Roguelike@LastReward", - "Mizuki@Roguelike@LastReward2", - "Mizuki@Roguelike@LastReward3", - "Mizuki@Roguelike@LastReward4", - "Mizuki@Roguelike@LastRewardRand", - "Mizuki@Roguelike@RolesDefault" - ] - }, - "Mizuki@Roguelike@CloseCollectionClose": { - "action": "ClickSelf", - "cache": false, - "templThreshold": 0.9, - "roi": [ - 572, - 434, - 144, - 141 - ], - "next": [ - "Mizuki@Roguelike@StageEncounterEnter", - "Mizuki@Roguelike@NextLevel#next", - "Mizuki@Roguelike@DropsFlag", - "Mizuki@Roguelike@CloseEvent", - "Mizuki@Roguelike@ChooseOperFlag" - ] - }, - "Mizuki@Roguelike@CloseCollectionContinue": { - "action": "ClickSelf", - "templThreshold": 0.9, - "cache": false, - "roi": [ - 549, - 440, - 123, - 130 - ], - "maskRange": [ - 100, - 255 - ], - "next": [ - "Mizuki@Roguelike@StageEncounterEnter", - "Mizuki@Roguelike@NextLevel#next", - "Mizuki@Roguelike@DropsFlag", - "Mizuki@Roguelike@CloseEvent", - "Mizuki@Roguelike@ChooseOperFlag" - ] - }, - "Mizuki@Roguelike@CloseEvent": { - "action": "ClickSelf", - "cache": false, - "roi": [ - 567, - 584, - 145, - 136 - ], - "next": [ - "Mizuki@Roguelike@StageEncounterEnter", - "Mizuki@Roguelike@NextLevel#next", - "Mizuki@Roguelike@DropsFlag", - "Mizuki@Roguelike@CloseEvent" - ] - }, - "Mizuki@Roguelike@CommissionedMissionCompleted": { - "action": "ClickRect", - "specificRect": [ - 600, - 600, - 50, - 50 - ], - "postDelay": 1000, - "cache": false, - "roi": [ - 519, - 202, - 282, - 154 - ], - "next": [ - "Mizuki@Roguelike@StageEncounterEnter", - "Mizuki@Roguelike@NextLevel#next" - ] - }, - "Mizuki@Roguelike@Continue": {}, - "Mizuki@Roguelike@DataTraceback": { - "action": "DoNothing", - "cache": false, - "roi": [ - 56, - 277, - 243, - 152 - ], - "next": [ - "Mizuki@Roguelike@ClickToStartPoint" - ] - }, - "Mizuki@Roguelike@DialogSkipConfirm": { - "template": "Roguelike@DialogSkipConfirm.png", - "next": [ - "Mizuki@Roguelike@DialogSkip", - "Mizuki@Roguelike@NextLevel#next" - ] - }, - "Mizuki@Roguelike@DiceConfirm": { - "Doc": "骰子的确认按钮", - "action": "ClickSelf", - "cache": false, - "roi": [ - 551, - 577, - 174, - 143 - ], - "templThreshold": 0.95, - "postDelay": 1000, - "next": [ - "Mizuki@Roguelike@StageEncounterEnter", - "Mizuki@Roguelike@NextLevel#next", - "Mizuki@Roguelike@ClickToDrops" - ] - }, - "Mizuki@Roguelike@DiceConfirmThenAbandon": { - "Doc": "骰子的确认按钮", - "action": "ClickSelf", - "template": "Mizuki@Roguelike@DiceConfirm.png", - "cache": false, - "roi": [ - 551, - 577, - 174, - 143 - ], - "templThreshold": 0.95, - "next": [ - "Mizuki@Roguelike@ExitThenAbandon" - ] - }, - "Mizuki@Roguelike@DropsFlag": { - "template": "Roguelike@DropsFlag.png", - "next": [ - "Mizuki@Roguelike@GetDrops#next", - "Mizuki@Roguelike@GetDropCompleted", - "Mizuki@Roguelike@GetDropLeave", - "Mizuki@Roguelike@NextLevel#next", - "Mizuki@Roguelike@StageEncounterOptions#next", - "Mizuki@Roguelike@StageEncounterSpecialClose", - "Mizuki@Roguelike@EnterAfterRecruit", - "Mizuki@Roguelike@StageTraderLeave", - "Mizuki@Roguelike@CloseEvent", - "Mizuki@Roguelike@DialogSkip" - ] - }, - "Mizuki@Roguelike@EnterAfterRecruit": {}, - "Mizuki@Roguelike@ExitThenAbandon": { - "template": "Roguelike@ExitThenAbandon.png", - "next": [ - "Mizuki@Roguelike@ExitThenAbandon", - "Mizuki@Roguelike@Abandon", - "Mizuki@Roguelike@DiceConfirmThenAbandon", - "Mizuki@Roguelike@DataTraceback" - ] - }, - "Mizuki@Roguelike@GamePass": {}, - "Mizuki@Roguelike@GamePassSkip1": {}, - "Mizuki@Roguelike@GamePassSkip1Confirm": { - "next": [ - "Mizuki@Roguelike@DataTraceback", - "Mizuki@Roguelike@GamePassSkip2", - "Mizuki@Roguelike@GamePassTheEndConfirm", - "Mizuki@Roguelike@GamePass" - ] - }, - "Mizuki@Roguelike@GetDrop1": {}, - "Mizuki@Roguelike@GetDrop2": {}, - "Mizuki@Roguelike@GetDrop3": {}, - "Mizuki@Roguelike@GetDropBox": { - "baseTask": "Mizuki@Roguelike@GetDrop", - "Doc": "漂流密匣“打开”按钮", - "next": [ - "Mizuki@Roguelike@DropsFlag", - "Mizuki@Roguelike@GetDropBoxSelect", - "Mizuki@Roguelike@ChooseOperFlag" - ] - }, - "Mizuki@Roguelike@GetDropBoxSelect": { - "Doc": "漂流密匣-锤子砸开“选择”按钮", - "action": "ClickSelf", - "cache": false, - "roi": [ - 830, - 438, - 276, - 140 - ], - "templThreshold": 0.85, - "postDelay": 1000, - "next": [ - "Mizuki@Roguelike@DropsFlag", - "Mizuki@Roguelike@ChooseOperFlag", - "Mizuki@Roguelike@ClickToDrops" - ] - }, - "Mizuki@Roguelike@GetDropCompleted": {}, - "Mizuki@Roguelike@GetDropLeave": {}, - "Mizuki@Roguelike@GetDropRecruit": {}, - "Mizuki@Roguelike@GetDropSelect": {}, - "Mizuki@Roguelike@GetDropSelectRecruit": { - "template": "Mizuki@Roguelike@GetDropRecruit.png" - }, - "Mizuki@Roguelike@GetDropSelectReward": {}, - "Mizuki@Roguelike@GetDrops": { - "next": [ - "Mizuki@Roguelike@GetDrop1", - "Mizuki@Roguelike@GetDrop2", - "Mizuki@Roguelike@GetDrop3", - "Mizuki@Roguelike@GetDropSelect", - "Mizuki@Roguelike@GetDropRecruit", - "Mizuki@Roguelike@GetDropBox" - ] - }, - "Mizuki@Roguelike@InitalDrop": {}, - "Mizuki@Roguelike@LastReward": {}, - "Mizuki@Roguelike@LastReward2": {}, - "Mizuki@Roguelike@LastReward3": {}, - "Mizuki@Roguelike@LastReward4": { - "action": "ClickSelf", - "cache": false, - "roi": [ - 174, - 151, - 935, - 533 - ], - "next": [ - "Mizuki@Roguelike@LastRewardConfirm" - ] - }, - "Mizuki@Roguelike@LastRewardConfirm": {}, - "Mizuki@Roguelike@LastRewardRand": {}, - "Mizuki@Roguelike@MapObject": { - "action": "DoNothing", - "cache": false, - "roi": [ - 257, - 488, - 189, - 123 - ], - "next": [ - "Mizuki@Roguelike@RecruitOther" - ] - }, - "Mizuki@Roguelike@MissionFailedFlag": {}, - "Mizuki@Roguelike@MissionFailedFlag2": {}, - "Mizuki@Roguelike@NextLevel": { - "text": [ - "天光海岸", - "离岸孤岛", - "波涛略地", - "隐秘温床", - "失尘岩洞", - "幽海丛林", - "绀碧摇篮" - ], - "next": [ - "Mizuki@Roguelike@StageTrader", - "Mizuki@Roguelike@StageSafeHouse", - "Mizuki@Roguelike@StageWindAndRain", - "Mizuki@Roguelike@StageEmergencyTransportation", - "Mizuki@Roguelike@StageEncounter", - "Mizuki@Roguelike@StageBoons", - "Mizuki@Roguelike@StageCambatDps", - "Mizuki@Roguelike@StageEmergencyDps", - "Mizuki@Roguelike@StageDreadfulFoe", - "Mizuki@Roguelike@StageDreadfulFoe-5", - "Mizuki@Roguelike@StageRegionalCommissioning", - "Mizuki@Roguelike@StageGambling", - "Mizuki@Roguelike@CommissionedMissionCompleted", - "Mizuki@Roguelike@DiceConfirm", - "Mizuki@Roguelike@CloseCollectionContinue", - "Mizuki@Roguelike@CloseCollectionClose" - ] - }, - "Mizuki@Roguelike@RecruitMain": { - "template": "Mizuki@Roguelike@Recruit.png" - }, - "Mizuki@Roguelike@RecruitOther": { - "template": "Mizuki@Roguelike@Recruit.png" - }, - "Mizuki@Roguelike@RecruitWithoutButton": { - "next": [ - "Mizuki@Roguelike@RecruitOther", - "Mizuki@Roguelike@EnterAfterRecruit", - "Mizuki@Roguelike@TraderRandomShopping", - "Mizuki@Roguelike@StageTraderLeave", - "Mizuki@Roguelike@DropsFlag", - "Mizuki@Roguelike@ChooseOperFlag", - "Mizuki@Roguelike@DiceConfirm", - "Mizuki@Roguelike@RecruitWithoutButton" - ] - }, - "Mizuki@Roguelike@RolesConfirm": { - "template": "Mizuki@Roguelike@LastRewardConfirm" - }, - "Mizuki@Roguelike@RolesDefault": {}, - "Mizuki@Roguelike@SquadConfirm": { - "template": "Mizuki@Roguelike@LastRewardConfirm.png", - "next": [ - "Mizuki@Roguelike@LastReward", - "Mizuki@Roguelike@LastReward2", - "Mizuki@Roguelike@LastReward3", - "Mizuki@Roguelike@LastReward4", - "Mizuki@Roguelike@LastRewardRand", - "Mizuki@Roguelike@RolesDefault", - "Mizuki@Roguelike@CloseCollection", - "Mizuki@Roguelike@DialogSkip", - "Mizuki@Roguelike@NextLevel#next", - "Mizuki@Roguelike@MapObject" - ] - }, - "Mizuki@Roguelike@SquadDefault": {}, - "Mizuki@Roguelike@StageBoons": { - "templThreshold": 0.95 - }, - "Mizuki@Roguelike@StageCambatDps": { - "templThreshold": 0.95 - }, - "Mizuki@Roguelike@StageCambatDpsEnter": {}, - "Mizuki@Roguelike@StageDreadfulFoe": {}, - "Mizuki@Roguelike@StageDreadfulFoe-5": { - "Doc": "第五层的boss关卡", - "baseTask": "Mizuki@Roguelike@Stage", - "templThreshold": 0.85, - "next": [ - "Mizuki@Roguelike@StageDreadfulFoe-5Enter", - "Mizuki@Roguelike@StageDreadfulFoeEnter", - "Mizuki@Roguelike@StageEmergencyDpsEnter", - "Mizuki@Roguelike@StageCambatDpsEnter", - "Mizuki@Roguelike@NextLevel#next" - ] - }, - "Mizuki@Roguelike@StageDreadfulFoe-5Enter": { - "baseTask": "Mizuki@Roguelike@StageEnterBattle" - }, - "Mizuki@Roguelike@StageDreadfulFoeEnter": {}, - "Mizuki@Roguelike@StageEmergencyDps": { - "templThreshold": 0.95 - }, - "Mizuki@Roguelike@StageEmergencyDpsEnter": {}, - "Mizuki@Roguelike@StageEmergencyTransportation": { - "Doc": "紧急运输,拒绝可以获取3希望", - "baseTask": "Mizuki@Roguelike@Stage", - "templThreshold": 0.95, - "next": [ - "Mizuki@Roguelike@StageEncounterEnter", - "Mizuki@Roguelike@NextLevel#next" - ] - }, - "Mizuki@Roguelike@StageEncounter": { - "templThreshold": 0.96 - }, - "Mizuki@Roguelike@StageEncounterEnter": {}, - "Mizuki@Roguelike@StageEncounterLeaveConfirm": {}, - "Mizuki@Roguelike@StageEncounterOptionFree": { - "maskRange": [ - 5, - 255 - ] - }, - "Mizuki@Roguelike@StageEncounterOptionLeave": { - "maskRange": [ - 5, - 255 - ] - }, - "Mizuki@Roguelike@StageEncounterOptionUnknown": { - "templThreshold": 0.91 - }, - "Mizuki@Roguelike@StageEncounterOptionWonderland": {}, - "Mizuki@Roguelike@StageSafeHouseReuse": { - "algorithm": "OcrDetect", - "action": "ClickSelf", - "cache": false, - "withoutDet": true, - "roi": [ - 880, - 210, - 140, - 36 - ], - "text": [ - "活用安全屋" - ], - "preDelay": 500, - "next": [ - "Mizuki@Roguelike@StageEncounterOption#next" - ] - }, - "Mizuki@Roguelike@StageEncounterOptions": { - "next": [ - "Mizuki@Roguelike@StageEncounterOptionFree", - "Mizuki@Roguelike@StageSafeHouseReuse", - "Mizuki@Roguelike@StageEncounterOptionLeave", - "Mizuki@Roguelike@StageEncounterOptionUnknown", - "Mizuki@Roguelike@StageEncounterOptionWonderland", - "Mizuki@Roguelike@ChooseOperFlag", - "Mizuki@Roguelike@StageEmergencyDpsEnter", - "Mizuki@Roguelike@StageCambatDpsEnter" - ] - }, - "Mizuki@Roguelike@StageEncounterSpecialClose": {}, - "Mizuki@Roguelike@StageGambling": { - "Doc": "骰子关卡", - "baseTask": "Mizuki@Roguelike@Stage", - "templThreshold": 0.95, - "next": [ - "Mizuki@Roguelike@StageEncounterEnter", - "Mizuki@Roguelike@NextLevel#next" - ] - }, - "Mizuki@Roguelike@StageRegionalCommissioning": { - "Doc": "地区委托(随机奖励)", - "baseTask": "Mizuki@Roguelike@Stage", - "templThreshold": 0.95, - "next": [ - "Mizuki@Roguelike@StageEncounterEnter", - "Mizuki@Roguelike@NextLevel#next" - ] - }, - "Mizuki@Roguelike@StageSafeHouse": { - "templThreshold": 0.95 - }, - "Mizuki@Roguelike@StageSafeHouseEnter": {}, - "Mizuki@Roguelike@StageTrader": { - "templThreshold": 0.95 - }, - "Mizuki@Roguelike@StageTraderEnter": {}, - "Mizuki@Roguelike@StageTraderLeaveConfirm": { - "template": "Roguelike@StageTraderLeaveConfirm.png", - "exceededNext": [ - "Mizuki@Roguelike@DiceConfirmThenAbandon", - "Mizuki@Roguelike@ExitThenAbandon" - ] - }, - "Mizuki@Roguelike@StageWindAndRain": { - "Doc": "风雨际会,拒绝可以获取4生命值", - "baseTask": "Mizuki@Roguelike@Stage", - "templThreshold": 0.95, - "next": [ - "Mizuki@Roguelike@StageEncounterEnter", - "Mizuki@Roguelike@NextLevel#next" - ] - }, - "Mizuki@Roguelike@StartExplore": {}, - "Mizuki@Roguelike@TodoEnter": {}, - "Roguelike": { - "template": "Terminal.png", - "action": "ClickSelf", - "roi": [ - 880, - 100, - 180, - 120 - ], - "next": [ - "Roguelike", - "Roguelike@CloseAnnos#next", - "Roguelike@TodoEnter", - "Roguelike@IntegratedStrategies" - ], - "postDelay": 1000 - }, - "RoguelikeBattleAbandon": { - "action": "ClickSelf", - "roi": [ - 648, - 229, - 220, - 246 - ], - "next": [ - "RoguelikeBattleAbandonConfirm", - "RoguelikeBattleAbandon" - ] - }, - "RoguelikeBattleAbandonConfirm": { - "action": "ClickSelf", - "roi": [ - 716, - 416, - 259, - 153 - ], - "next": [ - "RoguelikeBattleAbandonConfirm", - "Stop" - ] - }, - "RoguelikeBattleExitBegin": { - "action": "ClickSelf", - "roi": [ - 3, - 0, - 153, - 154 - ], - "maskRange": [ - 100, - 255 - ], - "next": [ - "RoguelikeBattleAbandon", - "RoguelikeBattleExitBegin" - ] - }, - "RoguelikeBattleSpeedUp": { - "algorithm": "JustReturn", - "action": "ClickRect", - "specificRect": [ - 1070, - 20, - 60, - 60 - ], - "preDelay": 3000 - }, - "RoguelikeCustom-HijackCoChar": { - "algorithm": "OcrDetect", - "text": [], - "roi": [ - 186, - 298, - 913, - 200 - ], - "ocrReplace": [], - "preDelay": 1000 - }, - "RoguelikeCustom-HijackRoles": { - "algorithm": "OcrDetect", - "text": [], - "roi": [ - 54, - 356, - 1172, - 183 - ], - "ocrReplace": [] - }, - "RoguelikeCustom-HijackSquad": { - "algorithm": "OcrDetect", - "text": [], - "roi": [ - 0, - 383, - 1280, - 142 - ], - "ocrReplace": [] - }, - "RoguelikeFormationOper": { - "cache": false, - "roi": [ - 363, - 11, - 891, - 668 - ], - "maskRange": [ - 1, - 255 - ], - "templThreshold": 0.9 - }, - "RoguelikeFormationOperSelected": { - "template": "empty.png", - "templThreshold": 1000, - "templThreshold_Doc": "这个任务中作为符合range的像素点数量阈值", - "maskRange_Doc": "拿来做H通道的范围", - "maskRange": [ - 95, - 105 - ], - "specificRect_Doc": "拿来做S、V通道的范围", - "specificRect": [ - 170, - 210, - 70, - 140 - ] - }, - "RoguelikeQuickFormationClearAndReselect": { - "action": "ClickSelf", - "roi": [ - 821, - 608, - 139, - 112 - ], - "next": [ - "RoguelikeQuickFormationClearAndReselect-Confirm" - ] - }, - "RoguelikeQuickFormationClearAndReselect-Confirm": { - "template": "Roguelike@FormationConfirm.png", - "action": "ClickSelf", - "roi": [ - 1015, - 601, - 265, - 119 - ], - "next": [ - "RoguelikeQuickFormationClearAndReselect-Formation", - "RoguelikeQuickFormationClearAndReselect-Confirm" - ] - }, - "RoguelikeQuickFormationClearAndReselect-Formation": { - "template": "Roguelike@QuickFormation.png", - "action": "ClickSelf", - "roi": [ - 817, - 0, - 402, - 146 - ], - "next": [ - "RoguelikeQuickFormationClearAndReselect-Formation", - "Stop" - ], - "postDelay": 2000 - }, - "RoguelikeQuickFormationDelay": { - "algorithm": "JustReturn", - "action": "DoNothing", - "postDelay": 100 - }, - "RoguelikeRecruitElite": { - "Doc": "base_task", - "template": "empty.png", - "rectMove": [ - -170, - -60, - 60, - 50 - ] - }, - "RoguelikeRecruitElite0": { - "baseTask": "RoguelikeRecruitElite" - }, - "RoguelikeRecruitElite1": { - "baseTask": "RoguelikeRecruitElite" - }, - "RoguelikeRecruitElite2": { - "baseTask": "RoguelikeRecruitElite" - }, - "RoguelikeRecruitLevel": { - "template": "empty.png", - "rectMove_Doc": "肉鸽招募时检测等级用,相对flag的位移", - "rectMove": [ - -171, - 0, - 15, - 11 - ] - }, - "RoguelikeRecruitOcr": { - "algorithm": "OcrDetect", - "text": [], - "fullMatch": true, - "roi": [ - 13, - 26, - 120, - 23 - ], - "specificRect_Doc": "x拿来当文字灰度二值化下限用", - "specificRect": [ - 100, - 0, - 0, - 0 - ] - }, - "RoguelikeRecruitOcrFlag": { - "roi": [ - 525, - 110, - 640, - 500 - ], - "templThreshold": 0.9 - }, - "RoguelikeRecruitOperListSlowlySwipeToTheLeft": { - "baseTask": "SlowlySwipeToTheLeft", - "specificRect": [ - 500, - 340, - 20, - 20 - ], - "rectMove": [ - 1150, - 340, - 20, - 20 - ] - }, - "RoguelikeRecruitOperListSlowlySwipeToTheRight": { - "baseTask": "SlowlySwipeToTheRight", - "specificRect": [ - 1150, - 340, - 20, - 20 - ], - "rectMove": [ - 500, - 340, - 20, - 20 - ] - }, - "RoguelikeRecruitOperListSwipeToTheLeft": { - "baseTask": "RoguelikeRecruitOperListSlowlySwipeToTheLeft", - "specialParams": [ - 150, - 0, - 0.5 - ] - }, - "DepotSlowlySwipeToTheRight": { - "baseTask": "SlowlySwipeToTheRight", - "specificRect": [ - 1150, - 340, - 20, - 20 - ], - "rectMove": [ - 110, - 340, - 20, - 20 - ] - }, - "RoguelikeRecruitSwipeMaxTime": { - "algorithm": "JustReturn", - "maxTimes_Doc": "这个参数是肉鸽招募时,向右划动的最大次数", - "maxTimes": 4 - }, - "RoguelikeSkillSelectionFlag": { - "templThreshold": 0.9, - "maskRange": [ - 1, - 255 - ] - }, - "RoguelikeSkillSelectionMove1": { - "algorithm": "JustReturn", - "rectMove_Doc": "技能1相对flag的坐标", - "rectMove": [ - 180, - -40, - 40, - 30 - ], - "postDelay": 0 - }, - "RoguelikeSkillSelectionMove2": { - "algorithm": "JustReturn", - "rectMove_Doc": "技能2相对flag的坐标", - "rectMove": [ - 240, - -40, - 30, - 30 - ] - }, - "RoguelikeSkillSelectionMove3": { - "algorithm": "JustReturn", - "rectMove_Doc": "技能3相对flag的坐标", - "rectMove": [ - 300, - -40, - 30, - 30 - ] - }, - "RoguelikeSkillSelectionName": { - "algorithm": "OcrDetect", - "fullMatch": true, - "text": [], - "roi": [ - 210, - 8, - 120, - 20 - ], - "specificRect_Doc": "x拿来当文字灰度二值化下限用", - "specificRect": [ - 100, - 0, - 0, - 0 - ] - }, - "RoguelikeSkillSelectionTeamFull": { - "cache": false, - "roi": [ - 135, - 22, - 1032, - 668 - ], - "maskRange": [ - 200, - 255 - ] - }, - "RoguelikeTraderShopping": { - "template": "Roguelike@TraderRandomShopping.png", - "templThreshold": 0.7, - "roi": [ - 480, - 240, - 750, - 280 - ], - "maskRange": [ - 1, - 255 - ] - }, - "RoguelikeTraderShoppingOcr": { - "algorithm": "OcrDetect", - "text": [], - "roi": [ - -120, - -160, - 190, - 35 - ], - "ocrReplace": [] - }, - "RoguelikeTraderShoppingOver": { - "template": "Roguelike@StageTraderLeave.png", - "action": "ClickSelf", - "cache": false, - "roi": [ - 1046, - 443, - 234, - 204 - ] - }, - "RoguelikeWaitBattleStart": { - "Doc": "点了开始行动之后,可能会网络不好一直loading,用这个任务等一会", - "template": "Roguelike@QuickFormation.png", - "action": "DoNothing", - "roi": [ - 817, - 0, - 402, - 146 - ], - "next": [ - "RoguelikeWaitBattleStart" - ] - } -} + "SlowlySwipeToTheLeft": { + "algorithm": "JustReturn", + "action": "Swipe", + "postDelay": 200, + "specificRect": [ + 300, + 310, + 100, + 100 + ], + "specificRect_Doc": "滑动起点", + "rectMove": [ + 880, + 310, + 100, + 100 + ], + "rectMove_Doc": "滑动终点", + "specialParams": [ + 200, + 1, + 2, + 0 + ], + "specialParams_Doc": [ + "滑动 duration", + "额外滑动?", + "slope in (zero means smooth, 1 means linear)", + "slope out" + ], + "next": [ + "#next" + ], + "maxTimes": 50 + }, + "SlowlySwipeToTheRight": { + "algorithm": "JustReturn", + "action": "Swipe", + "postDelay": 200, + "specificRect": [ + 880, + 310, + 100, + 100 + ], + "rectMove": [ + 300, + 310, + 100, + 100 + ], + "specialParams": [ + 200, + 1, + 2, + 0 + ], + "next": [ + "#next" + ], + "maxTimes": 50 + }, + "SwipeToTheLeft": { + "algorithm": "JustReturn", + "action": "Swipe", + "postDelay": 100, + "specificRect": [ + 100, + 310, + 100, + 100 + ], + "rectMove": [ + 1080, + 310, + 100, + 100 + ], + "specialParams": [ + 150, + 0, + 1, + 1 + ], + "next": [ + "#next" + ], + "maxTimes": 20 + }, + "SwipeToTheRight": { + "algorithm": "JustReturn", + "action": "Swipe", + "postDelay": 100, + "specificRect": [ + 1080, + 310, + 100, + 100 + ], + "rectMove": [ + 100, + 310, + 200, + 100 + ], + "specialParams": [ + 150, + 0, + 1, + 1 + ], + "next": [ + "#next" + ], + "maxTimes": 20 + }, + "StageTheme": { + "action": "ClickSelf", + "roi": [ + 200, + 640, + 300, + 60 + ], + "next": [ + "#next" + ] + }, + "ClickChapter": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "text": [], + "roi": [ + 142, + 43, + 210, + 274 + ], + "next": [ + "#back", + "Stop" + ] + }, + "ClickChapter1": { + "baseTask": "ClickChapter", + "text": [ + "觉醒" + ] + }, + "ClickChapter2": { + "baseTask": "ClickChapter", + "text": [ + "幻灭" + ] + }, + "ClickChapter3": { + "baseTask": "ClickChapter", + "text": [ + "残阳" + ] + }, + "ToChapter1": { + "algorithm": "JustReturn", + "next": [ + "ClickChapter1@ClickChapter2@ClickChapter3", + "ClickChapter1@ClickChapter2", + "ClickChapter1" + ] + }, + "ToChapter2": { + "algorithm": "JustReturn", + "next": [ + "ClickChapter2@ClickChapter3", + "ClickChapter2" + ] + }, + "ToChapter3": { + "algorithm": "JustReturn", + "next": [ + "ClickChapter3" + ] + }, + "EnterEpisode": { + "Doc": "base_task", + "algorithm": "OcrDetect", + "action": "ClickRect", + "isAscii": true, + "text": [], + "ocrReplace": [ + [ + " ", + "" + ], + [ + "EPIS0DE", + "EPISODE" + ] + ], + "roi": [ + 16, + 219, + 409, + 151 + ], + "specificRect": [ + 787, + 281, + 154, + 154 + ], + "next": [ + "#self", + "Stop" + ] + }, + "00@EnterEpisode": { + "text": [ + "00", + "OO", + "O0", + "0O" + ] + }, + "01@EnterEpisode": { + "text": [ + "EPISODE01" + ] + }, + "02@EnterEpisode": { + "text": [ + "EPISODE02" + ] + }, + "03@EnterEpisode": { + "text": [ + "EPISODE03" + ] + }, + "04@EnterEpisode": { + "text": [ + "EPISODE04" + ] + }, + "05@EnterEpisode": { + "text": [ + "EPISODE05" + ] + }, + "06@EnterEpisode": { + "text": [ + "EPISODE06" + ] + }, + "07@EnterEpisode": { + "text": [ + "EPISODE07" + ] + }, + "08@EnterEpisode": { + "text": [ + "EPISODE08" + ] + }, + "09@EnterEpisode": { + "text": [ + "EPISODE09" + ] + }, + "10@EnterEpisode": { + "text": [ + "EPISODE10" + ] + }, + "11@EnterEpisode": { + "text": [ + "EPISODE11" + ] + }, + "LevelOfDifficulty": { + "Doc": "base_task", + "algorithm": "OcrDetect", + "action": "ClickSelf", + "text": [ + "环境", + "PRTS" + ], + "roi": [ + 26, + 565, + 302, + 155 + ], + "sub": [ + "EnterChooseLevelOfDifficulty" + ] + }, + "EnterChooseLevelOfDifficulty": { + "action": "ClickSelf", + "roi": [ + 0, + 598, + 131, + 122 + ] + }, + "ChapterDifficultyHard": { + "baseTask": "LevelOfDifficulty", + "next": [ + "EnterChapterDifficultyHard", + "Return" + ] + }, + "ChapterDifficultyNormal": { + "baseTask": "LevelOfDifficulty", + "next": [ + "EnterChapterDifficultyNormal", + "Return" + ] + }, + "EnterChapterDifficultyHard": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "text": [ + "进入作战" + ], + "roi": [ + 861, + 570, + 330, + 145 + ] + }, + "EnterChapterDifficultyNormal": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "text": [ + "进入作战" + ], + "roi": [ + 473, + 572, + 329, + 144 + ] + }, + "SwipeLeftToEpisode": { + "Doc": "base_task", + "algorithm": "OcrDetect", + "action": "Swipe", + "isAscii": true, + "text": [], + "ocrReplace": [ + [ + " ", + "" + ], + [ + "EPIS0DE", + "EPISODE" + ] + ], + "roi": [ + 16, + 219, + 409, + 151 + ], + "specificRect": [ + 790, + 310, + 10, + 10 + ], + "rectMove": [ + 1200, + 310, + 10, + 10 + ], + "specialParams": [ + 200, + 0, + 2, + 0 + ], + "maxTimes": 20, + "next": [ + "EnterEpisode", + "#self" + ], + "postDelay": 500 + }, + "11@SwipeLeftToEpisode": { + "text": [ + "EPISODE12", + "EPISODE13" + ] + }, + "10@SwipeLeftToEpisode": { + "text": [ + "EPISODE11", + "EPISODE12", + "EPISODE13" + ] + }, + "09@SwipeLeftToEpisode": { + "text": [ + "EPISODE10", + "EPISODE11", + "EPISODE12", + "EPISODE13" + ] + }, + "08@SwipeLeftToEpisode": { + "text": [ + "_SKIP_" + ] + }, + "07@SwipeLeftToEpisode": { + "text": [ + "EPISODE08" + ] + }, + "06@SwipeLeftToEpisode": { + "text": [ + "EPISODE07", + "EPISODE08" + ] + }, + "05@SwipeLeftToEpisode": { + "text": [ + "EPISODE06", + "EPISODE07", + "EPISODE08" + ] + }, + "04@SwipeLeftToEpisode": { + "text": [ + "EPISODE05", + "EPISODE06", + "EPISODE07", + "EPISODE08" + ] + }, + "03@SwipeLeftToEpisode": { + "text": [ + "_SKIP_" + ] + }, + "02@SwipeLeftToEpisode": { + "text": [ + "EPISODE03" + ] + }, + "01@SwipeLeftToEpisode": { + "text": [ + "EPISODE02", + "EPISODE03" + ] + }, + "00@SwipeLeftToEpisode": { + "text": [ + "EPISODE01", + "EPISODE02", + "EPISODE03" + ] + }, + "StageNavigationBegin": { + "algorithm": "JustReturn", + "next": [ + "ClickStageName", + "FullStageNavigation" + ] + }, + "FullStageNavigation": { + "Doc": "右滑五次,然后检测关卡并左滑", + "Doc2": "在一次关卡导航中,仅swipe五次,其余情况进exceededNext", + "baseTask": "ChapterSwipeToTheRight", + "exceededNext": [ + "ClickStageName", + "StageNavigationSlowlySwipeLeft" + ] + }, + "ClickStageName": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "fullMatch": true, + "isAscii": true, + "cache": false, + "text": [], + "next": [ + "ClickedCorrectStageOrSwipe", + "#self" + ] + }, + "StageNavigationSlowlySwipeLeft": { + "baseTask": "ChapterSlowlySwipeToTheLeft", + "next": [ + "FullStageNavigation" + ], + "exceededNext": [ + "Home@ReturnTo" + ], + "maxTimes": 20 + }, + "ClickedCorrectStageOrSwipe": { + "baseTask": "StartButton1", + "action": "DoNothing", + "next": [ + "ClickedCorrectStage", + "FullStageNavigation" + ] + }, + "ClickedCorrectStage": { + "algorithm": "OcrDetect", + "action": "DoNothing", + "fullMatch": true, + "isAscii": true, + "cache": false, + "text": [], + "ocrReplace": [ + [ + "OPERATION", + "" + ], + [ + " ", + "" + ] + ], + "roi": [ + 845, + 72, + 170, + 50 + ] + }, + "Episode": { + "Doc": "base_task", + "algorithm": "JustReturn", + "next": [ + "SwipeLeftToEpisode", + "EnterEpisode" + ] + }, + "Episode0": { + "baseTask": "00@Episode", + "sub": [ + "ToChapter1@StageTheme" + ] + }, + "Episode1": { + "baseTask": "01@Episode", + "sub": [ + "ToChapter1@StageTheme" + ] + }, + "Episode2": { + "baseTask": "02@Episode", + "sub": [ + "ToChapter1@StageTheme" + ] + }, + "Episode3": { + "baseTask": "03@Episode", + "sub": [ + "ToChapter1@StageTheme" + ] + }, + "Episode4": { + "baseTask": "04@Episode", + "sub": [ + "ToChapter2@StageTheme" + ] + }, + "Episode5": { + "baseTask": "05@Episode", + "sub": [ + "ToChapter2@StageTheme" + ] + }, + "Episode6": { + "baseTask": "06@Episode", + "sub": [ + "ToChapter2@StageTheme" + ] + }, + "Episode7": { + "baseTask": "07@Episode", + "sub": [ + "ToChapter2@StageTheme" + ] + }, + "Episode8": { + "baseTask": "08@Episode", + "sub": [ + "ToChapter2@StageTheme" + ] + }, + "Episode9": { + "baseTask": "09@Episode", + "sub": [ + "ToChapter3@StageTheme" + ] + }, + "Episode10": { + "baseTask": "10@Episode", + "sub": [ + "ToChapter3@StageTheme" + ] + }, + "Episode11": { + "baseTask": "11@Episode", + "sub": [ + "ToChapter3@StageTheme" + ] + }, + "1-7": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "Episode1" + ], + "next": [ + "Stage1-7", + "SwipeLeftToStage1-7", + "SwipeRightToStage1-7" + ] + }, + "ChapterSlowlySwipeToTheLeft": { + "Doc": "在上面一点滑避免点到关卡划不动", + "baseTask": "SlowlySwipeToTheLeft", + "specificRect": [ + 200, + 100, + 20, + 20 + ], + "rectMove": [ + 1000, + 100, + 20, + 20 + ] + }, + "ChapterSlowlySwipeToTheRight": { + "baseTask": "SlowlySwipeToTheRight", + "specificRect": [ + 900, + 100, + 20, + 20 + ], + "rectMove": [ + 300, + 100, + 20, + 20 + ] + }, + "ChapterSwipeToTheLeft": { + "Doc": "滑动到最左", + "baseTask": "ChapterSlowlySwipeToTheLeft", + "specialParams": [ + 150, + 0, + 0.5 + ], + "next": [ + "#self" + ], + "maxTimes": 5 + }, + "ChapterSwipeToTheRight": { + "Doc": "滑动到最右", + "baseTask": "ChapterSlowlySwipeToTheRight", + "specialParams": [ + 150, + 0, + 0.5 + ], + "next": [ + "#self" + ], + "maxTimes": 5 + }, + "SwipeToStage": { + "Doc": "活动导航左滑找关", + "baseTask": "ChapterSlowlySwipeToTheLeft", + "specialParams": [ + 150, + 1 + ], + "next": [ + "#next" + ] + }, + "SwipeLeftToStage1-7": { + "algorithm": "OcrDetect", + "baseTask": "ChapterSlowlySwipeToTheLeft", + "fullMatch": true, + "isAscii": true, + "text": [ + "1-8", + "TR-10", + "1-9", + "1-10", + "1-11", + "1-12" + ], + "cache": false, + "roi": [ + 0, + 120, + 1080, + 480 + ], + "next": [ + "Stage1-7", + "SwipeLeftToStage1-7", + "SwipeRightToStage1-7" + ] + }, + "SwipeRightToStage1-7": { + "algorithm": "OcrDetect", + "baseTask": "ChapterSlowlySwipeToTheRight", + "fullMatch": true, + "isAscii": true, + "text": [ + "1-1", + "1-2", + "1-3", + "1-4", + "1-5", + "TR-8", + "1-6", + "TR-9" + ], + "cache": false, + "roi": [ + 0, + 120, + 1080, + 480 + ], + "next": [ + "Stage1-7", + "SwipeRightToStage1-7", + "SwipeLeftToStage1-7" + ] + }, + "Stage1-7": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "text": [ + "1-7" + ], + "isAscii": true, + "cache": false, + "roi": [ + 0, + 190, + 1080, + 60 + ] + }, + "StageEpisode": { + "action": "ClickSelf", + "roi": [ + 487, + 600, + 143, + 120 + ] + }, + "IS-10": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "IS-Open" + ], + "next": [ + "StageIS-10", + "IS-10@SwipeToStageIS" + ] + }, + "IS-9": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "IS-Open" + ], + "next": [ + "StageIS-9", + "IS-9@SwipeToStageIS" + ] + }, + "IS-8": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "IS-Open" + ], + "next": [ + "StageIS-8", + "IS-8@SwipeToStageIS" + ] + }, + "IS-Open": { + "action": "ClickSelf", + "roi": [ + 476, + 0, + 502, + 720 + ], + "next": [ + "EnterChapterIS" + ] + }, + "EnterChapterIS": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "text": [ + "沃尔西尼" + ], + "roi": [ + 1033, + 412, + 208, + 134 + ], + "postDelay": 4000, + "next": [ + "EnterChapterIS", + "EnterChapterIS2", + "EnterStageIS" + ] + }, + "EnterChapterIS2": { + "action": "ClickSelf", + "roi": [ + 1146, + 587, + 134, + 133 + ], + "next": [ + "EnterChapterIS2", + "EnterStageIS" + ] + }, + "EnterStageIS": { + "action": "ClickSelf", + "roi": [ + 1142, + 314, + 138, + 135 + ] + }, + "SwipeToStageIS": { + "Doc": "IS关特殊的上下滑动", + "algorithm": "JustReturn", + "action": "Swipe", + "specificRect": [ + 98, + 469, + 100, + 100 + ], + "rectMove": [ + 145, + 129, + 100, + 100 + ], + "next": [ + "#next" + ] + }, + "StageIS-10": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "text": [ + "IS-10" + ], + "isAscii": true, + "roi": [ + 47, + 42, + 222, + 640 + ] + }, + "StageIS-9": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "text": [ + "IS-9" + ], + "isAscii": true, + "roi": [ + 47, + 42, + 222, + 640 + ] + }, + "StageIS-8": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "text": [ + "IS-8" + ], + "isAscii": true, + "roi": [ + 47, + 42, + 222, + 640 + ] + }, + "NL-10": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "NL-Open" + ], + "next": [ + "StageNL-10", + "NL-10@SwipeToStage" + ] + }, + "NL-9": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "NL-Open" + ], + "next": [ + "StageNL-9", + "NL-9@SwipeToStage" + ] + }, + "NL-8": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "NL-Open" + ], + "next": [ + "StageNL-8", + "NL-8@SwipeToStage" + ] + }, + "NL-Open": { + "action": "ClickSelf", + "roi": [ + 471, + 0, + 530, + 711 + ], + "next": [ + "NLChapterToNL" + ] + }, + "NLChapterToNL": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "text": [ + "大骑士领" + ], + "postDelay": 2000, + "roi": [ + 998, + 346, + 282, + 191 + ], + "next": [ + "NLChapterToNL", + "ChapterSwipeToTheRight" + ] + }, + "StageNL-10": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "isAscii": true, + "text": [ + "NL-10" + ], + "roi": [ + 0, + 63, + 1280, + 577 + ] + }, + "StageNL-9": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "isAscii": true, + "text": [ + "NL-9" + ], + "roi": [ + 0, + 63, + 1280, + 577 + ] + }, + "StageNL-8": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "isAscii": true, + "text": [ + "NL-8" + ], + "roi": [ + 0, + 63, + 1280, + 577 + ] + }, + "GT-5": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "StageEpisode", + "StageEpisodeToGT", + "GTToGT-5", + "StageGT-5" + ] + }, + "StageEpisodeToGT": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "text": [ + "骑兵与猎人" + ], + "roi": [ + 0, + 41, + 372, + 627 + ] + }, + "GTToGT-5": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "text": [ + "进入", + "活动" + ], + "roi": [ + 993, + 439, + 287, + 168 + ] + }, + "StageGT-5": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "isAscii": true, + "text": [ + "GT-5" + ] + }, + "OF-1": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "StageEpisode", + "StageEpisodeToOF", + "OFToOF-Chapter", + "StageOF-1" + ] + }, + "OF-F3": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "StageEpisode", + "StageEpisodeToOF", + "OFToOF-Chapter", + "OF-Chapter2", + "StageOF-F3" + ] + }, + "StageEpisodeToOF": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "text": [ + "火蓝之心" + ], + "roi": [ + 0, + 41, + 372, + 627 + ] + }, + "OFToOF-Chapter": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "text": [ + "进入", + "活动" + ], + "roi": [ + 993, + 439, + 287, + 168 + ] + }, + "OF-Chapter2": { + "action": "ClickSelf", + "cache": false, + "roi": [ + 1042, + 565, + 141, + 143 + ] + }, + "StageOF-F3": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "isAscii": true, + "text": [ + "OF-F3", + "0F-F3" + ] + }, + "StageOF-1": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "isAscii": true, + "text": [ + "OF-1", + "0F-1" + ] + }, + "IC-9": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "IC-Open" + ], + "next": [ + "StageIC-9", + "IC-9@SwipeToStage" + ] + }, + "IC-8": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "IC-Open" + ], + "next": [ + "StageIC-8", + "IC-8@SwipeToStage" + ] + }, + "IC-7": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "IC-Open" + ], + "next": [ + "StageIC-7", + "IC-7@SwipeToStage" + ] + }, + "IC-Open": { + "action": "ClickSelf", + "roi": [ + 471, + 0, + 530, + 711 + ], + "next": [ + "ICChapterToIC" + ] + }, + "ICChapterToIC": { + "action": "ClickSelf", + "cache": false, + "roi": [ + 1028, + 402, + 223, + 126 + ], + "postDelay": 2000, + "next": [ + "ICChapterToIC", + "ChapterSwipeToTheRight" + ] + }, + "StageIC-9": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "isAscii": true, + "text": [ + "IC-9", + "1C-9" + ], + "roi": [ + 0, + 145, + 1280, + 332 + ] + }, + "StageIC-8": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "isAscii": true, + "text": [ + "IC-8", + "1C-8" + ], + "roi": [ + 0, + 145, + 1280, + 332 + ] + }, + "StageIC-7": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "isAscii": true, + "text": [ + "IC-7", + "1C-7" + ], + "roi": [ + 0, + 145, + 1280, + 332 + ] + }, + "DV-8": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "DV-Open" + ], + "next": [ + "StageDV-8", + "DV-8@SwipeToStage" + ] + }, + "DV-7": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "DV-Open" + ], + "next": [ + "StageDV-7", + "DV-7@SwipeToStage" + ] + }, + "DV-6": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "DV-Open" + ], + "next": [ + "StageDV-6", + "DV-6@SwipeToStage" + ] + }, + "DV-Open": { + "action": "ClickSelf", + "algorithm": "OcrDetect", + "text": [ + "绿野幻梦", + "活动", + "开放" + ], + "roi": [ + 0, + 500, + 500, + 150 + ], + "next": [ + "DVChapterToDV" + ] + }, + "DVChapterToDV": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "text": [ + "实验基地" + ], + "roi": [ + 1025, + 176, + 241, + 180 + ], + "postDelay": 2000, + "next": [ + "DVChapterToDV", + "ChapterSwipeToTheRight" + ] + }, + "StageDV-8": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "isAscii": true, + "text": [ + "DV-8" + ], + "roi": [ + 0, + 145, + 1280, + 332 + ] + }, + "StageDV-7": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "isAscii": true, + "text": [ + "DV-7" + ], + "roi": [ + 0, + 145, + 1280, + 332 + ] + }, + "StageDV-6": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "isAscii": true, + "text": [ + "DV-6" + ], + "roi": [ + 0, + 145, + 1280, + 332 + ] + }, + "LE-5": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "LE-Open", + "LEChapterToLE" + ], + "next": [ + "StageLE-5", + "LE-5@SwipeToStage" + ] + }, + "LE-6": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "LE-Open", + "LEChapterToLE" + ], + "next": [ + "StageLE-6", + "LE-6@SwipeToStage" + ] + }, + "LE-7": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "LE-Open", + "LEChapterToLE" + ], + "next": [ + "StageLE-7", + "LE-7@SwipeToStage" + ] + }, + "LE-Open": { + "action": "ClickSelf", + "roi": [ + 471, + 0, + 530, + 711 + ] + }, + "LEChapterToLE": { + "algorithm": "OcrDetect", + "text": [ + "夕照大厅", + "大厅" + ], + "roi": [ + 1011, + 495, + 217, + 139 + ], + "action": "ClickSelf", + "sub": [ + "ChapterSwipeToTheRight" + ] + }, + "StageLE-5": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "isAscii": true, + "text": [ + "LE-5" + ], + "roi": [ + 0, + 145, + 1280, + 332 + ] + }, + "StageLE-6": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "isAscii": true, + "text": [ + "LE-6" + ], + "roi": [ + 0, + 145, + 1280, + 332 + ] + }, + "StageLE-7": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "isAscii": true, + "text": [ + "LE-7" + ], + "roi": [ + 0, + 145, + 1280, + 332 + ] + }, + "SN-8": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "SN-Open", + "SN-Chapter2", + "StageSN-8" + ] + }, + "SN-9": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "SN-Open", + "SN-Chapter3", + "StageSN-9" + ] + }, + "SN-10": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "SN-Open", + "SN-Chapter3", + "StageSN-10" + ] + }, + "SN-Open": { + "action": "ClickSelf" + }, + "SN-Chapter2": { + "action": "ClickSelf", + "roi": [ + 163, + 418, + 197, + 125 + ], + "next": [ + "SN-Chapter2", + "ChapterSwipeToTheRight" + ] + }, + "SN-Chapter3": { + "action": "ClickSelf", + "roi": [ + 205, + 487, + 254, + 165 + ], + "next": [ + "SN-Chapter3", + "SwipeToTheLeft" + ] + }, + "StageSN-8": { + "action": "ClickSelf", + "template": "SN-8.png", + "cache": false, + "roi": [ + 296, + 93, + 171, + 195 + ] + }, + "StageSN-9": { + "action": "ClickSelf", + "template": "SN-9.png", + "cache": false, + "roi": [ + 610, + 328, + 176, + 198 + ] + }, + "StageSN-10": { + "action": "ClickSelf", + "template": "SN-10.png", + "cache": false, + "roi": [ + 678, + 220, + 173, + 200 + ] + }, + "BI-6": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "BI-Open", + "BIChapterToBI" + ], + "next": [ + "StageBI-6", + "BI-6@SwipeToStage" + ] + }, + "BI-7": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "BI-Open", + "BIChapterToBI" + ], + "next": [ + "StageBI-7", + "BI-7@SwipeToStage" + ] + }, + "BI-8": { + "algorithm": "JustReturn", + "action": "DoNothing", + "sub": [ + "BI-Open", + "BIChapterToBI" + ], + "next": [ + "StageBI-8", + "BI-8@SwipeToStage" + ] + }, + "BI-Open": { + "action": "ClickSelf", + "algorithm": "OcrDetect", + "text": [ + "风雪过境" + ], + "roi": [ + 0, + 500, + 500, + 150 + ] + }, + "BIChapterToBI": { + "action": "ClickSelf", + "roi": [ + 1000, + 250, + 280, + 150 + ], + "postDelay": 2000, + "next": [ + "BIChapterToBI", + "ChapterSwipeToTheRight" + ] + }, + "StageBI-6": { + "action": "ClickSelf", + "algorithm": "OcrDetect", + "text": [ + "B1-6", + "BI-6" + ], + "cache": false, + "roi": [ + 0, + 145, + 1280, + 332 + ] + }, + "StageBI-7": { + "action": "ClickSelf", + "algorithm": "OcrDetect", + "text": [ + "B1-7", + "BI-7" + ], + "cache": false, + "roi": [ + 0, + 145, + 1280, + 332 + ] + }, + "StageBI-8": { + "action": "ClickSelf", + "algorithm": "OcrDetect", + "text": [ + "B1-8", + "BI-8" + ], + "cache": false, + "roi": [ + 0, + 145, + 1280, + 332 + ] + }, + "ResourceStages": { + "algorithm": "JustReturn", + "sub": [ + "StageResource" + ] + }, + "CE-6": { + "baseTask": "ResourceStages", + "next": [ + "CE6@StageCE", + "CE-6@SwipeToTheLeft" + ] + }, + "LS-6": { + "baseTask": "ResourceStages", + "next": [ + "LS6@StageLS" + ] + }, + "CA-5": { + "baseTask": "ResourceStages", + "next": [ + "CA5@StageCA", + "CA-5@SwipeToTheLeft" + ] + }, + "AP-5": { + "baseTask": "ResourceStages", + "next": [ + "AP5@StageAP", + "AP-5@SwipeToTheLeft" + ] + }, + "PR-A-1": { + "baseTask": "ResourceStages", + "Doc": "医疗/重装", + "next": [ + "PR-A-1@StagePR-A", + "PR-A-1@SwipeToTheRight" + ] + }, + "PR-A-2": { + "baseTask": "ResourceStages", + "next": [ + "PR-A-2@StagePR-A", + "PR-A-2@SwipeToTheRight" + ] + }, + "PR-B-1": { + "baseTask": "ResourceStages", + "Doc": "术士/狙击", + "next": [ + "PR-B-1@StagePR-B", + "PR-B-1@SwipeToTheRight" + ] + }, + "PR-B-2": { + "baseTask": "ResourceStages", + "next": [ + "PR-B-2@StagePR-B", + "PR-B-2@SwipeToTheRight" + ] + }, + "PR-C-1": { + "baseTask": "ResourceStages", + "Doc": "先锋/辅助", + "next": [ + "PR-C-1@StagePR-C", + "PR-C-1@SwipeToTheRight" + ] + }, + "PR-C-2": { + "baseTask": "ResourceStages", + "next": [ + "PR-C-2@StagePR-C", + "PR-C-2@SwipeToTheRight" + ] + }, + "PR-D-1": { + "baseTask": "ResourceStages", + "Doc": "近卫/特种", + "next": [ + "PR-D-1@StagePR-D", + "PR-D-1@SwipeToTheRight" + ] + }, + "PR-D-2": { + "baseTask": "ResourceStages", + "next": [ + "PR-D-2@StagePR-D", + "PR-D-2@SwipeToTheRight" + ] + }, + "StageResource": { + "action": "ClickSelf", + "Doc": "进入资源关卡", + "roi": [ + 455, + 562, + 544, + 158 + ] + }, + "Stage": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "cache": false + }, + "StageEntries": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Stage", + "maskRange": [ + 1, + 255 + ], + "next": [ + "Stage" + ] + }, + "UnableToAgent": { + "roi": [ + 994, + 535, + 286, + 143 + ], + "next": [ + "Stage", + "UnableToAgent@SwipeToTheLeft" + ] + }, + "ResourceStageLevel5": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Stage", + "roi": [ + 850, + 140, + 250, + 220 + ] + }, + "ResourceStageLevel6": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Stage", + "roi": [ + 936, + 101, + 243, + 143 + ], + "next": [ + "UnableToAgent", + "Stop" + ] + }, + "ChipStageLevel1": { + "algorithm": "OcrDetect", + "baseTask": "Stage", + "isAscii": true, + "text": [], + "roi": [ + 27, + 260, + 742, + 400 + ] + }, + "ChipStageLevel2": { + "algorithm": "OcrDetect", + "baseTask": "Stage", + "isAscii": true, + "text": [], + "roi": [ + 472, + 0, + 793, + 502 + ] + }, + "StageCE": { + "baseTask": "StageEntries" + }, + "StageLS": { + "baseTask": "StageEntries" + }, + "StageCA": { + "baseTask": "StageEntries" + }, + "StageAP": { + "baseTask": "StageEntries" + }, + "StagePR-A": { + "baseTask": "StageEntries" + }, + "StagePR-B": { + "baseTask": "StageEntries" + }, + "StagePR-C": { + "baseTask": "StageEntries" + }, + "StagePR-D": { + "baseTask": "StageEntries" + }, + "CE5@Stage": { + "baseTask": "ResourceStageLevel5", + "template": "StageCE5.png" + }, + "CE6@Stage": { + "baseTask": "CE5@ResourceStageLevel6", + "template": "StageCE6.png" + }, + "LS5@Stage": { + "baseTask": "ResourceStageLevel5", + "template": "StageLS5.png" + }, + "LS6@Stage": { + "baseTask": "LS5@ResourceStageLevel6", + "template": "StageLS6.png" + }, + "CA5@Stage": { + "baseTask": "ResourceStageLevel5", + "template": "StageCA5.png" + }, + "AP5@Stage": { + "baseTask": "ResourceStageLevel5", + "template": "StageAP5.png" + }, + "PR-A-1@Stage": { + "baseTask": "ChipStageLevel1", + "text": [ + "PR-A-1" + ] + }, + "PR-A-2@Stage": { + "baseTask": "ChipStageLevel2", + "text": [ + "PR-A-2" + ] + }, + "PR-B-1@Stage": { + "baseTask": "ChipStageLevel1", + "text": [ + "PR-B-1" + ] + }, + "PR-B-2@Stage": { + "baseTask": "ChipStageLevel2", + "text": [ + "PR-B-2" + ] + }, + "PR-C-1@Stage": { + "baseTask": "ChipStageLevel1", + "text": [ + "PR-C-1" + ] + }, + "PR-C-2@Stage": { + "baseTask": "ChipStageLevel2", + "text": [ + "PR-C-2" + ] + }, + "PR-D-1@Stage": { + "baseTask": "ChipStageLevel1", + "text": [ + "PR-D-1" + ] + }, + "PR-D-2@Stage": { + "baseTask": "ChipStageLevel2", + "text": [ + "PR-D-2" + ] + }, + "CharsNameOcrReplace": { + "algorithm": "OcrDetect", + "text": [], + "Doc": "该任务的 ocrReplace 被所有涉及干员名的识别任务复用", + "ocrReplace": [] + }, + "StartUpThemes": { + "algorithm": "JustReturn", + "next": [ + "GameStart", + "StartToWakeUp", + "StartLoginBServer", + "StartUpConnectingFlag", + "#back", + "CloseAnnos#next", + "TodaysSupplies", + "OfflineConfirm" + ] + }, + "StartUpBegin": { + "algorithm": "JustReturn", + "action": "DoNothing", + "next": [ + "StartUp@StartUpThemes#next", + "StartUpBegin@Loading2", + "StartUp@ReturnTo", + "StartUp@EndOfAction", + "StartUp@FromStageSN" + ] + }, + "GameStart": { + "action": "ClickSelf", + "roi": [ + 550, + 600, + 200, + 120 + ], + "cache": false, + "templThreshold": 0.7, + "postDelay": 3000, + "maskRange": [ + 1, + 255 + ], + "reduceOtherTimes": [ + "StartButton1", + "StartButton2" + ], + "next": [ + "StartUpThemes#next", + "GameStart@Loading2" + ] + }, + "StartToWakeUp": { + "action": "ClickSelf", + "roi": [ + 520, + 460, + 240, + 100 + ], + "next": [ + "StartUpThemes#next", + "StartToWakeUp@Loading2" + ] + }, + "StartLoginBServer": { + "action": "ClickSelf", + "roi": [ + 400, + 350, + 500, + 150 + ], + "next": [ + "StartUpThemes#next", + "StartLoginBServer@Loading2" + ] + }, + "StartUpConnectingFlag": { + "action": "ClickSelf", + "roi": [ + 0, + 635, + 450, + 85 + ], + "next": [ + "StartUpThemes#next", + "StartUpConnectingFlag@Loading2" + ] + }, + "StartUp": { + "template": "Terminal.png", + "action": "Stop", + "roi": [ + 880, + 100, + 180, + 120 + ] + }, + "CloseAnnos": { + "algorithm": "JustReturn", + "next": [ + "CloseAnno", + "CloseAnnoTexas", + "TodaysSupplies" + ] + }, + "CloseAnno": { + "action": "ClickSelf", + "cache": false, + "roi": [ + 1100, + 0, + 180, + 200 + ], + "next": [ + "#back", + "CloseAnnos#next", + "TodaysSupplies" + ] + }, + "CloseAnnoTexas": { + "baseTask": "CloseAnno", + "roi": [ + 1125, + 24, + 138, + 139 + ] + }, + "TodaysSupplies": { + "algorithm": "OcrDetect", + "text": [ + "今日配给" + ], + "action": "ClickRect", + "specificRect": [ + 1000, + 1, + 270, + 340 + ], + "roi": [ + 500, + 50, + 300, + 150 + ], + "next": [ + "CloseAnnos#next", + "#back" + ] + }, + "Loading": { + "algorithm": "OcrDetect", + "action": "DoNothing", + "text": [ + "正在提交", + "反馈至神经" + ], + "roi": [ + 700, + 600, + 300, + 120 + ], + "next": [ + "Loading", + "#next", + "#back" + ] + }, + "Loading2": { + "Doc": "开始唤醒最后阶段的黑色正三角加载画面", + "roi": [ + 480, + 210, + 320, + 280 + ], + "next": [ + "Loading2", + "#next", + "#back" + ] + }, + "ReturnTo": { + "template": "Return.png", + "templThreshold": 0.7, + "action": "ClickSelf", + "cache": false, + "roi": [ + 0, + 0, + 180, + 80 + ], + "next": [ + "#back", + "ReturnTo", + "ReturnToConfirm", + "ReturnTo@Loading2", + "CloseAnnos#next", + "FromStageSN", + "TodaysSupplies" + ] + }, + "ReturnToConfirm": { + "template": "PopupConfirm.png", + "action": "ClickSelf", + "roi": [ + 630, + 400, + 650, + 160 + ], + "next": [ + "ReturnTo", + "#back", + "ReturnToConfirm@Loading2", + "CloseAnnos#next", + "FromStageSN", + "TodaysSupplies", + "ReturnToConfirm" + ] + }, + "OfflineConfirm": { + "action": "DoNothing", + "roi": [ + 310, + 409, + 648, + 165 + ], + "reduceOtherTimes": [ + "StartButton1", + "StartButton2" + ], + "next": [ + "OfflineConfirmImpl" + ] + }, + "OfflineConfirmImpl": { + "Doc": "防止 reduceOtherTimes 两次", + "template": "OfflineConfirm.png", + "action": "ClickSelf", + "roi": [ + 310, + 409, + 648, + 165 + ], + "next": [ + "CloseAnnos#next", + "OfflineConfirmImpl", + "StartUpThemes#next", + "TodaysSupplies" + ] + }, + "StartUp@ClickCorner": { + "ClickCorner_Doc": "点击屏幕右边,不会点到掉落物品,且不会关掉关卡选择的一块区域", + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 1000, + 120, + 270, + 10 + ], + "next": [ + "StartUp@ReturnTo", + "StartUp", + "StartUp@CloseAnnos#next", + "StartUp@FromStageSN", + "StartUp@TodaysSupplies", + "StartUp@OfflineConfirm" + ], + "onErrorNext": [ + "StartUp@RestartGameAndContinue" + ] + }, + "FromStageSN": { + "template": "StageSNReturnFlag.png", + "action": "ClickRect", + "cache": false, + "roi": [ + 284, + 509, + 242, + 141 + ], + "specificRect": [ + 20, + 20, + 135, + 35 + ], + "next": [ + "ReturnTo" + ] + }, + "Annihilation": { + "Doc": "剿灭作战,一般本周的满了也不会有人再刷的,所以只识别右上角ToDoList里的剿灭就可以了", + "template": "StageAnnihilation.png", + "templThreshold": 0.6, + "cache": false, + "action": "ClickSelf", + "roi": [ + 900, + 70, + 380, + 400 + ], + "maskRange": [ + 1, + 255 + ] + }, + "StageBegin": { + "algorithm": "JustReturn", + "action": "DoNothing", + "next": [ + "Fight@ReturnTo", + "Fight", + "Fight@CloseAnnos#next", + "Fight@FromStageSN", + "Fight@TodaysSupplies" + ] + }, + "FightBegin": { + "Docs": "Fight@前缀保证各种任务的Main可以自动寻到Fight", + "algorithm": "JustReturn", + "action": "DoNothing", + "next": [ + "Fight@UsePrts-Annihilation", + "Fight@UsePrts", + "Fight@UsePrts-StageSN", + "Fight@StartButton1", + "Fight@PRTS3", + "Fight@PRTS", + "Fight@PRTS2", + "Fight@EndOfAction" + ] + }, + "LastOrCurBattleBegin": { + "algorithm": "JustReturn", + "action": "DoNothing", + "next": [ + "Fight@GoLastBattle", + "Fight@StartButton1", + "Fight@UsePrts", + "Fight@UsePrts-StageSN", + "Fight@ReturnTo", + "Fight", + "Fight@CloseAnnos#next", + "Fight@FromStageSN", + "Fight@TodaysSupplies", + "Fight@PRTS3", + "Fight@PRTS", + "Fight@PRTS2", + "Fight@EndOfAction" + ] + }, + "UsePrts": { + "action": "ClickSelf", + "roi": [ + 1000, + 550, + 280, + 90 + ], + "cache": false, + "next": [ + "UsePrts-Annihilation", + "StartButton1" + ] + }, + "NotUsePrts": { + "action": "ClickSelf", + "roi": [ + 1000, + 550, + 280, + 90 + ], + "cache": false + }, + "UsePrts-Annihilation": { + "Doc": "剿灭的“全权委托”按钮", + "action": "ClickSelf", + "roi": [ + 877, + 532, + 183, + 123 + ], + "next": [ + "StartButton1" + ] + }, + "UsePrts-StageSN": { + "Doc": "三周年活动关卡“愚人号”代理指挥按钮", + "action": "ClickSelf", + "roi": [ + 1010, + 508, + 270, + 143 + ], + "cache": false, + "next": [ + "StartButton1" + ] + }, + "StartButton1": { + "algorithm": "OcrDetect", + "text": [ + "开始行动" + ], + "cache": false, + "preDelay": 500, + "roi": [ + 1000, + 600, + 280, + 120 + ], + "exceededNext": [ + "StageSNReturnFlag", + "Stop" + ], + "action": "ClickSelf", + "next": [ + "StartButton2", + "UseMedicine", + "UseStone", + "NoStone", + "OfflineConfirm", + "AnnihilationConfirm" + ] + }, + "AnnihilationConfirm": { + "action": "ClickSelf", + "roi": [ + 992, + 584, + 288, + 136 + ], + "next": [ + "EndOfActionAnnihilation", + "EndOfAction" + ] + }, + "StageSNFlag": { + "template": "StageSNReturnFlag.png", + "cache": false, + "roi": [ + 284, + 509, + 242, + 141 + ], + "action": "DoNothing" + }, + "StageSNReturnFlag": { + "Doc": "三周年活动关卡“愚人号”的“开始行动”界面,没有返回按钮,点一下返回后面任务出错", + "action": "ClickRect", + "cache": false, + "roi": [ + 284, + 509, + 242, + 141 + ], + "specificRect": [ + 20, + 20, + 135, + 35 + ], + "next": [ + "Stop" + ] + }, + "StartButton2": { + "action": "ClickSelf", + "postDelay": 40000, + "roi": [ + 1000, + 350, + 220, + 340 + ], + "next": [ + "PRTS", + "PRTS2", + "PRTS3", + "EndOfAction", + "StartButton2", + "PrtsErrorConfirm", + "OfflineConfirm", + "WaitAfterPRTS" + ] + }, + "PRTS": { + "action": "DoNothing", + "template": "BattleOfficiallyBegin.png", + "roi": [ + 1165, + 20, + 65, + 65 + ], + "maskRange": [ + 100, + 255 + ], + "postDelay": 5000, + "next": [ + "PRTS", + "PRTS2", + "PRTS3", + "EndOfAction", + "PrtsErrorConfirm", + "OfflineConfirm", + "WaitAfterPRTS" + ] + }, + "PRTS2": { + "baseTask": "PRTS", + "algorithm": "OcrDetect", + "text": [ + "接管" + ], + "roi": [ + 324, + 579, + 219, + 141 + ] + }, + "PRTS3": { + "baseTask": "PRTS", + "algorithm": "OcrDetect", + "text": [ + "角色" + ], + "roi": [ + 900, + 500, + 380, + 150 + ] + }, + "WaitAfterPRTS": { + "algorithm": "JustReturn", + "action": "DoNothing", + "next": [ + "PRTS", + "PRTS2", + "PRTS3", + "EndOfAction", + "WaitAfterPRTS@Loading", + "WaitAfterPRTS@Loading2", + "ClickCornerAfterPRTS_1" + ] + }, + "ClickCornerAfterPRTS": { + "Doc": "base_task", + "ClickCorner_Doc": "点击屏幕右边,不会点到掉落物品,且不会关掉关卡选择的一块区域", + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 1000, + 120, + 270, + 10 + ], + "postDelay": 3000, + "next": [ + "EndOfAction", + "StartButton1", + "StartButton2", + "UseMedicine", + "UseStone", + "NoStone", + "WaitAfterPRTS@Loading", + "WaitAfterPRTS@Loading2", + "StartUpThemes#next" + ] + }, + "ClickCornerAfterPRTS_1": { + "baseTask": "ClickCornerAfterPRTS", + "next": [ + "ClickCornerAfterPRTS#next", + "ClickCornerAfterPRTS_2" + ] + }, + "ClickCornerAfterPRTS_2": { + "baseTask": "ClickCornerAfterPRTS", + "onErrorNext": [ + "RestartGameAndContinue" + ] + }, + "EndOfAction": { + "Doc": "本任务注册了插件 StageDropsTaskPlugin", + "roi": [ + 0, + 290, + 70, + 60 + ], + "reduceOtherTimes": [ + "FightMissionFailed" + ], + "next": [ + "ClickCorner" + ] + }, + "EndOfActionThenStop": { + "baseTask": "EndOfAction", + "template": "EndOfAction.png", + "reduceOtherTimes": [], + "preDelay": 5000, + "next": [ + "ClickCornerThenStop" + ] + }, + "FightMissionFailedThenStop": { + "baseTask": "FightMissionFailedAndStop", + "preDelay": 5000, + "next": [ + "EndOfActionThenStop" + ] + }, + "EndOfActionAnnihilation": { + "algorithm": "OcrDetect", + "Doc": "本任务注册了插件 StageDropsTaskPlugin", + "text": [ + "行动结束" + ], + "roi": [ + 0, + 118, + 409, + 194 + ], + "action": "DoNothing", + "next": [ + "ClickCorner" + ] + }, + "StageDrops": { + "algorithm": "JustReturn", + "preDelay": 5000 + }, + "ClickCorner": { + "ClickCorner_Doc": "点击屏幕右边,不会点到掉落物品,且不会关掉关卡选择的一块区域", + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 1000, + 120, + 270, + 10 + ], + "next": [ + "StartButton1", + "StartButton2", + "UseMedicine", + "UseStone", + "NoStone", + "EndOfAction" + ], + "onErrorNext": [ + "RestartGameAndContinue" + ] + }, + "ClickCornerThenStop": { + "baseTask": "ClickCorner", + "next": [] + }, + "UseMedicine": { + "action": "DoNothing", + "templThreshold": 0.7, + "roi": [ + 580, + 50, + 400, + 100 + ], + "next": [ + "MedicineConfirm" + ] + }, + "MedicineConfirm": { + "action": "ClickSelf", + "maxTimes": 0, + "roi": [ + 1000, + 500, + 200, + 150 + ], + "reduceOtherTimes": [ + "StartButton1" + ], + "exceededNext": [ + "CloseStonePage" + ], + "next": [ + "StartButton1", + "OfflineConfirm" + ] + }, + "UseStone": { + "action": "DoNothing", + "roi": [ + 600, + 130, + 420, + 420 + ], + "next": [ + "StoneConfirm" + ] + }, + "DrGrandetUseOriginiums": { + "algorithm": "OcrDetect", + "text": [], + "roi": [ + 50, + 376, + 230, + 40 + ], + "preDelay": 3000, + "preDelay_Doc": "提前多少毫秒再次识别,单位毫秒", + "postDelay": 355000, + "postDelay_Doc": "大于多少毫秒才碎石,否则等待,单位毫秒" + }, + "StoneConfirm": { + "template": "MedicineConfirm.png", + "action": "ClickSelf", + "maxTimes": 0, + "roi": [ + 1000, + 500, + 200, + 150 + ], + "reduceOtherTimes": [ + "StartButton1" + ], + "exceededNext": [ + "CloseStonePage" + ], + "next": [ + "StartButton1", + "OfflineConfirm" + ] + }, + "NoStone": { + "action": "DoNothing", + "roi": [ + 800, + 250, + 350, + 250 + ], + "next": [ + "CloseStonePage" + ] + }, + "CloseStonePage": { + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 0, + 200, + 300, + 400 + ], + "next": [ + "StageSNReturnFlag", + "Stop" + ] + }, + "PrtsErrorConfirm": { + "roi": [ + 0, + 120, + 1280, + 480 + ], + "action": "DoNothing", + "next": [ + "AbandonAction", + "OfflineConfirmAfterBattle" + ] + }, + "OfflineConfirmAfterBattle": { + "template": "PopupConfirm.png", + "action": "ClickSelf", + "roi": [ + 630, + 400, + 650, + 160 + ], + "next": [ + "PRTS", + "PRTS2", + "PRTS3", + "PrtsErrorConfirm", + "OfflineConfirm", + "StartUpThemes#next", + "OfflineConfirmAfterBattle" + ] + }, + "AbandonAction": { + "action": "ClickSelf", + "reduceOtherTimes": [ + "StartButton1", + "StartButton2" + ], + "roi": [ + 0, + 400, + 650, + 230 + ], + "next": [ + "FightMissionFailed", + "EndOfAction", + "OfflineConfirm", + "StartUpThemes#next", + "StartButton1" + ] + }, + "FightMissionFailed": { + "algorithm": "OcrDetect", + "text": [ + "任务失败" + ], + "action": "ClickSelf", + "roi": [ + 36, + 226, + 482, + 269 + ], + "next": [ + "EndOfAction", + "OfflineConfirm", + "StartUpThemes#next", + "StartButton1" + ], + "maxTimes": 3, + "maxTimesDoc": "这是失败次数的限制,超过此限制会停止任务,但每成功一次 EndOfAction 会减少一次失败次数", + "exceededNext": [ + "FightMissionFailedAndStop" + ], + "onErrorNext": [ + "ClickCornerAfterPRTS_1" + ] + }, + "FightMissionFailedAndStop": { + "algorithm": "OcrDetect", + "text": [ + "任务失败" + ], + "action": "ClickSelf", + "roi": [ + 36, + 226, + 482, + 269 + ] + }, + "RestartGameAndContinue": { + "Doc": "base_task", + "algorithm": "JustReturn", + "action": "DoNothing", + "postDelay": 5000, + "next": [ + "StartUpThemes#next", + "RestartGameAndContinue@Loading2", + "ReturnTo", + "FromStageSN" + ] + }, + "Fight": { + "template": "Terminal.png", + "action": "ClickSelf", + "roi": [ + 880, + 100, + 180, + 120 + ], + "exceededNext": [ + "Fight@TodaysSupplies", + "Fight@CloseAnnos#next", + "Stop" + ], + "next": [ + "Fight@GoLastBattle", + "Fight", + "Fight@CloseAnnos#next", + "Fight@TodaysSupplies", + "Stop" + ], + "postDelay": 3000 + }, + "GoLastBattle": { + "algorithm": "OcrDetect", + "text": [ + "前往上一次作战", + "前往", + "作战" + ], + "roi": [ + 916, + 479, + 249, + 127 + ], + "action": "ClickSelf", + "next": [ + "UsePrts-Annihilation", + "UsePrts", + "UsePrts-StageSN", + "StartButton1" + ] + }, + "RecruitBegin": { + "algorithm": "JustReturn", + "action": "DoNothing", + "next": [ + "RecruitFlag", + "Recruit", + "Recruit@ReturnTo", + "Recruit@CloseAnnos#next", + "Recruit@FromStageSN", + "Recruit@TodaysSupplies" + ] + }, + "Recruit": { + "template": "Recruit.png", + "action": "ClickSelf", + "roi": [ + 900, + 450, + 200, + 150 + ], + "maskRange": [ + 1, + 255 + ], + "next": [ + "RecruitBegin@Loading", + "RecruitBegin" + ] + }, + "RecruitFinish": { + "action": "ClickSelf", + "templThreshold": 0.7, + "cache": false, + "roi": [ + 0, + 300, + 1280, + 420 + ], + "next": [ + "RecruitFinish@Loading", + "RecruitFinish", + "Recruit", + "RecruitSkip", + "RecruitSkipWithoutButton" + ] + }, + "RecruitSkip": { + "action": "ClickSelf", + "roi": [ + 1100, + 0, + 180, + 150 + ], + "next": [ + "RecruitSkip", + "RecruitSkipWithoutButton" + ] + }, + "RecruitSkipWithoutButton": { + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 1180, + 15, + 85, + 60 + ], + "next": [ + "RecruitFinish", + "RecruitFlag", + "RecruitSkip", + "Recruit", + "RecruitSkipWithoutButton" + ] + }, + "StartRecruit": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "postDelay": 500, + "text": [ + "开始招" + ], + "roi": [ + 0, + 300, + 1280, + 420 + ] + }, + "RecruitFlag": { + "algorithm": "OcrDetect", + "text": [ + "公开招募" + ], + "roi": [ + 50, + 100, + 230, + 100 + ], + "action": "Stop" + }, + "RecruitNow": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "postDelay": 500, + "cache": false, + "text": [ + "立即招" + ], + "roi": [ + 0, + 300, + 1280, + 420 + ], + "next": [ + "RecruitNowConfirm" + ] + }, + "RecruitNowConfirm": { + "action": "ClickSelf", + "roi": [ + 640, + 450, + 640, + 150 + ], + "next": [ + "RecruitFlag", + "RecruitNowConfirm" + ] + }, + "ActivitiesBegin": { + "algorithm": "JustReturn", + "action": "DoNothing", + "next": [ + "ReturnToActivities", + "MiningActivities", + "RecruitingActivities" + ] + }, + "ReturnToActivities": { + "template": "Return.png", + "templThreshold": 0.7, + "action": "ClickSelf", + "roi": [ + 0, + 0, + 180, + 80 + ], + "next": [ + "ReturnToActivities", + "MiningActivities", + "RecruitingActivities", + "Stop" + ] + }, + "MiningActivities": { + "algorithm": "OcrDetect", + "text": [ + "限时开采", + "开采" + ], + "action": "ClickSelf", + "roi": [ + 0, + 20, + 302, + 302 + ], + "next": [ + "MiningActivityDigging", + "MiningActivitiesReturn" + ] + }, + "MiningActivityDigging": { + "action": "ClickSelf", + "roi": [ + 901, + 469, + 334, + 182 + ], + "next": [ + "MiningActivityDigging", + "MiningActivityDiggingEnd", + "MiningActivitiesReturn" + ] + }, + "MiningActivityDiggingEnd": { + "action": "ClickSelf", + "roi": [ + 559, + 563, + 160, + 157 + ], + "next": [ + "MiningActivitiesReturn" + ] + }, + "MiningActivitiesReturn": { + "template": "CloseAnno.png", + "action": "ClickSelf", + "roi": [ + 1146, + 0, + 134, + 162 + ], + "next": [ + "RecruitingActivities", + "MiningActivitiesReturn", + "Stop" + ] + }, + "RecruitingActivities": { + "algorithm": "OcrDetect", + "text": [ + "赠送", + "次" + ], + "action": "ClickSelf", + "roi": [ + 1148, + 416, + 132, + 138 + ], + "next": [ + "RecruitingActivitiesConfirm", + "RecruitingActivities" + ] + }, + "RecruitingActivitiesConfirm": { + "action": "DoNothing", + "algorithm": "OcrDetect", + "text": [ + "赠送", + "次", + "小时" + ], + "roi": [ + 729, + 515, + 303, + 135 + ], + "next": [ + "RecruitingActivitiesRecruit", + "RecruitingActivitiesConfirm" + ] + }, + "RecruitingActivitiesRecruit": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "text": [ + "寻访一次", + "寻访" + ], + "roi": [ + 770, + 577, + 267, + 143 + ], + "next": [ + "RecruitingActivitiesRecruitNowConfirm" + ] + }, + "RecruitingActivitiesRecruitNowConfirm": { + "action": "ClickSelf", + "template": "RecruitNowConfirm.png", + "roi": [ + 586, + 399, + 694, + 192 + ], + "next": [ + "RecruitingActivitiesRecruitSkip", + "RecruitingActivitiesRecruitNowConfirm", + "RecruitingActivitiesRecruitSkipWithoutButton" + ] + }, + "RecruitingActivitiesRecruitSkip": { + "action": "ClickSelf", + "template": "RecruitSkip.png", + "roi": [ + 1100, + 0, + 180, + 150 + ], + "next": [ + "RecruitingActivitiesRecruitSkip", + "RecruitingActivitiesRecruitSkipWithoutButton" + ] + }, + "RecruitingActivitiesRecruitSkipWithoutButton": { + "action": "ClickRect", + "algorithm": "JustReturn", + "specificRect": [ + 1180, + 15, + 85, + 60 + ], + "next": [ + "RecruitingActivitiesRecruitEnd", + "RecruitingActivitiesRecruitSkip", + "RecruitingActivitiesRecruitSkipWithoutButton" + ] + }, + "RecruitingActivitiesRecruitEnd": { + "algorithm": "OcrDetect", + "action": "DoNothing", + "text": [ + "寻访一次", + "寻访" + ], + "roi": [ + 770, + 577, + 267, + 143 + ], + "next": [ + "Stop" + ] + }, + "AwardBegin": { + "algorithm": "JustReturn", + "action": "DoNothing", + "next": [ + "Award@ReturnTo", + "Award", + "ReceiveAward", + "DailyTask", + "WeeklyTask", + "Award@CloseAnnos#next", + "Award@FromStageSN", + "Award@TodaysSupplies" + ] + }, + "Award": { + "template": "Task.png", + "action": "ClickSelf", + "roi": [ + 700, + 530, + 130, + 130 + ], + "next": [ + "ReceiveAward", + "DailyTask", + "WeeklyTask", + "Award", + "Award@CloseAnnos#next", + "Award@TodaysSupplies" + ] + }, + "ReceiveAward": { + "action": "ClickSelf", + "roi": [ + 950, + 50, + 330, + 150 + ], + "next": [ + "CloseTaskAward" + ] + }, + "CloseTaskAward": { + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 600, + 600, + 60, + 60 + ], + "next": [ + "CloseTaskAwardDouble" + ] + }, + "CloseTaskAwardDouble": { + "Doc": "有时候奖励出的太慢了,所以这里多点一次", + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 600, + 600, + 60, + 60 + ], + "next": [ + "WeeklyTask", + "AwardFinished", + "CloseTaskAwardDouble" + ], + "maxTimes": 10 + }, + "AwardFinished": { + "action": "Stop", + "roi": [ + 400, + 0, + 880, + 100 + ], + "maskRange": [ + 1, + 255 + ] + }, + "DailyTask": { + "action": "ClickSelf", + "cache": false, + "roi": [ + 400, + 0, + 880, + 100 + ], + "next": [ + "ReceiveAward", + "WeeklyTask" + ] + }, + "WeeklyTask": { + "action": "ClickSelf", + "cache": false, + "roi": [ + 400, + 0, + 880, + 100 + ], + "next": [ + "ReceiveAward", + "Stop" + ] + }, + "VisitBegin": { + "algorithm": "JustReturn", + "action": "DoNothing", + "next": [ + "Visit", + "FriendsList", + "StartToVisit", + "VisitNext", + "VisitNextBlack", + "Visit@ReturnTo", + "Visit@CloseAnnos#next", + "Visit@FromStageSN", + "Visit@TodaysSupplies" + ] + }, + "Visit": { + "template": "Friends.png", + "templThreshold": 0.7, + "action": "ClickSelf", + "roi": [ + 250, + 500, + 200, + 150 + ], + "next": [ + "FriendsList", + "Visit", + "Visit@CloseAnnos#next", + "Visit@TodaysSupplies" + ] + }, + "FriendsList": { + "action": "ClickSelf", + "roi": [ + 0, + 150, + 250, + 150 + ], + "next": [ + "StartToVisit", + "NoFriends" + ] + }, + "NoFriends": { + "algorithm": "OcrDetect", + "text": [ + "暂无好友" + ], + "roi": [ + 650, + 100, + 300, + 150 + ], + "action": "DoNothing", + "next": [ + "Home@ReturnTo" + ] + }, + "StartToVisit": { + "action": "ClickSelf", + "cache": false, + "templThreshold": 0.75, + "roi": [ + 900, + 0, + 200, + 720 + ], + "next": [ + "VisitNext", + "VisitNextBlack", + "VisitNextOcr" + ] + }, + "VisitNext": { + "action": "ClickSelf", + "roi": [ + 1080, + 570, + 195, + 130 + ], + "next": [ + "VisitLimited", + "VisitNext", + "VisitNextBlack", + "VisitNextOcr" + ] + }, + "VisitNextOcr": { + "algorithm": "OcrDetect", + "text": [ + "访问下位" + ], + "action": "ClickSelf", + "roi": [ + 1080, + 570, + 195, + 130 + ], + "next": [ + "VisitLimited", + "VisitNext", + "VisitNextBlack", + "VisitNextOcr" + ] + }, + "MallBegin": { + "algorithm": "JustReturn", + "action": "DoNothing", + "next": [ + "Mall@ReturnTo", + "Mall", + "Mall@CloseAnnos#next", + "Mall@FromStageSN", + "Mall@TodaysSupplies" + ] + }, + "Mall": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "text": [ + "中心" + ], + "roi": [ + 740, + 440, + 200, + 100 + ], + "next": [ + "CreditStoreOcr", + "Mall", + "Mall@CloseAnnos#next", + "Mall@TodaysSupplies" + ] + }, + "CreditStoreOcr": { + "algorithm": "OcrDetect", + "text": [ + "信用交易所" + ], + "roi": [ + 1000, + 0, + 280, + 300 + ], + "action": "ClickSelf", + "next": [ + "CollectCredit", + "CreditStoreFailed", + "Stop" + ] + }, + "CreditStoreFailed": { + "action": "DoNothing", + "roi": [ + 0, + 45, + 216, + 124 + ], + "next": [ + "CreditStoreOcr" + ] + }, + "CollectCredit": { + "action": "ClickSelf", + "roi": [ + 900, + 0, + 250, + 100 + ], + "next": [ + "CollectCredit", + "CloseCollectCredit" + ], + "postDelay": 2000 + }, + "CloseCollectCredit": { + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 1000, + 1, + 270, + 340 + ], + "next": [ + "CrisisPopup", + "Stop" + ] + }, + "CrisisPopup": { + "action": "ClickRect", + "roi": [ + 450, + 130, + 400, + 100 + ], + "specificRect": [ + 20, + 20, + 135, + 35 + ] + }, + "VisitLimited": { + "algorithm": "OcrDetect", + "text": [ + "今日参与", + "已达上限" + ], + "action": "DoNothing", + "roi": [ + 900, + 50, + 375, + 140 + ], + "next": [ + "Home@ReturnTo" + ] + }, + "VisitNextBlack": { + "action": "DoNothing", + "roi": [ + 1080, + 570, + 195, + 130 + ], + "next": [ + "Home@ReturnTo" + ] + }, + "Home": { + "template": "Terminal.png", + "action": "Stop", + "roi": [ + 880, + 100, + 180, + 120 + ] + }, + "CreditShop-Commodities": { + "template": "CreditPoint.png", + "rectMove": [ + -60, + -180, + 220, + 220 + ] + }, + "CreditShop-SoldOut": { + "template": "SoldOut.png" + }, + "CreditShop-BuyIt": { + "template": "BuyIt.png", + "action": "ClickSelf", + "roi": [ + 800, + 500, + 250, + 150 + ], + "next": [ + "CreditShop-Bought", + "CreditShop-BuyIt@Loading", + "CreditShop-NoMoney" + ] + }, + "CreditShop-Bought": { + "templThreshold": 0.7, + "action": "ClickSelf", + "roi": [ + 544, + 0, + 210, + 201 + ], + "next": [ + "CreditShop-Bought", + "Stop" + ] + }, + "CreditShop-NoMoney": { + "algorithm": "OcrDetect", + "cache": false, + "text": [ + "信用不足", + "无法购买" + ], + "roi": [ + 940, + 60, + 339, + 110 + ] + }, + "CreditShop-CreditOcr": { + "algorithm": "OcrDetect", + "isAscii": true, + "text": [], + "roi": [ + 1147, + 26, + 57, + 27 + ] + }, + "CreditShop-ProductName": { + "algorithm": "OcrDetect", + "text": [], + "ocrReplace": [], + "roi": [ + 0, + -30, + 220, + 70 + ] + }, + "Stop": { + "algorithm": "JustReturn", + "action": "Stop" + }, + "RecruitTimerDecrement": { + "Doc": "two buttons that adjust recruit timer", + "roi": [ + 350, + 250, + 370, + 100 + ] + }, + "RecruitTags": { + "algorithm": "OcrDetect", + "fullMatch": true, + "text": [], + "roi": [ + 375, + 360, + 480, + 120 + ], + "ocrReplace": [] + }, + "RecruitRefresh": { + "action": "ClickSelf", + "roi": [ + 850, + 340, + 220, + 170 + ], + "next": [ + "RecruitRefreshConfirm" + ] + }, + "RecruitNoRefresh": { + "action": "DoNothing", + "roi": [ + 850, + 340, + 220, + 170 + ] + }, + "RecruitRefreshConfirm": { + "template": "PopupConfirm.png", + "action": "ClickSelf", + "roi": [ + 630, + 400, + 650, + 160 + ], + "preDelay": 500, + "postDelay": 500, + "next": [ + "RecruitRefreshConfirm@Loading", + "SleepThenStop" + ] + }, + "SleepThenStop": { + "algorithm": "JustReturn", + "action": "DoNothing", + "postDelay": 2000 + }, + "RecruitTimerH": { + "Doc": "识别公招小时数", + "algorithm": "OcrDetect", + "isAscii": true, + "withoutDet": true, + "roi": [ + 410, + 195, + 85, + 60 + ], + "text": [ + "01", + "02", + "03", + "04", + "05", + "06", + "07", + "08", + "09" + ] + }, + "RecruitTimerM": { + "Doc": "识别公招分钟数", + "algorithm": "OcrDetect", + "isAscii": true, + "withoutDet": true, + "roi": [ + 575, + 195, + 85, + 60 + ], + "text": [ + "00", + "10", + "20", + "30", + "40", + "50" + ] + }, + "RecruitConfirm": { + "action": "ClickSelf", + "roi": [ + 860, + 540, + 230, + 80 + ], + "next": [ + "RecruitConfirm@Loading", + "RecruitFlag" + ] + }, + "InfrastBegin": { + "algorithm": "JustReturn", + "action": "DoNothing", + "next": [ + "Infrast", + "InfrastEnteredFlag", + "InfrastNotification", + "Infrast@ReturnTo", + "Infrast@CloseAnnos#next", + "Infrast@FromStageSN", + "Infrast@TodaysSupplies", + "Infrast@OfflineConfirm" + ] + }, + "Infrast@ReturnTo": { + "template": "Return.png", + "next": [ + "Infrast", + "InfrastNotification", + "InfrastEnteredFlag", + "Infrast@ReturnTo", + "Infrast@ReturnToConfirm", + "Infrast@CloseAnnos#next", + "Infrast@FromStageSN", + "Infrast@TodaysSupplies", + "Infrast@OfflineConfirm" + ] + }, + "Infrast@ReturnToConfirm": { + "template": "PopupConfirm.png", + "next": [ + "Infrast", + "InfrastNotification", + "InfrastEnteredFlag", + "Infrast@ReturnTo", + "Infrast@CloseAnnos#next", + "Infrast@FromStageSN", + "Infrast@TodaysSupplies", + "Infrast@ReturnToConfirm", + "Infrast@OfflineConfirm" + ] + }, + "Infrast@CloseAnno": { + "template": "CloseAnno.png", + "next": [ + "Infrast", + "InfrastNotification", + "InfrastEnteredFlag", + "Infrast@ReturnTo", + "Infrast@CloseAnnos#next", + "Infrast@FromStageSN", + "Infrast@TodaysSupplies", + "Infrast@OfflineConfirm" + ] + }, + "Infrast@CloseAnnoTexas": { + "template": "CloseAnnoTexas.png", + "next": [ + "Infrast", + "InfrastNotification", + "InfrastEnteredFlag", + "Infrast@ReturnTo", + "Infrast@CloseAnnos#next", + "Infrast@FromStageSN", + "Infrast@TodaysSupplies", + "Infrast@OfflineConfirm" + ] + }, + "Return": { + "action": "ClickSelf", + "templThreshold": 0.7, + "postDelay": 2000, + "cache": false, + "roi": [ + 0, + 0, + 180, + 80 + ] + }, + "Infrast": { + "template": "EnterInfrast.png", + "roi": [ + 900, + 540, + 160, + 160 + ], + "action": "ClickSelf", + "next": [ + "InfrastEnteredFlag", + "Infrast", + "Infrast@CloseAnnos#next", + "Infrast@TodaysSupplies", + "Infrast@OfflineConfirm" + ], + "postDelay": 5000 + }, + "InfrastEnteredFlag": { + "template": "InfrastOverview.png", + "action": "DoNothing", + "roi": [ + 0, + 100, + 300, + 150 + ], + "next": [ + "InfrastNotification", + "Stop" + ] + }, + "InfrastNotification": { + "roi": [ + 1100, + 0, + 180, + 300 + ], + "cache": false, + "action": "ClickSelf", + "next": [ + "InfrastReward", + "InfrastExitReward" + ] + }, + "InfrastReward": { + "algorithm": "OcrDetect", + "text": [ + "可收获", + "订单交付", + "员信赖" + ], + "action": "ClickSelf", + "roi": [ + 0, + 600, + 800, + 118 + ], + "cache": false, + "next": [ + "InfrastReward", + "InfrastExitReward" + ] + }, + "InfrastExitReward": { + "Doc": "干员疲劳、线索收集 是不能一键收获的,所以要先退出一键收获的界面,这里点击的是控制中枢左侧那一片空白的区域", + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 250, + 100, + 380, + 140 + ], + "next": [ + "Stop" + ] + }, + "DroneAssistMfg": { + "action": "ClickSelf", + "roi": [ + 1180, + 500, + 100, + 100 + ], + "maxTimes": 1, + "Doc": "不同于贸易站,制造站的无人机是一次性全用掉的,所以只执行一次就够了", + "next": [ + "DroneMax", + "DroneConfirm", + "DroneCancel" + ] + }, + "DroneAssistTrade": { + "action": "ClickSelf", + "cache": false, + "roi": [ + 250, + 430, + 460, + 120 + ], + "next": [ + "DroneMax", + "DroneConfirm", + "DroneCancel" + ] + }, + "DroneMax": { + "action": "ClickSelf", + "roi": [ + 900, + 300, + 120, + 80 + ], + "next": [ + "DroneConfirm", + "DroneCancel" + ] + }, + "DroneConfirm": { + "action": "ClickSelf", + "postDelay": 3500, + "cache": false, + "roi": [ + 778, + 501, + 377, + 165 + ], + "next": [ + "DroneConfirm@Loading", + "DeliverableOrder", + "DroneAssist-Trade-Stop", + "DroneAssistMfg" + ] + }, + "DroneCancel": { + "action": "ClickSelf", + "cache": false, + "roi": [ + 85, + 498, + 452, + 162 + ] + }, + "DeliverableOrder": { + "action": "ClickSelf", + "roi": [ + 250, + 300, + 230, + 250 + ], + "next": [ + "DeliverableOrder", + "DroneAssistTrade" + ], + "postDelay": 2000 + }, + "DroneAssist-Trade-Stop": { + "Doc": "如果找到了“无人机加速”按钮,却没有找到订单交付:说明上一次无人机没有把一个订单加速完成,也说明没有更多的无人机了,所以直接stop", + "template": "DroneAssistTrade.png", + "action": "Stop" + }, + "ReplenishToMax": { + "action": "ClickSelf", + "roi": [ + 882, + 128, + 165, + 149 + ], + "postDelay": 1000, + "next": [ + "ReplenishToMaxConfirm", + "Stop" + ] + }, + "ReplenishToMaxConfirm": { + "action": "ClickSelf", + "roi": [ + 854, + 504, + 192, + 187 + ], + "postDelay": 1000, + "next": [ + "ReplenishToMaxConfirm@Loading", + "Stop" + ] + }, + "ShamareThumbnail": { + "algorithm": "JustReturn", + "action": "DoNothing", + "next": [ + "ShamareThumbnail1", + "ShamareThumbnail2", + "ShamareThumbnail3" + ] + }, + "ShamareThumbnail1": { + "action": "DoNothing", + "templThreshold": 0.9, + "cache": false, + "roi": [ + 240, + 550, + 380, + 170 + ] + }, + "ShamareThumbnail2": { + "action": "DoNothing", + "templThreshold": 0.9, + "cache": false, + "roi": [ + 240, + 550, + 380, + 170 + ] + }, + "ShamareThumbnail3": { + "action": "DoNothing", + "templThreshold": 0.9, + "cache": false, + "roi": [ + 240, + 550, + 380, + 170 + ] + }, + "InfrastSkillsUpper": { + "template": "empty.png", + "roi": [ + 400, + 280, + 880, + 80 + ] + }, + "InfrastSkillsLower": { + "template": "empty.png", + "roi": [ + 400, + 560, + 880, + 80 + ] + }, + "InfrastOperNameOcr": { + "algorithm": "OcrDetect", + "text": [], + "rectMove_Doc": "基于笑脸的位置移动", + "rectMove": [ + 0, + 20, + 113, + 22 + ] + }, + "InfrastOperFacilityOcr": { + "algorithm": "OcrDetect", + "text": [], + "rectMove_Doc": "基于笑脸的位置移动", + "rectMove": [ + 14, + -209, + 40, + 22 + ] + }, + "InfrastOperFaceHash": { + "algorithm": "Hash", + "hash": [], + "threshold": 40, + "rectMove_Doc": "基于笑脸的位置移动", + "rectMove": [ + 0, + -185, + 113, + 90 + ] + }, + "InfrastSmileyOnRest": { + "template": "SmileyOnRest.png", + "maskRange": [ + 100, + 255 + ], + "templThreshold": 0.8 + }, + "InfrastSmileyOnWork": { + "template": "SmileyOnWork.png", + "maskRange": [ + 100, + 255 + ], + "templThreshold": 0.8 + }, + "InfrastSmileyOnDistract": { + "template": "SmileyOnDistract.png", + "maskRange": [ + 100, + 255 + ], + "templThreshold": 0.8 + }, + "InfrastSkills": { + "template": "empty.png", + "templThreshold": 0.85, + "specialParams": [ + 95 + ], + "specialParams_Doc": "用于做灰度图平均值", + "rectMove_Doc": "基于笑脸的位置移动", + "rectMove": [ + -8, + -42, + 82, + 40 + ], + "maskRange": [ + 1, + 255 + ] + }, + "SleepAfterOperListQuickSwipe": { + "algorithm": "JustReturn", + "postDelay": 1000 + }, + "InfrastOperMoodProgressBar": { + "template": "empty.png", + "templThreshold_Doc": "这里的templThreshold,作为进度条最小灰度阈值使用", + "templThreshold": 160, + "specialParams": [ + 20 + ], + "specialParams_Doc": "作为进度条相邻点最大变化阈值使用", + "rectMove_Doc": "基于笑脸的位置移动", + "rectMove": [ + 21, + 8, + 85, + 4 + ] + }, + "InfrastMfg": { + "template": "Manufacturing.png", + "templThreshold": 0.9, + "maskRange": [ + 1, + 255 + ], + "roi": [ + 0, + 200, + 820, + 520 + ] + }, + "InfrastMfgMini": { + "template": "ManufacturingMini.png", + "templThreshold": 0.9, + "roi": [ + 0, + 240, + 640, + 400 + ], + "maskRange": [ + 1, + 255 + ] + }, + "InfrastTrade": { + "template": "Trade.png", + "templThreshold": 0.9, + "maskRange": [ + 1, + 255 + ], + "roi": [ + 0, + 200, + 820, + 520 + ] + }, + "InfrastTradeMini": { + "template": "TradeMini.png", + "templThreshold": 0.9, + "roi": [ + 0, + 240, + 640, + 400 + ], + "maskRange": [ + 1, + 255 + ] + }, + "InfrastPower": { + "template": "Power.png", + "maskRange": [ + 1, + 255 + ], + "roi": [ + 0, + 200, + 820, + 520 + ], + "templThreshold": 0.95 + }, + "InfrastPowerMini": { + "template": "PowerMini.png", + "roi": [ + 0, + 240, + 640, + 400 + ], + "maskRange": [ + 1, + 255 + ], + "templThreshold": 0.95 + }, + "InfrastDorm": { + "template": "Dorm.png", + "maskRange": [ + 1, + 255 + ], + "roi": [ + 400, + 220, + 880, + 500 + ], + "templThreshold": 0.95 + }, + "InfrastDormMini": { + "template": "DormMini.png", + "maskRange": [ + 1, + 255 + ], + "roi": [ + 620, + 240, + 360, + 480 + ], + "templThreshold": 0.95 + }, + "InfrastOffice": { + "template": "Office.png", + "maskRange": [ + 1, + 255 + ], + "roi": [ + 880, + 330, + 400, + 160 + ], + "templThreshold": 0.95 + }, + "InfrastOfficeMini": { + "template": "OfficeMini.png", + "maskRange": [ + 1, + 255 + ], + "roi": [ + 980, + 320, + 300, + 160 + ], + "templThreshold": 0.95 + }, + "InfrastReception": { + "template": "Reception.png", + "maskRange": [ + 1, + 255 + ], + "roi": [ + 880, + 120, + 400, + 160 + ], + "templThreshold": 0.95 + }, + "InfrastReceptionMini": { + "template": "ReceptionMini.png", + "maskRange": [ + 1, + 255 + ], + "roi": [ + 980, + 180, + 300, + 140 + ], + "templThreshold": 0.95 + }, + "InfrastControl": { + "template": "ControlCenter.png", + "maskRange": [ + 1, + 255 + ], + "roi": [ + 400, + 0, + 880, + 300 + ], + "templThreshold": 0.95 + }, + "InfrastControlMini": { + "template": "ControlCenterMini.png", + "maskRange": [ + 1, + 255 + ], + "roi": [ + 620, + 80, + 360, + 230 + ], + "templThreshold": 0.95 + }, + "InfrastStationedInfo": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "text": [ + "进驻信息" + ], + "roi": [ + 0, + 0, + 150, + 720 + ], + "postDelay": 1000, + "next": [ + "InfrastEnterOperList" + ] + }, + "InfrastEnterOperList": { + "algorithm": "OcrDetect", + "cache": false, + "action": "ClickSelf", + "text": [ + "心情", + "休息中", + "工作中", + "进驻" + ], + "roi": [ + 800, + 0, + 480, + 650 + ], + "postDelay": 1000 + }, + "InfrastClearButton": { + "action": "ClickSelf", + "cache": false, + "roi": [ + 370, + 592, + 275, + 128 + ], + "postDelay": 1000 + }, + "InfrastSortByTrustButton": { + "action": "ClickSelf", + "cache": false, + "roi": [ + 1000, + 0, + 100, + 70 + ], + "next": [ + "InfrastSortByTrustButtonClickAgain" + ] + }, + "InfrastSortByTrustButtonClickAgain": { + "action": "ClickSelf", + "cache": false, + "roi": [ + 1000, + 0, + 100, + 70 + ], + "postDelay": 1000 + }, + "InfrastFilterMenuNotStationed": { + "action": "ClickSelf", + "template": "InfrastFilterMenu.png", + "cache": false, + "roi": [ + 1050, + 0, + 230, + 100 + ], + "next": [ + "InfrastFilterMenuNotStationedButton", + "InfrastFilterMenuNotStationedButtonAlreadyClicked" + ], + "postDelay": 1000 + }, + "InfrastFilterMenuNotStationedButton": { + "action": "ClickSelf", + "templThreshold": 0.85, + "cache": false, + "roi": [ + 300, + 300, + 250, + 150 + ], + "postDelay": 1000, + "next": [ + "InfrastFilterMenuConfirmButton" + ] + }, + "InfrastFilterMenuNotStationedButtonAlreadyClicked": { + "action": "DoNothing", + "cache": false, + "roi": [ + 300, + 300, + 250, + 150 + ], + "next": [ + "InfrastFilterMenuConfirmButton" + ] + }, + "InfrastFilterMenuCancelNotStationed": { + "action": "ClickSelf", + "template": "InfrastFilterMenu.png", + "cache": false, + "roi": [ + 1050, + 0, + 230, + 100 + ], + "next": [ + "InfrastFilterMenuCancelNotStationedButtonAlreadyClicked", + "InfrastFilterMenuCancelNotStationedButton" + ], + "postDelay": 1000 + }, + "InfrastFilterMenuCancelNotStationedButton": { + "action": "DoNothing", + "template": "InfrastFilterMenuNotStationedButton.png", + "templThreshold": 0.85, + "cache": false, + "roi": [ + 300, + 300, + 250, + 150 + ], + "postDelay": 1000, + "next": [ + "InfrastFilterMenuConfirmButton" + ] + }, + "InfrastFilterMenuCancelNotStationedButtonAlreadyClicked": { + "action": "ClickSelf", + "template": "InfrastFilterMenuNotStationedButtonAlreadyClicked.png", + "cache": false, + "roi": [ + 300, + 300, + 250, + 150 + ], + "next": [ + "InfrastFilterMenuConfirmButton" + ] + }, + "InfrastFilterMenuConfirmButton": { + "action": "ClickSelf", + "cache": false, + "roi": [ + 870, + 528, + 152, + 50 + ], + "postDelay": 1000 + }, + "InfrastConfirmButton": { + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 1105, + 655, + 150, + 40 + ], + "postDelay": 500, + "next": [ + "InfrastConfirmButtonWait", + "Stop" + ] + }, + "InfrastConfirmButtonWait": { + "algorithm": "OcrDetect", + "text": [ + "正在提交", + "反馈至神经" + ], + "roi": [ + 700, + 640, + 300, + 80 + ], + "postDelay": 500, + "next": [ + "InfrastConfirmButtonWait", + "Stop" + ] + }, + "InfrastBottomLeftTab": { + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 0, + 540, + 520, + 180 + ], + "preDelay": 1000, + "postDelay": 2000 + }, + "InfrastDormConfirmButton": { + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 1105, + 655, + 150, + 40 + ], + "postDelay": 500, + "next": [ + "InfrastDormConfirmButtonWait", + "InfrastDormDoubleConfirmButton", + "Stop" + ] + }, + "InfrastDormConfirmButtonWait": { + "algorithm": "OcrDetect", + "text": [ + "正在提交", + "反馈至神经" + ], + "roi": [ + 700, + 640, + 300, + 80 + ], + "postDelay": 500, + "next": [ + "InfrastDormConfirmButtonWait", + "InfrastDormDoubleConfirmButton", + "Stop" + ] + }, + "InfrastDormDoubleConfirmButton": { + "template": "DormConfirm.png", + "action": "ClickSelf", + "roi": [ + 630, + 620, + 650, + 100 + ], + "postDelay": 500, + "next": [ + "InfrastDormConfirmButtonWait", + "InfrastDormDoubleConfirmButton", + "Stop" + ] + }, + "InfrastEnterFacility": { + "algorithm": "JustReturn", + "postDelay": 2000 + }, + "InfrastFacilityListTabMfg": { + "template": "FacilityListTabMfg.png", + "roi": [ + 0, + 0, + 250, + 720 + ], + "maskRange": [ + 1, + 255 + ], + "preDelay": 1000, + "postDelay": 1000 + }, + "InfrastFacilityListTabTrade": { + "template": "FacilityListTabTrade.png", + "roi": [ + 0, + 0, + 250, + 720 + ], + "maskRange": [ + 1, + 255 + ], + "preDelay": 1000, + "postDelay": 1000 + }, + "InfrastOperLockedMfg": { + "template": "OperLockedMfg.png", + "roi": [ + 200, + 500, + 430, + 220 + ] + }, + "InfrastOperLockedTrade": { + "template": "OperLockedTrade.png", + "roi": [ + 200, + 500, + 430, + 220 + ] + }, + "InfrastFlagCombatRecord": { + "template": "InfrastMfgDogFoodFlag.png", + "roi": [ + 1000, + 0, + 280, + 720 + ] + }, + "InfrastFlagPureGold": { + "template": "InfrastMfgPureGoldFlag.png", + "roi": [ + 1000, + 0, + 280, + 720 + ] + }, + "InfrastFlagOriginStone": { + "template": "InfrastMfgOriginStoneFlag.png", + "roi": [ + 1000, + 0, + 280, + 720 + ] + }, + "InfrastFlagChip": { + "template": "InfrastMfgChipFlag.png", + "roi": [ + 1000, + 0, + 280, + 720 + ] + }, + "InfrastFlagMoney": { + "template": "InfrastTradeMoneyFlag.png", + "roi": [ + 900, + 500, + 380, + 220 + ] + }, + "InfrastFlagSyntheticJade": { + "template": "InfrastTradeSyntheticJadeFlag.png", + "roi": [ + 900, + 500, + 380, + 220 + ] + }, + "InfrastAddOperatorMfgGentle": { + "template": "AddOperatorMfgGentle.png", + "templThreshold": 0.8, + "roi": [ + 200, + 500, + 500, + 220 + ], + "postDelay": 1500 + }, + "InfrastAddOperatorMfgAggressive": { + "template": "AddOperatorMfgAggressive.png", + "templThreshold": 0.8, + "roi": [ + 200, + 500, + 500, + 100 + ], + "rectMove": [ + 5, + 50, + 80, + 80 + ], + "postDelay": 1500 + }, + "InfrastAddOperatorTradeGentle": { + "template": "AddOperatorTradeGentle.png", + "templThreshold": 0.8, + "roi": [ + 200, + 500, + 500, + 220 + ], + "postDelay": 1500 + }, + "InfrastAddOperatorTradeAggressive": { + "template": "AddOperatorTradeAggressive.png", + "templThreshold": 0.8, + "roi": [ + 200, + 500, + 500, + 100 + ], + "rectMove": [ + 5, + 50, + 80, + 80 + ], + "postDelay": 1500 + }, + "InfrastAddOperatorReceptionGentle": { + "template": "AddOperatorReceptionGentle.png", + "templThreshold": 0.8, + "roi": [ + 0, + 0, + 300, + 720 + ], + "postDelay": 1500 + }, + "InfrastAddOperatorReceptionAggressive": { + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 30, + 200, + 200, + 300 + ], + "postDelay": 1500 + }, + "InfrastOperSelected": { + "template": "empty.png", + "templThreshold": 8000, + "templThreshold_Doc": "这个任务中作为符合range的像素点数量阈值", + "maskRange": [ + 95, + 105 + ], + "rectMove": [ + 0, + -230, + 74, + 283 + ] + }, + "InfrastOperOnShift": { + "template": "OnShift.png", + "templThreshold": 0.8, + "rectMove": [ + 0, + -95, + 70, + 50 + ] + }, + "InfrastClueVacancyNo1": { + "template": "ClueVacancyNo1.png", + "cache": false, + "templThreshold": 0.75, + "roi": [ + 0, + 100, + 500, + 250 + ], + "postDelay": 500 + }, + "InfrastClueVacancyNo2": { + "template": "ClueVacancyNo2.png", + "cache": false, + "templThreshold": 0.75, + "roi": [ + 200, + 200, + 500, + 250 + ], + "postDelay": 500 + }, + "InfrastClueVacancyNo3": { + "template": "ClueVacancyNo3.png", + "cache": false, + "templThreshold": 0.75, + "roi": [ + 400, + 100, + 500, + 250 + ], + "postDelay": 500 + }, + "InfrastClueVacancyNo4": { + "template": "ClueVacancyNo4.png", + "cache": false, + "templThreshold": 0.75, + "roi": [ + 650, + 150, + 500, + 250 + ], + "postDelay": 500 + }, + "InfrastClueVacancyNo5": { + "template": "ClueVacancyNo5.png", + "cache": false, + "templThreshold": 0.75, + "roi": [ + 300, + 420, + 500, + 250 + ], + "postDelay": 500 + }, + "InfrastClueVacancyNo6": { + "template": "ClueVacancyNo6.png", + "cache": false, + "templThreshold": 0.75, + "roi": [ + 500, + 350, + 500, + 250 + ], + "postDelay": 500 + }, + "InfrastClueVacancyNo7": { + "template": "ClueVacancyNo7.png", + "cache": false, + "templThreshold": 0.75, + "roi": [ + 50, + 350, + 500, + 250 + ], + "postDelay": 500 + }, + "InfrastClue": { + "template": "Clue.png", + "maskRange": [ + 1, + 255 + ], + "roi": [ + 800, + 0, + 480, + 720 + ] + }, + "InfrastClueSelfMaybeFull": { + "Doc": "有一种情况是,自己的线索满了,但是却没有new的标记", + "roi": [ + 1110, + 89, + 170, + 177 + ], + "action": "ClickSelf", + "next": [ + "InfrastClueSelfFull", + "CloseCluePage" + ] + }, + "InfrastClueSelfFull": { + "algorithm": "OcrDetect", + "text": [ + "已达线索上限", + "无法获取新的线索", + "上限", + "无法" + ], + "roi": [ + 286, + 550, + 366, + 130 + ], + "next": [ + "CloseCluePageThenSendClue" + ] + }, + "BackToReceptionMain": { + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 280, + 96, + 130, + 32 + ], + "postDelay": 2000 + }, + "CloseCluePageThenSendClue": { + "template": "CloseCluePage.png", + "action": "ClickSelf", + "roi": [ + 930, + 50, + 120, + 120 + ], + "next": [ + "CloseCluePageThenSendClue", + "SendClues" + ] + }, + "InfrastClueSelfNew": { + "template": "ClueNew.png", + "action": "ClickSelf", + "roi": [ + 1150, + 100, + 130, + 80 + ], + "rectMove": [ + -45, + 15, + 60, + 60 + ], + "next": [ + "GetSelfClue" + ] + }, + "GetSelfClue": { + "template": "GetClue1.png", + "action": "ClickSelf", + "roi": [ + 680, + 540, + 250, + 80 + ], + "next": [ + "InfrastClueFriendNew", + "InfrastClueSelfFull", + "CloseCluePage", + "ReceptionFlag" + ] + }, + "InfrastClueFriendNew": { + "template": "ClueNew.png", + "action": "ClickSelf", + "roi": [ + 1150, + 220, + 130, + 80 + ], + "rectMove": [ + -45, + 15, + 60, + 60 + ], + "next": [ + "GetFriendClue" + ] + }, + "GetFriendClue": { + "template": "GetClue2.png", + "action": "ClickSelf", + "roi": [ + 800, + 600, + 480, + 120 + ], + "next": [ + "InfrastClueSelfMaybeFull", + "ReceptionFlag" + ] + }, + "CloseCluePage": { + "template": "CloseCluePage.png", + "action": "ClickSelf", + "roi": [ + 930, + 50, + 120, + 120 + ], + "next": [ + "CloseCluePage", + "SendClueFlag", + "InfrastClueFriendNew", + "ReceptionFlag" + ] + }, + "SendClueFlag": { + "action": "DoNothing", + "Doc": "这里识别的是自己的线索的new:如果获取完自己的线索、再获取完好友送的线索,自己的线索new还亮着,则说明自己的线索没获取成功,即线索满了", + "next": [ + "SendClues" + ], + "roi": [ + 1150, + 100, + 130, + 80 + ], + "template": "ClueNew.png" + }, + "UnlockClues": { + "template": "UnlockClues.png", + "action": "ClickSelf", + "cache": false, + "templThreshold": 0.9, + "roi": [ + 200, + 600, + 700, + 120 + ], + "postDelay": 5000, + "next": [ + "UnlockCluesIsFake", + "InfrastBottomLeftTab" + ] + }, + "UnlockCluesIsFake": { + "Doc": "点了一次解锁了还在这个界面,说明是识别错了", + "cache": false, + "template": "UnlockClues.png", + "action": "ClickSelf", + "templThreshold": 0.9, + "roi": [ + 200, + 600, + 700, + 120 + ] + }, + "ReceptionFlag": { + "action": "DoNothing", + "roi": [ + 350, + 0, + 200, + 100 + ] + }, + "EndOfClueExchangeBegin": { + "algorithm": "JustReturn", + "action": "DoNothing", + "postDelay": 1000, + "next": [ + "EndOfClueExchange", + "ReceptionFlag" + ] + }, + "EndOfClueExchange": { + "cache": false, + "templThreshold": 0.7, + "roi": [ + 0, + 0, + 400, + 200 + ], + "next": [ + "EndOfClueExchangeClose" + ] + }, + "EndOfClueExchangeClose": { + "template": "Return.png", + "templThreshold": 0.7, + "action": "ClickSelf", + "roi": [ + 0, + 0, + 180, + 80 + ], + "next": [ + "ReceptionFlag" + ], + "postDelay": 3000 + }, + "SendClues": { + "action": "ClickSelf", + "roi": [ + 1157, + 346, + 84, + 81 + ], + "maskRange": [ + 1, + 255 + ], + "postDelay": 1000, + "next": [ + "SelectClue", + "CloseSendClue" + ] + }, + "SelectClue": { + "action": "ClickSelf", + "roi": [ + 2, + 133, + 418, + 196 + ], + "maskRange": [ + 1, + 255 + ], + "maxTimes": 3, + "exceededNext": [ + "CloseSendClue" + ], + "next": [ + "ClueGiveTo1st", + "ClueGiveTo2nd", + "ClueGiveTo3rd", + "ClueGiveTo4th", + "ClueGiveToNextPage", + "ClueGiveTo1stConfirm" + ] + }, + "ClueGiveTo1st": { + "template": "ClusCanBeSent.png", + "action": "DoNothing", + "cache": false, + "maskRange": [ + 1, + 255 + ], + "roi": [ + 830, + 70, + 320, + 100 + ], + "next": [ + "ClueGiveTo1stConfirm" + ] + }, + "ClueGiveTo1stConfirm": { + "template": "SendClueConfirm.png", + "action": "ClickSelf", + "roi": [ + 1150, + 50, + 100, + 160 + ], + "next": [ + "ClueGiveTo1stConfirm@Loading", + "SelectClue", + "CloseSendClue" + ] + }, + "ClueGiveTo2nd": { + "template": "ClusCanBeSent.png", + "action": "DoNothing", + "cache": false, + "maskRange": [ + 1, + 255 + ], + "roi": [ + 830, + 220, + 320, + 100 + ], + "next": [ + "ClueGiveTo2ndConfirm" + ] + }, + "ClueGiveTo2ndConfirm": { + "template": "SendClueConfirm.png", + "action": "ClickSelf", + "roi": [ + 1150, + 200, + 100, + 160 + ], + "next": [ + "ClueGiveTo2ndConfirm@Loading", + "SelectClue", + "CloseSendClue" + ] + }, + "ClueGiveTo3rd": { + "template": "ClusCanBeSent.png", + "action": "DoNothing", + "cache": false, + "maskRange": [ + 1, + 255 + ], + "roi": [ + 830, + 370, + 320, + 100 + ], + "next": [ + "ClueGiveTo3rdConfirm" + ] + }, + "ClueGiveTo3rdConfirm": { + "template": "SendClueConfirm.png", + "action": "ClickSelf", + "roi": [ + 1150, + 350, + 100, + 160 + ], + "next": [ + "ClueGiveTo3rdConfirm@Loading", + "SelectClue", + "CloseSendClue" + ] + }, + "ClueGiveTo4th": { + "template": "ClusCanBeSent.png", + "action": "DoNothing", + "cache": false, + "maskRange": [ + 1, + 255 + ], + "roi": [ + 830, + 520, + 320, + 100 + ], + "next": [ + "ClueGiveTo4thConfirm" + ] + }, + "ClueGiveTo4thConfirm": { + "template": "SendClueConfirm.png", + "action": "ClickSelf", + "roi": [ + 1150, + 500, + 100, + 160 + ], + "next": [ + "ClueGiveTo4thConfirm@Loading", + "SelectClue", + "CloseSendClue" + ] + }, + "CloseSendClue": { + "action": "ClickSelf", + "roi": [ + 1225, + 16, + 41, + 41 + ], + "next": [ + "InfrastClueSelfNew", + "InfrastClueFriendNew", + "ReceptionFlag" + ] + }, + "ClueGiveToNextPage": { + "action": "ClickSelf", + "templThreshold": 0.95, + "roi": [ + 1184, + 655, + 50, + 48 + ], + "maskRange": [ + 1, + 255 + ], + "next": [ + "ClueGiveTo1st", + "ClueGiveTo2nd", + "ClueGiveTo3rd", + "ClueGiveTo4th", + "ClueGiveToNextPage", + "ClueGiveTo1stConfirm" + ] + }, + "InfrastOperListTabSkillUnClicked": { + "action": "ClickSelf", + "roi": [ + 818, + 0, + 128, + 115 + ], + "templThreshold": 0.7, + "postDelay": 1500 + }, + "InfrastOperListTabWorkStatusUnClicked": { + "action": "ClickSelf", + "roi": [ + 719, + 0, + 158, + 119 + ], + "templThreshold": 0.7, + "postDelay": 1500 + }, + "InfrastOperListTabMoodDoubleClick": { + "action": "ClickSelf", + "roi": [ + 900, + 0, + 131, + 117 + ], + "templThreshold": 0.7, + "maxTimes": 2, + "next": [ + "InfrastOperListTabMoodDoubleClick" + ] + }, + "InfrastOperListTabMoodDoubleClickWhenUnclicked": { + "action": "ClickSelf", + "roi": [ + 900, + 0, + 131, + 117 + ], + "templThreshold": 0.7, + "next": [ + "InfrastOperListTabMoodClick" + ] + }, + "InfrastOperListTabMoodClick": { + "template": "InfrastOperListTabMoodDoubleClick.png", + "action": "ClickSelf", + "roi": [ + 900, + 0, + 131, + 117 + ], + "templThreshold": 0.7 + }, + "BattleStageName": { + "algorithm": "OcrDetect", + "cache": false, + "text": [], + "ocrReplace": [ + [ + "旋涡", + "漩涡" + ] + ], + "roi": [ + 250, + 435, + 800, + 100 + ] + }, + "BattleSupportUnitFormation": { + "action": "ClickSelf", + "roi": [ + 995, + 248, + 244, + 167 + ], + "next": [ + "BattleSupportUnitFormationSelect", + "BattleSupportUnitFormation" + ] + }, + "BattleSupportUnitFormationSelect": { + "action": "ClickSelf", + "roi": [ + 115, + 595, + 1165, + 75 + ], + "next": [ + "BattleSupportUnitFormationSelect", + "Stop" + ] + }, + "BattleQuickFormation": { + "action": "ClickSelf", + "roi": [ + 816, + 0, + 404, + 149 + ], + "postDelay": 1000, + "next": [ + "BattleQuickFormationClear", + "BattleQuickFormation" + ] + }, + "BattleQuickFormationClear": { + "action": "ClickSelf", + "roi": [ + 334, + 605, + 286, + 115 + ], + "postDelay": 500, + "next": [ + "BattleQuickFormationExpandRole", + "Stop" + ] + }, + "BattleQuickFormationExpandRole": { + "action": "ClickSelf", + "roi": [ + 1152, + 0, + 128, + 138 + ], + "postDelay": 500 + }, + "BattleQuickFormationRole": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "roi": [ + 1155, + 41, + 125, + 679 + ], + "templThreshold": 0.7, + "maskRange": [ + 100, + 255 + ], + "postDelay": 500 + }, + "BattleQuickFormationRole-All": { + "baseTask": "BattleQuickFormationRole", + "roi": [ + 1163, + 0, + 117, + 133 + ] + }, + "BattleQuickFormationRole-Pioneer": { + "baseTask": "BattleQuickFormationRole" + }, + "BattleQuickFormationRole-Warrior": { + "baseTask": "BattleQuickFormationRole" + }, + "BattleQuickFormationRole-Tank": { + "baseTask": "BattleQuickFormationRole" + }, + "BattleQuickFormationRole-Caster": { + "baseTask": "BattleQuickFormationRole" + }, + "BattleQuickFormationRole-Medic": { + "baseTask": "BattleQuickFormationRole" + }, + "BattleQuickFormationRole-Sniper": { + "baseTask": "BattleQuickFormationRole" + }, + "BattleQuickFormationRole-Special": { + "baseTask": "BattleQuickFormationRole" + }, + "BattleQuickFormationRole-Support": { + "baseTask": "BattleQuickFormationRole" + }, + "BattleQuickFormation-OperNameFlag": { + "templThreshold": 0.92, + "roi": [ + 370, + 250, + 715, + 420 + ] + }, + "BattleQuickFormation-OperNameFlag-SpecialFocus": { + "templThreshold": 0.8, + "roi": [ + 370, + 250, + 715, + 420 + ], + "maskRange": [ + 1, + 250 + ] + }, + "BattleQuickFormationOCR": { + "algorithm": "OcrDetect", + "fullMatch": true, + "text": [], + "roi": [ + 20, + -8, + 107, + 20 + ], + "postDelay": 100 + }, + "BattleQuickFormationSkill1": { + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 15, + 385, + 80, + 100 + ] + }, + "BattleQuickFormationSkill2": { + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 15, + 560, + 80, + 30 + ] + }, + "BattleQuickFormationSkill3": { + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 15, + 710, + 80, + 10 + ] + }, + "BattleQuickFormationConfirm": { + "action": "ClickSelf", + "roi": [ + 880, + 608, + 400, + 112 + ], + "postDelay": 1000 + }, + "BattleStartPre": { + "algorithm": "OcrDetect", + "text": [ + "开始行动", + "开始突袭" + ], + "cache": false, + "roi": [ + 1000, + 600, + 280, + 120 + ], + "action": "ClickSelf", + "postDelay": 1000 + }, + "BattleStart": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "roi": [ + 989, + 318, + 232, + 374 + ], + "postDelay": 3000, + "next": [ + "BattleOfficiallyBegin", + "SkipThePreBattlePlot", + "Stop" + ] + }, + "SkipThePreBattlePlot": { + "action": "ClickSelf", + "roi": [ + 1096, + 0, + 182, + 131 + ], + "next": [ + "SkipThePreBattlePlotConfirm", + "SkipThePreBattlePlot" + ], + "maskRange": [ + 100, + 255 + ] + }, + "SkipThePreBattlePlotConfirm": { + "action": "ClickSelf", + "roi": [ + 721, + 390, + 149, + 144 + ], + "maskRange": [ + 100, + 255 + ] + }, + "BattleStartNormal": { + "baseTask": "BattleStart" + }, + "BattleStartRaid": { + "baseTask": "BattleStart" + }, + "BattleStartExercise": { + "baseTask": "BattleStart" + }, + "BattleStartSimulation": { + "action": "ClickSelf", + "roi": [ + 417, + 567, + 444, + 153 + ], + "postDelay": 2000 + }, + "BattleOperName": { + "algorithm": "OcrDetect", + "text": [], + "fullMatch": true, + "roi": [ + 0, + 182, + 160, + 30 + ] + }, + "BattleOfficiallyBegin": { + "action": "DoNothing", + "roi": [ + 1165, + 20, + 65, + 65 + ], + "maskRange": [ + 100, + 255 + ], + "templThreshold": 0.9 + }, + "BattleSpeedUp": { + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 1070, + 20, + 60, + 60 + ] + }, + "BattlePause": { + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 1170, + 20, + 60, + 60 + ], + "postDelay": 100 + }, + "BattleCancelSelection": { + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 150, + 0, + 1000, + 60 + ], + "postDelay": 500 + }, + "BattleAvatarData": { + "template": "empty.png", + "templThreshold": 0.6 + }, + "DiceAvatarMatch": { + "template": "empty.png", + "templThreshold": 0.8 + }, + "BattleKillsFlag": { + "roi": [ + 150, + 0, + 600, + 60 + ], + "maskRange": [ + 1, + 255 + ], + "templThreshold": 0.6 + }, + "BattleKills": { + "algorithm": "OcrDetect", + "isAscii": true, + "text": [], + "roi": [ + 50, + 0, + 100, + 40 + ] + }, + "BattleCostData": { + "algorithm": "OcrDetect", + "isAscii": true, + "text": [], + "roi": [ + 1196, + 494, + 83, + 44 + ] + }, + "BattleAutoSkillFlag": { + "template": "BattleSkillReady.png", + "cache": false, + "rectMove": [ + -40, + -150, + 80, + 100 + ], + "maskRange": [ + 1, + 255 + ] + }, + "BattleSkillReadyOnClick": { + "roi": [ + 748, + 414, + 210, + 118 + ], + "templThreshold": 0.7, + "cache": false, + "action": "ClickSelf", + "rectMove": [ + 0, + -110, + 90, + 90 + ], + "postDelay": 300 + }, + "BattleSkillStopOnClick": { + "roi": [ + 748, + 414, + 210, + 118 + ], + "templThreshold": 0.7, + "cache": false, + "action": "ClickSelf", + "rectMove": [ + 0, + -110, + 90, + 90 + ], + "postDelay": 300 + }, + "BattleUseOper": { + "algorithm": "JustReturn", + "preDelay": 100, + "postDelay": 200, + "Doc": "pre 是从点击干员,到干员信息弹出来等待的时间;post 是干员上场,到设置朝向之间等待的时间" + }, + "BattleSwipeOper": { + "algorithm": "JustReturn", + "preDelay": 400, + "postDelay": 150, + "Doc": "pre 是将干员滑动到场上的 duration 系数;post 是设置干员朝向滑动的 duration", + "specialParams": [ + 400, + 2, + 0 + ], + "specialParamsDoc": [ + "设置朝向时的滑动距离", + "滑动初速度(平均速度是固定的,初速度快末速度慢相当于一直减速)", + "滑动末速度" + ] + }, + "BattleOpersFlag": { + "templThreshold": 0.85, + "roi": [ + 0, + 588, + 1280, + 18 + ], + "maskRange": [ + 1, + 255 + ] + }, + "BattleOperClickRange": { + "template": "empty.png", + "rectMove": [ + -45, + 6, + 75, + 120 + ] + }, + "BattleOperAvailable": { + "template": "empty.png", + "specialParams": [ + 100 + ], + "specialParams_Doc": "用于做V通道平均值阈值", + "rectMove": [ + 0, + 0, + 10, + 10 + ] + }, + "BattleOperCooling": { + "template": "empty.png", + "specialParams": [ + 1500 + ], + "specialParams_Doc": "这个任务中作为符合range的像素点数量阈值", + "rectMove": [ + -45, + 6, + 75, + 120 + ], + "maskRange_Doc": "拿来做H通道的范围", + "maskRange": [ + 0, + 10 + ], + "specificRect_Doc": "拿来做S、V通道的范围", + "specificRect": [ + 200, + 255, + 0, + 100 + ] + }, + "BattleOperRoleRange": { + "template": "empty.png", + "rectMove": [ + -41, + 6, + 31, + 25 + ] + }, + "BattleOperRoleCaster": { + "templThreshold": 0.75 + }, + "BattleOperRoleMedic": { + "templThreshold": 0.75 + }, + "BattleOperRolePioneer": { + "templThreshold": 0.75 + }, + "BattleOperRoleSniper": { + "templThreshold": 0.75 + }, + "BattleOperRoleSpecial": { + "templThreshold": 0.75 + }, + "BattleOperRoleSupport": { + "templThreshold": 0.75 + }, + "BattleOperRoleTank": { + "templThreshold": 0.75 + }, + "BattleOperRoleWarrior": { + "templThreshold": 0.75 + }, + "BattleOperRoleDrone": { + "templThreshold": 0.75 + }, + "BattleOperCostRange": { + "algorithm": "Hash", + "hash": [], + "rectMove": [ + -10, + 12, + 30, + 17 + ] + }, + "BattleOperCostChannelH": { + "algorithm": "Hash", + "hash": [], + "maskRange": [ + 0, + 255 + ] + }, + "BattleOperCostChannelS": { + "algorithm": "Hash", + "hash": [], + "maskRange": [ + 0, + 50 + ] + }, + "BattleOperCostChannelV": { + "algorithm": "Hash", + "hash": [], + "maskRange": [ + 80, + 255 + ] + }, + "BattleOperCost0": { + "algorithm": "Hash", + "hash": [ + "1ff83ffc3c3e780e700ee007e007e007e007e007e007f00f780e7c1e3ffc1ff8" + ] + }, + "BattleOperCost1": { + "algorithm": "Hash", + "hash": [ + "00ff03ff1fff7fffffffff3f003f003f003f003f003f003f003f003f003f003f" + ] + }, + "BattleOperCost2": { + "algorithm": "Hash", + "hash": [ + "3ffe7ffefc3ff81fe01f001f001f003e007e01fc07f81fe03fc07e00ffffffff" + ] + }, + "BattleOperCost3": { + "algorithm": "Hash", + "hash": [ + "3ffe7ffffc3ff81fe01f001f03fe07fc07fe003f001fe01fe01ff83fffff7ffe", + "07f01ffe700e700700070007000c0078003c000700070007e007700e1e7e0ff0" + ] + }, + "BattleOperCost4": { + "algorithm": "Hash", + "hash": [ + "007c00fc01fc03fc03fc0fbc1f3c3f3c7e3cfc3cffffffffffff003c003c003c" + ] + }, + "BattleOperCost5": { + "algorithm": "Hash", + "hash": [ + "3ffe7c007c0078007ff87ffe7ffe7c3f781f0007e007f81ffc1fffff7ffe3ffc", + "3ffe38003800780070007ff87ffe703e000f000fc00ff81ffc3f7ffe3ffc07e0" + ] + }, + "BattleOperCost6": { + "algorithm": "Hash", + "hash": [ + "03c003800f001f003e003ff87ffc7c3ef00ee00fe007e00ff00e7c3e3ffc1ff8" + ] + }, + "BattleOperCost7": { + "algorithm": "Hash", + "hash": [ + "ffffffff003e007e007c00f800f801f001f003c003c00f801f001f003e003e00" + ] + }, + "BattleOperCost8": { + "algorithm": "Hash", + "hash": [ + "3ffc7ffe7c3e700e700e7c7e7ffc3ffc7ffefefef00fe00ff00ff03ffffe7ffe" + ] + }, + "BattleOperCost9": { + "algorithm": "Hash", + "hash": [ + "3ffc7ffe7c3ff00ff007f007f00ffc0f7fff3ffe1ffe00fc01f803f00ff00fc0" + ] + }, + "BattleHpFlag": { + "roi": [ + 400, + 0, + 650, + 60 + ], + "rectMove": [ + 40, + 0, + 100, + 35 + ] + }, + "BattleHpFlag2": { + "roi": [ + 400, + 0, + 650, + 60 + ], + "rectMove": [ + 40, + 0, + 100, + 35 + ] + }, + "BattleHpChannelH": { + "algorithm": "Hash", + "hash": [], + "maskRange": [ + 0, + 1 + ] + }, + "BattleHpChannelS": { + "algorithm": "Hash", + "hash": [], + "maskRange": [ + 120, + 150 + ] + }, + "BattleHpChannelV": { + "algorithm": "Hash", + "hash": [], + "maskRange": [ + 170, + 255 + ] + }, + "BattleHp0": { + "algorithm": "Hash", + "hash": [ + "03e007fc3c0638066003400140014001c001400140016003600338061e1c07f8" + ] + }, + "BattleHp1": { + "algorithm": "Hash", + "hash": [ + "003f01ff1ffffe0f000700070007000700070007000700070007000700070007" + ] + }, + "BattleHp2": { + "algorithm": "Hash", + "hash": [ + "07e03c3c2007c0030003000300030007001c003800e003c004003800f800ffff" + ] + }, + "BattleHp3": { + "algorithm": "Hash", + "hash": [ + "0ff07e78700ee00700070006000e03f80078000e000700078007e00e703e1ff8" + ] + }, + "BattleHp4": { + "algorithm": "Hash", + "hash": [ + "0010003c007c007c01dc039c061c0c1c381c301c783effff001c001c001c001c" + ] + }, + "BattleHp5": { + "algorithm": "Hash", + "hash": [ + "1ff87ffe7000600060006000fff0f038e00e0006000700078007e00e703e1ff0" + ] + }, + "BattleHp6": { + "algorithm": "Hash", + "hash": [ + "018002000e000c0010003fe07808f004c006800380018003c007e006300c1ff0" + ] + }, + "BattleHp7": { + "algorithm": "Hash", + "hash": [ + "7fffffff00070006000e003800380070004001c0018003800e000e001c001000" + ] + }, + "BattleHp8": { + "algorithm": "Hash", + "hash": [ + "0ff01038600ee006e006600670081ff01c7860068007800180018007600e1ff8" + ] + }, + "BattleHp9": { + "algorithm": "Hash", + "hash": [ + "07e01e78700e6006e007e007e0076006700e1ffe011800700060008001800700" + ] + }, + "BattleSkillReady": { + "roi": [ + 0, + 0, + 1280, + 580 + ], + "maskRange": [ + 1, + 255 + ], + "rectMove": [ + 0, + 100, + 40, + 40 + ] + }, + "BattleUseSkillJustClick": { + "algorithm": "JustReturn", + "postDelay": 100, + "action": "ClickRect", + "specificRect": [ + 850, + 390, + 50, + 40 + ] + }, + "BattleOperRetreat": { + "Doc": "这个按钮图标在不同关卡及位置中是有畸变的,模板匹配结果很不准,不建议用这个Task", + "roi": [ + 554, + 146, + 119, + 118 + ], + "templThreshold": 0.7, + "cache": false, + "action": "ClickSelf", + "maskRange": [ + 100, + 255 + ], + "postDelay": 300 + }, + "BattleOperRetreatJustClick": { + "algorithm": "JustReturn", + "preDelay": 200, + "postDelay": 300, + "action": "ClickRect", + "specificRect": [ + 580, + 190, + 40, + 30 + ] + }, + "StageDrops-StageName": { + "algorithm": "OcrDetect", + "action": "DoNothing", + "isAscii": true, + "text": [], + "ocrReplace": [ + [ + "^.+-EX-?\\d+$", + "_INVALID_" + ], + [ + "^.+-S-?\\d+$", + "_INVALID_" + ], + [ + "^.+-MO-?\\d+$", + "_INVALID_" + ], + [ + "Ap-", + "AP-" + ], + [ + "Bl-", + "BI-" + ] + ], + "roi": [ + 140, + 60, + 200, + 55 + ] + }, + "StageDrops-BaseLine": { + "template": "empty.png", + "roi": [ + 0, + 636, + 1280, + 2 + ], + "templThreshold": 17, + "templThreshold_Doc": "这里用来作为基线间距阈值", + "specialParams": [ + 100 + ], + "specialParams_Doc": "基线长度阈值(不小于100)", + "maskRange": [ + 70, + 255 + ], + "rectMove": [ + 181, + 40, + 25, + 0 + ], + "rectMove_Doc": "作为hsv阈值使用" + }, + "StageDrops-Item": { + "template": "empty.png", + "templThreshold": 0.65, + "roi": [ + 0, + -130, + 138, + 130 + ], + "maskRange": [ + 1, + 255 + ] + }, + "StageDrops-DropType-ExpAndLMB": { + "roi": [ + 0, + 2, + 0, + 25 + ], + "Doc": "roi 只用到了 y 和 height" + }, + "StageDrops-DropType-Normal": { + "roi": [ + 0, + 2, + 0, + 25 + ], + "Doc": "roi 只用到了 y 和 height" + }, + "StageDrops-DropType-Extra": { + "roi": [ + 0, + 2, + 0, + 25 + ], + "Doc": "roi 只用到了 y 和 height" + }, + "StageDrops-DropType-Furniture": { + "roi": [ + 0, + 2, + 0, + 25 + ], + "Doc": "roi 只用到了 y 和 height" + }, + "StageDrops-DropType-Special": { + "roi": [ + 0, + 2, + 0, + 25 + ], + "Doc": "roi 只用到了 y 和 height" + }, + "StageDrops-DropType-Sanity": { + "roi": [ + 0, + 2, + 0, + 25 + ], + "Doc": "roi 只用到了 y 和 height" + }, + "StageDrops-DropType-Reward": { + "roi": [ + 0, + 2, + 0, + 25 + ], + "Doc": "roi 只用到了 y 和 height" + }, + "StageDrops-Quantity": { + "template": "empty.png", + "templThreshold": 3, + "templThreshold_Doc": "这里用来作为字间距阈值", + "roi": [ + 62, + 90, + 43, + 22 + ], + "maskRange": [ + 150, + 255 + ] + }, + "NumberOcrReplace": { + "algorithm": "OcrDetect", + "isAscii": true, + "text": [], + "ocrReplace": [ + [ + "o", + "0" + ], + [ + "O", + "0" + ], + [ + "I", + "1" + ], + [ + "l", + "1" + ], + [ + "方", + "万" + ], + [ + "萬", + "万" + ], + [ + "만", + "万" + ], + [ + "億", + "亿" + ], + [ + "억", + "亿" + ] + ] + }, + "StageDrops-Difficulty-Tough": { + "templThreshold": 0.7, + "roi": [ + 0, + 0, + 220, + 220 + ] + }, + "StageDrops-Difficulty-Normal": { + "templThreshold": 0.7, + "roi": [ + 0, + 0, + 220, + 220 + ] + }, + "StageDrops-Difficulty-Normal2": { + "templThreshold": 0.7, + "roi": [ + 0, + 0, + 220, + 220 + ] + }, + "StageDrops-Stars-3": { + "templThreshold": 0.8, + "roi": [ + 50, + 270, + 250, + 100 + ] + }, + "StageDrops-Stars-2": { + "templThreshold": 0.8, + "roi": [ + 50, + 270, + 250, + 100 + ] + }, + "DepotMatchData": { + "template": "empty.png", + "templThreshold": 0.6, + "roi": [ + 0, + 0, + 1060, + 596 + ], + "roi_Doc": "作为截图的缩放尺寸使用", + "maskRange": [ + 1, + 255 + ] + }, + "DepotBaseRect": { + "template": "empty.png", + "roi": [ + 0, + 90, + 219, + 150 + ] + }, + "DepotQuantity": { + "template": "empty.png", + "templThreshold": 5, + "templThreshold_Doc": "这里用来作为字间距阈值", + "specialParams": [ + 120 + ], + "specialParams_Doc": "背景色亮度值上限", + "roi": [ + 36, + 69, + 47, + 20 + ], + "maskRange_Doc": "拿来做H通道的范围", + "maskRange": [ + 0, + 180 + ], + "specificRect_Doc": "拿来做S、V通道的范围", + "specificRect": [ + 0, + 35, + 125, + 255 + ] + }, + "DepotBegin": { + "algorithm": "JustReturn", + "action": "DoNothing", + "next": [ + "DepotEnter", + "DepotMaterialTab", + "DepotMaterialTabClicked" + ] + }, + "DepotEnter": { + "action": "ClickSelf", + "roi": [ + 1109, + 560, + 171, + 160 + ], + "next": [ + "DepotMaterialTab" + ] + }, + "DepotMaterialTab": { + "action": "ClickSelf", + "roi": [ + 1026, + 0, + 254, + 138 + ], + "next": [ + "DepotMaterialTabClicked" + ] + }, + "DepotMaterialTabClicked": { + "action": "DoNothing", + "roi": [ + 1026, + 0, + 254, + 138 + ] + }, + "InfrastOperListSlowlySwipeToTheRight": { + "baseTask": "SlowlySwipeToTheRight", + "specificRect": [ + 1000, + 350, + 20, + 20 + ], + "rectMove": [ + 400, + 350, + 20, + 20 + ] + }, + "InfrastOperListSwipeToTheLeft": { + "baseTask": "SwipeToTheLeft", + "specificRect": [ + 400, + 350, + 20, + 20 + ], + "rectMove": [ + 1150, + 350, + 20, + 20 + ] + }, + "BattleFormationOperListSlowlySwipeToTheRight": { + "baseTask": "SlowlySwipeToTheRight", + "specificRect": [ + 1100, + 350, + 20, + 20 + ], + "rectMove": [ + 400, + 350, + 20, + 20 + ] + }, + "Roguelike@Abandon": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "roi": [ + 1076, + 243, + 177, + 179 + ], + "next": [ + "Roguelike@AbandonConfirm", + "Roguelike@Abandon" + ] + }, + "Roguelike@AbandonConfirm": { + "action": "ClickSelf", + "roi": [ + 720, + 413, + 249, + 168 + ], + "next": [ + "Roguelike@MissionFailedFlag2", + "Roguelike@StartExplore" + ] + }, + "Roguelike@Begin": { + "algorithm": "JustReturn", + "next": [ + "Roguelike@ChooseDifficulty", + "Roguelike@StartExplore", + "Roguelike@NextLevel#next", + "Roguelike@GetDrops#next", + "Roguelike@NextLevel", + "Roguelike@ExitThenAbandon", + "Roguelike@Abandon", + "Roguelike@TodoEnter", + "Roguelike@Continue", + "Roguelike@ReturnTo", + "Roguelike@ReturnToConfirm", + "Roguelike@StartUpThemes#next", + "Roguelike@FromStageSN" + ] + }, + "Roguelike@ChooseDifficulty": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "roi": [ + 1061, + 373, + 208, + 71 + ], + "next": [ + "Roguelike@StartExplore" + ] + }, + "Roguelike@ChooseOper": { + "Doc": "本任务注册了插件 RoguelikeRecruitTaskPlugin", + "algorithm": "JustReturn", + "action": "DoNothing" + }, + "Roguelike@ChooseOperConfirm": { + "action": "ClickSelf", + "cache": false, + "roi": [ + 1016, + 602, + 264, + 118 + ], + "next": [ + "Roguelike@RecruitSkip", + "Roguelike@TraderRandomShopping", + "Roguelike@StageEncounterGiveUpRecruitConfirm", + "Roguelike@ChooseOperConfirm", + "Roguelike@RecruitWithoutButton" + ] + }, + "Roguelike@ChooseOperFlag": { + "template": "Roguelike@ChooseOperConfirm.png", + "action": "DoNothing", + "roi": [ + 1016, + 602, + 264, + 118 + ], + "next": [ + "Roguelike@RecruitCloseGuide", + "Roguelike@ChooseOper" + ] + }, + "Roguelike@ClickToDrops": { + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 600, + 600, + 50, + 50 + ], + "postDelay": 500, + "next": [ + "Roguelike@NextLevel#next", + "Roguelike@ChooseOperFlag", + "Roguelike@StageEncounterSpecialClose", + "Roguelike@TraderRandomShopping", + "Roguelike@StageTraderLeave", + "Roguelike@DropsFlag", + "Roguelike@StartUpThemes#next", + "Roguelike@ClickToDrops" + ] + }, + "Roguelike@ClickToStartPoint": { + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 600, + 600, + 50, + 50 + ], + "postDelay": 1000, + "next": [ + "Roguelike@StartExplore", + "Roguelike@NextLevel#next", + "Roguelike@GamePass", + "Roguelike@TodoEnter", + "Roguelike@Continue", + "Roguelike@ReturnTo", + "Roguelike@ReturnToConfirm", + "Roguelike@StartUpThemes#next", + "Roguelike@ClickToStartPoint" + ] + }, + "Roguelike@CloseCollection": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 569, + 400, + 140, + 139 + ] + }, + "Roguelike@Continue": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 1032, + 487, + 248, + 215 + ], + "postDelay": 500, + "next": [ + "Roguelike@MissionFailedFlag2", + "Roguelike@ExitThenAbandon" + ] + }, + "Roguelike@DialogSkip": { + "Doc": "月度小队,跳过对话", + "action": "ClickSelf", + "roi": [ + 1106, + 0, + 174, + 139 + ], + "next": [ + "Roguelike@DialogSkip", + "Roguelike@DialogSkipConfirm" + ] + }, + "Roguelike@DialogSkipConfirm": { + "action": "ClickSelf", + "roi": [ + 725, + 409, + 249, + 169 + ] + }, + "Roguelike@DropsFlag": { + "roi": [ + 875, + 601, + 152, + 119 + ] + }, + "Roguelike@EnterAfterRecruit": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "roi": [ + 1078, + 234, + 202, + 239 + ], + "postDelay": 3000, + "next": [ + "Roguelike@NextLevel#next" + ] + }, + "Roguelike@ExitThenAbandon": { + "action": "ClickSelf", + "cache": false, + "roi": [ + 0, + 0, + 320, + 160 + ] + }, + "Roguelike@FormationConfirm": { + "action": "ClickSelf", + "roi": [ + 1015, + 601, + 265, + 119 + ], + "next": [ + "Roguelike@StartAction" + ] + }, + "Roguelike@FromIntegratedStrategies": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "text": [ + "进入主题" + ], + "roi": [ + 1006, + 445, + 246, + 157 + ], + "next": [ + "Roguelike@FromIntegratedStrategies", + "Roguelike@Begin" + ] + }, + "Roguelike@GamePass": { + "Doc": "base_task", + "template": "empty.png", + "cache": false, + "roi": [ + 400, + 0, + 500, + 300 + ], + "next": [ + "Roguelike@ClickToStartPoint" + ] + }, + "Roguelike@GamePassSkip1": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "roi": [ + 1090, + 0, + 190, + 144 + ], + "next": [ + "Roguelike@GamePassSkip1Confirm" + ] + }, + "Roguelike@GamePassSkip1Confirm": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "roi": [ + 715, + 282, + 171, + 155 + ] + }, + "Roguelike@GamePassSkip2": { + "action": "ClickSelf", + "roi": [ + 1109, + 0, + 171, + 138 + ], + "next": [ + "Roguelike@GamePassTheEndConfirm", + "Roguelike@GamePass", + "Roguelike@ClickToStartPoint" + ] + }, + "Roguelike@GamePassTheEndConfirm": { + "action": "ClickSelf", + "roi": [ + 554, + 512, + 177, + 161 + ], + "next": [ + "Roguelike@GamePass" + ] + }, + "Roguelike@GetDrop": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 0, + 471, + 1280, + 157 + ], + "templThreshold": 0.85, + "postDelay": 1000 + }, + "Roguelike@GetDrop1": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Roguelike@GetDrop", + "Doc2": "源石锭,绿色的“拿走”按钮", + "next": [ + "Roguelike@DropsFlag", + "Roguelike@ChooseOperFlag" + ] + }, + "Roguelike@GetDrop2": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Roguelike@GetDrop", + "Doc2": "希望,黄色的“拿走”按钮", + "next": [ + "Roguelike@DropsFlag", + "Roguelike@ChooseOperFlag", + "Roguelike@ClickToDrops" + ] + }, + "Roguelike@GetDrop3": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Roguelike@GetDrop", + "Doc2": "未知的剧目,黄色的“翻开”按钮", + "next": [ + "Roguelike@ChooseOperFlag", + "Roguelike@ClickToDrops" + ] + }, + "Roguelike@GetDropCompleted": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickRect", + "specificRect": [ + 600, + 600, + 50, + 50 + ], + "roi": [ + 488, + 206, + 302, + 289 + ], + "postDelay": 3000, + "next": [ + "Roguelike@GetDrops#next", + "Roguelike@ChooseOperFlag", + "Roguelike@ClickToDrops" + ] + }, + "Roguelike@GetDropLeave": { + "Doc": "base_task", + "Doc2": "不要了,走了(", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 0, + 218, + 1280, + 296 + ], + "next": [ + "Roguelike@GetDropLeaveConfirm", + "Roguelike@DropsFlag", + "Roguelike@ChooseOperFlag" + ] + }, + "Roguelike@GetDropLeaveConfirm": { + "action": "ClickSelf", + "cache": false, + "roi": [ + 0, + 484, + 1280, + 138 + ], + "next": [ + "Roguelike@DropsFlag" + ] + }, + "Roguelike@GetDropRecruit": { + "Doc": "base_task", + "Doc2": "招募券,白色的“招募”按钮", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 0, + 471, + 1280, + 157 + ], + "postDelay": 1000, + "next": [ + "Roguelike@ChooseOperFlag", + "Roguelike@GetDrops#next", + "Roguelike@GetDropCompleted", + "Roguelike@GetDropLeave" + ] + }, + "Roguelike@GetDropSelect": { + "Doc": "base_task", + "Doc2": "“选择”按钮,有可能是招募二选一,也有收藏品二选一", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 0, + 471, + 1280, + 157 + ], + "postDelay": 2000, + "next": [ + "Roguelike@GetDropSelectRecruit", + "Roguelike@GetDropSelectReward", + "Roguelike@ChooseOperFlag", + "Roguelike@GetDropCompleted", + "Roguelike@GetDropSelect" + ] + }, + "Roguelike@GetDropSelectRecruit": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 0, + 420, + 1280, + 175 + ], + "postDelay": 1000, + "templThreshold": 0.85, + "next": [ + "Roguelike@ChooseOperFlag", + "Roguelike@GetDropSelectRecruit" + ] + }, + "Roguelike@GetDropSelectReward": { + "Doc": "base_task", + "template": "empty.png", + "cache": false, + "action": "ClickSelf", + "roi": [ + 0, + 420, + 1280, + 175 + ], + "postDelay": 1000, + "next": [ + "Roguelike@GetDropSelectReward", + "Roguelike@ChooseOperFlag", + "Roguelike@ClickToDrops" + ] + }, + "Roguelike@GetDrops": { + "Doc": "base_sharp_task", + "algorithm": "JustReturn" + }, + "Roguelike@InBattleFlag": { + "template": "BattleOfficiallyBegin.png", + "roi": [ + 1165, + 20, + 65, + 65 + ], + "maskRange": [ + 100, + 255 + ], + "action": "DoNothing", + "postDelay": 5000, + "next": [ + "Roguelike@InBattleFlag", + "Roguelike@MissionCompletedFlag", + "Roguelike@MissionFailedFlag", + "Roguelike@MissionFailedFlag2" + ] + }, + "Roguelike@InitalDrop": { + "Doc": "base_task", + "Doc2": "古堡观光(简单模式)初始会有一个免费道具,点确认。月度小队也有,再多几次", + "template": "empty.png", + "action": "ClickSelf", + "roi": [ + 569, + 583, + 141, + 137 + ], + "next": [ + "Roguelike@SquadDefault", + "Roguelike@InitalDrop" + ] + }, + "Roguelike@IntegratedStrategies": { + "action": "ClickSelf", + "roi": [ + 963, + 599, + 148, + 121 + ], + "next": [ + "Roguelike@IntegratedStrategies", + "Roguelike@FromIntegratedStrategies" + ] + }, + "Roguelike@LastReward": { + "Doc": "base_task", + "Doc2": "你的上一次探索突破了至少两层困难,这一次可以获得更多支援——热水壶", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 174, + 151, + 935, + 533 + ], + "next": [ + "Roguelike@LastRewardConfirm" + ] + }, + "Roguelike@LastReward2": { + "Doc": "base_task", + "Doc2": "你的上一次探索突破了至少两层困难,这一次可以获得更多支援—— 5 源石锭", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 174, + 151, + 935, + 533 + ], + "next": [ + "Roguelike@LastRewardConfirm" + ] + }, + "Roguelike@LastReward3": { + "Doc": "base_task", + "Doc2": "你的上一次探索突破了至少两层困难,这一次可以获得更多支援—— 3 目标生命", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 174, + 151, + 935, + 533 + ], + "next": [ + "Roguelike@LastRewardConfirm" + ] + }, + "Roguelike@LastRewardConfirm": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 174, + 151, + 935, + 533 + ], + "next": [ + "Roguelike@RolesDefault", + "Roguelike@CloseCollection" + ] + }, + "Roguelike@LastRewardRand": { + "Doc": "base_task", + "Doc2": "你的上一次探索突破了至少两层困难,这一次可以获得更多支援—— 问号", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 174, + 151, + 935, + 533 + ], + "next": [ + "Roguelike@LastRewardConfirm" + ] + }, + "Roguelike@MissionCompletedFlag": { + "roi": [ + 0, + 0, + 148, + 143 + ], + "next": [ + "Roguelike@ClickToDrops" + ] + }, + "Roguelike@MissionFailedFlag": { + "Doc": "base_task", + "template": "empty.png", + "roi": [ + 504, + 163, + 480, + 267 + ], + "next": [ + "Roguelike@NextLevel#next", + "Roguelike@ClickToStartPoint" + ] + }, + "Roguelike@MissionFailedFlag2": { + "Doc": "base_task", + "template": "empty.png", + "cache": false, + "roi": [ + 473, + 0, + 351, + 194 + ], + "next": [ + "Roguelike@ClickToStartPoint" + ] + }, + "Roguelike@NextLevel": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "text": [], + "roi": [ + 522, + 431, + 245, + 144 + ] + }, + "Roguelike@QuickFormation": { + "Doc": "本任务注册了插件 RoguelikeFormationTaskPlugin", + "action": "ClickSelf", + "roi": [ + 817, + 0, + 402, + 146 + ], + "next": [ + "Roguelike@FormationConfirm" + ], + "postDelay": 2000 + }, + "Roguelike@RecruitCloseGuide": { + "action": "ClickSelf", + "roi": [ + 56, + 41, + 194, + 134 + ], + "next": [ + "Roguelike@ChooseOperFlag" + ] + }, + "Roguelike@RecruitMain": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "templThreshold": 0.6, + "cache": false, + "roi": [ + 190, + 470, + 300, + 154 + ], + "next": [ + "Roguelike@ChooseOperFlag", + "Roguelike@RecruitCloseGuide" + ], + "postDelay": 1000 + }, + "Roguelike@RecruitOther": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Roguelike@RecruitMain", + "roi": [ + 190, + 470, + 900, + 154 + ] + }, + "Roguelike@RecruitSkip": { + "template": "RecruitSkip.png", + "action": "ClickSelf", + "roi": [ + 1100, + 0, + 180, + 150 + ], + "next": [ + "Roguelike@RecruitSkip", + "Roguelike@RecruitOther", + "Roguelike@TraderRandomShopping", + "Roguelike@StageTraderLeave", + "Roguelike@DropsFlag", + "Roguelike@ChooseOperFlag", + "Roguelike@RecruitWithoutButton" + ] + }, + "Roguelike@RecruitWithoutButton": { + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 1180, + 15, + 85, + 60 + ] + }, + "Roguelike@ReturnTo": { + "template": "Return.png", + "next": [ + "Roguelike@ChooseDifficulty", + "Roguelike@StartExplore", + "Roguelike@ExitThenAbandon", + "Roguelike@Abandon", + "Roguelike", + "Roguelike@ReturnTo", + "Roguelike@ReturnToConfirm", + "Roguelike@CloseAnnos#next", + "Roguelike@FromStageSN" + ] + }, + "Roguelike@RolesConfirm": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 0, + 153, + 1280, + 529 + ], + "next": [ + "Roguelike@RecruitMain" + ] + }, + "Roguelike@RolesDefault": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 601, + 153, + 363, + 529 + ], + "next": [ + "Roguelike@RolesConfirm" + ] + }, + "Roguelike@SquadConfirm": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 0, + 483, + 1280, + 200 + ] + }, + "Roguelike@SquadDefault": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 0, + 153, + 1280, + 532 + ], + "next": [ + "Roguelike@SquadConfirm" + ] + }, + "Roguelike@Stage": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 0, + 53, + 1280, + 554 + ] + }, + "Roguelike@StageBoons": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Roguelike@Stage", + "Doc2": "古堡馈赠(随机奖励)", + "next": [ + "Roguelike@StageEncounterEnter", + "Roguelike@NextLevel#next" + ] + }, + "Roguelike@StageCambatDps": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Roguelike@Stage", + "Doc2": "普通作战", + "next_Doc": "普通作战和紧急作战的图比较像,有时候会识别错,这里的next把两个开始的按钮都放进来,提高容错", + "next": [ + "Roguelike@StageCambatDpsEnter", + "Roguelike@StageEmergencyDpsEnter", + "Roguelike@NextLevel#next" + ] + }, + "Roguelike@StageCambatDpsEnter": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Roguelike@StageEnterBattle" + }, + "Roguelike@StageDreadfulFoe": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Roguelike@Stage", + "Doc2": "险路恶敌(boss关卡)", + "next_Doc": "普通作战和紧急作战的图比较像,有时候会识别错,这里的next把两个开始的按钮都放进来,提高容错", + "next": [ + "Roguelike@StageDreadfulFoeEnter", + "Roguelike@StageEmergencyDpsEnter", + "Roguelike@StageCambatDpsEnter", + "Roguelike@NextLevel#next" + ] + }, + "Roguelike@StageDreadfulFoeEnter": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Roguelike@StageEnterBattle" + }, + "Roguelike@StageEmergencyDps": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Roguelike@Stage", + "Doc2": "紧急作战", + "next_Doc": "普通作战和紧急作战的图比较像,有时候会识别错,这里的next把两个开始的按钮都放进来,提高容错", + "next": [ + "Roguelike@StageEmergencyDpsEnter", + "Roguelike@StageCambatDpsEnter", + "Roguelike@NextLevel#next" + ] + }, + "Roguelike@StageEmergencyDpsEnter": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Roguelike@StageEnterBattle" + }, + "Roguelike@StageEncounter": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Roguelike@Stage", + "Doc2": "不期而遇(随机奖励)", + "next": [ + "Roguelike@StageEncounterEnter", + "Roguelike@NextLevel#next" + ] + }, + "Roguelike@StageEncounterClickToLeave": { + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 600, + 600, + 50, + 50 + ], + "next": [ + "Roguelike@StageEncounterOptions#next", + "Roguelike@StageEncounterClickToLeave" + ] + }, + "Roguelike@StageEncounterEnter": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Roguelike@StageEnter", + "next": [ + "Roguelike@StageEncounterEnter", + "Roguelike@StageEncounterOptions#next", + "Roguelike@StageEncounterClickToLeave" + ] + }, + "Roguelike@StageEncounterGiveUpRecruitConfirm": { + "action": "ClickSelf", + "roi": [ + 613, + 410, + 424, + 171 + ], + "next": [ + "Roguelike@TraderRandomShopping", + "Roguelike@StageTraderLeave", + "Roguelike@DropsFlag", + "Roguelike@ClickToDrops" + ] + }, + "Roguelike@StageEncounterLeaveConfirm": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 1069, + 0, + 211, + 700 + ], + "postDelay": 1000, + "next": [ + "Roguelike@StageEncounterOptions#next", + "Roguelike@StageEncounterSpecialClose", + "Roguelike@StageCambatDpsEnter", + "Roguelike@StageEmergencyDpsEnter", + "Roguelike@ClickToDrops" + ] + }, + "Roguelike@StageEncounterOption": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 1100, + 0, + 180, + 700 + ], + "preDelay": 500, + "next": [ + "Roguelike@StageEncounterLeaveConfirm", + "Roguelike@StageEncounterOptions#next" + ] + }, + "Roguelike@StageEncounterOptionFree": { + "baseTask": "Roguelike@StageEncounterOption", + "Doc": "base_task", + "template": "empty.png", + "next": [ + "Roguelike@StageEncounterLeaveConfirm", + "Roguelike@StageEncounterOptionLeave", + "Roguelike@StageEncounterOptionUnknown", + "Roguelike@StageEncounterOptions#next" + ] + }, + "Roguelike@StageEncounterOptionLeave": { + "baseTask": "Roguelike@StageEncounterOption", + "Doc": "base_task", + "template": "empty.png", + "next": [ + "Roguelike@StageEncounterLeaveConfirm", + "Roguelike@StageEncounterOptionFree", + "Roguelike@StageEncounterOptionUnknown", + "Roguelike@StageEncounterOptions#next" + ] + }, + "Roguelike@StageEncounterOptionUnknown": { + "baseTask": "Roguelike@StageEncounterOption", + "Doc": "base_task", + "template": "empty.png" + }, + "Roguelike@StageEncounterOptionWonderland": { + "baseTask": "Roguelike@StageEncounterOption", + "Doc": "base_task", + "template": "empty.png" + }, + "Roguelike@StageEncounterOptions": { + "algorithm": "JustReturn" + }, + "Roguelike@StageEncounterSpecialClose": { + "Doc": "base_task", + "Doc2": "关掉“大锁”", + "template": "empty.png", + "action": "ClickSelf", + "roi": [ + 570, + 400, + 140, + 138 + ], + "next": [ + "Roguelike@StageEncounterSpecialClose", + "Roguelike@ClickToDrops" + ] + }, + "Roguelike@StageEnter": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 1035, + 370, + 226, + 225 + ] + }, + "Roguelike@StageEnterBattle": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Roguelike@StageEnter", + "next": [ + "Roguelike@QuickFormation" + ] + }, + "Roguelike@StageSafeHouse": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Roguelike@Stage", + "Doc2": "安全的角落", + "next": [ + "Roguelike@StageSafeHouseEnter", + "Roguelike@NextLevel#next" + ] + }, + "Roguelike@StageSafeHouseEnter": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Roguelike@StageEnter", + "next": [ + "Roguelike@StageSafeHouseEnter", + "Roguelike@StageEncounterOptions#next", + "Roguelike@StageEncounterClickToLeave" + ] + }, + "Roguelike@StageTrader": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Roguelike@Stage", + "Doc2": "诡意行商(交易所)", + "next": [ + "Roguelike@StageTraderEnter", + "Roguelike@NextLevel#next" + ] + }, + "Roguelike@StageTraderEnter": { + "Doc": "base_task", + "template": "empty.png", + "baseTask": "Roguelike@StageEnter", + "postDelay": 3000, + "next": [ + "Roguelike@StageTraderEnter", + "Roguelike@StageTraderInvestSystem", + "Roguelike@TraderRandomShopping", + "Roguelike@StageTraderLeave" + ] + }, + "Roguelike@StageTraderInvestCancel": { + "action": "ClickSelf", + "roi": [ + 507, + 418, + 242, + 149 + ], + "exceededNext": [ + "Roguelike@ExitThenAbandon" + ], + "next": [ + "Roguelike@StageTraderInvestSystemLeave" + ] + }, + "Roguelike@StageTraderInvestConfirm": { + "action": "ClickSelf", + "roi": [ + 852, + 422, + 278, + 144 + ], + "postDelay": 500, + "next": [ + "Roguelike@StageTraderInvestSystemError", + "Roguelike@StageTraderInvestSystemFull", + "Roguelike@StageTraderInvestConfirm", + "Roguelike@StageTraderInvestCancel" + ] + }, + "Roguelike@StageTraderInvestSystem": { + "templThreshold": 0.75, + "action": "ClickSelf", + "roi": [ + 365, + 51, + 276, + 216 + ], + "exceededNext": [ + "Roguelike@TraderRandomShopping", + "Roguelike@StageTraderLeave" + ], + "next": [ + "Roguelike@StageTraderInvestSystemEnter", + "Roguelike@TraderRandomShopping", + "Roguelike@StageTraderLeave" + ] + }, + "Roguelike@StageTraderInvestSystemEnter": { + "action": "ClickSelf", + "roi": [ + 417, + 228, + 502, + 247 + ], + "next": [ + "Roguelike@StageTraderInvestSystemError", + "Roguelike@StageTraderInvestConfirm", + "Roguelike@StageTraderInvestCancel" + ] + }, + "Roguelike@StageTraderInvestSystemError": { + "action": "ClickSelf", + "cache": false, + "roi": [ + 508, + 204, + 235, + 240 + ], + "next": [ + "Roguelike@StageTraderInvestCancel" + ] + }, + "Roguelike@StageTraderInvestSystemFull": { + "algorithm": "OcrDetect", + "cache": false, + "reduceOtherTimes": [ + "Roguelike@StageTraderInvestConfirm" + ], + "text": [ + "当前储备余额已达上限", + "当前", + "上限" + ], + "roi": [ + 982, + 28, + 298, + 289 + ], + "next": [ + "Roguelike@StageTraderInvestCancel" + ] + }, + "Roguelike@StageTraderInvestSystemLeave": { + "action": "ClickSelf", + "roi": [ + 682, + 420, + 245, + 143 + ], + "next": [ + "Roguelike@TraderRandomShopping", + "Roguelike@StageTraderLeave" + ] + }, + "Roguelike@StageTraderLeave": { + "action": "ClickSelf", + "cache": false, + "roi": [ + 1046, + 443, + 234, + 204 + ], + "next": [ + "Roguelike@StageTraderLeaveConfirm", + "Roguelike@StageTraderLeave" + ] + }, + "Roguelike@StageTraderLeaveConfirm": { + "action": "ClickSelf", + "cache": false, + "roi": [ + 985, + 447, + 295, + 203 + ], + "next": [ + "Roguelike@NextLevel#next" + ] + }, + "Roguelike@StartAction": { + "Doc": "本任务注册了插件 RoguelikeSkillSelectionTaskPlugin、RoguelikeBattleTaskPlugin", + "action": "ClickSelf", + "preDelay": 500, + "roi": [ + 905, + 593, + 375, + 127 + ], + "next": [ + "Roguelike@InBattleFlag", + "Roguelike@MissionCompletedFlag", + "Roguelike@MissionFailedFlag", + "Roguelike@MissionFailedFlag2", + "Roguelike@GamePassSkip1", + "Roguelike@GamePassTheEndConfirm", + "Roguelike@GamePass", + "Roguelike@StartAction@Loading", + "Roguelike@StartAction@Loading2" + ] + }, + "Roguelike@StartExplore": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 1026, + 470, + 254, + 248 + ], + "postDelay": 2000, + "next": [ + "Roguelike@SquadDefault", + "Roguelike@InitalDrop", + "Roguelike@StartExplore" + ] + }, + "Roguelike@TodoEnter": { + "Doc": "base_task", + "template": "empty.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 908, + 54, + 372, + 500 + ], + "maskRange": [ + 1, + 255 + ], + "next": [ + "Roguelike@TodoEnter", + "Roguelike@Begin" + ] + }, + "Roguelike@TraderRandomShopping": { + "Doc": "该任务注册了 RoguelikeShoppingTaskPlugin,若是点完了仍在当前界面,说明没啥要买的,直接离开商店(next 里的 PhantomStageTraderLeave)", + "action": "ClickSelf", + "templThreshold": 0.7, + "cache": false, + "roi": [ + 480, + 240, + 750, + 280 + ], + "rectMove": [ + -40, + -100, + 20, + 60 + ], + "next": [ + "Roguelike@TraderRandomShoppingConfirm", + "Roguelike@TraderRandomShoppingCancel", + "Roguelike@ChooseOperFlag", + "Roguelike@StageTraderLeave", + "Roguelike@StageTraderLeaveConfirm" + ], + "maskRange": [ + 1, + 255 + ] + }, + "Roguelike@TraderRandomShoppingCancel": { + "template": "Roguelike@StageTraderInvestCancel.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 350, + 350, + 500, + 250 + ], + "next": [ + "Roguelike@StageTraderLeave" + ] + }, + "Roguelike@TraderRandomShoppingConfirm": { + "action": "ClickSelf", + "cache": false, + "roi": [ + 872, + 425, + 221, + 136 + ], + "next": [ + "Roguelike@TraderRandomShopping", + "Roguelike@ChooseOperFlag", + "Roguelike@StageTraderLeave" + ] + }, + "Phantom@Roguelike@Abandon": {}, + "Phantom@Roguelike@ChooseDifficulty": {}, + "Phantom@Roguelike@ChooseOper": { + "next": [ + "Phantom@Roguelike@ChooseOperConfirm" + ] + }, + "Phantom@Roguelike@CloseCollection": { + "next": [ + "Phantom@Roguelike@LastReward", + "Phantom@Roguelike@LastReward2", + "Phantom@Roguelike@LastReward3", + "Phantom@Roguelike@LastRewardRand", + "Phantom@Roguelike@RolesDefault" + ] + }, + "Phantom@Roguelike@Continue": {}, + "Phantom@Roguelike@DialogSkipConfirm": { + "template": "Roguelike@DialogSkipConfirm.png", + "next": [ + "Phantom@Roguelike@DialogSkip", + "Phantom@Roguelike@NextLevel#next" + ] + }, + "Phantom@Roguelike@DropsFlag": { + "template": "Roguelike@DropsFlag.png", + "next": [ + "Phantom@Roguelike@GetDrops#next", + "Phantom@Roguelike@GetDropCompleted", + "Phantom@Roguelike@GetDropLeave", + "Phantom@Roguelike@NextLevel#next", + "Phantom@Roguelike@StageEncounterOptions#next", + "Phantom@Roguelike@StageEncounterSpecialClose", + "Phantom@Roguelike@EnterAfterRecruit", + "Phantom@Roguelike@StageTraderLeave", + "Phantom@Roguelike@DialogSkip" + ] + }, + "Phantom@Roguelike@EnterAfterRecruit": {}, + "Phantom@Roguelike@ExitThenAbandon": { + "template": "Roguelike@ExitThenAbandon.png", + "next": [ + "Phantom@Roguelike@ExitThenAbandon", + "Phantom@Roguelike@Abandon" + ] + }, + "Phantom@Roguelike@GamePass": {}, + "Phantom@Roguelike@GamePassSkip1": {}, + "Phantom@Roguelike@GamePassSkip1Confirm": { + "next": [ + "Phantom@Roguelike@GamePassSkip2", + "Phantom@Roguelike@GamePassTheEndConfirm", + "Phantom@Roguelike@GamePass" + ] + }, + "Phantom@Roguelike@GetDrop1": {}, + "Phantom@Roguelike@GetDrop2": {}, + "Phantom@Roguelike@GetDrop3": {}, + "Phantom@Roguelike@GetDropCompleted": {}, + "Phantom@Roguelike@GetDropLeave": {}, + "Phantom@Roguelike@GetDropRecruit": {}, + "Phantom@Roguelike@GetDropSelect": {}, + "Phantom@Roguelike@GetDropSelectRecruit": { + "template": "Phantom@Roguelike@GetDropRecruit.png" + }, + "Phantom@Roguelike@GetDropSelectReward": {}, + "Phantom@Roguelike@GetDrops": { + "next": [ + "Phantom@Roguelike@GetDrop1", + "Phantom@Roguelike@GetDrop2", + "Phantom@Roguelike@GetDrop3", + "Phantom@Roguelike@GetDropSelect", + "Phantom@Roguelike@GetDropRecruit" + ] + }, + "Phantom@Roguelike@InitalDrop": {}, + "Phantom@Roguelike@LastReward": {}, + "Phantom@Roguelike@LastReward2": {}, + "Phantom@Roguelike@LastReward3": {}, + "Phantom@Roguelike@LastRewardConfirm": {}, + "Phantom@Roguelike@LastRewardRand": {}, + "Phantom@Roguelike@MissionFailedFlag": {}, + "Phantom@Roguelike@MissionFailedFlag2": {}, + "Phantom@Roguelike@NextLevel": { + "text": [ + "迷雾歧途", + "落阳庭院", + "故土残躯", + "噩梦之始", + "血月长廊", + "渴欲大厅" + ], + "next": [ + "Phantom@Roguelike@StageTrader", + "Phantom@Roguelike@StageSafeHouse", + "Phantom@Roguelike@StageEncounter", + "Phantom@Roguelike@StageBoons", + "Phantom@Roguelike@StageCambatDps", + "Phantom@Roguelike@StageEmergencyDps", + "Phantom@Roguelike@StageDreadfulFoe" + ] + }, + "Phantom@Roguelike@RecruitMain": { + "template": "Phantom@Roguelike@Recruit.png" + }, + "Phantom@Roguelike@RecruitOther": { + "template": "Phantom@Roguelike@Recruit.png" + }, + "Phantom@Roguelike@RecruitWithoutButton": { + "next": [ + "Phantom@Roguelike@RecruitOther", + "Phantom@Roguelike@EnterAfterRecruit", + "Phantom@Roguelike@TraderRandomShopping", + "Phantom@Roguelike@StageTraderLeave", + "Phantom@Roguelike@DropsFlag", + "Phantom@Roguelike@ChooseOperFlag", + "Phantom@Roguelike@RecruitWithoutButton" + ] + }, + "Phantom@Roguelike@RolesConfirm": { + "template": "Phantom@Roguelike@LastRewardConfirm" + }, + "Phantom@Roguelike@RolesDefault": {}, + "Phantom@Roguelike@SquadConfirm": { + "template": "Phantom@Roguelike@LastRewardConfirm.png", + "next": [ + "Phantom@Roguelike@LastReward", + "Phantom@Roguelike@LastReward2", + "Phantom@Roguelike@LastReward3", + "Phantom@Roguelike@LastRewardRand", + "Phantom@Roguelike@RolesDefault", + "Phantom@Roguelike@CloseCollection", + "Phantom@Roguelike@DialogSkip", + "Phantom@Roguelike@NextLevel#next" + ] + }, + "Phantom@Roguelike@SquadDefault": {}, + "Phantom@Roguelike@StageBoons": { + "templThreshold": 0.85 + }, + "Phantom@Roguelike@StageCambatDps": {}, + "Phantom@Roguelike@StageCambatDpsEnter": {}, + "Phantom@Roguelike@StageDreadfulFoe": {}, + "Phantom@Roguelike@StageDreadfulFoeEnter": {}, + "Phantom@Roguelike@StageEmergencyDps": {}, + "Phantom@Roguelike@StageEmergencyDpsEnter": {}, + "Phantom@Roguelike@StageEncounter": { + "templThreshold": 0.85 + }, + "Phantom@Roguelike@StageEncounterEnter": {}, + "Phantom@Roguelike@StageEncounterLeaveConfirm": {}, + "Phantom@Roguelike@StageEncounterOptionFree": {}, + "Phantom@Roguelike@StageEncounterOptionLeave": {}, + "Phantom@Roguelike@StageEncounterOptionUnknown": { + "templThreshold": 0.85 + }, + "Phantom@Roguelike@StageEncounterOptions": { + "next": [ + "Phantom@Roguelike@StageEncounterOptionFree", + "Phantom@Roguelike@StageEncounterOptionLeave", + "Phantom@Roguelike@StageEncounterOptionUnknown", + "Phantom@Roguelike@ChooseOperFlag", + "Phantom@Roguelike@StageEmergencyDpsEnter", + "Phantom@Roguelike@StageCambatDpsEnter" + ] + }, + "Phantom@Roguelike@StageEncounterSpecialClose": {}, + "Phantom@Roguelike@StageSafeHouse": { + "templThreshold": 0.85 + }, + "Phantom@Roguelike@StageSafeHouseEnter": {}, + "Phantom@Roguelike@StageTrader": { + "templThreshold": 0.85 + }, + "Phantom@Roguelike@StageTraderEnter": {}, + "Phantom@Roguelike@StageTraderLeaveConfirm": { + "template": "Roguelike@StageTraderLeaveConfirm.png", + "exceededNext": [ + "Phantom@Roguelike@ExitThenAbandon" + ] + }, + "Phantom@Roguelike@StartExplore": {}, + "Phantom@Roguelike@TodoEnter": {}, + "Mizuki@Roguelike@Abandon": {}, + "Mizuki@Roguelike@ChooseDifficulty": {}, + "Mizuki@Roguelike@ChooseOper": { + "next": [ + "Mizuki@Roguelike@CloseCollectionContinue", + "Mizuki@Roguelike@CloseCollectionClose", + "Mizuki@Roguelike@ChooseOperConfirm" + ] + }, + "Mizuki@Roguelike@CloseCollection": { + "next": [ + "Mizuki@Roguelike@LastReward", + "Mizuki@Roguelike@LastReward2", + "Mizuki@Roguelike@LastReward3", + "Mizuki@Roguelike@LastReward4", + "Mizuki@Roguelike@LastRewardRand", + "Mizuki@Roguelike@RolesDefault" + ] + }, + "Mizuki@Roguelike@CloseCollectionClose": { + "action": "ClickSelf", + "cache": false, + "templThreshold": 0.9, + "roi": [ + 572, + 434, + 144, + 141 + ], + "next": [ + "Mizuki@Roguelike@StageEncounterEnter", + "Mizuki@Roguelike@NextLevel#next", + "Mizuki@Roguelike@DropsFlag", + "Mizuki@Roguelike@CloseEvent", + "Mizuki@Roguelike@ChooseOperFlag" + ] + }, + "Mizuki@Roguelike@CloseCollectionContinue": { + "action": "ClickSelf", + "templThreshold": 0.9, + "cache": false, + "roi": [ + 549, + 440, + 123, + 130 + ], + "maskRange": [ + 100, + 255 + ], + "next": [ + "Mizuki@Roguelike@StageEncounterEnter", + "Mizuki@Roguelike@NextLevel#next", + "Mizuki@Roguelike@DropsFlag", + "Mizuki@Roguelike@CloseEvent", + "Mizuki@Roguelike@ChooseOperFlag" + ] + }, + "Mizuki@Roguelike@CloseEvent": { + "action": "ClickSelf", + "cache": false, + "roi": [ + 567, + 584, + 145, + 136 + ], + "next": [ + "Mizuki@Roguelike@StageEncounterEnter", + "Mizuki@Roguelike@NextLevel#next", + "Mizuki@Roguelike@DropsFlag", + "Mizuki@Roguelike@CloseEvent" + ] + }, + "Mizuki@Roguelike@CommissionedMissionCompleted": { + "action": "ClickRect", + "specificRect": [ + 600, + 600, + 50, + 50 + ], + "postDelay": 1000, + "cache": false, + "roi": [ + 519, + 202, + 282, + 154 + ], + "next": [ + "Mizuki@Roguelike@StageEncounterEnter", + "Mizuki@Roguelike@NextLevel#next" + ] + }, + "Mizuki@Roguelike@Continue": {}, + "Mizuki@Roguelike@DataTraceback": { + "action": "DoNothing", + "cache": false, + "roi": [ + 56, + 277, + 243, + 152 + ], + "next": [ + "Mizuki@Roguelike@ClickToStartPoint" + ] + }, + "Mizuki@Roguelike@DialogSkipConfirm": { + "template": "Roguelike@DialogSkipConfirm.png", + "next": [ + "Mizuki@Roguelike@DialogSkip", + "Mizuki@Roguelike@NextLevel#next" + ] + }, + "Mizuki@Roguelike@DiceConfirm": { + "Doc": "骰子的确认按钮", + "action": "ClickSelf", + "cache": false, + "roi": [ + 551, + 577, + 174, + 143 + ], + "templThreshold": 0.95, + "postDelay": 1000, + "next": [ + "Mizuki@Roguelike@StageEncounterEnter", + "Mizuki@Roguelike@NextLevel#next", + "Mizuki@Roguelike@ClickToDrops" + ] + }, + "Mizuki@Roguelike@DiceConfirmThenAbandon": { + "Doc": "骰子的确认按钮", + "action": "ClickSelf", + "template": "Mizuki@Roguelike@DiceConfirm.png", + "cache": false, + "roi": [ + 551, + 577, + 174, + 143 + ], + "templThreshold": 0.95, + "next": [ + "Mizuki@Roguelike@ExitThenAbandon" + ] + }, + "Mizuki@Roguelike@DropsFlag": { + "template": "Roguelike@DropsFlag.png", + "next": [ + "Mizuki@Roguelike@GetDrops#next", + "Mizuki@Roguelike@GetDropCompleted", + "Mizuki@Roguelike@GetDropLeave", + "Mizuki@Roguelike@NextLevel#next", + "Mizuki@Roguelike@StageEncounterOptions#next", + "Mizuki@Roguelike@StageEncounterSpecialClose", + "Mizuki@Roguelike@EnterAfterRecruit", + "Mizuki@Roguelike@StageTraderLeave", + "Mizuki@Roguelike@CloseEvent", + "Mizuki@Roguelike@DialogSkip" + ] + }, + "Mizuki@Roguelike@EnterAfterRecruit": {}, + "Mizuki@Roguelike@ExitThenAbandon": { + "template": "Roguelike@ExitThenAbandon.png", + "next": [ + "Mizuki@Roguelike@ExitThenAbandon", + "Mizuki@Roguelike@Abandon", + "Mizuki@Roguelike@DiceConfirmThenAbandon", + "Mizuki@Roguelike@DataTraceback" + ] + }, + "Mizuki@Roguelike@GamePass": {}, + "Mizuki@Roguelike@GamePassSkip1": {}, + "Mizuki@Roguelike@GamePassSkip1Confirm": { + "next": [ + "Mizuki@Roguelike@DataTraceback", + "Mizuki@Roguelike@GamePassSkip2", + "Mizuki@Roguelike@GamePassTheEndConfirm", + "Mizuki@Roguelike@GamePass" + ] + }, + "Mizuki@Roguelike@GetDrop1": {}, + "Mizuki@Roguelike@GetDrop2": {}, + "Mizuki@Roguelike@GetDrop3": {}, + "Mizuki@Roguelike@GetDropBox": { + "baseTask": "Mizuki@Roguelike@GetDrop", + "Doc": "漂流密匣“打开”按钮", + "next": [ + "Mizuki@Roguelike@DropsFlag", + "Mizuki@Roguelike@GetDropBoxSelect", + "Mizuki@Roguelike@ChooseOperFlag" + ] + }, + "Mizuki@Roguelike@GetDropBoxSelect": { + "Doc": "漂流密匣-锤子砸开“选择”按钮", + "action": "ClickSelf", + "cache": false, + "roi": [ + 830, + 438, + 276, + 140 + ], + "templThreshold": 0.85, + "postDelay": 1000, + "next": [ + "Mizuki@Roguelike@DropsFlag", + "Mizuki@Roguelike@ChooseOperFlag", + "Mizuki@Roguelike@ClickToDrops" + ] + }, + "Mizuki@Roguelike@GetDropCompleted": {}, + "Mizuki@Roguelike@GetDropLeave": {}, + "Mizuki@Roguelike@GetDropRecruit": {}, + "Mizuki@Roguelike@GetDropSelect": {}, + "Mizuki@Roguelike@GetDropSelectRecruit": { + "template": "Mizuki@Roguelike@GetDropRecruit.png" + }, + "Mizuki@Roguelike@GetDropSelectReward": {}, + "Mizuki@Roguelike@GetDrops": { + "next": [ + "Mizuki@Roguelike@GetDrop1", + "Mizuki@Roguelike@GetDrop2", + "Mizuki@Roguelike@GetDrop3", + "Mizuki@Roguelike@GetDropSelect", + "Mizuki@Roguelike@GetDropRecruit", + "Mizuki@Roguelike@GetDropBox" + ] + }, + "Mizuki@Roguelike@InitalDrop": {}, + "Mizuki@Roguelike@LastReward": {}, + "Mizuki@Roguelike@LastReward2": {}, + "Mizuki@Roguelike@LastReward3": {}, + "Mizuki@Roguelike@LastReward4": { + "action": "ClickSelf", + "cache": false, + "roi": [ + 174, + 151, + 935, + 533 + ], + "next": [ + "Mizuki@Roguelike@LastRewardConfirm" + ] + }, + "Mizuki@Roguelike@LastRewardConfirm": {}, + "Mizuki@Roguelike@LastRewardRand": {}, + "Mizuki@Roguelike@MapObject": { + "action": "DoNothing", + "cache": false, + "roi": [ + 257, + 488, + 189, + 123 + ], + "next": [ + "Mizuki@Roguelike@RecruitOther" + ] + }, + "Mizuki@Roguelike@MissionFailedFlag": {}, + "Mizuki@Roguelike@MissionFailedFlag2": {}, + "Mizuki@Roguelike@NextLevel": { + "text": [ + "天光海岸", + "离岸孤岛", + "波涛略地", + "隐秘温床", + "失尘岩洞", + "幽海丛林", + "绀碧摇篮" + ], + "next": [ + "Mizuki@Roguelike@StageTrader", + "Mizuki@Roguelike@StageSafeHouse", + "Mizuki@Roguelike@StageWindAndRain", + "Mizuki@Roguelike@StageEmergencyTransportation", + "Mizuki@Roguelike@StageEncounter", + "Mizuki@Roguelike@StageBoons", + "Mizuki@Roguelike@StageCambatDps", + "Mizuki@Roguelike@StageEmergencyDps", + "Mizuki@Roguelike@StageDreadfulFoe", + "Mizuki@Roguelike@StageDreadfulFoe-5", + "Mizuki@Roguelike@StageRegionalCommissioning", + "Mizuki@Roguelike@StageGambling", + "Mizuki@Roguelike@CommissionedMissionCompleted", + "Mizuki@Roguelike@DiceConfirm", + "Mizuki@Roguelike@CloseCollectionContinue", + "Mizuki@Roguelike@CloseCollectionClose" + ] + }, + "Mizuki@Roguelike@RecruitMain": { + "template": "Mizuki@Roguelike@Recruit.png" + }, + "Mizuki@Roguelike@RecruitOther": { + "template": "Mizuki@Roguelike@Recruit.png" + }, + "Mizuki@Roguelike@RecruitWithoutButton": { + "next": [ + "Mizuki@Roguelike@RecruitOther", + "Mizuki@Roguelike@EnterAfterRecruit", + "Mizuki@Roguelike@TraderRandomShopping", + "Mizuki@Roguelike@StageTraderLeave", + "Mizuki@Roguelike@DropsFlag", + "Mizuki@Roguelike@ChooseOperFlag", + "Mizuki@Roguelike@DiceConfirm", + "Mizuki@Roguelike@RecruitWithoutButton" + ] + }, + "Mizuki@Roguelike@RolesConfirm": { + "template": "Mizuki@Roguelike@LastRewardConfirm" + }, + "Mizuki@Roguelike@RolesDefault": {}, + "Mizuki@Roguelike@SquadConfirm": { + "template": "Mizuki@Roguelike@LastRewardConfirm.png", + "next": [ + "Mizuki@Roguelike@LastReward", + "Mizuki@Roguelike@LastReward2", + "Mizuki@Roguelike@LastReward3", + "Mizuki@Roguelike@LastReward4", + "Mizuki@Roguelike@LastRewardRand", + "Mizuki@Roguelike@RolesDefault", + "Mizuki@Roguelike@CloseCollection", + "Mizuki@Roguelike@DialogSkip", + "Mizuki@Roguelike@NextLevel#next", + "Mizuki@Roguelike@MapObject" + ] + }, + "Mizuki@Roguelike@SquadDefault": {}, + "Mizuki@Roguelike@StageBoons": { + "templThreshold": 0.95 + }, + "Mizuki@Roguelike@StageCambatDps": { + "templThreshold": 0.95 + }, + "Mizuki@Roguelike@StageCambatDpsEnter": {}, + "Mizuki@Roguelike@StageDreadfulFoe": {}, + "Mizuki@Roguelike@StageDreadfulFoe-5": { + "Doc": "第五层的boss关卡", + "baseTask": "Mizuki@Roguelike@Stage", + "templThreshold": 0.85, + "next": [ + "Mizuki@Roguelike@StageDreadfulFoe-5Enter", + "Mizuki@Roguelike@StageDreadfulFoeEnter", + "Mizuki@Roguelike@StageEmergencyDpsEnter", + "Mizuki@Roguelike@StageCambatDpsEnter", + "Mizuki@Roguelike@NextLevel#next" + ] + }, + "Mizuki@Roguelike@StageDreadfulFoe-5Enter": { + "baseTask": "Mizuki@Roguelike@StageEnterBattle" + }, + "Mizuki@Roguelike@StageDreadfulFoeEnter": {}, + "Mizuki@Roguelike@StageEmergencyDps": { + "templThreshold": 0.95 + }, + "Mizuki@Roguelike@StageEmergencyDpsEnter": {}, + "Mizuki@Roguelike@StageEmergencyTransportation": { + "Doc": "紧急运输,拒绝可以获取3希望", + "baseTask": "Mizuki@Roguelike@Stage", + "templThreshold": 0.95, + "next": [ + "Mizuki@Roguelike@StageEncounterEnter", + "Mizuki@Roguelike@NextLevel#next" + ] + }, + "Mizuki@Roguelike@StageEncounter": { + "templThreshold": 0.96 + }, + "Mizuki@Roguelike@StageEncounterEnter": {}, + "Mizuki@Roguelike@StageEncounterLeaveConfirm": {}, + "Mizuki@Roguelike@StageEncounterOptionFree": { + "maskRange": [ + 5, + 255 + ] + }, + "Mizuki@Roguelike@StageEncounterOptionLeave": { + "maskRange": [ + 5, + 255 + ] + }, + "Mizuki@Roguelike@StageEncounterOptionUnknown": { + "templThreshold": 0.91 + }, + "Mizuki@Roguelike@StageEncounterOptionWonderland": {}, + "Mizuki@Roguelike@StageSafeHouseReuse": { + "algorithm": "OcrDetect", + "action": "ClickSelf", + "cache": false, + "withoutDet": true, + "roi": [ + 880, + 210, + 140, + 36 + ], + "text": [ + "活用安全屋" + ], + "preDelay": 500, + "next": [ + "Mizuki@Roguelike@StageEncounterOption#next" + ] + }, + "Mizuki@Roguelike@StageEncounterOptions": { + "next": [ + "Mizuki@Roguelike@StageEncounterOptionFree", + "Mizuki@Roguelike@StageSafeHouseReuse", + "Mizuki@Roguelike@StageEncounterOptionLeave", + "Mizuki@Roguelike@StageEncounterOptionUnknown", + "Mizuki@Roguelike@StageEncounterOptionWonderland", + "Mizuki@Roguelike@ChooseOperFlag", + "Mizuki@Roguelike@StageEmergencyDpsEnter", + "Mizuki@Roguelike@StageCambatDpsEnter" + ] + }, + "Mizuki@Roguelike@StageEncounterSpecialClose": {}, + "Mizuki@Roguelike@StageGambling": { + "Doc": "骰子关卡", + "baseTask": "Mizuki@Roguelike@Stage", + "templThreshold": 0.95, + "next": [ + "Mizuki@Roguelike@StageEncounterEnter", + "Mizuki@Roguelike@NextLevel#next" + ] + }, + "Mizuki@Roguelike@StageRegionalCommissioning": { + "Doc": "地区委托(随机奖励)", + "baseTask": "Mizuki@Roguelike@Stage", + "templThreshold": 0.95, + "next": [ + "Mizuki@Roguelike@StageEncounterEnter", + "Mizuki@Roguelike@NextLevel#next" + ] + }, + "Mizuki@Roguelike@StageSafeHouse": { + "templThreshold": 0.95 + }, + "Mizuki@Roguelike@StageSafeHouseEnter": {}, + "Mizuki@Roguelike@StageTrader": { + "templThreshold": 0.95 + }, + "Mizuki@Roguelike@StageTraderEnter": {}, + "Mizuki@Roguelike@StageTraderLeaveConfirm": { + "template": "Roguelike@StageTraderLeaveConfirm.png", + "exceededNext": [ + "Mizuki@Roguelike@DiceConfirmThenAbandon", + "Mizuki@Roguelike@ExitThenAbandon" + ] + }, + "Mizuki@Roguelike@StageWindAndRain": { + "Doc": "风雨际会,拒绝可以获取4生命值", + "baseTask": "Mizuki@Roguelike@Stage", + "templThreshold": 0.95, + "next": [ + "Mizuki@Roguelike@StageEncounterEnter", + "Mizuki@Roguelike@NextLevel#next" + ] + }, + "Mizuki@Roguelike@StartExplore": {}, + "Mizuki@Roguelike@TodoEnter": {}, + "Roguelike": { + "template": "Terminal.png", + "action": "ClickSelf", + "roi": [ + 880, + 100, + 180, + 120 + ], + "next": [ + "Roguelike", + "Roguelike@CloseAnnos#next", + "Roguelike@TodoEnter", + "Roguelike@IntegratedStrategies" + ], + "postDelay": 1000 + }, + "RoguelikeBattleAbandon": { + "action": "ClickSelf", + "roi": [ + 648, + 229, + 220, + 246 + ], + "next": [ + "RoguelikeBattleAbandonConfirm", + "RoguelikeBattleAbandon" + ] + }, + "RoguelikeBattleAbandonConfirm": { + "action": "ClickSelf", + "roi": [ + 716, + 416, + 259, + 153 + ], + "next": [ + "RoguelikeBattleAbandonConfirm", + "Stop" + ] + }, + "RoguelikeBattleExitBegin": { + "action": "ClickSelf", + "roi": [ + 3, + 0, + 153, + 154 + ], + "maskRange": [ + 100, + 255 + ], + "next": [ + "RoguelikeBattleAbandon", + "RoguelikeBattleExitBegin" + ] + }, + "RoguelikeBattleSpeedUp": { + "algorithm": "JustReturn", + "action": "ClickRect", + "specificRect": [ + 1070, + 20, + 60, + 60 + ], + "preDelay": 3000 + }, + "RoguelikeCustom-HijackCoChar": { + "algorithm": "OcrDetect", + "text": [], + "roi": [ + 186, + 298, + 913, + 200 + ], + "ocrReplace": [], + "preDelay": 1000 + }, + "RoguelikeCustom-HijackRoles": { + "algorithm": "OcrDetect", + "text": [], + "roi": [ + 54, + 356, + 1172, + 183 + ], + "ocrReplace": [] + }, + "RoguelikeCustom-HijackSquad": { + "algorithm": "OcrDetect", + "text": [], + "roi": [ + 0, + 383, + 1280, + 142 + ], + "ocrReplace": [] + }, + "RoguelikeFormationOper": { + "cache": false, + "roi": [ + 363, + 11, + 891, + 668 + ], + "maskRange": [ + 1, + 255 + ], + "templThreshold": 0.9 + }, + "RoguelikeFormationOperSelected": { + "template": "empty.png", + "templThreshold": 1000, + "templThreshold_Doc": "这个任务中作为符合range的像素点数量阈值", + "maskRange_Doc": "拿来做H通道的范围", + "maskRange": [ + 95, + 105 + ], + "specificRect_Doc": "拿来做S、V通道的范围", + "specificRect": [ + 170, + 210, + 70, + 140 + ] + }, + "RoguelikeQuickFormationClearAndReselect": { + "action": "ClickSelf", + "roi": [ + 821, + 608, + 139, + 112 + ], + "next": [ + "RoguelikeQuickFormationClearAndReselect-Confirm" + ] + }, + "RoguelikeQuickFormationClearAndReselect-Confirm": { + "template": "Roguelike@FormationConfirm.png", + "action": "ClickSelf", + "roi": [ + 1015, + 601, + 265, + 119 + ], + "next": [ + "RoguelikeQuickFormationClearAndReselect-Formation", + "RoguelikeQuickFormationClearAndReselect-Confirm" + ] + }, + "RoguelikeQuickFormationClearAndReselect-Formation": { + "template": "Roguelike@QuickFormation.png", + "action": "ClickSelf", + "roi": [ + 817, + 0, + 402, + 146 + ], + "next": [ + "RoguelikeQuickFormationClearAndReselect-Formation", + "Stop" + ], + "postDelay": 2000 + }, + "RoguelikeQuickFormationDelay": { + "algorithm": "JustReturn", + "action": "DoNothing", + "postDelay": 100 + }, + "RoguelikeRecruitElite": { + "Doc": "base_task", + "template": "empty.png", + "rectMove": [ + -170, + -60, + 60, + 50 + ] + }, + "RoguelikeRecruitElite0": { + "baseTask": "RoguelikeRecruitElite" + }, + "RoguelikeRecruitElite1": { + "baseTask": "RoguelikeRecruitElite" + }, + "RoguelikeRecruitElite2": { + "baseTask": "RoguelikeRecruitElite" + }, + "RoguelikeRecruitLevel": { + "template": "empty.png", + "rectMove_Doc": "肉鸽招募时检测等级用,相对flag的位移", + "rectMove": [ + -171, + 0, + 15, + 11 + ] + }, + "RoguelikeRecruitOcr": { + "algorithm": "OcrDetect", + "text": [], + "fullMatch": true, + "roi": [ + 13, + 26, + 120, + 23 + ], + "specificRect_Doc": "x拿来当文字灰度二值化下限用", + "specificRect": [ + 100, + 0, + 0, + 0 + ] + }, + "RoguelikeRecruitOcrFlag": { + "roi": [ + 525, + 110, + 640, + 500 + ], + "templThreshold": 0.9 + }, + "RoguelikeRecruitOperListSlowlySwipeToTheLeft": { + "baseTask": "SlowlySwipeToTheLeft", + "specificRect": [ + 500, + 340, + 20, + 20 + ], + "rectMove": [ + 1150, + 340, + 20, + 20 + ] + }, + "RoguelikeRecruitOperListSlowlySwipeToTheRight": { + "baseTask": "SlowlySwipeToTheRight", + "specificRect": [ + 1150, + 340, + 20, + 20 + ], + "rectMove": [ + 500, + 340, + 20, + 20 + ] + }, + "RoguelikeRecruitOperListSwipeToTheLeft": { + "baseTask": "RoguelikeRecruitOperListSlowlySwipeToTheLeft", + "specialParams": [ + 150, + 0, + 0.5 + ] + }, + "DepotSlowlySwipeToTheRight": { + "baseTask": "SlowlySwipeToTheRight", + "specificRect": [ + 1150, + 340, + 20, + 20 + ], + "rectMove": [ + 110, + 340, + 20, + 20 + ] + }, + "RoguelikeRecruitSwipeMaxTime": { + "algorithm": "JustReturn", + "maxTimes_Doc": "这个参数是肉鸽招募时,向右划动的最大次数", + "maxTimes": 4 + }, + "RoguelikeSkillSelectionFlag": { + "templThreshold": 0.9, + "maskRange": [ + 1, + 255 + ] + }, + "RoguelikeSkillSelectionMove1": { + "algorithm": "JustReturn", + "rectMove_Doc": "技能1相对flag的坐标", + "rectMove": [ + 180, + -40, + 40, + 30 + ], + "postDelay": 0 + }, + "RoguelikeSkillSelectionMove2": { + "algorithm": "JustReturn", + "rectMove_Doc": "技能2相对flag的坐标", + "rectMove": [ + 240, + -40, + 30, + 30 + ] + }, + "RoguelikeSkillSelectionMove3": { + "algorithm": "JustReturn", + "rectMove_Doc": "技能3相对flag的坐标", + "rectMove": [ + 300, + -40, + 30, + 30 + ] + }, + "RoguelikeSkillSelectionName": { + "algorithm": "OcrDetect", + "fullMatch": true, + "text": [], + "roi": [ + 210, + 8, + 120, + 20 + ], + "specificRect_Doc": "x拿来当文字灰度二值化下限用", + "specificRect": [ + 100, + 0, + 0, + 0 + ] + }, + "RoguelikeSkillSelectionTeamFull": { + "cache": false, + "roi": [ + 135, + 22, + 1032, + 668 + ], + "maskRange": [ + 200, + 255 + ] + }, + "RoguelikeTraderShopping": { + "template": "Roguelike@TraderRandomShopping.png", + "templThreshold": 0.7, + "roi": [ + 480, + 240, + 750, + 280 + ], + "maskRange": [ + 1, + 255 + ] + }, + "RoguelikeTraderShoppingOcr": { + "algorithm": "OcrDetect", + "text": [], + "roi": [ + -120, + -160, + 190, + 35 + ], + "ocrReplace": [] + }, + "RoguelikeTraderShoppingOver": { + "template": "Roguelike@StageTraderLeave.png", + "action": "ClickSelf", + "cache": false, + "roi": [ + 1046, + 443, + 234, + 204 + ] + }, + "RoguelikeWaitBattleStart": { + "Doc": "点了开始行动之后,可能会网络不好一直loading,用这个任务等一会", + "template": "Roguelike@QuickFormation.png", + "action": "DoNothing", + "roi": [ + 817, + 0, + 402, + 146 + ], + "next": [ + "RoguelikeWaitBattleStart" + ] + } +} \ No newline at end of file diff --git a/src/MaaCore/Common/AsstTypes.h b/src/MaaCore/Common/AsstTypes.h index 58fecefe0c..6c3e22fc0e 100644 --- a/src/MaaCore/Common/AsstTypes.h +++ b/src/MaaCore/Common/AsstTypes.h @@ -372,6 +372,7 @@ namespace asst OcrTaskInfo& operator=(OcrTaskInfo&&) noexcept = default; std::vector text; // 文字的容器,匹配到这里面任一个,就算匹配上了 bool full_match = false; // 是否需要全匹配,否则搜索到子串就算匹配上了 + bool is_ascii = false; // 是否启用字符数字模型 bool without_det = false; // 是否不使用检测模型 std::unordered_map replace_map; // 部分文字容易识别错,字符串强制replace之后,再进行匹配 diff --git a/src/MaaCore/Config/Miscellaneous/OcrPack.h b/src/MaaCore/Config/Miscellaneous/OcrPack.h index daddc173a7..5b77486a9b 100644 --- a/src/MaaCore/Config/Miscellaneous/OcrPack.h +++ b/src/MaaCore/Config/Miscellaneous/OcrPack.h @@ -53,4 +53,9 @@ namespace asst { friend class SingletonHolder; }; + + class CharOcr final : public SingletonHolder, public OcrPack + { + friend class SingletonHolder; + }; } diff --git a/src/MaaCore/Config/ResourceLoader.cpp b/src/MaaCore/Config/ResourceLoader.cpp index 11197f1d40..1b9d2fb1c9 100644 --- a/src/MaaCore/Config/ResourceLoader.cpp +++ b/src/MaaCore/Config/ResourceLoader.cpp @@ -65,7 +65,7 @@ bool asst::ResourceLoader::load(const std::filesystem::path& path) /* load 3rd parties resource */ LoadResourceAndCheckRet(TilePack, "Arknights-Tile-Pos"_p / "levels.json"_p); LoadResourceAndCheckRet(WordOcr, "PaddleOCR"_p); - // LoadResourceAndCheckRet(CharOcr, "PaddleCharOCR"_p); + LoadResourceAndCheckRet(CharOcr, "PaddleCharOCR"_p); m_loaded = true; diff --git a/src/MaaCore/Config/TaskData.cpp b/src/MaaCore/Config/TaskData.cpp index 3d524f1129..27bfd6fa35 100644 --- a/src/MaaCore/Config/TaskData.cpp +++ b/src/MaaCore/Config/TaskData.cpp @@ -395,6 +395,7 @@ asst::TaskData::taskptr_t asst::TaskData::generate_ocr_task_info([[maybe_unused] #endif ocr_task_info_ptr->full_match = task_json.get("fullMatch", default_ptr->full_match); + ocr_task_info_ptr->is_ascii = task_json.get("isAscii", default_ptr->is_ascii); ocr_task_info_ptr->without_det = task_json.get("withoutDet", default_ptr->without_det); if (auto opt = task_json.find("ocrReplace")) { for (const json::value& rep : opt.value()) { @@ -533,6 +534,7 @@ std::shared_ptr asst::TaskData::_default_ocr_task_info() { auto ocr_task_info_ptr = std::make_shared(); ocr_task_info_ptr->full_match = false; + ocr_task_info_ptr->is_ascii = false; ocr_task_info_ptr->without_det = false; return ocr_task_info_ptr; diff --git a/src/MaaCore/Task/Fight/DrGrandetTaskPlugin.cpp b/src/MaaCore/Task/Fight/DrGrandetTaskPlugin.cpp index b5645f303e..56e6484bdb 100644 --- a/src/MaaCore/Task/Fight/DrGrandetTaskPlugin.cpp +++ b/src/MaaCore/Task/Fight/DrGrandetTaskPlugin.cpp @@ -1,9 +1,9 @@ #include "DrGrandetTaskPlugin.h" -#include "Config/TaskData.h" #include "Controller.h" -#include "Utils/Logger.hpp" #include "Vision/OcrImageAnalyzer.h" +#include "Config/TaskData.h" +#include "Utils/Logger.hpp" #include @@ -52,6 +52,8 @@ int asst::DrGrandetTaskPlugin::analyze_time_left() OcrImageAnalyzer analyzer(ctrler()->get_image()); analyzer.set_task_info("DrGrandetUseOriginiums"); analyzer.set_replace(Task.get("NumberOcrReplace")->replace_map); + // 这里是汉字和数字混合的,用不了单独的en模型 + analyzer.set_use_char_model(false); if (!analyzer.analyze()) { return -1; @@ -72,4 +74,4 @@ int asst::DrGrandetTaskPlugin::analyze_time_left() Log.info("Time left ms:", millisec); return millisec; -} +} \ No newline at end of file diff --git a/src/MaaCore/Vision/OcrImageAnalyzer.cpp b/src/MaaCore/Vision/OcrImageAnalyzer.cpp index 39927d042b..dbb9f439d7 100644 --- a/src/MaaCore/Vision/OcrImageAnalyzer.cpp +++ b/src/MaaCore/Vision/OcrImageAnalyzer.cpp @@ -60,17 +60,15 @@ bool asst::OcrImageAnalyzer::analyze() m_roi = correct_rect(m_roi, m_image); - // OcrPack* ocr_ptr = nullptr; - // if (m_use_char_model) { - // ocr_ptr = &CharOcr::get_instance(); - // } - // else { - // ocr_ptr = &WordOcr::get_instance(); - // } - // m_ocr_result = ocr_ptr->recognize(m_image, m_roi, all_pred, m_without_det); - // ocr_ptr = nullptr; - - m_ocr_result = WordOcr::get_instance().recognize(m_image, m_roi, all_pred, m_without_det); + OcrPack* ocr_ptr = nullptr; + if (m_use_char_model) { + ocr_ptr = &CharOcr::get_instance(); + } + else { + ocr_ptr = &WordOcr::get_instance(); + } + m_ocr_result = ocr_ptr->recognize(m_image, m_roi, all_pred, m_without_det); + ocr_ptr = nullptr; // log.trace("ocr result", m_ocr_result); return !m_ocr_result.empty(); @@ -109,6 +107,7 @@ void asst::OcrImageAnalyzer::set_task_info(OcrTaskInfo task_info) noexcept m_full_match = task_info.full_match; m_replace = std::move(task_info.replace_map); m_use_cache = task_info.cache; + m_use_char_model = task_info.is_ascii; if (m_use_cache && !m_region_of_appeared.empty()) { m_roi = m_region_of_appeared; @@ -144,6 +143,11 @@ void asst::OcrImageAnalyzer::set_region_of_appeared(Rect region) noexcept } } +void asst::OcrImageAnalyzer::set_use_char_model(bool enable) noexcept +{ + m_use_char_model = enable; +} + void asst::OcrImageAnalyzer::set_pred(const TextRectProc& pred) { m_pred = pred; diff --git a/src/MaaCore/Vision/OcrImageAnalyzer.h b/src/MaaCore/Vision/OcrImageAnalyzer.h index 4a943bad65..ad817a3093 100644 --- a/src/MaaCore/Vision/OcrImageAnalyzer.h +++ b/src/MaaCore/Vision/OcrImageAnalyzer.h @@ -32,6 +32,7 @@ namespace asst virtual void set_use_cache(bool is_use) noexcept; virtual void set_region_of_appeared(Rect region) noexcept; + virtual void set_use_char_model(bool enable) noexcept; void set_pred(const TextRectProc& pred); virtual const std::vector& get_result() const noexcept; @@ -48,5 +49,6 @@ namespace asst bool m_without_det = false; bool m_use_cache = false; Rect m_region_of_appeared; + bool m_use_char_model = false; }; } diff --git a/src/MaaCore/Vision/Miscellaneous/StageDropsImageAnalyzer.cpp b/src/MaaCore/Vision/StageDropsImageAnalyzer.cpp similarity index 96% rename from src/MaaCore/Vision/Miscellaneous/StageDropsImageAnalyzer.cpp rename to src/MaaCore/Vision/StageDropsImageAnalyzer.cpp index 6f1a5e43b5..775e1c7441 100644 --- a/src/MaaCore/Vision/Miscellaneous/StageDropsImageAnalyzer.cpp +++ b/src/MaaCore/Vision/StageDropsImageAnalyzer.cpp @@ -191,7 +191,11 @@ bool asst::StageDropsImageAnalyzer::analyze_drops() } std::string item = match_item(item_roi, drop_type, size - i, size); - int quantity = match_quantity(item_roi); + bool use_word_model = item == LMD_ID; + int quantity = match_quantity(item_roi, use_word_model); + if (use_word_model && quantity == 0) { + quantity = match_quantity(item_roi, false); + } Log.info("Item id:", item, ", quantity:", quantity); #ifdef ASST_DEBUG cv::rectangle(m_image_draw, make_rect(item_roi), cv::Scalar(0, 0, 255), 2); @@ -458,7 +462,7 @@ std::string asst::StageDropsImageAnalyzer::match_item(const Rect& roi, StageDrop return result; } -int asst::StageDropsImageAnalyzer::match_quantity(const Rect& roi) +int asst::StageDropsImageAnalyzer::match_quantity(const Rect& roi, bool use_word_model) { auto task_ptr = Task.get("StageDrops-Quantity"); @@ -518,6 +522,7 @@ int asst::StageDropsImageAnalyzer::match_quantity(const Rect& roi) analyzer.set_roi(Rect(quantity_roi.x + far_left, quantity_roi.y, far_right - far_left, quantity_roi.height)); analyzer.set_expansion(1); analyzer.set_threshold(task_ptr->mask_range.first, task_ptr->mask_range.second); + analyzer.set_use_char_model(!use_word_model); if (!analyzer.analyze()) { return 0; @@ -527,8 +532,14 @@ int asst::StageDropsImageAnalyzer::match_quantity(const Rect& roi) #ifdef ASST_DEBUG cv::rectangle(m_image_draw, make_rect(result.rect), cv::Scalar(0, 0, 255)); - cv::putText(m_image_draw, result.text, cv::Point(result.rect.x, result.rect.y - 5), cv::FONT_HERSHEY_SIMPLEX, 0.5, - cv::Scalar(0, 255, 0), 2); + if (use_word_model) { + cv::putText(m_image_draw, result.text, cv::Point(result.rect.x, result.rect.y - 20), cv::FONT_HERSHEY_SIMPLEX, + 0.5, cv::Scalar(0, 0, 255), 2); + } + else { + cv::putText(m_image_draw, result.text, cv::Point(result.rect.x, result.rect.y - 5), cv::FONT_HERSHEY_SIMPLEX, + 0.5, cv::Scalar(0, 255, 0), 2); + } #endif std::string digit_str = result.text; diff --git a/src/MaaCore/Vision/Miscellaneous/StageDropsImageAnalyzer.h b/src/MaaCore/Vision/StageDropsImageAnalyzer.h similarity index 94% rename from src/MaaCore/Vision/Miscellaneous/StageDropsImageAnalyzer.h rename to src/MaaCore/Vision/StageDropsImageAnalyzer.h index 6c7d1ba1be..92c840470f 100644 --- a/src/MaaCore/Vision/Miscellaneous/StageDropsImageAnalyzer.h +++ b/src/MaaCore/Vision/StageDropsImageAnalyzer.h @@ -1,6 +1,6 @@ #pragma once -#include "Config/Miscellaneous/StageDropsConfig.h" #include "Vision/AbstractImageAnalyzer.h" +#include "Config/Miscellaneous/StageDropsConfig.h" namespace asst { @@ -27,7 +27,7 @@ namespace asst bool analyze_baseline(); bool analyze_drops(); - int match_quantity(const Rect& roi); + int match_quantity(const Rect& roi, bool use_word_model = false); StageDropType match_droptype(const Rect& roi); std::string match_item(const Rect& roi, StageDropType type, int index, int size);