本帖最后由 常规型妹抖 于 2024-6-14 23:15 编辑
AI 改修
描述
AI 改修 以舰船 AI 为核心进行了各种改进。
目前,AI 改修 最主要的两项功能是从零开始实现的自动开火 AI 和玩家舰船的自动化全方位护盾。AI 改修还允许配置玩家舰队中自动化舰船的个性。所有功能的完整描述见帖子底部。
平衡性注意
AI 改修 会在一定程度上破坏游戏平衡,因为舰船的防御 AI 并未根据更好的武器使用能力进行调整。Starsector 开发者 Alex 在英文论坛上发表过一篇文章,介绍了 AI 修改的一些事项及其对游戏平衡的影响。
此外,原版 AI 的编程倾向于使其行动与人类类似。某些 AI 的限制(如反应延迟)是特意设置的。你可以在英文论坛的相关主题中阅读更多相关内容。AI 改修并不满足这一设计目标,因此你可以期待 AI 做出完美的反应。
安装
需要 LazyLib 和 LunaLib。要安装 AI 改修,只需要单纯的放进 MOD 文件夹并启用,不需要进一步的设置,该 MOD 不会与旧存档冲突。
卸载
AI 改修可以随时停用且不会导致存档失效或受损。
制作组 作者从 DesperatePeter 的 高级武器控制(AdvancedGunneryControl)中获得了很多关于如何编写 AI 调整代码的灵感。尤其是将 AutofireAIPlugins 附加到现有战舰并保留底层原版逻辑的方法。如果需要更多可定制的武器行为,高级武器控制可以满足你的需求!
机能
AI 改修提供了从零开始实现的自动开火武器 AI,它旨在修正原版 AI 的各种缺陷。
改动只影响自动开火模式下的武器,而不影响由舰船 "手动" 控制的武器,因为 Starsector 的模组 API 会比全舰 AI 更优先访问自动射击 AI。幸运的是,有一种简单的方法可以强制武器组进入自动开火模式,并防止舰船 AI 进行 "手动" 控制。舰船 AI 已被编码为避免手动控制 PD 武器组,因此您只需在武器组中添加一种严格意义上的 PD 武器即可。请注意,基于弹药的 PD 武器(如瞬发激光或圣骑士)不会起到锁定自动开火的效果。
值得注意的是,即使不使用 AI 改修 或其他可覆盖自动开火 AI 的模组,强制武器组进入自动开火模式本身也是一种重要的 AI 强化。舰船 AI 通常会试图通过停火来节省幅能,从而赢得 "幅能对抗"。这可能会在使用某些极端构筑时造成严重的拖累,因为在这些构筑中,迅速杀敌才是最重要的——飞船会在敌人死亡时而非之前节省幅能!例如,CapnHector 在他的“用 5 艘千兆加农炮执行官摧毁 5 队秩序“的史诗战役中就使用了这种方法。您可以在英文论坛主题中阅读更多有关原版武器 AI 的信息,Starsector 开发人员 Alex 在该主题中介绍了 AI 行为的某些方面。
与原版自动开火 AI 相比,最明显的区别在于:
火神炮终于可以可靠地击落火蛇了!
原本的目标引导算法只能计算出大致的拦截点,即使是自动射击精度极高的舰船也是如此。AI 改修用改进后的算法取代了原版算法。改进后的算法通过求解二次方程来计算精确的拦截点。精确度增益机制得到了保障,因此战备状态较低的舰船在目标跟踪方面仍会遇到困难。在舰载 PD 武器跟踪针对不同友军舰船的导弹时,差异最为明显。
此外,在攻击无护盾目标时,武器的失能范围也会被考虑在内。射弹会在飞行超过其最大射程时陷入失能。失能射弹只能对护盾造成软幅能伤害,其攻击力也会迅速减弱。但它们对船体,尤其是导弹仍然足够有效。考虑到失能因素后,一些 PD 武器的有效射程最多可增加 50%,反装甲射程则可增加约 10%至 15%。 |
战舰终于不会再为避免友军火力而陷入束手束脚。恰恰相反,武器发射的子弹会擦着友军护盾的表面飞过!AI 可以承受非常严格的误差,这要归功于改进后的数学计算,它可以可靠地计算盟军的移动。但需要注意的是,这种计算方法无法预测航向变化。因此,如果你的护卫舰喜欢在大炮的弹道前跳舞,它们就会被击中。总的来说,友军误伤事件的比例会增加,但命中敌方的比例会大幅增加。 |
原版 AI 喜欢将舰船武器分配给不同的目标,导致舰船会同时与附近的所有敌人作战,但却没有摧毁任何敌人的情况。Starsector 0.96 版包含一个可以修复这种行为的 功能 bug,但已在 0.97 版中被修正了。AI 改修改进了目标选择算法,使武器更倾向于攻击舰船所面对的目标。请注意,对于自动驾驶下的舰船,真实目标与 R 锁定的目标并不相同。
同时,武器也不会像上述 bug 那样全部都集火舰船目标。PD 武器仍会优先攻击导弹,而普通武器则会在舰船目标位于射击弧或射程之外时考虑其他目标。总之,这样做的结果是火力更加集中,从而明显加快了击杀时间。 |
原版自动开火 AI 将挂载点武器瞄准远离舰船前方的敌人,从而浪费造成伤害的机会的情况并不少见。造成这种不正确行为的原因有两个。原版 AI 可能只是选择了偏离轴线的敌人作为目标,又或者它可能瞄准了正确的敌人,但命令武器过早转向。在后一种情况下,当飞船向敌人旋转时,武器最终会转向过度。
修改后的 AI 会预测敌人的位置,并在飞船旋转到敌人面前之前就预先将挂载点武器瞄准正确的角度。所有面向前方的挂载点都会受到此更改的影响,但仅限于 AI 驾驶的飞船。 |
AI 改修的自动开火与原版 AI 相比还引入了许多较小的改动,其中一些可能并非有意为之。排名不分先后:
- USE_LESS_VS_SHIELDS 武器(原版中的钻探冲击波和 IR 自动长矛)在弹匣容量超过 80%时不会对护盾开火;原版 AI 这样做是为了避免 "浪费" 充能数。
- 相位中的相位舰只会被光束和 PD 武器作为攻击目标,不过仅限于非弹药型和连发武器
- 只有当范围内没有更大的敌舰时,非 PD 武器才会攻击战斗机
- 即使是像空间站这样的模块化舰船,也能正确预测对护盾的命中率,从而改善了只攻击护盾或会避开护盾的武器的发挥
|
|
舰队凝聚力 AI 解决了原版 AI 中最令人头疼的问题之一:巡洋舰和主力舰离开主战线,独自追逐护卫舰和驱逐舰直至地图边缘。启用凝聚力 AI 后,舰队会设法聚集在一起,以维持战斗力的集中。
该功能可通过 LunaLib 设置禁用。
更多细节:
- 舰队凝聚力 AI 只适用于玩家舰队。敌方舰队则保持原有的舰队指挥 AI。
- 舰队凝聚力 AI 在下令全军突击时和发出至少一个 "回避"(AVOID)命令时失效。
|
原版 AI 在控制全方位护盾方面是出了名的好,往往比玩家自己还要出色。
现在,有了 AI 改修的功能,玩家可以手动驾驶飞船,而全方位护盾则由 AI 控制。不过需要注意的是。根据游戏测试者的说法,该功能可能有点过于强大。不过,正如测试者 snark 所说,"它还没有强大到彻底 OP 的地步"。
自动全方位护盾默认使用左 Ctrl 键切换。键位绑定可通过 LunaLib 设置进行配置。 AI 控制时,飞船周围会显示一个圆形指示器。玩家可通过鼠标右键覆盖 AI 并强制解除护盾。
|
原版 AI 会强制玩家舰队中的所有自动化舰船表现出鲁莽人格,无论是否配置有 AI 核心舰长,这大概是为了保持游戏平衡。这导致自动化舰船一头冲进敌方死亡之球,以最令人沮丧的方式自取灭亡。AI 改修允许配置自动化舰船的个性。配置通过 LunaLib 设置进行,该效果是全局性的,会影响玩家舰队中的所有自动化舰船。如果没有配置特定的个性,自动舰船将默认为激进人格,而非普通的鲁莽人格。 |
"我遇到的最大的问题就是 AI 10 次里有 9 次都会浪费掉不败的战术系统" - niceman121454 于 Discord.
有了 AI 改修,不会再这样了。
原版激光雷达阵列 AI 有几个缺陷。最明显的就是在激光雷达启动时切换目标,这在 势力差异化 博文中有所描述: "
然而,这也意味着不同模块有时可能会做出相互冲突的决定。例如,激光雷达阵列 AI 可能会决定激活它,而主控 AI 则认为现在正是让飞船远离其当前目标并攻击另一艘的好时机。“博文描述了在原版中采用的解决方案,但似乎并不奏效。
其他不足之处还包括后退到距离攻击目标太远,使其失去武器射程,以及幅能管理不善。
AI 改修 修复了上述所有问题,并将 不败-级 变成了一艘真正的超强——甚至显得不平衡——的战舰。 |
该 MOD 改变了 AI 控制的舰船使用高能聚焦系统的方式。AI 将不会再因为有战机或导弹在 PD 光束的射程内,或因为引力子光束只是勉强能够到敌舰而启动高能聚焦系统。宝贵的 HEF 充能将保留给大型火炮使用。最佳使用案例当然是强大的执行官-级。配备两门同时开火的千兆加农炮和掌握了系统专精的军官,几乎每一发炮弹都能得到高能聚焦的加持!
船体插件仍在开发中,新的 HEF AI 所使用的逻辑还不够完善。最糟糕的使用情况是,一艘舰船依赖不同的能量武器分别造成护盾伤害和装甲/船体伤害。目前,正如 CapnHector 所观察到的那样,修改后的 AI 很难适当地确定不同武器组的优先级。
细节
修改后的 AI 使用的逻辑非常简单。触发 HEF 直接与发射飞船上安装的最大能量武器挂钩。这就意味着,一艘至少有一具大型武器的舰船在只发射中型或小型武器时,永远不会启动 HEF。此外:
- 向战斗机和导弹开火不会触发 HEF
- 向相位中的飞船开火不会触发 HEF
- 向护盾发射反装甲武器(具有高爆伤害或具有 USE_LESS_VS_SHIELDS 标记的武器)不会触发 HEF |
AI 改修更改了某些武器是否攻击护盾还是暴露的装甲和船体的方式。
这些更改适用于光束武器和针刺家族的火炮:
可改变飞船 AI 使用几种光束武器方式的船体插件。游戏内说明:
"一套软件修改和军官培训程序,旨在修改某些光束武器的开火行为。根据协议,修改后的武器被禁止向护盾开火。这样就能在护盾关闭时可靠地击中暴露的船体结构,同时降低幅能负荷。受影响的武器包括 速子长矛 和 相位长矛 等爆发光束,以及 高能量激光 等高爆光束。该协议仅对 自动开火 模式下的武器有效,不影响点防御光束。
详细信息
通过添加 USE_LESS_VS_SHIELDS 标签,船体插件程序可避免指定的光束武器向护盾开火。此外,这些武器还不会向战机开火。
哪些武器会受到船体模块的影响,需要在 weapon_data.scv 文件中进行定义。要使武器受光束武器终结打击协议影响,该武器必须具有 "aitweaks_finisher_beam" 标签。当然,它还必须是光束武器。 |
一个简单的修改,避免自动开火 AI 让轻型针刺、重型针刺和风暴针刺向无护盾目标开火。这一改动可避免针刺武器在暴露的船体上浪费弹药,从而大大提高针刺的反护盾能力。所有舰船都会受到这一改动的影响,无需对舰体进行修改。
weapon_data.scv 文件中定义了哪些武器受改进后的 针刺 AI 影响。武器需要具有 "aitweaks_anti_shield" 标签才能受此影响。 |
|
重新设计的舰船 AI,用自定义机制替换了原版逻辑中许多的重要部分。这项工作仍在进行中,而且可能会持续很长一段时间。目前,自定义 AI 仅对 低温休眠舰 遭遇中的 守护者 起效。守护者 也得到了一个更强大的配装,能够提供额外的挑战。 |
github上的公共许可
|
下载:
AITweaks 0.96.zip
(305.36 KB, 下载次数: 2121)
AITweaks 0.97.zip
(305.35 KB, 下载次数: 1506)
|