― 特集 ―
夏休みはBF2サーバーを立てよう
初級編:シンプルなマルチプレイサーバーで戦場へ

Text by 米田 聡 

 「バトルフィールド2」には,標準でマルチプレイサーバー機能が用意されている。とはいえ実際には,ほかの人が立てたサーバーにアクセスするのみで,自分で立てる,なんてことは考えたこともない人が大半ではないだろうか。
 だが,自分でサーバーを立てれば,基本的な設定は思いのまま。仲間内だけでわいわいとプレイすることもできるし,集団戦の練習をじっくり,こっそりと行うことだってできる。そして,サーバー機能の一つとして提供されている「バトルレコーダー」を利用すれば,戦場の模様をスクリプト記録して,自由に編集し,戦いの名場面を後から堪能することだってできるのだ。
 今回は初級編と上級編の2回に分けて,バトルフィールド2のマルチプレイサーバーを構築する方法を解説していきたい。夏休みだし,時間はあるという読者も多いと思う。じっくりと取り組んでみてはどうだろうか。

 エンドユーザーが構築できる「バトルフィールド2」(以下BF2)のマルチプレイサーバーは,大きく分けて2種類ある。一つは,比較的簡単に構築できて,仲間同士でシンプルに戦えるもの。もう一つは,設定こそ面倒だが,大規模戦闘に対応し,しかも戦場のリプレイデータを取れるなど,機能が充実しているものだ。初級編となる今回は,まず前者,つまり仲間内用のシンプルなマルチプレイサーバーの構築を目標としたい。

BF2マルチプレイサーバーを立てる条件・初級編

 シンプルなマルチプレイサーバーを構築するに当たってどんなPCがあればいいかだが,基本的には,読者がBF2をインストールしている1台があれば十分だ。以後,このPCを便宜上「ローカルサーバーPC」と呼ぶが,快適な戦場で友人をもてなすには,ローカルサーバーPCが以下に挙げる条件を満たしている必要がある。


(1)PCが十分に高速であること

 BF2のローカルサーバーPCでは通常,マルチプレイサーバーを起動しているユーザー自身もゲームに参加する(もちろんプレイしなくてもかまわないが,それでは面白くないだろう)。ゲームプレイに関わる3Dグラフィックスの描画処理とマルチプレイサーバー機能が1台のローカルサーバーPCに同居するのだ。このため,PCが十分に高速でないと,自分自身はもちろん,ほかのプレイヤーも動作が重く快適にプレイできない。とはいえ,「考え得る最高性能が必要」というわけではないので,それほど身構える必要もなかったりする。CPUはPentium 4/3GHz以上,あるいはAthlon 64 3200+/2GHz以上もあればいいだろう。メモリは最低512MB必要だが,これはBF2を積極的にプレイしているユーザーなら障害にはならないと思う。


(2)回線速度はプレイする人数に応じて

 必要な回線速度はプレイする人数に応じて決まる。とはいえ,16人以内であれば,ADSL回線で十分まかなえるようだ。友人をちょっと集めて……といったレベルなら,多くの読者は問題ないだろう。ちなみに,32人以上集めるつもりなら,光回線が必須。

最も面倒なポートの設定を押さえる

 インターネットを介して,自宅のローカルサーバーPCに接続してもらうためには,「BF2が利用するネットワークポートを公開する」という作業が必要だ。今回はBF2サーバーを構築するのが目的で,"ネットワークのお勉強"が目的ではないから,詳細は説明しないが,BF2が利用するネットワークポート(以下ポート)を公開するには,多くの場合「ファイアウォール」「ルーター」(読者の多くは「ブロードバンドルーター」と呼ばれる家庭用製品を使っていると思う)の設定が必要になるのだ。
 ここで一つ問題がある。ファイアウォールやルーターと一口に言っても,この世には無数の製品がある。そのすべてを網羅するのは到底不可能だ。そこで今回は,Windows XP SP2標準機能のソフトウェアファイアウォール「Windowsファイアウォール」,そして比較的ユーザー数が多いと思われるバッファロー製ルーター「WBR-G54」を例に説明していきたい。これ以外の製品を利用している場合は,以下の解説から,自分の利用している製品の該当部分を推測して読み進めてほしい。最近ISP(インターネットサービスプロバイダ)は,ゲーマー向けサービスを充実させているところがあるから,ISPから提供されているファイアウォールやルーターを使っている人は,ISPに聞いてみるのもアリだろう。

Windowsファイアウォールを設定する

 さて,BF2のローカルサーバーPCを外部に公開する場合には,以下のポートを公開する必要がある。


  • UDPポート:55123〜55125(VoIP,つまりボイスチャット用)
  • UDPポート:16567(BF2本体で使用)

 ではどうするか。まず,Windowsファイアウォールを利用していると仮定して,それを丸ごと無効にするのが最も手っ取り早い解決法だが,危険も伴う。そこで,ファイアウォールを有効にしたままBF2のマルチプレイサーバー利用することにしよう。手順は以下のとおりだ。

手順(1) コントロールパネルの「Windowsファイアウォール」を開いて,ファイアウォールの設定を確認する。「例外を許可しない」にチェックが入っている場合,チェックを外そう。続いて「例外」タブを開く


手順(2) BF2をインストールしていれば,「プログラムおよびサービス」に「Battlefield 2」が追加されているが,さらにポートを開く必要がある。「ポートの追加」ボタンを押そう


手順(3) 「ポートの追加」ウインドウが開いたら,「名前」には「BF2」,「ポート番号」には「55123」と入力し,「UDP」のラジオボタンを選択して「OK」を押す。これで,手順2のウインドウに,BF2という項目が追加されているはずだ。続けて,同じ手順で55124,55125,16567のUDPポートも設定しよう


手順(4) 以上の設定が終わると,Windowsファイアウォールの例外タブには4個のBF2設定が追加されているはずだ。「OK」を押せば,Windowsファイアウォールの設定は完了


 なお,シマンテックの「Norton Internet Security」シリーズやトレンドマイクロの「ウイルスバスター」シリーズなどを利用している読者は,その設定も必要だ。すでに述べたように,設定方法はソフトによって大きく異なるので,ソフトのマニュアルを参照してほしい。

ルーターを設定し,BF2マルチプレイサーバーを起動

 ルーターを介してインターネットに接続している場合は,ルーターの「アドレス変換機能」(「ポートフォワード機能」などと呼ばれることもある)を使って,ローカルサーバーPCの必要なポートを公開する必要がある。ここでも詳細は説明しないが,「外からやってくる友人のアクセスを,正しくLAN内のローカルサーバーPCに誘導する」というイメージを持ってもらえばいいだろう。
 ではさっそく,WVR-G54を使って,アドレス変換設定を行っていきたい。


手順(5) ルーター設定の前に,まずはPCのプライベートIPアドレスを固定する。コントロールパネルのネットワーク接続から,「ローカルエリア接続」のプロパティを開く。「この接続は次の項目を使用します」の「インターネットプロトコル(TCP/IP)」を選択し,「プロパティ」ボタンを押す


手順(6) 「インターネットプロトコル(TCP/IP)のプロパティ」ウインドウが開いたら,「次のIPアドレスを使う」のラジオボタンを選ぶ。今回利用しているバッファロー製ルーターの場合,ルーターのプライベートIPアドレスは初期設定が「192.168.11.1」なので,「IPアドレス」には,「192.168.11.X」(Xには2〜254の任意の整数が入る)と入力すればいい。今回は「192.168.11.10」とした。ルーターのプライベートアドレスが「192.168.0.1」のときは,「192.168.0.X」(Xは2〜254の任意の整数)とすればいい。次に「サブネットマスク」は「255.255.255.0」,「デフォルトゲートウェイ」は,ルーターのプライベートIPアドレス(バッファロー製ルータなら192.168.11.1だ)を入力する。さらに,「次のDNSサーバーのアドレスを使う」を選択して,プロバイダから指定されているDNSサーバーのグローバルIPアドレスを入力しておこう(ここでは事情によりボカしている)。入力したら「OK」を押す


手順(7) ここで,ルーターのグローバルIPアドレスを確認する。ここではざっくりとした説明しかしないが,ルーターはインターネット側に対してグローバルIPアドレス,LAN側(PC側)に対してプライベートIPアドレスという,2種類のIPアドレスを持っているので,注意しておきたい。グローバルIPアドレスの確認方法はいくつかあるが,最も簡単な方法の一つとして,「確認くん」(「こちら」)というサービスがある。確認くんにアクセスして,「現在接続している場所(現IP)」の数字をチェックし,紙などに控えておこう(ここでは事情によりボカしている)。ここで調べたグローバルIPアドレスは,手順(17)で必要になる。


手順(8) ようやくルーターの設定だ。WBR-G54にInternet ExplorerなどのWebブラウザでログインする。画面で示しているように,バッファロー製ルーターでは「192.168.11.1」が標準だが,他社製の多くは「192.168.0.1」と入力すればログインできるだろう。ログインしたら,「ネットワーク設定」→「アドレス変換」と進み,「アドレス変換ルールを入力」ボタンを押す


手順(9) バッファロー製ルーターでは,アプリケーションごとにアドレス変換をグループとして管理できる。「グループ」の「新規追加」には「BF2」と入力しよう(このグループ分け機能は,他社製品だと提供されていないことがある)。「WAN側IPアドレス」は「エアステーションのWAN側IPアドレス」(自動設定)のまま。「プロトコル(WAN側)」は「TCP/UDP」のラジオボタンを選択し,「ポート」は「任意のUDP」ポートを選択する。「任意のポート」には,「55123-55125」と入力。55123-55125は,55123〜55125のポートを設定するという意味だ。このように連番指定ができないルーターもあるので,その場合は55123,55124,55125を順番に登録しよう。「LAN側IPアドレス」は「手動設定」にし,手順(1)〜(2)で設定した,ローカルサーバーPCのプライベートIPアドレスを入力する。ここまでの手順を忠実に実行したなら,プライベートIPアドレスは192.168.11.10(もしくは192.168.0.1)である。ここまで来たら「ルールを追加」ボタンを押せばOKだ。最後に,Windowsファイアウォールで設定したUDPの16567番ポートも,55123〜55125番と同様に設定しておこう。


手順(10) ここまでの設定がうまくいっていれば,「アドレス変換テーブル」が,この画面のようになるはずだ。確認したら,「登録・保存」ボタンを押そう。ルーターが再起動するので,それを見届けたら「ログアウト」すれば,これでマルチプレイサーバーの起動準備は完了である


手順(11) Windowsに戻って,普通にBF2を起動。「MULTIPLAYER」を選択。サーバーリストの更新が始まるが,無視して「CREATE LOCAL」をクリックする


手順(12) すると,このような画面になる。順番に見ていこう。「サーバー名」は,アルファベットで好きな名前を付ければOK。「パスワード」は,外部からアクセスしてくるプレイヤーにパスワードを入力させたければ設定しておこう。ただし,初級編で構築するマルチプレイサーバーに,第三者が入ってくる可能性はほとんどない。いたずらに手間がかかるだけなので,基本的には設定しないほうが便利だろう。「制限時間」「プレイヤー数」「出撃まで」「チケット比率」「ラウンド数/マップ」「フレンドリーファイア」「オートバランス」は,それこそ自分の好みどおりに設定すればいい。通常では15秒になっている,(死んでから)再出撃までの時間を短くしたければ「出撃まで」の時間を5s(5秒)などにすればいいし,フレンドリーファイア(同士打ち)を禁止したいならチェックを外す,といった具合だ。「選択可能マップ」は,文字どおりプレイしたいマップの選択。これもお好みで選び,「マップ追加」ボタンを押せば,「選択済みマップ」に登録されるので,問題がなければ「サーバー開始」をクリックする


手順(13) マップがロードされるので,しばらく待つ


手順(14) マップのロードが完了すると,このような画面になる。右下の「オートスタート」にチェックを入れておくと,2名以上のプレイヤーがマップに登場して,プレイ可能になったとき,ゲームが自動的にスタートするようになる。ひとまずは「ゲームに参加」ボタンをクリック


手順(15) 現時点では自分ひとりしかいないので,ゲームは始まらない。友人を呼ぶことにしよう

※ここからは,友人のPC(外部から接続するプレイヤー)の設定になる。友人には,ここより下の手順を見てもらえばいい。


手順(16) (友人のPCから)BF2を起動し,MULTIPLAYERを選択。サーバーリストの更新が終わると,画面の中央左に「IPへ接続」というボタンが表示されるので,これをクリックする

手順(17) すると,「IPへ接続」ダイアログが出るので,ローカルサーバーPCがつながっているルーターのグローバルIPアドレス――手順(7)で調べておいたグローバルIPアドレスだ――を入力して,「決定」を押す。当然だが,もしパスワードが設定されているなら,パスワードの入力も必要だ

手順(18) 無事に接続できれば,このように"いつもの"ロード画面へ移行する。ゲームのバージョンが一致しなかったり,ここまでの設定のどこかがおかしかったりすると,友人のPCのBF2に,バージョンやグローバルIPアドレスが違うといったエラーメッセージが出るので,この場合は,マルチプレイサーバーを運営している人に設定を見直してもらおう

手順(19) アクセスさえできれば,あとは通常のマルチプレイサーバーと同じだ。自動的にゲームが始まる設定になっていれば,プレイヤーが2名そろった段階で自動的に戦闘開始となる。

 以上が初級編だ。主として友人同士で遊ぶ,あるいは友人同士でスキルアップを目指すのなら十分に楽しめるはずである。次回は専用サーバーを使い,本格的な一般公開ゲームサーバーを設定する方法を紹介したい。