如果你看到本段文字,说明该页面未正常加载全局JS,部分功能将无法使用,请点击 刷新 重新加载页面。
如果打开页面显示缩略图创建出错,请点击刷新或页面右上WIKI功能中的刷新按钮清除页面缓存并刷新,如果还有问题,请多尝试几次。
全站通知:

武器索敌详述

阅读

    

2023-06-09更新

    

最新编辑:Carrier5by5

阅读:

  

更新日期:2023-06-09

  

最新编辑:Carrier5by5

来自碧蓝航线WIKI_BWIKI_哔哩哔哩
跳到导航 跳到搜索
页面贡献者 :
Carrier5by5
大老师伊格
井号5467
个人认证:bilibili 知名游戏UP主
負けん気な瞳
燃烧的猪皮AnG
指挥官大人~欢迎来到碧蓝航线WIKI,您可以通过百度搜索“碧蓝航线WIKI 碧蓝海事局”直达本WIKI!如果是第一次来访的话,按“Ctrl+D”可以收藏WIKI随时查看更新哦~如果觉得WIKI好玩的话,记得安利给更多人哟ヾ(o◕∀◕)ノ。
,请注意时效性


概述

本部分内容更适合对硬核研究或游戏设计方案感兴趣的玩家进行浏览。一般玩家只需看相关大佬的具体攻略即可。

武器整个攻击流程中,有许多重要的步骤,包括武器的索敌、武器的瞄准和子弹的追踪。它们都涉及目标的位置坐标。

武器的索敌:按照一定方式选取要攻击的目标。

武器的瞄准:获取并记录目标的位置,后续的开火环节会以记录的位置作为射击点。

子弹的追踪:部分子弹能够在射出后,根据目标的位置,调整子弹的运动方向。

武器索敌的流程

总结

一般情况下,对海武器的索敌,首先会无视处于隐蔽状态的主力舰船在水下的潜艇,然后按照检测范围类型进行筛选,最后选择距离最近的敌人作为目标。

一般武器

对于一般武器,索敌流程如下:

  1. (一)将所有敌方在场舰船单位放入索敌名单,从索敌名单中先剔除处于隐蔽状态的主力舰船
    • 这一步骤主要用于PVE中的敌方,确保敌方不会攻击己方处于隐蔽状态的主力舰船。
    • 这一步骤也用于PVP中,则是确保敌方和己方都不会攻击对方处于隐蔽状态的主力舰船。
  2. (二)根据武器的检测条件进一步筛选
    • 大部分武器的检测条件为水面。反潜武器的检测条件为水下
    • 如果检测条件为水面,则剔除在水下的潜艇
    • 如果检测条件为水下,则首先剔除水面的舰船。然后,根据潜艇是否被侦测到,来决定是否剔除下潜中的潜艇
      • 如果潜艇被反潜声呐侦测到,则不剔除。
      • 如果潜艇没被反潜声呐侦测到,则剔除
  3. (三)根据武器的检测范围类型进一步筛选,得到一个临时待选表。
    • 大部分武器的检测范围类型为扇形,航空炸弹、航空集束雷、航空火箭弹等武器的检测范围类型为矩形
    • 由于这部分内容较多,单独拆出来,放在下面“武器的检测范围类型”章节中介绍
  4. (四)根据相关逻辑,在临时待选表筛选出瞄准目标,完成索敌。
    • 由于这部分内容较多,单独拆出来,放在下面“瞄准目标的最终确定”章节中介绍。


防空武器

对于防空武器,索敌流程如下:仅是将一般武器第1步的索敌名单换成所有敌方在场飞机单位。

  1. 其他步骤与一般武器的相同。
  2. 第1步则是将所有敌方在场飞机单位放入索敌名单,从索敌名单中剔除处于不可被攻击状态的飞机
    • 对于大部分飞机,在略超出战斗场景的一定范围外时,就处于不可被攻击状态。

后排跨射武器(战列炮、后排导弹)

对于后排跨射武器(战列炮、后排导弹),第1炮索敌流程如下:

  1. 其他步骤与一般武器的相同
  2. 第3步后多加1步,根据是否失去夜战隐蔽单位权重来筛选:
    • 对于主线14章,优先在失去夜战隐蔽的敌人中进行筛选,选择其中权重最高的敌人
      • 如果多个敌人都是权重最高的单位,那一起纳入,留到第4步再进行处理。
    • 对于非主线14章,优先选择权重最高的敌人
      • 如果多个敌人都是权重最高的单位,那一起纳入,留到第4步再进行处理。


其他补充:

  1. 自律模式下,在系统自动按下跨射按钮时,战列武器就开始进行索敌行为,比开炮行为早很多。
    • 也就是第1炮先索敌,再进入转镜头和时停,最后才到开炮。
  2. 战列炮第1炮后的攻击,靠隐藏技能来引导
    • 系统通过隐藏技能使战列继续跨射,其间隔时间为1秒
      • 即第1炮过1秒后,开第2炮。第2炮过1秒后,开第3炮。
    • 隐藏技能中,后续跨射的目标选择方式为随机选择
    • 随机选择机制的具体内容,请看下方对技能武器的讨论

自动发射导弹武器(前排导弹)

对于自动发射导弹武器,索敌流程如下:

  1. 其他步骤与一般武器的相同
  2. 第4步换成优先选择权重最高的单位。
    • 如果多个敌人都是权重最高的单位,优先选择前面出场的敌人。

手操鱼雷(前排鱼雷)

对于手操鱼雷武器,索敌流程如下:

  1. 其他步骤与一般武器的相同
  2. 第4步换成优先选择权重最高的单位。
    • 如果多个敌人都是权重最高的单位,在这些敌人中随机选择一个

技能武器

对于技能武器,索敌流程与非武器技能选择目标的流程类似,即按照技能指定的单种或多种目标选择方式,不断对所有敌方在场单位进行筛选,选出满足条件的目标。

  • 如果目标选择方式为“无”,则不选择目标。无目标情况下,对武器瞄准的影响请参阅下方的“武器的瞄准”章节

下面介绍常见的技能武器索敌方式:

    • 即不选择目标
  1. 选择非隐蔽单位
    • 先将场上所有存活的敌人纳入索敌名单
    • 剔除不小于敌人常规活动区域右边界的敌人
      • 对于大部分PVE地图,右边界对应 x = 20 的直线
    • 剔除处于隐蔽状态的主力舰船
      • 这一步骤主要用于PVP中,确保敌方和己方都不会攻击对方处于隐蔽状态的主力舰船。
    • 剔除在水下的潜艇
    • 索敌名单中剩余敌人则用于后面以下几种方式
      • 随机抽取
      • 权重最高优先
      • 距离最近优先
      • 距离最远优先
  2. 随机抽取
    • 按照选择非隐蔽单位方式,选出索敌名单
    • 从中随机抽取1名敌人,作为目标
  3. 权重优先
    • 按照选择非隐蔽单位方式,选出索敌名单
    • 从中选取权重最高的敌人
      • 如果只有一名敌人具有最高权重,则该敌人作为目标
      • 如果有多名敌人具有最高权重,则从中随机抽取1名敌人,作为目标
  4. 距离最近优先
    • 按照选择非隐蔽单位方式,选出索敌名单
    • 从中选取距离最近的敌人
    • 根据情况,进行不同处理
      • 如果只有一名敌人具有最近距离,则该敌人作为目标
      • 如果有多名敌人具有最近距离,则从中选择前面出场的敌人,作为目标
  5. 距离最远优先
    • 按照选择非隐蔽单位方式,选出索敌名单
    • 从中选取距离最远的敌人
    • 根据情况,进行不同处理
      • 如果只有一名敌人具有最远距离,则该敌人作为目标
      • 如果有多名敌人具有最远距离,则从中选择前面出场的敌人,作为目标

武器的检测范围类型

扇形

索敌流程的总结

对于检测范围类型为扇形的武器,索敌流程如下:

  1. 将超出索敌范围(这里侧重海平面上的距离)的敌人,从索敌名单中剔除
    • 因为Unity游戏引擎的坐标系是以y轴正方向为正上方,所以游戏内的海平面对应的XZ平面。
  2. 将超出索敌角度(这里侧重海平面上的角度)的敌人,从索敌名单中剔除。
    • 因为Unity游戏引擎的坐标系是以y轴正方向为正上方,所以游戏内的海平面对应的XZ平面。

索敌流程

对于检测范围类型为扇形的武器,索敌流程如下:

  1. 将超出索敌范围(这里侧重海平面上的距离)的敌人,从索敌名单中剔除
    • 因为Unity游戏引擎的坐标系是以y轴正方向为正上方,所以游戏内的海平面对应的XZ平面。
    • 对应敌人的坐标为(x,y,z), 武器持有者的坐标为(a,b,c),对应敌人与武器持有者的距离为d
      • 求出 d = sqrt[(x - a)^2 + (z - c)^2]。(sqrt[...]表示开平方函数)
    • 根据 d 做判断
      • 如果 最小范围 ≤ d ≤ 最大范围,则判定该敌人在索敌范围内,在名单中保留该敌人。
      • 如果 d < 最小范围d > 最大范围,则判定该敌人超出索敌范围,从名单中剔除该敌人。
  2. 将超出索敌角度(这里侧重海平面上的角度)的敌人,从索敌名单中剔除。
    • 因为Unity游戏引擎的坐标系是以y轴正方向为正上方,所以游戏内的海平面对应的XZ平面。
    • 对应敌人的坐标为(x,y,z), 武器持有者的坐标为(a,b,c),武器持有者指向对应敌人的向量为m,x轴正方向的向量为n
      • 求出m和n的向量夹角θ,θ = arctan[(z - c) / (x - a)]
    • 武器的索敌角度为α
      • 求出最小角度 = -α / 2,最大角度 = α / 2
    • 根据 θ 做判断
      • 如果 最小角度 ≤ θ ≤ 最大角度,则判定该敌人在索敌角度内,在名单中保留该敌人。
      • 如果 θ < 最小角度θ > 最大角度,则判定该敌人超出索敌角度,从名单中剔除该敌人。

部分武器的索敌参数

舰载机的平行雷也采用扇形检测机制,但装备界面中没有列举出相关数据。这里就补充一下。

  • 武器相关数据:
    • 2 x 机载鱼雷-通用的索敌范围为75,索敌角度为20。
    • 3 x 机载鱼雷-通用的索敌范围为75,索敌角度为24。
    • 4 x 机载鱼雷-通用的索敌范围为75,索敌角度为28。

矩形

索敌流程的总结

对于检测范围类型为矩形的武器,索敌流程如下:

  1. 利用之前的索敌名单,生成两个子名单,然后取它们的交集作为结果。
  2. 在索敌名单中,对超出索敌范围(这里侧重x轴方向上的距离)的敌人,从索敌名单中剔除,生成子名单1
  3. 在索敌名单中,选出指定范围内权重最高的敌人,并从索敌名单中剔除其他敌人,生成子名单2
    • 如果多个敌人都是权重最高的单位,这些敌人都保留
  4. 取两个子名单的交集作为结果。
    • 如果两个子名单不存在交集,则结果为,即没有目标。

索敌流程

对于检测范围类型为矩形的武器,索敌流程如下:

  1. 利用之前的索敌名单,生成两个子名单,然后取它们的交集作为结果。
  2. 在索敌名单中,对超出索敌范围(这里侧重x轴方向上的距离)的敌人,从索敌名单中剔除,生成子名单1
    • 武器持有者与敌人的横向坐标差为d
      • 求出d = (目标距离的x轴坐标 - 武器持有者的x轴坐标) * 武器持有者的朝向
      • 对于己方,武器持有者的朝向 = 1。对于敌方,武器持有者的朝向 = -1
    • 前向范围为F (F必大于0),后向范围为B
    • 根据 d 做判断
      • 如果 B < 0,若 |B| ≤ d ≤ F,则判定该敌人在索敌范围内,在名单中保留该敌人。
        • 否则,判定该敌人超出索敌范围,从名单中剔除该敌人。
      • 如果 B ≥ 0,若 0 < d ≤ F(d > 0时) 或 -B < d < 0(d < 0时),则判定该敌人在索敌范围内,在名单中保留该敌人。
        • 否则,判定该敌人超出索敌范围,从名单中剔除该敌人。
  3. 在索敌名单中,筛选出指定范围内权重最高的敌人,并从索敌名单中剔除其他敌人,生成子名单2
    • 先计算出分界线,分界线 L = 武器持有者的x轴坐标 + B * 武器持有者的朝向 * (-1)
      • 对于己方,武器持有者的朝向 = 1。对于敌方,武器持有者的朝向 = -1
    • 然后,根据武器持有者的朝向和分界线,筛选敌人
      • 如果武器持有者的朝向 = 1(即己方),选出 L ≤ 目标距离的x轴坐标 的敌人,剔除其他敌人
      • 如果武器持有者的朝向 = -1(即敌方),选出 目标距离的x轴坐标 ≤ L 的敌人,剔除其他敌人
    • 接着,选出权重最高的敌人
      • 如果多个敌人都是权重最高的单位,这些敌人都保留
  4. 取两个子名单的交集作为结果。
    • 如果两个子名单不存在交集,则结果为,即没有目标。

部分武器的索敌参数

下表中将用到武器持有者与敌人的横向坐标差,用d表示,计算公式为:d = (目标距离的x轴坐标 - 武器持有者的x轴坐标) * 武器持有者的朝向

  • 对于己方,武器持有者的朝向 = 1。
  • 对于敌方,武器持有者的朝向 = -1

鱼雷机的集束雷

  • Ju87 D-4鱼雷机释放 3 x 机载鱼雷-铁血 时,有两颗雷会比投弹点向前6个单位。这个属于Ju87 D-4鱼雷机独有的弹幕样式机制,与矩形检测无关。
武器名称 索敌范围
机载鱼雷-重樱 10 ≤ d ≤ 25
机载鱼雷-铁血 10 ≤ d ≤ 25


战斗机和轰炸机的航空炸弹

武器名称 索敌范围
100lb 炸弹 0 < d ≤ 25 和 -25 < d < 0
500lb 炸弹 0 < d ≤ 22 和 -22 < d < 0
1000lb 炸弹 0 < d ≤ 19 和 -19 < d < 0
1600lb 炸弹 0 < d ≤ 16 和 -16 < d < 0
2000lb 炸弹 0 < d ≤ 13 和 -13 < d < 0
1 x 1600lb 穿甲炸弹 [梭鱼(831中队)使用] 0 < d ≤ 16 和 -16 < d < 0
3 x 800kg 穿甲炸弹 [试作舰载型天雷使用] 0 < d ≤ 16 和 -16 < d < 0


战斗机的火箭弹

  • 4 x 穿甲火箭弹的索敌范围为 10 ≤ d ≤ 45。

反潜机的空投深弹

武器名称 索敌范围
空投深弹-范围up 0 < d ≤ 25 和 -25 < d < 0
空投深弹-标准 0 < d ≤ 22 和 -22 < d < 0


部分技能

  • 这里仅列出一部分,其他技能看需要再加上。
舰船名称 技能武器的名称 索敌范围 备注
皇家方舟 技能鱼雷 0 < d ≤ 35
大凤(μ兵装) 3 x 机载鱼雷-大凤μ 10 ≤ d ≤ 25
光辉(μ兵装) 旋转星星子弹 x9 10 ≤ d ≤ 45
提康德罗加(卡莉永) 提康德罗加火箭弹 x6 10 ≤ d ≤ 45
奥古斯特 奥古斯特AP火箭弹 x 4 15 ≤ d ≤ 50
白龙(鹫) 1 x 天罚落雷 0 < d ≤ 16 和 -16 < d < 0


瞄准目标的最终确定

最后的筛选流程:

  1. (1)系统查看武器持有者的标记筛选表是否为
    • 武器持有者指舰船或舰载机。
    • 如果标记筛选表为空,则进入下一大环节。
    • 如果标记筛选表不为空,则根据一定规则选择标记筛选表的标记,来查找场上是否存在具有对应标记的单位。
      • (a)系统会按添加顺序,遍历标记筛选表,选择标记筛选表中权重最高的标记
      • 如果存在两个权重相同的标记,则选择前面加入标记筛选表里的标记。
        • 举一个例子,如果有一个皇家战列的标记筛选表,先添加了厌战改集火标记,再添加了伊丽莎白女王META集火标记,则该战列会选择厌战改集火标记。
        • 再举一个例子,如果有一个皇家战列的标记筛选表,先添加了伊丽莎白女王META集火标记,再添加了厌战改集火标记,则该战列会选择伊丽莎白女王META集火标记。
      • 标记权重(数字越大,权重越高):
        • 夜战标记=10
        • 夜战照明标记=11
        • 厌战改集火标记=99
        • 伊丽莎白女王META集火标记=99
      • (b)查找完成后,会根据场上是否存在具有对应标记的单位,来进行不同的操作。
        • 如果场上不存在存在具有对应标记的单位,转到标记筛选表为空的做法。
        • 如果场上存在具有对应标记的单位,在具有对应标记的单位中,随机选取其中一个单位作为瞄准目标。
  2. (2)如果标记筛选表为空,或场上不存在存在具有对应标记的单位,则选择距离最近的敌人作为瞄准目标。
    • 如果多个敌人恰好都是距离最近的单位,优先选择后面出场的敌人。
  3. (3)经过上面步骤挑选出瞄准目标,还可能会受到护卫效果的影响(目前就武藏的公方之护提供这种护卫效果)。
    • 为了讨论方便,将提供护卫效果的单位称为护卫者,获得护卫效果的单位称为被护卫者
    • 同时满足以下情况,才会将瞄准目标从被护卫者改为护卫者
      • 目标具有护卫效果
      • 目标属于被护卫者
      • 护卫者也在第(三)步的临时待选表里
    • 不同时满足以上情况,则瞄准目标保持不变。
  4. (4)确认瞄准目标,完成索敌


一些情况会使标记筛选表不为空

  • 主线第14章,夜战天气和照明效果会给己方和敌方提供特殊的索敌效果。
    • 对于双方所有的在场单位,夜战天气都会给它们的标记筛选表添加夜战标记夜战照明标记
    • 一般情况下,双方都会选择具有夜战标记的敌对单位进行索敌。
    • 但如果场上存在具有夜战照明标记的单位,因为在权重方面,夜战标记 < 夜战照明标记,所以双方都会优先对具有夜战照明标记的敌对单位进行索敌(这就是14章夜战索敌优先级的具体实现)。
    • 如果有敌方单位在己方生成的照明区域时,则对应的敌方单位会被挂上夜战照明标记。己方单位在敌方生成的照明区域时,情况类似。
  • 厌战·改技能神射手·改提供的标记效果。
    • 厌战·改会给皇家阵营的[战巡/战列/重炮]的标记筛选表添加厌战改集火标记(即如果场上存在具有厌战改集火标记的单位,则优先对其进行索敌)。
    • 厌战·改释放神射手·改的弹幕时,会给敌方最远的单位挂上厌战改集火标记
  • 伊丽莎白女王·META技能光影之间的女王提供的标记效果。
    • 伊丽莎白女王·META会给[皇家/META]阵营的[战巡/战列]的标记筛选表添加伊丽莎白女王META集火标记(即如果场上存在具有伊丽莎白女王META集火标记的单位,则优先对其进行索敌)。
    • 伊丽莎白女王·META释放光影之间的女王弹幕后,会给被弹幕击中的敌方单位挂上伊丽莎白女王META集火标记


武器的瞄准

瞄准类型

武器是否瞄准,取决于武器的瞄准类型和武器是否具有目标

  • 如果武器的瞄准类型为瞄准,且具有目标,则会获取目标的位置,并让开火瞬间射出的子弹迅速指向敌人。
  • 如果武器的瞄准类型为无瞄准,或不具有目标,则会让开火瞬间射出的子弹保持原来的运动方向。


是否具有目标这一判断主要用于一部分的舰船技能武器。

  • 对于大部分的非技能武器舰船技能舰载机上的武器,无目标就不会攻击。
  • 但对于部分的其他舰船技能武器非技能武器舰船技能舰载机上的武器,无目标也会进行攻击。
    • 先锋舰船的手操鱼雷和舰载机的平行雷,无目标也会进行攻击

目标被瞄准点的坐标

Unity游戏引擎的坐标系是以y轴正方向为正上方。

对于主线14章,夜战天气会给舰船的被瞄准点加上偏差。

下面假设:

  • 被瞄准实体(舰船或舰载机)碰撞盒的长(Length)、高(Height)、宽(Width)分别为L、H、W,
  • 被瞄准实体的位置坐标为(x,y,z)。
  • 隐蔽强度为A(AimBias), 隐蔽强度对x,z方向的偏差量分别为Ax,Az
    • Ax = A * (-1到1的随机小数1)
    • Az = A * (-1到1的随机小数2)
    • 随机小数1与随机小数2的抽取相互独立。


对于被瞄准的舰船,

  • 一般情况下,被瞄准点的坐标为(x,0,z + 0.5*W)
  • 在主线14章,被瞄准点的坐标为(x + Ax,0,z + 0.5*W + Az)

对于被瞄准的舰载机,

  • 被瞄准点的坐标为(x,y,z)
  • 在主线14章,因为舰载机不使用夜战隐蔽机制,所以其被瞄准点的坐标依然为(x,y,z)

子弹的追踪

声导鱼雷和导弹的子弹都存在追踪机制。

子弹的追踪机制是靠子弹属性和对应的追踪系统来实现。子弹的追踪机制使用了类似扇形检测的思路。对应内容将在下面进行阐述。

一般玩家可以直接看"追踪流程的总结"部分的内容,跳过追踪流程的具体描述。

追踪流程的总结

对于声导鱼雷,一般情况下,敌人满足在追踪范围内子弹运动方向 与 子弹到目标方向 的夹角不小于10°,子弹就执行追踪操作。

对于自动发射导弹,一般情况下,敌人满足在追踪范围内,子弹就执行追踪操作。

声导鱼雷的追踪流程

声导鱼雷的追踪流程:

  1. 首先,如果追踪目标不存在,对应子弹就会尝试寻找满足以下所有筛选条件的敌人作为追踪目标。若已经有目标,则跳过,直接到下一步。
    • 筛选条件1:距离最近的第1名敌人。
    • 筛选条件2:这名敌人与对应子弹的距离小于等于追踪范围。
  2. 然后,按顺序检测以下条件。若满足以下任意一个排除条件,对应子弹放弃该目标,或停止追踪。若都不满足,才进入下一步。
    • 排除条件1:目标倒下
    • 排除条件2:目标与对应子弹的距离大于追踪范围。
    • 排除条件3:子弹运动方向 与 子弹到目标方向 的夹角小于10°。
      • 该条件具体判断方法如下:
      • 矢量1 = Normalize[目标被瞄准点的坐标 - 子弹的坐标]
        • 目标被瞄准点的计算在“武器的瞄准”章节
        • Normalize[...]表示对矢量进行归一化。归一化就是该矢量除以它的模, 得到的新的矢量是模为1的单位矢量
      • 矢量2 = Normalize[子弹在x-z平面的速度]
      • 变量1 = Dot[矢量2,矢量1]
        • Dot[A,B]表示对两个矢量求点乘
        • 设A为(a,b,c),B为(x,y,z),则Dot[A,B] = a * x + b * y + c * z
      • 求出最小追踪角的点乘值TrackerAngle,TrackerAngle = cos[Deg2Rad * 10]
        • Deg2Rad表示角度转弧度的常数,Deg2Rad = π / 180
      • 如果TrackerAngle ≤ 变量1,则子弹放弃该目标
  3. 接着,系统会进行一些计算,让对应子弹转向,向目标移动,实现追踪。
    • 求出相关变量
      • 设第2步中,矢量1为(a,b,c),矢量2为(x,y,z)
      • 变量2 = z * a - x * c
      • 变量3 = cos[Deg2Rad * 追踪时的角速度大小]
      • 变量4 = sin[Deg2Rad * 追踪时的角速度大小]
    • 做判断,求参数
      • 如果 变量1 < 变量2,则 参数1 = 变量3
        • 如果 变量4 ≥ 0,参数2 = 变量4 * 1
        • 如果 变量4 < 0,参数2 = 变量4 * (-1)
      • 如果 变量1 ≥ 变量2,则 参数1 = 变量1,参数2 = 变量2
    • 重新设置子弹速度矢量
      • 设旧的子弹矢量为(A,0,C),速度新的子弹速度矢量为(X,0,Z)
      • X = A * 参数1 + C * 参数2
      • Z = C * 参数1 - A * 参数2
  4. 最后,整个追踪过程会反复执行上述的第1步到第3步。

自动发射导弹(前排导弹)的追踪流程

自动发射导弹(前排导弹)的追踪流程:

  1. 大部分流程与声导鱼雷的追踪流程相似。
  2. 第2步中,没有排除条件3
    • 即对于自动发射导弹,若子弹运动方向 与 子弹到目标方向 的夹角小于10°,也能继续追踪。
  3. 第3步中,计算也有些不同。
    • 求出相关变量和参数
      • 矢量1 = Normalize[目标被瞄准点的坐标 - 子弹的坐标]
        • 目标被瞄准点的计算在“武器的瞄准”章节
        • Normalize[...]表示对矢量进行归一化。归一化就是该矢量除以它的模, 得到的新的矢量是模为1的单位矢量
      • 矢量2 = Normalize[子弹在x-z平面的速度]
      • 变量1 = Dot[矢量2,矢量1]
        • Dot[A,B]表示对两个矢量求点乘
        • 设A为(a,b,c),B为(x,y,z),则Dot[A,B] = a * x + b * y + c * z
      • 设矢量1为(a,b,c),矢量2为(x,y,z)
      • 变量2 = z * a - x * c
      • 参数1 = 变量1,参数2 = 变量2
    • 重新设置子弹速度矢量
      • 设旧的子弹速度矢量为(A,0,C),新的子弹速度矢量为(X,0,Z)
      • X = A * 参数1 + C * 参数2
      • Z = C * 参数1 - A * 参数2

追踪子弹的数据

下面是追踪子弹的数据。

  • 子弹基础速度可在全武器对护甲补正一览查询
  • 注:子弹的追踪范围和武器的范围是不同的参数。在追踪机制中用的是子弹的追踪范围
武器[1] 追踪范围 追踪时的角速度大小(度/帧)[2] 追踪时的角速度大小(度/秒)[3]
[三/四/五]联装533mm磁性鱼雷、533mm磁性鱼雷T3设备提供的第一轮鱼雷[4]、潜艇用G7e声导鱼雷 14 1.6 48.0
潜艇用Mark 20 S鱼雷-彼得 12 1.2 36.0
潜艇用Mark 18鱼雷、潜艇用92式潜射鱼雷改[5] 9 1.0 30.0
潜艇用Mark 28鱼雷、533mm鱼雷Mark35(4连发射) 12 1.1 33.0
上游1(先锋) 60 1.2 36.0
  • [1]如果武器名称中没有专门加上T1、T2、T3或T0,这说明该种类武器的稀有度不影响追踪参数。
  • [2]这里的角速度大小是以角度制为基准。
  • [3]游戏中的每秒计算帧是30帧
    这里的角速度大小是以角度制为基准。
    这里做了1种转换,为了研究方便,自己做的转换,每帧角速度转换为每秒角速度。计算公式:每秒角速度 = 每帧角速度 * 30。
  • [4]533mm磁性鱼雷T3设备提供的第一轮鱼雷,其实是用新的子弹替换原有的子弹。
  • [5]潜艇用92式潜射鱼雷改实际上是声导鱼雷,游戏内的面板数据有误。