概要
venoroa1358です。
この記事ではinfinity-Sによるノベルゲーム「Past Memory -過去と記憶- 」をWindows 10搭載PCでプレイする方法について説明します。
「Past Memory」はinfinity-Sによる第一作目のノベルゲームです。初版は2012年にリリースされました。その後、二作目の「偽りシリーズ」公表以降のいずれかのタイミングで非公開になったものの、2016年にGoogle Playストアから入手可能となりました。2022年現在で入手できるのはAndroid版のみ(多分)なので、Windowsでプレイするにはソースコードの改造を含むいくつかの手順を踏む必要があります。
「infinity-S」、「infinity-G」の作品をこれまで一度も体験していない方は、先により新しい作品をプレイすることをおすすめいたします。具体的には、「黄昏ウィズ」や「ALLiWsシリーズ」(Windows版は有償、Android版は一部作品が無償)がおすすめです。
「infinity-Sの活動の原点」に興味をお持ちの方はぜひお付き合いください。きっと、同サークルの後の作品にも通じる思想やテーマを感じ取ることができると思います。
注意事項
- この方法は非公式です。正確な動作を保障するものではありません。実施に当たっては自己責任でお願いします。
- 二次創作の範疇を超えた行為(ゲームデータの再配布等)を行わないようにしてください。
条件
- Google Playストアを利用可能なAndroid端末
- 仮想環境については未確認
- Windows上で起動させる場合も、まずはAndroid上での起動に成功している必要あり。
- Android 8.0にて以降の操作ができることを確認済。
- 最近のもの(Android 11等)での動作は未確認。
- MIUI 12.x(Android 11ベース)では一応動いた。
- Playストアの説明文によると、Android 2.3.3以降を対象として配信されており、Android 5.xでの動作確認がされている。
- NScripterが動作するWindowsマシン
手順
Androidでの作業手順
まずはAndroid上で次の操作を行います。なお、Androidでそのままプレイする方は手順1までの実施で結構です。
- PlayストアからPast Memoryをダウンロード&インストールし、タイトル画面まで動作することを確認
- Androidのファイルアプリから、[端末名]/Android/data/jp.infinity-s.novel.pastmemory/に移動し、以下のデータが存在することを確認
- nscript.dat: シナリオおよびプログラムデータ
- arc.nsa: 画像や音楽データ
- default.ttf: フォントファイル
- 上記のデータをPCにコピー
Windowsでの作業手順
データのコピーが済んだら、Windows上で作業を進めます。
- NScripter公式ページからNScripter 最終版を入手(NScripter 2ではないことに注意)して、適当な場所に展開
- 展開したフォルダの「NScripter最終版¥実行ファイル/DLL」以下にあるnscr.exeと同じ場所にnscript.datとarc.nsaとdefault.ttfを配置
- nscr.exeをダブルクリックで起動
エラーが出るはずです。何行目でエラーが出ているかを確認してください。 - Yet Another nsdecを入手して適当な場所に展開
- 展開したフォルダにnscript.datを配置し、復号化.batをダブルクリック
- result.txtが出来上がるので、00.txtにリネーム
- 00.txtをテキストエディタで開き、手順3のエラー画面で提示された行を削除(またはコメントアウト、行頭に半角セミコロンを追加)して保存
- 作成した00.txtを手順2と同じ場所に移動
- nscr.exeをダブルクリックで起動して、タイトル画面が表示されたら成功
余談
- 起動できない場合は、フォルダ構成にミスがないか等をもう一度ご確認ください。
- エラー内容はAdobe Flashを再生するDLLがないことに由来するらしい?
- Windows以外のONScripter環境では動作はするもののセーブがうまくできない可能性がある?
- Android上でこのエラーが出ない理由は不明。ONScripterの仕様?
- オープニングにFlashを利用しようとしていた可能性がある?
- どうせシナリオファイルを操作するなら文字化けにつながる誤植も修正しておくと良い。テキストエディタで当該ソースを開いて…
- 「孝2太」で検索、「孝太」に置換
- 半角英字の「cm」で検索、「センチ」等に置換
- NScripterの仕様上、半角文字は全て制御文などとして解釈されるため、シナリオテキストには全角文字しか使えない。全角文字の文章に制御文ではない半角文字が混じると文字化けしてしまう。