2021年11月23日火曜日

聴音RPGにおける一時的な無敵時間の実現


1. 緒言


聴音RPG【失われた音問村】[1](以下、聴音RPG)は洗足オンラインスクールにて公開されている無料のブラウザゲームであり、ブラウザのCookie機能を利用してデータのセーブとロードを行います。作中ではセーブポイントとしてクッキー屋が各所に配置されており、そこでCookieを更新することによりセーブします。

以前の報告にて、聴音RPGのスピードランではエンカウントの回数をより少なくすることが重要であると述べました
[2]。エンカウントの観点から分類すると、聴音RPGのフィールドは屋外エンカウント地帯、屋外非エンカウント地帯、屋内から成り、これらはそれぞれの境界となるマスを踏むことにより切り替わります。さらに、屋外エンカウント地帯もいくつかの区画に分けられており、それぞれエンカウント率や敵モンスター(聴音RPGでは音霊とよばれます)の種類が異なります。

今回、筆者はCookieの仕様とフィールドの仕様を組み合わせることにより、一時的にエンカウント地帯での音霊の出現を止める方法を発見しましたので報告します。この現象は要するに敵が無くなるわけですから、聴音RPGにおける無敵時間の実現と言えるでしょう。



2. 検討内容


以下の流れで発生条件の検討を行いました。

 ① 屋外エンカウント地帯にあるクッキー屋でセーブ
 ② 非エンカウント地帯との境界にあたるマスを踏んでロード
 ③ ロード後に周辺を移動し、エンカウントの有無を確認


また、対象となるセーブポイント→踏む境界マスの組み合わせは下記のとおりです。

 A. クッキー次郎→煉瓦村の正面門(屋外非エンカウント地帯)
 B. クッキー三郎→煉瓦村の正面門
 C. クッキー三郎→煉瓦村山岳出張所の入口(屋内)
 D. クッキー本舗足洗神宮店→足洗神宮の入口(屋外非エンカウント地帯)
 E. クッキー次郎→(気絶)→煉瓦村耳鼻科診療室の入口(屋内)
 F. クッキー次郎→(気絶)→煉瓦村耳鼻科診療室の入口→煉瓦村の正面門
 G. クッキーの門前堂→(はじめから)→煉瓦村の正面門

EとFについては、戦闘による気絶後に屋内から再スタートとなる仕様を利用し、非エンカウント地帯の内側から境界マスを踏むことを目的としています。Gについては一旦はじめからゲームをスタートし(Firefoxでは「はじめから」を選択したあともCookieが保持されるため)、境界マスを踏んだあとにロードします。



3. 結果


検討の結果、A、B、D、F及びGでエンカウントが無くなり、C及びEでは依然としてエンカウントが発生しました。動画1ではDでの検討例を示しております。セーブデータのロード後にエンカウントが発生しなくなり、音問村と煉瓦村の境界である橋を渡った後に再びエンカウントが発生するようになったことが分かります。


動画1 無敵時間発生の例




4. 考察


4.1. 発生原理


聴音RPGにおいて、ゲームの進行上必要となるフラグはCookieに保存されており、これらのフラグはロードによってセーブ時の状態に戻ります。ところが、マップの境界情報については保持されず、ロード直前の状態を維持するようです。

したがって、ロード直前に屋外非エンカウント地域の境界を踏んでいる場合はその状態が維持され、ロード後はマップ移動によりエンカウント情報が更新されるまでエンカウントが発生しなくなります(検討A、B、D及び動画1)。これは屋外非エンカウント地域の内側から踏んだ場合(検討F)、並びに新しく始めた別データで踏んだ場合(検討G)も同様です。

なお、屋内は全て非エンカウント地帯ですが、屋外非エンカウント地帯とはマップ上での扱いが異なるらしく、同様の現象は発生しません(検討C、E)。



4.2. 実用化における懸念点


屋外エンカウント地帯にあるクッキー屋は下記の5軒です。

  • クッキー次郎(煉瓦村森林出張所)
  • クッキー三郎(煉瓦村山岳出張所)
  • クッキー本舗足洗神宮店(足洗神宮)
  • クッキー本舗音問木屋枯店(音問村木屋枯地区)
  • クッキーの門前堂(音問村羅猛地区)


また、屋外非エンカウント地帯は下記の4箇所にあります。

  • 煉瓦村
  • ジャズ喫茶ズージャ(屋内ながら境界あり)
  • 足洗一番街
  • 足洗神宮


すなわち、音問村内部には屋外非エンカウント地帯がなく、煉瓦村側も屋外非エンカウント地帯とセーブポイントが離れています。また、煉瓦村側は草原、ドワーフの森及びバンダイ山脈の間でエンカウント情報が切り替わり、音問村内部も地区ごとに切り替わるため、非エンカウント状態で動ける範囲は意外と限られています。

唯一屋内非エンカウント地帯に近いのはクッキー本舗足洗神宮店ですが、現行のRTAルートでは足洗神宮の鳥居から入ることこそあれ、出ることはありません。無理やりこのテクニックを利用しようとすると、むしろ回り道によるタイムロスのリスクが高まります。

その他のセーブポイントについては、一度戻るよりは検討Fのようにデスワープするか、検討Gのように新規データで踏みに行くかしたほうが速くなる確率が非常に高いです。ただし、いずれの場合もセーブ後に境界マスを踏んでからロードするまでエンカウント2回ぶんに匹敵する時間を要します。

このテクニックを既存のスピードランルートに適用した場合、歩数が少なくなる分タイムが安定します。ただし、適用しなかった場合でも運がよければ(=エンカウントが少なければ)適用した場合より速く、スピードランにおける記録狙いではどちらを採用すべきか悩ましいところです。さらに、このテクニックはエンカウント2回分の時間を消費するものの、実際に2回エンカウントするのと違ってゴールドが手に入らないため、金銭管理が重要になる
聴音RPGのスピードランではデメリットとなる恐れがあります[2]



5. 結語


以上、聴音RPGにてエンカウント地帯の一時的な非エンカウント化、いわゆる無敵時間の発生を実現させる方法を紹介いたしました。このテクニックは発生条件が限られており、スピードランにおいてはむしろ遠回りとなる恐れがあることから、適用箇所に関する慎重な検討が必要です。また、今回の発見はセーブデータのロード後に維持される要素の存在を示唆しており、マップ情報以外の要素についても同様の検討が待たれます。






参考資料


[1] 洗足オンラインスクール (2017).  聴音RPG【失われた音問村】.  JavaScript版.

聴音RPGのRTAにおけるクリアタイム予測法の検討

  1. 緒言 聴音RPG【失われた音問村】 [1] のRTAでは、ゲームの進行に必要なアイテムを購入するためにお金稼ぎを行う必要があります。聴音RPGにおいて、お金(通貨単位:ゴールド)は基本的に敵モンスターである音霊を倒すことによってのみ手に入れることができます。したがって、...