- Recent Post
-
- 獣の数字+0.6 (01/16)
- 雰囲気Gameそして考察 (01/12)
- Razer Taipanの使用感等 (01/08)
- なそう? なさそう? (01/06)
- Windows live mailで受信拒否設定したAddressからのMailが受信トレイに入る問題の解決方法 (01/05)
- 和風 Hack & Slash "Akaneiro: Demon Hunters" がF2PからDownload販売に変更 (01/05)
- ISRT導入(SATA Mode変更)時にBlue Screenが表示される問題の解決方法 (12/31)
- 映画 "キサラギ" 感想 (12/30)
- サイレン(映画版)感想 (12/29)
- Mouseの速度は幾つがBestか (12/21)
Diablo IIIのLatency(ping,通信遅延)を改善する方法
Game 2012.06.07 Thu
今回はレジストリをいじる事になります。
レジストリに誤った変更を加えると、最悪の場合PCが起動すらしなくなる場合がありますので、
最低でもOSの再インストールが出来る程度のスキルが無い方は、手を出すべきではありません。
--------------------------------Borderline-------------------------------------
では、上記した警告を読んで頂いたという前提で、続きを書きます。
Latencyの値が大きいと、その数値分そのまま遅れた世界をプレイヤーは見る事になります。
(Latencyの値は画面下のリソースゲージの隣に有るバーに、カーソルを合わせると確認出来ます。)
仮にLatencyが1000msecであったとすると、画面に映っているのは他の遅延要素
(ディスプレイの表示遅延やPCのスペック等)を無視したとしても1秒前の世界ですので、
敵の攻撃が発射から着弾まで1秒しか掛からない飛び道具であれば、
プレイヤーに発射が見えたと同時に、サーバー側では既に着弾しているという事態が起きます。
つまり、見てから避けるのは絶対に不可能になります。
これがDiablo IIIで"避けた筈なのに当たっている"という現象が頻発する原因です。
えぇ、とても酷いですよね、そんな状態ではゲームになりませんので、何とかしないといけません。
尚、Diablo IIIとタイトルに書きましたが、Diablo IIIに限らず通信遅延が改善されますので、
相応のスキルの有る方は、是非行う事を御勧めします。
レジストリに誤った変更を加えると、最悪の場合PCが起動すらしなくなる場合がありますので、
最低でもOSの再インストールが出来る程度のスキルが無い方は、手を出すべきではありません。
--------------------------------Borderline-------------------------------------
では、上記した警告を読んで頂いたという前提で、続きを書きます。
Latencyの値が大きいと、その数値分そのまま遅れた世界をプレイヤーは見る事になります。
(Latencyの値は画面下のリソースゲージの隣に有るバーに、カーソルを合わせると確認出来ます。)
仮にLatencyが1000msecであったとすると、画面に映っているのは他の遅延要素
(ディスプレイの表示遅延やPCのスペック等)を無視したとしても1秒前の世界ですので、
敵の攻撃が発射から着弾まで1秒しか掛からない飛び道具であれば、
プレイヤーに発射が見えたと同時に、サーバー側では既に着弾しているという事態が起きます。
つまり、見てから避けるのは絶対に不可能になります。
これがDiablo IIIで"避けた筈なのに当たっている"という現象が頻発する原因です。
えぇ、とても酷いですよね、そんな状態ではゲームになりませんので、何とかしないといけません。
尚、Diablo IIIとタイトルに書きましたが、Diablo IIIに限らず通信遅延が改善されますので、
相応のスキルの有る方は、是非行う事を御勧めします。
1.ファイル名を指定して実行にregeditと入力してレジストリエディタを開き、
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters\Interfacesを探す。
2.その中に有るネットワークアダプタのディレクトリ(フォルダ)を探す。
(IPAddressの値が入っている物を探して下さい。それがネットワークアダプタのディレクトリです。)

3.ネットワークアダプタのディレクトリ内の空白部分を右クリックして、
DWORD(32bit)でTcpAckFrequencyを新規作成する。(これはOSが64bit版でも同様です)
4.TcpAckFrequencyを右クリックして"修正"を選択し、値のデータを0から1に変更する。

5.HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSMQ\Parametersを探す。
MSMQが無い場合はHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\の配下に新規キーとして作成する。
Parametersが無い場合はMSMQ配下に作成する。(MSMQが無かった場合はMSMQ作成後にParameters作成。)
Parameters内にDWORD値でTCPNoDelayを作成し、値を1に変更する。

6.レジストリエディタを閉じてPCを再起動。
以上で終了です。
ちなみに、この変更を行った後のUSサーバーでのLatencyは150ms前後で安定するようになりました。

追記:その他の遅延を減らす為に出来る事
1.WindowsのAeroをOFFにする。
AeroがONになっていると遅延が3フレーム(60Hzのディスプレイで48ms 120Hzで24ms)増加します。
2.ディスプレイをXL2420Tに変更する。
インスタントモードをONにした状態でのXL2420Tの表示遅延は5ms以下ですが、
一般的なPC用の液晶ディスプレイは数十ms,液晶テレビの場合は100ms近くの表示遅延が有ります。
また、60Hz駆動のディスプレイは垂直同期を有効にしただけで3フレーム=48msの遅延が発生します。
ネイティブ120Hz駆動のディスプレイであれば、同じ3フレームでも遅延は24msに減少します。
(ただしDiablo IIIのオプションでVertical SyncをONにすると60fpsに制限が掛けられます。)
3.LANを無線から有線に変える。
無線と有線での通信遅延の差は、ごく小さいものですが、無線では通信時にエラーが発生する事が多く、
その結果としてラグが発生する場合が有ります。
4.PCのスペックを上げる。
Diablo IIIに限らずPCゲーム全般に言える事ですが
必須環境は"何とか起動だけは出来る程度"
推奨環境は"負荷の低い設定であれば快適にプレイ出来る程度"
というのが目安です。推奨要件を満たしていても最高設定で快適にプレイ出来る訳ではありません。
fpsが頻繁に60未満になる場合は、PCのスペック不足でラグが発生している可能性が有ります。
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters\Interfacesを探す。
2.その中に有るネットワークアダプタのディレクトリ(フォルダ)を探す。
(IPAddressの値が入っている物を探して下さい。それがネットワークアダプタのディレクトリです。)
3.ネットワークアダプタのディレクトリ内の空白部分を右クリックして、
DWORD(32bit)でTcpAckFrequencyを新規作成する。(これはOSが64bit版でも同様です)
4.TcpAckFrequencyを右クリックして"修正"を選択し、値のデータを0から1に変更する。
5.HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSMQ\Parametersを探す。
MSMQが無い場合はHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\の配下に新規キーとして作成する。
Parametersが無い場合はMSMQ配下に作成する。(MSMQが無かった場合はMSMQ作成後にParameters作成。)
Parameters内にDWORD値でTCPNoDelayを作成し、値を1に変更する。
6.レジストリエディタを閉じてPCを再起動。
以上で終了です。
ちなみに、この変更を行った後のUSサーバーでのLatencyは150ms前後で安定するようになりました。
追記:その他の遅延を減らす為に出来る事
1.WindowsのAeroをOFFにする。
AeroがONになっていると遅延が3フレーム(60Hzのディスプレイで48ms 120Hzで24ms)増加します。
2.ディスプレイをXL2420Tに変更する。
インスタントモードをONにした状態でのXL2420Tの表示遅延は5ms以下ですが、
一般的なPC用の液晶ディスプレイは数十ms,液晶テレビの場合は100ms近くの表示遅延が有ります。
また、60Hz駆動のディスプレイは垂直同期を有効にしただけで3フレーム=48msの遅延が発生します。
ネイティブ120Hz駆動のディスプレイであれば、同じ3フレームでも遅延は24msに減少します。
(ただしDiablo IIIのオプションでVertical SyncをONにすると60fpsに制限が掛けられます。)
3.LANを無線から有線に変える。
無線と有線での通信遅延の差は、ごく小さいものですが、無線では通信時にエラーが発生する事が多く、
その結果としてラグが発生する場合が有ります。
4.PCのスペックを上げる。
Diablo IIIに限らずPCゲーム全般に言える事ですが
必須環境は"何とか起動だけは出来る程度"
推奨環境は"負荷の低い設定であれば快適にプレイ出来る程度"
というのが目安です。推奨要件を満たしていても最高設定で快適にプレイ出来る訳ではありません。
fpsが頻繁に60未満になる場合は、PCのスペック不足でラグが発生している可能性が有ります。
- 同じカテゴリーの記事
-
- Skyrimで早めに実行しておいた方が良い二つのコンソールコマンド
- ポップシンガーとバイオリニストによるSkyrimメインテーマ
- Orcs Must Die 2のDLC "Fire and Water Booster Pack" が発売
- 任天堂が新型Wii公開へ、試される「ゲーム専用機」の復権
- Nvidia InspectorでSkyrimのAmbient Occlusionをいじってみた
- Diablo IIIやSkyrim等のDolby Digital対応ゲームを5.1chサラウンドで出力する方法
- PSO2のショップ検索機能が酷い出来
- Online Gameに"良い人"が多いという誤解
- そう言えばSkyrimをclearしていない
- Sherlock Holmes vs Jack the Ripperの攻略が行き詰った
- Valveがビデオゲームの為に常駐経済学者を雇用
- Diablo IIIのRMAHで売ってみた
- PSO2とは一体、何なのか。
- 世界最速でParagon level 100に到達したプレイヤー
- MozillaがHTML5+JSで書かれたMMO RPG"BrowserQuest "を公開