js: 每日委托 0.98.3 (#1386)

This commit is contained in:
xoipz
2025-07-22 22:54:12 +08:00
committed by GitHub
parent cf96aff0c8
commit 4ad32c17ed
60 changed files with 2084 additions and 1973 deletions

View File

@@ -0,0 +1,237 @@
# AutoCommission 标准对话委托制作指南
> 欢迎加入开发!难度:★★★☆☆
> 感谢云闲vsv & 换苏伟u & 小鹰划船不用桨 & 塔台 & 未知_ 的共同开发
---
## 1 制作前检查
- 打开 [AutoCommission 开发进度表格](https://docs.qq.com/sheet/DWGRCTGtDUGVPa1h0?tab=BB08J2)
---
## 2 了解委托信息
- 名称:在任务界面看到的完整委托标题
- 地点:地图右上角名称
---
## 3 创建流程文件
路径规则 AutoEntrust\assets\process\{委托名称}\{委托地点}\process.json
- 使用 UTF-8 无 BOM 编码保存。
- 所有子流程(如 `取餐.json`)放在同一目录,方便相对路径引用。
---
## 4 流程文件格式总览
### 4.1 基本结构
```json
[
{
"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 对话步骤详解
```json
{
"type": "对话",
"data": {
"skipCount": 5,
"priorityOptions": ["同意", "接受委托", "我来帮忙"],
"npcWhiteList": ["派蒙", "凯亚", "安柏"]
},
"note": "优先选“同意”等选项,且只与白名单 NPC 交互"
}
"skipCount"跳过的前置无选项的对话次数,"priorityOptions"对话中可选的内容npcWhiteList可以对话的npc
```
---
## 6 自动任务步骤详解
#### 功能特点
- 动态启用/禁用自动任务
- 支持任务配置参数
- 统一的任务管理接口
#### 使用方法
**1. 启用自动拾取(默认配置)**
```json
{
"type": "自动任务",
"data": {
"action": "enable",
"taskType": "AutoPick"
},
"note": "启用自动拾取"
}
```
**2. 启用自动拾取(自定义配置)**
```json
{
"type": "自动任务",
"data": {
"action": "enable",
"taskType": "AutoPick",
"config": {
"forceInteraction": false
}
},
"note": "启用自动拾取,禁用急速拾取模式"
}
```
**3. 启用自动剧情**
```json
{
"type": "自动任务",
"data": {
"action": "enable",
"taskType": "AutoSkip"
},
"note": "开启自动剧情"
}
```
**4. 取消所有自动任务**
```json
{
"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同样的写法
- 条件不匹配 → 跳过本步骤继续往下执行
示例:
```json
[
{
"type": "委托描述检测",
"data": "取得制作好的餐品",
"note": "分支名字正确的情况",
"run": "取餐.json"
},
{
"type": "地址检测",
"data": [-667, 2285],
"note": "距离目标 ≤15",
"run": "让纳西妲进尘歌壶.json"
}
]
```
---
## 8 完整示例
下面是一份可直接使用的 `process.json` 模板,含新功能:
```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` 及所有子流程文件打包发给审核即可。祝制作顺利!