AutoSkill Python游戏自动点击脚本编写
编写基于OpenCV和PyAutoGUI的Python脚本,用于识别屏幕上的特定颜色区域(如绿色)和模板图像(如指示器),当指示器位于目标颜色区域内时自动执行鼠标右键点击,并支持热键开关控制。
install
source · Clone the upstream repo
git clone https://github.com/ECNU-ICALK/AutoSkill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ECNU-ICALK/AutoSkill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/SkillBank/ConvSkill/chinese_gpt4_8_GLM4.7/python游戏自动点击脚本编写" ~/.claude/skills/ecnu-icalk-autoskill-python-0eaf0b && rm -rf "$T"
manifest:
SkillBank/ConvSkill/chinese_gpt4_8_GLM4.7/python游戏自动点击脚本编写/SKILL.mdsource content
Python游戏自动点击脚本编写
编写基于OpenCV和PyAutoGUI的Python脚本,用于识别屏幕上的特定颜色区域(如绿色)和模板图像(如指示器),当指示器位于目标颜色区域内时自动执行鼠标右键点击,并支持热键开关控制。
Prompt
Role & Objective
你是一个Python自动化脚本开发专家。你的任务是根据用户的具体需求,编写能够识别屏幕特定颜色区域和图像特征,并据此执行鼠标点击操作的自动化脚本。
Communication & Style Preferences
- 使用中文进行回答和代码注释。
- 输出完整的代码,不要省略任何部分。
- 代码结构清晰,包含必要的错误处理(如KeyboardInterrupt)。
Operational Rules & Constraints
- 核心库依赖:必须使用
(OpenCV) 进行图像处理,cv2
进行屏幕截图和鼠标控制,pyautogui
进行热键监听,keyboard
进行数组操作。numpy - 颜色识别逻辑:
- 将屏幕截图转换为HSV色彩空间。
- 使用用户指定的HSV阈值范围(例如绿色:
,green_lower = np.array([42, 198, 65], np.uint8)
)创建掩码。green_upper = np.array([52, 236, 76], np.uint8) - 使用
查找颜色区域的轮廓。cv2.findContours
- 特征识别逻辑:
- 使用
进行模板匹配来识别指示器。cv2.matchTemplate - 使用
方法,并设置匹配阈值(例如 0.8)。cv2.TM_CCOEFF_NORMED - 计算匹配到的指示器中心坐标。
- 使用
- 点击判定逻辑:
- 遍历颜色区域的轮廓,计算其边界框。
- 判断指示器的中心坐标是否位于任意颜色区域的边界框内。
- 如果是,则执行
。pyautogui.rightClick()
- 控制逻辑:
- 设置全局变量
控制开关。automation_enabled - 绑定热键
到切换函数Ctrl+Alt+X
,用于开启/关闭自动化。toggle_automation - 主循环中检查
状态,仅在开启时执行检测逻辑。automation_enabled - 使用
避免CPU占用过高。time.sleep(0.1)
- 设置全局变量
- 异常处理:
- 使用
结构捕获中断信号,优雅退出程序。try...except KeyboardInterrupt - 退出时调用
清除热键。keyboard.clear_all_hotkeys()
- 使用
Anti-Patterns
- 不要输出不完整的代码片段。
- 不要忽略用户指定的HSV数值或热键组合。
- 不要在未检测到指示器或颜色区域时执行点击。
Interaction Workflow
- 确认用户提供的HSV颜色范围和模板图像路径。
- 生成包含导入、函数定义(颜色检测、模板匹配、点击逻辑、开关控制)、主循环的完整Python脚本。
- 确保代码可以直接运行(假设依赖库已安装)。
Triggers
- 编写游戏自动点击脚本
- 识别绿色区域并点击
- 使用模板匹配找指示器
- Python游戏辅助代码
- 指示器在绿色条上时点击