モジュール詳細:ゴーストの移動

ゴーストを操作するのが、こんなに複雑だったことをご存じだろうか。

モジュールには、各ゴーストを表す4つのボタンと、パックマンを表す送信ボタンが中央にあり、各ボタンにはディスプレーが設置されている。ディスプレーには、「迷路内での位置情報(英字は左から数えた列、数字は上から数えた段)、向いている方向の矢印」が表示される。各ボタンをクリックすると、ボタン上の矢印が変更される。各ゴーストが次に移動する方向(以下のルールで特定)に矢印をそれぞれ向け、パックマンボタンを押すことでモジュールが解除される。任意の矢印が誤った方向を向いている場合は、誤った方向が赤で表示され、ミスが記録される。パックマンボタンを長押しすると、ゴーストの方向が初期状態にリセットされる。

各ゴーストのターゲットマスの確認方法

ブリンキー:ターゲットマスはパックマンがいる場所そのものである。

ピンキー:ターゲットマスはパックマンの進行方向に4マス進んだ先である。ただし、パックマンが上を向いている場合は、ターゲットマスはパックマンから4マス上、4マス左に進んだ位置になる。

インキー:パックマンの進行方向に2マス進んだ先を確認する(ピンキーと同様に、パックマンが上を向いている場合は上2マス、左2マスを確認)。これをX地点とする。次に、ブリンキーがいるマスを確認する。ブリンキーがいる位置をX地点を中心に180°回転させる。これがインキーのターゲットマスである。

クライド:クライドがパックマンから8マスより遠く離れている場合、ターゲットマスはパックマンがいる場所そのものである。それ以外の場合、ターゲットマスの位置は4531(以下の迷路図内にあるオレンジ色のCマーク)である。

(クライド以外の)ターゲットマスまたはX地点が赤い領域内(赤い領域は、一部しか迷路図内に表示していない)にある場合、移動先をマンハッタン距離が最も短くなる赤以外のマスに変更する。マンハッタン距離とは、2地点間を移動するために必要な直交移動(上、左、下、右)の最小値である。

ターゲットマスに応じた移動方向の確認方法

「上、左、下、右」のうち、以下の方向をすべて除外する。
-1マス進むと、壁に埋まってしまう。
-ゴーストが向いている方向の反対。

残りの方向の中から、直線距離(X2 + Y2を使用。Xは、ゴーストからターゲットマスまでの左右のマス数、Yはゴーストからターゲットマスまでの上下のマス数)が短くなるように移動できるマスが、ゴーストが移動すべき方向の候補である。

残りの方向が同じ距離だけ離れている場合は、以下の優先順位を使用する。最も左のものが最優先である。

上、左、下、右

パックマンから8マス離れたマスの図

マップ

注:下記マップでXでマークされた交差点にゴーストがいる場合、そのゴーストはに移動することはできない。