RPGツクール2000/システム【サイトトップへ戻る】 ■最短ルート移動に関して (更新:2020/07/05) 最短ルート移動に関する紹介ページです。 RPGツクール2000で設定する事ができる最短ルートの移動処理はいくつかあり、 どの方法も長所と短所があります。
■リアルタイム検索について このページにある「リアルタイム検索」とは、 ターゲットとなるキャラクターが移動し続けていても、 リアルタイムに最短ルートを検索して移動していくものです。 リアルタイム検索では定期的に並列処理するを使いますが、 この定期的に並列処理するで大量のイベントコマンドを処理したり、 ウェイトを挟まないでラベルの設定や繰り返し処理のループ処理を実行すると、 かなり重い処理落ちが発生します。 そのため「リアルタイム検索ができる」と書いてあっても、 イベントの設定状況によっては、処理落ちが発生する可能性があります。 なお、処理落ちしやすいイベント設定を行ったとしても、 制作者のパソコンの処理能力によっては、処理落ちを感じない事もあります。 しかしプレイヤーのパソコンでは処理落ちが発生する可能性がありますので、 出来る限り処理落ちが発生しにくいイベント設定に行った方が良いでしょう。 【処理落ちに関するページを開く】 ▲トップへ戻る▲ ■最短ルート移動:主人公に近寄る マップイベントの移動タイプにある「主人公に近寄る」を使う方法です。 設定は非常に簡単ですが、移動目標(ゴール地点)は「主人公のみ」になります。
▲トップへ戻る▲ ■最短ルート移動:座標の差で移動 両者の座標の差から移動方向を決める方法です。 ▼この場合はX座標の方が距離があるので、右に移動します。 処理としては「主人公に近寄る」に近いですが、こちらの方法では、 移動目標(到着地点)を「主人公以外(マップイベントなど)」にする事もできます。
【座標の差で移動の設定方法を見る】 *補足* 地形IDの取得などで周囲の地形(通行不可など)を読み取って、 その情報から障害物を回避するイベントを設定する事は一応可能ですが、 数マス先までの簡易的な物しかできない上、処理落ちが発生しやすくなります。 障害物を回避する場合は、 ■座標の位置で移動や■1マスずつ検索などの別の方法使うと良いでしょう。 ▲トップへ戻る▲ ■最短ルート移動:座標の位置で移動
▼主人公が左下の領域にいる場合の移動処理です。 部屋から部屋へ移動するイメージであり、長距離の移動が可能ですが、 同じ部屋内では「主人公に近寄る」などを併用する必要があり、 基本的に同じ部屋内には障害物を設置する事ができません。
【座標の位置で移動の設定方法を見る】 ▲トップへ戻る▲ ■最短ルート移動:監視イベント+主人公がいたマスまで移動する 監視イベント(マップイベント)の視野の範囲内で主人公を見つけた場合、 その主人公を見つけたマスまで監視イベントが移動します。 障害物があってもスムーズに避けて移動するので、 「主人公に近寄る」よりも確実に主人公がいたマスまで移動します。 また主人公が移動しても、主人公が監視イベントの視野の範囲内にいる限り、 常に主人公までの移動ルートが更新されるため、しつこく付いて来ます。 主人公を見失っても、主人公を最後に目撃したマスまでは移動し続けます。 障害物が無い正面に主人公が居ても、視野の範囲外にいる場合は主人公には近付きません。 なお、移動目標(到着地点)を「主人公以外(マップイベントなど)」にする事もできます。
【監視イベント+主人公がいたマスまで移動する】 ▲トップへ戻る▲ ■最短ルート移動:1マスずつ検索 出発地点と到着地点から1マスずつ検索して、最短の移動ルートを検索します。 他の処理方法とは異なり、 かなり長距離でも障害物を避けながら最短ルートで移動する事ができます。 高性能である反面、大量に変数を使う上、イベント処理がかなり複雑であり、 ちょっとした設定ミスによって、最悪フリーズを起こす可能性があります。 そのためツクールの初心者が手を出してはいけないレベルとなっています。
【1マスずつ検索の設定方法を見る】 ▲トップへ戻る▲ ◎関連ページ ●最短ルート移動に関して ┣○座標の差で移動 ┣○座標の位置で移動 ┣〇監視イベント+主人公がいたマスまで移動する ┗○1マスずつ検索 |