この記事は「シレントルネコアドベントカレンダー2024」の18日目の記事です。
風来のシレン5のマップには固定マップと呼ばれる、生成法則が判明しているものが存在しています。
具体的には以下のマップが存在しています。
・chunsoftマップ
・2択屋マップ
・4部屋マップ
・京都マップ
・太陽マップ
・外周8部屋マップ
・MH確定マップ
・大迷路マップ
・2~3部屋、縦4横4マップ
・ひし形4部屋マップ
これらの固定マップに属さないものはランダムマップと呼ばれ、法則性は見られるものの、マップの構造が予想しづらいという特徴があります。
死線の回廊のランダムマップについて調べてきたので、分類と法則性についてまとめていきます。
マップの構成要素
いうまでもありませんが、マップは通路と部屋の2つの要素で構成されています。
そして、ランダムマップの多くは画面全体を囲うような長方形の通路と上下左右の辺を結ぶ通路の上に部屋が配置されています。
図にするとこんな感じです。
例外はありますが、多くの場合、この通路と通路が交差する場所に部屋ができるようになっており、隣り合う場所に部屋ができる場合は合体して1つの部屋になることがあります。
ギタン部屋がない限りは、この通路の一部が途切れているようなことはなく、部屋のある可能性のある場所同士は必ず通路でつながっています。
ランダムマップの分類
交差する通路の数によってマップの構造を以下の様に分類することができます。
- 縦3段
- 横3段
- 横4段
- 横5段
- 縦2段
- 横3段
- 横4段
- 横5段
具体的なマップの画像を見てみましょう。
縦3段-横3段
縦3段-横4段
縦3段-横5段
縦2段-横3段
縦2段-横4段
縦2段-横5段
ランダムマップ分類の活用法
さて、ここまでマップを分類してきましたが、問題はこの分類をどのように活かすべきかです。
不思議のダンジョンにおいてマップ構造を予想することは、効率よくマップを巡回したり、敵との遭遇を防いだりすることにつながります。
理想的にマップを巡回できる場合は、一筆書きの様にすべての部屋を一度だけ通るようにマップを巡回すれば、一周にかかる歩数が少なくなります。
このようにマップを回ることを考えた時、マップの構造によってはいくつも方法がありますが、最小の歩数になるのは横軸または縦軸を基準として、それぞれの軸の突き当りまで巡回したら次の軸へ折り返すことを繰り返す巡回方法になります。
上述した各マップ構造の時に横軸、縦軸どちらを基準に巡回するのが効率が良いか比較してみます。
縦軸・横軸基準の巡回
縦軸基準:横軸基準
縦3段-横3段
158 < 202
縦3段-横4段
192 < 202
縦3段-横5段
226 > 202
縦2段-横3段
158 > 146
縦2段-横4段
192 > 146
縦2段-横5段
226 > 146
部屋の構造は完全に無視して、上図のような通路を通った際の歩数で計算しています。
各辺の長さはシレン5の大部屋マップの長さから、縦軸=34、横軸=56として計算しました。
例えば、縦3-横3の縦軸基準の歩数を計算すると以下のようになります。
34 × [縦軸を通る回数] + 56 × [横軸を通る回数]
= 34 × 3 + 56 × 1
= 158
前述の通り、巡回するときの歩数は少ない方が良いので、マップ構造が分かるのであれば歩数が少ない方の軸を基準として選択すればよいことになります。
ただし、上記のマップ構造の一部屋だけを取り出して見比べてもらえば分かると思いますが、降りた時の最初の部屋だけを見て完全にマップの構造を把握するのは不可能に近いです。
また、マップの構造を把握できたとしても、初期位置によっては理想的な巡回ができるとも限りません。
ですので、巡回にかかる歩数の計算結果は、「横軸ベースで巡回したほうが少ない歩数で巡回できる場合が多いらしい」くらいの認識でとどめておくことにします。
出現した部屋からのランダムマップの回り方
巡回する向きについては一旦置いておくとして、最初の部屋からどのように巡回すれば一筆書きの様にマップを回ることができるのかについて考えていきます。
縦2段の構造のマップ
この場合は簡単ですね。どこからスタートしても、横軸を基準として巡回すればきれいに一筆書きで1周することができます。
縦3段のマップと比べると部屋の縦幅がやや大きめであることに着目すれば見分けることができるはずです。
縦3段の構造のマップ
縦3段の場合は、最初の部屋の位置が重要です。
いうまでもありませんが、最初の部屋がマップの四隅にある場合は縦軸でも横軸でも一筆書きで巡回が可能です。
それ以外のパターンにおいて、一筆書きが可能なパターンと不可能なパターンで分けて巡回方法の一例を紹介します。
縦3段-横3段マップ
マップの中央に出現した場合【一筆書き可能】
マップの外周に出て、ぐるっと一周することで一筆書き可能
マップの外周の中央に出現した場合【一筆書き不可】
外周をぐるっと一周し、元居た部屋から中央に向かうのが最短
縦3段-横4段マップ
マップの中央に出現した場合【一筆書き可能】
マップの外周に出て、ぐるっと一周した後中央に向かうことで一筆書き可能
マップの外周の上に出現した場合【一筆書き可能】
外周をぐるっと一周し、元居た部屋の手前から中央に向かい、中央のもう一つの部屋に向かうことで一筆書き可能
外周の下辺を回るときに、通路の数を数えておく。
マップの外周の横に出現した場合【一筆書き不可】
外周をぐるっと一周し、元居た部屋から中央に向かうのが最短
縦3段-横5段マップ
マップの中央に出現した場合【一筆書き不可】
マップの外周に出て、ぐるっと一周した後最初の部屋の手前から中央に向かい、中央の部屋の方向に向かうのが最短
マップの中央左に出現した場合【一筆書き可能】
マップの外周に出て、ぐるっと一周した後中央に向かい、最初の部屋の反対方向に向かうことで一筆書き可能
マップの外周上中央に出現した場合【一筆書き可能】
外周をぐるっと一周し、元居た部屋の手前から中央に向かい、中央に向かうことで一筆書き可能
マップの外周上左に出現した場合【一筆書き不可】
外周をぐるっと一周し、元居た部屋から中央に向かい、右に向かうのが最短
マップの外周横に出現した場合【一筆書き不可】
外周をぐるっと一周し、元居た部屋から中央に向かうのが最短
注意点
- 外周の上(下)に出た際は、角に近い方に向かって外周を回る
- 出現した方と逆の上下辺を回る際に、通路の数を数えることでマップ構造を把握できる
まとめ
巡回の走り出しを統一することで最初の部屋の時点でマップ構造が特定できなかったとしても、効率よく巡回することができるようになります。
完全に覚えておく必要はないかもしれませんが、なんとなく意識するだけで効果が出ると思うのでぜひお試しください。