【Steam版BF4】 Punkbusterにキックされましたの解決法【Windows10】

お久しぶりですアザラシです。
今日はSteamにBF4(バトルフィールド4)が来たので、友人とやろうと思い
サーバーに入ったら、PunkBusterにキックされました。
と、謎にキックされてしまった時の解決法を書いておきます。

0. そもそもPunkbusterって?

PunkbusterはEAのゲームで使用しているチート対策用ツールで、
チートをしている悪い輩をお仕置きしてくれるソフトなのですが
Windows10になってからは、チートしてないのにこのソフトのせいでなぜかキックされたりします。

解決方法として3種類の事をやりますが、どれが確実に意味のある処理なのかはわかっていませんが
これからやる3種類の処理によって自分は出なくなりました。
そもそもEAがちゃんと対応・・・まあいいや。

0.1 インストール時の注意点

BF4をインストールする際、2バイト文字(日本語が含まれるようなフォルダ)ですと、
そもそもインストールがうまくいってない場合があります。
インストールする段階で、2バイト文字が入っているフォルダを使用する場合は
別のフォルダを選択するようにしてください。

ちなみに 2バイトが含まれるフォルダの例です



C:/テスト/steam/bf4
C:/test/steam/バトルフィールド4


以上のようなフォルダを使用している場合はSteamでインストールする際に
パンクバスターがエラーを吐くようなので、以下のようなフォルダにしてください。


C:/test/steam/bf4

1.解決方法

参考リンク :
■ ファイアーウォールの設定について
https://answers.ea.com/t5/Battlefield-4/BF4-Punkbuster-kicks-me-from-every-server/m-p/1812161#M41869
■ パンクバスター最新版のDLとCmdによるパンクバスターのスタートアップ設定について
http://battlelog.battlefield.com/bf4/forum/threadview/2955065243958875067/#post_2955065243963583035
■ パンクバスター最新版のDL先
http://www.evenbalance.com/pbsetup.php

Steam版BF4をインストールし、一度起動するとPunkBuster等がインストールされると思います。それが終わった後を前提として話します。

1.1 ファイヤーウォールの設定

ウィンドウズキーを押した後にファイアーウォールとそのまま打ち込むと、
ファイアーウォールの状態の確認というものが出ます。
こちらを起動します。

ファイアーウォールの設定画面が出ましたら、詳細設定をクリックします。

すると、このような詳細画面が出てくると思います。
ここの左側にある受信の規則をクリック。

ちなみにファイアーウォールの詳細設定が開かないよ~という人が仮にいるかもしれない為、書いておきますと
家族共用PCなどを使用していて、管理者権限がないアカウントを使用している場合は変更不可です。
その場合はパッパなどにこの記事を見せてお願いしてください。

真ん中の画面にずらずらとソフト名が出てくると思います。
これはインストールしたソフトでファイアーウォールの受信規則を利用しているもの一覧です。
この中に PnkBstrAPnkBstrB というものがありますので、これを探してください。

見つかりましたら、まずスクショのように一個目の PnkBstrA に対し
右クリック -> プロパティでプロパティを開きます。

プロパティが表示されましたか?プロパティが表示されましたら、
プログラムおよびサービス のタブを選択し、画面のようにコンパートメントが
指定の条件を満たすすべてのコンパートメント となっていることを確認して下さい。

次に、詳細設定のタブを開きます。ここでは プロファイル の部分を見てください。
ドメイン、 プライベート、パブリック のチェックボックスがありますね?
ここにチェックが入っているかどうか確認してください。

デフォルトだとパブリックのみにチェックが入っているかと思いますので、
スクリーンショットのように、ドメインとプライベートチェックを入れるようにしてください。

この作業を今作業したのとは別の PnkBstrA と 2つあるPnkBstrB に行ってください。
これでファイアーウォールの設定は終わりです。

1-2.最新版のパンクバスターのダウンロード

まずこのリンクからパンクバスターの最新版をDLします。
http://www.evenbalance.com/pbsetup.php

リンク先の下部にある、 Windows 3.8 の列にある、Downloadボタンを押し、
ダウンロードしたフォルダを任意のフォルダで解凍します。
ゲーム用フォルダとかがあるならそういうところに入れよう。

解凍すると、中に pbsetup というものがあるのでこれを実行

実行するとこのような画面が出てくると思います。これはライセンスに同意しますか?という文面です。
まあ英語なので僕はあんまり読めませんが、 I Agree を押しました。

すると、パンクバスターよりメッセージボックスが出てきます。
これは一番最初のセットアップ時に、最新バージョンにする処理を行うよ。という文面です。
新しくなることには全然問題ないのでOKを押しましょう。

終わると、こんな画面が出てきます。
この画面でパンクバスターを適用させるゲームを選択することができます。
早速 Add a Game を選択しましょう。

こんなウィンドウが出てきましたね?出てきましたら、Game と書かれたセレクトボックスを押すと
ゲーム一覧が出てきます。リストの中に Battle filed 4 があるのでそちらを選択。

選択すると、自動的に Game Path の部分にBF4のインストール先が選択されています。
ここで注意点ですが、GamePathが間違いなくBF4がインストールされているフォルダなのか
確認しておいてください。Browseボタンを押すことでフォルダを開けます。

問題がないことが確認できましたら、 Add Game を押してください。

Add a Game を押すと、このようにアップデートが入ります。
終わるまで待ちましょう。

終わるとこの画面に戻るかと思いますので、このように追加されていれば
特に問題ありませんので、 Quit を押して終了させてください。

1.3 cmdでパンクバスターを自動で起動するように変更

参考リンク :
http://battlelog.battlefield.com/bf4/forum/threadview/2955065243958875067/

こちらの記事に記載されている、この部分を参考にcmdでコマンドを叩いていきます。
まずは、cmdを起動します。

ウィンドウズキーを押した後に cmd とそのまま打つとコマンドプロンプトが出てきます。
その際に、コマンドプロンプトを管理者として実行します。

コマンドプロンプトを管理者として実行したら、上記のようにコマンドを打ち、実行します。

 net user administrator /active:yes

この文をコピーして、コマンドプロンプト上で右クリックすることでペーストすることもできます。
オススメ。

実行すると、このようにコマンドは正常に終了しました。と出ていれば問題ありません。
では次のコマンドに移ります。

sc create PnkBstrB binpath= C:\Windows\SysWOW64\PnkBstrB.exe start= auto

こちらのコマンドをcmd上で実行。これはスタートアップサービスにパンクバスターを登録し、
起動時に実行するように変更しています。ちなみに今回は指定されたサービスはすでに開始されています。
と出ていますね。この場合はゲームインストール時にちゃんと登録されていたという事です。

うまくされていない場合はこの時に登録しましたのような文章が出ます。

もし、ゲームもうやらないよ。という場合に解除したい場合は
https://www.out48.com/archives/4818/
この記事を参考にサービスの登録解除を行ってください

sc create PnkBstrA binpath= C:\Windows\SysWOW64\PnkBstrA.exe start= auto

次は PnkBstrA のスタートアップサービス登録を行います。
これも先ほどの PnkBstrBと同様です。これにて作業終了です。

2.終わりに

EAさんせっかくSteamで販売再開したんだから、ちゃんとやってくれよ・・・

今回この作業に当たって、対策法を一緒に見つけてくれたS氏、
スクショを提供してくれた J氏 と H氏 に感謝。