
ノーチートPyanodon(Full pY) サイエンスパック5/11 (途中)
※今回はfactorio全般の話(バニラ要素)が多めなので、初級者以上のすべてのfactorioプレイヤーにおすすめできる記事です。
過去の記事はこちらからどうぞ。
進捗状況
Pyanodon(Full pY)をノーチートでプレイしています。612時間経過しました。前回記事から213時間経過しています。5種目までのサイエンスパックでできる研究を進め、6種目のサイエンスパック(Chemical Science Pack)の研究に取りかかったところです。この後は、5種目までのサイエンスパックでの研究を継続しつつ、6種目のサイエンスパックの量産化、環境整備、施設更新などを行います。





モール構築
前回記事以降、モールを構築しました。資材の管理(インベントリ管理)がとても楽になりました。
この、インベントリ管理が楽になる、というのがとても重要で、私のfactorio大好きポイントの一つです。
インベントリ管理がめんどくさくなってやらなくなったゲームはいくつもあります。初めからインベントリ容量無限で管理不要、というのは無粋で、ゲームが進み、プレイヤーが工夫することによってそれがなされる、というのが良いのです。わかりますかね?



列車ネットワーク
バニラの列車システムは偉大である
Pyanodonにはバニラにない様々な輸送手段があります。列車が使用可能になる前に、Caravansが使用可能になり、これが最初のまともな中長距離輸送手段になります。Caravansは列車に似た命令を実行することができますが、宛先は列車ネットワークでの駅名指定と異なり座標指定なので、システムの変更や拡張に弱いです。あくまで列車の前座でした。

列車が使用可能になると、あっという間にお役御免になります。バニラの列車システムがあまりにも強力だからです。Train overviewで列車や駅が一覧でき、キーワード検索でき、ステータスを把握できる。積込み:積卸しをm:nとすることができる、駅の移設や追加削減が容易にできる。など。Pyanodonのようにどんどんアイテムの種類が増え、列車の本数が増えても、容易に対応できます。Pyanodonには列車のアップグレードが何段階かあることもあり、列車はきっと最後まで主力の輸送手段になることでしょう。

そして経路探索等(優先度制御等)について、wikiの内容を理解しておけば、列車システムをかなり使いこなすことが可能になります。LTNその他は使ったことないなあ…
本プレイでの列車ネットワークと各処理エリアのデザイン
複線を基本とし、各処理エリアに入るところは(それほど流量は必要ないだろうということで)単線にしています。将来、列車自体のアップグレードによる輸送力増加もあるので、おそらく最後までこのデザインで行けると思っています。線路に沿って電線を設置し、またそのほどよい間隔を活用して風力発電施設を設置しています。
複線や交差点のデザインはとてもシンプルです。ラウンドアバウトも不要です(中級者以上の視点では無意味に探索経路が増える、列車自身との衝突が起きうる分害悪ですらある)。初級者がたびたび陥るデッドロック・渋滞問題とその解決方法として、複々線にしたり交差点を大規模複雑にすることは、殆どの場合適切でなく、機能的には大した意義がありません(機能とか効率とかはどうでもよく見た目が第一である、ということであれば話は別です)。列車ネットワークがうまく機能しない場合、大抵の場合解決方法はそこ以外にあります。これは、何万時間もfactorioを実行しつづけ、複数の大規模工場で高い生産力・UPSを両立させている私の見解です。


列車ネットワークにはいくつか待機所を配置しています。積込みもしくは積卸し駅は多くの場合列車ネットワーク内に分散して複数ありますので、そのいずれかがリクエストを出すまで待機する場所です。このやり方は運用・保守しやすいですが、後述のTrain Path Finder計算量が多くなるやり方です。ここに停車しているすべての列車が、ネットワーク全域に対して頻繁に経路探索を行っているからです。

各処理エリアのデザインです。横軸で処理の種類を、縦軸で処理の量を増やすことを原則としています。つまり、メインバスと同様の考え方です。右が上流、左が下流になっています(大まかに右から左へ処理が進む)。横にタイルが敷かれているあたりはミニバスです。外部エリアとの入出力は列車ネットワークによって行います。
例えば、もしここの中間成果物を列車ネットワークで運び出したい場合は、そこより右側を縦に増設することで容易に対応できます。
将来の研究でより良いレシピが使用可能になった場合は、その部分だけ差し替えるなり、分割して別処理エリアにするなり、臨機応変に対応します。


律儀に一処理一ラインで構築すると冗長なので、まとめられるものは処理をまとめます。ここでは最下流のOptical fiberのレシピを3秒に1回行うように規格化し、一つずつ上流でどれくらいの処理速度が必要か計算し、施設を配置していきます。ここではたまたますべて1つずつでちょうどよくなっているので、簡単にまとめることができました。
こういうのはHelmodなど使えば自動で計算してくれてとても楽なのですが、難易度を高く保ちたい、レシピの発見を楽しみたい等の理由で、少なくともクリアまでは全く使わないことに決めているので、手計算です。



当面は十分な処理能力だと思いますが、もしOptical fiberの生産量を増やしたくなったらこんな感じに増やすでしょう。縦軸で処理の量を増やします。

Train Path Finderの計算量
現在のPyanodonのプレイでは、列車ネットワークのUPS最適化(つまり同じ成果をより少ない計算量、PCリソースの使用で実現する)を行っていません。最適化と保守性はトレードオフなので、ゲームクリアまでは細かい変更に耐えられるよう保守性優先、クリア後の拡張は、リアル時間に対する生産効率を最大化するために最適化を優先するのが良いです。最適化が行われていないPyanodonと、最適化を行っているSpace-Exploration,Bobを比べると、PyanodonのTrain Path Finderの計算量(率)が多いのが分かるでしょう。
列車ネットワークの考え方や最適化に関する大まかな説明は、以前以下のnoteの終わりのあたりにも書きました。



factorioってすごいんだね
今回の記事は振り返ると、バニラのシステムは複雑なPyanodonに十分対応できてすごい!って話になってしまったようです。バニラだとレシピが単純すぎてその良さを十分に理解できないかもしれませんが、Pyanodonのようにレシピが複雑なmodで遊べば、その良さ、ありがたみがより理解できるということなのでしょう。
一方で、モールに列車と、factorioにおけるメインの要素は出切ってしまったので、この先のプレイはやや淡々としたものになるかもしれません。Pyanodonの固有の要素に期待です。Codexを眺める限り、いくつか面白そうなものはあります。
ツイートまとめ
前回の記事から今回の記事までの間のツイートも並べておきます。
#factorio ノーチートFull pY 445時間。画像1,2)モールができてインベントリ管理が楽になった。画像3,4)全体の出力を上げ、管理しやすくするために、raw coalから生成させる各種中間材料の生産施設を分割していった。研究が進むとより扱いやすいレシピが使えるので、適宜乗り換えていく感じ。 pic.twitter.com/LoZjYXvHcM
— spiral (@spiral_power) September 2, 2023
#factorio 最新のPyanodonでmenu simulations対応しました。更に多種類あるタイルのデザインも変わりました。だいぶ見た目が面白い。実際のゲームでは、タイルがないと徒歩速度が遅すぎるので、必然的に歩くところにはタイルを敷きまくることになります。 pic.twitter.com/9VMPLL5mBB
— spiral (@spiral_power) September 3, 2023
#factorio ノーチートFull pY 481時間。5つめまでのSPでの研究を継続中。1,2枚目)最近デザインが変わったタイルや追加されたPyanodonロゴ。8x8パターンと青が気に入った。3,4枚目)植物系のアップグレード区画。だんだん増えてきた。 pic.twitter.com/BPfFNBu2pr
— spiral (@spiral_power) September 10, 2023
Crawdadにより、マップの探索が多少楽になりました。障害物にぶつかってもダメージを受けないのがいい。
#factorio ノーチートFull pY 507時間。乗り物のCrawdad(ザリガニ)。自動車より少し速くて戦車のように木をなぎ倒せる。Ocula(目玉)は物流ネットワーク外のプレイヤーにアイテムを届けてくれる。列車輸送するほどでもない少量アイテムの配達に向いてる。 pic.twitter.com/dAI3BBv4eF
— spiral (@spiral_power) September 16, 2023
#factorio ノーチートFull pY 534時間。Bitumenの処理。Drilling fluidを一定量流し込むことで、Crude oil, Tar, Natural gasいずれかを選択して採取可能になる。それぞれ加工してできるものが異なるので、最終的に3種類とも加工所を作った。余剰の流体は燃やして発電で消費。 pic.twitter.com/NAp8jln8Ra
— spiral (@spiral_power) September 23, 2023
#factorio ノーチートFull pY 566時間。Auog(熊のような生物)のアップグレード。子供にエナジードリンクを飲ませて育てると稀にMK02になる。芋から抽出した糖蜜と木を含む4種の種をすり合わせたものを混ぜ混ぜして作るエナジードリンク。 pic.twitter.com/Rym2Rt3pln
— spiral (@spiral_power) October 9, 2023
#factorio ノーチートFull pY 597時間。もうじき6番目のSP。キーアイテム量産、Stainless steel, Advanced small parts, Acetone。Rubberが不足気味になったけど、Acetone経由の材料増産で解決。一つのアイテムに対して複数のレシピがあり、研究が進むとより良いレシピが選択できるのがpYの面白い点。 pic.twitter.com/h2wVK5uEou
— spiral (@spiral_power) October 22, 2023