Files
bettergi-scripts-list/repo/js/AutoCommission/对话委托制作方法.md
2025-07-22 22:54:12 +08:00

6.1 KiB
Raw Blame History

AutoCommission 标准对话委托制作指南

欢迎加入开发!难度:★★★☆☆
感谢云闲vsv & 换苏伟u & 小鹰划船不用桨 & 塔台 & 未知_ 的共同开发


1 制作前检查


2 了解委托信息

  • 名称:在任务界面看到的完整委托标题
  • 地点:地图右上角名称

3 创建流程文件

路径规则 AutoEntrust\assets\process{委托名称}{委托地点}\process.json

  • 使用 UTF-8 无 BOM 编码保存。
  • 所有子流程(如 取餐.json)放在同一目录,方便相对路径引用。

4 流程文件格式总览

4.1 基本结构

[
  {
    "type": "<步骤类型>",
    "data": <任意类型>,
    "note": "控制台日志,可选",
    "run": "<子流程文件名,可选,仅分支步骤>"
  }
]

4.2 支持的步骤类型

type 作用 data 示例 备注
委托描述检测 按 J 打开任务界面并匹配委托详情 "取得制作好的餐品" 支持 run 跳转子流程
地址检测 检测玩家坐标与给定坐标差距 ≤15 [-667, 2285] 支持 run 跳转子流程
地图追踪 执行地图寻路脚本 "tracking1.json" 相对路径
键鼠脚本 执行键鼠脚本 "script1.json" 相对路径
对话 自动对话并优先选择指定选项 见下方详解
按键 按一次键盘按键 "F"{"action":"press","key":"E"} 复杂按键操作对象,包含 action (动作,如"down"、"up"、"press")和 key (按键值)
tp 强制传送到坐标 [100,200,true] 已不常用
等待 自定义等待 3000(毫秒) 默认 5000 ms
自动任务 开启/关闭 AutoSkip、AutoPick 见下方详解
等待返回主界面 判断返回主界面 无 data
追踪委托 追踪NPC头顶图标 data可以直接写npc的名字字符串类型也可以写成一个列表name是npc的名字iconType追踪的标,Bigmap大地图的委托图标Question问号图标Task任务图标默认 好用

5 对话步骤详解

{
  "type": "对话",
  "data": {
    "skipCount": 5,
    "priorityOptions": ["同意", "接受委托", "我来帮忙"],
    "npcWhiteList": ["派蒙", "凯亚", "安柏"]
  },
  "note": "优先选“同意”等选项,且只与白名单 NPC 交互"
}
"skipCount"跳过的前置无选项的对话次数,"priorityOptions"对话中可选的内容npcWhiteList可以对话的npc

6 自动任务步骤详解

功能特点

  • 动态启用/禁用自动任务
  • 支持任务配置参数
  • 统一的任务管理接口

使用方法

1. 启用自动拾取(默认配置)

{
  "type": "自动任务",
  "data": {
    "action": "enable",
    "taskType": "AutoPick"
  },
  "note": "启用自动拾取"
}

2. 启用自动拾取(自定义配置)

{
  "type": "自动任务",
  "data": {
    "action": "enable",
    "taskType": "AutoPick",
    "config": {
      "forceInteraction": false
    }
  },
  "note": "启用自动拾取,禁用急速拾取模式"
}

3. 启用自动剧情

{
  "type": "自动任务",
  "data": {
    "action": "enable",
    "taskType": "AutoSkip"
  },
  "note": "开启自动剧情"
}

4. 取消所有自动任务

{
  "type": "自动任务",
  "data": {
    "action": "disable"
  },
  "note": "取消所有自动任务"
}

参数详细说明

action (必需)

  • 类型: string
  • 可选值: "enable" | "disable"
  • "enable": 启用自动任务
  • "disable": 取消所有自动任务

taskType (启用时必需)

  • 类型: string
  • 可选值: "AutoSkip" | "AutoPick"
  • "AutoSkip": 自动剧情
  • "AutoPick": 自动拾取

config (可选)

  • 类型: object
  • 用于配置任务的具体参数
  • 对于 AutoPick 任务:
    • forceInteraction: boolean - 是否启用急速拾取模式

支持的任务类型

任务类型 说明 支持的配置
AutoSkip 自动剧情 无特殊配置
AutoPick 自动拾取 forceInteraction: 急速拾取模式开关

7 分支(条件跳转)机制

委托描述检测地址检测 支持 run 字段:

  • 条件匹配 → 执行 run 指向的子流程,子流程使用process.json同样的写法
  • 条件不匹配 → 跳过本步骤继续往下执行

示例:

[
  {
    "type": "委托描述检测",
    "data": "取得制作好的餐品",
    "note": "分支名字正确的情况",
    "run": "取餐.json"
  },
  {
    "type": "地址检测",
    "data": [-667, 2285],
    "note": "距离目标 ≤15",
    "run": "让纳西妲进尘歌壶.json"
  }
]

8 完整示例

下面是一份可直接使用的 process.json 模板,含新功能:

[
  {
    "type": "自动任务",
    "data": { "action": "enable", "taskType": "AutoPick", "config": { "forceInteraction": false } },
    "note": "启用自动拾取(非急速)"
  },
  {
    "type": "地图追踪",
    "data": "tracking1.json",
    "note": "前往目标 NPC"
  },
  {
    "type": "等待",
    "data": 2000,
    "note": "等待传送动画"
  },
  {
    "type": "对话",
    "data": {
      "skipCount": 3,
      "priorityOptions": ["确定", "好的"],
      "npcWhiteList": ["鲁道夫"]
    },
    "note": "与鲁道夫对话"
  },
  {
    "type": "自动任务",
    "data": { "action": "disable" },
    "note": "清理自动任务"
  }
]

9 常见问题 FAQ

  1. 坐标如何获取?
    进入游戏按 M → 调试 → 记录 X、Y 即可。

  2. 地图追踪.json 如何生成?
    使用「地图追踪录制器」或手工编写。

  3. 对话选项匹配不到怎么办?
    将选项写成最短可识别关键词,如「我来帮忙」→「帮忙」;确保与游戏文本完全一致。

  4. 网络延迟高脚本失败?
    增加「等待」步骤时间,或开启「等待」默认值 5000 ms。


完成后把 process.json 及所有子流程文件打包发给审核即可。祝制作顺利!