PvPリファクタリング
ああ、PvPリファクタリング。今週、私の自由な時間をすべて費やしたこと、そしてそれが私が午前4時にこのレポートを書いている理由です。
これに関するNianticからの公式の言葉はありませんが、彼らはPvPを非常に明確に作り直して、そうでないようにしています…そうですね。あなたはそれをプレイしました。前回の更新で見つかったように、新しいコードを有効にするための切り替えがあり、以前にいくつかのものが追加されましたが、この更新では非常に多くの新しいコードが追加されました。これのいくつかは、先日投稿した初期のプレビューの繰り返しになりますが、かなり多くのことを発見し、初期の印象のいくつかをクリアしました。見てみましょう!
WebSocketとPub / Sub
まず、最大の違いを生むと思われるのは、WebSocketとPub / Subの追加です。男、これらすべての専門用語、何がオタク。以前に見つけたように、彼らはゲームにWebSocketを追加しました(基本的には、クライアントとサーバー間のシームレスな双方向通信の方法であり、通常、リアルタイム通信を必要とするメッセージアプリなどに使用されます)。PvPリファクタリングの一部として、WebSocketを介して送信できるメッセージ構造であるPub / Subも使用していることがわかります。
TL; DR?特定のアクション(PvPバトルなど)のためのサーバーへのより信頼性が高く安定した接続。接続は「常にオン」であるため、より高速になります。
WebSocketライブラリの一部として、いくつかの一般的なWSのものを追加しました。
これらはPoGoに固有のものではありません。これは一種の標準的なインターウェブのものですが、コード例を見てください。
get_NetworkType
NetworkType
DATA
WIFI
現在使用しているデータ接続のタイプに関する追加のチェック。これは彼らのWebSocketコードに追加されました。この時点で何に使用されるかは不明ですが、WebSocketは少なくともそれを認識しています。
彼らは実際にPub / Subを何のために使用していますか?
よろしくお願いします!私たちが知ることができることから、これらはすべてのタイプの戦闘状態/情報であり、この新しいPub / Subで使用されます。
ロギング
この新しいPvPコードでは、ロギングが大きな役割を果たしています。彼らはレイドロガーの一部を再利用しており(おそらく、レイドロガーにいる間にリファクタリングするのも理にかなっていますが)、PvP固有のものを送信しています。ログに記録されるものは50種類ありますが、ハイライトのいくつかは次のとおりです。
戦いを開く
戦闘の更新
戦いを去る
戦いはどのように終わったか
WebSocketデータ(およびその他のネットワークトラフィックも)
Pub / Subデータ
プレーヤーデータ
GBLマッチメイキングデータ
ロケットデータ
リーグ、試合、またはチャレンジの間に不一致があった場合
アプリが一時停止されたか、フォーカスされたか、閉じられたかなどのアプリデータ
予期しないクラッシュ
これらのいくつかの中には、さらに分解された状態があります(たとえば、特別な動きの下で、それは入る、存在する、そして失敗するためにそれを分解します)。