2026年10月21日、「産業キャプテン (Captain of Industry)」の艦長日誌#57が公開されました。今回はアップデート4.3について。
艦長日誌#56は今回はパフォーマンスに関する技術的な内容のため、記事にして紹介していません。
艦長日誌#57
艦長日誌#57は、アップデート4.3について。
- 以下の内容はすべて数週間後に配信されるアップデート4.3で利用可能になる。
混合状態の資源の完全サポート
- 混合状態の採掘された資源を貯蔵施設に保管したり、コンベアベルトで輸送したり、列車に積み込んだりできるようになる。採掘した資源を選別せずに別の場所へ輸送・投棄することができ、テラフォーミングがより早く容易になる。
- 以前はトラックやショベルカーが一度に1種類の資源しか運べず、複数の資源が存在する場合、採掘効率が著しく低下していた。
- これに対応するため、ショベルカーとトラックが混合状態の資源を搭載できるようにした。これにより鉱山での稼働率の問題は解決したが、トラックが各資源を対応する貯蔵施設や装置に個別に搬入しなければならなくなり、十分に資源を搭載しないまま搬送を行い、その間ショベルカーは鉱山で停止していた。そこでトラックが積荷を一度にすべて搬入できる鉱石選別施設を導入し、搬送の問題は解決したが、今度は各鉱山に鉱石選別施設を設置し、すべての産出物を個別に輸送しなければならなくなった。つまり、岩と土をどちらも投棄する場合でもまず選別を行わなければならなくなった。
- 既存のシステムに混合状態の資源を組み込んで互換性を維持するのは、非常に複雑な作業だった。システムは単一種類の資源向けに徹底的に最適化されていたため、これを高いパフォーマンスで動作させるのは特に複雑だった。複雑である理由は各実体が混合状態を追跡する必要があるためだ。貯蔵施設・貨車・コンベアベルト上のすべての1単位ごとに追加のデータが必要となり、これによりコードの複雑さとメモリ使用量が増加し、処理にさらなるCPUサイクルを消費する。ゲームの他の部分を最適化しているため、パフォーマンスへの実質的な影響は最小限のはずだ。
- 鉱石選別施設にはコンベア入力ポートが追加された。鉱石選別施設で選別しない資源は未選別のまま出力ポートへ送ることができるようになった。さらに、採掘管制塔に混合状態の資源の貯蔵施設を割り当てられるようになり、鉱山ごとに鉱石選別施設を置く必要がなくなった。
再生利用品の追跡
- 混合状態の資源のサポートによって、再生利用品の追跡方法も改善できた。混合状態の資源に関するシステムを汎用的に設計することに特に力を入れたため、鉱石以外のあらゆる資源を混合できるようになった(Mod制作者には役立つかもしれない)。
- これまでは再生利用品はグローバルに管理され、例えば研究室や保守点検施設で再生利用品が産出されるとその分別後のものはどこで産出されたかにかかわらずグローバル台帳に記録されていた。その後、廃棄物分別施設で分別されるときにはそのグローバル台帳に基づいてスクラップが生み出されていた。こうした管理は、例えば鉄のみを使って鉄屑のみを生成するはずの保守点検施設から出た再生利用品であっても、別の場所にある研究室が銅やガラスを使用した資源を消費しているという理由から銅屑やガラス屑も生成されてしまうという現象が起こっていた。チートを使って再生利用品を追加した場合も、グローバル台帳に記録がないために何も得られなかった。
- アップデート4.3では採掘された資源と同じくすべての再生利用品が何から作られていたかを追跡するようになったため、期待されるとおりの動作をするようになった。
- ひとつの再生利用品は2つのスクラップに分別されることがある。既存のセーブデータでは、開発側の処理を簡素化するため、再生利用品は自動的に変換され、コンベア・車両・分別施設にあるスクラップは貯蔵施設に移される。また、居住地がリサイクル率を無視していた不具合を修正したため、居住地から得られる再生利用品は以前より少なくなると考えられる。
オーバーレイ
- 産業が大きくなるにつれて問題の発見、稼働停止やデススパイラルの防止は難しくなる。アップデート4.3ではオーバーレイを追加する。これは画面上のすべての要素をグレーアウトし、対象となる実体のみ色付けすることで、実体に関する情報を表示する。手始めに以下の8つのオーバーレイを追加した。
- 生産性:現在の生産性の割合
- 汚染:放射線や埋立地を含む汚染源
- 優先度:すべての施設の優先度
- 電力と演算能力:生産量と消費量
- 労働者:雇用されている労働者の数
- 保守点検:消費されている保守点検の量
- 製品の流れ:選択した製品がどこで生産・消費されているか
- このオーバーレイシステムは拡張性があり、Mod制作者はあらゆる情報を自由に可視化できる。
- 効率的な線路の設計に役立つ最高速度オーバーレイも追加した。線路が色付きで表示される。なお、25%の急勾配の線路はR22のカーブと同様に最高速度が80 km/hに制限されるようになった。12%勾配の線路はこれまでどおり速度制限はない。
放射線遮蔽貨車・駅
- プレイヤーから放射性物質の管理が難しく、現実的な長距離輸送手段がないという意見をいただいた。以前、放射性物質を列車に積み込めてしまうという不具合があり、列車は積載量が多いため、あっという間に放射線汚染が発生していた。
- 当初は放射性物質を梱包・開梱するレシピを追加して梱包済みのものを通常の放射性でない資源として扱えるようにすることを検討していたが、代わりに新たな貨車と駅を制作することにした。なお、放射線遮蔽貨車・駅はベースゲームに含まれる。
- 放射線遮蔽貨車・駅は放射線による汚染なくあらゆる放射性物質を保管・輸送できる。積載量は240単位と少ないが、貨車が満杯になるには倍の時間がかかる。
- この変更の一環として、放射線の追跡方法も改善した。生成・消費された放射性物質の計数ミスによる放射線の「漏れ」は発生しなくなるはずだ。コードやModのバグに起因するものであっても、ゲームが問題を検出して自動的に修正できるようになった。
列車の稼働統計
- オーバーレイを列車に関する問題発見の助けにすべく、列車の稼働・走行統計を追加した。列車ごとの統計に加え、路線マネージャーでは路線ごとの統計も確認できる。稼働状況グラフでは「待機中」「稼働中」「給油中」「非稼働中」の4カテゴリーで表示し、月別・年別の内訳を表示する。
- 列車の走行効率に関する統計も収集するようになった。これは「停止中」「加減速中」「最高速で走行中」「線路の速度制限により制限されている」「他の列車によって通行を妨げられている」の5種類の状態を示す。健全な鉄道網は運行時間の大部分で加減速か最高速走行を行い、線路の速度制限による制限や他の列車による妨害はできるだけ短く抑えられている。
- この機能はringgeest11氏とともに大規模な鉄道ネットワークの最適化に取り組んでいたものの適切な診断ツールが不足していたというCharles Circle Gaming氏から一部着想を得たものだ。彼らの調査結果に興味がある方は彼らのRedditの投稿をご覧いただきたい。
資源の搬送表示の改善
- コンベアベルトの始点と終点にある資源はかなり唐突に現れたり消えたりする。これはかなり早い段階から存在していた問題で、コンベアが施設の始点となるタイルの端で終わっているため、資源がまだ半分見える状態で出現・消失していたことが原因だ。アップデート4.3ではこれが修正され、コンベアは資源が施設内に半タイル分入った状態をシミュレートするようになり、切り替えは見えないところで行われるようになった。これによってコネクターが内部で遅延をシミュレートしなくなり、シミュレート速度が約25%向上した。
Web APIサーバー
- 「Captain of Industry」はWebサーバーとして動作するようになった。コンソールコマンド「web_api_start」を使うと、Webサーバーを起動できるようになった。これ以降はゲーム内のあらゆるグローバル依存関係がルート(URL)にフックし、リクエストに応答できるようになる。セットアップは非常に簡単で、メソッドを定義し、HTML・JSON・バイナリデータなどのレスポンスを返すだけだ。コマンドを送信することでゲームを完全に制御することもできる。例えば、デモダッシュボードではゲームの速度を制御したり、スクリーンショットを取得する方法を紹介している。
- 私たちは開発ツールの一部をこのAPIに移植して簡素化した。Mod制作者はブラウザーを補助的なゲーム画面としてダッシュボード・アラート・メモなどの追加情報を表示できるようになることを想定している。開発者のMattはGoogleマップ風のミニマップのプロトタイプを考えた。このミニマップではズームインやズームアウトが可能で、移動する車両を含めてゲームのリアルタイムな様子を確認できる。彼はさらに一歩進めて車両を選択可能にし、その位置を表示する機能も実装した。これはあくまで機能をテストするための社内向けプロトタイプだ。
- 現在公式にサポートされているAPIは私たちのデモダッシュボードとスクリーンショットの取得に限定されているが、この機能の利用状況を見て今後のアップデートで機能を拡充していく。なお、Webサーバーはユーザーのコンピューター上でローカルに動作しており、公開のインターネットからはアクセスできない。
変更ログとModの翻訳
- アップデート4.3からすべての変更ログがサポートされている20言語に翻訳され、ゲーム内で選択された言語で表示される。機械翻訳にしているのは意図的な判断で、変更ログは長文で技術的な内容になりがちであり、すぐに古くなってしまうためだ。人間が時間と労力を費やして翻訳する価値はないと考えるが、機械翻訳で提供することで英語を母語としないプレイヤーには価値があるはずだ。翻訳で意味不明になった場合に備えて、英語の原文を表示するオプションもある。ゲームのその他の部分は私たちのオンライン翻訳ツールを使って人間による翻訳が行われている。みなさんの継続的なご協力と修正に感謝する。
Mod制作者向けの部分は省略します。
新たな新規起動時の体験と言語設定
- ゲームを初めて起動したとき、すぐにメインメニューが表示されるのではなく、言語選択画面が表示されるようにした。ここではゲームを再起動しなくても、ワンクリックで言語を選択できる。SteamやOSの言語設定が本作でサポートされている言語のいずれかと一致している場合、その言語が画面上部に目立つように表示され、その他の言語は下に一覧表示される。
- 次に、PCに複数のディスプレイが接続されている場合、画面とウィンドウモードの選択画面が表示され、ゲームを表示するディスプレイを選択できる。
- このほか、ゲーム言語はインメニューのドロップダウンから選択できるようになり、ゲームを再起動することなく即座に反映されるようになった。
新たな音響管理
- ゲーム内の音響の管理と再生について全面的に書き直した。大規模な工業地帯ではたくさんの音響発生源があり、Unityのデフォルトのシステムでは処理が追いついていなかった。主な制限は同時に再生できる音響の数で、類似した音響をグループ化するクラスタリングシステムを実装し、より多様な音が聞こえるようにした。同時に再生できる音響の数を制御する新たな音響設定も追加した。
- 新たな環境音も追加し、海や森の音を聞くことができるようになった。他のゲームとは異なり、「Captain of Industry」はかつて山だった場所が海になったりするため、画面上に何があるかを動的に検出してどの環境音を再生するかを決めている。
- 地形の崩落にも音響を追加した。資源が柔らかいものか硬いものかで変わり、崩落の大きさによって音量も大きくなる。
- 音響システムの調整は現在も続いており、今後も多くの、より質の高い音響を追加していく予定だ。
シミュレーションの決定論
- 私たちはゲームが決定論的であることを確保するために多くの時間をかけてきた。アップデート4.3以前にも、パッチv0.8.7b~dではCPUベンダーによってゲームが微妙に異なる動作をする問題を修正した。これには3つの理由がある。第一に、バグを再現可能にし、修正しやすくするためだ。再現できない問題を修正するのは難しい。第二の理由はリプレイだ。リプレイはプレイヤーのコマンドリストであり、セーブデータの履歴を完全に再現できる。私たちはそうしたシステムに向けて作業しているところだ。第三に、決定論的なゲームはマルチプレイが可能になる。私たちは7年以上前の最初のゲームデザインのときからマルチプレイについて考えており、マルチプレイが可能になるようにゲームを作ってきた。既に基本的なマルチプレイ機能を持つModも存在している。
次回:艦長日誌#58


















コメント