# ストレージシステムについて

吉里吉里ではファイルやアーカイブ内のファイル、その他のリソースについて、ファイルではなくてあえて「ストレージ」と呼んでいます。

# 統一ストレージ名

統一ストレージ名とは、吉里吉里内のみで用いられるストレージを表す名前で、URI に似た方法でストレージを表します。
表記は、
`メディア://ドメイン/パス`
の形式で行われます。パスの区切り文字は / (スラッシュ) を用います。

# ローカルストレージ

ローカルストレージ ( ローカルファイル ) を表す統一ストレージ名は、メディアに file 、ドメインに . (ドット) を用います。また、Windows の場合はパスの先頭はドライブ文字になります。
たとえば、C:\Program Files\Game\game.exe は、
`file://./c/program files/game/game.exe`
となります。
Storages.getFullPath メソッドは、OS の使うファイル名から統一ストレージ名への変換を行うことができます。この過程で、ファイル名中の大文字はすべて小文字に変換されます ( ローカルストレージについては大文字と小文字は区別されません )。また、パス区切りに \ が用いられている場合は / に変換されます。
Storages.getLocalName メソッドは、統一ストレージ名から OS の使うファイル名への変換を行うことができます。吉里吉里以外のアプリケーションにストレージ名を渡す場合などはこのメソッドを使用する必要があります。

# アーカイブストレージ

アーカイブ内のストレージを指定する場合は、 > で区切り、> より前をアーカイブストレージのストレージ名、> より後をアーカイブ内でのパスに指定します。
たとえば、file://./c/program files/game/game.xp3 内の image/base.jpg というストレージならば、
`file://./c/program files/game/game.xp3>image/base.jpg`
となります。
2.19 beta 14 よりアーカイブの区切り文字が '#' から '>' に変わりました。
吉里吉里は標準で XP3 という吉里吉里独自形式のアーカイブストレージを扱うことができます ( XPK の第３世代の形式なので XP3 )。XP3 形式のアーカイブの作成方法については Releaser を参照してください。
XP3 アーカイブは実行可能ファイルと結合することができます。この場合は吉里吉里は実行可能ファイルを一つのアーカイブファイルとして見なすことができます ( Releaser は 吉里吉里本体との結合しかサポートしていません )。

# プロジェクトフォルダ

吉里吉里でゲームやツールなどを作る場合、必要なファイルはすべて「プロジェクトフォルダ」にまとめて開発を行うのが一般的です。吉里吉里は、起動時にプロジェクトフォルダを現在のカレントフォルダに設定します。
プロジェクトフォルダ内の相対パスですべてを指定しておけば、Releaser で単一の実行可能ファイルなどにしてもパス指定を変える必要はありません。

# データ保存場所

データ保存場所は コマンドラインオプション の -datapath オプションで指定されたフォルダです。System.dataPath プロパティで取得することができます。
吉里吉里が出力する各種ログやユーザごとの設定ファイルはここに出力されます。
また、ユーザがゲームやツールなどを作る場合は、データはここに保存することが推奨されます。