常见问题
变量就是一个"有名字的盒子",用来存储运行时的数据(如图像查找的结果坐标、OCR 识别的文字、计数器等)。
使用步骤:
count),就得到一个局部变量,不需要预先定义Ctrl+3)定义,再回到"设置变量"节点点变量名框右侧的 ◎ 选中它,就得到一个全局变量局部变量 vs 全局变量:
没有"作用域 local/global"开关,作用域由是否用 ◎ 选 Tab 变量决定。变量名不选、也不与 Tab 变量同名时,一律按局部变量处理(这样旧脚本打开运行的行为不变)。
典型用法:
result),包含坐标和置信度注意:变量不做持久化——每次运行都会重新取"变量"标签页里设的默认值,所以不能靠变量实现"累计次数""今日已领奖"这类跨运行的统计,需要的话请用自定义代码节点读写文件。
条件判断让脚本"根据情况走不同的路"。每个节点都可以设置执行条件(在节点配置底部):
count >= 5(循环超过5次才执行)"成功/失败"怎么定义?
false = 失败,返回 true/其他值,或没返回(内部无失败)= 成功循环节点是一个容器,你把其他节点拖进去,它们就会被重复执行。三种模式:
使用方法:
提示:无限循环中建议加一个短"等待"节点(如 100ms),避免 CPU 占用过高。
函数是把一组节点"打包"成一个可复用的模块。定义一次,可以在主流程中多次调用。
什么时候用?
使用方法:
Ctrl+5)中创建函数,编辑其内部节点call_result 接收返回值,可在配置里改名,清空则表示不接收函数之间也可以互相调用。函数内可以直接读写本次运行的局部变量(同一次运行内跨函数可见);需要跨动作共享时才用全局变量。
return false 是什么意思?通用函数需要把结果交回给调用方时,在函数内加一个返回节点(流程控制分组),在"返回值"里填变量名、表达式或字面量;留空则返回 nil。
返回值约定:
return false — 业务失败:脚本没报错,但事情没办成(目标没出现、奖励没领到)。任务判为失败,不计完成次数,并按任务设置自动重试return true 或其他值 — 成功这条约定只对任务直接调用的那个函数(入口函数)生效,用来把"技术成功但业务失败"反馈给任务系统。
两个注意点:
表达式是一段 Lua 代码片段,运行后产生一个值。让你可以做计算、拼接、判断等灵活操作。
可以用表达式的地方:
count >= 10 and hp < 30count + 1、name .. "_done""第" .. count .. "次循环"wait(math.random(500, 1500))注意:等待节点的时间是固定毫秒数,不支持表达式。
常用语法:
a + b、a * 2、a % 3"hello" .. namex > 100、name == "test"a and b、a or b、not a不需要勾选"表达式"时,输入框的内容会被当作纯文本/数字处理。