太子プログラミングクラブ中級第1期・初級第1期(2026年6月)~通信対戦を改造する~
太子プログラミングクラブは、双方向通信をするプログラムに取り組んでいます。6月は私が作ったシューティングゲームを、自分たちの好みに改造していきます。
初級は、タイピングの練習をしつつ、AIと対話します。
Contents
基礎練→生成AIについて学習
初級はタイピングから始まり、アルゴロジックなど基本的な練習を進めていきます。

初級は小学4年生が中心のクラスです。小学校4年生だと、まだまだタイピングは未熟ですし、ローマ字が完全に覚えられていない場合があります。ゲームを使って、楽しく訓練をしながら伸ばしていきます。
- 文字が自由に入力できること
- 自分の考えをコンピューターに伝えられること
これらが上手になってくると、その後のプログラミングや、生成AIを使った対話でも高い効果がえられます。
生成AIがどのように動いているかを知る
ChatGPTで有名な生成AIですが、こちらが話しかければ、まるで人間のように話を返してくれます。中には生成AIと結婚してしまうというような人もいるみたいで、もはや人間のように振る舞うAIというのは、身近な存在になっています。
では、その生成AIがどのように文字を出力しているかというのをご存知でしょうか?大人でも、生成AIがどのように文字を出力しているのかを知らない人は多いのではないかと思います。
そこで、メンバーに向けて、生成AIがどのように文字を書き出しているのかを分かりやすい例えで説明しました。
生成AIが文字を出力する仕組みというのは、次に来る言葉の予測です。次にどのような単語が来るだろうかというのを予測して、最も確率が高いものを出力しているに過ぎません。
そこには感情があるわけではなく、単に確率の高い言葉を出力しているだけなのですが、あたかも感情があるように見えるというのが面白いところです。
この原理を知っていれば、AIから良い答えを引き出す方法が見えてきます。
自分が欲しい「答え」を得ようと思ったら、その語が出る確率が高くなるように、こちらからAIに対して入力するのです。
つまり:
- 具体的に問いかければ、AIは具体的に返してくれます。
- 曖昧に問いかけると、曖昧な答えしか出てきません。
よく私が説明するのは、AIはあなたの鏡だということです。
AIがポンコツな答えを返すのであれば、その理由はあなたの問いかけが悪いからです。逆に、AIが期待通りにすべて答えてくれるのであれば、それはあなたの問いかけが優れているということです。
生成AIの使い方はテクニックを覚えていくのは無駄です。こういった原理原則を理解しつつ使っていくことが重要です。
中級はゲームの基本形が全員完成
中級クラスのタイピングを少しほったらかしにしていました。喝を入れたいと思います。
喝といってもこのクラスは真面目です。しっかり適切にサポートしていけば、きちんと応えてくれます。
また、アルゴロジックもすすめます。きちんと考えてすすめていくことが大切です。

ゲームの基本形を全員完成させる
前回一部の人だけ完成させた、シューティングゲームを、今日は全員完成させるのが目標です。
前回作ったコードを動かしたところ、いくつか変な動きがありました。それを私が修正しておきましたので、まずは自分の環境でそれらを動かすことを目指します。
コーディングの作業というよりは、自分の環境に適切に移植できるかといったところが重要です。

コード以外でトラブルが多発する
通信系のプログラムの大変なところは、プログラムコード以外のところでトラブルが多発するという点です。例えば、ファイアウォールの設定やルーターの設定などが挙げられます。
プログラムコードについては、ある程度こちら側で作業範囲を限定して整備してあげれば、比較的まともなものが出てきやすい傾向にあります。しかし、自分のパソコンやメンバーそれぞれのパソコン以外の場所にトラブルがあると、その原因の切り分けから始めなければならないため、非常に大変です。
メンバーにその切り分けをさせるのは困難であり、すべてスタッフが対応しなければなりません。そういった事情もあり、一般的なプログラミングクラブでは通信系の内容は扱わないのだと思います。
前提となる知識は、国家資格の基本情報技術者試験の内容を理解しているレベルです。つまり、大学の工学部や情報系の学部の3年生、4年生レベルが最低限必要といったところです。
それらをベースに現実の問題を考えていくことになるので、内容を理解するだけでもかなりハードルが高い範囲と言えます。ましてや、トラブルシューティングまでこなすとなると、相当難しいのではないかと思います。
ゆくゆくはメンバーで、こういったところを自力で解決できるようになるといいなと思いつつ、今はまだ簡単なプログラムです。
改造前に現状把握
改造と言っても、現状どういったプログラムなのかという理解が必要です。
この写真のメンバー(前後)は、対戦ゲームを動かしながら現状を確認しています。

私がサンプルとして提示しているゲームプログラムのコードは、あえて簡素に作っています。必要最低限の機能しか盛り込んでいません。
ここからイメージや想像力を膨らませて、自分のゲームに作り替えていく。それがこれからの回の目標です。
例えば、今は横方向にしか動けない自機と敵機ですが、これを縦方向に動くようにしたらどうでしょうか。また、現状では弾の連射がいくらでもできてしまいますが、連射制限をかけてみるのもいいかもしれません。
それから、画面の下も今のまま(真っ黒な画面)でいいのでしょうか。少し寂しいので、背景をつけてみるのも一つの手です。
いろいろなアイデアが出てくると思います。まずは遊びながら、想像力を働かせてみてください。

