
训练有素的射手后坐力
这是一个通过UE4SS和Lua实时运行的后坐力大修模组。它不通过配件修改器降低后坐力,而是直接重新计算武器后坐力行为,让武器即使没有减后坐力配件也能保持可控。
查看大图[heading][color=#ff0000]新增:原版武器 PAK 版本[/color][/heading]
[color=#ff0000]对于不想安装 UE4SS、只想修改游戏原版武器后坐力的玩家,我额外提供了一个实验性 PAK 版本。
[b]请注意:PAK 版本仅修改原版游戏及官方 DLC 中包含的武器。它不会修改额外的模组武器。[/b]
此版本不包含 Lua 脚本,也不需要 UE4SS。它使用当前版本游戏的原版武器数据,并将调整后的后坐力数值直接写入武器蓝图。
Lua 版本仍然是本模组的主要版本,也是我推荐的版本。
PAK 版本主要面向以下玩家:
[/color]
[list]
[][color=#ff0000]不想安装 UE4SS。[/color][/]
[][color=#ff0000]只使用基础游戏或官方 DLC 武器。[/color][/]
[][color=#ff0000]没有会覆盖原版武器蓝图的替换模组。[/color][/]
[/list][line]
[color=#ff0000]重要:请勿同时安装两个版本
[b]Lua 版本和 PAK 版本绝不能同时使用。[/b]
PAK 版本会先修改原版武器数据,而 Lua 版本会在武器创建后再次应用其比例调整。如果两个版本同时生效,后坐力数值可能会被处理两次,导致最终结果与预期行为出现显著差异。
在安装 PAK 版本之前,请移除或禁用:
[/color]
[code]ReadyOrNot\Binaries\Win64\Mods\RON_TrainedShooterRecoil[/code][color=#ff0000]如果你之后切换回 Lua 版本,请先移除 PAK 版本。
[/color]
[line]
[color=#ff0000]PAK 版本兼容性
PAK 版本仅适用于:
[/color]
[list]
[][color=#ff0000]基础游戏玩家武器。[/color][/]
[][color=#ff0000]官方 DLC 玩家武器。[/color][/]
[/list][color=#ff0000]它不会自动修改第三方独立武器。
如果第三方模组只添加独立武器,而不覆盖原版武器蓝图,它通常可以与此 PAK 共存。但是,添加的武器不会获得本模组的后坐力调整。
如果第三方模组替换了原版武器的蓝图,它将修改与本 PAK 相同的资源。加载优先级更高的文件将生效,可能导致:
[/color]
[list]
[][color=#ff0000]后坐力模组停止工作。[/color][/]
[][color=#ff0000]武器替换模组停止工作。[/color][/]
[][color=#ff0000]替换武器模型出现,但使用来自另一个模组的参数。[/color][/]
[][color=#ff0000]配件、动画或其他武器数据被覆盖。[/color][/]
[][color=#ff0000]严重情况下,打开装备界面或进入任务时游戏可能崩溃。[/color][/]
[/list][color=#ff0000]使用多个基础游戏武器替换模组的玩家应改用 Lua 版本。
[/color]
[line]
[color=#ff0000]安装
[/color]
[list=1]
[][color=#ff0000]将 PAK 文件放入:
[/color]
[code]ReadyOrNot\Content\Paks[/code][/]
[][color=#ff0000]启动游戏。PAK 版本不需要热键或 UE4SS。[/color][/]
[/list][line]
[color=#ff0000]卸载
删除本模组的 PAK 文件。[/color]
这是一个通过 UE4SS 和 Lua 实时运行的后坐力重制模组。它不通过配件修正来降低后坐力,而是直接重新计算武器后坐力行为,使武器即使没有减后坐力配件也能保持可控。
它的目标不是简单地“移除后坐力”,而是模拟一名受过专业训练的士兵或 SWAT 警员通过正确的抵肩、握持、站姿和后坐力控制来操作枪械:
每一发子弹仍应产生强烈且明显的冲击感和武器移动,但准星会快速且完全回到原始瞄准点。这使玩家能够专注于瞄准、决策和扣动扳机,而不必持续向下拖动鼠标或摇杆来手动补偿后坐力。
该模组可以在运行时读取并调整许多基础游戏、DLC 和第三方模组武器的后坐力。因此,它不需要覆盖它们的 PAK 文件或武器蓝图。
[line]
[heading]我为什么创建这个模组[/heading]
我创建这个模组,是因为《Ready or Not》以及许多其他射击游戏中的全自动后坐力,往往被表现为一种要求玩家持续向下拖动鼠标或摇杆的机制。
这种设计可以提高机械操作难度,但它并不完全符合我想要的射击体验。
在观看真实枪械演示、专业训练影像和执法射击视频后,我想重现以下特征:
[list]
[]开火应产生强烈且即时的冲击。[/]
[]武器、瞄具和镜头应明显传达每一发的力量。[/]
[]连续射击不应自动意味着枪口无限制向上攀升。[/]
[]训练有素的射手通过抵肩、握持、站姿和身体力学来控制后坐力。[/]
[]每一发之后,枪口应相对快速地回到原始瞄准区域。[/]
[]弹着点应形成自然、集中的弹组,而不是夸张的垂直线。[/]
[]不同武器应保留其自身的重量感、口径和射击冲击感。[/]
[/list]换句话说,我想将“感觉强大的后坐力”与“不断失控移动的武器”区分开来。
武器可以明显震动并产生强烈的瞬时冲击,而不会变得无法控制。训练有素的射手仍然需要瞄准并决定何时开火,但玩家不应被要求替角色完成后坐力补偿的每一个机械环节。
[line]
[heading]模组效果[/heading]
本模组的核心体验可以概括为:
[quote]强烈且明显的射击冲击,降低的实际瞄准位移,快速且完全回到原始瞄准点,并改善对自动射击期间持续向上攀升的控制。我仍然建议像精准射手一样使用快速、可控的点射,尤其是使用全威力 7.62 弹药口径的武器时。相信我:快速点射时,你几乎不需要手动补偿后坐力。[/quote]安装后,你应该会注意到以下变化:
[list]
[]更强的射击冲击。[/]
[]武器移动和视觉反馈仍然存在。[/]
[]实际瞄具位移被控制在更紧的范围内。[/]
[]自然的逐发变化仍然保留。[/]
[]枪口更快停止移动。[/]
[]开火后武器完全回到原始瞄准位置。[/]
[]持续射击期间后坐力不再不断增加。[/]
[]全自动射击不再需要持续向下补偿后坐力。[/]
[]半自动射击期间,准星更有可能在下一发之前回到目标区域。[/]
[]每把武器仍根据其自身原始数值计算,因此不同武器不会感觉完全相同。[/]
[/list]这不是一个“无后坐力”模组。
射击冲击、武器移动以及一定程度的随机偏移都被保留。不同之处在于,玩家角色被视为一名主动控制武器的训练有素射手。
[line]
[heading]当前后坐力逻辑[/heading]
该模组会在游戏加载每把武器后读取其后坐力数值,然后按比例调整这些数值。
主要调整如下:
[table][tr][th]参数[/th]
[th]当前调整[/th]
[th]效果[/th]
[/tr]
[tr][td]后坐力角度强度[/td]
[td]原始值的 25%[/td]
[td]减少实际使准星偏离目标的旋转[/td]
[/tr]
[tr][td]随机偏移[/td]
[td]原始值的 50%[/td]
[td]保留自然变化,同时减少不受控移动[/td]
[/tr]
[tr][td]后坐力持续时间[/td]
[td]原始值的 65%[/td]
[td]产生更短、更锐利的冲击,而不是长时间推动枪口[/td]
[/tr]
[tr][td]首发后坐力[/td]
[td]原始值的 85%[/td]
[td]保留首发特性而不过度移动[/td]
[/tr]
[tr][td]ADS 角度修正[/td]
[td]在武器原始修正基础上进一步降低[/td]
[td]减少瞄准时不必要的准星旋转[/td]
[/tr]
[tr][td]阻尼[/td]
[td]原始值的 2.25 倍,并设有最低阈值[/td]
[td]使枪口更快停止移动[/td]
[/tr]
[tr][td]回正百分比[/td]
[td]100%[/td]
[td]防止偏离原始瞄准点后永久位移[/td]
[/tr]
[tr][td]最低回正速度[/td]
[td]18[/td]
[td]使枪口更快回到原始瞄准区域[/td]
[/tr]
[tr][td]持续射击后坐力累积[/td]
[td]禁用[/td]
[td]防止自动射击期间后坐力不断增加[/td]
[/tr]
[tr][td]ADS 射击冲击保留[/td]
[td]不低于原始修正的 75%[/td]
[td]在瞄准时保留明显的射击冲击[/td]
[/tr]
[/table]不同武器类别还使用不同的瞬时射击冲击倍率:
[table][tr][th]武器类别[/th]
[th]瞬时冲击倍率[/th]
[/tr]
[tr][td]步枪[/td]
[td]原始值的 2.70 倍[/td]
[/tr]
[tr][td]战斗步枪[/td]
[td]原始值的 3.00 倍[/td]
[/tr]
[tr][td]冲锋枪[/td]
[td]原始值的 2.50 倍[/td]
[/tr]
[tr][td]手枪[/td]
[td]原始值的 2.60 倍[/td]
[/tr]
[tr][td]霰弹枪[/td]
[td]原始值的 3.00 倍[/td]
[/tr]
[tr][td]低致命武器[/td]
[td]原始值的 2.50 倍[/td]
[/tr]
[/table]这些倍率会应用于每把武器自身已加载的数值。这并不意味着每把步枪、手枪或霰弹枪都会获得完全相同的射击冲击。
原本后坐力更强的武器仍会更强,而原本后坐力更柔和的武器仍会相对更柔和。
为避免干扰破门行动,专用的
[code]870 MCS[/code]破门霰弹枪被明确排除,并继续使用其原始游戏后坐力数值。
[line]
[heading][color=#ff0000]为什么这个模组可以直接调整第三方武器!——重要[/color][/heading]
[color=#ff0000]传统的基于 PAK 的后坐力模组通常需要直接覆盖特定武器蓝图或数据资产。
这种方法意味着:[/color]
[list]
[][color=#ff0000]必须事先知道每把武器的确切资源路径。[/color][/]
[][color=#ff0000]每把新添加的武器都可能需要自己的兼容补丁。[/color][/]
[][color=#ff0000]覆盖同一武器蓝图的模组之间很容易相互冲突。[/color][/]
[][color=#ff0000]游戏更新或武器模组更新可能立即使补丁失效。[/color][/]
[][color=#ff0000]武器模型、配件、射速、动画或其他无关数据可能会与后坐力设置一起被覆盖。[/color][/]
[/list][color=#ff0000]本模组使用不同的方法。
通过 UE4SS,它会监控玩家武器在运行时创建的过程。当加载兼容武器时,脚本会:[/color]
[list=1]
[][color=#ff0000]识别该武器是否为玩家可用的主武器或副武器。[/color][/]
[][color=#ff0000]读取该武器当前加载的后坐力数值。[/color][/]
[][color=#ff0000]将其分类为步枪、战斗步枪、冲锋枪、手枪、霰弹枪或低致命武器。[/color][/]
[][color=#ff0000]根据该武器自身的数值计算新的后坐力。[/color][/]
[][color=#ff0000]仅修改该运行时武器实例的后坐力字段。[/color][/]
[/list][color=#ff0000]因此,如果第三方武器包含其自己的自定义后坐力数值,本模组会读取该武器作者选择的数值,然后按比例调整它们。
它不会强制每把第三方武器使用某个特定基础游戏武器的后坐力,也不需要修改第三方武器的 PAK 文件。[/color]
[line]
[heading]为什么这个模组不是 PAK[/heading]
这个模组没有做成 PAK,不是因为 PAK 文件无法改变后坐力。原因是静态 PAK 不适合本模组的设计目标。
本模组需要:
[list]
[]在武器实际加载后读取其当前参数。[/]
[]根据不同武器的原始数值动态计算结果。[/]
[]自动处理遵循兼容结构的第三方武器。[/]
[]避免覆盖完整的武器蓝图。[/]
[]尽量减少与武器、配件、弹药和视觉模组的文件级冲突。[/]
[/list]PAK 模组更适合事先定义并覆盖特定资产。运行时 Lua 脚本则可以修改已加载的武器实例,而不改变其原始 PAK。
这也是本模组能够自动支持许多第三方武器的重要原因。
要以纯 PAK 实现相同功能,需要为大量基础游戏和第三方武器创建单独的覆盖文件,这会显著增加与其他武器模组冲突的可能性。
[line]
[heading]第三方武器兼容性[/heading]
该模组会尝试识别以下常见类型的玩家武器:
[list]
[]位于基础游戏
[code]WeaponsRevised[/code]路径下的武器。[/]
[]位于 DLC4 武器路径下的武器。[/]
[]遵循上述任一游戏结构的第三方武器。[/]
[]名称包含
[code]Primary_[/code]、
[code]Secondary_[/code]、
[code]BP_Primary_[/code]或
[code]BP_Secondary_[/code]的玩家武器蓝图。[/]
[/list]因此,大多数遵循游戏常规武器结构的替换和独立武器模组都可以被自动调整。
但是,以下武器可能无法被检测到:
[list]
[]使用完全独立自定义资源路径的武器。[/]
[]蓝图不使用常见主武器或副武器命名约定的武器。[/]
[]使用完全自定义后坐力系统的武器。[/]
[]不是从游戏标准
[code]BaseWeapon[/code]类创建的武器。[/]
[]后坐力数值随后被另一个运行时脚本覆盖的武器。[/]
[/list]无法识别的第三方武器通常不会被损坏或破坏。它只会继续使用其自身的原始后坐力。
[line]
[heading]本模组不会改变的内容[/heading]
本模组不会修改:
[list]
[]弹药伤害。[/]
[]部位伤害倍率。[/]
[]穿透。[/]
[]护甲值。[/]
[]弹药类型。[/]
[]射速。[/]
[]弹匣容量。[/]
[]装填速度。[/]
[]武器模型。[/]
[]武器材质。[/]
[]武器音效。[/]
[]动画。[/]
[]配件。[/]
[]命中硬直概率。[/]
[]嫌疑人或 SWAT AI。[/]
[]玩家生命值。[/]
[]任何 PAK 文件。[/]
[/list]它仅在运行时处理玩家武器的后坐力相关字段。
[line]
[heading]兼容性[/heading]
通常兼容
[list]
[]独立武器模组。[/]
[]武器替换模组。[/]
[]武器材质和皮肤。[/]
[]武器音效模组。[/]
[]配件扩展模组。[/]
[]弹药和伤害模组。[/]
[]AI 重制模组。[/]
[]地图和任务模组。[/]
[]其他不修改相同后坐力字段的 UE4SS 模组。[/]
[/list]由于本模组不会覆盖属于这些模组的文件,它们通常可以一起运行。
潜在冲突
如果另一个 Lua、DLL 或 PAK 模组也在运行时更改以下后坐力字段,结果可能会被覆盖或合并:
[list]
[]射击冲击强度。[/]
[]后坐力角度强度。[/]
[]随机偏移。[/]
[]阻尼。[/]
[]回正速度。[/]
[]回正百分比。[/]
[]首发后坐力。[/]
[]ADS 后坐力修正。[/]
[]持续射击后坐力累积。[/]
[/list]在这些情况下,最终结果取决于每个模组的执行时间以及哪些数值最后写入。
建议不要同时使用另一个完整的后坐力重制模组。
[line]
[heading]需求[/heading]
[list]
[]Ready or Not[/]
[]UE4SS 3.0.1[/]
[/list]这不是 PAK 模组。需要 UE4SS 来执行其 Lua 脚本。
[line]
[heading][color=#ff0000]安装——重要[/color][/heading]
[color=#ff0000]已经拥有可正常工作的 UE4SS 3.0.1 安装的用户
你只需要下载并安装主后坐力模组文件。[/color]
[list=1]
[][color=#ff0000]完全关闭 Ready or Not。[/color][/]
[][color=#ff0000]打开后坐力模组压缩包。[/color][/]
[][color=#ff0000]将外层的[/color]
[code]ReadyOrNot[/code][color=#ff0000]文件夹复制到你的游戏安装目录。[/color][/]
[][color=#ff0000]允许 Windows 合并文件夹。[/color][/]
[][color=#ff0000]不要将压缩包中的[/color]
[code]ReadyOrNot[/code][color=#ff0000]文件夹作为额外的嵌套文件夹放入现有的[/color]
[code]ReadyOrNot[/code][color=#ff0000]文件夹中。[/color][/]
[][color=#ff0000]启动游戏。模组会自动激活,不需要热键。[/color][/]
[/list][color=#ff0000]未安装 UE4SS 的用户
你需要同时下载:[/color]
[list]
[][color=#ff0000]主后坐力模组文件。[/color][/]
[][color=#ff0000]UE4SS 3.0.1 依赖项。[/color][/]
[/list][color=#ff0000]先安装依赖项,然后使用上述相同方法安装主模组。
已经拥有另一个 UE4SS 版本的用户
如果你现有的 UE4SS 安装和其他 Lua 模组工作正常,请先尝试仅安装主后坐力模组。
如果模组未加载或游戏在启动期间遇到问题,请备份以下现有文件:[/color]
[list]
[][code]UE4SS.dll[/code][/]
[][code]dwmapi.dll[/code][/]
[][code]UE4SS-settings.ini[/code][/]
[/list][color=#ff0000]然后你可以尝试本模组页面提供的 UE4SS 3.0.1 依赖项。
依赖包会替换 UE4SS DLL 和全局配置。这可能会影响依赖不同 UE4SS 版本或自定义设置的其他模组。[/color]
[line]
[heading]卸载[/heading]
完全关闭游戏,然后仅删除:
[code]ReadyOrNot\Binaries\Win64\Mods\RON_TrainedShooterRecoil[/code]不要删除整个
[code]Mods[/code]文件夹。
如果其他模组也需要 UE4SS,请不要卸载 UE4SS。
本模组不会修改存档文件、PAK 文件、武器蓝图或原始游戏文件。删除模组文件夹后,武器将恢复到其原始后坐力行为。
[line]
[heading]故障排除[/heading]
模组没有效果
请按顺序检查以下内容:
[list=1]
[]确保已安装 UE4SS 3.0.1。[/]
[]确保安装没有创建额外的嵌套
[code]ReadyOrNot[/code]文件夹。[/]
[]确认模组目录为:
[code]ReadyOrNot\Binaries\Win64\Mods\RON_TrainedShooterRecoil[/code][/]
[]确认该目录包含:
[list]
[][code]enabled.txt[/code][/]
[][code]Scripts\main.lua[/code][/]
[][code]Scripts\config.lua[/code][/]
[/list][/]
[]检查
[code][TrainedShooterRecoil][/code]是否出现在
[code]UE4SS.log[/code]中。[/]
[/list]只有某一把特定的模组武器不受影响
这通常意味着该武器:
[list]
[]使用非标准路径。[/]
[]使用不寻常的蓝图名称。[/]
[]不继承自标准武器类。[/]
[]使用其自己的自定义运行时后坐力系统。[/]
[/list]这不一定意味着整个模组失败。
游戏在启动时崩溃
[list=1]
[]完全关闭游戏。[/]
[]暂时移除此模组的文件夹。[/]
[]检查游戏是否可以正常启动。[/]
[]验证已安装的 UE4SS 版本。[/]
[]如果你使用多个 UE4SS 模组,请逐个恢复它们以识别可能的运行时冲突。[/]
[]不要将旧的
[code]xinput1_3.dll[/code]注入方法与 UE4SS 3.0.1 的
[code]dwmapi.dll[/code]注入方法一起安装。[/]
[/list]安装另一个后坐力模组时后坐力感觉不正确
只保留一个修改后坐力参数的模组。
即使两个模组不包含同名文件,它们在修改相同的运行时字段时仍然可能冲突。
[line]
[heading]已知限制[/heading]
[list]
[]当前版本主要通过射击冲击、后坐力角度、随机性、后坐力持续时间、阻尼、回正行为和持续射击后坐力累积来产生效果。[/]
[]具有完全自定义结构的第三方武器可能无法被自动检测到。[/]
[/list][line]
[heading]版本[/heading]
1.0.0
[list]
[]首次公开发布。[/]
[]保留作者当前使用的后坐力行为。[/]
[]支持基础游戏、DLC4 和兼容的第三方玩家武器。[/]
[]提高瞬时射击冲击。[/]
[]降低实际瞄准位移和随机偏移。[/]
[]提高阻尼和回正速度。[/]
[]提供 100% 回到原始瞄准点。[/]
[]禁用持续射击后坐力累积。[/]
[]排除专用的 870 MCS 破门霰弹枪。[/]
[]使用
[code]enabled.txt[/code]并且不覆盖用户的
[code]mods.txt[/code]。[/]
[/list][line]
[heading]鸣谢[/heading]
特别感谢 UE4SS 项目及其开发者,为虚幻引擎提供运行时 Lua 支持。
UE4SS 由其原始作者和贡献者开发。本模组不隶属于官方 UE4SS 项目,也不受其认可。
[line]
[heading]许可与再分发[/heading]
未经许可,请勿将此模组重新上传到其他网站、模组合集或付费内容中。
你可以修改配置以供个人使用。但是,由修改版本引起的兼容性问题、稳定性问题或行为变化不在原始发布版的支持范围内。
如果你为非标准结构的第三方武器创建兼容补丁,请先联系作者。
作者:[b]dongbeiwang0828[/b]
我的测试视频中使用的武器:
特别感谢 [b]BaIlistic[/b] 提供的 [b]HK416D[/b]、[b]KAC KS-1[/b] 和 [b]MCX LVAW[/b] 武器模组。
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。