カワリモノ息子の技術メモ的な~

カワリモノ息子とその母の技術メモ的な〜

学校が苦手な息子くんの作品とその母の作品、はたまた日常などいろいろを在宅エンジニア母が綴る

CoderDojo香椎が初オンラインでRobloxの自作おにごっこゲームで遊ぶ会をしました

CoderDojo香椎

 CoderDojo香椎とは、福岡市にあるCoderDojoのひとつです。
 そもそもCoderDojoとは?なんですが、世界各地にあるこどもプログラミングサークルです。
 
 ↓ CoderDojo Japanの情報。日本国内にもこんなにたくさんの道場があります!
coderdojo.jp

 その中の一つであるCoderDojo香椎は、福岡にあるアットホームな雰囲気のプログラミング道場です。
 現在、子供教育を考えるしっかり者の山田さんという女性がチャンピオンとして君臨されていて、その他にもCoderDojo香椎を支えて運営をされるすばらしいメインメンターさんが数名いらっしゃいます。全員、お仕事の片手間にボランティアでされています。いつも本当にありがとうございます・・・!

 息子くんはこの道場の存在を知って、2019年7月から都合のつく日にニンジャとして参加しています。
 私も補助的なメンターとして参加させてもらっています。

 このCoderDojo香椎は今までずっと会場で開催する対面の道場だったのですが、長引く緊急事態宣言の中、ついに今回オンライン開催をする運びとなったとの連絡をうけました。
 そして有難いことに「オンラインで息子くんのRobloxゲームをみんなで遊んでみる会をしませんか」とお声掛けいただきました。

中1息子Roblox(ロブロックス)でおにごっこゲームを作る

 当初、息子くんが先日作ったこのゲーム『Blockey』で遊んではどうかと提案いただいていました。 ↓
siroitori.hatenablog.com

 実際にメンターさんたちで一緒に遊んでみたところ問題が発覚します。そうでした、これ重いんでした。V1.0のときに重くてiPadで開けないという問題があって(PC/iOS/Android対応です)、頑張って軽くなるように対応したんですが、その後の機能追加でやっぱりどうしても重たくなってて「PCのみでプレイ可」とあきらめていました。
 今回試してもらったところ、PCでもスペックによっては重くて落ちたり開けなかったりすることがわかりました。

 そして息子くん一言「僕、軽くてみんなで遊べるおにごっこのゲーム作るよ」

 しかしこの発言はオンライン開催日(2/14)の1週間前。
 しかもその時点ではM5Stackによるほかの開発中で「今やっているのが終わらないと次の作業はできない」と言ってるし、果たして間に合うのでしょうか・・?

 まぁ、間に合わなければ、スペックが大丈夫だった参加者はBlockeyで遊んでもらって、できなそうな人は別のオンラインの遊びをするという選択肢でいこうということになりました。そもそもRobloxやりたくないという子もいるかもしれませんしほかの選択肢もあること、大事ですね。

 そしてM5Stackのプログラミングがひと段落して、やっとゲーム制作に着手したのが2/10。それから2日ちょっとで完成させていました。

 私と息子くんでテストプレイしました。
 なかなかたのしい・・・!
 がしかし、息子くん動きが機敏すぎて私絶対負ける・・!

 開催前日にはチャンピオン・メンターさんで遊んでみました。
 Robloxはじめてだとなかなか操作方法が難しいと。なるほど。この辺の説明を最初にすることにします。

開催当日!楽しく遊びました

 いよいよ当日がやってきました。
 普段昼夜逆転気味の息子くんですが、この日だけは自分で早くから起きてきました!奇跡!

 ※文中、「ニンジャ」という表記がありますがこれはCoderDojo用語で参加者の子供たちのことをそう呼びます。

Robloxと今回遊ぶゲームの説明

 まずCoderDojoお決まりの最初の全員の挨拶を終え、簡単にRobloxの説明をしました。
 今回のスライドは私が作りましたが、説明は息子くんにしてもらいました。

f:id:toriko0413:20210215124712p:plain
f:id:toriko0413:20210215124724p:plain
f:id:toriko0413:20210215124734p:plain
f:id:toriko0413:20210215124743p:plain
f:id:toriko0413:20210215124846p:plain

楽しく遊びました!

 ここ ↓ はロビー。試合と試合の間はここに移動して待ちます。
f:id:toriko0413:20210215125936j:plain

 試合が始まるとマップに飛ばされます。マップは城/町/村の3種類あり、ランダムで選ばれます。
 また、鬼役と逃げる役がランダムで決定されます。

 ここ ↓ は城のマップ。鬼役は城の外にいてまだ入ることができません。その間に、隠れます。 
f:id:toriko0413:20210215125954j:plain

 ここ ↓ は町のマップ。子供たちは上手に屋根の上に登ってます。一番手前にいるのは私、この場所に潜んでいることに決めました。(でもこのあと鬼に捕まる)
f:id:toriko0413:20210215131807j:plain

バグが判明したり、改善案ももらえました。

 今回ニンジャの中にプログラムつよつよメンバーが数名いたのもありますし、普段プログラミングをあまりやらない子もゲーム慣れしていたりするのでバグを見つけて指摘してくれたり「こうしたらもっと面白いんじゃないか」と意見もらえたりしてすごく有意義でした。

 以下、今回問題があったところや指摘事項など思い出して書きます。

ランダムがかなりランダムじゃない

 luaのランダム関数ってそんな感じらしいです。何試合も同じマップばかりだったり、誰かは鬼役ばっかりだったりまた誰かはその逆で逃げる役ばっかりだったりになりました。
 → 途中、息子くんが開発者権限で遊びたいマップに切り替えたりしてました。マップは順番でもいいかも?

ある試合で突然鬼の数が多くなるバグあり

 鬼役は全体の1/3の人数で決定されるように作っていたのに、途中バグって逃げる人1人・鬼役がそれ以外全員、という超ハードモードになってしまってました(笑)
 →それはそれでおもしろいかもしれませんが、開発者権限でリセット。バグがあったそうでその場で修正し、その後はそういった状況は発生しませんでした。

タッチで交代するルールがわかりづらく誰が鬼かよくわからない?

 基本的なゲームルールとして鬼がタッチすると鬼役が入れ替わるということがわかりにくかったようです。鬼が入れ替わった旨、上部にメッセージが出るのも認識しづらかった模様です。
 また、誰が鬼役であるかわかりにくいとの意見もあり。
 →鬼役は赤い文字、それ以外は青い文字で頭上にIDが表示されているのですが、もっとわかりやすくする必要あり。(本当は開発中に私もそれ言ってたんですけどね、実装は時間的に厳しいと言うことで却下案件でした。)
 しかしこれは大人から出た意見なので、もしかするとゲーム慣れしている子供たちにとってはそんな不都合なことはなかったのかもしれません。

鬼の人数が減っていくバグあり

 鬼が鬼にタッチできるタイミングが存在するということが判明!鬼はタッチすると逃げる役に変わってしまうので、鬼が鬼にタッチしていくと、最初数名いたはずの鬼が最後1人になっていたという展開に! これは鬼が複数人いないと起こり得ないものだったので、今回大人数で遊んだからこそ発見できたバグでした。

鬼が解放される前から抜け出てしまう

 ニンジャたちは抜け穴をみつけようとバグ探しをしてくれてました。ゲームがはじまり鬼が解放される前、本当は逃げる人たちの場所へは時間にならないと行けないことになっているのに抜け出せていました。

行けないはずの場所に行けてしまった

 広いマップでは動ける範囲が制限されています。↓ は村のマップですが、赤い透明な壁は向こう側に行けないことになっています。 
f:id:toriko0413:20210215134926j:plain
 ただ、川を潜って壁の向こう側に行ってしまう強者ニンジャがいました(笑)川の底までちゃんと壁を作らないといけないですね。

エリアをだんだん縮小するようにしては?という提案

 時間に従って動けるエリアが縮小されていったらおもしろいかもというニンジャからの意見あり。なるほど、面白そう!

ゲーム情報

 今回作ったRobloxゲーム「おにごっこ」は誰でも遊べます。(ただそのときに2名以上の参加者がいないとゲームが始まりませんが・・)
www.roblox.com

さいごに

 こんな良い機会を与えてくれたCoderDojo香椎のチャンピオン・メンターさん方に大感謝です。ありがとうございました。
 同時にZoomでつないでいたのでゲームしながらのお喋りが盛り上がっていてとても楽しい雰囲気の中ゲームすることができました。(Robloxだけではテキストチャットはできますが、音声チャットはできません。)
 自分たちが遊ぶのも楽しかったですし、ニンジャ・メンターさんからたくさんの意見をいただけて、何より「楽しかった」と言われたのがとても嬉しかったです。

 そして私もこれからも楽しんでお手伝いしたいと思います。
 どうぞよろしくお願いします。

 息子くん外との関わりを自分から求めようとするタイプではないため、思い返してみたら外出自粛のこのような世の中の状況になってからほとんど人と関わっていないです。N中もだいぶ休んでいるし…去年12月にエクサキッズに出場して以来の、他の子との交流だったかもです^^;;; そういうのもあって母としてはとても嬉しいイベントでした。

 あと最近ちらほら「Robloxのゲーム開発に興味がある」との声をききます。
 息子くんも「Robloxの開発を教えて広めたい」と言っているので、おこがましいですが、そんな機会が設けられたらいいなと考えています。