2007年12月11日火曜日

スコアアタックについて

Missileスクリプトの仕様策定の段階であったのですがスクリプト上簡単にリプレイを作成できるようになっています。
しかし、このリプレイ。
多少の欠点があります。

それは現状バージョンの差異を特定出来ないことです。

リプレイデータはゲーム中でプレイヤーがどのようにキャラを動かしたか、それがMISSILEスクリプトのバーチャルマシン上でどのように反映されるかを保存します。

そのため、スクリプト変更に伴う敵の動きの変更があった場合その動きの差異を拾えきれない事があります。

スクリプト、アップローダ用のスコアを特定する方法はすでに内部で決まってはいるのですが他の同人STGでも過去のリプレイがまともに動く例は少ないようです。
(当たり前といえば当たり前なのですが)

しかし、これを解決したところでステージ構成が違うバージョンでのスコアアタックに意味があるのか。
おそらくは意味がない場合がほとんどなんでしょう。

2 件のコメント:

NPK さんのコメント...

とはいえゲーム違うのにリプレイが再生されちゃまずいのでHeaderにゲームごとのuniqueID入れなきゃ行けない訳ですが。

polygonize さんのコメント...

リプレイ情報ファイルのヘッダには、なんらかのバージョン情報を入れないといけないですね。
スクリプトのソースコードは、Visual Studioでそれ用のプロジェクト作って、そこに放り込んでおくのが楽じゃないかと。テクスチャや音楽などのリソース類は同様に。つまり、リソースを入れるためのプロジェクトになるわけです。
そのプロジェクトのアセンブリバージョンを、リプレイ情報ファイルのヘッダに入れるバージョン情報とすれば、プログラム的に扱いが楽なのと、ソースのバージョン管理の一元化が図れます。