【055大驱全攻略】How to 自甴航行?导弹拦截率与编队走位策略
精华修改于04/23833 浏览研究与脑洞

先从游戏里055舰的一些冷知识谈起
055大驱的YJ-18导弹借用了煎包的攻击机制,相当于投弹后自动消失的煎包。机组自带水面视野,投弹会从船头方向切入,但不会随目标舰船转向而调整切入方向。从船头方向切入的命中率高于侧舷切入。
投弹完成后导弹机组消失,然而空中视野会延迟0.5s左右消失,在投弹完成瞬间快速按水机面板的攻击键(不是起飞键),可以让下一组导弹继续飞向目标舰船并点亮。如此反复,对面只要亮过一次,就能无视野发射导弹。对面055是驱老嗨时,尽量避免被点亮,不要主动开炮。
目前的水机面板无法让导弹切换目标,解决方法是切换到炮击面板,再切回水机面板,就会重新锁定距离准心最近的目标。
055的防空炮开火不会像其他船一样导致全图点亮,而是对水面隐蔽施加2km的惩罚,也就是原先满隐蔽是7.52km,现在变成了9.52km。所以大部分情况下055不需要关闭防空炮避免全图点亮,而是应当积极地用防空火力掩护队友。
如你所见,作为一篇“全攻略”,本帖长度较长,且一半多是较为枯燥的数学建模和实验结果部分,因此我们先将结论和一些机制的介绍放在开头,有兴趣探究游戏机制的读者可以选择读完。


一、先说结论 ❤
- 一定要带扩圈技能,一定要带扩圈技能,一定要带扩圈技能。不带扩圈技能会让你的防空生效时间降低约1.63s,而YJ-18对满配055的突防时间普遍在10s上下,导致无技能时外圈正好来不及第二次开火(也许是ch造船时故意为之),在横腰接敌时,受击期望是1.11颗,而带扩圈则会只有0.45颗,超过两倍的差距。
- 用船舷对着来袭的导弹,能让导弹多绕小半圈,使你击落导弹数的期望相比卖头提升约76.96%(仅限于双扩圈12.5km的情况)。
- 即使面对一组导弹,两艘055编队也并非无敌,受击期望为0.37枚导弹,三艘055编队受击期望为0.05枚导弹。侧舷接敌时,两艘055编队受击期望等于0.07枚导弹。
- 055护航下的003(闽)也不能高枕无忧,单组2枚YJ-18,约有0.60枚能够突破编队防空命中航母。


二、前置知识
1. 游戏内防空机制
浅析防空机制:防空圈单次判定击落概率与累积击落概率对时间的表达式及击落时间期望[已修正] - 战舰联盟研究与脑洞 - TapTap 战舰联盟论坛
“Mathematics and Physics rest beyond the boundaries of Loong’ s magic” ——Pythagoras · Akizuki继上一个帖子...

https://www.taptap.cn/moment/15217940949372769

五年前,我完成了你游第一篇较完整的概率防空机制帖,针对公式、开火周期等私戳前任策划此生做了一一确认。不过因为还在读高中,当时只在TI-Nspire上粗略做了单舰单架编队内圈的数学建模。如今055大驱已经上线,你游魔法的概率防空肉眼可见对单挑场景有了决定性影响(秋月阿姨用100mm石子击落反舰导弹🖐🏻😭🖐🏻)。为了写出这篇攻略并严谨给出编队、走位策略的期望拦截率,我设计了一种通用的多对多防空仿真框架。
众所周知,你游的防空机制不同于《战舰世界》的机制,而是如下概率击落模型:
三圈独立判定:不同船的外圈(5秒周期)、中圈(2秒周期)、内圈(0.5秒周期)各自独立索敌和判定。一艘有三个防空圈的船,最多可以同时攻击三个机组。
概率击落:每次防空圈开火时,根据该次射击造成的伤害和飞机的当前剩余血量计算一个条件击落概率。若未击落,飞机血量扣除该次射击造成的伤害。
伤害计算:单次射击伤害 = 对应防空圈秒伤 (DPS) × 射击周期。
序贯目标:各圈优先锁定最早进入范围的敌机机组,直到整个机组被击落或离开范围,才会切换到下一个距离最近的机组。切换机组目标后需要等待一个射击周期才会再次触发概率击落。机组内的飞机按顺序受到攻击,即机组内只会有一架飞机残血。飞离防空圈不会让这架残血的飞机恢复血量。机组内飞机被击落不会触发目标切换。例如:两架飞机A和B组成的机组,A被中圈防空击落,此时距离外圈上次射击过去了4秒,则1秒之后,外圈会直接开火攻击B。
2. 游戏内航速比例尺
【游戏机制挖掘】舰萌中的比例尺 - 战舰联盟综合讨论 - TapTap 战舰联盟论坛
众所周知,游戏中的尺寸与时间均与现实中有差距(否则没人愿意花几个小时用手机打海战),具体的比例是多少呢?首先,之前流传的一些版本(包括可能从此生那里传出来的版本)是不准确的,也许是想当然地认为你游和w...

https://www.taptap.cn/moment/277788932547021756

屑矢矧的帖子研究的很详细了,我们套用即可。 本仿真框架在计算轨迹时,将输入的现实航速(节,kt)转换为游戏内地图单位下的速度(km/s),应用5倍的速度比例因子,因此YJ-18游戏内500kt的速度,换算到游戏地图中约为1.2861 km/s。通过鱼雷航速掐表交叉验证,60节的鱼雷需要约6.5秒走完1km。


三、设计一种通用的游戏内多对多防空仿真框架
本仿真框架旨在模拟单个攻击机编队对抗一个或多个(类型可不同)位于不同位置的防空舰船的场景。我们不妨将其拆分为两个独立的子问题:机组轨迹与击落概率。只要确定了机组轨迹,并保留时间采样点与轨迹的对应关系,则后者即可在每个时间点上应用贝叶斯公式计算出来。
2025.4.21更新:还是干脆把多机组支持做了。多机组的情况下,「三、3」介绍的解析法求期望是超指数复杂度(指数是防空圈总数,底数是机组数量+1),因为每个机组受到的秒伤与其余机组状态间存在循坏依赖,会带来状态空间爆炸的问题。呆呆现在实际是用蒙特卡洛法来求多机组各个时间点幸存数量的PMF,单步复杂度关于舰船数量和机组数量都是线性的。
1. 你游的煎包导航机制
我们通过录屏测量得到了接近状态下的导航点与盘旋逻辑,并建立了一个有穷状态机。


状态机图示

盯帧法可以观察出,游戏内YJ-18回转半径约0.25km,导航点距船首约1.0km
2. 四阶龙格库塔法求机组轨迹常微分方程的数值解
投弹和机组寻路都与舰船尺寸无关,因此不妨将舰船简化为一个点。以该点为原点,舰船航向作为x轴正方向,建立坐标系(参考系相对舰船始终静止,舰船相对海面的速度v_sh与机组相对海面的速度v_ac相减,即是机组在新参考系中的速度)。显然,机组运动轨迹是一条通过原点的曲线,并可以通过常微分方程组定义。我们采用四阶龙格库塔法 (RK4) 进行数值积分,并在每一个时间步保存时间与当前轨迹坐标的键值对。



我在仿真时使用的是固定的时间步长0.05s,实验结果与0.01s的结果几乎没有差别。
你也许会问,轨迹在服务器端的解算难道不是单阶的吗,为什么对离散过程应用RK4这种多阶算法?实际上用哪种迭代算法,得到的结果差距非常小,这里只是为了在不知道服务器端轨迹算法的情况下,选一个尽量平滑的轨迹解法。

图示:舰船满速航行,煎包从9点钟方向来袭时的投弹轨迹

2025.4.21更新:四组导弹对航母战斗群的攻击
3. 沿时间片计算幸存飞机数量对时间的函数(适用于单机组单舰船情况)



4. 蒙特卡洛法求末端飞机数量的PMF
如上文提到,上一节描述的解析方法仅适用于单个攻击编队对抗位于同一点的组合防空火力。对于多编队、多点防御的复杂场景,我们采用下述蒙特卡洛方法。
1. 状态变量(单次运行内)

2. 单步仿真逻辑



按照上述单步逻辑,每次仿真将运行到最后一个机组抵达坐标系原点所代表的舰船时结束。我们在完成了10000次仿真后,在每个时间步上对所有仿真结果取平均,即可得到幸存数的时间序列。

四、不同走位模式下的导弹拦截率
注:本章节中全部实验数据,是在055安装了扩圈插件,并且枪炮长具有100%扩圈技能的条件下测得。

不同走位模式下的导弹接近轨迹,每一位置的幸存导弹期望映射为颜色

不同走位模式下的命中期望曲线与概率质量函数PMF

命中期望、导弹进入防空圈到命中所需飞行时长、命中数为0, 1, 2的概率


五、编队防空下的导弹拦截率
注:本章节中全部实验数据,是在舰船安装了扩圈插件,并且枪炮长具有100%扩圈技能的条件下测得。编队位置参考右侧轨迹图,编队航速设置为30节。

实验所用舰船数据一览
1. 2艘055(南)编队 vs 1组YJ-18

单组命中期望0.37枚
2. 2艘055(南)编队 vs 2组YJ-18

第一组命中期望0.36枚,第二组命中期望1.34枚
3. 三艘055(南)编队 vs 1组YJ-18

单组命中期望0.06枚
4. 055(南)与956(杭)编队 vs 1组YJ-18

单组命中期望0.61枚
5. 001(辽)与055(南)编队 vs 1组YJ-18

单组命中期望0.72枚
6. 003(闽)与055(南)编队 vs 1组YJ-18

单组命中期望0.60枚
7. 003(闽)与055(南)x2、956(杭)x2组成战斗群 vs 6组YJ-18



