学習意欲がないユーザーに立ちふさがる「チェックポイント」という存在
はじめてゲームプログラミングにおけるサンプルゲーム制作の「レッスン」は、プレーヤーが間違えたプログラミングをしないよう、操作を大きく制限している。たとえば「Bボタンの入力を検知するノードを呼び出してください」と指示された時、「中間」や「出力」など、異なるカテゴリーのメニューをクリックしても反応せず、正解である「入力」>「ボタン」>「Bボタン」のメニューしか動作しないようになっている。
この仕掛けにより制作者側が意図した通りのサンプルを作らせるという目的は達成される。だが一方で「ノードの使い道は理解していないけど、片っ端からクリックしていき、変化があったものを試す」という乱暴なクリア方法も通用してしまう。このため、ノードの役割やプログラミングの基礎を理解しないままレッスンを終えることも可能なのだ。ところが、そんなユーザーの前に立ちふさがる、「チェックポイント」という存在が用意されているのも、このソフトの優れたポイント。
たとえばあるチェックポイントでは、「ヒトにリンゴを取らせたいのに、なぜか取れない」というバグがあるプログラムが提示される。実行結果を見て、どこに問題があり、どのノードを修正すればいいのかを考えるという設問だ。
ソフト内では特に明言されていないが、これはプログラミングにおけるミスの修正を行う「デバッグ」そのものだ。このソフトでのゲーム制作はもちろん、将来プログラミングをするとしたら避けて通れないデバッグ作業を、クイズのようなエンターテインメントコンテンツとして体験できる。
どの問題も、直前のレッスンで各ノードの使い方などを理解してから進めば簡単にクリアできる。だが雑に、片っ端からクリックしてレッスンを終えてきたような人は、ここから先に進めないようになっている。ゲームメーカーならではのエンタメ性を持たせながらも、しっかりとプログラミングを学ぶことを目的としたソフト制作者側の姿勢は、非常に好感が持てた。
地味で選択肢の多い「プログラミング」の入り口として最適なソフト
プログラミングの学習は、非常に地味で選択肢が多すぎるため、迷走しがちだ。前述のとおり、「●●みたいなゲームを作りたい」という目標を持ってプログラミングの勉強を開始して、やっと動いたプログラムは画面に文字を表示するだけ。そこでモチベーションが保てない人もいるだろう。また、開発環境や言語、プログラムを動かす環境などのバリエーションが広く、どれから習得すればいいのかも悩むかもしれない。