カントリーフィルター

Last-modified: 2011-05-14 (土) 21:11:27

カントリーフィルター

L4D国内サーバーは、国外のプレイヤーも頻繁にアクセスします。
しかし、国内と国外のプレイヤーの間には、モラルやプレイスタイルの違いがあり、しばしばトラブルが発生します。
このようなトラブルは、互いの国のプレイヤーにとって不利益なものです。
現在、アクセス制限を検討すべきは、韓国・中国です。これらの国のプレイヤーは、そのプレイスタイルが迷惑行為となり、問題が多いと報告を受けています。一般的な声としても管理している側にもこれらの国をはじいてほしいと希望する声が多数あります。


特に対戦などをする場合、しっかりした連携を取って戦いたいというプレイヤーが多いため、日本語で連携が取れる、回線状態が良い、マナーのよいプレイヤーを求めている人が多い傾向が見られます。なので海外のプレイヤーはいらないという声が多いですので、カントリーフィルターの導入を検討してみてください。



※カントリーフィルターは、最終的にサーバー管理者の判断で設置の可否を決めるものです。
 Left4Dead wikiが推奨しているわけではありません。

本項目では、"カントリーフィルター"という、サーバーにアクセス制限機能を追加する方法について説明します。
※カントリーフィルターは、最終的にサーバー管理者の判断で設置の可否を決めるものです。

Metamod及びSourcemodがバージョンアップによりLeft4Deadに対応し、カントリーフィルタの導入が可能になりました。
以下に、例としてLinux srcdsサーバーにおけるカントリーフィルタの導入手順を示します。

Linux srcdsサーバへのカントリーフィルタ導入手順

日本国内からの接続が不可能になるケースを確認しています。ご利用は計画的に。
※ 以下の説明では、srcds_lが/usr/local/games/以下に置かれているとします。

  • L4Dサーバファイルディレクトリに移動します。
    $ cd /usr/local/games/srcds_l/l4d/left4dead
  • metamodとsourcemodをダウンロードし、カレントディレクトリ内に解凍します。
    Metamod:Source http://www.metamodsource.net/?go=downloads
    Sourcemod http://www.sourcemod.net/snapshots-1.2.php
  • sourcemodに同梱されているプラグインを利用不可にします。
    $mv addons/sourcemod/plugins/*.smx addons/sourcemod/plugins/disabled/

    sourcemodに同梱されているプラグインがゲームの誤動作を引き起こすため、
    すべてのプラグインを addons/sourcemod/plugins/disabled 内に移動します。

  • カントリーフィルタをダウンロードします。
    Country Filter http://forums.alliedmods.net/showthread.php?t=67171

ダウンロードしたファイルは addons/sourcemod/plugins 内に置いてください。

  • vdfファイルを作成します。
    以下のURLにアクセスします。
    http://www.sourcemm.net/?go=vdf

以下の情報を入力します。

Operating System: Linux
Game: Left4Dead
Game Folder:/usr/local/games/srcds_l/l4d/left4dead

「Generate metamod.vdf」ボタンをクリックすると、metamod.vdfをダウンロードすることができます。
ダウンロードしたファイルは addons 内に置いてください。
この時点で、addons 内には metamod、sourcemodというディレクトリと、metamod.vdfというファイルが存在するはずです。

  • カントリーフィルタ用の設定を server.cfg に書き加えます。
    vi(vim)等のテキストエディタで server.cfg を開きます。
    $ vim cfg/server.cfg

    以下の行を書き加えます。

    // 以下の行を書き足す
    cf_mode 1 // 指定した国からの接続のみを許可。2なら指定した国のみを弾く。
    cf_countries "JP" // 日本
    cf_reject_msg "" // 接続拒否時のメッセージを表示しない
    cf_connect_msg "" // 接続時のメッセージを表示しない

    下2行を書き足さないと、特殊感染者が沸くたびに「Hunter(国籍:アメリカ)が接続しました」といった感じのメッセージが表示されてしまいます。(シュールで面白いんですけどね。。。)

  • IPアドレスのデータベースを最新版に更新します
    GeoLiteCountry
    http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz
    解凍したファイルはaddons/sourcemod/configs/geoipにコピーしてください。
    このファイルはIPアドレスと国籍情報の対応表です。定期的にアップデートすることをお勧めします。
  • サーバをリスタートします
    コンソールに meta list と打ち込んで、
[01] SourceMod (1.2.0-dev) by AlliedModders LLC

といった表示が出れば、おそらくカントリーフィルタは正常に動作しています。
以上です。お疲れ様でした。
加筆修正を猛烈にお願いします。

各国別のアクセスフィルター

国ごとにアクセスをはじけるフィルターは下のページに移動しました。
国別のアクセスフィルター