简介

任务调度功能旨在完成复杂的战斗安排,一般有两种情况会用到任务调度功能。

  1. 轮换练级。
  2. 浴场轮修打捞/决战。

配置文件

你可以在本项目 examples 文件夹下找到该示例配置文件

# 功能 9-3AD 批量练级
all_ships: # 所有参与轮换的舰船
 - 骏河
 - 鹰潭
 - 85工程
 - 格拉摩根
 - 石勒苏益格
 - 赛尔弗里吉
 - 沙恩霍斯特
 - 不屈
 - 光荣
# banned_ship: -1 #  -1 表示全体舰船位置不做限制
banned_ship:
 - [] # 0 号位空着
 - ["85工程"] # 旗舰不能是85工程
 - ["不屈", "骏河", "鹰潭", "格拉摩根", "石勒苏益格", "赛尔弗里吉", "沙恩霍斯特", "不屈", "光荣"] # 这个位置只能是 85 工程
 - [""] # 后面的不做限制, 但是必须像这样占位
 - [""]
 - [""]
 - [""]
default_level_limit: 110 # 默认等级限制(2-111 之间的整数), 达到该等级后换下, 110 满级船不允许上场
level_limit:
#  吹雪: 111 # 满级吹雪可以上场
 85工程: 111 # 满级85工程可以上场
 72工程: 100 # 72工程 100 级后不允许上场
 骏河: 30 # 骏河 30 级以后不允许上场
 鹰潭: 100
default_repair_mode: 2 # 默认修理方式, 1:中破修, 2:大破修
repair_mode: # 针对舰船特别指定修理方式, 优先级高于 default_repair_mode
 85工程: 1 # 85工程中破修
ship_count: 6 # 舰队舰船数量
fleet_id: 3 # 该任务占用的舰队编号, 不能用第1舰队
times: 200 # 任务次数
max_repair_time: 86400 # 最大修理时间(秒), 超出该时间则使用快速修复, 这里是 1 天也就是相当于不允许使用快修.
quick_repair: False # 不存在能够参与轮换的舰队时是否使用快修.
destroy_ship_types: null # 要解装哪些舰船, null 表示全部解装
# destroy_ship_types: ["DD", "CA", "CV"] 只解装驱逐, 重巡, 航母

模板代码

日常图轮换练级/轮修

示例代码

请注意,file_path 参数务必使用绝对路径,暂时不支持相对路径。

# 任务调度功能,设置好后可以轮换练船,理论上可以无限轮换,直到手动停止
import os

from autowsgr.port.task_runner import FightTask, TaskRunner
from autowsgr.scripts.main import start_script
from autowsgr.fight.normal_fight import NormalFightPlan

timer = start_script(f"{os.path.dirname(os.path.abspath(__file__))}/user_settings.yaml")
plan = NormalFightPlan(timer, "normal_fight/9-3AD.yaml")
runner = TaskRunner()  # 注册 TaskRunner
runner.tasks.append(
    FightTask(
        timer,
        file_path=r"C:\\Users\\huany\\Desktop\\Projects\\Auto-WSGR-dev\\Auto-WSGR\\examples\\fight_task_example.yaml",  # 任务配置文件路径,这个地方填写自己写好的配置文件
    )
)  # 添加任务 (仅支持绝对路径)
runner.run()  # 启动调度器

活动图轮换练级/轮修

大体相同,只需要把 plan 注册为活动图的 EventFightPlanxxx

决战轮修

敬请期待。

部分特性