Memorandum

普段の生活の覚え書き。主に技術録

【Nintendo Switch】ヒューマン・リソース・マシーン

ゲームは好きですか?私は好きです!幼稚園の頃にファミコンを買ってもらって、昼過ぎから夕方までずっとやりこんでいたぐらい好きでした。その頃ハマっていたのが「星のカービィ夢の泉の物語」です。子供の頃はすごいボリュームに感じて全然飽きずに続けていたような気がします。 そんなゲームですが、ゲームばかりしていたら頭が悪くなるとか子供の頃はよく言われていました。(その時のゲームの歴史は浅いですから、親の思い込みが強かったと思います。現在では知的機能の発達や、老人の認知症予防などに一役を買っています)

Human Resource Machine

そして今、ゲームをしながらプログラミングが学べるゲームソフトが発売されています。その名も「ヒューマン・リソース・マシーン」!! 意訳すると、「人間が材料の機械」と言った感じでしょうか。このゲームは人間を命令で操作して目的を成し遂げるゲームです。そして命令できるコマンドは10数種類しか用意されていなく、その命令も読み込み、出力、足し算、引き算など単純な命令のみです。これらの命令を組み合わせて、数値の比較を行ったり、数値や文字を昇順(小→大の順)に並べ替えるなどのミッションをこなしていきます。

やりこみ要素

普通に進めていくだけでも結構やりごたえがあるのですが、更にやりこみ要素として、問題を解く際にプログラムの行数を○○行以下にせよというサイズ目標と、プログラムのステップ数と呼ばれる処理の手数を抑えるスピード目標があり、これを達成するとなるとかなり難しいです。私はプログラマとして多少の知識はあると思いますが、それでも最後までクリアするには時間がかかりましたし、更にサイズ目標やスピード目標を達成するとなると、意識してプログラムの最適化を考えて実装しなければなりません。(まだ全ステージの完全制覇はしていないです)

アセンブラ(Assembler)

このゲームで扱えるコマンドは非常に単純で、種類が少なく、プログラミング言語でいうと、アセンブラと似ています。アセンブラはコンピュータに命令を与える機械語と呼ばれる言語を、人間がより分かりやすくした言語です。機械語よりは分かりやすいのですが、命令が単調で、種類が少ないので多くの記述が必要になります。そのためC言語などの1行が、アセンブラだと数行~数十行の記述になってしまいます。そのためC言語などの高級言語と比較して、低水準言語と呼ばれています。 このようなアセンブラ言語は複雑な処理が必要でない、もしくは高級言語を使用できない環境・状況等で使用されています。例として信号機やマイコンと呼ばれる機器が組み込まれている製品(炊飯器、洗濯機、電子レンジなど)で主に利用されています。昔だと、冒頭で出てきたファミコンゲームボーイなどでも利用されていたそうです。 また、アセンブラ機械語はコンピュータ科学の必須知識だと思います。CやJavaなどでプログラムを書いても実際に実行するのは機械語なので、それに近いアセンブラを学ぶことは、どのようにしてプログラムが機械語に変換(コンパイル)されて実行されるのかという、最も下層の処理の仕組みを理解することができます。

アルゴリズム(Algorithm)

現代に置いては、誰でも簡単に高級言語からプログラムをすることができて、アセンブラが必要とされる場面は少ないと思いますが、このゲームではアルゴリズムを考える力が鍛えられると思います。CやJavaなどの高級言語でプログラミングをしていると、ライブラリからソート(並び替え)のプログラムを呼び出すことによって、簡単かつ最適な処理でプログラムを組めてしまいますが、そのようなライブラリが使えない状況では自分で一から、処理の流れを考えたり、最適な方法を考える必要があるので、面倒ではありますが確実に力がつくと思いました。

プログラミングへの入門として

ネットでの評判を見たら、「プログラマにとってすら難しいゲーム」とあるように、簡単なゲームではないと思います。しかし、プログラミングも結局はパズルゲームと似ているので、パズルゲームが好きな人にはおすすめできると思います。 僕はNintendo Switch版のこのゲームを買いましたが、Switch版の他にもスマホ版(iOSAndroid)や、Steam版などがありSwitchを持ってない人でも遊べます。(ちなみに日本語に対応しているのはSwitch版だけらしいです。)

[amazon asin="B07CZ3Q6VR" kw="ヒューマンリソースマシーンオンラインコード版"]

iPhoneAndroidアプリも出ていますので始めやすいですね

Human Resource Machine
Human Resource Machine
開発元:Experimental Gameplay Group
¥600
posted withアプリーチ

PCしか持っていない方はSteam版がありますので良かったらどうぞ

https://store.steampowered.com/app/375820/Human_Resource_Machine/