【特集】

AIがコードを書く時代に、あえて自分の手でwhileループを書く「農家は Replace() されました」プレイレポート【GW特集2026】

元SE・現ゲームライターが再発見した「プログラミング」という遊びの楽しさ

【農家は Replace() されました】
10月10日 発売
価格:1,200円

 AIに「ログイン機能を作って」と言えばコードが出力される2026年。「ChatGPT」や「Gemini」をはじめとする生成AIの進化は凄まじく、専門知識や経験がなくても、AIに命令すればアプリができあがる時代だ。プログラミングは「自分で書くもの」から「AIに書かせるもの」へと徐々に変化しつつある。

 そんな時代に、あえて自分の手でコードを書くことを「遊び」として楽しませてくれるゲームがある。それが2025年10月にリリースされた「農家は Replace() されました」だ。本作は「Python」に似た言語でドローンをプログラムし、農業を全自動化するこのインディーゲームであり、Steamにて「圧倒的に好評」を獲得し、累計40万本以上を売り上げている。

 元システムエンジニアで、今はゲームライターをやっている筆者が、久しぶりに「コードを書く手触り」を味わってきた。

【The Farmer Was Replaced | Full Release Trailer】

元SEのゲームライター、久しぶりにコードを書く

 筆者は今でこそゲームライターを生業にしているが、もともとはシステムエンジニア(SE)だった。厳密に言えばプログラマーではないのだが、自分の業務をちょっと便利にするシェルスクリプトを書いたり、バッチファイルを作る程度のことはやっていた。転職してからも「Python」というプログラミング言語を軽く触っており、Web検索とサンプルコードのつぎはぎで、それっぽく動くDiscordのBOTを作るなどしてきた。

 そんな筆者にとって、本作はタイトル「農家は Replace() されました」からいきなり刺さった。プログラミングにおけるReplace(置換)関数がそのままタイトルになっている。農家がテクノロジーに置き換えられた世界で、プレーヤーはドローンにコードで指示を出し、農作業を自動化していく。この設定だけで、ニヤリとするエンジニアも多いのではないだろうか。

Replace() をゲームタイトルの中に盛り込んだのがユニークだ

最初は「harvest()」だけ。そこからwhileループへ

 ゲームの基本的な流れはシンプルで、画面に広がる格子状の農場に、ドローンが1機いる。プレーヤーは「Python」によく似た本作オリジナルのスクリプト言語でコードを書き「実行」ボタンを押す。するとドローンがコードの指示通りに動き出し、草を刈ったり、作物を植えたり、収穫したりしてくれる。

 ほかの多くのプログラミングゲームがステージクリア型を採用しているのに対し、本作はひとつの農場を継続的に発展させていく構造になっている。収穫した作物を使ってスキルツリーをアンロックすると、新しいコマンドや関数、作物が使えるようになる。

 本作の親切なところは、あえて最初からすべての機能が解放されているわけではないことだ。ゲーム開始直後にできるのは、ドローンの直下にある草を刈る「harvest()」のみだ。少しするとドローンを動かす「move()」がアンロックされるが、移動しながら草を刈ろうとすると下記のようなコードになる。

【移動しながら草を刈るコード】

harvest()
move(North)
harvest()
move(North)
harvest()
move(North)

 このやり方でも動くが、移動したい数だけコピペするのは面倒だし、何よりも“美しくない”。そこで、スキルツリーから「while」ループをアンロックする。

 「while」というのは条件が満たされている限り、決められた処理をループする仕組みだと思ってほしい。今回は条件を「True」と指定しているので常に条件が満たされており「harvest()」と「move(North)」が無限に繰り返される。

【移動しながら草を刈るコード(whileループ)】

while True:
→harvest()
→move(North)

※「→」はタブを表します。

 たったこれだけで、ドローンが延々と北に向かって草を刈り続けてくれる。自分が書いたコードでドローンが動き出す姿を見ると、最初にプログラミングに挑戦し、動いたときの喜びを思い出す。

 進めると作物もグレードアップし、草からにんじんへ、にんじんから木へとステップアップする。草は自然に生えてくるので面倒なステップは必要ないが、にんじんは地面を耕して植える必要があるし、木は隣同士に植えると成長が遅くなるという要素がある。例えば、にんじんを栽培して収穫するサンプルコードは下記のようなものになる。

【にんじんを栽培して収穫するコード】

while True:
→if can_harvest():
→→harvest()
→→till()
→→plant(Entities.Carrot)
→move(North)

※「→」はタブを表します。

 「if can_harvest()」という部分はドローンがあるマスの作物が収穫できる状態かを判定する部分だ。作物が成長する前に収穫すると植えたコストが無駄になってしまうので、状況を確認してから収穫をするようにしている。続いて「till()」というのが地面を耕す命令で、「plant(Entities.Carrot)」がその場ににんじんを植える命令だ。

 全体の流れとしては、ドローンがあるマスの作物が収穫できるかを判定し、もし収穫できる場合は、収穫し、地面を耕し、次のにんじんを植える。収穫が終わるか、収穫できない場合は1つ北のマスへと移動するという流れだ。ごくシンプルだが、これでもドローンは充分に動く。

 さらに進めると「for」ループや条件分岐、変数、配列と、使える道具が徐々に増えていくし、水やりや肥料の概念も登場する。最初は超シンプルだが、やれることが増えるたびに、加速度的に難しくなっていく。

スキルツリーをアンロックしていくことで新要素が解放される。新要素が出るたびにかなり難しくなっていくが、無理に効率を追い求めなければなんとかなる部分も多い

 ここで気づいたのが、真に求められるのは、ゲーム内のヒントや解説テキストを読み解く「日本語力」であることだ。言い方を変えると、仕様書を読み取る力とも言える。

 これは実務でのプログラミングにも通じる話だ。コードを書く技術そのもの以上に、「何を実現したいのか」を正しく理解する力が問われる。効率を度外視すればゴリ押しでもそれっぽくは動くし、本作はゲームである。思い通りに動かなかったり、効率が悪かったとしても「動けばヨシ!」の精神でも大丈夫だ。

 それでも効率よくやっていくと農場が拡張されたり、ドローンの速度が上がったりと、最適化した分だけちゃんとご褒美が返ってくるので、モチベーションは維持される。

真に必要なのは「日本語力」であることに気づく。

AIがコードを書く時代に「自分で書く」ことの意味

 さて、冒頭でも触れたが、2026年の今、生成AIに自然言語で指示を出せばコードが生成され、エラーが出れば修正案を出してくれる。競技プログラミングの世界ですらAIが人間のトッププレーヤーを上回る時代になった。

 だが本作をプレイしていると、自分の頭で考え、自分の手でコードを打ち、実行ボタンを押して結果を見守る。ドローンが意図通りに動けば嬉しいし、バグがあれば自分で直す。この一連のプロセスの楽しさを強く感じられるようになる。

 確かに、目的を達成することを目指すならば、AIや便利な道具を使えばいい。実際にAIに聞いてみると、それなりに動くコードが返ってくる。だが、自分で作る楽しさは、効率を求めることとは別の次元にある。プログラミングもまた、同じなのかもしれない。本作はそれをゲームというフォーマットを通じて思い出させてくれた。

 本作は、プログラミング経験者が久しぶりに「コードを書く楽しさ」を味わうのにちょうどいい作品だ。ガチガチのシミュレーターほど敷居が高くなく、かといってプログラミング教材のように退屈でもない。自分が書いたコードでドローンが動き、農場が発展していくのは、間違いなくゲームの楽しさがある。

 AIが人間の代わりにコードを書いてくれる時代に、あえて自分の手でwhileループを書く。本作はそんな贅沢な行為が楽しめる作品だ。効率を考えないプログラミングという行為が、贅沢であり、遊びでもある。そんなことを思い出させてくれる作品だ。

ちなみに、生成AIを使うと本作で使えるコードも生成できた。どうしてもわからない時のヒントに使うのはアリだろう