無料パズルアプリ

パズル×プログラミング=Digital Puppet(デジタルパペット)

こんばんは! パズル女子むーてぃです。
今日は遊びながらプログラミング的なパズル・Digital Puppetを紹介します。
Digital Puppetコマンド タイトル

Digital Puppetの遊び方

Digital Puppetは、白い玉(パペット)を動かして、ステージ上にいる赤いパペットをすべて倒せばクリアというシンプルなルールのパズルです。

Digital Puppetが変わっているところは、パペットは直接操作できないということ。

「右へ向く」「前へ進む」「ジャンプする」などのコマンドを組みあわせて、プログラムのように処理を作っていきます。

たとえば、下記の面だと前に進むを2回、敵に攻撃、右へ向く、前に進むを2回……とコマンドをつなげていって、すべての赤いパペットを倒すとクリアです。
Digital Puppetコマンド 1-9 コマンドを1つずつ入れた場合

Digital Puppetのコマンド

Digital Puppetでは、おもに5つのコマンドを使用します。

コマンド アイコン コマンドの説明
左を向く Digital Puppetコマンド 左を向く パペットに左を向かせる
前に進む Digital Puppetコマンド 前に進む パペットを前方へ1歩進める
右を向く Digital Puppetコマンド 右を向く パペットに右を向かせる
ジャンプする Digital Puppetコマンド ジャンプする パペットの前に段差がある場合は、段差を飛びこえて1歩進む。
前に段差がない時はその場でジャンプし、進まない。
攻撃する Digital Puppetコマンド 攻撃する 赤パペットと同じマスにいる時に実行することで、攻撃して倒す。

赤パペットを倒すには、移動や向きを変えるコマンドで赤パペットと同じマスにいき、攻撃コマンドを実行します。

赤パペットと同じマスにとまったあと攻撃以外のコマンドを実行すると、やられてしまいます。

Digital Puppetの操作方法

Digital Puppet画面の見方
コマンドを入力するウインドウをジョブと呼びます。

下のコマンドアイコンをタップすると、ジョブにコマンドが追加されます。

ジョブにコマンドを追加してから左上にある実行ボタンを押すと、STARTジョブに入った命令がつぎつぎと実行されます。

間違えて命令を入力してしまった時は、ジョブに入ったコマンドをタップすると削除することができます。

また、コマンドの入力位置を間違えた時はドラッグ&ドロップで位置を動かすことができます。

コマンドを短縮して、スコアをあげよう

1つずつコマンドを入れているだけだと、「これのどこがパズルなんだ?」と思われるかもしれません。

Digital Puppetは、ジョブに入っているコマンドの数でクリア時の評価が3段階で表示されます。
ステージ1-9を、1つ1つ命令をいれていった場合、11コマンドで評価は★2です。
Digital Puppetコマンド 1-9 コマンドを1つずつ入れた場合
Digital Puppetコマンド 1-9 コマンドを1つずついれた場合の評価

コマンドを短縮してクリア時の評価をあげることで、パズルになっていきます。

共通処理をわけて、コマンドを短縮する

ステージにもどって、入力したコマンドを見てみましょう。
同じアクションを繰り返している部分が多くありませんか?

そこで、繰り返しているコマンドを共通処理として抜きだしてみます。

上にある+アイコンをタップし、画面の好きなところをタップすると、JOB1というウインドウがあらわれました。
Digital Puppetコマンド ジョブを作成

ここに、繰り返していたコマンドを入力します。

次に、いま作成したジョブをSTARTから呼びだします。
STARTジョブをタップしてアクティブ状態にします。

画面下のコマンド欄に、数字の1というアイコンができているので、タップしてジョブに追加します。

数字のアイコンは、同じ数字のジョブ(ここではジョブ1)の処理を呼びだすという命令になります。

STARTジョブにはいっている命令を、ジョブの呼びだしに置きかえます。
ちょうど、ジョブ1を3回呼び出すかたちになりました。
Digital Puppetコマンド 1-9 共通処理を抜き出す

11コマンドから7コマンドまで短縮しましたが、まだ★2評価です。
Digital Puppetコマンド 1-9 共通処理を抜き出した時の評価

コマンド短縮のカギは、ループにあり

STARTジョブを見ると、ジョブ1の呼びだししか入っていません。
それならば、「ジョブ1を繰り返す」という命令にしてしまえば、コマンドの数を減らすことができますよね。

こうした繰り返し処理を「ループ」と呼びます。

Digital Puppetで繰り返し処理をするには、呼びだしたジョブの中で、自身のジョブを呼びだします。
つまり、ジョブ1の最後で、ジョブ1を呼びだすようにします。

ジョブ1の中で繰り返し処理を入れたので、STARTジョブではジョブ1を1回実行するだけでOKです。
Digital Puppetコマンド 1-9 ループを使う

ちなみに、こうした自身の処理を呼びだすことを、プログラミングでは「再帰処理」とか「再帰呼び出し」といいます。

それでは、実行してみましょう。

6コマンドで、★3評価になりました!
Digital Puppetコマンド ループを使った時の評価

Digital Puppetは1Stage10問×4stageで、全40問。

ただクリアするだけなら、1つ1つコマンドを入力していくだけでもクリアできますが、
処理をより短く最適化していく作業が地味に面白いパズルです。

パズル情報

パズル名 Digital Puppet(デジタルパペット)

Digital Puppet - プログラミングパズル

Digital Puppet – プログラミングパズル

Tatsuya Nakano無料posted withアプリーチ

対応機種 iOS, Android
対象年齢 4歳以上
問題数 40問
価格 無料
所要時間 約5時間(クリア)~15時間(全★3クリア)
作成者 Tatsuya Nakano
公式HP なし

COMMENT

メールアドレスが公開されることはありません。

CAPTCHA