# emberveil_eval_help **Repository Path**: xeval/emberveil_eval_help ## Basic Information - **Project Name**: emberveil_eval_help - **Description**: emberveil wow 服全职业一键宏 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-09-13 - **Last Updated**: 2026-09-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # EvalHelp —— 全职业施法工具 > 🌍 Languages: **中文** · [English](README_en.md) · [Русский](README_ru.md)(游戏内语言:配置窗右上角国旗切换) > EmberVeil(1.12.1 / Lua 5.1)**全职业施法辅助插件**:宏正文一行 `/run EVAL_GO()`,规则引擎驱动——**技能五分类**(角色行为/角色技能/宠物行为/目标选取/物品使用)× **49 种条件类型**(分组下拉;成员选取器行另有 4 种「候选者」条件)× 多方案绑定按键,全部可视化配置,不限职业。另附三个内嵌页:**工具箱**(商人 / 社交 / 任务自动化)、**数据检索**(任务 / 物品 / 怪物·NPC + 世界地图标注层,依赖 UnrealQuest)与**图标库**(客户端内置宏图标:分组 / 悬停显示路径 / 搜索翻页)。 | 模块 | 入口 | 一览 | | :-- | :-- | :-- | | 🗡️ **通用一键宏** | 宏 `/run EVAL_GO()` | 技能五分类:角色行为(攻击/姿态切换)/技能/宠物指令/目标选取/物品使用;方案技能数不限(列表可滚动);多方案 ≤12 各绑按键直触 | | ⚙️ **配置窗口** | 小地图 EH 图标 · `/eh cfg` | 方案/技能/条件全可视化编辑,文本导入导出分享 | | 📤 **方案分享** | 配置窗「一键宏设置」页 `[分享]` / 聊天链接 | 分片发到 公会/队伍/说(限频防刷屏),对方点 [导入] 才入档;**品阶封皮**(`[品阶秘籍·名]` 可点链接 + 弹窗确认)· **品阶评分**(25+ 神级 · 五色)· **头衔抽卡**(5档×15张 · 名号自定义)· 彩蛋「创世者亲临」· 收方按(头衔档×秘籍档)抽奖式回一句角色扮演反应 | | 🧩 **案例模版** | 配置窗「一键宏设置」页底部 `[案例模版]` | **11 组 29 条**现成方案(按职业分组)→ **分组分两列 + 组内同行自动换行**;点一下即导入,悬停看方案内容 | | 🧰 **工具箱** | 配置窗 Tab3 | 商人助手(自动修理 / 售卖灰色 / 按名购买·丢弃)+ 队伍社交(就位自动确认 / 屏蔽公会上下线 / **屏蔽「加入·离开频道」通知**)+ 任务自动交接(默认 Shift 按住临时暂停)+ 任务通知频道 | | 🗺️ **数据检索** | 配置窗 Tab4 | 任务 / 物品 / 怪物·NPC / 对象 四类检索,输入即搜、无限级联下钻;**世界地图标注层** 16 类别随切图实时重绘,条目带坐标可一键定位(依赖 UnrealQuest) | | 🖼️ **图标库** | 配置窗 Tab5 | 客户端内置宏图标按前缀分组,悬停显示路径、可搜索翻页;另有「本插件在用」一组(直接列出本插件用到的图标) | | 📊 **战斗信息UI** | `/eh ui` | 血/能量/目标条 + 方案切换行 + 技能图标行(亮金=条件满足,点开编辑) | | 🔍 **状态信息UI** | `/eh st` | 状态变量实时总览 + 最近释放条件逐项判定 √× | | 📝 **状态日志** | `/eh` | 聊天框 + 日志文件双写 | > 📌 持续优化中,欢迎测试反馈! 🐞 [问题反馈 / 建议](https://gitee.com/xeval/emberveil_eval_help.git)(Issues) 🤖 DeepSeek Harness AI 辅助开发(见文末「参与开发」) ## 🏁 里程碑(1.52.0 → 1.74.0) - **🎉 分享系统重做:封皮 · 品阶 · 头衔 · 彩蛋 · 反应**(1.73.35 → 1.74.0):85 个提交一次发布 —— 分享封皮行(`[品阶秘籍·名]` 可点链接、点击弹窗确认不自动导入)、品阶评分制(**25+ 才神级** · 五色含深红)、**头衔抽卡**(5 档×15 张 · 只升不降 · 名号自定义+名号色)、彩蛋「创世者亲临」(手动方案≥3+神级+头衔满档三条件闸门)+ **角色扮演反应**(按头衔档×秘籍档抽奖式、公会/说/队伍三频道、方案名可点链接开接收页)。 - **🧪 链接/色码的真机取证体系**(1.73.35 → 1.74.0):自定义链接过服务器、消息真实长度上限 250B、悬停机制、落盘账本探针 —— 真机反复定案出「色码发送规则」(一段色码打头 + **必带链接**、限频 **1 秒/条**、只认 `[EHPF#]` 标识)。 - **🖥 标题栏徽标 + 品阶染色**(1.73.55 → 1.74.0):战斗信息UI / 状态信息UI 标题栏同一套 —— 玩家名 → 头衔 → 品阶徽标 → 当前方案名;方案行按品阶染色(HUD + 配置窗 + 案例模版同一套品阶判定)。 - **💬 聊天名字:着色 + 右键菜单**(1.73.12 → 1.73.29):查清「名字在 `arg2`、名字槽**不吃富文本**」后走**方案A**(吞掉客户端那行、自己拼整行)真正染上职业色;右键名字给出**悄悄话 / 邀请 / 目标 / 公会邀请 / 复制名字**(复制名字 = **只把 `/s 名字` 填进输入框、绝不代发**);菜单半透明窄条 + 高度自适应。 - **🧰 工具箱弹窗规程**(1.73.30 → 1.73.34):弹窗**层级阶梯**(配置 10 · 编辑 100 · 输入 220 · 工具箱 200 · 下拉 250)、拖动柄必须是 Button、列几何单一来源,并把**滚动条**按规范做齐(滚轮方向单一来源 `EVAL_WHEEL_DIR` · 专用滚动槽不压数据列 · 整数页码 · 边界隐藏箭头)。 - **🔋 条件名与语法闸门**(1.73.27 → 1.73.28):资源名按 `UnitPowerType` **显示时现算**(法系=法力 / 猎人=集中值 / 德鲁伊随形态),解析侧同步认全套写法(**导出再导入不丢条件**);`luacheck` 从只查一个文件改成**逐个文件**(27 个 `.lua`),语法错误再也漏不过去。 - **🔍 分享方案光环修复 + 引导每次都在**(1.72.2):别人角色没学过该 debuff 的纹理时,**按名字扫描兜底并自愈**(命中即学下名字→纹理,之后走快路径);新手引导改成**每次加载都打**;顺带修 `EVAL_DS_HUD` 帧名顶掉同名全局函数导致的 `/eh ds hud` 静默失效 - **⌨️ 方案快捷键真正生效**(1.71.16 → 1.72.0):四次试错逐一淘汰后定案「`ACTIONBUTTON` + 接管全局 `ActionButtonDown/Up`」——零成本:不占宏位、不抢键位、游戏运行中立即生效。 - **🗂 右键功能合并成一个「方案管理」窗**(1.71.24):名称 + 快捷键两段、[保存] 一次提交;★不为旧入口留别名(留别名会让「调用点改回旧名字」的回归悄悄通过)。 - **🐾 抓宠帮手**(1.73.0):配置窗第 6 个 Tab——检索宠物技能(图标 + 各等级)→ 详情页技能简介/需求等级/驯服来源清单 → 放大镜一键跳「数据检索」继续查刷新点。 ## 更新日志 | 版本 | 主题 | 一句话亮点 | | :-- | :-- | :-- | | **1.74.0** | 🎉 分享系统重做:封皮 · 品阶 · 头衔 · 彩蛋 · 反应 | 分享封皮行(品阶秘籍可点链接、点击弹窗确认)· 品阶评分制(25+=神级深红)· 头衔抽卡(5档×15张·名号自定义)· 彩蛋「创世者亲临」(三条件闸门)· 角色扮演反应(头衔档×秘籍档抽奖式三频道·方案名可点链接)· 标题栏徽标(档位/头衔/方案名) | | **1.73.34** | 🧰 工具箱弹窗规程 + 💬 聊天名字右键菜单 | 弹窗层级阶梯 / 拖动柄 / 滚动条按规范做齐(含滚动条 6 项审计修复);右键聊天名字:悄悄话·邀请·目标·公会邀请·复制名字(**只填输入框、绝不代发**);资源名实时化(法系=法力);`luacheck` 改成**逐个文件**检查 | | **1.73.0** | 🐾 抓宠帮手 | 第 6 个 Tab:检索宠物技能(图标+各等级)→ 详情页列驯服来源 → 放大镜跳数据检索 | | **1.72.2** | 🔍 分享方案光环修复 + 引导每次都在 | 别人角色没学过的 debuff 改成按名字扫描兜底并自愈;引导改成每次加载都打;修帧名顶掉全局函数的静默失效 | | **1.72.1** | 🧭 新手上路友好化 | 加载成功提示 + 首次进入自动播报四步新手指引(开战斗UI / 配宏 / 绑键 / 看技能日志),配置窗全局页与 /eh guide 随时重看 | | **1.72.0** | 🎉 **方案快捷键攻坚 + 一批界面精修**(跨越 1.71.3–1.71.24) | 22 个版本的积累一次发布:**方案快捷键从"永远不触发"到真正生效**(四次试错定案:CLICK 劫持鼠标 → 裸命令名不派发 → Bindings.xml 本客户端不读 → **接管 ActionButtonDown/Up**,零成本/不占宏位/不抢键位/运行中立即生效);**右键功能合并**成一个「方案管理」窗(改名 + 快捷键,[保存] 一次提交两段);案例模版窗三次改版(分组两列 + 自动换行);图标库 Tab + 右键设为小地图图标;战斗信息UI 标题改玩家名 + 方案行按实测宽换行;停止攻击 / 跟随 / 成员过滤(职业·小队)/ 方案分享接收重做 | | **1.71.24** | 🗂 右键功能合并成一个「方案管理」弹窗 | 用户:「将这两个功能合并成一个弹窗管理.都是右键触发.」—— 把此前**两个独立的右键弹窗**(配置窗方案按钮右键=重命名 / 战斗信息UI 方案按钮右键=快捷键绑定)合并成**一个方案管理窗**:窗内两段 ① 方案名称 ② 快捷键,**[保存] 一次提交两段**(改名 + 绑键,互不牵连);**两处右键都开同一个窗**(左键语义不变,仍是激活方案);★关键决定 = **不为旧入口留别名**(留别名会让「调用点改回旧名字」的回归悄悄通过——实测变异 M1/M2 正是这样 SURVIVED 的);组 102 + 变异 **8/8** 全捕获 | | **1.71.23** | 🧹 清理四次试错留下的死探针代码 | 快捷派发定案后回头清理:删掉已判死的 go bind2/go bind3/go actbar 三个写入型探针(它们验的是 CLICK / 裸命令名 / Bindings.xml 三条已被证伪的路线,**留着只会误导后人**),go bind 从「写入试验」改为「现状检查」(只读:派发前提 / 接管状态 / 逐方案绑定与占用格);文件净减 **205 行**;/eh go diag 保留为唯一诊断入口 | | **1.71.22** | 🎯 方案快捷键真正生效:接管 ActionButtonUp 派发 | 四次试错后的最终定案 —— ①CLICK 劫持鼠标、②裸命令名不派发、③**Bindings.xml 本客户端根本不读**(把 ArchiTotem 启用后完整重启,它的 CAST_EARTH_TOTEM 依然不在命令表里;unrealUI 源码注释在 2026-08-19 也记录过同一结论「60 commands were absent from a 225-entry binding table」)→ ④**可行路线 = 命令名用客户端自带的 ACTIONBUTTON + 插件接管全局 ActionButtonDown/Up**(/eh go diag 实测四者 ype=function、SetOverrideBindingClick=nil)。★零成本:不占宏名额、不占动作格、不抢已有键位、**游戏运行中立即生效**;补回 unrealUI 警告的组合键守卫(按住 Alt/Ctrl/Shift 且该组合另有归属时不吞);格号分配两轮挑(优先「格空 + 命令没人绑键」的完全无主格);清理解绑时**把格交还客户端**。变异 6/6 全捕获 | | **1.71.21** | 📦 Bindings.xml 随插件自带(用户零配置)+ 登录生效自检 | 文件随插件发(12 个命令,零配置)、绑定全在弹窗完成(零手动)、用户只需**重启客户端一次**;文档佐证:派发靠客户端侧处理器、插件无法注册(`SetConsoleKey` 是空桩)→ 注册只走启动命令表;`EVAL_BIND_XML_STATUS()` 登录自检:没有就如实提醒重启;★断言精确前缀计数,变异 2/2 全捕获 | > 📜 各版本详细说明见 **[CHANGELOG.md](CHANGELOG.md)**;更早历史见 git 提交记录。 ## 🧩 案例模版(11 组 29 条现成方案) > 不必从零配。配置窗 →「一键宏设置」页 → 底部 **`[案例模版]`** → 按职业分组挑一个,**点一下直接导入**。 | 项 | 说明 | | :-- | :-- | | **入口** | 配置窗「一键宏设置」页底部 `[案例模版]` 按钮 | | **内容** | **11 组 29 条**:战士 / 法师 / 通用法系 / 盗贼 / 猎人 / 骑士 / 牧师 / 德鲁伊 / 术士 / 萨满 / 队伍·团队 | | **版式** | 分组分两列 + 组内同行自动换行;**悬停**该条可看它的技能与条件 | | **导入** | 点一下即导入为方案,之后照常编辑、改名、绑定按键 | **队伍·团队组**(6 条)是一键奶 / 一键驱散类,一律写成「**指定技能 + 队伍(团员)条件**」—— 条件自己扫描全队、按血量挑人、切目标,放完还原原目标,**不需要你手点队友**。 > 💬 有好用的方案欢迎在插件评论里分享;也可以用配置窗的 `[分享]` 直接发到 公会 / 队伍 / 说 频道。 ## 界面预览 **配置窗口 · 全局页**(`/eh cfg` 或小地图旁 EH 图标):日志/界面开关 + 内置帮助说明 ![配置窗口·全局页](preview/main.png) **配置窗口 · 一键宏设置页**:左侧方案栏(多方案 ≤12,点选切换/右键改名/删)+ 技能列表(顺序=优先级,勾选=启用,条件一屏尽览,超高滚动)+ [添加技能] / [导入导出];底部 = 三个功能开关 + [案例模版] / [分享] / [关闭] ![配置窗口·一键宏设置页](preview/cfg.png) **案例模版窗**(配置窗「一键宏设置」页底部 `[案例模版]`):11 组 29 条现成方案按职业分组,**分组分两列 + 组内同行自动换行**,点一下即导入、悬停看方案内容 ![案例模版窗](preview/skill_tpl.png) **技能编辑窗**(点 [编] 或技能图标打开):条件逐行独立配置——条件类型/参数全部下拉选择(49 种条件类型 + 成员选取器行专用的 4 种「候选者」条件,按 自身 / 目标 / 光环 / 队友·团员 / 技能 分组),关系列切 &(组内全过)/ |(组间任一),实时预览 ![技能编辑窗](preview/skill_doif.png) **技能二级下拉 · 四大类**(技能编辑窗的技能行 = `[分类▾][具体项▾]` 并排双下拉,选项配图标): - **角色技能**:白名单 + 动作条扫描全技能 - **宠物行为**:8 种宠物指令(不占动作条直调 Pet API),指令图标经宠物动作条自学习 - **目标选取**:9 种切换方式(最近敌人 / 上一目标 / 目标的目标 / 指定名称 / 清除目标…),按宏先切目标再出手 - **物品使用**:背包实时扫描(带图标+数量)+ 自定义名称——消耗品直接使用、装备自动穿上 **光环条件四型**:自身buff/目标debuff/目标buff/自身debuff 检查(是/否切换,实时项 ◆○●▲ 全配齐)——条件「无buff:再生」驱动一键喝药、「无目标buff:奥术智慧」驱动挨个补 buff **战斗信息UI + 状态信息UI**(`/eh ui` / `/eh st`):血/能量/目标条 + 方案切换行 + 技能图标行(悬停 tooltip 看触发条件,亮金=条件当前满足,点击图标直开编辑窗);状态信息窗实时显示全部状态变量 + 最近释放日志(每次出手的技能/目标/条件逐项判定 √×) ![战斗信息UI与状态信息UI](preview/info.png) **工具箱(Tab3)**:商人助手(自动修理装备 / 自动售卖灰色物品 / 自动购买·丢弃指定物品)+ 队伍社交(团队就位自动确认 / 屏蔽公会成员上下线提示 / **屏蔽「加入·离开频道」通知**)+ 任务自动交接(可选按住 Shift 临时暂停)+ 任务通知频道(关 / 自己 / 说 / 队伍) ![工具箱](preview/tools.png) > ⚠️ **依赖**:本页数据全部来自 **UnrealQuest** 插件(任务/物品/生物/对象数据库)。未安装或未启用时,本页只会显示一段安装引导,其余控件隐藏。 **数据检索(Tab4)**:任务 / 物品 / 生物·NPC / 对象 四类检索,输入即搜(前 10 项匹配);条目可无限级联下钻,物品行悬停显示游戏内物品 tooltip **数据检索 · 详情与下钻**:任务 / 物品 / 怪物的详情——目标与描述、起始 / 结束 NPC、需求物品;每条关联都可点进去继续下钻,带坐标的行右缘有地图图标 ![数据检索·任务详情](preview/dataset_search.png) **数据检索 · 地图标注**:控制行「地图标注(N)」= 总开关 + 类别多选(16 类:采集物 5 + 服务设施 11,含「全部开启 / 全部关闭」快捷),勾选后随地图切换实时绘制 ![数据检索·地图标注类别](preview/dataset.png) **数据检索 · 地图定位**:点条目行尾的地图图标 → 打开世界地图并切到该区域;钉子悬停显示该点内容(例:矿脉的容器掉落明细) ![数据检索·地图定位](preview/dataset_map.png) ## 快速上手 1. 把要用的**技能拖上动作条**:插件按动作条识别技能(任意职业、任意技能都能入方案) 2. 游戏内输入 `/eh go rescan` 让插件识别槽位(`/eh go` 查看识别结果) 3. `/eh cfg` →「一键宏设置」页 → `[添加技能]` 配好条件;或直接 `[案例模版]` 按职业挑一个一键导入 4. **绑定按键(推荐,全程点点点)**:右键任意方案(战斗信息UI 方案行 或 配置窗方案栏)→「方案管理」→ 快捷键下拉选一个键 → `[保存]`,按下即执行;**备选**:习惯宏的话,新建宏正文 `/run EVAL_GO()` 拖到按键上(两条路等价) 5. **第一次用?** 输入 `/eh guide` 看四步新手指引(开战斗UI → 配第一个宏 → 绑按键 → 看技能日志),首次进入游戏会自动播报一遍 6. 技能没放出来?开「方案技能日志」(配置窗 全局页)后 ` /eh logdump` 查看每次按键的判定明细 ## 安装 **方式一:下载发布包(推荐)** —— [Releases 页面](https://gitee.com/xeval/emberveil_eval_help/releases) 下载最新 `EvalHelp-vX.Y.Z.zip`,解压到 `Interface/AddOns/`(解压后应为 `AddOns/EvalHelp/EvalHelp.toc`): ``` https://gitee.com/xeval/emberveil_eval_help/releases ``` **方式二:克隆源码** —— `git clone git@gitee.com:xeval/emberveil_eval_help.git`,把整个目录放到 `Interface/AddOns/` 并确保目录名为 `EvalHelp`。 目录结构: ``` Interface/AddOns/ └── EvalHelp/ ├── EvalHelp.toc ← 目录规则:Folder/Folder.toc ├── EvalHelp.lua └── README.md ``` ## 异常自救(遇到问题先看这里) 1. **先 `/reload`**:技能不识别、界面异常、刚更新过插件文件——绝大多数情况重载即恢复(配置已存盘不会丢); 2. 技能换了位置/新拖上动作条 → `/eh go rescan` 重扫; 3. 开了调试看决策过程 → `/eh debug`(每个技能为什么放/为什么不放,逐条件 √×); 4. 仍未解决 → 到 提 Issue(附 `/eh st` 状态截图 + 日志文件更有助于定位)。 5. **分享来的方案有些技能不放**:多半是那个光环在你这台机器上还没学过纹理 —— 现在会自动按名字扫描并学下来;`/eh go tex` 看学习表、`/eh go texdel 名字` 删一条重试、`/eh go texclear` 全清; ## 参与开发(欢迎加入!) - 仓库:(`git clone` 后把 `EvalHelp/` 软链或复制到 `Interface/AddOns/` 即可开发调试); - **开发指南**:见 `DEVELOPMENT.md`(架构地图 / 本客户端实测 UI 配方 / 规则引擎与方案数据结构 / 提交前必跑的语法检查); - **AI 协作记忆**:`CLAUDE.md` 是本项目的 AI 开发记忆体(DeepSeek Harness / Claude Code 等 AI 助手读它即可快速进入上下文); - 开发流程约定:每次改动递增版本号(lua 头注释 + `local VERSION` + toc 三处同步),改完跑 `node luacheck.js` 全量语法解析; - 扩展新职业:技能白名单 `WAR_SKILLS` 目前内置战士 10 技能,其他职业按同构方式加技能表即可(规则引擎/方案/UI 全部职业无关); - 本插件由 **DeepSeek Harness AI** 辅助开发——也欢迎你带着 AI 一起来。 ## 支持我们 EvalHelp 从始至终都是免费、开源的,今后也会一直是。 如果它恰好帮到了你,而你又愿意鼓励一下作者——可以赞助一点点算力 ☕。这些心意都会用在刀刃上:更细致的功能打磨、更及时的 bug 修复、更多职业的现成模版。 当然,哪怕只是点个 Star、提一条建议、把它推荐给公会里的朋友,对我们来说同样是莫大的支持。谢谢你看到这里。 | 支付宝 | 微信 | | :---: | :---: | | ![支付宝收款码](pay/bao.jpg) | ![微信收款码](pay/wei.jpg) | ## 致谢 - UI 实测配方参考:UnrealQuest(ClientAPI.lua);状态变量设计参考:Cat(TurtleWoW);最初参考:OneJudge。 - 感谢每一位测试与反馈的玩家。