[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-78964":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":15,"stars7d":16,"stars30d":17,"stars90d":15,"forks30d":15,"starsTrendScore":18,"compositeScore":19,"rankGlobal":9,"rankLanguage":9,"license":9,"archived":20,"fork":20,"defaultBranch":21,"hasWiki":22,"hasPages":20,"topics":23,"createdAt":9,"pushedAt":9,"updatedAt":24,"readmeContent":25,"aiSummary":26,"trendingCount":15,"starSnapshotCount":15,"syncStatus":27,"lastSyncTime":28,"discoverSource":29},78964,"FH6Auto","YOUSTHEONE\u002FFH6Auto","YOUSTHEONE","Forza Horizon 6 Automation Tool \u002F Super Wheelspin",null,"Python",237,40,1,47,0,34,211,8,68.84,false,"main",true,[],"2026-06-12 04:01:24","# FH6Auto\n\n一个基于 **Python + 图像识别 + 输入自动化** 的 FH6 辅助脚本工具。  \n支持 **循环跑图 \u002F 批量买车 \u002F 超级抽奖 \u002F 多模块串联 \u002F 无限循环挂机**。\n\n> 仅供 Python 自动化技术交流与学习使用，请勿用于商业用途或破坏游戏平衡。  \n> 因使用本工具造成的任何后果（包括但不限于封号、异常、损失等），由使用者自行承担。\n\n---\n\n## 项目简介\n\nFH6Auto 是一个围绕游戏界面自动识别与流程控制设计的桌面自动化工具。  \n项目以 **图像识别** 作为流程引导核心，尽量避免纯按键脚本“盲操作”带来的失控风险。\n\n工具通过以下方式实现自动执行：\n\n- 截图识别当前游戏状态\n- 动态判断是否进入目标页面\n- 触发键盘 \u002F 鼠标操作\n- 在出错时自动尝试恢复运行环境\n\n相比传统纯按键脚本，本项目在稳定性、适应性和可控性方面更好。\n\n---\n\n## 功能模块\n\n### 1. 循环跑图\n- 自动进入菜单\n- 自动切换创意中心 \u002F EventLab\n- 自动输入蓝图分享代码\n- 自动匹配目标车辆\n- 自动循环开始赛事\n- 支持按设定次数重复执行\n\n### 2. 批量买车\n- 自动进入车辆收藏\n- 自动定位目标品牌\n- 自动选择指定车辆\n- 自动重复购买\n- 支持按设定次数批量执行\n\n### 3. 超级抽奖\n- 自动进入买车流程\n- 自动定位目标车辆\n- 自动进入升级 \u002F 熟练度界面\n- 自动按技能矩阵点技能\n- 支持技能点耗尽后自动结束模块\n\n\n### 4. 大循环挂机\n支持三个模块串联形成完整流水线：\n\n**跑图 → 买车 → 抽奖 → 重置计数 → 下一轮**\n\n可配置：\n- 是否继续到下一模块\n- 是否在三模块完成后重新循环\n- 总循环次数\n- 近似无限挂机执行\n\n---\n\n## 使用方法\n\n### 1. 启动前准备\n\n#### 车辆准备\n请先购买一辆用于跑图的 **斯巴鲁 Impreza 22B-STi Version**，并完成以下准备：\n\n- 调校至 **S2 900**\n- 将该车辆加入收藏\n- 不要有任何涂装\n\n#### 使用前建议确认\n- 游戏已经正常启动\n- 游戏设置为 **简体中文**\n- 键盘输入法切换为 **英文键盘**\n- 游戏内建议设置为 **自动转向** , **自动挡** ,难度 **所向披靡**\n- 游戏界面尽量保持稳定\n- 不要随意切换到其他窗口，以免影响识图结果\n\n---\n\n### 2. 配置参数\n\n在程序主界面中可设置：\n\n- 跑图次数\n- 买车次数\n- 抽奖次数\n- 蓝图分享代码\n- 总循环次数\n- 是否串联下一模块\n- 是否启用三模块大循环\n- 是否开启自动重启机制\n- 自动重启命令\n\n---\n\n### 3. 设置技能路径\n\n在“超级抽奖”模块区域中：\n\n- 点击方向按钮添加技能路径\n- 点击“清除矩阵”重置路径\n- 蓝色格子表示当前技能行走路径\n\n---\n\n### 4. 启动单个模块\n\n可独立启动任意模块：\n\n- 循环跑图\n- 批量买车\n- 超级抽奖\n\n程序会从对应模块开始执行。\n\n---\n\n### 5. 启动串联流程\n\n如果勾选箭头处的“继续”选项，则模块会自动串联，例如：\n\n- 跑图完成后继续买车\n- 买车完成后继续抽奖\n\n如果再勾选 `LOOP -> 循环清零`，则三模块完成后会自动进入下一轮。\n\n---\n\n### 6. 停止脚本\n\n可通过以下方式停止：\n\n- 点击界面中的停止按钮\n- 按下键盘 **F8**\n\n停止后程序会尽量：\n- 停止当前线程\n- 释放所有已按下的按键\n- 恢复主界面状态\n\n---\n\n## 图片模板说明\n\n项目支持替换主要识图模板，常见自定义图片如下：\n\n- `CCbrand.png`：消耗品车辆品牌\n- `consumablecar.png`：用于点技能拿超级抽奖的消耗品车\n- `newCC.png`：标记新车的消耗品车\n- `skillcar.png`：用于跑图刷技能点的车辆  \n  > 该车辆必须已加入收藏，并在图中显示收藏图标\n\n### 图片资源特点\n项目中的 `images` 模板图支持：\n\n- 优先读取程序目录外部 `images`\n- 外部没有时再读取内置资源\n- 启动时可自动释放模板图到外部目录\n\n这样做的好处是：\n\n- 用户可以自行替换模板\n- 可微调识图适配不同画质 \u002F 分辨率 \u002F UI 状态\n- 更方便维护与迭代\n\n---\n\n## 防错与恢复说明\n\n如果执行过程中发生以下情况：\n\n- 图像识别失败\n- 当前界面异常\n- 流程中断\n- 游戏闪退\n\n程序会优先尝试：\n\n1. 检查游戏进程\n2. 聚焦游戏窗口\n3. 退回漫游 \u002F 菜单\n4. 自动恢复到可继续执行的状态\n\n如果启用了自动重启：\n\n- 会尝试使用预设命令重新启动游戏\n- 并在识别到继续界面后恢复流程\n\n> 自动恢复不能保证 100% 成功，但相比无保护脚本，稳定性会更高。\n\n---\n\n## 项目亮点\n\n### 基于 Python 图像识别\n本项目并不是简单的固定坐标点击器，而是结合以下技术进行界面识别：\n\n- `pyautogui` 截图\n- `opencv-python (cv2)` 模板匹配\n- `numpy` 图像处理\n\n对当前游戏界面进行识别后，再决定下一步动作，因此相比纯脚本具有更高的适应性与可控性。\n\n### 尽量减少“盲操”风险\n传统脚本常见问题包括：\n\n- 不判断页面状态\n- 一直机械按键\n- 一旦卡界面就彻底跑偏\n\n本项目尽量通过识图确认：\n\n- 当前是否在漫游界面\n- 是否进入主菜单\n- 是否找到指定按钮\n- 是否已进入升级页\n- 是否出现继续游戏 \u002F 欢迎界面 \u002F 重启页面\n\n只有识别到正确状态，才执行后续动作。\n\n### 多层防错误机制\n项目内包含多层保护逻辑，例如：\n\n#### 1. 状态验证\n关键步骤前会确认：\n- 是否成功进入菜单\n- 是否识别到目标页面\n- 是否找到指定图片模板\n- 是否仍在运行状态\n\n#### 2. 中断恢复\n当模块执行失败时，会尝试：\n- 检测游戏进程是否仍存在\n- 自动聚焦游戏窗口\n- 自动尝试退回菜单 \u002F 漫游\n- 从中断模块继续执行剩余流程\n\n#### 3. 自动重启机制（测试功能）\n当检测到游戏进程不存在时，可选择：\n- 执行自定义启动命令\n- 等待游戏重新启动\n- 自动识别欢迎页 \u002F 继续游戏界面\n- 尝试重新回到游戏并恢复执行\n\n#### 4. 按键强制释放\n脚本停止时会主动释放：\n- 方向键\n- Enter \u002F Esc \u002F Backspace \u002F Space\n- 持续按住的 W 键等\n\n避免因为异常退出导致“卡键”。\n\n### 支持无限循环挂机\n你可以把它理解成一个可编排的小型挂机流水线：\n\n- 先跑图刷收益\n- 再自动买车\n- 然后自动点熟练度拿抽奖\n- 完成后进入下一轮\n\n配合总循环数设置，可以长时间无人值守运行。  \n如果将循环次数设置得足够高，也可视作“无限循环挂机”。\n\n### 技能矩阵可自定义\n超级抽奖模块支持手动设置技能点路径。  \n用户可以通过 UI 中的方向按钮，自定义：\n\n- 上\n- 下\n- 左\n- 右\n\n形成一条技能路径矩阵，用于适配不同车辆的熟练度树。\n\n---\n\n## 技术实现\n\n本项目主要基于以下 Python 技术栈：\n\n- **customtkinter**：现代化桌面 UI\n- **opencv-python**：模板匹配 \u002F 图像识别\n- **numpy**：图像数组处理\n- **pyautogui**：截图与基础自动化\n- **pydirectinput**：更适合游戏场景的输入模拟\n- **ctypes \u002F win32gui**：窗口聚焦、DPI 适配、底层输入\n- **threading**：后台任务执行\n- **PIL**：资源图像加载\n- **requests**：版本更新检查\n\n---\n\n## 适用特点\n\n- 面向 Windows 环境\n- 支持不同分辨率下的模板缩放匹配\n- 使用 DPI 感知处理，减少高缩放显示下的坐标偏差\n- 支持主界面最小化执行逻辑\n- 支持热键 **F8** 紧急停止","FH6Auto 是一个基于 Python 的 Forza Horizon 6 辅助脚本工具，通过图像识别和输入自动化实现游戏内循环跑图、批量买车、超级抽奖等功能。项目利用图像识别技术动态判断游戏状态并触发相应操作，相比传统纯按键脚本在稳定性、适应性和可控性方面表现更佳。适合需要长时间挂机或自动执行重复任务的玩家使用，但需注意仅供技术交流与学习，不得用于商业用途或破坏游戏平衡。",2,"2026-06-11 03:57:20","CREATED_QUERY"]