
Factorio Pyanodon(pY): マイグレーションの記録(Factorio 1.1.110→2.0.32)
noteでFactorio Pyanodon(pY)の記事を最後に書いたのは、2024年9月ゲームクリア時のようです。その後、Satisfactory→Space Ageをプレイしながら裏で継続して工場を稼働させ、研究による掘削効率上げとノーコスト電源のための衛星打ち上げを続けていました。
最近はずっとSpace Ageの方を操作していましたが、一段落しました。そこでようやく重い腰を上げ、Factorio 1.1.110で動作しているpYのsaveを、Factorio 2.0.xで動作するよう改修する作業を行いました。一通り動くところまでで2泊3日、ゲーム内時間経過は6時間弱でした。その後も数日動作確認をし、いくつか追加修正をしました。若干混乱するかもしれませんが、Factorio 2.0対応のpYバージョンは3.0になります。
#factorio pY 2,876時間。SAが落ち着いたのでFactorio 2.0マイグレーションしました。2泊3日で概ね終わり、それほど大変ではなかった。2.0移行が主目的なのでとりあえずはspoilage無効。あと数日動作確認したらnoteの記事公開します。 pic.twitter.com/rhpGUUH8KF
— spiral (@spiral_power) February 19, 2025
結論を簡単に言うと、py入りの移行作業はそれほど大変でなく、py以外についてはmodの対応次第ではありますが、Factorio1.1で稼働し続けているsaveはさっさと2.0へ移行したほうが幸せになれます。特に今回のケースでは、列車周りのパフォーマンスが大幅に向上しUPSは2倍になりました。

pY 3.0変更点の確認
大まかな変更点や移行に関する注意事項は、pYのDiscordサーバ、#announcements-and-newsを確認してください。pY 3.0(Factorio 2.0対応)変更に関連するものは2024/11/21開始のA summary of some of the previousスレッドを見るとよいです。
更に細かい変更点を把握するためには各modのchangelogを読み込む必要があります。どこまでがんばるかは各自お好みで。全部読まなくても、必要に応じて探す程度で十分と思います。Discordやgoogleで検索するなどするとよいです。
環境のセットアップ
既存と別環境にし、まっさらなものを一から構築する場合の手順です。私はSpace Age開始時に新規に構築した環境を流用しているので、一部スクリーンショットはその様になっています。
Zip版Factorioの取得
公式のダウンロードページへアクセスします。例えばSteamでFactorioやSpace Age DLCを購入している場合、SteamアカウントとFactorio公式サイトアカウントの紐づけを行っていれば、zip版Factorioをダウンロードすることができます。pY3.0はSpace Age有無どちらのものでもプレイできるそうです。私は場合はSpace Age有りでやります。Space Ageを購入している人は有りでやれば間違いないです。

Modインストール(Pyanodons Modpack)
最近pYの公式Modpackが提供され、入れるべきmodがよりわかりやすくなりました。今回はこれを使用します。ゲームを起動したら、まずはPyanodons Modpackをインストールします。依存関係があるものは自動的にインストールされます。その他、optionalとなっているmodで使いたいもの、他QoL mod等を追加します。
前述のDiscordにも注意書きがありますが、mod一覧のSpace Ageはoffにしてください。現時点でpYは対応していません。


Mod settings
移行元の設定と見比べながら、設定します。pY 3.0で注意するべきなのは以下です。
Enable dacay:
spoilage(腐敗)要素が追加されます。移行することが最優先なので、当面はoff。
Enable braided pipes:
異なる種類のパイプを接続するかのオプションです。デフォルトはonです。移行時はoffにして、パイプの種類を整えてからonにするとよいでしょう。


移行
以降、見出しにbase,pyの表記をしています。それぞれに起因する作業や変更を意味します。
ブループリントの移行準備(base)
My blueprintsはクライアント管理、Game blueprintsはsave管理です。クライアントを変更しsaveファイルを移動する場合は、必要なブループリントをGame blueprintsへ移動しておきます。

新環境でsaveを読み込む(base)
旧環境のsaveフォルダ内にあるsaveファイルを新環境のsaveフォルダ内にに置き、読み込みます。
Confirmationは「Load」です。マイグレーション処理に時間がかかるので、しばらくお待ち下さい。

こんな感じになりました。

修正
やること盛り沢山です。わかりやすいよう項目は分けて書いてありますが、それぞれ必要に応じて並行して修正作業を行っていきました。きちんと保守しやすい工場を作っていたか、そして工場長の底力が試されます。
明らかなレシピ変更はまあそういうもんだろうと思い特に確認はしませんが、内部的なちょっとした変更等でDiscordやChangelogsで確認できなかったものは、バグレポートを上げています。
T.U.R.D.(py)
いくつかは仕様が変わったことにより、トイレットペーパーの研究なしにリセットが可能になっています。ただしリセットは10時間の時間制限があるので注意が必要です。最初に確認したほうが良いです。新旧同時起動し、見比べながら吟味するとよいでしょう。
ただし、修正作業は他にもいっぱいあるので、変更の大変さを考慮した優先順位付け、取捨選択も必要になるでしょう。

再研究(py)
一部研究済みのものが未研究になっているので、再研究します。研究しないとレシピが使えません。

パイプの分離(base)
アラートがいくつかでたので、ポンプでパイプを区切ります。

流体の仕様変更に伴う修正(base)
Factorio1.1のPumpは安定して高速で流体を流せますが、Factorio2.0では入出力それぞれにある流体の、容量に対する割合によって速度が変わります。例えば、入力側の流体がほとんど空であったり、出力側の流体が満杯に近い場合、Pumpの速度は大きく下がります。これにより、Factorio1.1のノリで組んだ流体ネットワークは、特に副産物の流体が目詰まりし、それにより全体の処理が滞ります。
影響範囲は大きいです。とりあえず応急処置をしました。今まではタンクの容量に応じて、しきい値を超えた場合にタンク内から排出していましたが、2.0ではそもそもタンクがいっぱいに近くなるとタンクに入る流体の速度が著しく遅くなるので、タンクに入る前のところで捨てるようにしています。

Miner(py)
Minerの仕様が変わっているものがあります。Sulfur,Saltは固体燃料に変わって流体燃料を必要とします。個々の出力が小さいので大量に設置しており、工場が大きいと数が多くてめんどうです。
マップで検索し、pinを立てていくと作業漏れが防げるでしょう。


一部のderrickが動作不能になったので再設置しました。


Basic oxygen furanceの燃料(py)
使い勝手の良かったRocket fuelが使用不能になったようです。Discordでの言及を見つけたので、バグレポートはせず。T.U.R.D.無しのKicalk→Raw fiberがnerfされたので、T.U.R.D.でbuffされかつ導入が容易なLog→Woodを燃料にすることにしました。

Kicalk→Raw fiberは、pY2.xでは赤モジュールが使えましたが、pY3.0ではT.U.R.D.で特定の選択をしないと使用できなくなりました。Factorio 2.0移行時に、刺してあった赤モジュール3は全部消えてしまった。かなり高価なんだけど…


Antimonyレシピの燃料供給がタイトですが、Factorio 2.0のベルトスタックで解決。pYはベルトは1スタック8アイテムまで、スタックインサータは通常のものより場所を取ります。

Uranium hexafluoride(py)
レシピが解除されていたので以前と同じものを再設定。

その他レシピ変更(py)
Cottongut、Foodの材料にMoondropが単純追加。

Copper coating。地味に材料の流体変更。

組立機の種類変更。

Exoskelton、Mechanical parts 04→03。最終から一つ前のSPで04は重いと判断したか。終盤SPに必要な04系材料は量産がとても大変です。

Super alloy、Cobalt oxide追加。まあこれはHot air無しのレシピには元からあったので、入れ忘れではないかと以前バグレポートが上がってたのを見た気がします。

RCU(Rocket Control Unit)はなくなり、代わりに青モジュール1になりました。マイグレーションがきれいにされているので、変更は最低限で済みました。
Pyanodons Coal Processing
Version: 3.0.21
Date: 2024-11-14
Changes:
- Migrated the (now deleted) rocket control unit item into speed module 1s.

Zinc chloride、副産物としてHydrogenが出力されるようになりました。とりあえず捨てればok。

Formamide生成のの副産物Methanolに生産性ボーナスが付くようになりました。増えるMethanolを処理する必要があります。仕様変更かどうかは不明です。

Rare earth mudは、副産物としてIron oreの代わりにZinc plateを出力するようになりました。

Cargo landing pad(py)
Space AgeではCargo landing padはsurfaceに1つしか設置できませんが、pYでは研究で設置可能数を増やせます。pYですべての種類のSPを作成する場合、3種類のロケットラインを用意し、それぞれ異なる成果物を地上の異なる場所で受け取れると便利です。当然、個々のpadはリクエストによって異なるアイテムを受け取れるのかと思ったのですが、現時点ではそういう事はできないようです。
とりあえずpadは1つ設置とし、そこで得られるアイテムを必要な場所へ列車運送することにしました。

Factorio 1.1ではsiloからアイテムを取り出しましたが、2.0ではpadから取り出します。

Delux worker's food(py)
Utility SPの作成に必要なDelux worker's foodのレシピが大きく変わっています。易しくはなっていますが、もろもろ再構築が必要です。一部素材がMK04→MK02になったことで、既にMK04ラインを構築済みの場合、MK02アイテムを既に処分していると、MK02ラインを構築するためにまた一からStage上げをする必要があります。といっても、終盤以降の段階では試行回数の暴力で程なくMK02が排出されるのですが。
また、一時BiofluidがFactorio 2.0に未対応だった影響で、Biofluid不要のguano代替レシピも追加されています。

列車ネットワーク(base)
Factorio 1.1→2.0でめちゃくちゃ処理が軽くなりました。
レールの仕様が変わりましたが1.1仕様のレールをコピペ設置することはまだ可能で、とりあえずのプレイには大きな支障はありません。ただし、Factorio2.1では不可能になるという話だったはずなので、将来も稼働を続けるつもりならいずれレールの再設置をするべきでしょう。

Quality(base)
Qualityのバランス調整はまだ十分ではないようなので、実用はせず、可能な研究だけ済ませておくことにします。


この後の展開
一旦全体を整理し、再構築したいです。現状はとにかくクリアを目指すために作られたもので、整理・計算したものでもありません。
再構築の際は、Factorio 2.0の新機能、特にベルトスタックを有効利用し、また流体周りを2.0向けに作り直したいです。Factorio 2.0の列車周りの新機能を活用し、新しいレールを敷設し、そして将来Spoilage有りにスムーズに移行できるようにします。
長い期間が必要になるでしょう。