{
    "AncientTreeJob": {
        "desc": "古树任务",
        "max_hit": 1,
        "recognition": "And",
        "all_of": [
            "CheckAncientTreeText",
            "CheckAncientTreeIcon",
            "CheckAncientTreeReadyText"
        ],
        "pre_delay": 0,
        "post_delay": 0,
        "next": [
            "AcceptAncientTree",
            "GoToAncientTreeMission"
        ]
    },
    "CheckAncientTreeText": {
        "desc": "检查是否有古树文本",
        "recognition": "OCR",
        "roi": [
            63,
            208,
            1158,
            71
        ],
        "expected": [
            "古树",
            "古樹",
            "(?i)Ancient\\s*Tree",
            "古木",
            "고목"
        ],
        "order_by": "Vertical"
    },
    "CheckAncientTreeIcon": {
        "desc": "检查古树文本下方的图标",
        "recognition": "TemplateMatch",
        "roi": "CheckAncientTreeText",
        "roi_offset": [
            -18,
            0,
            0,
            28
        ],
        "template": "EnvironmentMonitoring/PhotoIcon.png",
        "threshold": 0.8
    },
    "CheckAncientTreeReadyText": {
        "desc": "检查古树委托是否准备好",
        "recognition": "OCR",
        "roi": "CheckAncientTreeIcon",
        "roi_offset": [
            -14,
            332,
            359,
            76
        ],
        "expected": [
            "接取委托",
            "接取委託",
            "(?i)Accept\\s*Job",
            "引き受ける",
            "前往任务",
            "前往任務",
            "(?i)Go\\s*to\\s*Mission",
            "任務へ",
            "의뢰 수령",
            "임무로 이동하기"
        ]
    },
    "CheckAncientTreeJob": {
        "desc": "检查古树委托是否可以接取",
        "recognition": "OCR",
        "roi": "CheckAncientTreeIcon",
        "roi_offset": [
            -14,
            332,
            359,
            76
        ],
        "expected": [
            "接取委托",
            "接取委託",
            "(?i)Accept\\s*Job",
            "引き受ける",
            "의뢰 수령"
        ]
    },
    "CheckAncientTreeGoToMissionText": {
        "desc": "检查古树委托是否可以前往",
        "recognition": "OCR",
        "roi": "CheckAncientTreeIcon",
        "roi_offset": [
            -14,
            332,
            359,
            76
        ],
        "expected": [
            "前往任务",
            "前往任務",
            "(?i)Go\\s*to\\s*Mission",
            "任務へ",
            "임무로 이동하기"
        ]
    },
    "InAncientTreeMission": {
        "desc": "是否在古树任务界面",
        "recognition": "OCR",
        "roi": [
            415,
            50,
            855,
            241
        ],
        "expected": [
            "古树",
            "古樹",
            "(?i)Ancient\\s*Tree",
            "古木",
            "고목"
        ]
    },
    "AcceptAncientTree": {
        "desc": "接取古树委托",
        "recognition": "And",
        "all_of": [
            "CheckAncientTreeText",
            "CheckAncientTreeIcon",
            "CheckAncientTreeJob"
        ],
        "box_index": 2,
        "action": "Click",
        "next": [
            "GoToAncientTreeMission"
        ]
    },
    "GoToAncientTreeMission": {
        "desc": "前往古树任务",
        "recognition": "And",
        "all_of": [
            "CheckAncientTreeText",
            "CheckAncientTreeIcon",
            "CheckAncientTreeGoToMissionText"
        ],
        "box_index": 2,
        "action": "Click",
        "next": [
            "AncientTreeTrackOrGoTo"
        ]
    },
    "AncientTreeTrackOrGoTo": {
        "desc": "在古树任务中，如果有开始追踪的按钮就点击追踪，没有就直接前往",
        "recognition": "And",
        "all_of": [
            "InAncientTreeMission"
        ],
        "next": [
            "TrackAncientTree",
            "GoToAncientTree"
        ]
    },
    "TrackAncientTree": {
        "desc": "追踪古树任务",
        "recognition": "And",
        "all_of": [
            "TrackMissionButton",
            "InAncientTreeMission"
        ],
        "action": "Click",
        "next": [
            "GoToAncientTree"
        ]
    },
    "GoToAncientTree": {
        "desc": "前往古树，先回到大世界再进行判断",
        "action": "Custom",
        "custom_action": "SubTask",
        "custom_action_param": {
            "sub": [
                "SceneAnyEnterWorld"
            ]
        },
        "next": [
            "GoToAncientTreeStartPos",
            "GoToAncientTreeNotAtStartPos"
        ]
    },
    "GoToAncientTreeStartPos": {
        "desc": "在古树任务开始位置附近",
        "recognition": "Custom",
        "custom_recognition": "MapTrackerAssertLocation",
        "custom_recognition_param": {
            "expected": [
                {
                    "map_name": "map02_lv001",
                    "target": [
                        280,
                        580,
                        15,
                        15
                    ]
                }
            ]
        },
        "next": [
            "GoToAncientTreeMapTrackerMove"
        ]
    },
    "GoToAncientTreeNotAtStartPos": {
        "desc": "不在古树任务开始位置附近，先传送再复核落点",
        "action": "Custom",
        "custom_action": "SubTask",
        "custom_action_param": {
            "sub": [
                "SceneEnterWorldWulingJingyuValley7"
            ]
        },
        "next": [
            "GoToAncientTreeRecheckStartPos",
            "GoToAncientTreeReEnterMap"
        ]
    },
    "GoToAncientTreeRecheckStartPos": {
        "desc": "传送后再次检查是否已在古树任务开始位置附近",
        "recognition": "Custom",
        "custom_recognition": "MapTrackerAssertLocation",
        "custom_recognition_param": {
            "expected": [
                {
                    "map_name": "map02_lv001",
                    "target": [
                        280,
                        580,
                        15,
                        15
                    ]
                }
            ]
        },
        "next": [
            "GoToAncientTreeMapTrackerMove"
        ]
    },
    "GoToAncientTreeReEnterMap": {
        "desc": "传送后仍未到达古树任务开始位置附近，重试一次传送",
        "action": "Custom",
        "custom_action": "SubTask",
        "custom_action_param": {
            "sub": [
                "SceneEnterWorldWulingJingyuValley7"
            ]
        },
        "next": [
            "GoToAncientTreeFinalCheckStartPos",
            "GoToAncientTreeStartPosFailed"
        ]
    },
    "GoToAncientTreeFinalCheckStartPos": {
        "desc": "二次传送后再次检查是否已在古树任务开始位置附近",
        "recognition": "Custom",
        "custom_recognition": "MapTrackerAssertLocation",
        "custom_recognition_param": {
            "expected": [
                {
                    "map_name": "map02_lv001",
                    "target": [
                        280,
                        580,
                        15,
                        15
                    ]
                }
            ]
        },
        "next": [
            "GoToAncientTreeMapTrackerMove"
        ]
    },
    "GoToAncientTreeStartPosFailed": {
        "desc": "古树传送后仍未到达预期起点，结束当前子任务"
    },
    "GoToAncientTreeMapTrackerMove": {
        "desc": "前往古树",
        "action": "Custom",
        "custom_action": "MapTrackerMove",
        "custom_action_param": {
            "map_name": "map02_lv001",
            "path": [
                [
                    288,
                    587
                ],
                [
                    296,
                    577
                ],
                [
                    301,
                    572
                ],
                [
                    303,
                    565
                ],
                [
                    303,
                    552
                ],
                [
                    306,
                    545
                ],
                [
                    315,
                    542
                ],
                [
                    329,
                    540
                ],
                [
                    339,
                    541
                ],
                [
                    345,
                    536
                ],
                [
                    356,
                    534
                ],
                [
                    368,
                    531
                ],
                [
                    374,
                    539
                ],
                [
                    369,
                    547
                ],
                [
                    368,
                    556
                ],
                [
                    363,
                    564
                ],
                [
                    355,
                    570
                ]
            ]
        },
        "anchor": {
            "EnvironmentMonitoringBactToTerminal": "SceneEnterMenuRegionalDevelopmentWulingEnvironmentMonitoring",
            "EnvironmentMonitoringAdjustCamera": "AncientTreeAdjustCamera"
        },
        "next": [
            "EnvironmentMonitoringTakePhoto"
        ]
    },
    "AncientTreeAdjustCamera": {
        "desc": "古树任务中调整朝向",
        "max_hit": 2,
        "next": [
            "EnvironmentMonitoringSwipeScreenUp"
        ]
    }
}
