CFS2 の weapon を作る

                                                   2014/9
                                                   2014/12
       

    

    2006年に、海軍用の Weapon を作成してリリースしましたが、
    作成法をすっかり忘れてしまい、資料も紛失してしまいました。
    CFS2版Ki43 の作成に必要であったので、思い出しながら
    このチュートリアルを記述しました。

   A. libraly の作成

    1.gmax で drop tanks を作成 (このファイルは汎用のgmax を使用)

       pylon と drop tank を作成
       位置の確認のために、同時にいったん作成する

               
       pylon と drop tank を分離して保存する

       LOD の設定設定も必要
                 例 100 75 35 15 (ki43 の場合 100 35 15 とした)
                    100 50 10
                 階層表示すると、階層になっていない。 無視する。


       ファイル名 例
          wep_ja_ki43_pylon.gmax     ki43 の pylon は drop_gp と bomb60 とで共通とした
          wep_ja_ki43_drop_gp.gmax
          wep_ja_ki43_bomb60.gmax

    2.gmax で export

       CFS2 の *.mdl 出力に使った、gmax CFS2 版(middleman MDLcommander)
       を使用する。 ただし、mkmdl_parts.xml ファイルがないと、出力ファイルを
       FSregen で読み込もうとしても、エラーメッセージが出てしまいます。
       *.mdl の作成時は問題がなかったのに。

       出力されるファイルは  *.bgl  *_0.asm  *.asm  *.x の4ファイル

       ファイル名 wep_ja_ki43_pylon.bgl で 拡張子 bgl を選択

       出力選択画面に変わったら、CFS2 をクリック 
       keep file がチェックされているか確認。 チェックしておかないと、bgl ファイルが
       出力されるだけ。
        (設定で CFS2 用が、default になるようにしておくと便利)
       このような小さなファイルでも、この状態で5分程度待って
       内部処理を終わらせる 詳しくは他の項を参照

       必要な各ファイルのExport が終わせる
       このなかで、次のFSregen で必要なファイルは *.asm と *_0.asm のみ


    3.仮フォルダーの作成


       仮のフォルダーを作成して、その中に各2つのファイルをコピーする。

          例) C:\temp\fsregen
                       -wep_ja_ki43_pylon.asm
                             〃    _0.asm
                        wep_ja_ki43_drop_gp.asm
                             〃    _0.asm
                       wep_ja_ki43_bomb60.asm
                             〃    _0.asm

                       -- bglc.exe   これも、コピーしておく

    4. FSregen

       libraly 用 asm ファイルの作成に使う。

       FSregen のインストール
        \Program Files にインストールされる   (fsregen.exe 312KB 2002/04/27 3:26)

       FSRegen の起動


       @ 画面下部の Libraly Compiler をクリック
           1〜5の欄は無視する。

       


      画面が変わる

      


       A 上段で wep_ja_ki43_pylon.asm を開く

          Object Name の確認  上記の wep_ja_ki43_pylon が入っているか。

       B GUID の設定

          本来ならば、ランダムな数値を入れるべきだが、最初の8桁の末尾だけ
          変えた。(手抜き) 16進法なので、0〜9,A,B,C,D,E,F が入る。

          その右の欄はいじらななかったが、これは正しい方法ではない。

       C Add to List をクリックすると Library Object Files window に 上記のfile 名が入る

       上段に戻って、先ほどのファイル名を削除して


          wep_ja_ki43_drop_gp.asm を開いて、@〜Cを繰り返す。
          wep_ja_ki43_bomb60.asm       〃

       D その下の欄 Output File に出力するファイル名を入れる

          例 wep_ja_ki43.asm

       E Create Library をクリック 

          瞬時に、出力される

          このファイルはlinkのための必要情報が書かれいるだけで、本体は含まれていません。

      


     5.bgl ファイルを作成

         bglc.exe が必要  (BGLC.exe 688KB 2002/04/03 16:20)
         前出のフォルダー  c:\temp\FS_regeon に
         bglc.exe があるか確認する。

         ここで使用されるファイルは、
       gmax で Export した
         wep_ja_ki43_drop_gp_0.asm
         wei_ja_ki43_pylon_0.asm
         we_ja_ki43_bomb60_0.asm
       FSRegen で作った
         we_ja_ki43.asm

         コマンド プロンプト 画面にする (アクセサリーにある)
         cd c:\temp\fsregen と入力して、目的のディレクトリーに行く。
         c:\temp\fsregen>bglc /bgl wep_ja_ki43.asm  asm拡張子が必要
                   ↑ここから入力する
         warning: "Relocations found in xxx.$$$ Output may be invalid".
         が出るが無視する。

         wep_ja_ki43.bgl がこのディレクトリーに作成される。

     6.CFS2へコピー

         *.bgl -> CFS2 / SCENEDP / Weapon /Scenery へ
         *.bmp ->        〃         /Texture へ   
             DXT1 は不具合あり、原因不明。 8bit_color が良い。



   
B. CFS2 の設定

     1.各ファイルの作成と設定

         1) 汎用Objects_dp 用 *.dp ファイルの作

           最初から作成するのは、無理なので 
           CFS2 / OBJECTS_DP にあるデフォールトの同様ファイルを
           コピーしてリネームする。

           例)wep_ja_ki43_drop_gp.dp
             wep_ja_ki43_bomb60.dp
             wep_ja_ki43_pylon.dp

         2) 個別機体用 *.dp ファイルの作成

           零戦用を参考に作成する


     cfs2_ki43-II.dp

            (cfs2_ki43-II.cdp と間違えない。これはキャッシュファイルです。
            dpファイルを変更したら、有効にするために、このキャッシュファイル
            を必ず削除すること。 CFS2を起動すると、自動的に作成される)


     前略

     [GUNSTATIONS]
     ; 機銃
     gunstation.0=
0,45,1,0.08,839,2,0.01,500,2,40,1d1*14,-0.231,0.579,1.946,0.149810345982293,0,0,0,0,0,0,1.6
     gunstation.1=
0,45,1,0.08,839,2,0.01,500,2,40,1d1*14,0.231,0.579,1.946,0.149810345982293,0,0,0,0,0,0,1.6
     
     ; bomb
     gunstation.2=
3,21,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

             1番目の数値 
0=Machine Gun 1=Canon 2=Rocket 3=Bomb 4=[unknown] 5=Torpedo
             3番目の数値  
1=Primary Triger 2=Secondary Trigger 4=Rocket Trigger 8=Bomb Release   
             9番目の数値  sound 0=.303cal 1=7.7mm
2=50cal 3=13mm 4=20mm 5=30mm 6=40mm
            12,13,14番目の数値 銃口位置 X(左右)、Y(上下)、Z(前後)meter
     [guns.0]
     gun.0=270,0,0,0,0,0,1,270    1番目の数値 弾数  2,3,4番目の数値 オフセットX,Y,Z
     ;gun.1=680,0,0,0,0,0,1,680
     [guns.1]
     gun.0=270,0,0,0,0,0,1,270
     ;gun.1=680,0.231,0,0,0,0,1,680
     [guns.2]
     gun.0=3,0,0,0,0,0,0,0

     [HARDPOINTS]
     mount.0=2.03,0.0,0.0 ;drop right   gmax 上の位置からのずれ X,Y,Z
     mount.1=2.03,0.0,0.0 ;pylon
     mount.2=-2.03,0.0,0.0 ;drop left
     mount.3=-2.03,0.0,0.0 ;pylon
     mount.4=2.03,0.0,0.0 ;bomb right
     mount.5=2.03,0.0,0.0 ;pylon
     mount.6=-2.03,0.0,0.0 ;bomb left
     mount.7=-2.03,0.0,0.0 ;pylon

     [PAYLOADS]
     payload.0=%payload_name.0%
     payload.1=%payload_name.1%
     payload.2=%payload_name.2%
     ;payload.3=%payload_name.3%     末尾の [STRINGS] とセットとなる

     [PAYLOAD.0]
     ; Payload = 機銃
     [PAYLOAD.1]
     ; Payload = 機銃 (航続距離延長)
     mount.1=wep_ja_ki43_pylon, 1, -1
     mount.0=wep_ja_ki43_drop_gp, 1, -1
     mount.3=wep_ja_ki43_pylon, 1, -1
     mount.2=wep_ja_ki43_drop_gp, 1, -1
     [PAYLOAD.2]
     ; Payload = 中爆撃装備
     mount.5=wep_ja_ki43_pylon, 1, -1
     mount.4=wep_ja_ki43_bomb60, 1, 6    シーケンスリンクに注意
     mount.7=wep_ja_ki43_pylon, 1, -1
     mount.6=wep_ja_ki43_bomb60, 1, -1

     後略



         3) *.air の設定  

            零戦の*.air をコピーして使うと Ki43 のドロップタンクが
            一つしか落ちません。

         対策
            エントリー534と535の設定を見直す。
            534 の Left Drop Tank    Fuel tank number=4
            535 の Right Drop Tank    Fuel tank number=5 にしたら、
            やっと右タンクが落下した。 各々に取り付け位置と容量を入力する
            535 が無ければ AirED で他のファイルからその項目をコピペする。 

        4) Effect の修正

            薬莢の排出位置がデフォールトのまま使うと、
            機首銃の場合はとんでもない位置から排出される。
            これは、汎用性を維持するために銃口の付近に設定
            されているためです。
             以下に修正方法を示す。ただし、零戦・隼の場合は良いが
            他の翼内銃が今度は不自然となります。

          [EFFECTS]
                    fx_mzlflsh_m.fx   大口径用
                    fx_mzlflsh.s.fx   小口径用 ki43 はこれを修正する。

           バックアップをとっておくように。

           [Emitter.2]
           Drag=0.00, 0.00
           X Particle Velocity=-2.00, 2.00
           Y Particle Velocity=-1.00, -0.20
           Z Particle Velocity=0.00, 0.00
           X Offset=0.00, 0.00        => X Offset=0.00, 0.00
           Y Offset=-0.20, -0.20      => Y Offset=-1.17, -1.17
           Z Offset=-1.00, -1.00      => Z Offset=-1.51, -1.51

           [Emitter.3]

              同様に修正

    
2. コントローラーの設定

         兵器コマンドでキーボードやジョイスティックに設定
           爆弾はデフォで
              武器の変更 Shift + 3
              選択中の武器の発射 3
           機銃/機関砲 デフォで  Space bar
           落下タンク デフォで定義されていない
              すべての落下タンクを投下    例) Ctl + Shift + D
              落下タンク1を投下        例) Shift + D
              落下タンク2を投下        例) Shift + A

          ジョイスティックにも定義すると便利。

                     [ 戻る ]