「スクロール関連」の編集履歴(バックアップ)一覧はこちら
「スクロール関連」(2009/07/17 (金) 18:24:14) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
*スクロール関連
**部屋のスクロール設定を変更する
部屋のスクロールを編集しようとした時、タイトルバーにこんなメッセージが表示されて
変更できない場合があります。
#ref()
...のあとさらに、Most likely, your Scroll Pointer is either 0000 or 0001.と続きますが
これは部屋での細かいスクロール設定がなされていない事を表します。
このような部屋のPointersを見てみると
Scrollのポインタが0000もしくは、0001に設定されているはずです。
#ref()
0000では全てのスクリーンが青、0001では全てのスクリーンが緑になります。
この設定は、隠し通路を作りたい時などに不向きなので
未使用領域を使ってスクロール編集ができるようにしてみます。
----
#ref()
Scrollのポインタが0000で、スクリーンが4枚ある部屋の
スクロールを編集できるようにしてみましょう。
スクロールの情報は78000~7FFFFの範囲に書かれています。
バイナリエディタでロムを開き、7E9A0にジャンプします。
スクロール情報はスクリーン1枚につき1バイトで
以下の3通りです。
-00 = 赤
-01 = 青
-02 = 緑
スクリーン4枚分の情報が必要なので、7E9A0から4バイトを00に書き換えます。
#ref()
書き換えたら保存して、ファイルを閉じます。
SMILEで目的の部屋を開き、Scrollのポインタを頭7取ったE9A0に変更します。
#ref()
変更したらSave Pointers→いいえと押します。
#ref()
これで細かいスクロール編集ができるようになりました。
あとは各スクリーンを希望の色に変更するだけです。
----
さて、上記手順を踏んだあとに部屋のサイズを大きくするとどうなるでしょうか。
#ref()
縦を3にして、6スクリーンになりました。
増えたスクリーン2枚のところにはスクロールの色が表示されていません。
クリックすれば色が付くようなので、増えた2枚も赤にしてみましょう。
#ref()
これをセーブして、バイナリエディタでさきほど書き換えた場所を覗いてみます。
#ref()
書き換えたのは茶色で囲った4バイトでしたが、灰色で囲った2バイト分増えて
6バイトが00になっています。
これはさきほどクリックして色を付けたスクロールの情報2バイト分が
上書きされたためこのようになりました。
スクロール情報はポインタで指定されたところから
部屋のスクリーン分だけ問答無用で読み込まれます。
03以上が読み込まれた時には、SMILE側で判別不能なスクロール情報になるので
色がつきませんが、プレイする上では全て緑として扱われるようなので
フリーズしたりすることはありません。
細かいスクロール設定のある部屋を広げた際
色が表示されないスクリーンがでてくる状況がほとんどだと思いますが
そのまま色を付けてしまうと、大体他の情報を壊してしまいます。
色が表示された時でも、後ろに続く別の情報がたまたま00~02の場合がほとんどなので
編集しないようにします。
既存の細かいスクロール設定がある部屋を広げた際は、未使用領域に
スクリーン分の情報を新しく用意した上で、ポインタを変更しましょう。
また部屋を狭くした時は、読み込まれる情報が少なくなるだけなので
問題なく編集できます。
*スクロール関連
**部屋のスクロール設定を変更する
部屋のスクロールを編集しようとした時、タイトルバーにこんなメッセージが表示されて
変更できない場合があります。
#ref(http://www9.atwiki.jp/catnap222/?cmd=upload&act=open&page=%E3%82%B9%E3%82%AF%E3%83%AD%E3%83%BC%E3%83%AB%E9%96%A2%E9%80%A3&file=tb0.PNG)
...のあとさらに、Most likely, your Scroll Pointer is either 0000 or 0001.と続きますが
これは部屋での細かいスクロール設定がなされていない事を表します。
このような部屋のPointersを見てみると
Scrollのポインタが0000もしくは、0001に設定されているはずです。
#ref(http://www9.atwiki.jp/catnap222/?cmd=upload&act=open&page=%E3%82%B9%E3%82%AF%E3%83%AD%E3%83%BC%E3%83%AB%E9%96%A2%E9%80%A3&file=pt0.PNG)
0000では全てのスクリーンが青、0001では全てのスクリーンが緑になります。
この設定は、隠し通路を作りたい時などに不向きなので
未使用領域を使ってスクロール編集ができるようにしてみます。
----
#ref(http://www9.atwiki.jp/catnap222/?cmd=upload&act=open&page=%E3%82%B9%E3%82%AF%E3%83%AD%E3%83%BC%E3%83%AB%E9%96%A2%E9%80%A3&file=sc0.PNG)
Scrollのポインタが0000で、スクリーンが4枚ある部屋の
スクロールを編集できるようにしてみましょう。
スクロールの情報は78000~7FFFFの範囲に書かれています。
バイナリエディタでロムを開き、7E9A0にジャンプします。
スクロール情報はスクリーン1枚につき1バイトで、以下の3通りです。
-00 = 赤
-01 = 青
-02 = 緑
スクリーン4枚分の情報が必要なので、7E9A0から4バイトを00に書き換えます。
#ref(http://www9.atwiki.jp/catnap222/?cmd=upload&act=open&page=%E3%82%B9%E3%82%AF%E3%83%AD%E3%83%BC%E3%83%AB%E9%96%A2%E9%80%A3&file=be0.PNG)
書き換えたら保存して、ファイルを閉じます。
SMILEで目的の部屋を開き、Scrollのポインタを頭7取ったE9A0に変更します。
#ref(http://www9.atwiki.jp/catnap222/?cmd=upload&act=open&page=%E3%82%B9%E3%82%AF%E3%83%AD%E3%83%BC%E3%83%AB%E9%96%A2%E9%80%A3&file=pt1.PNG)
変更したらSave Pointers→いいえと押します。
#ref(http://www9.atwiki.jp/catnap222/?cmd=upload&act=open&page=%E3%82%B9%E3%82%AF%E3%83%AD%E3%83%BC%E3%83%AB%E9%96%A2%E9%80%A3&file=sc1.PNG)
これで細かいスクロール編集ができるようになりました。
あとは各スクリーンを希望の色に変更するだけです。
----
さて上記手順を踏んだあとに部屋のサイズを大きくすると、どうなるでしょうか。
#ref(http://www9.atwiki.jp/catnap222/?cmd=upload&act=open&page=%E3%82%B9%E3%82%AF%E3%83%AD%E3%83%BC%E3%83%AB%E9%96%A2%E9%80%A3&file=sc2.PNG)
縦を3にして、6スクリーンになりました。
ですが、増えたスクリーン2枚のところにはスクロールの色が表示されていません。
クリックすれば色が付くようなので、増えた2枚も赤にしてみましょう。
#ref(http://www9.atwiki.jp/catnap222/?cmd=upload&act=open&page=%E3%82%B9%E3%82%AF%E3%83%AD%E3%83%BC%E3%83%AB%E9%96%A2%E9%80%A3&file=sc3.PNG)
これをセーブして、バイナリエディタでさきほど書き換えた場所を覗いてみます。
#ref(http://www9.atwiki.jp/catnap222/?cmd=upload&act=open&page=%E3%82%B9%E3%82%AF%E3%83%AD%E3%83%BC%E3%83%AB%E9%96%A2%E9%80%A3&file=be1.PNG)
書き換えたのは茶色で囲った4バイトでしたが、灰色で囲った2バイト分増えて
6バイトが00になっています。
これはさきほどクリックして色を付けたスクロールの情報2バイト分が
上書きされたためこのようになりました。
スクロール情報はポインタで指定されたところから
部屋のスクリーン分だけ問答無用で読み込まれます。
03以上が読み込まれた時には、SMILE側で判別不能なスクロール情報になるので
色がつきませんが、プレイする上では全て緑として扱われるようなので
フリーズしたりすることはありません。
細かいスクロール設定のある部屋を広げた際
色が表示されないスクリーンがでてくる状況がほとんどだと思いますが
そのまま色を付けてしまうと、大体他の情報を壊してしまいます。
色が表示された時でも、後ろに続く別の情報がたまたま00~02の場合がほとんどなので
編集しないようにします。
既存の細かいスクロール設定がある部屋を広げた際は、未使用領域に
スクリーン分の情報を新しく用意した上で、ポインタを変更しましょう。
また部屋を狭くした時は、読み込まれる情報が少なくなるだけなので
問題なく編集できます。