【CyberPi】ナゾ解きゲームを作ってみた!

このページにはアフィリエイトリンクが含まれています。

CyberPi(サイバーパイ)使つかって、ナゾきゲームをつくってみました!

このナゾきは、かみかれた ナゾをくだけでは わりません。

CyberPiのセンサーやボタンを使つかって、いろいろな操作そうさをしながら ナゾをいていきます。

今回こんかいは、このナゾきゲームでつくったプログラムを紹介しょうかいします。

 

必要なもの

CyberPiで謎解きゲームを作るのに必要な物

この作品さくひんつくるために 必要ひつようなものは、以下いかとおりです。

  • CyberPi(サイバーパイ)
  • パソコンやタブレット
  • mBlock無料むりょうのプログラミングアプリ)
  • ナゾきカードようかみ
  • ナゾきの小道具こどうぐ(ダイヤルしき南京錠なんきんじょうなど)

ナゾきカードは、問題もんだいつくって自分じぶんいたり、印刷いんさつしたりして 用意よういします。

小道具こどうぐとして、ばんごうけられる ダイヤルしき南京錠なんきんじょう用意よういしました。

宝箱たからばこなどにつけると、ナゾきゲームらしいかんじがますね。

ナゾ解きの流れ

CyberPi謎解きゲームの流れ

今回こんかいのナゾきは、つぎながれですすみます。

  1. ナゾきカードの ナゾを
  2. ナゾのこたえにかれた 指示しじしたがって CyberPiを操作そうさする
  3. ただしく操作そうさできると、つぎ場所ばしょかる
  4. つぎ場所ばしょで ナゾきカードをさが

1~4のサイクルをかえしながら、最後さいごのナゾを目指めざします。

 

1.はじまりのナゾ

まずは「はじまりのナゾ」から スタートします。

【CyberPiナゾ解き】はじまりのナゾ

ナゾをくと、CyberPiでなにをすればいいのか かるようになっています。

 

CyberPiが起動したとき

CyberPiを起動きどうすると、「はじまりの ナゾを とこう!」をいうメッセージが表示ひょうじされます。

CyberPiに"はじまりの ナゾを とこう!"と表示されている

 

プログラムでは、ゲームをはじめるために 最初さいしょにいくつかの設定せっていをしています。

CyberPiが起動したとき①

  1. 画面がめん
  2. 音量おんりょうを20にする
  3. STAGEを1にする
  4. 入力にゅうりょくばんごうを0にする
  5. スタートおんらす
  6. 「はじまりの ナゾを とこう!」と表示ひょうじする
  7. LEDをひからせる

スタートおんらしたり、LEDをひからせたりすると、ゲームがはじまるかんじがますね。

 

ここで設定せっていしている「STAGE」は、いまどのナゾをいているのかをあらわ変数へんすうです。

  • STAGE = 1 → はじまりのナゾ
  • STAGE = 2 → キッチンのナゾ
  • STAGE = 3 → ベッドルームのナゾ
  • STAGE = 4 → ナゾのコマンド

最初さいしょは、

STAGE = 1

にして、はじまりのナゾからスタートします。

そのあとは、「ずっと」のなかで STAGEの数字すうじ確認かくにんします。

CyberPiが起動したとき②

  • もし STAGE = 1 なら
    STAGE1を実行じっこう
  • もし STAGE = 2 なら
    STAGE2を実行じっこう
  • もし STAGE = 3 なら
    STAGE3を実行じっこう
  • もし STAGE = 4 なら
    STAGE4を実行じっこう

たとえば、STAGE1の条件じょうけんをクリアすると、STAGEを2に変更へんこうします。

すると、つぎのループから STAGE2の処理しょり実行じっこうされます。

このように、STAGEの数字すうじえることで、ナゾを順番じゅんばんすすめています。

 

ブロック定義「STAGE1」

ナゾごとにブロックをつくって、プログラムをやすくしてみました。

ここでは、条件じょうけん判定はんていして、正解せいかいしたら つぎ場所ばしょ表示ひょうじする 処理しょりつくります。

ブロック定義「STAGE1」

STAGE1では、CyberPiのマイクを使つかって おと検知けんちします。

  1. 音量おんりょうが95よりおおきくなるまで
  2. 正解せいかい処理しょり
  3. 「キッチンへ いけ」と表示ひょうじする
  4. STAGEを2にする

プログラムでは、音量おんりょうが95をえるまで つようになっています。

95というあたいは、実際じっさいためしながら 調整ちょうせいしてみてください。

条件じょうけんたすと、正解せいかい演出えんしゅつおこない、

CyberPiに"正解!"と表示されている

つぎのナゾの場所ばしょしめす「キッチンへ いけ」を表示ひょうじします。

CyberPiに"キッチンへいけ"と表示されている

そして、STAGEを2に変更へんこうします。

 

ブロック定義「正解」

正解せいかいしたときには、毎回まいかいおな演出えんしゅつおこないます。

そこで、この処理しょりを「正解せいかい」というブロックに まとめました。

ブロック定義「STAGE1」「正解」

  1. 画面がめん
  2. 正解せいかいおんらす
  3. 正解せいかい!」と表示ひょうじする
  4. LEDをひからせる
  5. 3びょう
  6. LEDを

おな処理しょり何度なんどわりに、自分じぶんつくった「正解せいかい」ブロックを すようにしています。

こうしておくと、正解せいかい演出えんしゅつ変更へんこうしたくなったときも、「正解せいかい」ブロックをなおすだけでみます。

おとやLEDの演出えんしゅつは、おこのみでえてみてください。

 

2.キッチンのナゾ

キッチンへくと、つぎのナゾきカードがあります。

【CyberPiナゾ解き】キッチンのナゾ

CyberPiを どこかにれるようですが……。

 

ブロック定義「STAGE2」

ブロック定義「STAGE2」

STAGE2では、CyberPiのあかるさセンサーを使つかいます。

  1. あかるさが 5未満みまん
  2. YESなら 3びょう
  3. もう一度いちどあかるさが 5未満みまん確認かくにんする
  4. YESなら正解せいかい処理しょり
  5. 「しんしつへ いけ」と表示ひょうじする
  6. STAGEを3にする

今回こんかい条件じょうけんは、あかるさが5未満みまんになることです。

ただし、くらくなってもすぐ正解せいかいにはしません。

くらくなったら 3びょうって、もう一度いちどあかるさを確認かくにんします。

3びょうあかるさが5未満みまんなら、正解せいかいです。

正解せいかいすると「しんしつへ いけ」と表示ひょうじされるので、つぎはベッドルームへかいます。

くら部屋へやでは、なにもしなくても 正解せいかいになってしまうかもしれません。
あかるさのあたいは、実際じっさいためしながら 調整ちょうせいしてみてください。

 

3.ベッドルームのナゾ

ベッドルームには、つぎのナゾきカードがあります。

【CyberPiナゾ解き】ベッドルームのナゾ

まくらに……?

 

ブロック定義「STAGE3」

ブロック定義「STAGE3」

STAGE3では、CyberPiの落下らっか検知けんち使つかいます。

  1. CyberPiが落下らっかするまで
  2. 正解せいかい処理しょり
  3. 「パソコンを たちあげよ」と表示ひょうじする
  4. STAGEを4にする

CyberPiが落下らっかしたことを検知けんちすると、正解せいかい演出えんしゅつおこないます。

正解せいかいすると「パソコンを たちあげよ」と表示ひょうじされます。

CyberPiを ゆかなどかたいところにとすと 故障こしょうする可能性かのうせいがあります。
プログラムをためすときは、としても こわれないように 安全あんぜん方法ほうほう確認かくにんしてください。

 

4.ナゾのコマンド

いよいよ最後さいごのナゾです。

【CyberPiナゾ解き】ナゾのコマンド

とあるコマンドを調しらべて CyberPiで入力にゅうりょくすると……

 

CyberPiが起動したとき

CyberPiが起動したとき③

ここでは、CyberPiのジョイスティックと A・Bボタンを使つかって、コマンドがただしい順番じゅんばん入力にゅうりょくされたかを判定はんていします。

正解せいかいのコマンドは、「上上うえうえ下下したした左右ひだりみぎ左右ひだりみぎBA」です。

 

CyberPiを起動きどうしたときの「STAGEを1にする」のしたに、「STAGE4-InputNoを0にする」を追加ついかします。

入力にゅうりょくばんごう(STAGE4-InputNo)は、いま何個なんこまで ただしく入力にゅうりょくできているか 管理かんりする変数へんすうです。

最初さいしょは「0」で、ただしい方向ほうこうや ボタンを入力にゅうりょくするたびに 1やします。

 

ジョイスティックが↑に向けるとき

まず、ジョイスティックで「↑」が 入力にゅうりょくされたときの処理しょりかんがえます。

ジョイスティックが↑に向けるとき

  1. STAGEが4?
  2. YESなら、入力にゅうりょくばんごうが 0 または 1?
  3. YESなら「STAGE4コマンド成功せいこう
    NOなら 「STAGE4コマンド失敗しっぱい

最初さいしょにSTAGEが4かどうかを判定はんていして、ナゾのコマンドをいているときだけ、この処理しょりうごくようにします。

「↑」は 1番目ばんめと 2番目ばんめ入力にゅうりょくするコマンドです。

そのため、入力にゅうりょくばんごうが 0 または 1 の場合ばあい成功せいこう、それ以外いがい場合ばあい失敗しっぱいとなります。

 

ほか入力にゅうりょくについても、おなじようにプログラムをつくります。

上以外の入力の処理

それぞれの入力にゅうりょくたいして、ただしい入力にゅうりょくばんごう判定はんていします。

入力にゅうりょく入力にゅうりょくばんごう対応たいおうは、したのとおりです。

STAGE4-InputNo 0 1 2 3 4 5 6 7 8 9
コマンド B A

 

ブロック定義「STAGE4コマンド成功」

コマンド入力にゅうりょく成功せいこうしたときの処理しょりは、どの方向ほうこうやボタンが 正解せいかいだった場合ばあいでも 共通きょうつうです。

そこで、「STAGE4コマンド成功せいこう」というブロックにまとめました。

ブロック定義「STAGE4コマンド成功」「STAGE4コマンド失敗」

  1. 「・」を表示ひょうじする
  2. 入力にゅうりょくばんごう(STAGE4-InputNo)を 1やす

ただしく入力にゅうりょくされたことを、画面がめんかるようにするために「・」を表示ひょうじします。

1つ入力にゅうりょく成功せいこうすると「・」、2つ成功せいこうすると「・・」というようにえていきます。

CyberPiに"・"と表示されている

そして入力にゅうりょくばんごうを 1やして、つぎのコマンドへすすみます。

 

ブロック定義「STAGE4コマンド失敗」

コマンド入力にゅうりょくが まちがっていた場合ばあい処理しょりつくります。

ブロック定義「STAGE4コマンド成功」「STAGE4コマンド失敗」

  1. 画面がめん
  2. 不正解ふせいかいおとらす
  3. LEDをひからせる
  4. 「コマンドを入力にゅうりょく」と表示ひょうじする
  5. 入力にゅうりょくばんごう(STAGE4-InputNo)を 0にリセットする

失敗しっぱいしたときは演出えんしゅつったあと、入力にゅうりょくばんごうを 0にもどします。

つまり、最初さいしょの「↑」からもう一度いちど入力にゅうりょくなおしです。

CyberPiに"コマンド入力やりなおし"と表示されている

 

ブロック定義「STAGE4」

最後さいごに、コマンドが すべてただしく入力にゅうりょくできたかを 判定はんていします。

ブロック定義「STAGE4」

  1. 入力にゅうりょくばんごうが 9よりおおきい?
  2. YESなら正解せいかい処理しょり
  3. レベルアップおんらす
  4. 「カギの ばんごうは『2525』」と表示ひょうじする
  5. LEDを虹色にじいろひからせる

10入力にゅうりょくを すべてただしく入力にゅうりょくすると、入力にゅうりょくばんごうは「10」になっています。

そこで、入力にゅうりょくばんごうが 9よりおおきくなったら、コマンド入力にゅうりょく成功せいこう判定はんていします。

正解せいかい演出えんしゅつおこなったあと、最後さいごこたえである カギのばんごう表示ひょうじします。

ダイヤルしき南京錠なんきんじょうばんごう入力にゅうりょくして、カギをければ ゲームクリアです!

 

まとめ

今回こんかいは、CyberPiを使つかった ナゾきゲームを つくってみました。

この作品さくひんでは、

  • おと検知けんちする
  • あかるさを検知けんちする
  • 落下らっか検知けんちする
  • ジョイスティックを操作そうさする
  • A・Bボタンを
  • LEDやおと正解せいかい不正解ふせいかいらせる

など、CyberPiのいろいろな機能きのう使つかっています。

また、プログラムでは「STAGE」という変数へんすう使つかって、ナゾを順番じゅんばんすすめました。

たんにセンサーをうごかすだけでなく、

「ナゾをく → CyberPiを操作そうさする → つぎ場所ばしょく」

という仕組しくみにすることで、デジタルとリアルをわせた おもしろいナゾきゲームになったとおもいます。

センサーを使つか条件じょうけんやナゾの内容ないようえて、自分じぶんだけのナゾきゲームを ぜひつくってみてくださいね。

 

タイトルとURLをコピーしました