2-1.ファイルとdataフォルダ


 [前のページ]   [目次に戻る]   [次のページ] 

必要なファイル構成

dataフォルダでの動作

ゲームの開発中は、dataフォルダにテキスト、画像、音声ファイルなどを配置し、作業してゆきます。
dataフォルダからファイルを読み出して動作するモードを開発モードといいます。

dataフォルダには、最低限の条件が、以下の通り2つあります。
・dataフォルダは、Famous Writerと同階層(同じフォルダ内)にあること
・dataフォルダの直下に、setting.txtファイル(後述)があること
図示すると、下のようになります。

2-1-1

以上が満たされていれば、dataフォルダの中のフォルダ・ファイルは自由に構成できます。
例えば、画像はimageフォルダ、音声はsoundフォルダ、みたいな決め打ちはしないので、お好きなように配置してください。
煩わしい大量の設定ファイルや、内包するフォルダ名の決め打ちがないので、開発者各位の好みや開発環境に柔軟に対応できます(特に複数人で開発するプロジェクトで、共有フォルダを作る場合などに効いてくると思われます)。

なお、フォルダとファイルの数は、約21億個まで識別します(OSによっては、それ以前にOS側の許容範囲を超えますけど)。

fwdファイルでの動作

配布時など、src.fwdとarc.fwdでの動作モードをゲームモードといいます。
src.fwdとarc.fwdについては、このマニュアルのコンパイルと配布のページをご覧下さい。
ゲームモードで動作させる場合は、それらファイルがFamous Writerと同階層にあるのが条件になります。

開発モードとゲームモードの識別

開発モードとゲームモードは、Famous Writerが次のルールに従って自動で判別するので、皆様のほうで設定等をしていただく必要はございません。

Famous Writerはまず、起動されるとsrc.fwdを探しに行き、src.fwdがあればarc.fwdを探し、これもあればゲームモードとして動作します。
src.fwdがなければ、開発モードとしてdataフォルダを探しに行き、ない場合はエラーになり終了します。
従って、ゲームモードでの動作中は、dataフォルダがあったとしても触りません。

FmWr.iniとsaveフォルダは、どちらのモードでも共通です。無い場合は自動で生成します。
セーブデータはゲームモードと開発モードで互換性がありません。注意してください。
これは、セーブポイントの管理方法が違うためです。

dataフォルダのファイル名

使えない文字

ファイル名・フォルダ名は、半角英数字にしてください。
全角文字が含まれている時の動作は保証いたしません。

また、ファイル名・フォルダ名には、以下の使えない文字があります。

¥ / : , ; * ? " < > |

Famous Writerの対応OSでは、この点はWindowsが一番制限が厳しいので、それに習っております。Macintoshをお使いの方は、Mac OSでは使えてしまう文字がございますので、含めないようご注意下さい。
これらの文字が使用されたファイルを指定すると、Famous Writerはエラーを出すので、各文字を覚えなくても構いません。使えない文字があるという事実だけ覚えておき、エラーが出たらこのページを参照するといいでしょう。

文字数制限

dataフォルダでの配布をお考えの方は、OS自体の文字数制限がさらに付きます。
・Mac OS 9以下では、ファイル名は半角31文字まで(拡張子をつける場合はそれも含みます)
・Windowsの一部動作モードや、ISO 9660(CD-ROMなど)では、フルパスで半角255文字まで

src.fwd/arc.fwdにコンパイルして配布する場合は、文字数制限はございませんが、ファイル名が長くなると、そのぶん識別のための処理時間等が必要になるなど、パフォーマンスが悪くなります。
なるべく簡潔にしておくことをお勧めいたします。

拡張子

画像や音声などのファイルには、拡張子をつけることを強くお勧めします。
特に、Macintoshの方はお気をつけ下さい。
これは、QuickTimeのバージョンと、読み込むファイルのフォーマットによっては、正しく読みこめない可能性があるためです。
開発者の方とエンドユーザー側の環境の違いにより、バグ(のように見える状況)になる可能性があります。

テキストファイルは、当然ながらQuickTimeと関係なく、自前で読み込みます。
従って、拡張子がtxtでなかったり、拡張子自体がなくても構いません。
特にWindowsの方は、使い慣れたテキストエディタに関連づけされた拡張子のファイルで開発ができます。

*Format命令

setting.txtで、*Format.〜命令を使うと、拡張子を省略することが出来ます。
これはFamous Writerが内部で自動的に付加して扱います。

例えば、通常、ファイルの指定は以下のように書きます。
これは、dataフォルダ直下の「MyImage.bmp」を、レイヤーに読み込む命令です。

&Layer.Load = MyImage.bmp;

これを、setting.txtで、

*Format.Img = bmp;

と指定することにより、

&Layer.Load = MyImage;

と、拡張子を省略して書くことが出来ます。
もちろん、画像だけでなく、BGM、効果音やシナリオファイルに対しても、個別に設定できます。

また、*Format.〜命令を使用している時でも、パスの頭に「:」をつけると指定が無効になります。
様々なフォーマットを使い分けする時などにお役立て下さい。
*Format.Img = jpg;と指定してて、bmpを読み込みたい時は、

&Layer.Load =: /scene1/img/bg.bmp;

と書くことが出来ます。

命令中での指定

パスでの指定

dataフォルダ内のファイルは、命令中では「/chapter1/story2.txt」のような形で指定します。
お気づきの方もいらっしゃるかと思いますが、これはHTMLの記述方法を参考にしておりますので、ホームページをお持ちの方などには、すぐに馴染んでいただけると思います。

&Jmp = /chapter1/story2.txt;
&SE.Load = /sound/outdoor/rain.m4a;

具体的には、dataフォルダをルートディレクトリとみなし、中のディレクトリ(フォルダ)は「/」で区切ります。

2-1-2

上でも申し上げましたが、ファイル構成はお好きなようにできますので、上の図のような構成も可能です。
これにより、自由度の高い開発ができます。


 [前のページ]   [目次に戻る]   [次のページ] 

Ads by TOK2