まえがき

簡易スクリプトで東方系ボスのような敵を動作させるソフトです。
「script」フォルダ内の、スクリプトで敵を動作させます。
敵の画像、別途表示したい画像も自由です。
自機の作成も行えます。

操作方法

パッドは、config.exeに従って動きます。

キーボード操作
カーソルキー：移動
Z：弾(押しっぱなしでオート連射)、決定
X：ボム、キャンセル
C：ユーザ定義(スクリプトによって意味が変わります)
左Shift：減速移動
Esc：ポーズ
左Ctrl：イベントスキップ
PageUp：高速再生(押せば押すほど高速に再生されます
(Ctrlキーと同時押しで、一気に最高速。)。
PageDn：高速再生解除
Space：押している間高速再生されます。離せば解除されます。
R：リセット(タイトル画面に戻る)
BackSpace：リトライ(同じスクリプトを最初から再生)
Home：スクリーンショットを取って"snapshot"フォルダに保存します。
P：アプリケーションをポーズ(ただし非アクティブ→アクティブでも解除される)
Alt+Enter：FullScreenとWindowの切り替え
F12：アプリケーションの終了

音声について

bgmフォルダに「bgm.wav、bgm.mid」あたりを入れると再生されます。
再生可能なのは、wav、mp3、ogg、midです。
優先順位は wav > mp3 > ogg > mid です。
効果音はアーカイブされていますが、
「se」フォルダに以下のファイルを置くことで置き換えられます。
ただ、これらのファイル名は変えるかもしれません。
これらの効果音が好きになれないって人以外は特に置き換える必要はありません。

使われている場所 | ファイル名
自弾発射音 | sePlayerShot01.wav
かすり | seGraze.wav
自機撃墜 | sePlayerCollision.wav
自機ボム発動 | sePlayerSpellCard.wav
残機増加(1UP) | se1UP.wav
アイテム取得 | seScore.wav
霊夢「夢想封印」発射音 | seBomb_ReimuA.wav
霊夢「夢想封印」着弾音 | seExplode01.wav
霊夢(夢)ボム発射音 | seBomb_ReimuB.wav
魔理沙(魔)ボム発射音 | seBomb_MarisaA.wav
魔理沙(魔)ミルキーウェイの星発射音 | seBomb_MarisaA_Star.wav
魔理沙(恋)ボム発射音 | seBomb_MarisaB.wav
敵スペルカード発動音 | seUseSpellCard.wav
森羅結界発動音(1) | seSuperNaturalBorder1.wav
森羅結界発動音(2) | seSuperNaturalBorder2.wav

リプレイファイル

リプレイは「replay」フォルダに、
「スクリプトファイル名_replayxx.dat」(xxは番号)で保存されます。
1つのスクリプトにつき保存時は10ヶ所に保存できますが、自由にリネームできます。
リプレイファイルのヘッダ部分にスクリプトファイル名と「#Text」部分をかきこんであり、 それで区別を付けています。
読みこみ時にはファイル数制限はありません。
リプレイ再生は、スクリプト選択シーンで「通常Play」の下にでている項目で選択できます。

スコア

現状では以下のように変動します。
Rateは画面左下にかいています。

打ち込み点 | Graze/10がそのまま点になります。またRateが多少上昇します。
スペルカードボーナス | 敵スペルカードをノーミス、ノーボムで撃破することで取得できます。 Rate×スペルカードボーナスです。 またRate最大値とRateが2上昇します。
撃墜時 | Rateが25%減少します。

弾幕をつくる人へ

scriptフォルダに置いたスクリプトファイルが、認識されます。
ファイル名は自由です。
画像ファイルは、デフォルトでは「script\img」にいれていますが、
実行ファイルより下ならどこにおいても、
スクリプトに記述してあるパスが正しければOKです。
用意する画像サイズはなるべく2の累乗にしてください。
例えば640×480の画像を読みこむと、内部では1024×512であつかわれます。

スクリプトにエラーがある場合、スクリプト選択画面に戻ります。
スクリプトに無限ループがあったりすると、その場で固まります。
不正終了する場合もあります。
よく落ちるのでWindows2000 or Xpでの作製を推奨します。
スクリプトサンプル

弾幕をつくる時は、東方弾幕風をたちあげ、
作成中のスクリプトを読みこみ、「I」キーで無敵にし、
弾幕を確かめる→テキストエディタでスクリプトを編集→「BackSpace」でリロード
で作製すると多少楽です。
弾幕をつくるさいの弾の数に制限はありませんが、
あまりに多く存在すると処理落ちするので注意してください。
普通の弾幕なら画面上に500発も存在すれば十分です。
たぶん1000を越えてきたあたりから避ける場所も無くなります。

スクリプトの「@DrawLoop」部分にrand関数を用いている場合は正常に再生されなくなります。 これは、フレームスキップを行った場合に乱数がずれるからです。

デバッグ用キー

デバッグ用のキーです。使用するとリプレイの保存は不可になります。
I：無敵
U：無敵解除
F：残機、ボムが回復
H：敵にライフの10%のダメージ(10回押せば撃破)

今後の予定

・見た目をもう少しこったものに。
・煩雑になってきたこのヘルプ自体を何とかしたい。
・その他、要望があって、できそうなことなら実装。