家庭でプログラミング教育にトライ
教育業界の老舗、学研が満を持してリリースした「ポコタス★Do」でシューティングゲームをプログラミング!
2018年5月1日 06:00
学研ホールディングスのグループ会社、学研プラスが提供する「学研ゼミ」で、オンラインプログラミング学習サービス「ポコタス★Do(ポコタスドゥ)」がスタートした。
アルファコードの協力のもとに開発されており、命令実行の順序、条件分岐、ループなど、プログラムを扱う上で必要となる基礎的な概念が自然と身につけられる仕組みとなっている。
主人公はハックという男の子。コンパイラ姫とオウムのスティーブと一緒に、冒険型のストーリーに合わせてプログラミングを進めていく。スクラッチのようなブロックプログラミングであり、マウスだけで簡単に進められるので、始める敷居は低い。
ポコっとブロックを足してプログラミングし、「DO」でプログラムが実行できるので、「ポコタス★Do」という名称らしい。最大の特徴は、ストーリー性が高い点と、シューティングゲームなどの具体的なゲームプログラミングにフォーカスされている点だろう。
今回は、算数好きな小学3年生の息子(8歳4ヶ月)とポコタス★Doにトライしたい。
敵キャラ登場!「エピソード0」
ポコタス★Doは買い切り型の有料サービスだが、エピソード0は無料で試すことができる。エピソード0前半は、魔力を秘めた「ポコタスギア」に魔力を取り戻すことが目的となる。必要な16個の宝石を集めるため、コンパイラ姫をプログラムで動かさねばならない。
学研ゼミIDでログイン後、「ポコタス★Do」をクリックするとメイン画面となるので、スタートをクリック。エピソード0画面が表示されたら、「ゴー!!」をクリックでゲームがスタートする。「やることいちらん」画面で、「ステップ1」を選ぼう。
最初にアニメ絵のストーリーが流れる。やることがわかったら、「ソースコードエリア」でプログラミングし、完成したら「DO」をクリックすると、「ゲームエリア」でキャラクターが動く仕組みとなっている。
ソースコードエリア上部の「かんすう」をクリックすると、プログラミングで使うブロックが表示される。ステップが進んでいくと、命令を繰り返す「くりかえせ」ブロックや、「もし〜なら~、でなければ〜」という条件分岐の「はんだん」ブロックなどが表⽰されるようになる。
なお、ゲームエリアの拡大ボタンの隣のマークをクリックすると、プログラムのJavaScriptのコードを見ることができる。わからないことがあったら、「?」マークをクリックすると簡単なヒントが表示される。自習型というだけあり一人でどんどん進められるが、途中で数回引っかかることがあったので、保護者も大体の使い方は把握しておき、アドバイスできるようにしておいた方がよさそうだ。
アニメ絵を見ただけで、「面白そうだね」と近づいてきた息子。「またプログラミングだね」「そうそう」「じゃあやろうかな」。エピソード0はかなり基本的なことばかりなので、すでに色々トライしている息子は「簡単、余裕」と言いながらどんどん進めていく。ただし、目的までの距離が画面でわかりにくいので、「ねー、これって何歩?」「3歩かな」というやり取りが数回あった。
ステップ16では突然、バグースという敵キャラグループが登場し、爆弾を仕掛けられてしまう。そのまま実行すると爆弾に囲まれてしまい、道の途中にも爆弾がいっぱいになってしまう。何と、爆弾を踏むと姫が爆発してしまうのだ。敵がいることで「ええっ!変なの出た!」と盛り上がる息子。「大変だ、やられちゃう!」と私もさらに盛り上げていく。
ところが盛り上げたはいいが、「爆弾だらけだよ。あー、爆発しちゃった……」と困惑することに。結局、『いらないものは「ゴミ箱」へ』というステップのタイトルから、いらないブロックを「ゴミ箱」に捨てることが課題とわかり、私がアドバイスしてクリアした。他のプログラミングゲームではゴミ箱はわざわざステップに組み込まれていないことが多いので、慣れている子ほど引っかかるかもしれない。
ステップ17では敵キャラのトロイを捕まえることが目的となる。無事に捕まえると、敵キャラの皇帝が登場し、エピソード1に続くストーリーが明かされることになる。
シューティングにはまる「エピソード1」
続く有料版のエピソード1は、「スペースクエスト」編となる。流星まつりの夜にバグースに襲われてしまい、宇宙船で敵の艦隊を撃退することになるのだ。燃料となるオーバークロックストーンや宇宙船を手に入れるミッションに続き、ステップ7からは、敵の艦隊を迎撃するシューティングゲームをプログラミングしていくことになる。今回は、エピソード1もトライさせてもらえることになった。
シューティングゲームと言っても非常にシンプルなものから始まるのだが、シューティングゲームも、悪者が登場することも新鮮なので、息子はとても盛り上がっていた。「へー、弾を撃てるなんて面白いね。こんなところにいる敵をどう撃つの?」と言うと、得意そうにやって見せてくれる。そして、敵をやっつける度、「よっしゃー!」と喜んでいた。
進むにつれて、真っすぐだけでなく角度をつけて、斜め方向にいる敵を撃てるようになる。角度は見た目でわかるようになっているところがやりやすいし、プログラムが成功すると敵キャラが倒せるのでわかりやすい。
途中、最初に角度を決めてから撃たないといけないのに、逆にしており、失敗していた。「これだと弾を撃ってから方向を決めてるからじゃないかな。最初に撃つ方向を向かないと」とアドバイスしたところ、「そっか」と納得。すぐに直せていた。
動く敵も出てくる。動く敵に対しては「スキャン」すれば位置を調べて撃つことができる。ただこのときも、例えば6機いる敵に対して、「スキャン」「たまをうつ」を6回繰り返すだけのプログラムにしていてミス。「前も、音を次々鳴らしたい時には、間に休みを入れないと繰り返せなかったよね」と言うと、連続して同じ行為を繰り返させたい場合は短い休みを挟む必要があることを思い出したようだ。「スキャン」「たまをうつ」「一定時間待つ」を6回繰り返して成功していた。
3方向に弾が撃てるなど、宇宙船や弾の動き設定が面白く、息子ははまって一気に作っていた。このあたりになるとなかなか難しく、頭を悩ませる事が多くなるが、最終的には弾が敵を追いかけることもできるようになった。
ただ、クリアするためのプログラミング方法はかなり⾃由度が⾼く、たとえば3⽅向に撃つような課題に対して、⼀⽅向ずつ弾を撃つことにしても、とにかく敵をすべてやっつけられればゲームクリアとなる。3方向に撃つ場合の正解プログラムが見られるわけでもないので、「他にどのような方法があったのか」と少しすっきりしない場面もあった。
息子はゲームクリアが目的なので、非常に自由にプログラムを組んでいた。たとえば敵4機に対して16発撃つなど無駄に多く撃つプログラミングをしていたが、敵が倒せたのでクリアとなっていた。「これ弾が多すぎじゃない?」「いいの、完全にやっつけられるから」と息子。
最終決戦はさらに自由度が高くなる。ゲームクリアまでの時間の長さを設定したり、背景を変えたり、弾の速さや種類も自由に設定できるのだ。シューティングゲームに慣れてないためなかなか勝てないので、息子はゲームクリアまでの時間を10秒と短く設定し、速い弾で敵を追いかけられる設定にしていた。さらに、敵は弾が遅いなど自分に有利に設定していた。「ずいぶん強くしたね」「これなら勝てるよ」などのやり取りがあった後、何度も微調整してトライしていた。
シューティングゲームが好きな子どもは間違いなく喜んで使うだろう。また、他のプログラミングゲームに比べてストーリー性が高い点、敵が登場する点などが大きく異なっている。自由度がとても高いが、プログラミングには正解があるわけではなく、問題を解決すればいいことを考えると、本質的であると思う。
クリアしたご褒美にコレクションがもらえるが、コレクションを⼿に⼊れたことが随時わかるようになっていないため、息子はすべて遊び終わってから気づいてまとめてもらっていた。ただ、もらえるとやはり嬉しかったようで、「やったー。こんなにもらえた」と喜んでいた。
勝つためのゲームバランスを考えるフリーモード
エピソード1をクリアすると、フリーモードで自由にプログラミングできるようになる。自分と敵の動き、弾の動きや速さ、ビジュアルなど、全て自由に決定できるのだ。
シューティングゲーム自体あまり遊んだことがないので、弾を撃つことに夢中になっているうちにやられてしまう息子。そこで彼が考えたのが、敵は遅く出現場所も一定にして弾も一発のみ。ゲームクリアまでの時間を短く設定した上で、自分の弾は速く三方向などに設定。無事クリアしていた。
慣れてくるに従ってゲームクリアまでの時間を長くしていたが、敵の数がA~Cと決まっているので、敵をすべて倒した後は何もない時間が続いてしまう。「もっと敵の数を増やせば」というと、新たな敵Dを作り、敵側も少しだけ強くするなど、楽しめるけれど確実に勝てるゲームバランスを模索していた。
宇宙船と弾のビジュアルも変えられるが、デザインによってサイズがかなり異なるため、ゲームの難易度に影響する。「弾が大きいと敵に当たりやすくて強くなるね」というと、「自分の弾を大きくすれば当たりやすくなるね。敵の弾は小さくしよう」と色々変えて試していた。最終的には、何もしなくても敵の弾に当たらず、確実にすべての敵を倒せる自動プログラムのような設定にして、「待っていれば勝てるんだよ」と言っていた。
ポコタス★Doは、ゲームが好きな子どもにプログラミングへの興味をもたせるきっかけとして使うとよさそうだ。基本的なプログラミング力が身につく上、「遊ぶ」だけではなく「作る」という視点が手に入るだろう。もし学校の授業などで取り上げるなら、自由度が高い点を活かして「クリアする方法をなるべく多く考える」などの課題について考えさせてはどうだろうか。目的を達成するためには色々な方法があることへの理解が深まるだろう。クラブ活動などで使う場合は、フリーモードを活用して「難易度の違うゲームを作ってみよう」などの課題で考えさせてもいいだろう。グラフィックや弾の種類や速さ、敵の出現位置などによって難易度が大きく変わることに気づき、視野や表現の幅が広がる効果が得られそうだ。
教材名 | ポコタス★Do |
利用料 | エピソード0(プロローグ)は無料、エピソード1(第1話)は買い切り1200円(税抜)。 |
対象 | 小学3~6年生 |
環境 | インターネットにつないでブラウザを利用できるパソコン([Windows7 SP1/8.1Update/10]Chrome最新版、Firefox最新版、[Mac OSⅩ10.9/10.10/10.11]Safari最新版)、またはタブレット(iOS9.3以降~iPad) |
保護者に求められる知識とスキル | パソコンの基本操作や文字入力ができること、簡単なプログラミングのアドバイスができること |
学習効果 | プログラミングに興味を持つ、論理的思考力の向上、表現力を高める、ゲームバランスを考える |
学習時間のめやす | エピソード0~1で2時間強程度 |
※学習効果や学習時間は個人差があります