CSV的な",で列を区切り、改行で行を区切る"形式のテキストファイルに関するMODの記述ルールです。weapon.datとか、land.datとかが主な操作対象だと思います。
- 条件部
- 操作部
1、条件部
行数指定
一番単純な条件の指定方法です。F-22Aのデータがあるところを示したい時に、3行目を変更する、という風に指定する感じです。
簡単に記述できますが、他のMOD(特にデータの追加MOD)の影響を受けやすく、競合の問題も発生しやすくなってしまう点には注意が必要です。
この条件指定方法をとる場合、3つの要素を記述する必要があります。
- ・1つ目の要素
- まずは条件指定の方法が行数指定方法だ、という事を示す必要があります。そのために、最初の要素には"0"を入れます。
- ・2つ目の要素
- 次は、指定する行数を書きます。普通に数えるか、TeraPadとかの機能使って調べるか、拡張子をcsvに変えたりして調べてください。
- ・3つ目の要素
- 最後に、条件部が終わったことを示すために空白(スペースではない)のデータを入れます。2つ目の要素を書き終えるときに","を2回押せばOKです。
2つを合わせて、"0,1,,"(1行目を変更する)、"0,10,,"(10行目を変更する)などのように記述します。
簡易論理演算指定
指定された条件を満たす行を全ての行の中から検索し、それに当てはまる行をすべて操作対象とする指定方法です。F-22Aのデータがあるところを示したい時に、"IDが2である行"、"名前にF-22が含まれていて、階層が[高空]の行"というように指定する感じに。
行数指定より複雑ですが、ある程度競合の問題の発生を抑えることができるはずです。よほどの理由がなければできる限りこちらを使ってください。
この条件指定方法は、記述ルールの範囲内であればいくらでも要素を加え、複雑な条件指定をすることができます。
- ・1つ目の要素
- まずは条件指定の方法が簡易論理演算だ、という事を示す必要があります。そのために、最初の要素には"1"を入れます。
- ・2つ目の要素
- 次は、条件を満たすかどうか調べる列数を書きます。例えば、兵器データで兵器名が○○であったら、という条件を指定するときにはここには2が入ります。列数に関しては、拡張子をcsvに変えたりして調べてください。
- ・3つ目の要素
- 次の要素と等しいものを検索するのか、次の要素と異なるものを検索するのか、を指定します。等しいものを探す場合"=="、異なるものを探す場合"!="です。
例えば、兵器名に○○である、だったら"=="が入りますが、兵器名に○○でない、だったら"!="が入ります。
- ・4つ目の要素
- 探しているデータを書きます。"兵器名が○○である"の○○にあたる部分ですね。例えば、F-22を含むだったら".*F-22.*"(.*は正規表現)という風に記述します。
この要素では、Javaで使える正規表現を使う事が出来ます。使える正規表現に関してはここあたりを参考にしてください。
- ・5つ目の要素
- 検索の方法(?)みたいなのを指定します。AかつB、という風にしたい場合は"&"を、AまたはB、という風にしたい場合は"|"を記述します。
条件部の最後にもこの要素を記述する必要がありますが、その時は何も記述しないでください。
- ・以降の要素
- 示したい条件が完成するまで、2つ目〜5つ目の要素を繰り返し記述できます。条件部の最後の要素は、何も記述しないという点に注意してください。
上の記述ルールに従って、"2,==,F-16.*,&,2,!=F-16 Block60,,"(2列目のデータがF-16から始まって、2列目のデータがF-16 Block60ではない行を示す)というような感じで記述します。
2、操作部
入れ替え
単純にデータを入れ替えます。例えば、"1000lbs爆弾"というデータを"誘導爆弾"に入れ替え(変更)する、とか。
- ・1つ目の要素
- まずは入れ替えを行う事を示す必要があります。最初の要素は0としてください。
- ・2つ目の要素
- 次は入れ替えを行う列を指定します。列の指定方法とかは上とかを参考に。
- ・3つ目の要素
- 最後は入れ替えるデータです。普通に文字列でも数字でも何でも入れてください。
上3つを組み合わせ"0,2,F-15SE"(2列目をF-15SEに変更する)というように記述します。
演算
指定したデータに対し演算(計算)を行います。使いどころはあんまりないですが、例えば"40を20に、30を15に、20を10に…"っていう操作を"○○/2"といった形で簡単に操作を指定することができます。
- ・1つ目の要素
- まずは演算を行う事を示す必要があります。最初の要素は1としてください。
- ・2つ目の要素
- 次は演算を行う列を指定します。列の指定方法とかは上とかを参考に。
- ・3つ目の要素
- 3つ目は演算子です。+,-,*,/,の4つを現在実装してあります。
- ・4つ目の要素
- 計算に使う数値を書きます。3つ目の要素が"/"で、ここが2だった場合、"○○÷2"という計算を行う事を示します。
行の追加
新規兵器、新規武器の追加などの操作を行うときに主に使う方法です。条件部で指定した行に操作部で示した行を追加します。条件部の指定が甘いと複数同じデータが追加されちゃったりするのでご注意を。
- ・1つ目の要素
- まずは行の追加を行う事を示す必要があります。最初の要素は2としてください。
- 以後の記述ルール
- 非常に単純です。条件部の終わりを示す","が挿入された後、","区切りのまま追加したいデータを書いてください。例えば、下のように。
2,F-22A ラプター,○,高空,高空,戦闘機,0,10,2,4,30,2,0,0,0,×,×,×,×,×,○,×,×,×,70・・・(以下省略)
この例だと指定した行にF-22Aの兵器データが追加されるようになります。
行の変更
兵器、武器データを大幅に変更するときなんかに使います。これを使ったMODはMODの適用順が重要になることがしばしばありますので使うときにはご注意を。
- ・1つ目の要素
- まずは行の変更行う事を示す必要があります。最初の要素は3としてください。
- 以後の記述ルール
- 行の追加と同じです。条件部の終わりを示す","が挿入された後、","区切りのまま追加したいデータを書いてください。
行の削除
データを丸ごと削除するときなんかに使います。条件部の指定が甘いと色々とまとめて消されるので注意。
- ・1つ目の要素
- 行の削除を行う事を示すために、4と記述してください。これで行の削除の操作部は終わりです。
これでCSV的なデータ保管方法をとるテキストデータを変更するMODの記述ルール説明は終わりです。
戻る
トップへ