当前位置:首页 > 自由循环框架结构

自由循环框架结构



# 激战2 自动循环脚本 — 使用教程

> 适用脚本:`1.77b1.61.ahk` | 游戏:激战2 (Guild Wars 2)  
> 原理:通过屏幕取色判断技能是否可用,自动按下对应按键

---

## 目录

1. [核心原理](#1-核心原理)
2. [快速上手](#2-快速上手)
3. [配置界面详解](#3-配置界面详解)
4. [技能循环配置](#4-技能循环配置)
5. [取色原理与操作](#5-取色原理与操作)
6. [按键模式详解](#6-按键模式详解)
7. [多重条件判断](#7-多重条件判断)
8. [常见问题](#8-常见问题)
9. [附录:文件结构](#9-附录文件结构)

---

## 1. 核心原理

### 1.1 脚本在做什么?

这个脚本是一个**屏幕识别 + 自动按键**的循环工具。它每 **16 毫秒**(约 60 帧/秒)执行一次以下流程:

```
截图游戏窗口 → 检测每个技能的图标颜色 →
颜色=就绪状态?→ 按下对应按键 → 等待技能释放完 → 继续检测下一个
```

### 1.2 为什么用颜色检测?

激战 2 的技能图标在**可用****冷却中**时颜色不同。例如:
- **技能可用**:图标是亮色的(如 `0x4A3C8B`
- **冷却中**:图标变灰或变暗

脚本通过对比**预存的"可用颜色"****当前的像素颜色**来判断是否按该技能。

### 1.3 三种识别模式

| 模式 | 原理 | 速度 | 适用场景 |
|------|------|------|----------|
| **GDIP** (默认) | GDI+ 截图 + 像素取色 | 中等 | 前台窗口,单显示器 |
| **DXGI** | DirectX 截图 + 像素取色 | 最快 | 前台窗口,DX11/12 游戏 |
| **WGC** | Windows Graphics Capture | 较慢 | 后台窗口,多显示器 |

### 1.4 整体流程

```
启动脚本
  ↓
初始化配置(读取 INI 文件)
  ↓
按热键启动(默认 Capslock)
  ↓
┌─────────────────────────────────────────────┐
│  16ms 定时器循环                              │
│                                              │
│  阶段1:起手循环(仅首次)                      │
│    → 遍历"起手循环"列表,满足颜色条件的技能依次执行 │
│    → 执行完毕后标记 start=1,不再进入            │
│                                              │
│  阶段2:指定循环(每次检查)                    │
│    → 首个技能做"开关":颜色匹配才执行后续序列     │
│    → 用于切武器、特殊爆发                       │
│                                              │
│  阶段3:主循环(第一遍 — 技能检测执行)           │
│    → 遍历"主循环"列表,检测颜色→执行(每帧只1个) │
│    → 反色+搜索模式可一帧执行多个                  │
│                                              │
│  阶段4:普攻兜底(所有技能都 CD 时)              │
│    → 如果阶段3没有执行任何技能→按"普攻"键        │
└─────────────────────────────────────────────┘
  ↓
按热键停止(Capslock 再次按下)
```

---

## 2. 快速上手

### 2.1 首次运行

```text
 第一步:双击脚本
 ┌─ 1.77b1.61.ahk ─────────────────────────────┐
 │  📄 双击运行                                  │
 │  → 自动检测 IbInputSimulator.dll 是否存在      │
 │  → 自动检测 wincapture.dll 是否存在            │
 │  → 初始化 GDI+ 图形引擎                       │
 │  → 弹出"首次运行引导"(仅第一次)              │
 └──────────────────────────────────────────────┘
```

```text
 第二步:按 F10 呼出设置面板
 ┌─────── 设置面板 ────────────────────┐
 │  [直伤] [症状] [辅助] [野外]  ← 分类 │
 │  ┌─ 下拉选择职业 ─────┐              │
 │  │  (空)              │              │
 │  └────────────────────┘              │
 │  ┌──────────────────────────┐        │
 │  │ ⚠ 首次使用请完成以下步骤 │        │
 │  └──────────────────────────┘        │
 │                                      │
 │  [📌 绑定窗口]  → 鼠标点游戏窗口     │
 │  [📍 启动位置]  → 设置提示框位置     │
 │                                      │
 │  [💾 保存设置]                       │
 └──────────────────────────────────────┘
```

**操作步骤:**
1. 双击运行 `1.77b1.61.ahk`
2. 如果弹出"首次运行引导":
   -**F10** 呼出设置面板
   - 点击 **【📌 绑定窗口】** → 鼠标箭头移到游戏窗口上点击
   - 点击 **【📍 启动位置】** → 鼠标点一下你想让提示框显示的位置
3. 打开激战 2,选择一个职业(如夺魂者、魂兽等)

---

### 2.2 选择循环配置

```text
 ┌─────── 设置面板 ────────────────────┐
 │  [直伤] [症状] [辅助] [野外]        │
 │       ↑ 点击分类标签                  │
 │                                      │
 │  ┌─ 下拉选择职业 ────────────┐       │
 │  │  ▼ 夺魂者                 │  ← 点开 │
 │  │   灾厄师                  │       │
 │  │   奶燃                   │       │
 │  └──────────────────────────┘       │
 │                                      │
 │  全局延迟: [1.0  ]                  │
 │  ☑ 随机延迟                         │
 │                                      │
 │  [💾 保存设置]                       │
 └──────────────────────────────────────┘
```

**操作步骤:**
1.**F10** 打开设置面板
2. 点击顶部标签选择分类(直伤/症状/辅助/野外)
3. 点开下拉列表,选择你的职业配置
4. 调节**全局延迟**(新手建议 1.0,太快就调大到 1.2~1.5)
5. 点击 **【💾 保存设置】**

---

### 2.3 取色(核心步骤)

```text
 按 F9 打开技能列表
 ┌──────── 技能列表 ─────────────────────────────┐
 │  N  │ 技能名称   │ 主按键 │ 主延迟 │ 反色 │…    │
 │ ───┼───────────┼───────┼───────┼─────┼─    │
 │  1  │ 技能A      │  2    │  500  │      │     │
 │  2  │ 技能B      │  3    │  400  │  ☑   │     │
 │  3  │ 技能C      │  F1   │  600  │      │     │
 │  …  │ …          │  …    │  …    │  …   │     │
 │                                      │
 │  选中 → 点【取色】→ 鼠标移到技能图标 → 按 F9  │
 │    ↑                                    ↑    │
 │  选中一行                          按热键确认 │
 └──────────────────────────────────────────────┘
```

**一键取色(推荐新手):**
```text
 1. 在技能列表点击 [🔍 一键取色]
 2. 脚本自动遍历所有技能,弹出提示:
    ┌─────────────────────────┐
    │  请移动到技能《技能A》   │
    │  中心左侧任意位置       │
    │  按 F9 确认             │
    │  ESC 可跳过             │
    └─────────────────────────┘
 3. 鼠标移到技能图标中心偏左 → 按 F9
 4. 自动跳到下一个技能 → 重复直到全部完成
 5. 完成后自动关闭
```

**快捷取色:**
```text
 1. 在技能列表**单击**选中一个技能
 2. 点击 [🎨 取色]
 3. 鼠标移到该技能图标上
 4. 按 F9 确认取色
```

**详细取色(双击技能):**
```text
 1. 在技能列表**双击**一个技能
 2. 弹出详细设置窗口:
    ┌──── 取色设置 ──────────────────┐
    │  技能名称: 技能A                 │
    │  技能按键: [  2  ]  ← 设置按键  │
    │  按键延迟: [ 500 ]  ← 延迟(ms)  │
    │  ☐ 反色模式  ☐ 范围找色        │
    │  ☐ 内置CD    ☐ 连续点击        │
    │  ☐ 纯黑跳转  ☐ 多点取色        │
    │                                 │
    │  跟随按键1: [  3  ] 延迟: [100] │
    │  跟随按键2: [  F1 ] 延迟: [200] │
    │                                 │
    │  [🎨 取色]         [💾 保存]   │
    └─────────────────────────────────┘
 3. 点击 [🎨 取色] → 鼠标移到技能 → 按 F9
 4. 修改按键、延迟等参数 → 点击 [💾 保存]
```

---

### 2.4 启动/停止自动循环

```text
 准备工作:
 ┌────────────────────────────────────────┐
 │  ✅ 选择并保存了职业配置                │
 │  ✅ 所有技能已取色                      │
 │  ✅ 游戏窗口已激活(前台模式)          │
 └────────────────────────────────────────┘

 ▶ 按 Capslock 启动
 ┌────────────────────────────────────────┐
 │  • 游戏窗口左上角显示绿色「开」字      │
 │  • 脚本开始每 16ms 检测技能颜色        │
 │  • 找到可用技能 → 自动按键             │
 │  • 全部 CD 中 → 自动按普攻兜底         │
 │  • 屏幕左上角实时显示当前检测状态      │
 └────────────────────────────────────────┘

 ■ 再按 Capslock 停止
 ┌────────────────────────────────────────┐
 │  • 绿色「开」字消失                    │
 │  • 循环定时器关闭                      │
 │  • 独立子进程终止                      │
 │  • 鼠标驱动重置                        │
 └────────────────────────────────────────┘
```

**提示:**
- 启动前确保游戏窗口是**激活状态**(标题栏高亮)
- 启动后有绿色「开」字说明正常运行
- 打开**调试模式**可看到左上角的检测日志

---

### 2.5 紧急停止

```text
 任何时候按 Enter 键:
 ┌────────────────────────────────────────┐
 │  ⛔ 立即停止所有自动化操作              │
 │  ⛔ 关闭循环定时器                      │
 │  ⛔ 终止独立子进程                      │
 │  ⛔ 重置鼠标驱动状态                    │
 └────────────────────────────────────────┘
```

---

### 2.6 调试模式(排查问题用)

```text
 按 F10 → 勾选【调试】→ 保存 → 启动循环

 ██████████████████████████████████████
 游戏窗口左上角会显示:

 ┌─ 调试信息 ──────────────────────────┐
 │ 调试模式                            │
 │ 窗口: 0,0 - 1920,1080              │
 │                                     │
 │ 起手循环,爆发技能,检测成功 ← 绿色 │
 │ 起手循环,填充技能,检测成功         │
 │ 主循环,技能A,检测成功              │
 │ 主循环,技能B,检测成功              │
 │ 主循环,技能C,检测成功              │
 └─────────────────────────────────────┘

 绿色文字 = 技能检测通过,即将按键
 无文字输出 = 所有技能都在 CD
```

---

## 3. 配置界面详解

**F10** 呼出设置面板,分为以下几个功能区:

### 3.1 职业选择区(顶部)

```
[直伤] [症状] [辅助] [野外]   ← 分类标签
[下拉列表:选择职业配置]       ← 具体的 .ini 配置
```

### 3.2 识别模式

- **DXGI / GDIP / WGC**:三种截图模式,推荐保持 GDIP
- **识别检测**:测试当前截图模式是否正常工作

### 3.3 鼠标模式

- **Logitech / LogitechNew / Razer / 其他**:根据你的鼠标品牌选择
- 非上述品牌选择"其他"(使用 SendInput 兼容模式)

### 3.4 全局设置

| 选项 | 说明 |
|------|------|
| 全局延迟 | 所有按键延迟的倍率(1=正常,2=两倍慢) |
| amb | 图片识别精度(0~255 整数,越大越宽松,默认 50) |
| 随机延迟 | 开启后按键延迟在 1.0~1.2 倍之间随机 |
| 识图精度 | 图片匹配的精确度 |
| 后台模式 | 开启后游戏可最小化,用 ControlSend 按键 |
| 静音 | 关闭启动/停止音效 |
| 调试 | 在屏幕左上角显示每个技能的颜色检测结果 |
| 日志 | 记录技能释放顺序到 log.txt |

### 3.5 启动模式

| 模式 | 说明 |
|------|------|
| 开关模式 | 按一次启动,再按一次停止(默认) |
| 按住模式 | 按住热键时循环运行,松开停止 |

### 3.6 其他按钮

| 按钮 | 功能 |
|------|------|
| 一键宏 | 设置一键宏热键 |
| 绑定窗口 | 选择要自动按键的游戏窗口 |
| 启动位置 | 设置状态提示框显示位置 |
| 配置列表 | 新建、修改、删除职业配置 |
| 清空次数 | 起手循环结束后自动重置技能使用计数 |

---

## 4. 技能循环配置

每个职业的配置存储在 `newconfig\分类\职业名.ini` 中。

### 4.1 配置文件结构

```ini
[延迟信息]
全局延迟=1
fastskill=1
amb=50        ; 图片识别精度(0~255整数,50=中等容错)
随机延迟=0

[技能循环]
起手循环=技能A,技能B,技能C       ← 首次启动时执行一遍
循环顺序=技能A,技能B,技能C       ← 主循环,持续检测执行
独立循环=技能D                     ← 独立进程执行的循环
指定循环=技能E                     ← 条件触发型循环
特性=131313                       ← Build 代码(仅供参考)
装备备注=天界双斧                  ← 装备备注(仅供参考)

[技能信息]
技能A=2,500,3,100,,,1,100,,,,,,,,,20,2000
       ↑   ↑  ↑  ↑               ↑   ↑
     按键1 延迟1 按键2 延迟2   内置CD CD时间

[颜色信息]
技能Ax=123     ← 技能 A 的 X 坐标(相对游戏窗口)
技能Ay=456     ← 技能 A 的 Y 坐标
技能Acolor=4A3C8B  ← 技能 A 可用时的颜色值(十六进制,不带#)
```

### 4.2 技能信息字段说明

```
技能名称=key1,wait1,key2,wait2,key3,wait3,key4,wait4,colormode,clickmode,picmode,blackmode,search,x1,y1,x2,y2,fuzzy,keymode,skillcdset,skillcd,clickloop

字段说明:
  key1     — 主按键(如 2 表示按数字键2)
  wait1    — 主按键后延迟(ms)
  key2~4   — 跟随按键1~3
  wait2~4  — 跟随延迟1~3
  colormode — 空=正常,"ifnot"=反色模式
  clickmode — ""=键盘,"lclick"=左键点击
  picmode  — "pic"=图片查找模式
  blackmode — "b"=纯黑跳转(技能图标变黑=施法完毕)
  search   — 1=范围找色
  x1,y1,x2,y2 — 范围找色的矩形区域坐标
  fuzzy    — 范围找色模糊度
  keymode  — "按下"=长按模式 或 "触发"=点击模式
  skillcdset — 内置CD开关
  skillcd  — 内置CD时间(ms)
  clickloop — 1=连续点击模式
```

### 4.3 四种循环类型

#### 起手循环(Opener Loop)

- **执行时机**:脚本启动后**只执行一次**
- **用途**:开怪时的爆发技能序列
- **特点**:所有满足颜色条件的技能会依次执行
- 配置示例:`爆发技能A,爆发技能B,辅助技能C`

#### 主循环(Main Loop)

- **执行时机**:起手循环之后,**每帧**都执行
- **用途**:持续检测技能 CD,释放可用技能
- **特点**:每帧只执行一个技能(找到可用就执行,然后跳出等待下一帧)
- 配置示例:`填充技能1,填充技能2,爆发技能,位移技能,普攻`

#### 独立循环(Thread Loop)

- **执行时机**:独立进程持续循环
- **用途**:不需要依赖画面检测的重复按键(如挂机技能)
- **特点**:和主循环**并行执行**,互不干扰
- 配置示例:`挂机技能A,挂机技能B`

#### 指定循环(Appoint Loop)

- **执行时机**:每次循环都检查
- **用途**:带"开关"条件的技能序列
- **特点**
  - 第一个技能做"开关":**颜色匹配**才执行后续序列
  - 用于切武器、特殊爆发等条件触发的场景
- 配置示例:`开关技能,技能A,技能B,技能C`

---

## 5. 取色原理与操作

### 5.1 取色原理

激战2 的技能图标在可用/冷却时有明显的颜色变化。脚本的核心逻辑:

```
截图 → 获取技能坐标处的像素颜色 → 与预存的"可用颜色"比较
       ↓
   颜色匹配 = 技能可用 → 执行按键
   颜色不匹配 = 技能冷却 → 跳过
```

#### 单点取色

取技能图标中心的**一个像素点**的颜色。

```
检查坐标 (123, 456) 的像素颜色
  如果 == 0x4A3C8B(预存颜色) → 技能可用
  如果 ≠ 0x4A3C8B → 技能冷却
```

#### 多点取色(更准确)

同时检查技能图标中心及**左侧偏移 4 像素**的两个点,减少误判。

```
检查 (123, 456) 和 (119, 456) 两个像素
  两个都匹配预存颜色 → 技能可用
  任意一个不匹配 → 技能冷却
```

#### 范围找色

在指定矩形区域内搜索目标颜色,用于技能图标位置不固定的情况。

```
在矩形 (100, 400)-(200, 500) 内搜索颜色 0x4A3C8B
  找到任意匹配像素 → 技能可用
  没找到 → 技能冷却
```

### 5.2 取色步骤

#### 快捷取色(推荐新手)

1.**F10** 呼出设置面板,拉取你的循环配置
2.**F9** 打开技能列表
3. 在技能列表中选中要取色的技能
4. 点击 **【取色】** 按钮 → 鼠标移到技能图标中心偏左位置
5. 按下 **F9**(取色热键)→ 颜色自动保存

#### 一键取色(全自动)

1. 在技能列表点击 **【一键取色】**
2. 将鼠标移到游戏窗口
3. 脚本会自动遍历所有技能,逐个提示你移动到技能图标位置
4. 每次移到图标中心偏左位置,按 **F9** 确认
5.**ESC** 可跳过当前技能

#### 详细取色(进阶)

1. 在技能列表**双击**某个技能
2. 弹出详细设置窗口:
   - **技能按键**:设置触发按键
   - **按键延迟**:按键后的等待时间(ms)
   - **反色模式**:勾选后逻辑反转(找到颜色=技能不可用)
   - **范围找色**:勾选后输入矩形区域坐标
   - **多点取色**:同时检测两个点的颜色
   - **内置CD**:自带的冷却计时(ms)
   - **连续点击**:持续发送按键直到延迟结束
   - **跟随按键1~3**:主按键后额外触发的辅助按键
   - **纯黑跳转**:检测技能图标变黑时提前结束等待
3. 点击 **【取色】** → 鼠标移到技能上 → 按 F9

### 5.3 放大镜工具

按取色热键(F9)并选择技能后,会打开一个**放大镜窗口**

```
┌──────────────────────────┐
│  放大的技能图标区域        │
│  ────────┼───────        │
│          ┼               │
│    ○ 十字线中心 = 取色点  │
│                          │
│  下方显示:X:123 Y:456    │
│           #4A3C8B        │
└──────────────────────────┘
```

- **十字线中心** = 鼠标当前位置的放大视图
- **底部文字**:显示当前鼠标的窗口相对坐标和颜色值
- 放大镜会自动跟随鼠标移动

### 5.4 画面冻结功能

取色时如果技能图标变化太快,可以先用 FreezeMode 冻结画面:

> 该功能已集成到取色流程中,脚本会自动在取色前冻结画面,取色完成后恢复。

### 5.5 颜色相关概念

| 概念 | 说明 |
|------|------|
| **色值** | 十六进制 RGB 值,如 `0x4A3C8B` |
| **反色模式** | 勾选后:**找到该颜色 = 技能不可用**(用于某些特殊技能) |
| **纯黑跳转** | 技能施放后图标会变黑 → 检测到纯黑 `0x000000` 时提前结束等待 |
| **模糊度** | 范围找色时允许的颜色偏差值(0~255 整数,越大越宽松) |
| **多点取色** | 同时检测 2 个像素点,都匹配才判定为可用(更准确) |

---

## 6. 按键模式详解

### 6.1 按键触发方式

脚本支持多种按键触发方式,由配置中的 `keymode` 字段控制:

```
发送按键 → 1(数字键1) → 游戏角色使用技能1
                    ↓
             等待 wait1 毫秒
                    ↓
             发送跟随按键2 → 等待 → 发送跟随按键3 → ...
```

#### 普通触发(keymode=触发/空)

```
SendOne("2", 500)
  → 按下数字键 2
  → 等待 500ms(乘以全局延迟倍率)
  → 如果设定了随机延迟,则在 500~600ms 之间随机
```

#### 长按模式(keymode="按下")

```
Senddown("1", 500, "按下")
  → 按下数字键 1 不放
  → 保持按住 500ms
  → 松手
  → 如果在按住期间收到停止信号,提前松手
```

#### 连续点击(clickloop=1)

```
sendmode("技能名", "3", 500, "触发", 1)
  → 在 500ms 内反复按数字键 3
  → 每次间隔 50ms(500/10)
  → 如果开启了纯黑跳转,图标变黑后提前结束
```

#### 鼠标点击(clickmode 不为空)

```
leftclick(500, 300, 200, "lclick")
  → 移动鼠标到 (500, 300)
  → 左键单击
  → 等待 200ms
```

### 6.2 按键延迟控制

```
实际延迟 = 配置延迟 × skilltime(全局延迟倍率)

例:配置延迟 500ms × 全局延迟 1.5 = 实际 750ms

随机延迟模式下:
  实际延迟 = (配置延迟 × 1.0) ~ (配置延迟 × 1.2) 之间随机
```

### 6.3 IbInputSimulator (硬件输入)

脚本使用 `IbInputSimulator` 实现硬件级按键,可以绕过游戏的按键检测:

- 支持 **Logitech** / **Razer** 鼠标驱动
- 其他鼠标自动使用 **SendInput** API
- 无需管理员权限

### 6.4 纯黑跳转(Black Jump)

许多技能释放过程中图标会变为**纯黑色**,脚本利用这一点提前结束等待:

```
发送按键 1
  ↓
循环检测技能图标颜色
  ↓
颜色 == 0x000000(纯黑)? → 施法完毕!进入下一个技能
颜色 != 纯黑? → 继续等待(最多等 1.25× 指定延迟)
```

---

## 7. 多重条件判断

### 7.1 标准多重条件

格式:`技能A=N=条件B=条件C`

含义:
- **技能A** 使用满 **N** 次后
- 检查**条件B****条件C**的图标颜色
- 全部满足条件时 → 执行**条件C**的按键序列

```
配置示例:
爆发技能=3=填充A=填充B

执行逻辑:
1. 爆发技能使用了 0 次 → 继续使用爆发技能
2. 爆发技能使用了 1 次 → 继续使用爆发技能
3. 爆发技能使用了 2 次 → 继续使用爆发技能
4. 爆发技能使用了 3 次 → 检查填充A和填充B的图标颜色
   a. 填充A和填充B都可用 → 执行填充B的按键
   b. 任一不可用 → 继续等待
```

### 7.2 计时多重条件

格式:`技能A>2000=条件B=条件C`

含义:
- **技能A** 已使用过
- 且距离上次使用 >= **2000ms**
-**条件B****条件C**的颜色满足
- → 执行**条件C**

```
配置示例:
翻滚>3000=填充A=位移

执行逻辑:
1. 翻滚技能已使用,且距上次使用 >= 3秒
2. 填充A和位移的颜色都匹配
3. → 执行位移技能的按键
```

### 7.3 特殊保留字

- **普攻**:特殊名称,始终视为条件满足(用于多重条件和兜底)
- **纯数字**(如 `1``2`):用作延时占位,会被自动跳过

---

## 8. 常见问题

### 8.1 脚本没反应?

| 可能原因 | 解决方法 |
|----------|----------|
| 没有绑定窗口 | 按 F10 → 点击【绑定窗口】→ 点击游戏窗口 |
| 窗口不是激活状态 | 切换到游戏窗口(后台模式除外) |
| 没有选择职业配置 | 按 F10 → 选择配置 → 保存 |
| 热键冲突 | 按 F10 → 重新设置启动热键 |
| 缺少 DLL | 确保 `IbInputSimulator.dll``wincapture.dll` 在脚本同目录 |

### 8.2 技能不释放?

| 可能原因 | 解决方法 |
|----------|----------|
| 颜色没取好 | 重新取色,确保取到的是技能"可用"状态的颜色 |
| 取色坐标不对 | 用放大镜检查坐标是否在技能图标上 |
| 技能在 CD | 脚本正常工作,等 CD 转好 |
| 识别模式不对 | 在设置中切换 DXGI/GDIP/WGC 试试 |
| 窗口位置变了 | 拖动窗口后建议重绑窗口并重新截图 |

### 8.3 释放技能太慢或太快?

- 调节**全局延迟**倍率(1.0 = 正常,调大 = 变慢)
- 修改每个技能的**延迟**(ms 值,越大越慢)
- 开启**随机延迟**模拟人类操作

### 8.4 调试模式怎么看?

1. 在设置面板勾选 **【调试】**
2. 启动循环后,屏幕左上角显示:

```
调试模式
窗口: 0,0 - 1920,1080
主循环,技能A,检测成功    ← 绿色文字表示检测通过
主循环,技能B,检测成功
主循环,技能C,检测成功
起手循环,爆发技能,检测成功
```

### 8.5 日志怎么看?

1. 在设置面板勾选 **【日志】**
2. 启动循环后,`newconfig/log.txt` 会记录每次按键:

```
[14:30:25][EXEC] 主循环,技能A,按键2,次数:1
[14:30:25][EXEC] 主循环,技能B,按键3,次数:1
[14:30:26][EXEC] 主循环,技能C,按键4,次数:1
```

---

## 9. 附录:文件结构

```
C:\Users\xxx\gui图形脚本\
├── 1.77b1.61.ahk          ← 主脚本文件(打开即用)
├── IbInputSimulator.ahk    ← 硬件输入库
├── IbInputSimulator.dll    ← 硬件输入 DLL
├── wincapture.dll          ← 窗口截图 DLL
├── wincapture.ahk          ← 窗口截图库
├── FindText.ahk            ← 文字/图片查找库
├── dxgi.ahk                ← DXGI 截图库
├── gdip_all.ahk            ← GDI+ 图形库
├── newconfig\              ← 配置文件目录
│   ├── bd_config.ini       ← 全局配置(热键、模式等)
│   ├── log.txt             ← 运行日志
│   ├── ad\                 ← 直伤分类配置
│   │   ├── 夺魂者.ini
│   │   └── ...
│   ├── ap\                 ← 症状分类配置
│   │   ├── 灾厄师.ini
│   │   └── ...
│   ├── nai\                ← 辅助分类配置
│   │   ├── 奶燃.ini
│   │   └── ...
│   └── yw\                 ← 野外分类配置
│       ├── 魂兽.ini
│       └── ...
└── image\                  ← 图片识别模式的图片目录
    └── 职业名\
        └── 技能名.png
```

### bd_config.ini 完整结构

```ini
[当前职业]
职业名称=夺魂者
职业目录=D:\game\newconfig\ad\夺魂者.ini
当前分类=1

[热键设置]
startkey=Capslock      ← 启动/停止热键
savecolorkey=F9        ← 取色热键
savekey=F10            ← 呼出设置面板热键
onekey=!f              ← 一键宏热键 (!=Alt)
pushkey=0              ← 0=开关模式 1=按住模式
backsend=0             ← 0=前台模式 1=后台模式
sound=1                ← 音效开关
playsound=0
mousemode=
pushmode=单次
debug=0                ← 调试模式
log=0                  ← 日志模式
startend=0             ← 运行状态标记
waitcolor=0
inimode=1

[mousemode]
mousemode=Logitech      ← 鼠标驱动模式

[识别模式]
findmode=GDIP           ← 识别模式

[关于]
介绍=本工具免费使用,谨防上当受骗
```

---

## 附:术语对照表

| 中文 | 英文 | 说明 |
|------|------|------|
| 取色 | Color Pick | 获取屏幕某像素点的 RGB 颜色值 |
| 反色 | Inverse Color | 找到颜色=技能不可用的反向逻辑 |
| 纯黑跳转 | Black Jump | 检测到纯黑色提前结束等待 |
| 范围找色 | Region Search | 在指定区域内搜索目标颜色 |
| 多点取色 | Multi-point | 同时检测两个像素的颜色 |
| 起手循环 | Opener Loop | 脚本启动时执行一次的技能序列 |
| 主循环 | Main Loop | 持续执行的技能检测循环 |
| 独立循环 | Thread Loop | 独立进程并行的技能循环 |
| 指定循环 | Appoint Loop | 带条件开关的技能序列 |
| 多重条件 | Multi Condition | 次数+颜色的复合触发条件 |
| 全局延迟 | Skill Time | 所有按键延迟的全局倍率 |
| 前台模式 | Foreground | 游戏窗口必须在前台 |
| 后台模式 | Background | 游戏窗口可最小化 |
| CD | Cooldown | 技能冷却时间 |
| HWND | Window Handle | 窗口句柄,用于定位窗口 |
| GDI+ | GDI Plus | 图形设备接口,用于截图 |
| DXGI | DirectX GI | DirectX 图形接口,高速截图 |



发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。