【ゲーム感想】農家はREPLACE()されました

目次

  1. 前置き
  2. システム
    1. 内蔵エディタの使いにくさ
    2. プロジェクト・構文の制約
  3. やりこみ
    1. 実績コンプ
      1. これからどうする?
      2. 大XXX農家
      3. XXXマスター
      4. 競争農業
      5. 完全自動化
  4. 攻略のヒント
    1. 複数ドローンの扱い
  5. 総評

前置き

筆者は一応本職でプログラミングを行う人間で、Pythonを書いた経験もあるにはある。
本作はプログラミングというより、アルゴリズムを考えるためのパズルゲームであり、ネタバレがプレイ体験に大きく関わってしまう。
筆者が攻略した記録でもあるため、そのパートに入ると攻略法のネタバレになってしまうおそれがあることに注意してほしい。1

システム

本作は、グラフィックも最低限、人間は登場せず、ただ農場とドローンがあるのみ。
シナリオもBGMもなく、SEはやや耳に気持ちいいが、それくらいのものである。
とにかく、プログラムを書いてドローンを操作し、農業を自動化していくゲームだ。

最初はフィールドが1マスしかなく、生えてきた草を収穫するだけの簡単なプログラムしか書けない。
ところが、使える構文は徐々に増え、フィールドは次第に広がっていき、茂みや人参、木、カボチャ、サボテンを植えて育て、それらを収穫したり、かと思えば農場を迷路に魔改造して宝探しを楽しんだり、恐竜になりきって何故か古代の骨を発掘したりする。2

ゲーム中にプログラムエディタが内蔵されており、そこにPythonのサブセットであるプログラムを記述していく。
書いたプログラムを即座に試せるし、試した結果が目に見えるので、プログラミングの入門には良いのかもしれない。
プログラミングそのものというよりは、プログラミングを用いたビジネスの入門3でもある。
どんなにダメなコードであっても、動き続け、稼ぎ続けるのが正義。
そう、効率の良くないプログラムでも動き続ける限り、作物を収穫し続け、次なるビジネスの可能性を広げることができる。

例えば人参やカボチャは、植えるために他のリソースを必要とする。
草や木材を大量に用意しておかなければ、これらを量産する体制は作れない。
より上位の作物を作るために、下位の作物が要求される。

これだけであれば簡単だが、効率良く収穫するための規則が定められた作物もある。
カボチャは1マスで育ち切った時、20%の確率で枯れてしまうが、正方形で複数マス分の正常なカボチャが育った時、合体して巨大になっていく。
サボテンは奇妙な順序感覚を持っており4、サイズ順に並べ替えることで収穫量が大きく増える。
ヒマワリは10マス以上植えて最大のものを収穫するとより多くの太陽エネルギーを得られるし、草や木、人参は特定の規則に従って混作することで収穫効率を伸ばすことができる。

獲得したリソースを使ってスキルツリーを伸ばしていき、使えるプログラミング構文を増やしたり、育てられる作物を増やしたり、収穫効率を高めていくことができる。

内蔵エディタの使いにくさ

仕方がないことだが、内蔵エディタは絶妙に使いにくい。
外部エディタを利用する方法がサポートされており、ある程度規模が大きくなったらVSCodeなどの外部エディタに移行するのが良いだろう。

プロジェクト・構文の制約

ゲームの制約として、コードをフォルダ分けしたり、型ヒントを使うことができない。
利用可能な構文も限定されており、すでにバリバリにPythonを書ける人にとってはかえって難しいかもしれない。

やりこみ

実績コンプ

これからどうする?

スキルツリーをすべてアンロックする。
他の実績に比べれば、特に難しいことはない。
効率の良くないプログラムでも、時間をかければ達成できる。

大XXX農家

各作物に対して、累計獲得数の実績がある。
後述するマスターを達成しようとするなら、その過程で達成しているだろう。

XXXマスター

各作物に対して、マスターの実績がある。
1分間に指定された数の作物を作ることで達成できるが、なかなかしっかりとした最適化が求められるものばかり。
水やりを忘れると達成できなかったりする。

筆者が最も苦労したのは迷路マスター。
過去には、5x5マスの迷路を作り、全てのマスにドローンを配置して再利用と再生成を繰り返す力技で達成できたようだが、これは大幅に弱体化され、達成不可となっている。
筆者は頑張って32x32マスの迷路を32機のドローンに探索させようとしたがさほどうまくいかず、計算量の少ない方法を求めて4x4の迷路を32個作って力押しする方法に行き着いた。

こうすれば効率よくなるのでは、という方法を着実に実装することで達成できるため、なかなか達成感がある。

競争農業

ランキングに乗る。
特定の作物を指定数作るのにかかる時間を競うようなランキングが多くある。
リーダーボードを呼び出す構文で参加することができ、指定された目標を達成するまでの時間を競うランキングがある。
200位までしかなく、時間が経つほど達成が難しくなると思われる。
後述の完全自動化を達成すると、同時に達成できる。

完全自動化

フルリセットのランキングに乗る。
これが本作最難関の実績となる。
ランキングは200位までで、時間が経つにつれて熾烈な争いになっていくからである。
筆者は2026/02/08時点で195位に滑り込み、なんとか実績をコンプした。

完全自動化

攻略のヒント

あんまりランキング上位にいるわけでもなし、とりあえず筆者のコードを置いておく。
完全自動化を達成したコード (未整理)
色々と迷走していることが伺える恥ずかしいコードだが、睡眠時間を削ってダラダラと書いたコードなんてそんなものである。5

複数ドローンの扱い

各ドローンは別々のメモリ空間を持ち、互いに情報を共有できない。
いかに各々に異なる仕事をさせるか、というのが工夫のしどころになっている。

筆者は、雑に生成時にIDを渡して、それを使って分岐を書いたりしていた。

総評

コードを書いて制御するゲームは、中毒性があって良くない。
散々睡眠時間を食われた挙げ句、型の使えないストレスなんかでゲーゲー言いながら楽しんだ。

最適化はほどほどでもなんとかなるだろうと踏んで、可読性に寄せてコードを書こうかな、なんて余裕をかましていたが、段々と辛くなってどっちつかずのひどいコードが完成。
それでも実績コンプにたどり着いたのだから、やはり動くコードこそ正義なのだろう。6

収穫や水やりのSEがなかなか気持ちよく、書いた通りに動くドローンを眺めているだけでも楽しいので、ゴリゴリにやりこむつもりでないならオススメできる。
やりこむのであれば、脳と時間のリソースをごっそり持っていかれることを覚悟しなければならない。
それが楽しいというのはなかなかに難儀で、筆者としては今後、こういった系統のゲームは封印の構えを取りたい。7

間違いなく名作であり、面白いゲームだった。
ただ、今言えるのはただ一言だけだ。

ようやく、気持ちよく眠れる。おやすみなさい。8


  1. まあ、最速リセットのランキング195位に4:40でギリギリ滑り込んだくらいには、全く最適でないやり方をしているが。
  2. 農業とはいったい何なのだろうか。
  3. 疑似体験。
  4. 原文にこう書かれている。これのみならず、本作はテキストも面白い。
  5. そして、そんなものでも完全自動化のランキングに乗るほど、競技人口が多くない。
  6. もっとも、保守性を一切考えなくて良い娯楽のコードだからそう言い切れるのであって、実際の業務でこんな雑すぎるコードを出してきたら再教育モノである。
  7. こういうパズルは健康に良くないのだ。ぐっすり眠れたはずの時間を返してほしい。
  8. 現在時刻、午前2時38分。