AlwaysShield - AI始终持盾

AlwaysShield - AI始终持盾

将任何携带防弹盾的SWAT AI转变为专职盾牌操作员。如果他们拥有盾牌,他们会在出生时取出并全程任务中保持装备。请注意,持有盾牌的AI默认仍会逮捕嫌疑人和收集证据。需要UE4SS。

[heading][size=5]描述[/size][/heading]
AlwaysShield 让装备防弹盾的 SWAT AI 警官表现得像专职盾牌手。
如果他们持有盾牌,他们会在出生时取出盾牌,并在整个任务剩余时间内保持装备。他们将保持装备,而不是在清理房间、完成交互或切换回主武器后反复收起盾牌。
请注意,持有盾牌的 AI 默认仍会尝试逮捕嫌疑人和收集证据。
我建议使用非常棒的 [url=https://www.nexusmods.com/readyornot/mods/4450]"Disable Enable AI SWATs arresting and collecting"[/url] 模组,让盾牌手专注于自己的职责。

1.1 版本添加了游戏内切换和原生 HUD 反馈。

[size=4][b]有意的取舍[/b][/size]

当脚本启用时,AI 盾牌手可能无法执行其他需要收起盾牌的动作。这个脚本是有意严格的。

在发布关于任何“动画 bug”或“盾牌手不执行命令”的帖子之前,请理解这都是有意设计的。
这个模组的目的是拥有一个专职盾牌警官,他除了携带盾牌和提供掩护之外什么都不做。你不应该向他要求其他任何东西,因此给他任何手榴弹 / 门楔或其他工具都是没有意义的。再次强调,这是设计使然。

[heading][size=5]快捷键[/size][/heading]
按下
[code] 小键盘 [/code]在任务期间的任何时候启用或禁用 AlwaysShield。
当[b]启用[/b]时,模组会强制执行专职盾牌手行为。
当[b]禁用[/b]时,模组会停止干扰盾牌警官,并让他恢复正常原版 AI 行为。
游戏启动时,模组[b]默认启用[/b]。
禁用模组不会强制收起盾牌。它只是将控制权交还给原版 AI,由其正常决定何时切换装备。

[size=4][b]更改快捷键[/b][/size]

如果你想使用另一个按键,请打开:
[code]AlwaysShield\scripts\main.lua[/code]并更改文件顶部附近的这一行:
[code]local TOGGLE_KEY = Key.MULTIPLY -- Numpad [/code]将
[code]Key.MULTIPLY[/code]替换为你想要使用的 UE4SS 按键,保存文件,然后重启游戏。
例如:
[code]local TOGGLE_KEY = Key.F8[/code][heading]
[size=5] 视觉反馈[/size][/heading]
每次启用或禁用 AlwaysShield 时,都会直接通过《严阵以待》的原生 HUD 显示通知。
你会看到如下消息:
[code]AlwaysShield: ENABLED (shield-only)[/code]或:
[code]AlwaysShield: DISABLED (vanilla AI)[/code]这会立即确认当前状态,无需打开 UE4SS 控制台或检查任何日志。

[heading][size=5]安装说明[/size][/heading]
[list=1]
[
]为《严阵以待》安装 [b]UE4SS[/b]。[/
]
[]从压缩包中解压
[code]AlwaysShield[/code]文件夹。[/
]
[]将其放入:
[code]ReadyOrNot\Binaries\Win64\Mods\[/code]最终结构应如下所示:
[code]ReadyOrNot\Binaries\Win64\Mods\AlwaysShield\scripts\main.lua[/code][/
]
[]确保随附的
[code]enabled.txt[/code]保留在
[code]AlwaysShield[/code]文件夹内。[/
]
[]正常启动游戏。[/]
[/list]无需额外配置。

[heading][size=5]主要功能[/size][/heading]
[list]
[]自动检测携带防弹盾的友方 SWAT AI 警官。[/]
[]当警官出生时未装备盾牌时,自动部署盾牌。[/]
[]一旦部署后,永久保持盾牌装备。[/]
[]阻止 AI 切换回其主武器。[/]
[]防止清理房间后不必要的盾牌收起/取出动画。[/]
[]仅影响携带防弹盾的 AI 警官。[/]
[]其他 SWAT AI 队友继续正常行动。[/]
[]轻量级 Lua 实现,不修改游戏资源。[/]
[]模块化设计,不太可能与其他模组冲突。[/]
[/list]预期行为是让盾牌警官专门作为团队的防护成员,而不是执行次要任务。

[heading][size=5]要求[/size][/heading]
[b]需要 UE4SS。[/b]
该模组的开发和测试环境为:
[list]
[]《严阵以待》[/]
[]游戏的 Unreal Engine 5.3 版本[/]
[]UE4SS v3.0.1 Beta[/]
[/list]不需要其他模组。

[size=5][b]兼容性[/b][/size]
此版本不会修改 AI 行为树、武器伤害、生命值、嫌疑人 AI 或无关的游戏玩法数值。

[size=5][b]致谢
[/b][/size][url=https://www.nexusmods.com/profile/LINHOUDOU]LINHOUDOU[/url] 发现并帮助解决了在 v1.2 中修复的缓存 bug

[size=5][b]更新日志[/b][/size]
[size=4][b]v1.2[/b][/size]
- 修复了 AlwaysShield 有时在一个任务中有效,但在不重启游戏的情况下
加载另一个任务后失效的问题。
- 移除了对一个永久缓存 SWATManager 引用的依赖。
- 添加了周期性的 SWATManager 发现机制,因此即使旧管理器在等待 Unreal 垃圾
回收期间仍保持 IsValid(),新创建的任务/世界管理器也会被获取。
- 监视器现在会处理所有当前有效的 SWATManager 名单,使过期管理器对象无害,
而不是让它们阻止发现新团队。
- 使用小键盘 * 重新启用 AlwaysShield 时,现在会在应用盾牌强制执行前
强制立即刷新管理器。

[size=4][b]v1.1[/b][/size]
- 添加游戏内切换和原生 HUD 反馈。