マルチプレイ・IVC

はじめに

この章ではFalcon BMSにおけるマルチプレイセッションの開設・接続方法を解説します。

BMSではユーザー間でサーバーを立てたホストに対しクライアントがIPアドレスを入力し接続する形でマルチプレイを開始します。

そのためにはポート開放・ファイアウォールの例外や帯域を正しく設定しなければいけませんし、クライアントもいくつかの決まりを知らなければサーバーを不安定にしてしまいます。

また、BMSは Internal Voice Communications (IVC) と呼ばれるインゲーム・ボイスチャットを実装し、ゲーム内コクピットの無線機器の設定と連動した音声チャットを行うことができます。IVCの使用で、よりリアリスティックな航空作戦の再現が可能になります。

ポート開放とファイアウォール例外設定

BMSのサーバーをホストするにあたって、次の範囲のポートを開放する必要があります。

ポート開放の方法は各自の所持するルーターの設定を調べてみて下さい。

  • BMSのサーバーホスト には UDP 2934-2935 の開放が必要です。

  • IVCのサーバーホスト には UDP 9987-9989 の開放が必要です。

どうしてもうまくいかないときはDMZを設定するとサーバーホストが可能です(セキュリティの問題は自己責任で引き受けてください)。

*プロバイダとの契約でグローバルIPを貰っていない場合はホストが出来ません。契約内容を確認してください。

マルチプレイの開始

サーバーを建てるにあたってSPEEDTEST.NETでアップロード速度を調べましょう。

このときのアップロードとダウンロード速度をkbps単位でメモしておきます。

この値は後ほど帯域設定の際に使用します。

BMSを起動する前に、もしIVCを使用するのであればランチャーからIVC Serverを立ち上げます。

IVC ServerにはCUIからコマンドを打ち込むことが可能です。

IVCサーバーのホストはBMSのホストとは別のPCで行っても構いません。

BMSを起動したら、上部メニューからCOMMSを選択し、開いたCOMMSウィンドウへ下記のように設定します。

初めてサーバーをホストする場合や新しいサーバーに接続する場合はNEWで新しいサーバー設定を作成してから設定を開始してください。

ServerName: 任意の名前を設定。

Connect to IP Address: ホストとしてサーバーを立てる場合は0.0.0.0、クライアントとしてサーバーに接続する場合は任意のIPアドレスを入力

Upload Bandwidth: SPEEDTEST.NETで調べたアップロード速度の9割の値をkbps単位で入力します。例えば50MBのアップロード速度なら45000を入力します。

Download Bandwidth: SPEEDTEST.NETで調べたダウンロード速度の9割の値をkbps単位で入力します。例えば50MBのアップロード速度なら45000を入力します。

IVCサーバーを建てる場合は下記の設定も行います。

IVC Enabled: チェック

Dedicated IVC Server: 自分がIVCサーバーホストを行うときは 127.0.0.1

(別の人がIVCサーバーホストを行う場合、BMSホストであってもIVCホストのIPv4アドレスを入力)

クライアントはIVCホストのIPアドレスを入力

Dedicated IVC Password: 任意のパスワードを入力、パス設定をしない場合は空欄。

初めての設定であればサーバーを開設・接続する前に、SAVEを選択してこれらの設定を保存しておくとよいでしょう。

保存したサーバーのリストはUser/Config/phonebkn.iniにテキストファイル形式で書き込まれます。

設定を終了したらCONNECTを選択してください。

サーバーホストあるいはクライアント接続に成功すると、メニュー画面のCOMMSが点滅します。

COMMSメニューをクリックすると接続中かつ特定のセッションに入っていないクライアント一覧とチャットウィンドウが表示されます。

セッションを開始するためには、ホストが遊びたいゲームモード: Dogfight, Tactical Engagement, あるいはCampaignのセーブデータをロードするか、あるいは新規にゲームを開始してください。

ロードするTE、セーブデータあるいは新規キャンペーンを選択後にCOMMIT ONLINEをクリックすると、RULES OF ENGAGEMENTウィンドウが表示されます。

サーバーホストはセッションを開始する際にここで部屋のルールを規定することができます。

GAME NAME: 各モードのONLINEタブに表示されるセッション名を設定します。

PASSWORD: セッションにパスワードをかけることが出来ます。設定しない場合は空欄にしておきます。

MAX # PLAYERS: 最大同時接続可能な人数を設定します。

その他、各種設定をサーバー側からクライアントへ制限をかけることが可能です。

クライアントとして接続に成功した場合はConnection Establishedのメッセージウィンドウが表示され、メニュー画面のCOMMSが点滅します。

COMMSメニューをクリックすると接続中かつ特定のセッションに入っていないクライアント一覧とチャットウィンドウが表示されます。

セッションに参加するためには、ホストがセッションを開始したゲームモード: Dogfight, Tactical Engagement, あるいはCampaignを選択してください。

ゲームモードを選択したら、ONLINEタブからホストが開始したセッションを探し、クリックしてください。

キャンペーンに接続する場合は、所属する基地と飛行隊をここで選択します。

COMMIT ONLINEを選択すると、RULES OF ENGAGEMENTウィンドウが表示されます。

クライアントはセッションに参加する前にここでホストの規定した部屋のルールに自分の設定を合わせなければいけません。

左側のドロップダウンリストおよびチェックボックスがサーバー規定、右側が現在の自分の設定となっています。

設定をサーバー規定に合わせたらCOMPLYしましょう。

PASSWORDが設定されている場合はそれも入力しておきます。

接続に失敗する場合

接続失敗時に現れるウィンドウメッセージから問題の切り分けを行いましょう。

Failed To Connecct to Server

下記の原因が考えられます。

・ホストが正しくポート開放できていない。

・ホストがファイアウォール例外を正しく設定できていない。

・ホスト - クライアント間で起動しているBMSのバージョンが違う(マイナーアップデート含む)

Wrong Theater Selected

・ホスト - クライアント間で選択しているシアターが違う。


IVC使用前の準備

「コントロールパネル」→「ハードウェアとサウンド」→「サウンド」から再生タブと録音タブにてそれぞれ「既定のデバイス」を設定してください。

デバイスを選択して右クリック→「既定のデバイスとして設定(D)」を選択することで、そのデバイスが既定のデバイスになります。

再生タブでは音を聴くスピーカーとして設定したいデバイスを「既定のデバイス」に、録音タブでは声を入力するマイクとして設定したいデバイスを「既定のデバイス」に設定します。

「既定のデバイス」とは別に「既定の通信デバイス」を設定できますが、ひとまず「既定のデバイス」のみを設定してください。

「既定のデバイス」を再生用と録音用にそれぞれ設定できたら、「既定のデバイス」以外のデバイスをすべて無効にしてください。「既定の通信デバイス」も同様に無効にしてください。

再生タブ、録音タブで既定のデバイス以外のデバイスをすべて無効にしたら、右クリック→「無効なデバイスの表示」のチェックを外して、再生タブと録音タブにそれぞれデバイスがひとつだけしか表示されていないことを確認してください。

再生デバイスで音が聴けることを確認します。YouTubeなどで適当な動画を開いて音声が聞こえることを確認してください。

録音デバイスで音が入力できることを確認します。録音タブの既定のデバイスを右クリック→「プロパティ」→「聴く」→「このデバイスを聴く」にチェックを入れて、「このデバイスを使用して再生する:規定の再生デバイス」を選択します。そして「適用」を押します。喋ってみて、自分の声が聞こえることを確認してください。

FalconBMSのLauncherから「IVC Client」を起動して、CaptureとPlaybackにデバイスが一つだけ表示されていることを確認してください。

FalconBMSのLauncherから「Launch」を押してBMS本体を起動し、SETUP→SOUNDからINTERCOMのボリュームを9以上に設定してください

IVC動作確認・使用方法

IVCクライアントをホストに接続した状態でBMSのチャットウィンドウを表示し、F1あるいはF2キーを押し続けると、プッシュトゥトーク機能によってIVC Clientウィンドウで設定されたUHF周波数あるいはVHF周波数での音声通信が出来ます。

もちろん、実際に無線通信をしているわけではなく、周波数を合わせたクライアント同士がネット回線を通じて音声チャットを行う形になります。

VHFはUIでのみ通用する周波数(1234)にデフォルトで設定されているため、先にF2キーでIVC接続をお互いに確認すると、既に3D空間に入っている人たちに聞こえない形で接続の確認を行うことができます。

UI上での無線通信キーはSETUPで指定したキーバインドに関わらず F1(UHF)とF2(VHF)に固定されています。

実際にゲームを開始して3D空間に入った後は、機体の無線機器が動作し、なおかつ周波数設定がお互いに合っている場合に、HOTASとして割り当てたキーあるいはジョイスティックのボタンを押している間プッシュトゥトーク方式での音声通信が可能となります。

  • TQS: COMMS Switch Up - UHF はデフォルトで Homeキー

  • TQS: COMMS Switch Down - VHF はデフォルトで Endキー

に設定されています。

あらかじめジョイスティックのボタンにコールバックを割り当てておくことをお勧めします。詳しい割り当て方法はジョイスティック設定のページにて解説しています。

3D空間での無線通信のさい、同じ周波数で二人以上の人間が同時に送信を行うと混線が発生します。混線が発生してる場合は、お互いの声が聞こえていません。混線が発生しているとき、場合によっては「プルルルル」という音が発生しますが、無音のままでも混線している場合があります。同時送信を避け、相手からの返答が無い場合には改めて確認するよう、無線通信におけるコミュニケーションの取り方を覚えましょう。また、距離や位置による信号の減衰も再現されており、遠く離れた機体と通信するほど音声は聞き取りづらく、途切れたものになっていきます。

DTC設定

キャンペーンあるいはTEに入ったら、DTCを開いてCOMMタブから「COMM PLAN」を押してください。

事前にミッションコマンダーがF-16搭乗直後に使用するUHFとVHFのプリセット番号を指定しますので、DTCのCOMMタブから指定されたUHF/VHFのプリセット番号をDEFAULTに設定してください。 Preset #を矢印キーで変更して「Default」チェックボックスを有効化すると、その番号がデフォルトプリセットになります。

F-16に搭乗後、UHF/VHFプリセットの選択が違うようであれば修正してください。UHFはICPのCOMM1から、VHFはICPのCOMM2から設定できます。

フライトリーダーがラジオチェックを始めたら応答してください。「Uniform Check」ならUHFで、「Victor Check」ならVHFで自分の番号を返事します。

例:

Viper1-1「Viper1-1 Uniform Check」

Viper1-2「2」

Viper1-3「3」

Viper1-4「4」

Viper1-1「Loud and Clear」

飛行中、「PUSH <無線> <プリセット番号>」とリーダーに命令されたら、その通りに切り替えます。例えば「Push Uniform 6」であればUHF6番に、「Push Victor 15」ならVHF15番に設定します。

サーバー安定化のための注意

3D空間にはホストが最初に入ってください。

クライアントが先に3Dへ入ると同期が崩れる可能性があります。

3D空間からの退出もホストが最後に行ってください。

また、クライアントは一度3D空間へ入ったら、二度目以降はBMS再起動後に3D空間へ入るようにしてください。

シアターの変更時も新しく3D空間へ入る前にBMSを再起動してください。

24/7サーバー解説のノウハウ

正しく設定と運用が出来ていれば、常設サーバー上でダイナミックキャンペーンを一ヶ月続けることも可能です。

ここでは24/7サーバー稼働のためのいくつかのノウハウを紹介します。

  1. 各シアターの atc.ini (Korea KTO の場合は Falcon BMS 4.33 U1\Data\Campaign\Save に存在) を編集して、PlayerBumpTime のデフォルトの値 50 を 999999 など巨大な値に設定してください。ホストの機体が自動でキックされなくなります。

  2. サーバーホストは3D空間に残らなければいけません。適当な基地にパッケージをひとつ作成しRAMPで3D空間に入り、機体を放置するとよいでしょう(TAKEOFFで入ってしまうとAI機の離着陸を妨げてしまいます)。「`」キーを押してサテライトビューにすると負荷が下がります。

  3. なるべく多くの Bandwidth 設定とそれを可能にするアップロード速度が必要です。

  4. IVCサーバーを立ち上げたらウィンドウを最小化しないでください。

  5. 任意でUser\Config\falcon bms.cfg から g_nNoPlayerPlay を720以上に設定します。これはプレイヤー機による作戦の成否によるキャンペーン進行への影響を無効化します。

  6. MissionCommanderでCAMファイルあるいはデーブデータを開いてCurrent TimeとStart Timeを変更するとキャンペーンのスタート時間が変更できます。その他、MissionCommanderで各種飛行隊の展開状況など操作することでキャンペーン難易度を調整できます。(CAMファイルのバックアップを取っておいてください)

  7. F4wxで気象データをダウンロードし各種キャンペーンの Campaign/Save/WeatherMapsUpdates フォルダにfmapを保存、キャンペーン開始時にMAPS AUTO UPDATEにチェックを入れることで、現実の天候を再現できます。一番最初の時間のFMAPを親ディレクトリに展開し、初期マップとしてLOADしておくことで、キャンペーン最初の三時間にも反映されます。