
抑制器现实主义
为消音器使用增添真实感,仅手枪使用亚音速弹药,开火会积累热量,达到阈值时消音效果失效。
查看大图抑制器现实主义
////////////////////////////////////////////
这是 rmk1234 的《无声消音器与飞刀》的一个分支版本
版本 2.0 — 武器操控更新
////////////////////////////////////////////
2.0 版本在 1.0 的声学和热量系统之上,增加了一整套武器操控层。
新增内容
- 抑制射击时后坐力降低。消音器是一种有效的枪口制退器。
- 瞄准、拔枪和收枪速度变慢。枪口较重的武器抬枪更慢。
- 抑制射击时武器晃动减少。前端的质量使枪更稳定。
- 手枪和左轮手枪的拔枪惩罚更大。没有枪套能装下带抑制器的手枪。
- 使用抑制长枪时暴露在掩体外的可见度惩罚。掩体外多出一英尺的枪管,就是守卫能看到的枪管。
- 热量现在会逐渐降低操控性。随着抑制器升温,每次射击都会增加晃动和散布,而不是在失效瞬间才突然发生。
变更内容
- 热量现在计算每发射出的子弹,而不仅仅是命中的子弹。对着墙壁、尸体或空房间射击都会正确积累热量。在 1.0 中,当目标死亡后计数器会停止。
- 武器检测已重写,以确保在高负载顺序下可靠运行。
- 操控和热量修改器在运行时直接应用,而不是通过 TweakDB 记录,因此它们可适用于游戏中的每个抑制器,包括自定义武器模组添加的数百个抑制器。
所有新功能都可以在设置菜单中单独开关和调节,并且默认全部开启。
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
本模组是一个分支版本。没有 rmk1234(https://www.nexusmods.com/cyberpunk2077/mods/4070)就不会有它的存在,他的《无声消音器与飞刀》是这里一切构建的基础。枪声刺激过滤器、命中处理逻辑、侦测选项和运行时配置模式都是 rmk1234 的成果,大部分原样保留。如果你只想要原始行为——消音武器和投掷飞刀不自动触发战斗——请直接安装原版。那是一个出色的模组,完美地完成了它的工作。
这个分支版本所增加的是在此之上的弹道现实主义:抑制射击的噪音实际上来自哪里,哪些弹药可以被有效抑制,当你打空一个弹匣时抑制器会发生什么,以及这些如何改变武器的操控方式。
不要与原版《无声消音器》同时运行。只能选择其一。请参阅下方的兼容性部分。
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
它解决的问题
//////////////////////////////////////////
赛博朋克的抑制器工作原理就像电影里的抑制器一样。在任意武器上装一个罐子,枪声就变得听不见了——无论是在 Lexington 还是 Nekomata 上,无论是三米还是三十米距离,结果都一样。抑制器能做什么和不能做什么之间没有区别,持续扣住扳机没有代价,武器握在手中的感觉也没有变化。
真实的抑制器远比这有趣得多,而且它们在现实中的不足之处反而构成了比虚构设定更好的潜行机制。
抑制器并不能让声音消失
抑制器会捕获并冷却膨胀的火药气体,从而削减枪口爆音约 20–35 分贝。这相当于永久性听力损伤和响亮拍击声之间的区别。一支被抑制的中心发火步枪在耳边仍有约 130–140 分贝——堪比风镐。它变安静了,但并不安静。
只有部分弹药可以被有效抑制
如果子弹飞行速度超过音速,它身后会拖曳一道冲击波,而这道爆裂声是由飞行中的弹头产生的。任何安装在枪口的装置都无法解决这个问题。
从短枪管发射的手枪口径弹药处于或低于音速,这就是为什么被抑制的手枪或冲锋枪确实可以做到隐秘。步枪和狙击枪弹药则明确是超音速的。抑制它们只能消除枪口爆音,而音爆声仍然完整保留。
爆裂声并非来自你
这是整个模组构建的核心细节,也是让被抑制的步枪变得有趣而非惩罚性的关键。
声学枪声定位的工作原理是测量弹道冲击波和枪口爆音之间的时间差。消除枪口爆音后,这个计算就不起作用了。听者只剩下沿子弹飞行路径产生的爆裂声——这意味着声音似乎来自目标方向的下方,而非射手位置。
实际结果:靠近被抑制的超音速射击点附近的人绝对知道发生了枪击,但对枪声来源几乎一无所知。
抑制器会过热
抑制器不会因为射击次数而磨损。一个优质步枪抑制器的寿命能超过几根枪管。真正致命的是射击速率——快速打空一个弹匣会让挡板组发热发红,钛合金软化,焊缝开裂,气体密封件退化。制造商将限制条件表述为最短枪管长度和全自动限制,而非射击次数,这恰好说明了他们担心的是什么。
过热的抑制器不会爆炸。它只是停止正常工作。
抑制器会改变枪的操控方式
你在枪口后方约 5 到 9 英寸处悬挂了 6 到 20 盎司的重量。从杠杆作用的角度来看,这是最糟糕的位置;从后坐力的角度来看,这是最佳位置。
枪会变得枪口沉重,抬起更慢,但一旦你保持静止,它也变得更稳定,后坐力显著下降,因为抑制器是一种非常有效的枪口制退器,只是它不会震到你身边的人。被抑制的射手通常射击更好,部分原因就在于此,另一部分是因为很多看起来像糟糕射击技术的问题其实是事先对枪口爆音的预期反应。
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
模组的实际效果
/////////////////////////////////////////////
1. 噪音来自你的目标,而非你
每次被抑制的射击命中时,都会从被你击中的人的位置发出噪音刺激,而不是从你的位置。枪口来源的噪音按正常方式被抑制。
守卫会检查尸体。你的位置永远不会被暴露。干掉一个巡逻的雇佣兵后,他的小队会聚集到他倒下的地方,而你保持隐蔽——这既是现实的结果,在实践中也是比完全寂静或瞬间被侦测要好得多的潜行循环。
2. 弹药类别决定噪音传播距离
武器类别 | 噪音半径 | 理由
手枪、冲锋枪、左轮手枪 | 15 米 | 可亚音速。安静的冲击声。你的潜行阶层。
步枪、狙击枪、霰弹枪、轻机枪 | 60 米 | 超音速。弹道爆裂声会传播,而且从下方传播。
被抑制的狙击枪仍然是个出色工具——只是不能让枪声消失。它会把警报转移到目标位置,让你可以从完全不同的地方行动。
两个半径均可完全配置。
3. 持续射击时抑制器会过热
在滚动三秒窗口内发射五发被抑制的子弹(冲锋枪为八发,因为它们射速快得多),抑制器就会失效。在接下来的十秒内,它会完全停止工作:枪声变响,从枪口发出,并且暴露你的位置,就像使用未抑制武器一样。然后它冷却并再次工作。
每发射出的子弹都算数,无论是否命中。三秒内没有发射被抑制的射击,计数器就会完全清零。有意识的精准射击永远不会触发过热。恐慌中的全自动射击绝对会。
过热发生时,屏幕上会立刻出现“抑制器过热”警告,因此你永远不需要猜测。
4. 抑制器会改变武器操控 [2.0 新增]
当被抑制的武器在你手中时:
后坐力 | 降低。消音器起到枪口制退器的作用。
晃动 | 减少。前端的质量使武器在你保持静止时更稳定。
瞄准速度 | 变慢。枪口较重的武器抬枪更慢。
拔枪和收枪 | 变慢。
手枪拔枪 | 更慢。没有标准枪套能装下带抑制器的手枪。
掩体可見度 | 更差,仅限长枪。枪管会超出你所在的掩体。
结果是真正的取舍,而非单纯的升级。被抑制的武器一旦瞄准目标就会更平稳、更平直,但在达到目标之前表现更差。被抑制的手枪尤其适合在任务前装好消音器,而不是战斗中临时安装。
掩体可见度惩罚仅适用于步枪、狙击枪、霰弹枪和轻机枪,这给了你在狭小室内行动中带上手枪的充分理由。
5. 热量会随着积累而降低操控性 [2.0 新增]
过热不再是简单的开/关切换。每一发子弹产生的热量都会让武器更难保持稳定、精度降低,因此一次连射会连续恶化,你可以在抑制器真正失效前感觉到它正在失效。
这是能达到的、最接近瞄准镜海市蜃楼的等效效果——连续射击后,抑制器会在你的视线中投射出一片热气柱。你看不见它,但你能确切感受到它的影响。
原模组的所有功能仍然存在
被抑制的枪声和投掷飞刀不自动触发战斗、最小距离设置、可选的自动/定时/随机侦测几率,以及攻击后的掩体减益效果,所有这些都从 rmk1234 的模组中保留下来,并且功能一如既往。
//////////////////////////////////////////////////////////////////////////////////////////////////
前置要求
//////////////////////////////////////////////////////////////////////////////////////////////////
- redscript (https://www.nexusmods.com/cyberpunk2077/mods/1511)
- TweakXL (https://www.nexusmods.com/cyberpunk2077/mods/4197)
- Cyber Engine Tweaks (https://www.nexusmods.com/cyberpunk2077/mods/107)
- Native Settings UI (https://www.nexusmods.com/cyberpunk2077/mods/3518)
已在游戏版本 2.31 上构建并测试。
安装方法
//////////////////////////////////////////////////////////////////////////////////////////////////
Vortex:正常下载并安装。
手动安装:将压缩包解压到你的《赛博朋克2077》根目录——即包含 bin、r6 和 archive 的目录。压缩包中的 bin 和 r6 文件夹会与现有文件夹合并。
文件将位于:
r6\scripts\SuppressorRealism\SuppressorRealism.reds
r6\tweaks\SuppressorRealism\suppressor_realism.yaml
bin\x64\plugins\cyber_engine_tweaks\mods\SuppressorRealism\init.lua
卸载:删除这三个文件夹。不会写入任何内容到你的存档。
从 1.0 升级:删除 r6\cache\modded 以便 redscript 重新编译。你的设置会保留,新的 2.0 选项将以默认值出现。
配置
//////////////////////////////////////////////////////////////////////////////////////////////////
所有内容都可以在游戏内“设置 → 抑制器现实主义”中调整,大多数选项无需重新加载即可实时生效。
- 核心 — 主开关,以及原模组的潜行开关和最小距离
- 目标处噪音 — 启用/禁用受害者广播,并分别设置亚音速和超音速半径
- 抑制器热量 — 启用/禁用过热,单独设置手枪和冲锋枪的射击阈值、滚动窗口时长、冷却时间以及屏幕警告
- 武器操控 — 启用/禁用操控层,以及后坐力降低、晃动减少、瞄准减速、装备和切换惩罚、手枪拔枪惩罚、掩体可见度惩罚,以及每发子弹的热量晃动和散布惩罚的独立滑块
- 攻击后掩体减益 — 从原版继承
- 调试 — 详细日志,用于故障排除。正常游玩时请关闭此项
//////////////////////////////////////////////////////////////////////////////////////////////////
兼容性
//////////////////////////////////////////////////////////////////////////////////////////////////
硬性冲突
《无声消音器与飞刀》。安装本模组前请先移除它。两者都包装了相同的两个引擎方法,而 redscript 会按加载顺序链式包装,这并不保证有效。如果原版的包装器位于最内层,它会在本模组逻辑运行之前返回,导致热量系统静默失效,且没有错误提示告诉你原因。没有办法同时运行两者。
原版模组的语言翻译也不适用于此分支,因为配置路径已重命名。
可能产生交互
- 影响 NPC 感官、刺激处理或侦测的潜行和 AI 大修模组。任何挂钩 ReactionManagerComponent 或 TargetTrackingExtension 的模组都与此模组有共同之处。
- StealthRunner(同样由 rmk1234 制作)—— 没有已知冲突,而且在概念上两者互补,但都在潜行领域运作。
- 武器操控模组。2.0 新增,值得多读两遍:任何调整后坐力、晃动或瞄准速度的模组都在修改与此模组相同的属性。它们会叠加而非冲突,所以不会出问题,但叠加后的结果可能不符合任一模组的预期。如果你运行像 WeaponHandling 这样的模组,建议调整本模组的滑块,而不是使用默认值。
- 武器状态—— 兼容并已测试。两者都挂钩相同的每射击事件,共存没有问题。
故意保持不变
- 原版的 @replaceMethod on PlayerPuppet.UpdateVisibility 已被移除以保证加载顺序安全。攻击后掩体减益现在仅通过其可见性属性修改器工作——效果稍弱,但冲突的可能性远低于 HUD 和可见性模组。
- 其他一切均使用 @wrapMethod。不存在任何方法替换。
自定义武器
操控和热量修改器在运行时根据游戏是否将你的武器报告为“被抑制”来应用,而不是通过编辑抑制器物品记录。这意味着所有抑制器都能工作,包括自定义武器模组添加的数百个,以及你稍后安装的抑制器。
噪音半径的武器分类读取的是原版物品类型,因此只要自定义 ArchiveXL 武器声明了合理的物品类型,就能正确处理。如果自定义武器在游戏中没有被识别为“被抑制”,请检查它是否正确接线了原版抑制器插槽——有些武器没有,这也会影响原版游戏的潜行行为,而不仅仅是本模组。
科技武器不受影响。游戏不允许它们安装抑制器,这是正确的:电磁加速器不产生火药气体,所以抑制器无事可做。
======================================================================
已知限制
//////////////////////////////////////////////////////////////////////////////////////////////////
无增益栏图标。过热通过屏幕警告消息而非状态图标来提示。曾尝试使用状态效果路线但放弃了——记录验证无误且可在运行时检索,但游戏的状态效果系统拒绝应用它们。屏幕消息在功能上是等效的,而且在激烈的交火中,可能更清晰。
无瞄准横扫惩罚。被抑制的武器在目标之间转移时应更慢。游戏未暴露瞄准转向速率属性,因此除非直接改变鼠标灵敏度(这不在范围内),否则无法实现。瞄准速度和晃动承担了操控感受。
操控百分比是名义值。滑块会输入到游戏的属性修改器池中,最终效果取决于还有哪些内容贡献给这些池。25% 的后坐力降低可能实际是 19%;30% 的拔枪惩罚可能实际是 69%。请根据实际感受调整,而不是相信菜单中的数字。
半径根据关卡设计比例缩放,而非现实。真实未抑制步枪的声音可传播超过一英里;夜之城的遭遇空间只有 50–200 米宽。绝对现实主义会惊动整个区域并破坏游戏。忠实模拟的是各层级之间的比例,以及声音的来源位置。
======================================================================
平衡性说明
//////////////////////////////////////////////////////////////////////////////////////////////////
默认值是起点,不是金科玉律。先玩几个任务再调整任何设置。
- 每次任务触发一两次过热比较合理。如果每次交火都会触发,说明阈值对你来说太低了。
- 如果潜行感觉太容易,先将亚音速半径提高到 20–25 米,再考虑其他调整。
- 如果步枪潜行感觉不可能完成,将超音速半径降到 40 米,而不是禁用该功能。机制比数值更有趣。
- 冲锋枪用户应专门调整冲锋枪阈值。一把 Shingen 在远不到半秒内就能射出五发子弹。
- 手枪拔枪惩罚是本模组中最激进的默认设置。如果拔出一把被抑制的手枪感觉迟缓,先将它减半,再考虑其他调整。
- 如果你运行其他武器操控模组,请根据游戏中的实际感觉调整本模组的操控滑块。两组数值是相加的。
//////////////////////////////////////////////////////////////////////////////////////////////////
鸣谢
//////////////////////////////////////////////////////////////////////////////////////////////////
rmk1234 —— 感谢《无声消音器与飞刀》,本模组正是基于它分支。刺激过滤器、命中处理结构、侦测系统和配置架构都是他们的成果。请去支持原版模组 (https://www.nexusmods.com/cyberpunk2077/mods/4070) 并看看他们的其他作品,包括 StealthRunner、Weathermancer 和 Damage Scaling and Balance。
《武器状态》的作者 —— 感谢提供了让 2.0 版热量系统正常工作所需的逐射击挂钩。热量最初只计算命中活体目标的子弹,因为找不到可靠的逐射击事件。阅读《武器状态》如何在每次远程攻击时施加磨损,找到了正确的方法。没有复制任何代码;值得感谢的是这种方法。
psiberx —— 感谢 ArchiveXL、TweakXL 和 Codeware。
jac3km4 —— 感谢 redscript。
Cyber Engine Tweaks 和 Native Settings UI 团队。
WolvenKit 及其贡献者和维护者。
//////////////////////////////////////////////////////////////////////////////////////////////////
许可
//////////////////////////////////////////////////////////////////////////////////////////////////
根据 rmk1234 在原版模组上的许可,只要注明他们作为原始创作者,就可以发布修改版本。本分支已在上述和全文中注明。
如果你想在此基础上进一步构建,请随意——但请与任何关于本分支的内容一起,注明 rmk1234 为原始创作者,并请不要在其他地方重新上传,或将其用于任何售卖用途。
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。