Mukai Systems

プログラマにお勧めするSteamゲーム

Description

趣味もプログラムであるようなプログラマは少なくないだろう。私もそのうちの一人だ。プログラマーは考えることが好きなのだ。

この記事では、私のようなプログラマにお勧めするSteamで購入できるパズルゲームを厳選して紹介したい。たまにはパズルゲームでもいかが?

Factorio

残念なことにあなたは惑星に不時着してしまった。

このゲームの目標はロケットを製造して脱出することだ。ロケットを製造するためには資源を採掘して部品を製造する必要がある。普通に作っていたらいつになっても脱出できない。工場を建築して自動化しよう! ただし、不時着した惑星には原生生物がいるので防衛も忘れずに。

工場長に求められる資質は次のようなものだ。

このリストを見て、プログラミングで要求されるスキルと類似点が多いことに気が付くだろう。プログラミングと同様に、プレイする人によって生産性に1000倍も10000倍も差が出る面白いゲームだ。

Steamで5000時間プレイした人が次のようにレビューしていたが、ちょっと納得できてしまう。

factorioは人生であり、生活である。

日常に支障をきたすことは間違いないので、安易に手を出すのはおすすめしない。

The Witness

ゲームについて述べてしまうとネタばれになってしまうため、何も調べずにやってみていただきたい。

お勧めした人から3D酔いしてしまった。という感想を頂いたので普段一人称視点のゲームをやらない人にはお勧めしない。

こちらが楽しめれば、同じように一人称視点のパズルゲームとしてTalosシリーズもお勧め。こっちは私も3D酔いしてやめてしまったけど。

Portal & Portal 2

もはや説明不要。Steamをインストールしてるならインストールしなさい。

二人で協力プレイができるので、相手がいるならPortal 2は本当にお勧め。

よくセールをしているので、ウィッシュリストに入れておくとよい。

ただし、紹介するリストの中ではちょっと簡単すぎるかもしれない。

Last Call BBS

Zachtronicsというdelveloperがいる。彼らは折り紙付きのパズルゲームをいくつも作り出してきた。Last Call BBSはZachtronicsが手がけた最後のゲームである。

いくつかのパズルが遊べるので、Zachtronicsがどんなパズルゲームを作るのか知るのに最適だろう。Zachtronics製のパズルゲームの一つの特徴として、「解き終わった後に他人のプログラムのステップ数、使用した部品の数などのヒストグラムが表示される」いうものがある。禿げそうになりながら、やっとの事で解けたと思って蓋を開けてみると、「下位5%の効率だった。」なんて事もしばしばで、それもまた楽しい。Zachtronicsのゲームは全体的に難易度が高いゲームが多いため解いた時の達成感も一入である。

これ以外にもZachtronics製のゲームをいくつか紹介しているが、このゲームのどのパズルも楽しめなかったのであればZachtronics製のパズルは避けた方が無難かもしれない。

TIS-100

Zachtronics製。

仕様書を読んでアセンブラを書くゲーム。たまには硬派なゲームもいいじゃないか。

Opus Magnum

Zachtronics製。

指定された物質を錬金するための機械を作成するゲーム。

機械は主にアームからなる。アームは画面上に自由に配置でき、それぞれのアームが所望の動作になるようにプログラムを記述することになる。このゲームをやると、あなたはRob Pikeの格言を思い出さずにはいられないだろう。

Rule 4.

Fancy algorithms are buggier than simple ones, and they're much harder to implement. Use simple algorithms as well as simple data structures.

-- Rob Pike, Rob Pike's 5 Rules of Programming

Zachtronics製のゲームとしては比較的易しめなので入門にどうぞ。

SpaceChem

Zachtronics製。

指定された化学物質を作成するためのラインを設計するゲーム。

同期処理やスイッチによる状態遷移など扱うことになり、難易度は非常に高い。

SHENZHEN I/O

Zachtronics製。

アセンブリ言語に近い低級言語を用いて指定された半導体回路を作るゲーム。

指定されたプログラムを作成するために必要な言語やマイコンの仕様は、付属の仕様書を読んで習得しなければならない。「なぜ休みの日に仕様書片手にプログラムを書いているのだろうか。」と自問したくなること間違いなしだ。

A=B

A=Bは命令が1つしかないプログラミングゲームです:A=Bで、AをBに置き換えるという意味です。

「置換しかできない言語で何ができるんだ。」と思わないだろうか。実はこの言語はチューリング完全だ。

A=Bを実装してみたので、試してから買ってみるのも悪くはないだろう。

A=B interpreter

Human Resource Machine

本作は以下に示すような簡単な命令セットからなるプログラミングを使用したパズルゲームである。

少し簡単すぎるかもしれないが、油断するとすぐにスパゲッティコードになってしまうだろう。

あなたがプログラミング未経験者だったら、この世界への入門として自信を持ってお勧めしたい。

なお、本作には並行プログラミングのコンセプトを取り入れた続編「7 Billion Humans」があるが、個人的にはそこまで楽しめなかった。

Baba Is You

Lisp系の言語が「Programmable Programming Language」であるとすると、Baba Is Youは「Programmable Sokoban」であると言えるだろう。

細かな言語仕様に依るような理不尽と思えるパズルがあったり、終盤にちょっとやりすぎだなと思わせるような点があったりして消化不良になりがち。

ただし、コンテンツの量は金額に対して十分すぎるし、この画期的なアイデアには一度触れてみてもいいかもしれない。

Room to Grow

サボテンを操作してサボテンを咲かせるゲーム。と、言ったところで説明になっていないので、できのいいストアページを確認されたい。

このゲームで特筆すべき点は、反作用でサボテンが進むということだ。

大きく3章構成になっているが、章ごとにルールがアレンジされ飽きさせない。

かわいいサボテンに反して、問題は易しくはない。

Patrick's Parabox

とても面白かったが途中で飽きてしまった。

これもBaba Is Youと同じ理由で積極的にお勧めしにくい。

が、アイデアがとても面白いので一度はさわってみてほしい。

shapez

Factorioがあるならいいかなーって感じ。最近2も出たんですって。

デモ版があるので遊んでみて気に入ったら買うのがお勧め。

Braid

前述した「The Witness」の開発に携わったJonathan Blow氏が開発したゲーム。

一見マリオのようなただの横スクロールアクションに見えるが、時間を巻き戻せる能力を駆使したパズルゲームなのである。

好みが非常に分かれそうなのでお勧めは正直しづらい。

The Case of the Golden Idol & The Rise of the Golden Idol

このゲームは、謎解きアドベンチャーとでも言えばよいだろうか。

ゲームはいくつかのチャプターから構成されている。各チャプターは、殺人事件の一幕が描写されていて、証言や証拠をもとに何が起きたのか推理をする。というのが主な流れ。物語の質が高く、前半の伏線が後半で見事に回収されていく。

一作目も二作目もストーリーの質が高かった。DLCも質が高いので購入することをお勧めする。

このゲームが気に入った人には、Golden Idolの派生元といわれるReturn of the Obra Dinnもお勧めしておく。後半になるにつれてバックトラックでごり押しが必要な、できの悪い数独を解いているような後味の悪さがあったが、全体としては楽しめた。これらが楽しめるなら、カジュアルな謎解きとしてHer Storyも楽しめるかもしれない。

Chants of Sennaar

プレイヤーが複数の未知の言語を推測して習得していくという他に類を見ないパズルゲームである。

あることがらを複数言語で説明している壁画なんかは、ロゼッタストーンを思い起こさせる。

バベルの塔をモチーフとしているという世界観も美しく、ストーリーもなかなか面白かった。

理不尽さもほとんど感じることもなかったし、難易度も絶妙でパズルゲームとして文句なしに完成度が高かった。15時間もあれば全実績解除できるようなお手軽さもよかった。

Infinite Einstein Tiles

Mukai Systems製。(ただの宣伝

2022年に発見された長年未解決だった非周期モノタイルがついに発見された。

Infinite Einstein Tilesは、非周期モノタイルを題材にしたジグソーパズルゲームだ。

正直なところ、これ以前に紹介したゲームを気に入って頂けるような方々には少しカジュアルすぎるので、あまりお勧めはしません笑

See also