模索する俺たち

日々の生活をいい感じにしたいだの、楽にしたいだの、お得にしたいだの、そんなことを考えています。

NintendoLaboで迷路ゲームなど作ってみた件

やってみたいの思いついた

ニンテンドーラボ随分遊んだなぁと思っていましたけど、そうやってニンテンドーラボへの思いを馳せたりしていると「こういうのはニンテンドーラボで作れるんだろうか?」と新たな考えが出てきちゃったりして、また作ってみた次第です。

終わりが見えない。

 

(前回書いたのはこちらです。)

prinkuma.hateblo.jp

9.迷路ゲーム

「迷路ゲーム」って書きましたけど、早い話が「電流イライラ棒」です。

IRカメラでマーカーを移すと画面上に白い点となって表れるので、これを使ったら遊べそうだなと思いました。

というわけで、まずは適当に反射材を切って適当なものに貼り付けます。

今回は、この前100円ショップで買った自転車用の反射材テープを丸く切って、カッターマットに貼り付けておきました。

f:id:prinkuma:20180506183908j:plain

で、プログラムの方ですけど雰囲気的にはこんな感じです。

f:id:prinkuma:20180506183929j:plain

まず、入力のIRマーカーノードをでっかく広げて置きました。すると、IRセンサーで読み取った点がこの中に出てくるので、それが自分の位置になります。(ちなみに上図で「IR...」って出ている4つのノードは、IRマーカーノードの場所をずらしたときに戻せるようにメモとして4つ角に置いただけのものです。)

で、あとは、触っちゃダメな壁のところに「スポイト」を置きまくりました。

マーカーがスポイトに接触する(スポイトの中が白くなる)と、スポイトが反応してミスになります。

が、スポイトはそのままだと透明なので、いざプレイするとプレイヤーは壁が見えないという状況。

なのでスポイト置いたところには白い壁を表示したいんですけど、白いブロックと言えば「NOTの出力を入力したひかるノード」だなと思って置いてみると、その壁の白さにスポイトが反応してしまうという驚きの白さ。

 

この対策としては、白壁の接触とスポイトの判定を常にやるのではなく、白壁をこっそり点滅させて、白壁が白くないときにスポイトの判定をやることにしました。

上図の左上がそれで、NOTから0.02秒間隔でパルスもらって、次のカウンタが0→1→2→0→1→…と高速でクルクルするようにしました。

で、0のときだけ白壁を表示、1のときだけスポイトに接触していたらミス、みたいなイメージでやってみました。

白壁は点滅しているんですけど、高速なのでそこまで目立たない。

 

そんな感じで、試しに点滅する白壁をスポイトの上に置いてみて、スポイトが反応しなければOK。

さらにIRマーカーなら反応してくれることが確認できたら、もうこのプログラムは終わりみたいなもんで、あとは音出すとか、スタートとゴールにスポイト置いておくとかで完成です。

今回は画面の下の方もあまりノードは無いです。

f:id:prinkuma:20180506183935j:plain

ちなみにあちこちにある「0.00秒カウンタ」は線を束ねる用途などに使いまくってます。

なお、今回はコースを狭くしすぎてマジで難しくなりましたので、ゲーム作るにあたっては適宜テストした方が良いと思いました。

 

あとは、アメの排出口ですけど、Switch本体の台を兼ねたバージョンを作ってみようと思いました。

というわけで、Amazonの箱にときどきはいっている綺麗な段ボール1枚から切り出して、

f:id:prinkuma:20180506183912j:plain

組み立てました。

f:id:prinkuma:20180506183919j:plain

これで上の斜めのところにSwitch本体を置くと、ちょっとアーケード筐体みたいになっていい感じです。

なお裏側はこういう感じです。

f:id:prinkuma:20180506183923j:plain

アメ等の射出ギミックは前の(↓)と同じく、Joy-Conにアメ乗っけてブルブルバタンです。

prinkuma.hateblo.jp

10.カップに入ったボールの位置を当てる的なゲーム

というわけで、ランダム(乱数)使うようなゲームを作ってみたくてもう1個やってみました。

ゲームってのはランダムな要素があるから面白いんですよね。

ちょっとわかりづらい感じになったんですけど、3つのカップの中(最初は真ん中)にボールが入っていて、カップがシャッフルされた後にさて、最初のカップはどれでしょう?的なゲームです。

 

ランダムなところについては、次の画面の左半分のところなんですけど、0.02秒ごとに0→1→2→0→…と無限に回すやつを作って、ゲーム前は常に動いているんですけどゲーム開始時にはどれかで止まるという形にしました。

f:id:prinkuma:20180506183942j:plain

同じように、0.04秒、0.06秒、…、0.12秒のクルクルも作って、計6個のランダムなやつを用意。

これでカップの6回のシャッフルについて、どことどこをシャッフルするのかを決めるようにしました。

 

…で、そんな感じだったんですけど、最終的には

左上はこうなって、

f:id:prinkuma:20180506183954j:plain

右上はこうなって、

f:id:prinkuma:20180506184002j:plain

右下はこうなったんですけど、

f:id:prinkuma:20180506184015j:plain

遊んでみたらいまいちパッとしないという結果に。

力を入れたからって必ずしもおもしろいゲームができるとは限らないので注意が必要です。

とりあえず、ランダムな動きのゲームが作れたのでよしとする。

 

なお、紙コップからアメが出るやつに関しては紙コップの中に適当な紙(メモ用紙)をテープで貼り付けて二重底にしてみただけです。

f:id:prinkuma:20180506184020j:plain

プログラムとの落差よ。

まとめ

そんなわけで、まだまだ可能性があるToy-Conガレージですけど、もっとシンプルで面白いのが作れたらなと思いました。

おわり。 

Nintendo Labo (ニンテンドー ラボ) Toy-Con 01: Variety Kit - Switch

Nintendo Labo (ニンテンドー ラボ) Toy-Con 01: Variety Kit - Switch

 

 

模索する俺たち
プライバシーポリシー / Amazon.co.jpアソシエイト