電電のブログ

電電生だったひとのぼやき

Factorioのすゝめ

お久しぶりです。

初めに

最終ブログ更新から4ヶ月強経っていて何をやっていたんだろうと思っています。 で、何をやっていたかというとFactorioというゲームをやっていました。(やりはじめたのは最近ですが)

ということで今回はこのゲームの紹介をしていこうと思います。以下コンテンツ

Factorioの説明

このゲームはSteamのレビューの96%が好評としている圧倒的な人気を誇るシミュレーションゲームです。

人気の理由は色々ありますが、まずは、このゲームの説明から簡単にしていきます。

Factorioはその名の通り工場を作っていくゲームです。 主人公(と言っても名前もない)は異星の荒野に漂着し、たった一人でこの惑星からロケットを打ち上げることを目標に資源を採取し、鉄や銅に精錬し、加工して機械を作っていきます。 一人だと機械を作る量にも速度にも制限がありますが、それを自動化する工場を作り、いくつもの資源や部品を組み立てる工場を作っていきます。 というのがざっくりとした内容になります。

それだけ聞くと何も特別なことはないゲームな気がするのですが、このゲーム何がすごいかっていうとその異常な中毒性です。

マジでハマり出すとすごいです。時間がとろけます。

なるほどなと思ったSteamのレビューにある通り、プレイしているとこのゲームは人間の3大欲求を少しだけ上回ってきます(マジです)。気づいたら朝になってるので気をつけましょう。

自分は先ほど70時間くらいかかってクリアしました。

上記影響で私のGWは半分とろけました。明日から真人間に戻りたいと思います笑。

そう言った中毒性の高いゲームなんですが、Factorioをプレイしていると勉強になる点もあり今回そのことを書き留めていこうと思います。

Factorioで学んだことはプログラミングや仕事、果てには人生にも言えることだと思います。

学びpoint

1. 行き当たりばったりで解決するな拡張性を考えて作れ

Factorioをやっていると必要な素材がどんどん増えていきます。鉄板、銅板、ネジ、銅線、硫黄、石材、緑基板、赤基板...

これらを作るポイントと組み合わせるポイントが複数発生するのでとりあえずでベルトコンベアで繋げるとどんどんスパゲッティになっていきます。これだけならまだなんとか動きますが、さらにその後のものを作る際には必要素材量が増えていきます。

[スパゲッティ画像]

例えばスパゲッティ状態の工場で鉄板や銅線がさらに3倍の量必要となった時はもうあっちをつなげてこっちをつなげてと無茶苦茶になっていきます。

最初からどの組み合わせや必要素材料がどれくらい必要かがわかっていればこんな苦労はしませんが、最初は難しいです。そのため作る時は拡張性を持って広げられるようにしましょう。

プログラミングでも、今必要な機能だけ考えるのではなく、今後必要そうになる機能や、拡張できるようなコードを書くことが大切です。 (後で変更するであろう値のハードコーディングを避けるとかね)

2. 無理ってなったらゼロから作り直せ

1を意識しながら工場を作ってみても、後半どんどん厳しくなります。場所や資源は有限なので理想と現実は違うのを思い知らされますね。 それでもこねくり回すのは手なんですが、相当な最終段階でない限り現状の運用で回すのが厳しいと感じるのであれば思い切って作り直すことが必要だったりします。

一度作った工場は無駄になりますが、実際はそうでもなく必要なものの量や運搬のテクニックなど一度目よりもはるかに早く建設することができるはずです。

やり直すことが無駄だと思うことはよくないです。言語化されていないだけで経験は知識となり後々に経験値として生きてきます。一度もやったことがないことと一度やったことがあるというのは大きな違いです。

3. ボトルネックを探し出せ

工場を作って研究やロケット装置の作成に入りました。しかし、思っているより稼働されていません。なんなら一部の部品が余りまくる始末。

こういう時は消費している資材を上から眺めていって、何がボトルネックになっているのかを探しましょう。

素材の供給速度が足りないのかもしれないですし、特定の工場の稼働が足を引っ張っているかもしれません。それらを見つけて修正し、工場における稼働を最適化するときが一番楽しいはずです。

4. 優先順位を見失うな

Factorioをやっているとやることがたくさん出てきます。

工場の拡張をしたい→新しい土地が必要→原生成物のバイター(作中で登場する敵)が邪魔だから倒したい→武器が必要→それを作る素材がない→工場の拡張をしたいと言ったことがよく起こります。

こう言った状況の中で場当たり的に対処していると何がしたかったんだっけとなってしまい当初の目標を忘れ別のことをやりがちです。 目的意識を強く持ちましょう。

5. 面倒くさがらずに仕組みを整えよう

自分はいつもポンプを作る時は工場ではなくて、手元で作成していました。 でも手元で作るってことはそれを使う際には毎回作らないといけないんですよね。そのための材料も持ち歩かないといけないし、ある時 工場で作るようにしたらめちゃくちゃ捗るようになりました。

繰り返しの処理をするのではなく、何度も繰り返した処理はできるだけ自動化するようにしましょう。

そうすれば自分がいない時でも機械が勝手に価値を生んでくれます。

6. 上記の話は無視して好きに遊べ

とは言っても上記の話は効率よく進めるためや、無駄なことをしたくないための話です。

これは仕事じゃなくてゲームなんです。

好きに遊んで、好きに勧めて大いに楽しむべきものなので、上記の忠告は全て無視して遊びましょう。

そもそも究極的に効率を求めるならFactorioをやっている暇なんてそうそうないはずで、プレイするという選択をした方は好きに遊んで遊びきってください。

人生もそうだと思っていて、無駄なことや回り道を全て忌み嫌うと何もできくなるし、楽しめなくなると思うんですよね。 もちろんしなくていい苦労はしないにこしたことはないんですが、だからと言って全てに効率を追い求めるのは違いますね。

(番外編)

  • 巨人の方に乗ると楽

これはゲームの楽しみとしては、ちょっと特殊かもなんですがFactorioはかなり最適化された工場の設置方法や、レイアウトパターンが作られています。もし、「もっともっと最適化したい」や「うまいパターンが思いつかない」という方は見てみるといいんじゃないでしょうか?

自分はVoidさんの動画をみてました。堅実ながらもシンプルなパターン構成や途中で作成方法を思い切って切り替えるなどシンプルな賢さと思い切りの良さがすごいです。(ロケット打ち上げから動画出していないですが、どこまでいったのか気になる。) www.youtube.com

いくつかの美しいパターンや仕組みがあり、最初はそれを使うだけですが、何度も見ていると自分なりの工場を作ることもできるようになります。 これは、業務や仕組みを考える際に俺の考えたサイキョーの仕組みを導入するのではなく、地に足つけて先行研究の調査や聞き込み、過去の取り組みを見ることが重要なことと同じです。

まとめ

ということでFactorioは人生を学べる最高のゲームです。サイコーのゲームをありがとうWube Software。

Factorio楽しいので、健康には気をつけてみんなもやってみてね。工場長になった君を待っているよ。

Steam, Swichでプレイできます。

store-jp.nintendo.com

store.steampowered.com

最後に友人が送ってくれた画像を最後に載せておきます。 ほなまた

参照) アイコン利用icons - factorio@jp Wiki*