艦戦改 広域通信版 ~かんせんかい~ 開発

MODの作り方や、MOD等の使い方の説明用のページです。
説明が下手ですみません。
前作、艦戦 ~かんせん~と変わっていない命令もあります。
一部画像は艦戦 ~かんせん~の物を使用しています。
艦戦 ~かんせん~用のMODの場合一部改良が必要になります。
バッチファイルの場合 「艦戦r.exe 作ったMOD」から「艦戦改r.exe 作ったMOD」に置き換えれば使用出来るようになります。

追加された項目
ブロックにモーションがある場合再生が可能になりました。
ブロックに環境音を付けれるようになりました。
砲の発砲の反動を設定できるように
砲の発砲エフェクトを変更出来るようになりました。
砲弾に重力係数、摩擦係数を設定できるようになりました。
砲弾種に反射レーザーを追加 -2で設定可能
砲弾種に魚雷を追加 -3で設定可能
砲弾種に潜水爆雷を追加 -4で設定可能
砲弾種に発艦ブロックを追加 -5で設定可能
司令部の仕様を一部変更
司令部ブロックは船系と、航空系と潜水艦系の三種類が存在します。
船系の司令部を設置すると、ゲーム内で船と認識されます。
航空系の司令部の場合、ゲーム内で航空機と認識されます。
船の場合、島、地形、他の船との当たり判定があります。
移動に制限はありません。
航空系の場合、空を飛んでいると言う設定なので島、地形、
他の船の当たり判定がありません。
また、スペースキーで上昇 シフトキーで下降が可能です。
上昇/降下速度はエンジンの出力の10%です。
ですが、飛行機という制限で後退が出来ません。
Qキーの「秋津洲流戦闘航海術」(捨て錨回頭)が行えません。
また、エンジン(主機関)が全て大破すると墜落になります。
潜水艦の場合 船系と同じで判定があります。
スペースキーで浮上 シフトキーで潜水が可能です。
浮上/潜行速度はエンジンの出力の10%です。
海に潜水出来るので砲弾等が届きません。
潜水艦と言う仕様上、1ブロックでも破壊されると撃沈判定となります。

ブロックにの拡大倍率を変更可能に
砲弾に寿命が設定されました。レーザー対策です。 1800フレーム 約30秒
[ItemList.txt]、[AddModel.dat]の二つの定義ファイルが追加されました。

[EffctList.txt]とかで自作エフェクトを使えるようにするかもしれません。
任務で上がる海域レベルの最高値が無制限から9998までになりました。
ブロックの開発レベルの最高値も無制限から9999までになりました。
上記二点の変更でエディタモードでしか登場しないブロックを製作可能に。
砲門数を4門から10門に変更。(五連装酸素魚雷いっちゃってーをやるために改良しました)
砲塔の回転フラグを追加 向き固定で発砲が可能になりました。
名称表示 ブロックが破壊された時に名称を表示するかのフラグに-1=被害報告無効を追加

MOD使用

このゲームはMODが使えます。

MODとは…。

導入することによって、そのゲームソフトのグラフィックエンジン、物理エンジンなどの基本システムを用いて、本編とは別のシナリオやグラフィック、
モデル、システムのゲームを楽しむことができるもの。そのゲームをModificationするのである。 Wikipediaから引用。

このゲームでは造艦に使うブロックや、砲の性能の変更が主になります。

MODの基本的な使い方説明(MODが無いと使用できません。)

Modファイル(MODが入ったフォルダ)は基本、「5_艦戦改r.exe」のあるフォルダ階層に置いて下さい。
艦戦改 広域通信版 ~かんせんかい~ 説明01  
図のようにゲームのショートを作ります。
 艦戦改 広域通信版 ~かんせんかい~ 説明02
出来上がったショートカットを右クリックで選択
艦戦改 広域通信版 ~かんせんかい~ 説明03  
5_艦戦改r.exeの後ろに使用したいMOD名を入れます。
*注意 5_艦戦改r.exeの後ろに半角スペースを絶対に入れてください。  艦戦改 広域通信版 ~かんせんかい~ 説明04
分かる方向け、バッチファイルでも同じようにMODを使えます。
*注意 MODが無い場合や、MODに必要なファイルが足りない場合等はMODが使用されません。

エディタモード

 

主に下記の任務製作等で使用するモードです。
 基本的に通常のゲームと画面は同じですが、艦の保存、読込画面がWindows標準のダイアログに変わり、保存するファイル名が自由になります。
エディタモードでは、資金が100000、海域レベル(普通は見えない値)が9999になります。  
開発者もこのモードで敵、味方艦を作りました。  
エディタモードでの起動の仕方は、MOD使用とほぼ同じで、5_艦戦改r.exeの後ろに半角スペースと:を入れます。
下の画像のように  艦戦改 広域通信版 ~かんせんかい~ 説明05
成功すると、画像の画面のようにタイトルバーにEditModeと付きます。  艦戦改 広域通信版 ~かんせんかい~ 説明06
なお、Modを使用して、エディタモードで艦を作りたい場合は
「5_艦戦改r.exe 使用したいMOD名:」とのように、MOD名の後ろに:を付ける事で可能です。  

任務製作(海域ファイル作成)


出撃で表示される任務を自作する事が出来ます。

ゲームフォルダの「Data\Sea\」以下に自作した海域ファイルを入れるとゲーム内で表示されます。
ファイル名は、下記に記載しているヘッダでファイルか判別するので、任意に決めれます。
「Data\Sea\」以下にファイルがあるのでそれを参考にすれば、理解が早まるかもしれません。
この海域ファイルは、CSVテキストで構成されているので、メモ帳等で編集可能です。
表計算ソフト等で見やすくなります。

===海域ファイルのフォーマット===
knSea,Ver,1.0
===海域ファイルのフォーマットここまで===
以下の画像のように、ファイルの先頭にこのヘッダがあれば、海域ファイルとして認識します。
艦戦改 広域通信版 ~かんせんかい~ 海域ファイルのフォーマット 説明  このヘッダ以下に海域スプリクトを記述する事で敵を出現させたり出来ます。

海域スプリクト


   

ADVの会話作成

   

上記の任務開発(海域ファイル作成)に少し出てきましたが、作戦の開始時、作戦の失敗時、作戦の成功時に話を流すことがが可能です。
   @SeaOPAdv,Data\\Sea\\Sea00\\Sea_00a_OPAdv.txt
   「Sea_00a_OPAdv.txt」のファイルがADVファイルです。
 

ADVスプリクト


MOD作成

MODの実態は、[BlockList.txt]、[CannonList.txt]、[ItemList.txt]、[AddModel.dat]をMOD名(命名自由)のフォルダに入れたものです。
基本的なフィーマットは、CSV形式です。
[BlockList.txt]は造艦に使うブロックを定義しているファイルです。
[CannonList.txt]は砲の性能定義ファイルです。
 [ItemList.txt]はアイテムの定義ファイルです。 すみません 解説はファイルを見てください。
 力付きました。
 [AddModel.dat]は港に登場するNPCの定義ファイルです。 最大20体(個)まで定義出来ます。
すみません 解説はファイルを見てください。力付きました。 制御スプリクトなどあり、凄く解説が大変なので省きます。
 [AddModel.dat]で自作の港にする事も可能です。<>

「BlockList.txt」の作成


構成

識別子,名称,タイプ,モデルパス,耐久値(硬さ),重さ,価格,形状 0=ブロック 1=それ以外,爆発力,開発レベル,名称表示,説明文,フラグ用(32byte),モーションタイプ,環境音,環境音が聞える距離

識別子 これは、「Block」しか現状ありません。

名称 これは、ブロックの名称
タイプ ブロックのタイプです。 整数
    ブロックのタイプ

    -2=レーザー反射ブロック
    -1=梯子ブロック
    0=普通ブロック
    1=砲塔ブロック
    2=主機関ブロック
    3=司令部ブロック
    4=弾薬庫ブロック
    5=燃料槽ブロック

モデルパス モデルのパスを記述します。
  読込める形式 mqo,mv1,xFile
  大きさは、メタセコイアで、高さ、奥行き、横幅、10.0が基本です。
耐久値 ブロックの耐久値です。 整数
重さ ブロックの重さです。 実数
価格 ブロックの価格です。 整数
形状 ブロックの形状フラグです。 0=ブロック 1=それ以外
爆発力 ブロックが破壊された時の爆発力です。 実数
開発レベル ブロックが使用できる海域レベルの事です。9999まで 整数
  開発レベル以下の海域レベルだと造艦時、そのブロックを配置出来ません。

名称表示 ブロックが破壊された時に名称を表示するかのフラグ。 -1=被害報告無効 0=無効 1=有効
説明文 ブロックの詳細な説明文。|を入れる事で改行が可能。
フラグ用 32byte分のフラグを記述出来ます。

モーションタイプ xファイル、mv1、pmd+vmd形式でアニメーションが存在する場合
に有効な項目。 一番目のモーションが再生されます。
二番目のモーションはブロックの破壊時に再生されます。
pmd+vmdの場合、モデルファイル名に3桁の番号がついたモーションファイルがあるか検索して、あったら読み込む( 検索する番号は 000 から )
例) test.pmdの場合
test000.vmdをモーションファイルとして読込みます。
0=無効 1=繰り返し 2=主機関の速度に同期(エンジンの回転数) 3=砲の発射に同期(装填に同期)
環境音 ブロックが発する効果音のパス wav形式が基本 mp3,ogg対応

環境音が聞える距離 実数

拡大倍率 実数
ゲーム上の1ブロックの大きさは30.0です。
  ブロックのタイプ解説

      -2=レーザー反射ブロック
      プレイヤーが垂直に上り下り出来ます。
    梯子ブロック
      フラグ用(32byte)に整数0-100でレーザー反射ブロックに
      反射する確立を記述。
    記述例
    Block,梯子,-1,Media\\Model\\Tara2.mqo,1,1.0,10,1,0.0,0,0,梯子

    普通ブロック
    機能の無い、普通のブロックです。
    記述例
    Block,装甲1,0,Media\\Model\\Cube1.mqo,10,150.0,10,0,0.0,0,0,装甲1

    砲塔ブロック
    攻撃に使用するブロックです。
    モデルを作る際は注意が必要です。
    以下モデリングソフト メタセコイアでの説明になります。
    砲塔のモデル自体は幾つかのパーツ/パーツ名、マテリアル/マテリアル名、で構いません。
    プログラムは、砲塔のモデルの何処が門なのか分からないので、パーツ名で判断します。
    下の画像は、1門搭載の砲塔の場合で、「FirePos0」と付いているパーツを門と認識します。
    「FirePos0」は画像のように、非表示にして下さい。
艦戦改 広域通信版 ~かんせんかい~ 砲塔モデルの説明1
    「FirePos0」は普通に動かすのではなく、メタセイコイアの機能である、「ローカル座標」で動かして下さい。
艦戦改 広域通信版 ~かんせんかい~ 砲塔モデルの説明2
    ゲーム上では、この「FirePos0」から砲弾が発射されます。
    また、2門以上の砲塔の場合は「FirePos0」、「FirePos1」と「FirePos」の後ろの数字を加算してください。
    ゲーム上で扱える砲門数は10門までです。
    砲塔ブロックの場合、フラグ用の部分に実数で消費弾薬量を記述する必要があります。
    0.25が標準の値

    記述例
    Block,二十式砲,1,Media\\Model\\Cannon0.mqo,10,100.0,1000,1,55.0,0,0,標準の砲,0.25

    主機関ブロック
      船を動かす原動力。
    主機関ブロックの場合、フラグ用の部分に実数で出力、消費燃料量を記述する必要があ
    ります。
    「出力:消費燃料量」のように「:」で二つの値を分けています。
    記述例
    Block,主機関零号,2,Media\\Model\\En1.mqo,1,10,800,1,55.0,0,1,船を動かす原動力,0.6:0.5

    司令部ブロック
    これが無いと艦が機能しない。
    司令部ブロックの場合、爆発力を9999.9にして下さい。
    記述例
    Block,司令部,3,Media\\Model\\Darin.mqo,10,1.0,10,0,9999.0,0,0,司令部 これが無いと艦
    が機能しない,0

    弾薬庫ブロック
    弾薬供給が可能なブロック。
    弾薬庫ブロックの場合、フラグ用の部分に実数で供給弾薬量を記述する必要がありま
    す。
    記述例
    Block,弾薬庫,4,Media\\Model\\Dan.mqo,10,90.0,950,1,120.0,0,0,弾薬が入っている,1.0

    燃料槽ブロック
    燃料供給が可能なブロック。
    燃料槽ブロックの場合、フラグ用の部分に実数で供給燃料量を記述する必要がありま
    す。

    記述例
    Block,燃料槽,5,Media\\Model\\Ta1.mqo,10,50.0,600,1,90.0,0,0,燃料が入っている,1.0

「CannonList.txt」の作成


構成

識別子,名称,砲弾種 基本 0のみ,再装填時間(フレーム数),砲門数,門の発射時差(フレーム数),砲弾モデル,砲弾の初速,砲弾の爆発力,砲のブレ度 0.0-1.0,砲弾の貫通力,砲の発射音,砲弾の爆発音,発射音の複数回許可,反動の有効フラグ,発射エフェクト番号,重力係数,摩擦係数

識別子 これは、「Cannon」しか現状ありません。

名称 これは、砲の名称で、「BlockList.txt」で付けた同じ名称の砲とリンクされます。

砲弾種
-1は予約。
-2は反射レーザー 重力係数を0.0以下に設定可能。 特定の装甲で反射が可能。
-3は魚雷
-4は潜水爆雷 海中へ攻撃が可能。
-5は発艦ブロック 艦載機を発艦させる事が可能になります。
発艦ブロックの場合 幾つか構成が変わります。
砲弾のモデル=艦定義ファイル指定
砲弾の初速=AIの行動番号
砲弾の爆発力=AIの攻撃距離
艦載機とありますが、実際制限は無く、艦を出現させたり出来ます。
究極には発艦ブロックを搭載した艦を指定するとゲーム上で出現可能な艦数まで
艦を出現させる事が可能です。 チートなブロックです。

再装填時間 砲弾の再装填の時間をフレーム単位で記述します。 整数

砲門数 砲門数を1~10の間でで記述します。 整数
-1~-10で時間差(門の発射時差を利用)で発砲が可能に。

門の発射時差 砲弾の発砲の時間差をフレーム単位で記述します。 整数

砲弾モデル 砲弾モデルパスを記述します。

砲弾の初速 砲弾の初速を実数で記述します。

砲弾の爆発力 砲弾の爆発力を実数で記述します。 1.0にする事で対空砲になります。

砲のブレ度 砲の命中誤差を0.0~1.0の実数で記述します。

砲弾の貫通力 砲弾の貫通力を記述します。整数
  貫通力が当たったブロックの耐久度以上だとそのブロックを破壊して先に進みます。
  貫通時にブロックの耐久度分貫通力が弱まり、貫通力が0になると砲弾が爆発します。
  貫通力が高すぎると、装甲を貫通して損害をほとんど与えれない場合もあります。
  逆に、貫通力が高いと装甲を無視して、弾薬庫、燃料槽等に効果的に損害を与える事も出来ます。
砲の発射音 砲の発射音パスを記述します。 wav、mp3、gooが使用できますが、wav形式が推奨です。

砲弾の爆発音 砲弾の爆発音パスを記述します。 wav、mp3、gooが使用できますが、wav形式が推奨です。

発射音の複数回許可 0=有効 1=無効。
  連砲の場合、発射音が門数の数だけ鳴るのですが、発射音自体が複数回鳴るような音の場合だとおかしいので無効にするなど対処が必要です。

反動の有効フラグ 砲の反動の有無を記述します。 0=有効 1=無効
  反動が有効だと、艦が揺れ、速度等にも影響します。
  発射エフェクト番号 99=エフェクト無し 0=爆炎+爆煙 1=爆炎のみ(以前の艦戦の艦砲のエフェクトです)2=白煙

重力係数 砲弾のに掛かる重力を実数で記述します。 最小0.5
値が小さいほどゆっくり落下します。

摩擦係数 砲弾のに掛かる空気抵抗を実数で記述します。 最小0.1-最大1.0
値が小さいほど早く減速します。
1.0だと、砲弾が等倍速で移動します。

砲塔の回転フラグ 0=有効 1=無効
無効だと砲塔が回転しなくなります。 砲撃も向き固定となります。

    記述例
    Cannon,二十式砲,0,65,1,10,Media\\Model\\砲弾.mqo,85.0,20.0,0.35,5,Media\\SE\\CannonFire1.wav,Media\\SE\\exp1.wav,0,1,0.15,0.992,0