Releases: 1264600905/HD2-Auto-Reload
Release list
v0.7.0 — 原生换弹实验版
v0.7.0 — 原生换弹实验版
适用 Steam build 25480438;普通输入包仍保留 25327279 的运行时兼容检查。依赖 Bingus Shared Loader v15+ / API 1。所有安装包使用同一 Mod GUID,只能启用其中一份。
| 安装包 | 用途 |
|---|---|
Auto-Reload-v0.7.0-tactical.zip |
战术阈值与模拟 R;不调用游戏内部换弹函数 |
Auto-Reload-v0.7.0.zip |
仅空仓自动换弹与模拟 R |
Auto-Reload-v0.7.0-native-tactical.zip |
实验性原生换弹优先,并启用战术阈值;无可验证 Reload 组件时回退模拟 R |
Auto-Reload-v0.7.0-native.zip |
实验性原生换弹优先,仅空仓触发 |
同名 -debug.zip 包提供详细诊断日志,不改变对应模式的触发规则。推荐先用输入战术包作稳定基线;希望测试内部函数与 GL-15 两发阈值时,选择原生战术包。
本版变化
25480438的运行时 PE 标识、布局签名及 Magazine/Rounds/Heat 完整表经过只读验证;修复了无既存声明时SendInput初始化失败。- 原生实验版绑定游戏的换弹请求函数,而不是只调用动画能力。按当前武器的 Reload 有效配置取得能力 ID,校验本地实体、组件、动作空闲与指令;组件缺失时保留模拟 R 回退。
- 恢复全部 50 条战术规则。GL-15 在弹匣加膛内总弹 ≤2时进入换弹窗口;余量为 2 时仍有原有点击等待,余量为 1 时立即请求。逐发续装只在弹药增加且动作空闲后继续,防止原生重入。
验证边界
前一版仅限 GL-15 空仓的原生原型已获用户实机反馈:日志记录原生请求返回及其后弹药恢复。当前 build 的 Reload 静态表包含全部 50 条战术武器资源 ID;另一把 Rounds 武器的只读组件与能力路径也通过核对。这些证据不能证明 v0.7.0 在所有武器、两发提前换弹、动作中断或多人场景均可正常工作。原生函数及内存布局仍是版本相关的;后续游戏更新会触发保护性停用,须重新验证。
发布构建经过 62 项 Lua 行为测试、组件表与上下文测试、7 项 Python 测试,以及 8 个 ZIP 的归档、GUID、模式开关和运行时版本核对;离线测试不能替代游戏内验证。
安装与测试
关闭游戏,移除旧 Auto Reload 包,在 Mod 管理器中只启用上述一份包,与 Bingus Shared Loader 一起重新部署并重启。使用输入版或原生包的输入回退时,游戏换弹键须为 R。
先测试 GL-15 在总弹 2、1、0 时的请求与实际弹药恢复;再逐类测试 Magazine、Rounds、可更换散热器的 Heat 武器及站桩换弹武器。日志位于 %LOCALAPPDATA%/CowboyBingus/Helldivers2/Logs/AutoReloadRounds.log。START 行应显示 revision=auto-reload-0.7.0(原生包另含 -native),RELOAD_REQUEST sent=true 只表示输入被接受或原生调用返回,不代表换弹完成。不要公开完整个人日志、游戏 DLL 或内存转储。
源码与离线测试说明见 README,原生调用证据与限制见 NATIVE_RELOAD.md。
v0.6.1
修复与其他模组共享 LuaJIT FFI 时的 SendInput 类型冲突,避免自动换弹触发闪退。包含普通版、战术版和调试版安装包。适用 Steam build 25327279。
v0.6.0 - Configurable tactical and immediate reload
v0.6.0 — 可配置战术换弹与即时换弹修复
适用 Steam build 25327279,依赖 Bingus Shared Loader v15+ / API 1。
更新内容
- 新增构建前可编辑的武器配置表,支持弹匣阈值、逐发续装和即时触发。
- 移除普通空仓及需要更换的烧毁散热器的固定 1 秒等待。
- 应用高速武器配置:AR 枪族(不含 JAR)、BR-14、SMG 系列、M7S、StA-11、P-2、P-19、M6C/SOCOM 在弹匣 ≤3 发时请求换弹;M-105 和手持 MK3 在 ≤10 发时请求。这些武器不等待 0.1 秒。
- 其他战术武器仅在进入换弹窗口后计算点击延迟:从 0.1 秒起步,快速连续点击可延长至 0.2、0.4、0.6 秒。窗口外点击不累积,离开窗口即重置;按规则计数剩 1 或 0 发时立即请求。
- 保留此前调整的 0 发弹匣阈值;膛内弹不计入弹匣。SG-97、GL-15 保留原有总弹量口径。
- 移除手动换弹抑制,修复 M-105 手动按 R 后继续射击至打空仍无法自动请求的问题。
- 模拟 R 的松开与再次按下分属不同更新帧;发送失败不消耗重试机会。即时复核期间弹药继续减少不再取消请求。
- MG-43、GR-8 等站桩换弹武器仍要求确认空仓后重新点击射击。
下载与安装
| 安装包 | 用途 |
|---|---|
Auto-Reload-v0.6.0-tactical.zip |
推荐:启用全部可配置战术规则,包含上述高速武器阈值 |
Auto-Reload-v0.6.0.zip |
仅普通空仓换弹,不启用战术阈值 |
Auto-Reload-v0.6.0-tactical-debug.zip |
战术规则版,附详细诊断日志 |
Auto-Reload-v0.6.0-debug.zip |
普通空仓版,附详细诊断日志 |
所有包沿用同一 GUID,只启用一份。替换旧包,与 Loader 一起部署后重启游戏。默认换弹键须为 R。
日志:%LOCALAPPDATA%/CowboyBingus/Helldivers2/Logs/AutoReloadRounds.log。版本为 auto-reload-0.6.0 或 auto-reload-0.6.0-debug;战术版应记录 tactical_reload=true reload_delay=0。
验证与已知限制
已通过离线控制器、输入时序、组件映射、读取链和打包测试,包含 M-105 手动 R 后打空的回归场景。最终修复尚未得到实机完整确认;系统接受按键不代表游戏完成换弹,游戏动作限制和备用弹药仍由游戏处理。
MG-43 的历史装备崩溃报告尚未确认原因,本版按此前要求保留试验性读取,不宣称修复该崩溃。仅兼容上述游戏构建版本。
v0.5.1 - FFI input polling fix
v0.5.1 — 输入轮询 FFI 修复
适用 Steam build 25327279,依赖 Bingus Shared Loader v15+ / API 1。
- 修复 #2:
GetAsyncKeyState的 FFI 声明只在初始化时执行一次,逐帧输入轮询复用已绑定的函数。 - 提供可选的
Auto-Reload-v0.5.1-debug.zip。它会在接近空仓、重新读取武器状态和发送 R 的前后刷新诊断日志,帮助定位 #1 报告的闪退。#1 的原因尚未确认,本次发布不宣称已修复该闪退。
正常使用请选择 Auto-Reload-v0.5.1.zip。调试包与普通包沿用同一 GUID;只启用其中一份,在 Mod 管理器部署后重启游戏。日志位于 %LOCALAPPDATA%/CowboyBingus/Helldivers2/Logs/AutoReloadRounds.log,START 行应分别显示 auto-reload-0.5.1 或 auto-reload-0.5.1-debug。
v0.5.0 - Energy Weapon Auto Reload
v0.5.0 — 能量武器自动换弹
支持 Steam build 25327279,依赖 Bingus Shared Loader v15+ / API 1。
- 新增散热型能量武器自动换散热器:确认过热锁定后等待 1 秒,再模拟 R;持续开火同样等待满 1 秒。
- 普通升温、充能及可自行恢复的冷却锁定不触发换弹。
- 适配新版玩家、武器及弹药组件布局,更新完整资源表校验和 Rounds 配置记录长度。
- 发送前重新核对武器实体、槽位和状态;手动 R 会抑制重复自动请求。
- 保留主手、副武器、支援武器支持,只读游戏状态,不改弹药、不写游戏内存、不调用游戏函数。
用户已确认功能测试通过,能量武器可正常使用。此前 34 项离线检查及生成 Lua 语法检查通过;不代表所有武器和场景均已覆盖。
下载 Auto-Reload-v5.zip,在 Mod 管理器中替换旧 Auto Reload,与 Loader 一起部署后重启游戏。沿用旧 GUID,请保持只启用一份。默认换弹键须为 R;日志版本为 auto-reload-5。
旧版 v4 不支持本次游戏更新。游戏再次更新后需重新验证。资源 11c27d3babb38956 继续跳过。
v0.4.0 — 1 second reload / energy diagnostic
v0.4.0 测试版
空仓等待时间从 3 秒改为 1 秒。项目已整理为独立仓库,可直接用 Python 标准库打包。
下载附件 Auto-Reload-v4.zip 替换旧版本,并保持 Bingus Shared Loader 启用。
逐发弹药和普通弹匣分支支持主手、副武器及支援武器。
散热型能量武器尚未启用自动换弹:本包扩充了定点只读诊断,供下一轮实机采集过热状态证据。
请用散热型武器射击至过热、等待并手动 R 换散热器,测试后检查 AutoReloadRounds.log。
不按武器外观过滤,因此使用弹匣系统的能量武器已有相应路径支持。
验证:16 项 Lua 控制器/读取/输入检查、3 项完整 map 检查、2 项打包测试通过;生成 Lua 语法检查通过。
游戏 build 24826606 的 EXE/game.dll SHA256 已验证。离线检查不代表实机换弹成功。