さて、そうは言ったものの地形データの参照方法や背景グラフィックの呼び出し、及び読み込み方法について詳しく解析をしているわけではないので、これから述べる内容はかなりの推論を含んでいます。その点に関してはご了承願います。
まず戦闘背景の呼び出し方法ですが、戦闘開始時に先攻側と後攻側の地形パネルIDを参照し、そのうえで「地中、水中、陸上、上空のどの場所にいるのか?」という「存在の要素」をチェックした後に背景データをRAMに書き込んでいます。これがホバーの場合は水系地形IDのパネルの上でも常に存在場所が陸上扱いになってるのですが、水中以外では強制的に背景データを「00=空中」に設定しているのだと思われます。色々と試してみたところ地中や空中は強制的に戦闘背景を空中にしてしまうようなので、これと同じ要領で水上も空のグラフィックになるのでしょう。夕焼けや夜はパレットによる差分方式の別IDになっており、これに関してはRAM上に昼間や夕方や夜、月や火星などの設定をしている箇所があり、これをスイッチとして各背景のIDを変更しているようです。
次に戦闘背景ですが、デバッグモードで戦闘背景のグラフィックを確認すると結構使われていないIDが目立ちます。ここに写真(スーパーロボット大戦EXの水上の画像)のような専用のグラフィックを設定してやれば、割と背景自体を増やす事は可能なように思えます。簡単に言えば、草原の背景の空と雲を残し、その代わりに草原そのものの部分に水上の画像を書き込めば手軽に水上の背景が作成できるのではないでしょうか。もっとも、この方法では草原の背景がなくなってしまうので、草原のタイルをコピーして別途水上のグラフィックを書き込む必要があります。そして、戦闘開始時に特定の地形パネルIDにいる時かつ陸上判定だった場合は新たに作った水上の背景を呼び出すという処理を設定すればよいのです。あくまで推論なのでこの方法で本当に上手くいくのかどうかは未知数ですが、試してみる価値はあると思います。現状では私はホバーの設定を取り入れる予定がないのでホバーに関してこれ以上の解析をするつもりはありませんが、これを利用して特定の武器や機体で特別な背景を呼び出すという事ができればなかなか面白い事ができるかもしれませんね。
コメント
コメントを投稿