低・高PINGとのアドバンテージ
目次
以前から問題があった「低・高PING値」のアドバンテージの遅延を短くすることが目標でした。
今回は開発者チームが監視、検証を行い、今後のゲームプレイを改善する。
今回の取り組み状況について説明します。
低・高PINGの当たり判定について
当たり判定は接続が安定しているユーザー(低PING)が有利なのは当然です。
開発者チームは今後、高PING値のユーザーのゲームプレイ状況をより良くし今後もシステムを改善していく方針であります。
- PINGとは応答速度
IPネットワークの目的のPCやサーバーから返事が返ってくる時間などを測定するプログラムです。
たとえば電話なら、目的の相手につながっているかどうか「もしもし」って声かけますよね。
相手から返事がなければ携帯の電波が悪いんじゃないの?とか返事が遅ければ国際通話でラグがあるから相手の返答をちゃんと待つ必要があるな~って判断しますよね。
大雑把に言うと、通信状況をそういう風に判断するために使うプログラムです。オンラインゲームなどではPingが遅いと自分の入力がゲームサーバーに到達し、ゲームサーバーが入力に対する結果を演算し、自分のPCのゲームクライアントに返答が帰ってくるまでに時間を要します。
たとえば300ms(ミリセカンド)にもなっていると、1つ1つの操作に対して0.3秒後にしか結果が返ってこないため、ほかの回線品質のよいプレーヤーよりも不利な状況になったりもします。
PING値は同じですが反応速度の遅延について参考程度にご覧ください。
この例ではPeekerは安定の通信・PING・高PING・遅い速度の差(アドバンテージ)や反応速度の違いでどのくらいの遅延があるのかの検証です。
動画1秒~7秒
- Vitim:PING100/反応速度:100ms
- Peeker:Ping100/反応速度:300ms
動画8秒~17秒
- Vitim:PING100/反応速度:150ms
- Peeker:Ping200/反応速度:300ms
動画18秒~
- Vitim:PING100/反応速度:150ms
- Peeker:Ping400/反応速度:300ms
Peekerは先に相手を視認しヘッドショットを決めているがVictorが撃ちかってしまう。
理由は、後ほど説明します。
次の例では低PING・高PINGの差(アドバンテージ)でどのくらいの遅延があるのかの検証です。
動画1秒~7秒
- Vitim:PING50/反応速度:150ms
- Peeker:Ping400/反応速度:300ms
動画8秒~17秒
- Vitim:PING100/反応速度:150ms
- Peeker:Ping400/反応速度:300ms
動画18秒~
- Vitim:PING200/反応速度:150ms
- Peeker:Ping400/反応速度:300ms
上記の検証動画をご覧になってもいまいちよくわからなんって人もいるかと思いますが、少しわかりやすく解説します。
これらのアクションタイムライン、サーバーが入力を受信、待ち時間がどのように送受信しているのかわかると思います。
低・高PING・通信速度のやり取りは大雑把に説明すると、スマホでインターネットをみてるとします。
3G通信とLTE通信だと速度って違うのは当然です。
それと同じ理屈ですね。ちょっと例えが間違っているかもしれないですが脳筋なたこすけなりの説明です。w
上記の検証動画は3G通信・4G通信(LTE)とアンテナの本数の差って認識でいいです。
ユーザーの動作→サーバーに送信→(受信)→敵に反映されます。
上記の順番でゲームの動作が成り立つのです。
つまり、遅い通信の人がやっとサイトを読み込み次のページに移行する人と4G(LTE)通信でサクサク読み込み、次のページに行って読んでるくらいの違いってことで許してください(汗
これらの問題はサーバーとユーザーの送受信の影響で開発者チームはサーバー側になんらかの改善は直接的にできない。
これは最初の検証動画で遅延が300msの差(0.3秒)
次のステップ
シーズン2・シーズン3のMidシーズン強化で遅延、処理、当たり判定の調整などを行います。
以下の改善を行います。
遅延のアライメント
サーバーに不安定な接続でプレイしているユーザーの反応時間をより正確に反映できるようにする変更を行います。
プレイヤーが位置の更新を一貫性のないレート速度で送信している場合、サーバーはそのプレイヤーのコマンドの表現をより正確に一致させる為にタイミングを調整します。
当たり判定の改善
追加の当たり判定の遅延の上限を減少させます。これらの問題は今後もブログにて公開させていただきます。
レプリケーションの改善
アクションのレプリケーションを最適化しています。全てのプレイヤーの反応速度を改善し、遅延が減少します。
処理の遅延+PING
現在、メニューに表示されているPING値には処理の遅延が含まれています。これは高速なフレームレートで実行されているため、PING値が低くても処理の遅延が発生しています。
これらの問題を改善し、ゲームプレイに影響を与える事なく、サーバーとの接続速度をより正確に表示されるようになる。
接続のアイコン
クライアント、サーバー、およびネットワーク接続の状態を監視するために役立つ一連の調整を実装しています。
この変更でなんらかの問題があった場合、ゲームの画面の右上に最大4つのアイコンが表示されるようになる。
- Ping
- 接続の安定性
- 更新速度
- ホストの安定性
PING値アイコン
- PING値が高い場合、PING値のアイコンが表示されます。
- PING(100~140ms)になっているとアイコンが黄色になる。
- PING(400~500ms)になっているとアイコンが赤色になる。
アイコンが赤になっているとほとんど当たり判定は機能していないので注意が必要。
接続のアイコン
- 接続が不安定な場合に接続のアイコンが表示されるようになる。
- この接続のアイコンが表示されるとラバーバンディング(引き戻される現象)や当たり判定、遅延を引き起こす。
- 赤色のアイコンになると上記の問題が発生する確率が高くなる。
更新速度のアイコン
- フレームレートが低下しているかまたは不安定な状態。
- ゲームクライアントからサーバーに送信されたパケットの数が十分に高くない場合に更新速度のアイコンが表示される。
- ゲームサーバーによって異常な遅延が発生する可能性があります。
- 赤色のアイコンになるとラバーバンディングが発生する可能性があります。
ホストアイコン
- サーバーに問題が発生している場合にホストアイコンが表示される。
- そのサーバーに接続している全てのプレイヤーに表示されます。
- アイコンが赤色の場合は切断されるでしょう。