# lol_autorun **Repository Path**: coder_jk/lol_autorun ## Basic Information - **Project Name**: lol_autorun - **Description**: League of Legends 走A(走砍/orb-walking)辅助工具 - **Primary Language**: Unknown - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-10-13 - **Last Updated**: 2026-10-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # LOL_auto_runA 走A助手 > 基于 [SJYssr/LOL_auto_runA](https://github.com/SJYssr/LOL_auto_runA)(GPL-3.0)优化修改,作者:Jk 本程序是 LOL 走A刷兵辅助程序,非恶意躲技能外挂,献给因工作后渐渐提不动刀的老玩家,为 LOL 续一秒。 使用模拟按键的方式,它更像是一个键盘宏,所以不用担心封号。 本程序前提是基于 LOL 改键。大家也应该看过网上通过改按键走A的教程,但改键后有个缺点就是手动按键走A容易把握不好节奏:按慢了没效果,按快了又容易漏A。 本脚本解决的就是这个按键频率的问题:通过 **Live Client API 实时获取攻速**,按每个英雄的**真实攻击前摇**精准计算按键节奏并自动触发,达到非常流畅丝滑的走A效果。攻速、英雄、暴击全部实时读取,不用担心游戏版本适配问题。 那么,带上致命节奏和从刃?开始游戏? ## 功能特性 - **每英雄精确前摇**:内置全英雄攻击数据([CommunityDragon](https://raw.communitydragon.org) 250 个英雄),按 LoL Wiki 官方公式实时计算,含 11 个特殊前摇修正英雄,自动区分新/旧两代数据格式,未收录英雄自动回退默认 30% 并在界面标注 - **修复走A比站桩丢秒伤**:每攻速周期只发一次攻击键,前摇完全结束后才发移动键(利用游戏引擎 33ms 宽限 + 可调安全余量),不打断、不重置前摇 - **高精度相位驱动**:1ms 定时器 + QPC 高精度计时,消除 0.1s 粒度和 15.6ms 定时器带来的节奏漂移 - **暴击走A**:暴击率 100% 时自动切换该英雄的暴击前摇数据(如 Senna 等普攻/暴击前摇不同的英雄) - **目标模式**:仅英雄(默认)/ 全目标,按钮或 `F7` 切换 - **HUD 悬浮窗**:实时显示 英雄 / 攻速 / 前摇 / 模式 / 等级 / 金币 / 暴击状态 - **毫秒级微调**:前摇补偿(界面可调,适应个人手感);触发键可自定义,`config.json` 持久化 - **全链路日志**:`runA.log` 记录钩子安装 / 触发键 / 引擎周期 / 线程异常,出问题一目了然 - 纯 ctypes 实现(`SendInput` + 低级键盘钩子),不依赖已停更的 pyWinhook/pythoncom ## 更新历史 ### v1.1.1(2026-10) - **修复 64 位 Python 下按触发键无反应**:`GetModuleHandleW` 返回的模块句柄被 ctypes 默认按 32 位截断,导致键盘钩子安装静默失败;现 LL 钩子 `hMod` 传 `None` 并显式声明 64 位 API 签名(`LRESULT`/`LPARAM`/`HHOOK`) - 钩子回调增加异常保护;引擎 / 轮询线程异常留痕,不再静默死亡 - `--selftest` 增加钩子安装冒烟测试;新增端到端诊断脚本 `tools/test_e2e.py` ### v1.1.0(2026-10) - **暴击走A优化**:读取 `championStats.critChance`,暴击率 100% 时自动切换暴击前摇 - **HUD**:悬浮窗实时显示英雄 / 攻速 / 前摇 / 模式 / 等级 / 金币 / 暴击状态 - 精简:移除 v1.0.1 阶段的连招宏与一键加点(聚焦走A核心) ### v1.0.1(2026-10,基于原版优化) **修复走A比站桩丢秒伤**。原版节奏按固定 35% 前摇计算,但每个英雄的真实前摇差异极大(0.5%~40%),导致: 1. **前摇被打断**:前摇比 35% 长的英雄(重装战士等),移动指令过早发出会直接取消普攻,一次攻击周期白过 2. **前摇被重置**:原版在前摇窗口内反复连发攻击键,索敌变化时会重置前摇,攻击永远打不完 3. **节奏漂移**:0.1s 的按键粒度 + Windows 15.6ms 定时器精度,让实际攻击频率低于站桩 改进:每英雄精确前摇、每周期一发攻击、相位驱动高精度计时、目标模式切换、前摇毫秒级补偿、`config.json` 持久化、ctypes 键盘钩子替代停更依赖。(此版本曾包含连招宏,v1.1.0 已移除) ## 使用方法 **一键启动(推荐)**:双击 `start_runA.bat` - 自动请求管理员权限(走A必须) - 自动检查 Python 环境 / 依赖(缺失自动 pip 安装,国内镜像优先)/ 文件路径(数据缺失自动重新抓取) - 单实例守卫(防止重复启动导致按键翻倍) - 崩溃自动保活重启(5 秒后拉起;正常退出不重启;彻底停止 = 关闭窗口) - `start_runA.bat --test`:只做环境检查不运行 手动运行:`pip install -r requirements.txt`,然后 `python lol_auto_runA.py` (原版 v1.0 仍可运行 `python tong_yong.py`) **更新英雄数据**(新英雄发布后): ``` pip install requests python tools/fetch_champion_attack_data.py ``` (脚本内置 DoH 解析,国内网络可直连) ## 请到游戏中修改设置 - 快捷攻击型移动,选择设置2修改为 Z 键 - 控制玩家移动点击,选择设置2修改为 X 键 - ![img](https://github.com/SJYssr/img/raw/main/1/anjian_set1%20.jpg) - 只以英雄为目标设置修改为 C 键 - ![img](https://github.com/SJYssr/img/raw/main/1/anjian_set2.jpg) - 最好把窗口设置为无边框模式或者窗口模式 - 建议使用前先开一把训练模式试一下 ## 按键说明 - CapsLock(触发键,可改绑):按住开始走A - F7:切换 仅英雄 / 全目标 模式(仅英雄 = 攻击时按住C,走A拉扯英雄) - Esc:隐藏软件界面到托盘区 - Insert:呼出软件并重新绑定触发走A按键,例如先按下 Insert,然后按空格,此时走A触发键就由 CapsLock 变成了空格键 - Page Up:呼出软件并开始走A触发 - Page Down:呼出软件并暂停走A触发 ## 退出说明 - 请到隐藏的图标上右键选择退出 ## 问题排查 ### 如果没有效果请检查 1. 是否用管理员权限运行 2. 是否开启了走A 3. 按键是否修改正确 4. 查看 `runA.log`:启动日志会写明钩子是否安装成功、按触发键后引擎是否启动 ### 界面展示 ![img](https://github.com/SJYssr/img/raw/main/1/LOL_auto_runA.png) ## RELEASES 原版打包文件见 [SJYssr/LOL_auto_runA releases](https://github.com/SJYssr/LOL_auto_runA/releases/tag/V1.0.0);本分支直接用源码运行(见使用方法)。 ## 赞赏(原版作者 SJYssr) ![img](https://github.com/SJYssr/img/raw/main/1/zanshang.jpg) ## :warning: 免责声明 - 本程序仅供学习交流使用,任何作弊行为造成的损失与作者无关。 - 本代码遵循 [GPL-3.0 License](https://github.com/SJYssr/LOL_auto_runA/blob/main/LICENSE) 协议,允许**开源/免费使用和引用/修改/衍生代码的开源/免费使用**,不允许**修改和衍生的代码作为闭源的商业软件发布和销售**,禁止**使用本代码盈利**,以此代码为基础的程序**必须**同样遵守 [GPL-3.0 License](https://github.com/SJYssr/SLOL_auto_runA/blob/main/LICENSE) 协议 - 本代码仅用于**学习讨论**,禁止**用于盈利** - 他人或组织使用本代码进行的任何**违法行为**与本人无关