2019年3月24日日曜日

HoI4 - 「Overall naval strategy 1.6.1 MtG」雑訳


Steam Communityに上がっているOverall naval strategy 1.6.1 MtGを雑に訳してみました。
ところどころ端折ってます。また訳者はHoI4プレイ中で、本ガイドの内容は精査できてません。最新情報等があれば適宜補って読んでください。

元記事のURLはこれです↓
https://steamcommunity.com/sharedfiles/filedetails/?id=1682839551

以下、「私」は元記事の作成者であるTaidan氏を指します。
訳者の私見が入る場合は、大体こんな感じのフォントになります。
また翻訳上の補遺は、その部分の頭に「※」を入れています。

--------------------

Intro

これは私がこれまでに理解した仕組みや変更点、そして私の運用している海軍や艦船デザインを説明するものだ。
これはただ単にシングルプレイ向きである、しかし多くはマルチプレイでも役に立つだろう。

我々は新しい要素に取り組み始めるとき、やりすぎたり、広い目で見れなかったり、
なぜ自らのやったことが役に立たなかったり実現可能外だったのか確かめなかったりすることが、あまりにも多かった。
一例を挙げよう、多くの海軍ガイドがしばしば「ただ単に」戦艦4隻、空母4隻、軽巡16隻、そして駆逐50隻建造せよとしていたけれど、
これはアメリカでプレイしていたり或いはゲーム終盤でそろそろ勝ち切ろうとしている場合くらいにしかできないものだ。
だからこのガイドでは次のことに焦点をあてよう、
まずはなぜ海軍戦略が必要なのかということ、そして次に気楽にいじくれる一般的な戦略を論理的に確立することだ。

プレイ全体を通して海軍戦略が必要になる理由が2つある。


―彼我ともに輸送船を、資源や兵隊を運んだり兵隊に補給したりするのに用いる。だから輸送船を沈めてしまえば相手の人的や工業に甚大な損害を与えることになる。これが海軍戦略が必要になる理由の75%だ、自らを守り相手に対して優位に立つために必要だ。
 強襲上陸には海軍優勢を要し、艦砲射撃は役に立つ。

さあこれからどんな話になるか述べよう。
 
海軍戦略はプレイ全体を通した建艦戦略になる。プレイヤーは長い間初期艦隊で戦うことになるだろう。だから柔軟な建艦管理を案として持つところから始めなければならず、完璧な艦隊を目指してはならない。プレイヤーは既存の艦船を用い、そしてそれをゆっくりより良い艦船に置き換えるようになるだろう。 

燃料は有限である、だから任務に当てる艦船をできるだけ少なくしたいと思うだろうし、そしてできるだけ有用な艦船が欲しいと思うだろう。

 海軍システムはプレイヤーが任務部隊に与える任務に沿って動く(任務部隊は艦隊の中でつくられるグループである)。掃海船は機雷設置任務中は掃海しないだろう。だから任務ごとに特化した艦船を持つのがよい。 

Spotting

探知はこのゲームの海軍においてあらゆるところにある。
だから探知の大規則を理解し、それを自らの戦い方に組み込む方法を知ることは重要だ。

探知行動は2つの任務部隊間における1つの主導権争いである。探知力の高いほうが先に敵を発見する。
探知力が相手より高いほど、より早く発見できる。
これが意味することには、相手の任務部隊から身を隠す場合でも探知行動が必要なのだ。

詳しくは以下の記事を見て欲しい
https://forum.paradoxplaza.com/forum/index.php?threads/naval-detection-guide.1157358/#post-25225470

探知の大規則は以下の通りだ
 

艦船が高い探知力をもつのは最も重要で、高速であることも重要である。 

こうした(↑)艦船が多くあるとより良い

 制空権は大いに役立つ 

レーダーと復号技術も役立つ

重戦闘機は制空権をとるのに役立つだけでなく、艦上戦闘機よりも良い選択肢である。
なぜなら重戦は艦戦に比べて、研究量が少なく(艦戦は船体の研究→空母の設計→艦戦自体の研究の順を必要とする)、生産コストが低く、燃料消費が小さく、また陸の航空戦に転用できるからだ。

だから艦隊を支援するには、沿岸にレーダーを設置し重戦闘機を飛ばすのがベストだ。

哨戒用の艦船には、レーダーを積んだ潜水艦か、カタパルトを満載した軽巡を充てるのが最も良い。(以後、カタパルトを満載した軽巡を哨戒軽巡と呼ぶ。)


Trade, convoys, escort and raiding

資源を輸入するとき、陸路(こちらは襲撃されない)か輸送船を用いて海路で行われる。
海路がより長くなるほど、より多くの輸送船が必要になる。だから護衛艦を少なくするにはできるだけ近くの国から輸入するのがよい。

すべての輸送船には、運ぶのが兵隊であれ資源であれ、ある海域を避けるように指示することができる。海域をクリックし選択すると、ダイアログの右下のほうにアクセス設定が3つあるのがわかる。これらは自由に通ってよい、なるべく避ける、一切の通行を禁ず、の3つである。海域に制限を加えるほど、輸送経路が長くなり、より多くの輸送船が必要になり、より多くの護衛艦が必要になる。

輸送船は対空砲や主砲を殆ど持たず、このゲームにおいて最も遅い船であり、アップグレードできず、そして敵から隠れるための能力を持たない。(※原文の"stats"を"status"と読み替えている。)もし何者かが輸送船を探すならば、輸送船は発見され攻撃されるだろう。


輸送船団護衛任務

護衛効率は、輸送船2隻に対する護衛艦が1隻を切ると失われる。

護送されている護衛艦の数を数えるには、護衛艦隊がいる海域を通過する輸送路を通っている輸送船の数の総和を取ればよい。これが意味することには、輸送路の全体を護衛しようが一部(最少で海域1つ)を護衛しようが、必要な護衛艦の数は同じだ。
護衛艦は割り当てられた海域でしか輸送船を護衛しない。
護衛されている輸送船の数を増やす方法はたった1つで、艦隊に多くの海域(輸送路が通る海域)を割り当てることだ。

だから1つの艦隊に護衛艦をすべてまとめ、世界の海域すべてを割り当ててしまえばいい。
もし2つの艦隊に分けてしまうと、その各々が独立に低い護衛効率をもつようになる。
護衛艦隊は任務部隊10個に分けよう、さすれば同時に10の海戦に参加することができる
(このとき任務部隊が1つだと9つの海戦には参加できず、輸送船を失うことになる)。

護衛効率は海軍ドクトリンや高い協調値をもつ提督によって上昇し、輸送船2隻に対する護衛艦が1隻を切ってもよくなる。

潜水艦は輸送船を襲撃することが望ましいということから、潜水艦を撃退できるなかで最も安い艦が護衛艦に最適である。これは初期型駆逐艦船体に、初期型エンジンと初期型の主砲を装備した駆逐艦である。

この状態でも対潜値が1あるので潜水艦を撃退できる。

初期(護衛効率にバフが無い)状態では、輸送船を生産する造船所1つにつき、上記の駆逐艦を生産する造船所を3つ割り当てればよい。
最適な海軍ドクトリンによるバフが乗りきれば、輸送船と護衛艦の数的比率が3:1になるので、先ほどの駆逐艦用の造船所は2つで良くなる。

もし上記の輸送船や駆逐艦が敵の水上鑑(軽巡とか)に襲撃された場合、主力艦を投入するより他に手立てがない。燃料には気を配ろう。
 

輸送船団襲撃任務

初期状態では、1つの任務部隊に2つ以上の海域を割り当てると、襲撃効率が本来の値より低下する。襲撃効率は海軍ドクトリンや高い協調値をもつ提督によって上昇し、複数の海域をより少ない数の任務部隊に任せられるようになる(任務部隊をまとめられるようになる)。
―まとめることで「本来の値」が増加する?あるいは単純に1戦闘当たりの最大艦船数が増えるだけ?

高い探知力があると事が早く進むし、敵から隠れやすくなるが、必須ではない。

基本的な戦略は単に潜水艦に輸送船を襲撃させることだ。
敵の護衛艦が出てくるまでは、魚雷が多いほど効率的な襲撃ができる。
レーダーを積んでいる潜水艦は敵に発見されにくく、輸送船を発見し易い。
だから最良の潜水艦は、最大限に魚雷を装備しレーダーも装備した潜水艦である。

対AIにはこれで十分だ。しかし敵の護衛効率が100%の場合、たとえ10000隻の潜水艦であってもどうにもならない(襲撃スパムをかまして敵の任務部隊をパンクさせれば話は別だが)。なぜなら輸送効率は輸送船の数に依拠するのであって、襲撃側の艦船数には依拠しないからだ。これは私が潜水艦を1隊100隻未満で組むのを好む理由でもある。

襲撃に用いる次善の艦は軽巡だ。
貿易阻止ドクトリンは水上艦を良質な襲撃艦たらしめるが、その実現は研究が進んだ後だ。もっともよい軽巡は哨戒軽巡だ。対空砲もつけておくとよい。

襲撃艦隊をつくる際には、以下の2通りのやり方がよいだろう
―水上艦を用いるならば、高い協調値をもつ1人の提督の下にまとめることで、少数の任務部隊に砲火力を集中する。
―潜水艦を用いるならば、任務部隊を多数用意し、敵の護衛艦隊を数で圧倒する。



Naval supremacy, patrol, strike forces and naval invasions

強襲上陸には制海権が必要だ。

さらに制海権はプレイヤーとその敵との主導権争いの場でもある。
最も重要な値は海域にいる艦船数である。打撃部隊は、たとえ港にいてもこの艦船数に含まれる。その次に重要な値が2つあり、それは航空機数と機雷数だ。

港で待機している打撃艦隊も発見されうる。だから哨戒任務から話を始めよう。



哨戒

哨戒任務に就いている任務部隊は同時に2つ以上の海域を哨戒できない。
なので艦隊には哨戒したい海域数と同じだけの哨戒任務部隊が必要だ。

探知については既に述べている。。

効率の良い哨戒が無ければ打撃艦隊は出撃する機会を失い、役に立たなくなる。
だから優良な哨戒艦をつくるのは重要だ。


打撃

打撃任務を与えられた部隊は、近くの港で待機する。打撃任務は部隊の航続距離が届く間の海域すべてに割り当てることができる。この任務に効率はない、ただ距離の制約があるだけである。

海戦が始まるか敵艦隊が発見されると、部隊が出撃し戦闘に参加する。
海戦が起きそうな海域の近くに、足の速い打撃艦隊が必要だ。
(打撃艦隊が戦闘に到着しても、その戦力を発揮するまでにはいくらか時間を要する。)

打撃艦隊をつくるには多くの説明を要する。それをこれから話そう。

立ち回りの変更 

「positioning」を「艦隊が良い位置取りを行えている」ととって、立ち回りという語を当てた。fpsの「立ち回り」を援用している形である。

立ち回り値は艦隊が戦闘中にもつ値である。この値が0%になると艦隊はその能力を半分しか発揮できない。

敵の立ち回り値を削る第一の手法は、敵より少ない艦船数で戦闘に臨むことである。
艦船数が敵の半分であれば、敵の立ち回り値は25%減る。3分の2であれば0%で、3分の1以下であれば50%だ。

第二の手法は、戦闘開始後に戦闘に参加した艦船が部隊の立ち回り値を5%、最大で50%まで減らすことから導かれる。
このことからプレイヤーは戦闘開始時になるべく多くの艦船を戦闘に参加させたいと思うだろう。だから部隊に所属する艦船の数を少なくするのがよい。

敵艦隊を探知することは、探知力の優勢度合いに比例する形で、立ち回りを有利にする。
このことから哨戒艦艇には高い探知力と低い視認性が求められる。
探知船として最もよいのは、できる限り多くの偵察機を積んだ軽巡だ。

立ち回り値には、提督の特性により25%のバフが、嵐により10%のデバフがつく。

総じて、打撃部隊にはより少ない数の艦を当てたい。つまりより重くより高性能な艦船が適している。

対空の変更
私の知る限り、空母は随分と役立たなくなったのであまり調べていない。
しかし航空機は依然として艦船にダメージを与えるので、対空は必要だ。

これを読んでほしい:https://old.reddit.com/r/hoi4/comments/awfpn7/naval_aa_effect_on_incoming_air_damage/

概すると、対空は艦船に積めば積むほど非効率になる。

戦略は2つある、全艦船に対空を装備するか、ある船に集中配備するかだ。

対空砲は装備した艦船の対空値に最大15%のバフを与え、同様に火器管制システムにより最大20%、レーダーにより10%のバフだ。
つまり対空専用の軽巡を用意するのが効率的であるということだ。
私の例では、40年型軽巡船体に対空バフ120%と対空砲5つと両用砲2つを装備して、対空値を約65得た。これが意味することには、この船と同じ戦闘に参加する味方艦艇が対空値を約12、あるいは対空砲3つ分に相当する値を得るということだ。
艦隊規模を鑑みると、艦船スロットの良い節約になっている。

結論:艦隊に対空専用軽巡を少なくとも1つは配備しよう。

ただし上記の内容は完全には正しくない。(―のでざっくりと補足する)
―対空軽巡に比較して対空砲を装備できる護衛艦に個別に対空砲を割り振ると、対空効率は良くなるが経験値が2ポイント余計にかかる。
―対空スロットを持たない艦船(輸送船、潜水艦、空母)については対空軽巡が有用。
―対空軽巡が敵航空機の攻撃を受けるので、敵航空機に相対するこちらの対空値は平均的に高くなる。
―対空軽巡はコスト対効果が高い
―対空軽巡は技術レベルに応じて、全艦船に対空配備するよりも、全体的に0%~10%良い。…ので対空軽巡をアップグレードする経験値のある国で採用しよう(例えばアメ…ゲフンゲフン)。

装甲の変更
100%正しいといえるルールだけ述べよう。

非装甲艦船は海戦で沈む。駆逐艦はハエのように沈む。駆逐艦を打撃艦隊に入れると、その80%が最初の大海戦で沈む。直衛艦にはできるだけ重装甲にした軽巡が適している。
軽巡は安く修復できるが、駆逐艦は作り直す羽目になる。

重巡は重巡含めすべての主力艦から装甲貫通攻撃を受ける。なので重巡も打撃艦隊には適さない。

本項は情報が手に入ったら更新するつもりだ。

打撃艦隊設計
主力艦1隻につき直衛艦が4~8隻必要だ。さもなくば魚雷が主力艦に届く。
空母は主力艦にカウントするが、直衛艦として重い船が1隻必要だ。
打撃部隊は以下のように構成する

―戦艦2隻:主砲2つ、レーダー、火器管制、装甲、対空砲2つ、残りは副砲
―軽巡8隻:軽巡主砲で最新のを2つ、初期型両用砲、魚雷、レーダー、ソナー、装甲

この部隊は小さいが、それは建造コストを抑えるためである。
この部隊はスタック艦隊(―勘で訳した)には勝てないだろうが、甚大なダメージに耐えて生き残るだろう。
これにより戦略的に小さな優位が生じる。資源や燃料に余裕が出てきたら部隊を大きくするとよい。


強襲上陸支援

作戦効率については打撃任務と似たようなものだ。

この任務に就く部隊は、兵隊を運ぶ輸送船を護衛し、沿岸砲撃を提供する。

沿岸砲撃による敵へのデバフは重砲で10%、軽砲で5%だ。だから主砲と対潜があればどんな艦隊でも務まる。
打撃部隊を転用するのが簡単だろう。というのも強襲上陸には制海権が必要なので、暇になった打撃部隊がまだ近くにいるだろうから。


Mine warfare

機雷は事故率を上げ、強襲上陸を減らし、海域の制海権に寄与し、航行速度を大きく減らす(これは多くの結果をもたらす)。
機雷は海域の支配権を得るための防御的な道具である。

つまり理論的には、機雷は高レベルの火器管制システムをもつ艦船や潜水艦に対して効果的である。潜水艦は他の艦種に比べて信頼性が低い。だから理論的には機雷敷設潜水艦がよいだろう。


機雷敷設

機雷敷設任務は割り当てる海域数を増やしても効率を失わない。

艦隊の中では機雷敷設艦を1つの任務部隊にまとめよう、すると艦隊が任務を行う海域に効率よく機雷を敷設してくれる。
しかし機雷施設部隊を入れる艦隊は少ない海域で活動するほうが望ましい、これは機雷敷設効果を弱めないためだ。
だから打撃任務や襲撃任務を行う艦隊にいれるとよいだろう。
また単独で艦隊を成して沿岸に機雷をばらまくのも良い、敵の強襲上陸をもっと難しくするのが目的だ。

最もよい機雷敷設艦はレーダーと機雷設置設備をもった潜水艦だ。


掃海

この任務は機雷敷設と同様にして行う、ただし潜水艦では掃海できない。
掃海部隊は機雷敷設部隊と同じような使い方をすればよい、ただし沿岸防衛艦隊は除く。

駆逐艦は掃海設備を最大3つ装備できるが、軽巡は最大2つ装備できて燃料消費がより少ない。軽巡は駆逐より機雷に当たるリスクが小さい(艦隊保全主義ドクトリンには駆逐のリスクを減らす効果がある)。機雷のほかに脅威が無ければ、掃海設備をできるだけ積んだ駆逐艦が掃海に最適である。旧式艦が使い物にならなくなることはない。
AIは機雷敷設を脅威といえるほどにはやらないので、シングルプレイにおいて掃海は不要だ。

航空機での掃海は、艦船で行うより燃料消費が大きいので避けよう。



Production, tiers, research and refitting

生産

輸送船には造船所を15割り当てることができる。
潜水、駆逐、軽巡には造船所を10割り当てることができる。
重巡、巡戦、戦艦、超戦、空母には造船所を5割り当てることができる。

重巡を除いて、主力艦の生産にはクロムが必要だ。

生産画面にて修理に用いる造船所の数を、忘れずに増やしておこう。


年式

以下のことはだいたい正しいといえる。

―1922年/初期型/tier1
最低性能、最少のスロット数、コスト対で非効率、燃料消費は少しだけ。
しかしこの型の設備は最も小さいデバフをもつ(火器管制、対空砲、重砲、中砲はいい感じだ)、しかしバフも最小だ。

―1936年型/tier2
ここからまともに使えるし、スロット数もちゃんとしている。

―1940年型/tier3
最もコスト対効果が高い。駆逐艦を除いた全船体でスロットが全開放されているが、36年型と同様に多くの鉄資源を要する。

―1944年型/tier4
贅沢な型だ。駆逐艦や潜水艦の船体がクロムを要し始め、全体として最も多くのクロムを要する。
バフもデバフも最大で、この型の設備を用いる際には再考しよう。


研究

艦隊は常に訓練させ、余剰燃料を経験値に変えよう。

海軍経験値は艦船設計とドクトリンに用い、余ったら砲弾のような小さい研究に使おう。

備考:このガイドにおける戦略上、tier2以降の駆逐艦や対潜装備は研究不要である。潜水艦のアップグレードも不要だ。


改装

艦船は同じ船体の別設計か、改装空母に改装することができる。

ここで艦船のあるモジュールを別のモジュールに変えるのは高いコストを要するが、同じモジュールのアップグレードならば安く済む。
ただし装甲やエンジンのアップグレードは高コストだ。

改装は、任務部隊画面で各艦船欄の右端にある黄色い矢印から行える。

主力艦の建造には時間がかかるから、必須のスロットだけを埋めた船を建造しておいて、設計が完了してから改装するのもよい手だ。



Naval doctrines

海軍ドクトリンを比較しよう。すべてのドクトリンは「装甲+10%」を有する。

基地攻撃

「基地攻撃」は港湾爆撃に50%のバフを与える。
港湾爆撃任務は、もし利用できるならばとても強力で費用対効果がとても高い。
だからこのドクトリンはその効果をさらに高める。

潜水艦ツリーは輸送船襲撃に標準的な効果があるが、強力ではない。

「船団護衛」は護衛効率に30%のバフを与え、これは護衛艦の必要数を減らす点でとても良い。さらに駆逐艦の潜水艦探知に20%のバフを与える。十分良いものだ。

主ツリーは空母へのバフだ。

結論:そもそも空母がバージョン1.6.1において弱体化している。空母は重戦闘機よりコスト対で非効率的で、海戦でも力不足だ。既に空母を作らないようにアドバイスしている私が、ここでこのドクトリンを薦める理由があるだろうか?


貿易阻止

最初の研究は特筆するものではない。探知力に5%のバフと指揮統制率に10のバフだ。

護衛ツリーには空母へのバフが食い込んできている。空母に対艦照準力+20%のバフは素晴らしい。これは基地攻撃ドクトリンにおいても同じだ。

潜水艦ツリーはとても強力だ。ツリー全体で海上探知+55%と襲撃効率+50%のバフを得られるのが最も良いのだ。しかし、もう一度言うが、敵のすべての輸送船が護衛されている場合、潜水艦に為す術はない。
対AIではこんな事は起きないだろう。このドクトリンの強みは3つ目のツリーにある。

3つ目のツリーは軽巡を真っ当な襲撃艦に変貌させる。この軽巡は輸送船を護衛している敵駆逐を撃沈できる、そうして敵の護衛効率が減少することで、こちらの潜水艦は輸送船を撃沈できるようになるのだ。
このドクトリンで得られるバフは、襲撃効率+50%、海上探知+25%、そして視認性に-10~-25%だ。船体が大きいほど、視認性へのバフの効果が大きい。

結論:強襲上陸や海上貿易を要さない国においてのみ採用しうる。このドクトリンでも海上輸送路を護衛することはできるが、その効率は低くなるだろう。そして海においては敵の後塵を拝するだろう。


艦隊保全主義

最初の研究は指揮統制率にいくらかのバフを与え、機雷敷設効率に10%のバフを与える。
後者は研究が進むとさらに10%のバフを得る。

潜水艦ツリーは基地攻撃ドクトリンと同じだ、だからどうでもよい。

このドクトリンの護衛ツリーは最も強力な護衛ツリーで、全体で護衛効率に40%と駆逐艦の潜水艦探知に25%のバフを与える。

3つ目のツリーによるバフは海軍対空攻撃に10%と、主力艦攻撃に10%、主力艦の指揮統制率にいくらか、そして打撃任務の性能向上(任務にて指揮統制率の減少が弱くなる効果)だ。

結論:当ガイドにおける普遍的で包括的な海軍戦略において最適なドクトリンだ。なぜなら船団護衛や機雷敷設の能力が向上し、    さらに海戦にて決定的な優越を得られるのだから。



Fuel

燃料を得るには、事は単純だ。

もし自国領に石油が大量にあるのならば、研究の合成燃料ツリーにてサイロ以下燃料精製技術だけを研究しよう、石油1単位当たりの燃料を増やすのだ。また石油が豊富な州のインフラを上げよう。

もし自国領の石油だけでは不足するならば、海軍が基本的な任務を行える程度に輸入しつつ、合成精製所を建てて合成技術を研究しよう。加えて燃料精製技術を研究してもよいが、非効率的ではある。

陸軍は大規模な機械化を避ければ、空軍は航空機を大量運用しなければ、燃料消費量は小さい。

主力艦はできる限り港に待機させ、海域には直衛艦を出そう。燃料消費量を最小限にしたい。

海域にあっても静止している船は燃料を消費しない。だから海上航空基地をやっている空母は燃料を消費しないのだ。



Conclusion, a generic strategy

艦隊保全ドクトリンにおいて、修理に造船所10を当てよう。

海軍生産

ステップ1:輸送船すべてを護衛できる分の初期型駆逐艦をつくる
ステップ2:船団襲撃用の潜水艦を50隻つくる
自由選択:機雷敷設用の潜水艦と掃海用の駆逐艦をつくる
ステップ3:軽巡をありったけつくる(哨戒軽巡と戦闘用の軽巡はつくろう、気になるなら対空軽巡もだ)
ステップ4:もし資源があるのならば、保有する戦艦の数を計画しておいて、必要な研究を終えたらつくり始めよう。


軍需生産

重戦闘機をつくろう

民需生産

沿岸に、航空基地とレーダーをつくろう

石油資源が豊富な州のインフラを改善するか、または石油を輸入しつつ合成生成所を建てよう。


艦隊の編成

以下は本ガイドの内容がすべて実施された際の完全なテンプレートである。だから好きに変えるといい。

打撃艦隊:打撃部隊(戦艦2、軽巡8)、哨戒部隊7、機雷敷設部隊、掃海部隊

特化護衛艦隊(護衛用の駆逐だけで編成する):護衛部隊8、機雷敷設部隊、掃海部隊

襲撃艦隊:水上襲撃部隊、潜水襲撃部隊7、機雷敷設部隊、掃海部隊

特化沿岸敷設艦隊:機雷敷設部隊10(こうすることで、一度の事故で全艦失うということがなくなる)

2018年3月12日月曜日

HoI4 - 新生日帝NFデータ


Patch1.5.0及びDLC「Waking the Tiger」にて日中のNF等に大きな変更がありました。
それらのうち本稿では日帝NFのデータをざっくりまとめます。
誤植等みつかれば適宜修正します。
作業中に日本語化MODの仮対応がありましたが、ここでは英語混じりでいきます。

○NFの全体図
...は画像2枚載せます。

このNFは大別して政治・満州・技術の3ツリーに分かれています。
政治ツリーは左から共産化・統制派・皇道派・民主化の4つに初手で択一に分岐します。
共産化は共産政権を樹立してコミンテルンか独自陣営を選ぶまでのルートが用意されています。
同様に統制派は独自陣営を立ち上げ日中戦争と南進論による連合戦つまり史実ルート;皇道派は連合及び中国との戦争をひとまず避けつつの北進つまりソ連戦ルート、枢軸にも接近しますし後々には連合や中国に吹っ掛けることもできるようです;民主化は民主政権を樹立してソ連に敵対するルート。共産にせよ民主にせよNFで政権交代を狙うと内戦が起きるようです。
満州ツリーは満州国の開発を行うもので満州国が傀儡である必要があります。
技術ツリーは研究ボーナスを稼ぐツリーです。
以下、満州ツリーを除いた各ツリーの効果を個別に挙げます。画像ではNFによるボーナスがいくつかあって単色では見辛そうなものに色をつけています。この色の選択に他意はありません。


○技術ツリー

このツリーでは空母重視か戦艦重視かは択一で、空母重視の場合にその後のNFで零戦が無償開放されるようです。また技術重視か精神重視かも択一で、技術重視の場合に砲兵と装甲技術に対するボーナスが回収できます。
次にこのツリーで取得できる国家精神の内容は以下の通りです
・The Long Lance [ 魚雷射程+100% ]
・Expand the SNLF [ 特殊部隊比率+2% ]
・First Air Fleet [ 艦載機出撃効率+20% ]
・Supremacy of Technology [ 歩兵装備研究時間-5% 装甲研究時間-5% ]
・Superior Will [ 師団防御+10% 師団攻撃+10% 師団回復率+10% ]
またこのツリーでは一部の政府機能が解禁されます
・杉山元@陸軍訓練(天才):陸軍訓練所要時間-15%
・呉海軍工廠@主力艦設計社:海軍研究時間-10%
主力艦[装甲+15% 火力+15%] 護衛艦[魚雷攻撃+15% 潜水艦探知-15%]
・三菱航空機@高機動航空機設計社:航空機研究時間-10%
戦闘機[機動力+20% 最高速度+10%] 艦上戦闘機[機動力+20% 最高速度+10%]
・愛知航空機@長距離航空機設計社:航空機研究時間-10%
戦闘機[航続距離+10%] 重戦闘機[航続距離+10% 信頼性+20%] 戦術爆撃機[信頼性+20%]


○統制派&皇道派ツリー
これらのツリーは一部共通部分があるのでまとめて載せています。
まず共通部分は研究枠の取得、経済法の変更、及びカミカゼ攻撃の解禁です。総動員による徴兵可能人口の低下は後に続くNFにて国民精神により補填できます。
ざっくりと統制派ツリーでは海軍ドクトリンと資源へのボーナス、皇道派ツリーでは陸軍ドクトリンと陸軍兵站へのボーナス及び枢軸に接近すればロケット技術が得られます。

取得可能国家精神(共通部)
・Spiritual Mobilization:徴兵可能人口+2.5%

取得可能国家精神(統制派ツリー)
・Liaison Conference:新規陸軍将軍の開始計画レベル水準+1
・(Zaibatsus-->)Guide the Zaibatsus:民需工場建設速度+5% 軍需工場建設速度+5% 工場生産量+5%
Marco Polo Bridge Incident:中国及び軍閥に対して師団攻撃-50%・師団防御-25%

取得可能国家精神(皇道派ツリー)
・Militarism(Modern Shogunate):戦争協力度+10% 徴兵法コスト-10% 研究時間+5% 軍需工場建設速度+5%
・Militarism(Showa Restoration):戦争協力度-10% 徴兵法コスト+10% 研究時間-5% 正当化所要時間+10% 民需工場建設速度+20%
・The London Naval Treaty:工場生産量+5% 造船所生産量-25%
・(Zaibatsus-->)Zaibatsus Challenged:安定度-10% 民需軍需造船所建設速度+5% 日毎の政治力コスト-0.25 貿易法コスト-25% 経済法コスト-25%


○民主化ツリー
殆どが外交にまつわるNFです。研究枠の取得は最速です。

取得可能国家精神
・Strengthen Civilian Government:日毎の民主主義への支援+0.10
・Zaibatsus-->Zaibatsus Empowered:日毎の政治力コスト+0.25 民需・軍需・造船所建設速度+5%
・Hirohito:安定度+50%
・Anti-Communist Volunteers:義勇兵による師団編成+3  義勇軍派遣のための師団を要求-100%


○共産化ツリー
内政にまつわるNFが多くあります。国家精神で週の安定度変化量に加減が入るのでツリーを進めるタイミングにより安定度に影響がでます。
取得可能国家精神
・The Unthinkable option:週の安定度-1% 日毎の共産主義への支援+0.03
・Red Brigades:徴兵可能人口+2%
・Zaibatsus-->Nationalize the Zaibatsus:週の政治力コスト-0.25 貿易法コスト-25% 経済法コスト-25% 消費財工場-5%
・Reeducation Campaign:週の安定度+5%
・People-Owned Mines:資源の探掘効率+10%
・Communist Volunteers:義勇兵による師団編成+1  義勇軍派遣のための師団を要求-100%

2017年8月21日月曜日

HoI4 - 階層付き攻撃線を描く


気づいたことTip集で連鎖攻撃線という言い方で攻撃線を複数連鎖させることについて述べたのですが、ただ何個も引くだけでできたのはどうやら偶然でした。
なのでALTボタンでの戦線整理を行う中で攻撃線を連鎖させる方法(日本語Mod下では「階層」と表現しているので以下これに倣います)を書き留めます。

ある前線を根本として複数攻撃線が出ているとき、これは同階層にいるのでどちらかの攻撃線しか用いることができません。これを階層付ける、つまり片方の攻撃線の根本を他方の攻撃線にするには、一言でいうと”コントロールポイントを重ねる”ことで可能です。

コントロールポイントとはALT押下時に攻撃線を指す矢印をクリック(ドラッグ)することで出現する青い表示です。これをずらすことで前述の矢印(つまりプロヴィンスレベルでの攻撃ルート)を変形させることができます。
このコントロールポイントを別の命令に重ねることで階層化が可能になります。

以下1~4の手順で2つの攻撃線を階層化します。

1.下図は同階層にいる2つの攻撃線とそれを指す矢印です。下側に伸びる攻撃線を上側の攻撃線の後の階層に指定します。
まずALTを押下して編集モードにした後、コントロールポイントを出します。

2.下図はコントロールポイントが出現したところを表しています。
青い斜線がコントロールポイントです。2つありますがこれは各々の攻撃線に対して発生させました。
今回は下の攻撃線を編集するので、下側のコントロールポイントを移動させます。マウスポインタ付近のポップアップウィンドウが示すように、コントロールポイントをドラッグして上の攻撃線(点線)に重ねます。恐らくコントロールポイントと点線を重ねたときに矢印に目に見える変化が現れると思います。
本稿では2つのコントロールポイントを重ねることにします。

3.コントロールポイントを重ねて編集モードを抜けたのが下図になります。
2つの攻撃線が階層化されています。下の攻撃線にはまだ師団が割り当てられていないので下の攻撃線にも寄与させたい師団を改めて登録します。

4.軍の全師団を登録すると下図になります。
文字は小さいですが2つの矢印の中に”31師団-第1軍”なる文字が見えます。
これで軍の全師団が2つの攻撃線に沿って連鎖的に攻め込むようになります。

ちなみにこのときのコントロールポイントの配置は下図のようになります。
下の攻撃線は根本と侵攻先の両方にコントロールポイントを持っています。この2つを編集することで侵攻ルートの調整が可能です。

以上の内容により、複雑な侵攻ルートがあっても複数の攻撃線を階層化することで表現・指示が可能になります。

2017年7月16日日曜日

HoI4 気づいたTipsとか情報収集したものメモ書き


HoI4のちょっとしたことについて調べた内容をメモっておきます。
不定期&無通知更新。某かの参考にどうぞ。

----------リンク----------

本家Wiki  日本語Wiki

----------@1.3の時に知ったこと↓ ----------

〇増援確率について
日本語Wikiのコメントや本家Wikiより
増援が戦闘に参加しようとするとき、実際に参加できるかどうかの判定は戦闘幅に余裕があるときに増援確率を用いて毎時行われる。
つまり増援確率が $ X(0 \leq X \leq 1) $ のとき、毎時確率Xで戦闘に参加するか判定される。
ここで戦闘幅にいつも余裕があるとして予備師団に加わってから1日中に戦闘に参加する確率を求めると、これは”丸一日経っても参加しない(=判定24回すべてで参加しない)”とちょうど排反であるから、$ 1-(1-X)^{24} $ で表される。

〇通信中隊について
本家Wikiより
Signal (SIG): Signal companies provide an Initiative stat, which speeds up joining a combat from reserve and planning speed. Used in the right place, these can be great. Given that the base planning speed is 2 % per day, a signal company 1 saves you 4 days to reach the standard 50 % bonus(II:5 days; III: 7 days; IV: 8 days). Whether this bonus expedites preparation of invasions or paradrops is unconfirmed. In general these are most useful for troops in frequent front-line combat, or for reserves in critical positions where rapid reinforcement is needed.”
つまり通信中隊の効果は増援確率の上昇と計画ボーナス増加量上昇の2つ。
通常は25日で計画ボーナスが50%溜まる。
通信Ⅰで21日に短縮(増加量が19%強、つまり約20%上昇)。
通信Ⅱで20日に短縮(増加量が25%上昇)。
通信Ⅲで18日に短縮(増加量が38%強、つまり約39%上昇) 。
通信Ⅳで17日に短縮(増加量が端数を切捨てて約47%上昇)。
日数での計算なので、より正確な変化は満タンになる前日の値をみて計算するとよいかも。

〇空母過密について
本家Wikiより
”Carrier overcrowding: This doctrine reduces the penalty for crowding too many planes on an aircraft carrier. Its significance is that it allows carriers to bring more aircraft to a fight. More is better.”
つまり空母に飛行機が乗っかりすぎている際に生じるペナルティを軽減するということになる。
1つの艦隊戦闘に空母は4つまでという原則は変わらない。

----------@1.4の時に知ったこと↓ ----------
 ○"Reconnaissance advantage translates to a flat bonus equal to 5 leader skill points.This is added to the commander's skill level increasing the overall chance of picking a successful tactic from the available list."
つまり偵察レベルで上回っていることのアドバンテージは、指揮官スキルの5相当のボーナスになるということです。そしてこのボーナスは指揮官のスキル値に加えられる形で反映されるようです。つまり素のスキルが低い指揮官であっても電撃戦などの戦術をとれる機会が発生し得るということです(もちろん他の要件があれば満たす必要があります)。

○補給について、港から出入庫される値は港1レベルにつき3です。つまり、例えば入庫側と出庫側共に10レベルの港(エリア単位で合算)を持っていた場合の供給量は30です。値が異なる場合は小さいほうの値を用いて算出されます。なので首都から海を越えて補給が行われる場合はインフラだけでなく港も強化する必要があります。
下図は日本において九州周辺と淅江周辺に各60レベルの港と10レベルのインフラを整備したときの、淅江への入庫を表した図です。

○通信中隊の先制攻撃力による計画準備ボーナスの増加速度です。
この図はExpertAIの研究追加Add下で先制攻撃力を+68%得た状態の画像です。先制攻撃力の値に%をつけた分だけ増加速度が上昇します。
図68.00%にぎりぎり届いていないのは他国の支援装備が混ざっているからです。
なので優先度の高い師団は自国生産の装備をつかうように設定すると良いです。師団テンプレートの師団装備ボタンから変更できます。

○生産&更新をしてて気づいたことですが、更新優先度が中だと更新需要があっても最新型装備がある程度備蓄に回されるようです。優先度を高にしたら備蓄がすべて更新に回ったので、少なくとも主力の装備更新中は優先度を上げておくと良いかもしれません。

○連鎖攻撃線みたいなのが組めるようです。
既に攻撃線が引かれている戦線の師団を任意に選択して新たな攻撃線を引くだけです。
というのは偶然だったので編集モード内で連鎖させる手法を検証しました
修正してリンクしておきます(偶然できた理由はまだ判っていません)。

○陸軍でフィールド上の師団を複数選んでいるとき、ある師団をダブルクリックすると同じテンプレートの師団だけが全て再選択されます。軍としてまとめているときなどに便利です。

2017年7月15日土曜日

インフラと”建物”に関する考察(2)@1.4.1oak

(要JavaScript)
さて前回インフラを増設したときに元を取れる建設コストについて考えましたが、今回はこれの式変形と数値計算をさくっとつけておきます。

前回でてきた変数はインフラを1レベル上げるコストを $I$ 、インフラ補正前出力を $a$ 、現在のインフラによる”建物”への出力倍率を $b$ 、建てる予定の”建物”総コストを $x$ としたものでした。このときインフラを $n$ レベル上げるとき、元を取るためのコストは
$ x > b(10b+n)I $ 
で表されるというところまで行きました。このときインフラと”建物”をすべて建てきる迄にかかる日数を $d$ とすると、$x$ の建設における出力倍率がインフラ増設後の値であることから
$ d > \frac{nI}{a} + \frac{b(10b+n)I}{(b+0.1n)a} $ 
つまり
$ d > \frac{(n+10b)I}{a} $ 
となります。
これをエクセルかなんかで計算してみると、不等式の右辺は「インフラ増設前のレベルに関わらず」インフラ増設後のレベルにより一律に決定されることが判ります。
例えば15工場を使うものとすると a = 15*5 = 75 であり I = 3000 であることから、インフラ増設後のレベルが{ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }のとき、インフラと建設 x をすべて終わるまでの日数は少なくとも{ 440, 480, 520, 560, 600, 640, 680, 720, 760, 800 }を上回ります。
これを増設後インフラレベルをベースに考えてみます。
増設前インフラレベルが1増えると増設前出力倍率 b は 0.1 上がり増設レベル数 n は 1 下がることになります。このとき先ほどの不等式で 10b という計算があることから、式 $n+10b$ において b と n の増減がちょうど相殺されて、式の結果が増設前インフラレベルによらず一定になります。計算してて結構面白かったです。
また上記の結果は前回における余計なこと、つまりインフラと”建物”の各々に個別にかかる倍率については無視していることに留意してください。

2017年7月14日金曜日

インフラと”建物”に関する考察(1)@1.4.1oak



(要JavaScript)
今回はインフラ建設の元をとる話について考えます。
Ver1.4.1ではインフラを建設するとその1レベル毎に民需や軍需等の”建物”カテゴリの建設出力に+10%の補正がつきます。例えばインフラが8ならば出力は+80%されます。従ってインフラを増やすほど出力はおいしくなるのですが、インフラにもコストがあるのでそのバランスをどうしようかという話になります。

という訳で本稿の話題は、インフラを1上げたときどれだけの出力を建物カテゴリにつかえば元が取れるかということになります。インフラを増やさずに建設するのと増やして建設するのにかかる総時間を指針に計算します。

まず変数を用意します。インフラを1レベル上げるコストを $I$ 、インフラ補正前出力を $a$ 、現在のインフラによる”建物”への出力倍率を $b$ 、建てる予定の”建物”総コストを $x$ とします。
$b$ についていえば $b \in \{1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,1.9,2.0\} $ です、実際のところ2.0は使われませんが。またインフラの増設にはインフラによる倍率補正がないことに注意します。
このとき、
インフラを増やさずに建てる場合の所要時間: $ \frac{x}{ba} $
インフラを増やした後に建てる場合の所要時間:$ \frac{I}{a} + \frac{x}{(b+0.1)a} $
後者が前者より小さくなれば元が取れていると判断できるので
$ \frac{I}{a} + \frac{x}{(b+0.1)a} < \frac{x}{ba} $
これを $x$ について整理すると
$ x > b(10b+1)I $
となります。出力 $a$ が消えて関係なくなっています。”出力”と少し大まかな言い方にしたのも結局式から消えるので民需を1使おうが15使おうがどう想定しても関係なかったという訳です。
さて、文字 $I$ を置きましたがインフラ1レベルはコスト3000なので I=3000 です。
例えば、インフラ6のときb=1.6になるので x > 1.6(16+1)*3000 = 81600 です。かなり大きい数字です。というのも、インフラを1レベル上げたときに出力が何倍になるか考えてみると、インフラ0->1の場合は1.1倍になりますがインフラ6->7だと大体1.06倍という数字になります。差分が元々の出力の10%になるので、インフラが高いとレベルを上げたときの上昇は相対的に小さくなる、つまり元を取るにはより大きいコストが必要というからくりです。

上記の内容を拡張して、インフラを数レベル上げる場合についても計算してみます。
先ほどと同じ変数と、インフラを上げるレベル数を $n$ でおきます。
インフラを増やさずに建てる場合の所要時間: $ \frac{x}{ba} $
インフラを増やした後に建てる場合の所要時間:$ n(\frac{I}{a}) + \frac{x}{(b+0.1n)a} $
後者が前者より小さくなれば元が取れていると判断できるので
$ n(\frac{I}{a}) + \frac{x}{(b+0.1n)a} < \frac{x}{ba} $
これを $x$ について整理すると
$ x > b(10b+n)I $
インフラ1レベルはコスト3000なので(ry
例えば、インフラ4から n=4 レベル上げつつ元をとることを考えると x > 1.4(14+4)*3000 = 75600 になります。あ、インフラ6から1レベル上げるよりコストが小さくて済んでます。

さて本題としては以上なのですが、少し余計なことをやってみます。
それは、インフラにかかる出力倍率 $ i $ と”建物”建設にかかる「インフラ以外」の出力倍率 $k$ を計算にいれることです。これまでは出力に関する倍率を”建物”に関するインフラの効果だけに絞っていましたが、ちょっと他のも考えてみたいなという感じです。ゲームシステム的に $ i $ と $k$ であっさり表せるか確証をとってないので割と雑な話にはなります。
さてインフラを $n$ レベル上げることとして
インフラを増やさずに建てる場合の所要時間: $ \frac{x}{bka} $
インフラを増やした後に建てる場合の所要時間:$ n(\frac{I}{ia}) + \frac{x}{(b+0.1n)ka} $
このとき $ c = \frac{k}{i} $ としつつこれまでと同様に
$ n(\frac{I}{a}) + \frac{x}{(b+0.1)ca} < \frac{x}{bca} $
これを $x$ について整理すると
$ x > cb(10b+n)I $
つまり新たに係数 $c$ がついただけです。$c$ は分母にインフラにかかる出力倍率を、分子に”建物”にかかる出力倍率をおいた比率を表しています。共通部分は約分されて消えるので残るのは個々に特別にかかる倍率です。結局インフラに相対的に高い出力があれば元を取るに要するコストが安くなるよという話でした。


ちょっと数値計算してみた話→(2)


余談:本稿ではbloggerでMathJaxをつかう手法を取り入れてます。
参考リンクはこちら(MathJax in Blogger (II) )。この都合で要JavaScript。
不等式を解くよりMathJax入れる方が余程時間かかってたり。

2017年2月16日木曜日

HoI4 - 『Patch 1.3.3 Update #2』 意訳


その1はこちら→(#1

HoI4のアップデートパッチ1.3.3の情報その2が出ました(参照
その1の意訳をやってみた続きでその2もやってみようかともいます。
今回あちらさんの本文が長いので変更点を中心に短くできそうなとこは短くいこうと思います。

『』:意訳
平文:感想とか考察っぽいやつ


 〇産業:資源欠乏仕様の変更

『これまでは生産ラインは資源の欠乏があると最大で80%のペナルティを受けました。しかしこれは工場数を多くすることで効果的に対処できました。』
『資源の欠乏によるペナルティは不足している資源ごとに計算され、100%を上限として着実に大きくなります』

資源が欠乏すると最大100%のペナルティが生じる、つまり生産が行えなくなるということで資源を確保する重要性が上がります。


〇QOL
どうやらUI周りの改善のようです。

『新しく建設を行うときCTRL+Clickで建設ラインの先頭に突っ込むことができます』
わざわざ矢印をCTRL+Clickする必要が無くなるということですね。

『師団を選択したとき、師団リストの中でその師団がいる位置へ自動スクロールします』
軍に所属している師団を選択したとき、師団のリスト内でわざわざ手動スクロールする手間が省けるらしいです。

『ゲーム画面右下のボタンに新たなボタンを追加し(ホットキーはMに設定)自ユニットを残して他のユニットを非表示にします』
混戦しているときにユニットが重なり合って見辛くなるという現象があるかと思いますがそれへの対策だそうです。

『戦場のフォグを消すボタンを追加します。地形の確認がやりやすくなります』

『ロード中に画面上部に進行バーを表示します』

『マルチプレイヤーモードのときにあるプレイヤーがラグってるとメッセージウィンドウが表示されていましたが、これを警告にします』
マルチはやったことがないので詳しくは判りませんが、ラグったときに「Oh the humanity!」(だったっけ?)とか言ったりしないで済むようになるのかなと思います。右クリックすれば消えるアレになるのかなと。

『軍に割り当てられていない師団がいる場合に警告を発するようにしました。左クリックすれば該当する師団を選択します。右クリックすれば消えます。遠征軍が到着したときなんかにどうぞ』
遠征軍は結構行方不明になったりすることがあるので便利かと思います。


〇AIのアップデートについて

『海軍AIの戦域計算が改良され、状況変化への対応力が向上しました』
既に任務がある艦隊の戦域移動が苦手だったところを改良したの…かな?

『海軍AIは打撃艦隊に任務が割り当てられてない場合に沿岸砲撃を試みるようになります』
strike fleet いず 何って感じではありますが、AIが沿岸砲撃を行ってくるのは大きな改良だと思います。最大25%の抑制力をもつので沿岸砲撃の威力は結構高いです。

『AIが陸軍について展開可能師団数を計算するとき、供給力をより良く扱えるようになりました』
『AIに装備備蓄戦略機能を追加しました。これによりプレイヤーはAIの想定する備蓄量に影響を与えることができるようになります』
『陸軍師団数が多い場合にAIは装備をより多く備蓄しようとします』
AI相手の戦闘だと戦っているうちに徐々に相手師団の耐久力が減っていく(し壊滅的な低さになる)ことが多いですが少しマシになるかもしれません。

『AIの前線管理と前線に必要な師団数の計算について改良を加えました』
これまではAIの扱うユニットが多くなると前線も多くなっていることが結構見かけられますが、これら前線が整理されやすくなりそうです。原文では「特定の状況下で」と言っています。

『AIはあるテンプレートの師団が必要量得られたら配備ラインを取り消すようになります』
これまでは訓練し始めたらそのまま配備まで突っ走っていましたが、しっかり取り消すようになるようです。根こそぎ徴兵までの時間が長くなりそうに思えます。

『AIが占領地におけるレジスタンス活動を完全に放置するという致命的なバグがありましたが、修正しました』
これまではAIが占領している地域は気づいたらレジスタンス活動100%になっていましたが、これはバグだったようで修正されるとのことです。工場インフラの修理ばっか多くなって占領したところでアレだった現象がなくなるのは重要な改善でしょう。

『AIがいつ何処にレンドリースを行うか判断するロジックを改良しました』
『AIは旧式装備もレンドリースするようになります』
『AIは自国に余裕がなくなったときや行う意味がなくなったときにレンドリースを止めるようになります』
AIが行うレンドリースがより効果的なものになるとのことです。アメリカ辺りがだだ余りの旧式装備をレンドリースするようになるとかなり大きな支援になりそうです。数は力。

『AIは民需工場を多くもつとき、海軍造船所の建設が軍需工場の建設を上回らないようにするようになります』
民需工場が多くあることは工場の建設可能残数が少ないことを表しますが、どうやら『アメリカを筆頭として造船所が多くなる傾向がある』ようなのでその対処だそうです。

『AIは安全な前線をうまく扱えるようになりました。これまでは脅威がない前線にも大量の師団を配置していることが度々ありました』
『安全な前線のいくらかは共通の敵国と戦っている他国に向いているものであり、たとえその戦争に勝利しつつあるとしてもその時は脅威にはならないのです』
『結論:AIが操作するユニットの多くは実際に差異を生みだす筈です』
『例えば、日本は対中戦争が落ち着くまで対ソ戦を行わなくなります』


〇パフォーマンスと最適化

『バージョン1.3.3では全体で14~18%の速度向上がなされています。しかし主目的はパフォーマンスが急激に落ち込む現象を解消することです』
この直後の文でいわれている通り、1.3.2では日をまたぐときにゲームが幾秒かに渡って停止することが多々あります。師団数が多くなるゲーム終盤ではこの影響が大きくなります。この辺りの改善が主な最適化対象になるとのことです。

『講和会議のプログラムを書き直しました。大戦の終わりにある講和会議ではスキップ(ポイントを得るコマンド)が連発されて処理が重くなっていました。このプログラムは入れ子になったループ文で構成されていたのでこれを改善しました』

『艦隊に任務を与えたときゲーム上ではまず移動経路を計算することになります。このときAIは艦隊が適切な位置に移動するのを確実にすべく結果として「移動せよ」という命令を連発していました。もちろんこの命令は1度出せばよいものです。そしてこの問題は解決されました』

『補給システムの改良は最も影響の大きいものになります』
『プログラムがフィールド上の領域に対して「何が支援済で何が不足しているか」参照するとき、現状では各領域について毎回最初から計算しなおしていました。これを計算済の情報をキャッシュに保存するようにすることで再計算することなく参照できるようにしました』
『師団の装備消耗量のデータを得るとき、これまでのプログラムでは各プロヴィンスを回ってそこにいるユニットの各々に消耗量を尋ねるようになっていました。これを変更し、ゲーム内時間において毎時に各ユニットが自らの消耗量を「報告」するようにしてデータを得るようにしました。一見同じことのように見えますが、プログラム技術の面でいえば差異が生じます。この変更によりとても重いループ処理が削除されました』

ここでの改良は「無駄な計算」と「ループの削除」です。
1つ目の改良では各プロヴィンス或いはその中にある各区画がもつインフラ供給量なんかの、師団に対する支援可能量は、その値が変わらない期間が長めなので一度計算しといてメモリに保存しておけば再計算の必要がなくなります。変わるタイミングといえばどっかのインフラが向上したとかどっかに港をつくったくらいのもので、これが一月にあっても数回と考えれば毎時インフラ計算をやり直すのは結構な無駄だと判断できます。
2つ目の改良はループの数を減らそうという試みです。ループというのはつまり「AとBとCと…etcをN回繰り返せ」みたいな処理のことで、重いループという言葉で真っ先に連想されるのが多重ループです。軍隊を連想すると、「中隊長が各小隊の様子を見に行くが「中隊長が来たところの小隊長が慌てて各兵卒の様子を見に行く」」、みたいな事態が起きます。とにかく、面倒くせぇというニュアンスが伝わればOKです。今回の改良では少なくとも「兵卒連中くらいは小隊長のところに自分から来いや」みたいなことが行われていて、少なくとも小隊長が慌てる手間は省けるわけです。今回は中隊長が巡回するのが各プロヴィンスを回ることに該当し、小隊長が巡回するのが各ユニットを参照することに該当します。プログラムでやることはこれよりももっと面倒なことをやってる上に厳密には違う構造をもち出したっぽいのですが、この「重いループ」が無くなるとかなりのパフォーマンス向上につながります。
ちょっと長く書いてみましたが間違ってたら申し訳ないです。m(_ _)m

『旧来の補給システムは、パフォーマンスが落ち込んだ時に計算時間の65%を占めていましたが、アップデート後は6%を下回ります。』
だいぶ改善されたようです。

『AIが師団テンプレートを編集する際、プレイヤーと同様に大隊や支援中隊の追加・削除・変更とそれに伴う再計算を行っていましたが、これを変更しAIがテンプレートを埋めきった直後だけ統計情報を再計算するようにしました』
プレイヤーが編集するときは統計情報をみながら行いますが、AIは目標とするテンプレートがある程度決まっているそうなので統計情報を見つつやることは必要ないようです。

『AIに対する最適化は他にもあって、上陸作戦計画、前線へのユニット展開、レーダーによる艦隊への戦闘ボーナス、適切なルートが使用不可能になった場合の代替護送ルートの計算、そして他にも説明が難しいのだけれどもたくさんあります』
プレイしてのお楽しみというか期待というか。

『これまではClausewitz engine側の問題でユーザーインターフェースのデータ構造がフラットなのでウィンドウやボタンが増えるとゲームがそれだけ重くなるという問題がありました。ようやくこの問題への解法を発見しました。これまではループの中に最大12万の処理がありましたが、いまでは700を切っています』
フラットな構造つまりデータをただ並べただけで全探索しかできなかったところを、何らかの手法でデータ間の関連付けに成功したということでしょう。ここはUIが軽くなったと捉えておけば十分だと思います。


以上で本記事は終わりです。
意訳に焦点を当てているので細かいところで間違い等あっても大目に見てもらえると幸いです。