がんばれゴエモン ネオ桃山幕府のおどりランダマイザーの解説

がんばれゴエモン ネオ桃山幕府のおどり」(以下桃山)のランダマイザーである、abysssonym氏の開発した「mn64rando」についての日本語解説記事です。
github.com

記事執筆時点のバージョン(v1.3.1)をもとに執筆しています。
最新の情報については自分で確認してください。

ランダマイザーとは?

Gigazineの記事に解説を譲ります。
gigazine.net

桃山においては、おもに以下の要素がランダム化されています。

  • マップ間の出入口の対応関係
  • 施錠されている扉の場所
  • まねき猫、キラキラ団子などのアイテム

桃山ランダマイザーについて

遊ぶのに必要なもの

主な変更点 (デフォルト設定時)

  • 「ペモペモさいだん」でミラクルアイテムを4つ集めた時の行先が、ラスボス前(ミュージカル城 劇場)となっている。
  • すべてのマップの出入口の行先がランダムに再配置され、本来とは異なる出入口と接続されている。(後述)
  • 従来あったすべての鍵ロックがなくなっているが、別の(本来施錠されていないものも含む)扉の一部が鍵でロックされている。
  • 各種アイテム*1がすべて、ランダムなものと入れ替わっている。(上記扉を開けるための鍵も含まれる)
  • ツボの中身も、ランダムなパターンに入れ替わっている。(小判か団子しか出ないことに変わりはない)
  • ザコ敵の種類がランダムに再配置される。
  • ヤエが最初から加入し、「こりゅうたのフエ」を持った状態で開始する。
  • 「こりゅうたのフエ」を建物やお城の中でも使用可能
  • 「こりゅうたのフエ」で、お城の入り口にワープできなくなっている。
  • 「こりゅうたのフエ」でワープできる場所に、ゴエモンの家(マップ上は大江戸城)」「そげん町宿屋(マップ上はサブまりん城)」が追加されている。
  • 「こりゅうたのフエ」で町にワープしたい場合、その町の宿屋に入っていないとワープ対象として出てこない。
  • 「こりゅうたのフエ」で移動した後の復帰場所が、宿屋or茶店の出入口に変更されている。
  • 「ミラクルスノー」を最初から持った状態で開始する。
  • ランダムルートのクリアに不要な場合は、メインイベントであっても通らない場合がある。(例: モクベエLv2武器イベントなど)
  • 「ほのおのこばん」を獲得しなくても、他武器の溜め技(例: からくりカメラ, ヤエバズーカ)が使える。
  • Lトリガーを押すことで、デバッグモードに入ることができる。
マップ関連
  • 生成ルートは「エビススライド」「地図バグ」「∞ジャンプ」「もっこりスラッシュ」などのバグ技を考慮していないため、使うと詰み状態になる可能性がある。
  • イベントによる移動(ボス撃破、ツーリスト、カメ石鳥居ワープ)は元々の場所に移動する。
  • 「出入口が1つしかないマップ出入口」と「そのマップに元々繋がっていた出入口」は元々のまま。 (例: 宿屋の出入口、城の宝部屋など)
  • BGMの同じマップが極力繋がるよう配慮される。
  • マップ総数の5-9割ほどがルート生成に使用される。(=行けないマップが一定数発生する)
  • いわゆる詰み状態が発生する可能性を排除してルート生成する。(例: 高台から落ちたら戻れなくて詰むなど)
  • 「イヨ2」と「サブまりん城の揚げ物部屋」が落ちても簡単に復帰できるようにマップ改変されている
  • 「こりゅうたのフエ」のすべてのワープ先にたどり着けるとは限らない。

設定ファイル(mn64_settings.yaml)の項目解説

logic_filename

デフォルト: router_logic.txt

各マップの対応関係を記載したファイルを指定する。基本そのままでよい。
(例: サブまりん城入口には「にんぎょへんげのじゅつ」が必要など)

エビススライドなどのバグを容認したランダマイザーを作りたい場合は、作者による解説記事が参考になるかもしれない。

nodes_filename

デフォルト: router_nodes.txt

各マップの扉やアイテムを番号化したリスト。そのままでよい。

retry_limit

デフォルト: 500
生成したルートが理論上クリアできるかをチェックするプロセスを打ち切るまでの回数。
条件を複雑にしない(≒生成速度が遅くなるオプションを入れない)限りはデフォルトでOK。

retry_limit_close

デフォルト: 1000

「詰み状態」になる可能性があるかチェックするプロセスを打ち切るまでの回数。
retry_limitより大きな値にする必要がある。

time_limit

デフォルト: 240

生成したルートがクリアできるかを検証する時間(秒指定)。PCが非力な場合はここを増やすとよい。

fg_cache_limit

デフォルト: 10000

ランダム生成時に利用するキャッシュ量。
生成速度にはあまり影響がないらしいので、変えなくてもよい

map_size

デフォルト: 0.75

マップ総数に対する使用率。1にすると全マップが確実に使用される。指定値が低すぎる場合は最低限必要なマップ数になる。

map_strictness

デフォルト: 0.75

上記値の分散。(例: map_sizeが0.75, map_strictnessが0.5の場合、マップ総数の50~100%(0.75±50%)が使用される)
つまりデフォルトでは、56.25~93.75%のマップが使用される。

avoid_softlocks

デフォルト: True

いわゆる「詰み状態」になり得ないよう、マップをランダム生成する。(例:高台から落ちると戻れなくて詰むなど)
当然計算速度は落ちるが、ON推奨。

trap_doors

デフォルト: 0.00

一方通行になる扉の生成率を0~1の小数で指定する。よっぽどのMでない限りは0固定。
ちなみに0にしていても、鍵付きなどの扉から出てきてしまい一方通行になることはある。

skip_complex_nodes

デフォルト: 0.50

指定した割合で「詰み状態」になりうる可能性のあるマップをルート候補から削除する。
値を上げると生成速度が早くなるが、特定のマップが使われなくなる可能性が増加する。

lazy_complex_nodes

デフォルト: False

ランダム生成の一部処理をスキップして高速化する。
ONにするとたまに「詰み状態」になるマップができてしまうため、デフォルトOFF。

goal_based_missables

デフォルト: False

クリアに必要なイベントは必ず通るようルートが設定される。
生成速度が遅くなるため、FALSEを推奨

fix_bad_maps

デフォルト: True

いわゆる「詰み状態」になりやすい2か所のマップ(イヨ2, サブまりん城揚げ物部屋)を改造する。

  • イヨ2: おもちゃ城入口側に梯子が追加される。(「チェーンキセル」がないと、下に落ちたら戻れなくなるため)
  • 揚げ物部屋: 水場から入口側に戻れるよう足場が追加される。(「からくりカメラ」がないと、水場に落ちたら戻れなくなるため)

詰み防止考慮の要素が増えるため、当然OFFにすると生成速度が遅くなる。

fixed_singletons

デフォルト: 1.00

出入口が1つしかないマップをランダムにしない確率を0-1の小数点で指定する。(デフォルトは1=ランダムにしない)
店や民家の入り口などが軒並みランダムになるため、製作者曰くよっぽどのMでない限りは1固定をオススメしている。

cluster_bgm

デフォルト: True

同じBGM(≒同じエリア)が極力つながるようにマップ生成する。

completionist

デフォルト: False

全武器全アイテム(まねき猫除く)が理論上可能なようマップ生成する。
(生成速度が遅くなるためデフォルトOFF)

all_warps

デフォルト: False

すべてのワープポイント(茶屋,宿屋)にたどり着けるようにランダム生成される。
(生成速度が遅くなるためデフォルトOFF)

randomize_keys

デフォルト: 2

ランダムな扉に鍵を設定する。0にするとすべての扉がロックされなくなる。1-3あたりがオススメとのこと。

randomize_pickups

デフォルト: True

鍵, 金団子, まねき猫, 大入り袋, これゾウくん, ヤジルシくん, ツボの中身をランダム化する。※ツボ以外は上記の鍵になりうる
まねき猫も極力フルコンプできるよう生成するが、不可能な場合はランダマイザーが警告を出す。

randomize_enemies

デフォルト: True

ザコ敵の種類もランダムにする。ごく稀に処理落ちからのフリーズが発生する可能性があるらしい。

enable_debug

デフォルト: True

Lボタンを押すことで、デバッグモードに入れるようになる。

start_camera

デフォルト: False

「からくりカメラ」を最初から持った状態で開始する。一部の「詰み状態」を回避できるが、生成速度に与える影響はわずかに早くなるだけとのこと。

start_minimaru

デフォルト: False

ちびエビスンの術を最初から習得した状態で開始する。エビススライドについては考慮されていない点に改めて注意。

start_flute

デフォルト: True

ヤエが最初から加入し、「こりゅうたのフエ」を持った状態で開始する。利便性が損なわれるうえに生成速度が大幅に増加するため、OFFにしないことを推奨。
城の入り口にはワープできなくなっている点に改めて注意。(宿屋, 茶屋のみ)

flute_anywhere

デフォルト: True

建物の中でも「こりゅうたのフエ」を吹けるようになる。詰み回避+効率化の両点でONがオススメ。

start_snow

デフォルト: True

「ミラクルスノー」を最初から持った状態で開始する。終盤の面倒なお使いイベントをスキップできるが、ランダマイザーをフルに楽しめなくなる可能性もある。

ice_kunai_logic

デフォルト: True

熱い床はすべて「ごっかんのクナイ」を使わないと抜けられないと仮定してルート生成する。

ryo_hover_logic

デフォルト: False

小判浮遊*2ができると仮定したルート生成を行う。具体的には、はぐれ町および大江戸城内部の卍ブロックがらみ。(サブまりん城の揚げ物部屋は考慮しない)

jp_super_jump_logic

デフォルト: False

日本版「ひこう」の術の仕様*3を加味してルート生成される。(北米版との整合性のためデフォルトはOFF)

*1:まねき猫, キラキラ団子, 大入袋, 各種鍵, これゾウくん, ヤジルシくん

*2:ジャンプ中に投擲武器を使うと、滞空時間が伸びる技

*3:壁際でスティックを倒しながら使うと飛行高度が上がる