シーナリの SCINST へ対応
scinst.sci ファイル
シーナリを SCINST に対応させるのは比較的簡単です。
「scinst.sci」という名前のテキストファイルを書き、これと setup.exe を
配布ファイルに含めるだけです。
scinst.sci ファイルには以下のような情報を含めます。
- シーナリの名前
- シーナリをインストールするディレクトリ
- BGL ファイルの名前(複数指定可能)
- テクスチャファイルの名前(複数指定可能)
- Flight ファイルの名前(複数指定可能)
- Flatten/Exclude スイッチ (FS2000のみ)
scinst.sci ファイルの書き方
まず、scinst.sci ファイルの例を示します。(これは拙作、名古屋市街地シーナリ
用のファイルです。)
;;; scinst.sci example
NAME = Nagoya City 2002
DIR = nagcity
SCENERY = nagcity.bgl
TEXTURE = *.bmp
FLIGHT = *.FLT
DOC = readme-j.html readme.html
REGLIB = 1
EXCLUDE = N35 11.25,E136 52.79, N35 10.27,E136 53.78,objects
scinst.sci ファイルの文法
scinst.sci ファイルはテキストファイルとして作成します。
scinst.sci ファイルの文法は以下のようになります。
- ';' から始まる行はコメントと見なします。
- 空行は読み飛ばされます。
- 各行は <キーワード> = <エントリ1> <エントリ2> ...
というように記述します。
- キーワード、'='、エントリの間の区切りにはスペースまたは
タブを使用できます。また、エントリ同士の間の区切りにはカンマも
使用できます。
- キーワードの大文字と小文字は区別されません。
- 行が複数行にまたがる場合は、行末に '\' をつけることで
次の行へ継続することができます。
シーナリ名の指定
シーナリ名の指定は 'NAME' キーワードを使って行います。
NAME = Nagoya City Scenery
この名前は、SCINST のダイアログに表示されます。
また、風景ライブラリのエントリ名としても使用されます。
ディレクトリの指定
シーナリをインストールするディレクトリの指定は 'DIR' キーワード
を使用します。
DIR = nagcity
シーナリをインストールするデフォルトディレクトリは、
<MSFS のディレクトリ>\Scenery\<DIR キーワードで指定したディレクトリ>
となります。上記の例では C:\Program Files\Microsoft Games\Flight Simulator\Scenery\nagcity となります。
なお、このディレクトリは、インストール時にユーザが変更することができます。
シーナリファイルの指定
インストールするシーナリファイル(BGLファイル)は 'SCENERY' キーワードで
指定します。
SCENERY = nagcity.bgl
インストールするファイルは複数指定できます。ファイルを scinst.sci ディレクトリ
のサブディレクトリに置いている場合、相対ディレクトリで指定することが
できます。また、ワイルドカードによる指定も可能です。
例えば、
SCENERY = scenery\*.bgl
のようになります。
テクスチャファイルの指定
インストールするテクスチャファイル(.R8/.BMPファイル)は 'TEXTURE' キーワードで
指定します。
TEXTURE = *.bmp
インストールするファイルは複数指定できます。相対ディレクトリによる指定、
ワイルドカードによる指定も可能です。
Flight ファイルの指定
インストールする Flight ファイル(.FLTファイル)は 'FLIGHT' キーワードで
指定します。
FLIGHT = *.FLT
インストールするファイルは複数指定できます。相対ディレクトリによる指定、
ワイルドカードによる指定も可能です。
ドキュメントファイルの指定
インストールするドキュメントファイルを 'DOC' キーワードで指定します。
DOC = readme-j.html readme.html
相対ディレクトリによる指定、ワイルドカードによる指定も可能です。
風景ライブラリへの登録
風景ライブラリへの登録指定は 'REGLIB' キーワードで行います。
REGLIB = 1
0 を指定した場合は登録を行いません。0 以外の値を指定した場合は
登録を行います。
Flatten/Exclude スイッチ
FS2000 以降では、Flatten/Exclude スイッチを指定することができます。
このスイッチは、FS200x ディレクトリにある scenery.cfg にそのまま
書き込まれます。
Flatten/Exclude スイッチについては、FS200x ディレクトリにある
readme.txt を参照してください。
Flatten/Exclude を使う場合は、必ず REGLIB の値を 1 にしておいてください。
インストールで行われる動作
インストール時に実際に行われる動作は以下の通りです。
- SCINST が起動したとき、シーナリをインストールするディレクトリは
DIR キーワードで指定した値から決定されます。
- SCENERY キーワードで指定したファイルは、<シーナリをインストールするディレクトリ>\Scenery ディレクトリにコピーされます。
- TEXTURE キーワードで指定したファイルは、<シーナリをインストールするディレクトリ>\Texture ディレクトリにコピーされます。
- FLIGHT キーワードで指定したファイルは、FS2004 の場合は MyDocuments\Flight SImulator Files\シーナリ名
ディレクトリ、FS2002 の場合は FS2002 の flights\シーナリ名ディレクトリに、それ以外の場合は PILOTS
ディレクトリにコピーされます。
- DOC キーワードで指定したファイルは、
<シーナリをインストールするディレクトリ> と同じディレクトリに
コピーされます。
- ドキュメントを同じディレクトリにインストールログファイル
('シーナリ名'.log) が作成されます。
- REGLIB キーワードに 0 以外の値を指定している場合、風景ライブラリにエントリが自動的に追加されます。追加されるエントリは以下のようになります。
- エントリは最上位のレイヤに配置されます。
- エントリ名は NAME キーワードで指定したものとなります。
- 風景エリアは「アクティブ」で「ローカル」に設定されます。
- FS2000 の場合は、Flatten/Exclude スイッチが書き込まれます。
BGL ファイルとテクスチャファイルは scinst.sci ファイルのあるディレクトリと
同じディレクトリから探すようになっています。
風景ライブラリへのエントリ追加時に、すでに同じエントリがあった場合には、
エントリの追加は行われませんが、そのエントリは自動的にアクティブに
なります。なお、ここで同じエントリというのは
「風景エリアパス名」が一致するエントリです。
例えば、シーナリを FS98 の Asia シーナリと同じディレクトリにインストール
する場合、すでに風景ライブラリに Asia が登録されているはずなので、
新たに風景ライブラリにエントリを追加するようなことはしない、ということ
です。
配布形態について
SCINST 対応のシーナリの配布形態としては、作成した scinst.sci と setup.exe ファイルの
2つを同梱する形となります。
旧 SCINST で推奨していた方法は、.sci ファイルだけを入れて、SCINST は別途ユーザが
ダウンロードする、というものでしたが、Ver 3.0 ではこの方式はサポートしないように
なりました。最近はネットワークのブロードバンド化に伴い、多少配布ファイルが大きく
なっても許容されるようになっていますので、setup.exe を同梱したほうがよいと判断
したためです。
ドキュメントの修正
シーナリに添付するドキュメントを修正し、シーナリのインストール方法を
記述してください。以下にテンプレートをつけておきます。適当に変更して
使ってください。
○シーナリのインストール方法
シーナリのインストールを始めるには、setup.exe ファイルを
ダブルクリックしてください。インストーラ画面が起動しますので、
インストールする FS のバージョンを確認して、「インストール」ボタンを
押してください。
権利表示について
お節介(^^;)かもしれませんが、もしドキュメントに権利関係の記述を
していないのであれば、この機会に記述することをお薦めします。
記述する項目は以下の通りです。
なお、以上に示した方針はあくまで一般的な指針を示しただけであって
強制ではありません。