2011年11月23日水曜日

シル学試行錯誤・SSからのイベントロード失敗

シル学ユーザーデータでは、各ユーザーデータフォルダの下のEvent_Loadフォルダに置いたテキストを、別のイベントから呼び出すことができます。
!イベントファイル挿入 , てすと.txt
この命令によって、同じ機能のまとまりを繰り返し呼び出すことが可能となり、ユーザーデータが作りやすくなるのです。

しかしSSでは、イベントファイル挿入を使うことができません。ユーザーデータでは、イベントファイル挿入が読み込むフォルダは決まっているのですが、SSの場合にはどこから読み込まれるか不明のためファイルが読み込まれず、使えないのです。

そもそも、ある程度大きなユーザーデータでないと出番がない命令ですから、SSで使えないのも無理はありません。しかしもし使うことができれば、SS機能を利用したミニゲームなんかが実装しやすくなると思います。

そんな折、カイルさん作の「SS用テクニック集」で戦闘中のイベントファイルの挿入がSSでも可能であることが紹介されました。SCさん作の「シルフェイド見聞録再現(仮)」の中で使われていた手法で、シル学フォルダの下の「Data\Event_Load」フォルダに置いたテキストを読めるというものです。

これはイベントファイル挿入をSSでも実現できる可能性が見えてきた! と思ったのですが、今のところ、うまくいっていません。
いろいろ試した結果、以下のようなことが分かってきました。

SSに限らずユーザーデータでも、イベントファイル挿入では「..\」で親フォルダを辿れません。通常のユーザーデータでも、ユーザーデータフォルダ以下の「Event_Load」フォルダに置いた「てすと.txt」を読むためには
!イベントファイル挿入 , てすと.txt
としますが、
!イベントファイル挿入 , ..\Event_Load\てすと.txt
とした場合には読み込めずエラーとなります。

これがかなり厄介で、親フォルダを辿れないということは、イベントファイル挿入が読み込むフォルダを正確に予測して、そこにファイルを置かなければなりません。
ファイルの有無確認のパスでは、「..\」が使えるのですが。

例として、遼遠さん作の「黒サラさんと海岸で海水浴!」というSSでは、
${ファイル有無:..\Graphic\[遼遠]グラフィック集\黒サラ水着.png}
という変数でファイルの有無を確認しています。 この場合、「..\」でたどり着くフォルダは「Data」に該当しています。ファイルの有無の基準フォルダは、「Data\○○」というフォルダにあるようですが、「○○」の正確な名前が分からなくても、「..\」で親フォルダを辿れればうまくファイルを指定することができるわけです。

「..\」が使えない以上、イベントファイルの方を読み込まれるフォルダに持っていくしかありません。まだ諦めたわけではありませんが、これはなかなか探すのに骨が折れそうです。

2 件のコメント:

  1. イベントファイルは、最近自分の投稿した「トーテムテスター」みたいに、ユーザーデータの形にして、イベントエディターで読み込んで、テストプレイをShiftキーを押しながら実行、ならSSっぽく実行できるんですけどね。

    ただ、この方法だと実行方法が分かりにくいので、一般のプレイヤー向きではないのがネックですね。

    返信削除
    返信
    1. 確かに、イベントエディターでテストプレイする方法なら、ユーザーデータで可能なことは全てできますね。起動方法を分かりやすくするため、プレイヤーのセーブデータを勝手に上書きして「SS用にロードさせる」なんて方法もふと思いついたのですが……大事なデータを消してしまう可能性があるので、問題あり過ぎですね……。

      削除