Darkside(リンクエラー修正しました)

2015年3月13日(金) 21:51

短所を補う

 エミュレーターによって、長所短所がある。
 PSXjin の長所は、ステートセーブ&ロードが極めて安定していること。これは、TAS製作のストレスを大きく下げる。一方では、互換性が怪しいとかプラグインが使えないなどの短所がある。特にプラグインは、わざわざ使えなくしてある。プラグインに対応するためのコードが、大量に残存している(それを利用してプラグインを有効にする改造を行うには、残存部分は少な過ぎるが)。

 短所の中には、容易に改修できるものもある。
 例えば、メモリーカードの扱い。PSXjin はムービーの記録を始めると、メモリーカードが空になってしまう。あれこれ頑張ってると使用したいメモリーカードを使ってのムービーは作れるが、気付かないうちに空メモリーカードにすりかわっていることがあり猛烈なストレス。
 ムービーを記録しようが記録しまいが、現在使用しているメモリーカードはそのままというのが使い易い。そこで、メモリーカードを勝手に入れ替えているコードを全て殺した。
 今個人的に使用している改造 PSXjin は、ムービー操作でメモリーカードが変更されることは一切起らないようにしてある。

 また、lua スクリプトで大規模な探索を行う場合、ステートセーブを10個しか行えないのも不便である。BizHawk なら任意のファイル名で幾らでもセーブ数を増やせるのに。
 ところが、セーブファイル名の拡張子は 000 から 009 まである。拡張子が3桁なのに、1桁しか使用していないのはどういう訳か?
 さっそくソースコードを確認すると、技術的な意味は無さそうである。1〜10 の範囲を超えているのをエラーにしているだけだ。そこで、1〜1000 まで受け付けるようにして、拡張子 000 から 999 までフル活用できるようにしてみた。問題なくスクリプトは動いている。たった1箇所書き換えるだけで、ステートセーブ&ロードが1000個使えるようになった。

 これは恐らく、キーボードからロードする場合に20番とか無理だから、10個に制限してあるのだろう。
 しかしスクリプトでステートを使う場合に、20番以降などキーボード操作不能な値をわざわざ使うことにより、手動操作で作ったステートセーブと重複しないという大利点がある。スクリプトを動かしたら、うっかり貴重なセーブを上書きしてしまったというトラブルが予防できる。

written by higashino [ゲーム] [この記事のURL] [コメントを書く] [コメント(0)] [TB(0)]

この記事へのトラックバックPingURL

Comments

TrackBacks

Darkside(リンクエラー修正しました)

Generated by MySketch GE 1.4.1

Remodelling origin is MySketch 2.7.4