リバースエンジニアリングから判明した散布界の仕様です。
スペシャルサンクス(敬称略)
- landaire: リバースエンジニアリング
- LPCVOID: リバースエンジニアリング
- notyourfather: リバースエンジニアリングとリプレイ解析
- Monstrofil: リプレイ解析ツールの作成
- 901234: データマイニングと校正
- keitaz: データの検証
関連するパラメータと説明
この記事ではBigWorld単位(以下、BW)とメートル(m)が使用されています。30m = 1BW
以下の単位はgameparams.datに格納されている数字のものです。自分でデータアンパックして計算したい人向け。
説明は読み飛ばしてOK。後で見返すと大体意味がわかるかなぁ程度の補足要素
- idealDistance [BW]: 水平散布界がidealRadiusとなる距離
- idealRadius [BW]: idealDistanceにおける水平散布界
- minRadius [BW]: 最小の水平散布界
- taperDist [m]: 水平散布界が0に収束し始める距離。
- delim: 垂直散布界が変化する距離。最大射程にかかる係数で、およそ0.5~0.6程度
- radiusOnZero: 距離0における垂直散布界係数
- radiusOnDelim: 距離delimにおける垂直散布界係数
- radiusOnMax: 最大射程における垂直散布界係数
- maxDist [m]: 散布界決定時の最大射程(上級射撃、モジュール、観測機等の効果を含む)
gameparamsには無いが必要なもの
- X [BW]: 主砲から照準点までの距離(=照準距離)(メートルからの換算を忘れずに)
- delimDist [BW] = maxDist * delim
このうち、プレイヤーの選択による影響を直接受けるのは
- maxDistとdelimDist
- X
- 水平散布界全体(精度アプグレ)
です。その他の値(radiusOn~やdelim等)はいかなる方法でも変更できません。
水平散布界
式はBW単位で統一します。(x30が入らず綺麗になるため。XとtaperDistだけメートルから変換すればよいです)
距離 | 水平散布界の式 |
X <= taperDistのとき(約5km以下の至近距離) | 水平散布界[BW] = (X * (idealRadius - minRadius) / idealDistance) + minRadius * (X / taperDist) |
taperDist < X のとき | 水平散布界[BW] = X * (idealRadius - minRadius) / idealDistance + minRadius |
式で書くと難解に見えますが、つまるところただの1次関数で、taperDistを堺に0へ収束し始めるだけです。
(idealRadius - minRadius) / idealDistanceが傾き、minDistがy切片に相当します。
垂直散布界
垂直散布界の向き
公式Q&Aでは散布界楕円が水面に対して垂直であるかのように説明されていますが、実際は終端弾道に対して垂直に生成されます。
垂直散布界の大きさ
垂直散布界の大きさは次の式で表されます。
- 垂直散布界[BW] = 水平散布界[BW] * 垂直散布界係数
したがって、水平散布界を縮小するほど垂直散布界も向上します。
距離 | 垂直散布界係数 |
X < delimDistのとき(0~delimDistでの射撃) | 垂直散布界係数 = radiusOnZero + (radiusOnDelim - radiusOnZero) * (X / delimDist) |
delimDist <= Xのとき(delimDist~最大射程での射撃) | 垂直散布界係数 = radiusOnDelim + (radiusOnMax - radiusOnDelim) * (X - delimDist)/(maxDist - delimDist) |
これまた無駄に複雑ですが、内容は単純な線形補間です。
ここで注目すべきなのは、垂直散布界係数の最大値は予め決まっており、最大射程と照準距離のみが影響を与える点です。
簡単に言うと、最大射程を延長するほど同じ距離での垂直散布界が向上します。
例と余談
コルベールで実験してみます。リプレイ解析により取得できる「砲弾が通るべき点」の集合が散布楕円と一致します。
- 射撃距離: 6km
- 比較構成: 最大射程13.8km vs 最大射程19.2km(上級射撃+射程延長)
- 時間: 30分(トレモ60分がいつの間にか消えてしまった)
6kmでの射撃 | 19.2km構成 | 13.8km構成 | 差 |
主砲から照準点への平均距離[BW] | 199.58736928304037 | 200.1123024666279 | 0.52493318358 (およそ15m) |
理論上の垂直散布界係数 | 0.7748125937 | 0.9217391304 | 0.77.../0.92... = 0.84059856866 (約16%の垂直散布界減少) |
各座標軸方向の最大値と最小値の差 | 19.2km構成 | 13.8km構成 | 変化率(19.2km構成/13.8km構成) |
x[BW] | 0.3688507080078125 | 0.3372650146484375 | 1.09365244537 |
y[BW] | 2.9409435987472534 | 3.447934865951538 | 0.85295799169 |
z[BW] | 7.91357421875 | 7.881622314453125 | 1.00405397557 |
XZ平面が水面です。また、6kmにおいてコルベールの砲弾は約5°で着弾するため、散布楕円は水面に対してほぼ垂直に生成されます。
結果から分かる通り、水平方向の散布界サイズにほぼ変化がない一方で、射程延長構成はY座標の差(≒垂直散布界)が約15%減少しています。照準距離の誤差は15m程度のため、照準点のズレによる影響はほぼ無いと言えるでしょう。
数学的に完璧な証明でないことはわかっていますが、言いたいことは伝わると思います。前転やめてください
delim, radiusOn~の値
- 主砲
艦 | delim | radiusOnZero | radiusOnDelim | radiusOnMax |
ソ連ツリー戦艦, レーニン, | 0.6 | 0.25 | 0.4 | 0.75 |
スラヴァ | 0.3 | 0.1 | 0.25 | 0.45 |
ソ連重巡洋艦ツリー(タリン以降), ミコヤン | 0.6 | 0.25 | 0.4 | 0.95 |
日本戦艦, バジエ | 0.5 | 0.2 | 0.6 | 0.8 |
上記以外の全て | 0.5 | 0.2 | 0.5 | 0.6 |
- 副砲
アーカンソーβ, GZ | 0.5 | 0.4 | 0.8 | 1.0 |
上記以外の全て | 0.6 | 0.1 | 0.8 | 1.0 |
大和(標準)vs大和(射程延長)
15km | 大和(射程延長なし) | 大和(観測機+射程延長) |
射程[m] | 26630 | 37069 |
垂直散布係数 | 0.625309801 | 0.5237209784 |
水平散布界[m] | 192 | 192 |
垂直散布界[m] | 120.0594818 | 100.5544279 |
大和からすると比較的近い15kmの交戦。垂直方向だけ見ると16%以上の改善
射程延長で圧倒的散布界向上、対面に差をつけろ!
大和vsモンタナ
15km | 大和 | モンタナ |
射程[m] | 26630 | 23650 |
垂直散布係数 | 0.62530... | 0.52684... |
水平散布界[m] | 192 | 210 |
垂直散布界[m] | 120.05 | 110.63 |
昔から「日戦は垂直散布が悪い」と噂され続けてきた。本当らしい
スラヴァvsモンタナ
9km | スラヴァ | モンタナ |
射程[m] | 24680 | 23650 |
垂直散布係数 | 0.2684764992 | 0.4283298097 |
水平散布界[m] | 150 | 150 |
垂直散布界[m] | 40.27147488 | 64.24947146 |
近距離の散布が悪いとは何だったのか。スラヴァはdelimの値が狂っている(0.3)ため近距離の範囲が極めて狭い。
ペトロパブロフスク
- delim: 0.6 (一般的な巡洋艦は 0.5)
- radiusOnZero: 0.25 (同上: 0.2)
- raidusOnDelim: 0.4 (0.5)
- radiusOnMax: 0.95 (0.6)
(最大射程*0.6)kmまで垂直散布界に優れるが、最大射程ではほぼ真円になる。
6km射撃のデータがほしい
19.2km構成
- リプレイ: Colbert_6km_AllRangeMods.wowsreplay - Google ドライブ
- 砲弾が通るべき点: shotPositions_6km_AllRangeUpgs.csv - Google ドライブ
- 各行が[X, Y, Z]で構成されています
13.8km構成
- リプレイ: Colbert_6km_NoRangeMods.wowsreplay - Google ドライブ
- 砲弾が通るべき点: shotPositions_6km_NoRangeUpgs.csv - Google ドライブ
- 各行が[X, Y, Z]で構成されています
余談
- 散布楕円は主砲ごとに計算されるため、近距離射撃になる、主砲同士の距離が伸びるなどの条件で実際の散布界は更に悪化します。ジャンバール系最強か?
- ここ間違ってませんか?/素人質問ですが/詳しくないのですが... →やさしくしてください
- maspaint べんり
- わからないことはまだたくさんある
- おいしいごはんたべたい