Zachtronicsをご存知だろうか?
Zachtronicsは、知る人ぞ知る超難解プログラミングパズルゲームのメーカーである。
作品の中では特にSpaceChemが有名で、私もSteamのセールでSpaceChemを購入し、あまりにも面白過ぎたためそれからはすっかりZachtronicsのファンになってしまった。
今でも、Zachtronicsの新作が発売されるたびに、発売開始から1時間以内には購入してプレイしている状態だ。
そんななか、ついに新作パズルEXAPUNKSが 2018年8月10日に早期アクセス開始 となった。今回も他人の高評価レビューを待つまでもなく、即座に購入してプレイした。
EXAPUNKSの位置付け
Zachtronicsの中でも比較的見かけが取っ付き易いゲームはSpaceChem、Infinifactory、Opus Magnumの3作品になる。
これらはいずれもプログラミング的な発想は必要だが、インターフェイスが親切で、プログラミングの入力自体は必要ない。
これに対してTIS-100、SHENZHEN I/Oの2作品はまさにガチモンのプログラミングだ。
コーディングルールのマニュアルが用意されており、これに基づいて実際にプログラミングを行っていく必要がある。
そしてEXAPUNKSは、この2作品の言ってみれば続編であり、毎度おなじみのコーディングマニュアルも健在だ。
EXAPUNKSの難易度
EXAPUNKSを5時間ほどプレイしてみての感想だが、前作SHENZHEN I/Oよりはやや簡単な印象を受ける。
と言うのも、TIS-100やSHENZHEN I/Oで結局何が難しかったかと言うと、コーディング可能な行数があまりにも少な過ぎる点だった。
一方で、EXAPUNKSは コーディングの行数にはかなりゆとりがある 。
こんな感じで条件分岐を駆使して簡潔なコードを書けば、コードの行数(SIZE)は小さくなる。
しかし、条件分岐を一切使わずに全てのコードをベタ打ちしてゴリ押しすることも可能だ。
しかもこの場合、SIZEは大きくなってしまうが、条件分岐の判断が不要なため、処理速度(CYCLE)は寧ろ向上する。
ちなみに、前作でもおなじみのミニゲームは今作にも搭載されている。(ゲーム内容は異なる)
EXAPUNKSの感想
EXAPUNKSを触った感想としては、やはり信頼のZachtronicsと言うだけのこともあり、内容は面白い。
特に、私にとって何より嬉しかったのは、
条件分岐の判定式に、=や>,<が使えるようになった事だ。
前作SHENZHEN I/Oの唯一の欠点は、条件分岐の表し方があまりにも分かりにくく、プレイの度に毎回マニュアルを熟読する必要があった。
>や<の記号を使えるようになったおかげで可読性が著しく向上し、コーディングのルールを覚えることではなく、アルゴリズムを工夫することに注力できるようになった。
また、前作までには無かったKILLやREPL命令の使い所もなかなか興味深い。
特に、REPL命令は、メモリやコードを含む全てのコピー(レプリカ)を作る命令であり、この命令の使い所こそが前作までと今作を分ける最大の相違点になってくるのではないかと思っている。
EXAPUNKSまとめ
EXAPUNKSは、パズル好きやプログラミング好きにはぜひともオススメしたい。
しかし、マニュアルを読み解くための英語力も必要であり、プログラミング経験がない人にとってはかなり取っ付き辛いかもしれない。
Zachtronics作品をまだプレイしたことのない方には、ぜひとも先にSpaceChemをプレイしておくことをおすすめする。
こちらは日本語にも対応しており、マニュアルも無いので気軽にプレイできる。
ところで、偉そうに解説している私はと言うと、2冊目のマニュアルが解禁された直後くらい(下の画像の問題)で進行がストップしてしまった。
しばらくは、今までの問題の解き直し(SIZEやCYCLEの改善)をしながらじっくり取り組んでいくつもりだ。